From 0300c85c15088e3ff2756b344a0adbd3ca235fd3 Mon Sep 17 00:00:00 2001
From: MCMXC <16797721+mcmxcdev@users.noreply.github.com>
Date: Sat, 10 Feb 2024 18:19:14 -0700
Subject: [PATCH] refactor: project maintenance
- work in progress
---
.eslintignore | 35 -
.eslintrc.js => .eslintrc.cjs | 27 +-
.prettierrc.js => .prettierrc.cjs | 2 +-
Dockerfile | 4 +-
README.md | 100 +-
ace | 16 -
ace-manifest.json | 616 -
ace.js | 24 +
adonisrc.ts | 83 +
.../Api/Static/AnnouncementsController.ts | 20 +-
.../Http/Api/Static/EmptyController.ts | 6 +-
.../Http/Api/Static/FeaturesController.ts | 6 +-
.../Http/Dashboard/AccountController.ts | 40 +-
.../Http/Dashboard/DataController.ts | 12 +-
.../Http/Dashboard/DeleteController.ts | 14 +-
.../Http/Dashboard/ExportController.ts | 29 +-
.../Dashboard/ForgotPasswordController.ts | 22 +-
.../Http/Dashboard/LogOutController.ts | 8 +-
.../Http/Dashboard/LoginController.ts | 58 +-
.../Http/Dashboard/ResetPasswordController.ts | 51 +-
.../Http/Dashboard/TransferController.ts | 77 +-
app/Controllers/Http/DashboardController.ts | 2 +-
app/Controllers/Http/HealthController.ts | 2 +-
app/Controllers/Http/HomeController.ts | 4 +-
app/Controllers/Http/RecipeController.ts | 179 +-
app/Controllers/Http/ServiceController.ts | 204 +-
app/Controllers/Http/StaticsController.ts | 2 +-
app/Controllers/Http/UserController.ts | 239 +-
app/Controllers/Http/WorkspaceController.ts | 98 +-
app/Exceptions/Handler.ts | 8 +-
app/Middleware/AllowGuestOnly.ts | 33 +-
app/Middleware/Auth.ts | 61 +-
app/Middleware/Dashboard.ts | 15 +-
app/Middleware/SilentAuth.ts | 11 +-
app/Models/Recipe.ts | 16 +-
app/Models/Service.ts | 25 +-
app/Models/Token.ts | 27 +-
app/Models/User.ts | 85 +-
app/Models/Workspace.ts | 27 +-
bin/console.ts | 47 +
bin/server.ts | 45 +
bin/test.ts | 60 +
commands/index.ts | 21 -
config/app.ts | 43 +-
config/auth.ts | 18 +-
config/bodyparser.ts | 9 +-
config/cors.ts | 15 +-
config/dashboard.ts | 6 +-
config/database.ts | 54 +-
config/drive.ts | 12 +-
config/hash.ts | 30 +-
config/mail.ts | 64 +-
config/session.ts | 14 +-
config/shield.ts | 363 +-
config/static.ts | 8 +-
contracts/env.ts | 23 -
contracts/hash.ts | 26 -
contracts/mail.ts | 13 -
database/factories/ServiceFactory.ts | 6 +-
database/factories/TokenFactory.ts | 15 +-
database/factories/UserFactory.ts | 17 +-
database/factories/WorkspaceFactory.ts | 6 +-
database/migrations/1503250034279_user.ts | 22 +-
database/migrations/1503250034280_token.ts | 22 +-
.../1566385379883_service_schema.ts | 24 +-
.../migrations/1566554231482_recipe_schema.ts | 20 +-
.../1566554359294_workspace_schema.ts | 26 +-
.../1612629845398_users_update_schema.ts | 14 +-
.../1658076326250_correct_token_relations.ts | 16 +-
.../migrations/1696110557648_jwt_tokens.ts | 34 +-
helpers/PasswordHash.ts | 19 +-
package.json | 121 +-
pnpm-lock.yaml | 12890 +++++-----------
providers/AppProvider.ts | 4 +-
providers/LegacyHashDriver.ts | 9 +-
providers/LegacyHasherProvider.ts | 12 +-
public/js/new.js | 32 +-
public/js/transfer.js | 20 +-
server.ts | 19 -
env.ts => start/env.ts | 7 +-
start/events.ts | 20 +-
start/kernel.ts | 10 +-
start/routes.ts | 4 +-
start/routes/api.ts | 82 +-
start/routes/web.ts | 104 +-
test.ts | 49 -
tests/bootstrap.ts | 29 +-
tests/config.ts | 2 +-
.../api/static/announcements.spec.ts | 26 +-
tests/functional/api/static/features.spec.ts | 24 +-
tests/functional/api/static/news.spec.ts | 14 +-
tests/functional/api/static/services.spec.ts | 14 +-
tests/functional/dashboard/account.spec.ts | 129 +-
tests/functional/dashboard/data.spec.ts | 38 +-
tests/functional/dashboard/delete.spec.ts | 49 +-
.../dashboard/disabled-dashboard.spec.ts | 82 +-
tests/functional/dashboard/export.spec.ts | 91 +-
.../dashboard/forgot-password.spec.ts | 66 +-
.../import-stubs/services-workspaces.json | 5 +-
tests/functional/dashboard/login.spec.ts | 62 +-
tests/functional/dashboard/logout.spec.ts | 26 +-
.../dashboard/reset-password.spec.ts | 84 +-
tests/functional/dashboard/transfer.spec.ts | 200 +-
tests/functional/health.spec.ts | 12 +-
tests/functional/static-pages/home.spec.ts | 12 +-
tests/functional/static-pages/privacy.spec.ts | 12 +-
tests/functional/static-pages/terms.spec.ts | 12 +-
tests/utils.ts | 4 +-
tsconfig.json | 34 +-
{contracts => types}/auth.ts | 34 +-
{contracts => types}/drive.ts | 4 +-
{contracts => types}/events.ts | 4 +-
{contracts => types}/tests.ts | 2 +-
vite.config.ts | 19 +
webpack.config.js | 213 -
115 files changed, 5991 insertions(+), 12095 deletions(-)
delete mode 100644 .eslintignore
rename .eslintrc.js => .eslintrc.cjs (76%)
rename .prettierrc.js => .prettierrc.cjs (97%)
delete mode 100644 ace
delete mode 100644 ace-manifest.json
create mode 100644 ace.js
create mode 100644 adonisrc.ts
create mode 100644 bin/console.ts
create mode 100644 bin/server.ts
create mode 100644 bin/test.ts
delete mode 100644 commands/index.ts
delete mode 100644 contracts/env.ts
delete mode 100644 contracts/hash.ts
delete mode 100644 contracts/mail.ts
delete mode 100644 server.ts
rename env.ts => start/env.ts (87%)
delete mode 100644 test.ts
rename {contracts => types}/auth.ts (82%)
rename {contracts => types}/drive.ts (87%)
rename {contracts => types}/events.ts (89%)
rename {contracts => types}/tests.ts (93%)
create mode 100644 vite.config.ts
delete mode 100644 webpack.config.js
diff --git a/.eslintignore b/.eslintignore
deleted file mode 100644
index 606431bf..00000000
--- a/.eslintignore
+++ /dev/null
@@ -1,35 +0,0 @@
-# Logs
-logs
-*.log
-
-# Runtime data
-pids
-*.pid
-*.seed
-
-# Coverage directory used by tools like istanbul
-coverage
-.eslintcache
-
-# Dependency directory
-# https://www.npmjs.org/doc/misc/npm-faq.html#should-i-check-my-node_modules-folder-into-git
-node_modules
-
-# OSX
-.DS_Store
-
-.idea
-.pnpm-debug.log*
-*.css.d.ts
-*.sass.d.ts
-*.scss.d.ts
-
-/build/
-/out/
-/recipes/
-
-# package files
-pnpm-lock.yaml
-
-# Json
-tests/functional/dashboard/import-stubs/invalid.json
diff --git a/.eslintrc.js b/.eslintrc.cjs
similarity index 76%
rename from .eslintrc.js
rename to .eslintrc.cjs
index 2660c046..2be48ef3 100644
--- a/.eslintrc.js
+++ b/.eslintrc.cjs
@@ -2,20 +2,13 @@
module.exports = {
root: true,
parserOptions: {
- ecmaVersion: 2018,
+ ecmaVersion: 'latest',
sourceType: 'module',
project: './tsconfig.json',
},
ignorePatterns: ['node_modules', 'build', 'recipes', '.eslintrc.js'],
- extends: [
- 'plugin:adonis/typescriptApp',
- 'plugin:unicorn/recommended',
- 'prettier',
- ],
- plugins: [],
- globals: {
- use: true,
- },
+ extends: ['@adonisjs/eslint-config/app', 'plugin:unicorn/recommended', 'prettier'],
+ plugins: ['@adonisjs/eslint-plugin'],
env: {
es6: true,
node: true,
@@ -25,7 +18,7 @@ module.exports = {
{
files: ['**/*.ts'],
extends: [
- 'plugin:adonis/typescriptApp',
+ '@adonisjs/eslint-config/app',
'plugin:@typescript-eslint/eslint-recommended',
'plugin:@typescript-eslint/strict',
// TODO: Opt-in to a stricter ruleset in the future
@@ -47,6 +40,16 @@ module.exports = {
'@typescript-eslint/no-extraneous-class': 0,
'@typescript-eslint/ban-ts-comment': 0,
'@typescript-eslint/prefer-ts-expect-error': 0,
+ '@typescript-eslint/explicit-member-accessibility': 0,
+ '@typescript-eslint/no-shadow': 0,
+ '@typescript-eslint/prefer-nullish-coalescing': 0,
+
+ // @adonisjs/eslint-plugin
+ '@adonisjs/prefer-lazy-controller-import': 2,
+ '@adonisjs/prefer-lazy-listener-import': 2,
+
+ // eslint-plugin-unicorn
+ 'unicorn/filename-case': 0,
},
},
],
@@ -83,4 +86,4 @@ module.exports = {
'unicorn/no-empty-file': 0,
'unicorn/prefer-top-level-await': 0,
},
-};
+}
diff --git a/.prettierrc.js b/.prettierrc.cjs
similarity index 97%
rename from .prettierrc.js
rename to .prettierrc.cjs
index f2feee85..f8073e96 100644
--- a/.prettierrc.js
+++ b/.prettierrc.cjs
@@ -2,4 +2,4 @@
module.exports = {
singleQuote: true,
arrowParens: 'avoid',
-};
+}
diff --git a/Dockerfile b/Dockerfile
index df1c96a0..35adbadc 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -1,4 +1,4 @@
-FROM node:20.11.0-alpine as build
+FROM node:20.11.0-alpine AS build
WORKDIR /server-build
@@ -7,7 +7,7 @@ RUN apk add --no-cache python3 make gcc g++ libc-dev sqlite-dev
COPY . /server-build
ENV CI=true
-RUN PNPM_VERSION=$(node -p 'require("./package.json").engines.pnpm'); npm i -g pnpm@$PNPM_VERSION
+RUN PNPM_VERSION=$(node -p 'require("./package.json").engines.pnpm'); npm i -g pnpm@"$PNPM_VERSION"
RUN pnpm install --config.build-from-source=sqlite --config.sqlite=/usr/local
RUN pnpm build
diff --git a/README.md b/README.md
index dc5b648d..09669fb7 100644
--- a/README.md
+++ b/README.md
@@ -3,10 +3,13 @@
# Server
- [![Docker Build and Publish](https://github.com/ferdium/ferdium-server/actions/workflows/docker.yml/badge.svg)](https://github.com/ferdium/ferdium-server/actions/workflows/docker.yml)
+
+[![Docker Build and Publish](https://github.com/ferdium/ferdium-server/actions/workflows/docker.yml/badge.svg)](https://github.com/ferdium/ferdium-server/actions/workflows/docker.yml)
+
+
> 👨🏾🍳 Server for [Ferdium](https://ferdium.org) that you can re-use to run your own
@@ -23,6 +26,7 @@ A custom server allows you to manage the data of all registered users yourself a
## Features
+
- [x] User registration and login
- [x] Service creation, download, listing and removing
- [x] Workspace support
@@ -45,47 +49,49 @@ After setting up the docker container we recommend you set up an NGINX reverse p
1. Pull the Docker image
- ```sh
- docker pull ferdium/ferdium-server:latest
- ```
-2. Create a *new* Docker container with your desired configuration **Existing users please seee the warning above.**
-
- ```sh
- docker create \
- --name=ferdium-server \
- -e NODE_ENV=development \
- -e APP_URL= \
- -e DB_CONNECTION= \
- -e DB_HOST= \
- -e DB_PORT= \
- -e DB_USER= \
- -e DB_PASSWORD= \
- -e DB_DATABASE= \
- -e DB_SSL=false \
- -e MAIL_CONNECTION=smtp \
- -e SMTP_HOST= \
- -e SMTP_PORT= \
- -e MAIL_SSL=true/false \
- -e MAIL_USERNAME= \
- -e MAIL_PASSWORD= \
- -e MAIL_SENDER= \
- -e IS_CREATION_ENABLED=true \
- -e IS_DASHBOARD_ENABLED=true \
- -e IS_REGISTRATION_ENABLED=true \
- -e CONNECT_WITH_FRANZ=true \
- -e DATA_DIR=data \
- -p :3333 \
- -v :/data \
- -v :/app/recipes \
- --restart unless-stopped \
- ferdium/ferdium-server:latest
- ```
-
- Alternatively, you can also use docker-compose v2 schema. An example can be found [in the docker folder](./docker/docker-compose.yml).
+ ```sh
+ docker pull ferdium/ferdium-server:latest
+ ```
+
+2. Create a _new_ Docker container with your desired configuration **Existing users please seee the warning above.**
+
+ ```sh
+ docker create \
+ --name=ferdium-server \
+ -e NODE_ENV=development \
+ -e APP_URL= \
+ -e DB_CONNECTION= \
+ -e DB_HOST= \
+ -e DB_PORT= \
+ -e DB_USER= \
+ -e DB_PASSWORD= \
+ -e DB_DATABASE= \
+ -e DB_SSL=false \
+ -e MAIL_CONNECTION=smtp \
+ -e SMTP_HOST= \
+ -e SMTP_PORT= \
+ -e MAIL_SSL=true/false \
+ -e MAIL_USERNAME= \
+ -e MAIL_PASSWORD= \
+ -e MAIL_SENDER= \
+ -e IS_CREATION_ENABLED=true \
+ -e IS_DASHBOARD_ENABLED=true \
+ -e IS_REGISTRATION_ENABLED=true \
+ -e CONNECT_WITH_FRANZ=true \
+ -e DATA_DIR=data \
+ -p :3333 \
+ -v :/data \
+ -v :/app/recipes \
+ --restart unless-stopped \
+ ferdium/ferdium-server:latest
+ ```
+
+ Alternatively, you can also use docker-compose v2 schema. An example can be found [in the docker folder](./docker/docker-compose.yml).
3. Optionally, you can [set up Nginx as a reverse proxy](https://www.digitalocean.com/community/tutorials/how-to-set-up-a-node-js-application-for-production-on-ubuntu-16-04#set-up-nginx-as-a-reverse-proxy-server).
For more information on configuring the Docker image, please read [the Ferdium docker documentation](./docker/README.md).
+
Manual setup
@@ -97,26 +103,29 @@ For more information on configuring the Docker image, please read [the Ferdium d
5. Run `npm install` to install local dependencies
6. Run the database migrations with
- ```js
- node ace migration:run
- ```
+ ```js
+ node ace migration:run
+ ```
7. Start the server with
- ```js
- npm start
- ```
+ ```js
+ npm start
+ ```
+
Configuration
Ferdium-server's configuration is saved inside an `.env` file. Besides AdonisJS's settings, Ferdium-server has the following custom settings:
+
- `IS_CREATION_ENABLED` (`true` or `false`, default: `true`): Whether to enable the [creation of custom recipes](#creating-and-using-custom-recipes)
- `IS_REGISTRATION_ENABLED` (`true` or `false`, default: `true`): Whether to enable the creation of new user accounts
- `IS_DASHBOARD_ENABLED` (`true` or `false`, default: `true`): Whether to enable the user dashboard
- `CONNECT_WITH_FRANZ` (`true` or `false`, default: `true`): Whether to enable connections to the Franz server. By enabling this option, Ferdium-server can:
- Show the full Franz recipe library instead of only custom recipes
- Import Franz accounts
+
Importing your Franz/Ferdi account
@@ -124,11 +133,13 @@ Ferdium-server's configuration is saved inside an `.env` file. Besides AdonisJS'
Ferdium-server allows you to import your full Franz/Ferdi account, including all its settings.
To import your Franz/Ferdi account, open `http://[YOUR FERDIUM-SERVER]/import` in your browser and login using your Franz/Ferdi account details. Ferdium-server will create a new user with the same credentials and copy your Franz/Ferdi settings, services and workspaces.
+
Transferring user data
Please refer to
+
Creating and using custom recipes
@@ -149,6 +160,7 @@ To add your recipe to Ferdium-server, open `http://[YOUR FERDIUM-SERVER]/new` in
Listing custom recipes
Inside Ferdium, searching for `ferdium:custom` will list all of your custom recipes.
+
## Contributing
diff --git a/ace b/ace
deleted file mode 100644
index c1750318..00000000
--- a/ace
+++ /dev/null
@@ -1,16 +0,0 @@
-/*
-|--------------------------------------------------------------------------
-| Ace Commands
-|--------------------------------------------------------------------------
-|
-| This file is the entry point for running ace commands.
-|
-*/
-
-require('reflect-metadata')
-require('source-map-support').install({ handleUncaughtExceptions: false })
-
-const { Ignitor } = require('@adonisjs/core/build/standalone')
-new Ignitor(__dirname)
- .ace()
- .handle(process.argv.slice(2))
diff --git a/ace-manifest.json b/ace-manifest.json
deleted file mode 100644
index d7befd20..00000000
--- a/ace-manifest.json
+++ /dev/null
@@ -1,616 +0,0 @@
-{
- "commands": {
- "dump:rcfile": {
- "settings": {},
- "commandPath": "@adonisjs/core/build/commands/DumpRc",
- "commandName": "dump:rcfile",
- "description": "Dump contents of .adonisrc.json file along with defaults",
- "args": [],
- "aliases": [],
- "flags": []
- },
- "list:routes": {
- "settings": {
- "loadApp": true,
- "stayAlive": true
- },
- "commandPath": "@adonisjs/core/build/commands/ListRoutes/index",
- "commandName": "list:routes",
- "description": "List application routes",
- "args": [],
- "aliases": [],
- "flags": [
- {
- "name": "verbose",
- "propertyName": "verbose",
- "type": "boolean",
- "description": "Display more information"
- },
- {
- "name": "reverse",
- "propertyName": "reverse",
- "type": "boolean",
- "alias": "r",
- "description": "Reverse routes display"
- },
- {
- "name": "methods",
- "propertyName": "methodsFilter",
- "type": "array",
- "alias": "m",
- "description": "Filter routes by method"
- },
- {
- "name": "patterns",
- "propertyName": "patternsFilter",
- "type": "array",
- "alias": "p",
- "description": "Filter routes by the route pattern"
- },
- {
- "name": "names",
- "propertyName": "namesFilter",
- "type": "array",
- "alias": "n",
- "description": "Filter routes by route name"
- },
- {
- "name": "json",
- "propertyName": "json",
- "type": "boolean",
- "description": "Output as JSON"
- },
- {
- "name": "table",
- "propertyName": "table",
- "type": "boolean",
- "description": "Output as Table"
- },
- {
- "name": "max-width",
- "propertyName": "maxWidth",
- "type": "number",
- "description": "Specify maximum rendering width. Ignored for JSON Output"
- }
- ]
- },
- "generate:key": {
- "settings": {},
- "commandPath": "@adonisjs/core/build/commands/GenerateKey",
- "commandName": "generate:key",
- "description": "Generate a new APP_KEY secret",
- "args": [],
- "aliases": [],
- "flags": []
- },
- "repl": {
- "settings": {
- "loadApp": true,
- "environment": "repl",
- "stayAlive": true
- },
- "commandPath": "@adonisjs/repl/build/commands/AdonisRepl",
- "commandName": "repl",
- "description": "Start a new REPL session",
- "args": [],
- "aliases": [],
- "flags": []
- },
- "db:seed": {
- "settings": {
- "loadApp": true
- },
- "commandPath": "@adonisjs/lucid/build/commands/DbSeed",
- "commandName": "db:seed",
- "description": "Execute database seeders",
- "args": [],
- "aliases": [],
- "flags": [
- {
- "name": "connection",
- "propertyName": "connection",
- "type": "string",
- "description": "Define a custom database connection for the seeders",
- "alias": "c"
- },
- {
- "name": "interactive",
- "propertyName": "interactive",
- "type": "boolean",
- "description": "Run seeders in interactive mode",
- "alias": "i"
- },
- {
- "name": "files",
- "propertyName": "files",
- "type": "array",
- "description": "Define a custom set of seeders files names to run",
- "alias": "f"
- },
- {
- "name": "compact-output",
- "propertyName": "compactOutput",
- "type": "boolean",
- "description": "A compact single-line output"
- }
- ]
- },
- "db:wipe": {
- "settings": {
- "loadApp": true
- },
- "commandPath": "@adonisjs/lucid/build/commands/DbWipe",
- "commandName": "db:wipe",
- "description": "Drop all tables, views and types in database",
- "args": [],
- "aliases": [],
- "flags": [
- {
- "name": "connection",
- "propertyName": "connection",
- "type": "string",
- "description": "Define a custom database connection",
- "alias": "c"
- },
- {
- "name": "drop-views",
- "propertyName": "dropViews",
- "type": "boolean",
- "description": "Drop all views"
- },
- {
- "name": "drop-types",
- "propertyName": "dropTypes",
- "type": "boolean",
- "description": "Drop all custom types (Postgres only)"
- },
- {
- "name": "force",
- "propertyName": "force",
- "type": "boolean",
- "description": "Explicitly force command to run in production"
- }
- ]
- },
- "db:truncate": {
- "settings": {
- "loadApp": true
- },
- "commandPath": "@adonisjs/lucid/build/commands/DbTruncate",
- "commandName": "db:truncate",
- "description": "Truncate all tables in database",
- "args": [],
- "aliases": [],
- "flags": [
- {
- "name": "connection",
- "propertyName": "connection",
- "type": "string",
- "description": "Define a custom database connection",
- "alias": "c"
- },
- {
- "name": "force",
- "propertyName": "force",
- "type": "boolean",
- "description": "Explicitly force command to run in production"
- }
- ]
- },
- "make:model": {
- "settings": {
- "loadApp": true
- },
- "commandPath": "@adonisjs/lucid/build/commands/MakeModel",
- "commandName": "make:model",
- "description": "Make a new Lucid model",
- "args": [
- {
- "type": "string",
- "propertyName": "name",
- "name": "name",
- "required": true,
- "description": "Name of the model class"
- }
- ],
- "aliases": [],
- "flags": [
- {
- "name": "migration",
- "propertyName": "migration",
- "type": "boolean",
- "alias": "m",
- "description": "Generate the migration for the model"
- },
- {
- "name": "controller",
- "propertyName": "controller",
- "type": "boolean",
- "alias": "c",
- "description": "Generate the controller for the model"
- },
- {
- "name": "factory",
- "propertyName": "factory",
- "type": "boolean",
- "alias": "f",
- "description": "Generate a factory for the model"
- }
- ]
- },
- "make:migration": {
- "settings": {
- "loadApp": true
- },
- "commandPath": "@adonisjs/lucid/build/commands/MakeMigration",
- "commandName": "make:migration",
- "description": "Make a new migration file",
- "args": [
- {
- "type": "string",
- "propertyName": "name",
- "name": "name",
- "required": true,
- "description": "Name of the migration file"
- }
- ],
- "aliases": [],
- "flags": [
- {
- "name": "connection",
- "propertyName": "connection",
- "type": "string",
- "description": "The connection flag is used to lookup the directory for the migration file"
- },
- {
- "name": "folder",
- "propertyName": "folder",
- "type": "string",
- "description": "Pre-select a migration directory"
- },
- {
- "name": "create",
- "propertyName": "create",
- "type": "string",
- "description": "Define the table name for creating a new table"
- },
- {
- "name": "table",
- "propertyName": "table",
- "type": "string",
- "description": "Define the table name for altering an existing table"
- }
- ]
- },
- "make:seeder": {
- "settings": {},
- "commandPath": "@adonisjs/lucid/build/commands/MakeSeeder",
- "commandName": "make:seeder",
- "description": "Make a new Seeder file",
- "args": [
- {
- "type": "string",
- "propertyName": "name",
- "name": "name",
- "required": true,
- "description": "Name of the seeder class"
- }
- ],
- "aliases": [],
- "flags": []
- },
- "make:factory": {
- "settings": {},
- "commandPath": "@adonisjs/lucid/build/commands/MakeFactory",
- "commandName": "make:factory",
- "description": "Make a new factory",
- "args": [
- {
- "type": "string",
- "propertyName": "model",
- "name": "model",
- "required": true,
- "description": "The name of the model"
- }
- ],
- "aliases": [],
- "flags": [
- {
- "name": "model-path",
- "propertyName": "modelPath",
- "type": "string",
- "description": "The path to the model"
- },
- {
- "name": "exact",
- "propertyName": "exact",
- "type": "boolean",
- "description": "Create the factory with the exact name as provided",
- "alias": "e"
- }
- ]
- },
- "migration:run": {
- "settings": {
- "loadApp": true
- },
- "commandPath": "@adonisjs/lucid/build/commands/Migration/Run",
- "commandName": "migration:run",
- "description": "Migrate database by running pending migrations",
- "args": [],
- "aliases": [],
- "flags": [
- {
- "name": "connection",
- "propertyName": "connection",
- "type": "string",
- "description": "Define a custom database connection",
- "alias": "c"
- },
- {
- "name": "force",
- "propertyName": "force",
- "type": "boolean",
- "description": "Explicitly force to run migrations in production"
- },
- {
- "name": "dry-run",
- "propertyName": "dryRun",
- "type": "boolean",
- "description": "Do not run actual queries. Instead view the SQL output"
- },
- {
- "name": "compact-output",
- "propertyName": "compactOutput",
- "type": "boolean",
- "description": "A compact single-line output"
- },
- {
- "name": "disable-locks",
- "propertyName": "disableLocks",
- "type": "boolean",
- "description": "Disable locks acquired to run migrations safely"
- }
- ]
- },
- "migration:rollback": {
- "settings": {
- "loadApp": true
- },
- "commandPath": "@adonisjs/lucid/build/commands/Migration/Rollback",
- "commandName": "migration:rollback",
- "description": "Rollback migrations to a specific batch number",
- "args": [],
- "aliases": [],
- "flags": [
- {
- "name": "connection",
- "propertyName": "connection",
- "type": "string",
- "description": "Define a custom database connection",
- "alias": "c"
- },
- {
- "name": "force",
- "propertyName": "force",
- "type": "boolean",
- "description": "Explictly force to run migrations in production"
- },
- {
- "name": "dry-run",
- "propertyName": "dryRun",
- "type": "boolean",
- "description": "Do not run actual queries. Instead view the SQL output"
- },
- {
- "name": "batch",
- "propertyName": "batch",
- "type": "number",
- "description": "Define custom batch number for rollback. Use 0 to rollback to initial state"
- },
- {
- "name": "compact-output",
- "propertyName": "compactOutput",
- "type": "boolean",
- "description": "A compact single-line output"
- },
- {
- "name": "disable-locks",
- "propertyName": "disableLocks",
- "type": "boolean",
- "description": "Disable locks acquired to run migrations safely"
- }
- ]
- },
- "migration:status": {
- "settings": {
- "loadApp": true
- },
- "commandPath": "@adonisjs/lucid/build/commands/Migration/Status",
- "commandName": "migration:status",
- "description": "View migrations status",
- "args": [],
- "aliases": [],
- "flags": [
- {
- "name": "connection",
- "propertyName": "connection",
- "type": "string",
- "description": "Define a custom database connection",
- "alias": "c"
- }
- ]
- },
- "migration:reset": {
- "settings": {
- "loadApp": true
- },
- "commandPath": "@adonisjs/lucid/build/commands/Migration/Reset",
- "commandName": "migration:reset",
- "description": "Rollback all migrations",
- "args": [],
- "aliases": [],
- "flags": [
- {
- "name": "connection",
- "propertyName": "connection",
- "type": "string",
- "description": "Define a custom database connection",
- "alias": "c"
- },
- {
- "name": "force",
- "propertyName": "force",
- "type": "boolean",
- "description": "Explicitly force command to run in production"
- },
- {
- "name": "dry-run",
- "propertyName": "dryRun",
- "type": "boolean",
- "description": "Do not run actual queries. Instead view the SQL output"
- },
- {
- "name": "disable-locks",
- "propertyName": "disableLocks",
- "type": "boolean",
- "description": "Disable locks acquired to run migrations safely"
- }
- ]
- },
- "migration:refresh": {
- "settings": {
- "loadApp": true
- },
- "commandPath": "@adonisjs/lucid/build/commands/Migration/Refresh",
- "commandName": "migration:refresh",
- "description": "Rollback and migrate database",
- "args": [],
- "aliases": [],
- "flags": [
- {
- "name": "connection",
- "propertyName": "connection",
- "type": "string",
- "description": "Define a custom database connection",
- "alias": "c"
- },
- {
- "name": "force",
- "propertyName": "force",
- "type": "boolean",
- "description": "Explicitly force command to run in production"
- },
- {
- "name": "dry-run",
- "propertyName": "dryRun",
- "type": "boolean",
- "description": "Do not run actual queries. Instead view the SQL output"
- },
- {
- "name": "seed",
- "propertyName": "seed",
- "type": "boolean",
- "description": "Run seeders"
- },
- {
- "name": "disable-locks",
- "propertyName": "disableLocks",
- "type": "boolean",
- "description": "Disable locks acquired to run migrations safely"
- }
- ]
- },
- "migration:fresh": {
- "settings": {
- "loadApp": true
- },
- "commandPath": "@adonisjs/lucid/build/commands/Migration/Fresh",
- "commandName": "migration:fresh",
- "description": "Drop all tables and re-migrate the database",
- "args": [],
- "aliases": [],
- "flags": [
- {
- "name": "connection",
- "propertyName": "connection",
- "type": "string",
- "description": "Define a custom database connection",
- "alias": "c"
- },
- {
- "name": "force",
- "propertyName": "force",
- "type": "boolean",
- "description": "Explicitly force command to run in production"
- },
- {
- "name": "seed",
- "propertyName": "seed",
- "type": "boolean",
- "description": "Run seeders"
- },
- {
- "name": "drop-views",
- "propertyName": "dropViews",
- "type": "boolean",
- "description": "Drop all views"
- },
- {
- "name": "drop-types",
- "propertyName": "dropTypes",
- "type": "boolean",
- "description": "Drop all custom types (Postgres only)"
- },
- {
- "name": "disable-locks",
- "propertyName": "disableLocks",
- "type": "boolean",
- "description": "Disable locks acquired to run migrations safely"
- }
- ]
- },
- "make:mailer": {
- "settings": {},
- "commandPath": "@adonisjs/mail/build/commands/MakeMailer",
- "commandName": "make:mailer",
- "description": "Make a new mailer class",
- "args": [
- {
- "type": "string",
- "propertyName": "name",
- "name": "name",
- "required": true,
- "description": "Name of the mailer class"
- }
- ],
- "aliases": [],
- "flags": []
- },
- "jwt:generate-keys": {
- "settings": {},
- "commandPath": "adonis5-jwt/build/commands/GenerateKeyPair",
- "commandName": "jwt:generate-keys",
- "description": "Generate key pair",
- "args": [
- {
- "type": "string",
- "propertyName": "outputDir",
- "name": "outputDir",
- "required": false,
- "description": "Key pair output dir"
- },
- {
- "type": "string",
- "propertyName": "algorithm",
- "name": "algorithm",
- "required": false,
- "description": "Key pair algorithm"
- }
- ],
- "aliases": [],
- "flags": []
- }
- },
- "aliases": {}
-}
diff --git a/ace.js b/ace.js
new file mode 100644
index 00000000..a313518e
--- /dev/null
+++ b/ace.js
@@ -0,0 +1,24 @@
+/*
+/*
+|--------------------------------------------------------------------------
+| JavaScript entrypoint for running ace commands
+|--------------------------------------------------------------------------
+|
+| Since, we cannot run TypeScript source code using "node" binary, we need
+| a JavaScript entrypoint to run ace commands.
+|
+| This file registers the "ts-node/esm" hook with the Node.js module system
+| and then imports the "bin/console.ts" file.
+|
+*/
+
+/**
+ * Register hook to process TypeScript files using ts-node
+ */
+import { register } from 'node:module'
+register('ts-node/esm', import.meta.url)
+
+/**
+ * Import ace console entrypoint
+ */
+await import('./bin/console.js')
diff --git a/adonisrc.ts b/adonisrc.ts
new file mode 100644
index 00000000..02f47b07
--- /dev/null
+++ b/adonisrc.ts
@@ -0,0 +1,83 @@
+import { defineConfig } from '@adonisjs/core/app'
+
+export default defineConfig({
+ /*
+ |--------------------------------------------------------------------------
+ | Commands
+ |--------------------------------------------------------------------------
+ |
+ | List of ace commands to register from packages. The application commands
+ | will be scanned automatically from the "./commands" directory.
+ |
+ */
+ commands: [
+ () => import('@adonisjs/core/commands'),
+ () => import('@adonisjs/lucid/commands'),
+ () => import('@adonisjs/mail/commands'),
+ () => import('adonis5-jwt/build/commands'),
+ ],
+ /*
+ |--------------------------------------------------------------------------
+ | Preloads
+ |--------------------------------------------------------------------------
+ |
+ | List of modules to import before starting the application.
+ |
+ */
+ preloads: [
+ () => import('./start/routes.js'),
+ () => import('./start/kernel.js'),
+ () => import('./start/events.js'),
+ ],
+ /*
+ |--------------------------------------------------------------------------
+ | Service providers
+ |--------------------------------------------------------------------------
+ |
+ | List of service providers to import and register when booting the
+ | application
+ |
+ */
+ providers: [
+ () => import('./providers/AppProvider.js'),
+ () => import('@adonisjs/core/providers/app_provider'),
+ () => import('@adonisjs/core/providers/hash_provider'),
+ { file: () => import('@adonisjs/core/providers/repl_provider'), environment: ['repl', 'test'] },
+ () => import('@adonisjs/core/providers/edge_provider'),
+ () => import('@adonisjs/lucid/database_provider'),
+ () => import('@adonisjs/auth/auth_provider'),
+ () => import('@adonisjs/shield/shield_provider'),
+ () => import('@adonisjs/session/session_provider'),
+ () => import('@adonisjs/mail/mail_provider'),
+ () => import('adonis5-jwt'),
+ () => import('./providers/LegacyHasherProvider.js'),
+ ],
+ metaFiles: [
+ {
+ pattern: 'resources/views/**/*.edge',
+ reloadServer: false,
+ },
+ {
+ pattern: 'public/**',
+ reloadServer: false,
+ },
+ ],
+ /*
+ |--------------------------------------------------------------------------
+ | Tests
+ |--------------------------------------------------------------------------
+ |
+ | List of test suites to organize tests by their type. Feel free to remove
+ | and add additional suites.
+ |
+ */
+ tests: {
+ suites: [
+ {
+ name: 'functional',
+ files: ['tests/functional/**/*.spec(.ts|.js)'],
+ timeout: 60_000,
+ },
+ ],
+ },
+})
diff --git a/app/Controllers/Http/Api/Static/AnnouncementsController.ts b/app/Controllers/Http/Api/Static/AnnouncementsController.ts
index c20707b5..4ae9d0e1 100644
--- a/app/Controllers/Http/Api/Static/AnnouncementsController.ts
+++ b/app/Controllers/Http/Api/Static/AnnouncementsController.ts
@@ -1,20 +1,16 @@
-import type { HttpContextContract } from '@ioc:Adonis/Core/HttpContext';
-import Application from '@ioc:Adonis/Core/Application';
-import path from 'node:path';
-import fs from 'fs-extra';
+import type { HttpContext } from '@adonisjs/core/http'
+import { app } from '@adonisjs/core/services/app'
+import path from 'node:path'
+import fs from 'fs-extra'
export default class AnnouncementsController {
- public async show({ response, params }: HttpContextContract) {
- const announcement = path.join(
- Application.resourcesPath(),
- 'announcements',
- `${params.version}.json`,
- );
+ public async show({ response, params }: HttpContext) {
+ const announcement = path.join(app.resourcesPath(), 'announcements', `${params.version}.json`)
if (await fs.pathExists(announcement)) {
- return response.download(announcement);
+ return response.download(announcement)
}
- return response.status(404).send('No announcement found.');
+ return response.status(404).send('No announcement found.')
}
}
diff --git a/app/Controllers/Http/Api/Static/EmptyController.ts b/app/Controllers/Http/Api/Static/EmptyController.ts
index a07790e3..ff05b1c9 100644
--- a/app/Controllers/Http/Api/Static/EmptyController.ts
+++ b/app/Controllers/Http/Api/Static/EmptyController.ts
@@ -1,7 +1,7 @@
-import type { HttpContextContract } from '@ioc:Adonis/Core/HttpContext';
+import type { HttpContext } from '@adonisjs/core/http'
export default class EmptyController {
- public async show({ response }: HttpContextContract) {
- return response.send([]);
+ public async show({ response }: HttpContext) {
+ return response.send([])
}
}
diff --git a/app/Controllers/Http/Api/Static/FeaturesController.ts b/app/Controllers/Http/Api/Static/FeaturesController.ts
index d471b116..9e14c103 100644
--- a/app/Controllers/Http/Api/Static/FeaturesController.ts
+++ b/app/Controllers/Http/Api/Static/FeaturesController.ts
@@ -1,7 +1,7 @@
-import type { HttpContextContract } from '@ioc:Adonis/Core/HttpContext';
+import type { HttpContext } from '@adonisjs/core/http'
export default class FeaturesController {
- public async show({ response }: HttpContextContract) {
+ public async show({ response }: HttpContext) {
return response.send({
isServiceProxyEnabled: true,
isWorkspaceEnabled: true,
@@ -9,6 +9,6 @@ export default class FeaturesController {
isSettingsWSEnabled: false,
isMagicBarEnabled: true,
isTodosEnabled: true,
- });
+ })
}
}
diff --git a/app/Controllers/Http/Dashboard/AccountController.ts b/app/Controllers/Http/Dashboard/AccountController.ts
index 3c4e9194..5870f190 100644
--- a/app/Controllers/Http/Dashboard/AccountController.ts
+++ b/app/Controllers/Http/Dashboard/AccountController.ts
@@ -1,29 +1,23 @@
-import type { HttpContextContract } from '@ioc:Adonis/Core/HttpContext';
-import { schema, rules, validator } from '@ioc:Adonis/Core/Validator';
-import crypto from 'node:crypto';
+import type { HttpContext } from '@adonisjs/core/http'
+import { schema, rules, validator } from '@adonisjs/validator'
+import crypto from 'node:crypto'
export default class AccountController {
/**
* Shows the user account page
*/
- public async show({ auth, view }: HttpContextContract) {
+ public async show({ auth, view }: HttpContext) {
return view.render('dashboard/account', {
username: auth.user?.username,
email: auth.user?.email,
lastname: auth.user?.lastname,
- });
+ })
}
/**
* Stores user account data
*/
- public async store({
- auth,
- request,
- response,
- session,
- view,
- }: HttpContextContract) {
+ public async store({ auth, request, response, session, view }: HttpContext) {
try {
await validator.validate({
schema: schema.create({
@@ -48,26 +42,26 @@ export default class AccountController {
lastname: schema.string([rules.required()]),
}),
data: request.only(['username', 'email', 'lastname']),
- });
+ })
} catch (error) {
- session.flash(error.messages);
- return response.redirect('/user/account');
+ session.flash(error.messages)
+ return response.redirect('/user/account')
}
// Update user account
- const { user } = auth;
+ const { user } = auth
if (user) {
- user.username = request.input('username');
- user.lastname = request.input('lastname');
- user.email = request.input('email');
+ user.username = request.input('username')
+ user.lastname = request.input('lastname')
+ user.email = request.input('email')
if (request.input('password')) {
const hashedPassword = crypto
.createHash('sha256')
.update(request.input('password'))
- .digest('base64');
- user.password = hashedPassword;
+ .digest('base64')
+ user.password = hashedPassword
}
- await user.save();
+ await user.save()
}
return view.render('dashboard/account', {
@@ -75,6 +69,6 @@ export default class AccountController {
lastname: user?.lastname,
email: user?.email,
success: user !== undefined,
- });
+ })
}
}
diff --git a/app/Controllers/Http/Dashboard/DataController.ts b/app/Controllers/Http/Dashboard/DataController.ts
index f77702f0..8a77329c 100644
--- a/app/Controllers/Http/Dashboard/DataController.ts
+++ b/app/Controllers/Http/Dashboard/DataController.ts
@@ -1,14 +1,14 @@
-import type { HttpContextContract } from '@ioc:Adonis/Core/HttpContext';
+import type { HttpContext } from '@adonisjs/core/http'
export default class DataController {
/**
* Display the data page
*/
- public async show({ view, auth }: HttpContextContract) {
- const { user } = auth;
+ public async show({ view, auth }: HttpContext) {
+ const { user } = auth
- const services = await user?.related('services').query();
- const workspaces = await user?.related('workspaces').query();
+ const services = await user?.related('services').query()
+ const workspaces = await user?.related('workspaces').query()
return view.render('dashboard/data', {
username: user?.username,
@@ -19,6 +19,6 @@ export default class DataController {
stringify: JSON.stringify,
services,
workspaces,
- });
+ })
}
}
diff --git a/app/Controllers/Http/Dashboard/DeleteController.ts b/app/Controllers/Http/Dashboard/DeleteController.ts
index ef8188c1..bd824b07 100644
--- a/app/Controllers/Http/Dashboard/DeleteController.ts
+++ b/app/Controllers/Http/Dashboard/DeleteController.ts
@@ -1,20 +1,20 @@
-import type { HttpContextContract } from '@ioc:Adonis/Core/HttpContext';
+import type { HttpContext } from '@adonisjs/core/http'
export default class DeleteController {
/**
* Display the delete page
*/
- public async show({ view }: HttpContextContract) {
- return view.render('dashboard/delete');
+ public async show({ view }: HttpContext) {
+ return view.render('dashboard/delete')
}
/**
* Delete user and session
*/
- public async delete({ auth, response }: HttpContextContract) {
- auth.user?.delete();
- auth.use('web').logout();
+ public async delete({ auth, response }: HttpContext) {
+ auth.user?.delete()
+ auth.use('web').logout()
- return response.redirect('/user/login');
+ return response.redirect('/user/login')
}
}
diff --git a/app/Controllers/Http/Dashboard/ExportController.ts b/app/Controllers/Http/Dashboard/ExportController.ts
index 7155eab7..5b6df70f 100644
--- a/app/Controllers/Http/Dashboard/ExportController.ts
+++ b/app/Controllers/Http/Dashboard/ExportController.ts
@@ -1,33 +1,30 @@
-import type { HttpContextContract } from '@ioc:Adonis/Core/HttpContext';
+import type { HttpContext } from '@adonisjs/core/http'
// eslint-disable-next-line @typescript-eslint/no-explicit-any
function deepParseToJSON(obj: any): Record {
if (typeof obj !== 'object' || obj === null) {
try {
// Try to parse the object as JSON
- return JSON.parse(obj) as Record;
+ return JSON.parse(obj) as Record
} catch {
// If parsing fails, return the original value
- return obj;
+ return obj
}
}
// If obj is an object, recursively parse its keys
if (Array.isArray(obj)) {
// If obj is an array, recursively parse each element
- return obj.map(item => deepParseToJSON(item)) as unknown as Record<
- string,
- unknown
- >;
+ return obj.map((item) => deepParseToJSON(item)) as unknown as Record
} else {
// If obj is an object, recursively parse its keys
- const parsedObj: Record = {};
+ const parsedObj: Record = {}
for (const key in obj) {
if (obj.hasOwnProperty(key)) {
- parsedObj[key] = deepParseToJSON(obj[key]);
+ parsedObj[key] = deepParseToJSON(obj[key])
}
}
- return parsedObj;
+ return parsedObj
}
}
@@ -35,10 +32,10 @@ export default class ExportController {
/**
* Display the export page
*/
- public async show({ auth, response }: HttpContextContract) {
- const user = auth.user!;
- const services = await user.related('services').query();
- const workspaces = await user.related('workspaces').query();
+ public async show({ auth, response }: HttpContext) {
+ const user = auth.user!
+ const services = await user.related('services').query()
+ const workspaces = await user.related('workspaces').query()
const exportData = {
username: user.username,
@@ -46,11 +43,11 @@ export default class ExportController {
mail: user.email,
services: deepParseToJSON(JSON.parse(JSON.stringify(services))),
workspaces: deepParseToJSON(JSON.parse(JSON.stringify(workspaces))),
- };
+ }
return response
.header('Content-Type', 'application/force-download')
.header('Content-disposition', 'attachment; filename=export.ferdium-data')
- .send(exportData);
+ .send(exportData)
}
}
diff --git a/app/Controllers/Http/Dashboard/ForgotPasswordController.ts b/app/Controllers/Http/Dashboard/ForgotPasswordController.ts
index da05bbd5..f7b1d0eb 100644
--- a/app/Controllers/Http/Dashboard/ForgotPasswordController.ts
+++ b/app/Controllers/Http/Dashboard/ForgotPasswordController.ts
@@ -1,41 +1,41 @@
-import type { HttpContextContract } from '@ioc:Adonis/Core/HttpContext';
-import { schema, rules, validator } from '@ioc:Adonis/Core/Validator';
-import User from 'App/Models/User';
+import type { HttpContext } from '@adonisjs/core/http'
+import { schema, rules, validator } from '@adonisjs/validator'
+import User from '#app/Models/User'
export default class ForgotPasswordController {
/**
* Display the forgot password form
*/
- public async show({ view }: HttpContextContract) {
- return view.render('dashboard/forgotPassword');
+ public async show({ view }: HttpContext) {
+ return view.render('dashboard/forgotPassword')
}
/**
* Send forget password email to user
*/
- public async forgotPassword({ view, request }: HttpContextContract) {
+ public async forgotPassword({ view, request }: HttpContext) {
try {
await validator.validate({
schema: schema.create({
mail: schema.string([rules.email(), rules.required()]),
}),
data: request.only(['mail']),
- });
+ })
} catch {
return view.render('others/message', {
heading: 'Cannot reset your password',
text: 'Please enter a valid email address',
- });
+ })
}
try {
- const user = await User.findByOrFail('email', request.input('mail'));
- await user.forgotPassword();
+ const user = await User.findByOrFail('email', request.input('mail'))
+ await user.forgotPassword()
} catch {}
return view.render('others/message', {
heading: 'Reset password',
text: 'If your provided E-Mail address is linked to an account, we have just sent an E-Mail to that address.',
- });
+ })
}
}
diff --git a/app/Controllers/Http/Dashboard/LogOutController.ts b/app/Controllers/Http/Dashboard/LogOutController.ts
index 41cbd310..5d250c4c 100644
--- a/app/Controllers/Http/Dashboard/LogOutController.ts
+++ b/app/Controllers/Http/Dashboard/LogOutController.ts
@@ -1,12 +1,12 @@
-import type { HttpContextContract } from '@ioc:Adonis/Core/HttpContext';
+import type { HttpContext } from '@adonisjs/core/http'
export default class LogOutController {
/**
* Login a user
*/
- public async logout({ auth, response }: HttpContextContract) {
- auth.logout();
+ public async logout({ auth, response }: HttpContext) {
+ auth.logout()
- return response.redirect('/user/login');
+ return response.redirect('/user/login')
}
}
diff --git a/app/Controllers/Http/Dashboard/LoginController.ts b/app/Controllers/Http/Dashboard/LoginController.ts
index ffb9eeb6..5a544482 100644
--- a/app/Controllers/Http/Dashboard/LoginController.ts
+++ b/app/Controllers/Http/Dashboard/LoginController.ts
@@ -1,26 +1,21 @@
-import type { HttpContextContract } from '@ioc:Adonis/Core/HttpContext';
-import { schema, rules, validator } from '@ioc:Adonis/Core/Validator';
-import User from 'App/Models/User';
-import crypto from 'node:crypto';
-import { handleVerifyAndReHash } from '../../../../helpers/PasswordHash';
+import type { HttpContext } from '@adonisjs/core/http'
+import { schema, rules, validator } from '@adonisjs/validator'
+import User from '#app/Models/User'
+import crypto from 'node:crypto'
+import { handleVerifyAndReHash } from '../../../../helpers/PasswordHash.js'
export default class LoginController {
/**
* Display the login form
*/
- public async show({ view }: HttpContextContract) {
- return view.render('dashboard/login');
+ public async show({ view }: HttpContext) {
+ return view.render('dashboard/login')
}
/**
* Login a user
*/
- public async login({
- request,
- response,
- auth,
- session,
- }: HttpContextContract) {
+ public async login({ request, response, auth, session }: HttpContext) {
try {
await validator.validate({
schema: schema.create({
@@ -28,54 +23,51 @@ export default class LoginController {
password: schema.string([rules.required()]),
}),
data: request.only(['mail', 'password']),
- });
+ })
} catch {
session.flash({
type: 'danger',
message: 'Invalid mail or password',
- });
- session.flashExcept(['password']);
+ })
+ session.flashExcept(['password'])
- return response.redirect('/user/login');
+ return response.redirect('/user/login')
}
try {
- const { mail, password } = request.all();
+ const { mail, password } = request.all()
// Check if user with email exists
- const user = await User.query().where('email', mail).first();
+ const user = await User.query().where('email', mail).first()
if (!user?.email) {
- throw new Error('User credentials not valid (Invalid email)');
+ throw new Error('User credentials not valid (Invalid email)')
}
- const hashedPassword = crypto
- .createHash('sha256')
- .update(password)
- .digest('base64');
+ const hashedPassword = crypto.createHash('sha256').update(password).digest('base64')
// Verify password
- let isMatchedPassword = false;
+ let isMatchedPassword = false
try {
- isMatchedPassword = await handleVerifyAndReHash(user, hashedPassword);
+ isMatchedPassword = await handleVerifyAndReHash(user, hashedPassword)
} catch (error) {
- return response.internalServerError({ message: error.message });
+ return response.internalServerError({ message: error.message })
}
if (!isMatchedPassword) {
- throw new Error('User credentials not valid (Invalid password)');
+ throw new Error('User credentials not valid (Invalid password)')
}
- await auth.use('web').login(user);
+ await auth.use('web').login(user)
- return response.redirect('/user/account');
+ return response.redirect('/user/account')
} catch {
session.flash({
type: 'danger',
message: 'Invalid mail or password',
- });
- session.flashExcept(['password']);
+ })
+ session.flashExcept(['password'])
- return response.redirect('/user/login');
+ return response.redirect('/user/login')
}
}
}
diff --git a/app/Controllers/Http/Dashboard/ResetPasswordController.ts b/app/Controllers/Http/Dashboard/ResetPasswordController.ts
index 0b9053f7..b62b5d28 100644
--- a/app/Controllers/Http/Dashboard/ResetPasswordController.ts
+++ b/app/Controllers/Http/Dashboard/ResetPasswordController.ts
@@ -1,35 +1,30 @@
-import type { HttpContextContract } from '@ioc:Adonis/Core/HttpContext';
-import { schema, rules, validator } from '@ioc:Adonis/Core/Validator';
-import Token from 'App/Models/Token';
-import moment from 'moment';
-import crypto from 'node:crypto';
+import type { HttpContext } from '@adonisjs/core/http'
+import { schema, rules, validator } from '@adonisjs/validator'
+import Token from '#app/Models/Token'
+import moment from 'moment'
+import crypto from 'node:crypto'
export default class ResetPasswordController {
/**
* Display the reset password form
*/
- public async show({ view, request }: HttpContextContract) {
- const { token } = request.qs();
+ public async show({ view, request }: HttpContext) {
+ const { token } = request.qs()
if (token) {
- return view.render('dashboard/resetPassword', { token });
+ return view.render('dashboard/resetPassword', { token })
}
return view.render('others/message', {
heading: 'Invalid token',
text: 'Please make sure you are using a valid and recent link to reset your password.',
- });
+ })
}
/**
* Resets user password
*/
- public async resetPassword({
- response,
- request,
- session,
- view,
- }: HttpContextContract) {
+ public async resetPassword({ response, request, session, view }: HttpContext) {
try {
await validator.validate({
schema: schema.create({
@@ -37,14 +32,14 @@ export default class ResetPasswordController {
token: schema.string([rules.required()]),
}),
data: request.only(['password', 'password_confirmation', 'token']),
- });
+ })
} catch {
session.flash({
type: 'danger',
message: 'Passwords do not match',
- });
+ })
- return response.redirect(`/user/reset?token=${request.input('token')}`);
+ return response.redirect(`/user/reset?token=${request.input('token')}`)
}
const tokenRow = await Token.query()
@@ -52,34 +47,30 @@ export default class ResetPasswordController {
.where('token', request.input('token'))
.where('type', 'forgot_password')
.where('is_revoked', false)
- .where(
- 'updated_at',
- '>=',
- moment().subtract(24, 'hours').format('YYYY-MM-DD HH:mm:ss'),
- )
- .first();
+ .where('updated_at', '>=', moment().subtract(24, 'hours').format('YYYY-MM-DD HH:mm:ss'))
+ .first()
if (!tokenRow) {
return view.render('others/message', {
heading: 'Cannot reset your password',
text: 'Please make sure you are using a valid and recent link to reset your password and that your passwords entered match.',
- });
+ })
}
// Update user password
const hashedPassword = crypto
.createHash('sha256')
.update(request.input('password'))
- .digest('base64');
- tokenRow.user.password = hashedPassword;
- await tokenRow.user.save();
+ .digest('base64')
+ tokenRow.user.password = hashedPassword
+ await tokenRow.user.save()
// Delete token to prevent it from being used again
- await tokenRow.delete();
+ await tokenRow.delete()
return view.render('others/message', {
heading: 'Reset password',
text: 'Successfully reset your password. You can now login to your account using your new password.',
- });
+ })
}
}
diff --git a/app/Controllers/Http/Dashboard/TransferController.ts b/app/Controllers/Http/Dashboard/TransferController.ts
index b113e509..02969732 100644
--- a/app/Controllers/Http/Dashboard/TransferController.ts
+++ b/app/Controllers/Http/Dashboard/TransferController.ts
@@ -1,8 +1,8 @@
-import type { HttpContextContract } from '@ioc:Adonis/Core/HttpContext';
-import { schema, validator } from '@ioc:Adonis/Core/Validator';
-import Service from 'App/Models/Service';
-import Workspace from 'App/Models/Workspace';
-import { v4 as uuidv4 } from 'uuid';
+import type { HttpContext } from '@adonisjs/core/http'
+import { schema, validator } from '@adonisjs/validator'
+import Service from '#app/Models/Service'
+import Workspace from '#app/Models/Workspace'
+import { v4 as uuidv4 } from 'uuid'
const importSchema = schema.create({
username: schema.string(),
@@ -10,58 +10,52 @@ const importSchema = schema.create({
mail: schema.string(),
services: schema.array().anyMembers(),
workspaces: schema.array().anyMembers(),
-});
+})
export default class TransferController {
/**
* Display the transfer page
*/
- public async show({ view }: HttpContextContract) {
- return view.render('dashboard/transfer');
+ public async show({ view }: HttpContext) {
+ return view.render('dashboard/transfer')
}
- public async import({
- auth,
- request,
- response,
- session,
- view,
- }: HttpContextContract) {
- let file;
+ public async import({ auth, request, response, session, view }: HttpContext) {
+ let file
try {
file = await validator.validate({
schema: importSchema,
data: JSON.parse(request.body().file),
- });
+ })
} catch {
session.flash({
message: 'Invalid Ferdium account file',
- });
+ })
- return response.redirect('/user/transfer');
+ return response.redirect('/user/transfer')
}
if (!file?.services || !file.workspaces) {
session.flash({
type: 'danger',
message: 'Invalid Ferdium account file (2)',
- });
- return response.redirect('/user/transfer');
+ })
+ return response.redirect('/user/transfer')
}
- const serviceIdTranslation = {};
+ const serviceIdTranslation = {}
// Import services
try {
for (const service of file.services) {
// Get new, unused uuid
- let serviceId;
+ let serviceId
do {
- serviceId = uuidv4();
+ serviceId = uuidv4()
} while (
// eslint-disable-next-line no-await-in-loop, unicorn/no-await-expression-member
(await Service.query().where('serviceId', serviceId)).length > 0
- );
+ )
// eslint-disable-next-line no-await-in-loop
await Service.create({
@@ -73,38 +67,37 @@ export default class TransferController {
typeof service.settings === 'string'
? service.settings
: JSON.stringify(service.settings),
- });
+ })
// @ts-expect-error Element implicitly has an 'any' type because expression of type 'any' can't be used to index type '{}'
- serviceIdTranslation[service.service_id || service.serviceId] =
- serviceId;
+ serviceIdTranslation[service.service_id || service.serviceId] = serviceId
}
} catch (error) {
// eslint-disable-next-line no-console
- console.log(error);
- const errorMessage = `Could not import your services into our system.\nError: ${error}`;
+ console.log(error)
+ const errorMessage = `Could not import your services into our system.\nError: ${error}`
return view.render('others/message', {
heading: 'Error while importing',
text: errorMessage,
- });
+ })
}
// Import workspaces
try {
for (const workspace of file.workspaces) {
- let workspaceId;
+ let workspaceId
do {
- workspaceId = uuidv4();
+ workspaceId = uuidv4()
} while (
// eslint-disable-next-line no-await-in-loop, unicorn/no-await-expression-member
(await Workspace.query().where('workspaceId', workspaceId)).length > 0
- );
+ )
const services = workspace.services.map(
// @ts-expect-error Parameter 'service' implicitly has an 'any' type.
- service => serviceIdTranslation[service],
- );
+ (service) => serviceIdTranslation[service]
+ )
// eslint-disable-next-line no-await-in-loop
await Workspace.create({
@@ -114,22 +107,20 @@ export default class TransferController {
order: workspace.order,
services: JSON.stringify(services),
data:
- typeof workspace.data === 'string'
- ? workspace.data
- : JSON.stringify(workspace.data),
- });
+ typeof workspace.data === 'string' ? workspace.data : JSON.stringify(workspace.data),
+ })
}
} catch (error) {
- const errorMessage = `Could not import your workspaces into our system.\nError: ${error}`;
+ const errorMessage = `Could not import your workspaces into our system.\nError: ${error}`
return view.render('others/message', {
heading: 'Error while importing',
text: errorMessage,
- });
+ })
}
return view.render('others/message', {
heading: 'Successfully imported',
text: 'Your account has been imported, you can now login as usual!',
- });
+ })
}
}
diff --git a/app/Controllers/Http/DashboardController.ts b/app/Controllers/Http/DashboardController.ts
index a6f5b441..2a9fb139 100644
--- a/app/Controllers/Http/DashboardController.ts
+++ b/app/Controllers/Http/DashboardController.ts
@@ -1,4 +1,4 @@
-// import type { HttpContextContract } from '@ioc:Adonis/Core/HttpContext'
+// import type { HttpContext } from '@adonisjs/core/http';
export default class DashboardController {}
diff --git a/app/Controllers/Http/HealthController.ts b/app/Controllers/Http/HealthController.ts
index bf185d8e..59094e2a 100644
--- a/app/Controllers/Http/HealthController.ts
+++ b/app/Controllers/Http/HealthController.ts
@@ -5,6 +5,6 @@ export default class HealthController {
return {
api: 'success',
db: 'success',
- };
+ }
}
}
diff --git a/app/Controllers/Http/HomeController.ts b/app/Controllers/Http/HomeController.ts
index dbe9fbde..669d9706 100644
--- a/app/Controllers/Http/HomeController.ts
+++ b/app/Controllers/Http/HomeController.ts
@@ -1,9 +1,9 @@
-// import type { HttpContextContract } from '@ioc:Adonis/Core/HttpContext'
+// import type { HttpContext } from '@adonisjs/core/http'
export default class HomeController {
public async index() {
// TODO: Actually do something instead of alwayas returning success.
- return { hello: 'world' };
+ return { hello: 'world' }
}
}
diff --git a/app/Controllers/Http/RecipeController.ts b/app/Controllers/Http/RecipeController.ts
index 5186a118..e43bcf8f 100644
--- a/app/Controllers/Http/RecipeController.ts
+++ b/app/Controllers/Http/RecipeController.ts
@@ -1,13 +1,13 @@
-import type { HttpContextContract } from '@ioc:Adonis/Core/HttpContext';
-import fs from 'fs-extra';
-import Application from '@ioc:Adonis/Core/Application';
-import path from 'node:path';
-import Recipe from 'App/Models/Recipe';
-import { isCreationEnabled } from 'Config/app';
-import { validator, schema, rules } from '@ioc:Adonis/Core/Validator';
-import targz from 'targz';
-import semver from 'semver';
-import Drive from '@ioc:Adonis/Core/Drive';
+import type { HttpContext } from '@adonisjs/core/http'
+import fs from 'fs-extra'
+import { app } from '@adonisjs/core/services/app'
+import path from 'node:path'
+import Recipe from '#app/Models/Recipe'
+import { isCreationEnabled } from '#config/app'
+import { validator, schema, rules } from '@adonisjs/validator'
+import targz from 'targz'
+import semver from 'semver'
+import Drive from '@ioc:Adonis/Core/Drive'
// TODO: This file needs to be refactored and cleaned up to include types
@@ -18,17 +18,17 @@ const createSchema = schema.create({
// author: 'required|accepted',
author: schema.string(),
svg: schema.string([rules.url()]),
-});
+})
const searchSchema = schema.create({
needle: schema.string(),
-});
+})
const downloadSchema = schema.create({
// TODO: Check if this is correct
// recipe: 'required|accepted',
recipe: schema.string(),
-});
+})
const compress = (src: string, dest: string) =>
new Promise((resolve, reject) => {
@@ -37,87 +37,76 @@ const compress = (src: string, dest: string) =>
src,
dest,
},
- err => {
+ (err) => {
if (err) {
- reject(err);
+ reject(err)
} else {
- resolve(dest);
+ resolve(dest)
}
- },
- );
- });
+ }
+ )
+ })
export default class RecipesController {
// List official and custom recipes
- public async list({ response }: HttpContextContract) {
- const officialRecipes = fs.readJsonSync(
- path.join(Application.appRoot, 'recipes', 'all.json'),
- );
- const customRecipesArray = await Recipe.all();
- const customRecipes = customRecipesArray.map(recipe => ({
+ public async list({ response }: HttpContext) {
+ const officialRecipes = fs.readJsonSync(path.join(app.appRoot, 'recipes', 'all.json'))
+ const customRecipesArray = await Recipe.all()
+ const customRecipes = customRecipesArray.map((recipe) => ({
id: recipe.recipeId,
name: recipe.name,
- ...(typeof recipe.data === 'string'
- ? JSON.parse(recipe.data)
- : recipe.data),
- }));
+ ...(typeof recipe.data === 'string' ? JSON.parse(recipe.data) : recipe.data),
+ }))
- const recipes = [...officialRecipes, ...customRecipes];
+ const recipes = [...officialRecipes, ...customRecipes]
- return response.send(recipes);
+ return response.send(recipes)
}
// TODO: Test this endpoint
// Create a new recipe using the new.html page
- public async create({ request, response }: HttpContextContract) {
+ public async create({ request, response }: HttpContext) {
// Check if recipe creation is enabled
if (isCreationEnabled === 'false') {
- return response.send(
- 'This server doesn\'t allow the creation of new recipes.',
- );
+ return response.send("This server doesn't allow the creation of new recipes.")
}
// Validate user input
- let data;
+ let data
try {
- data = await request.validate({ schema: createSchema });
+ data = await request.validate({ schema: createSchema })
} catch (error) {
return response.status(401).send({
message: 'Invalid POST arguments',
messages: error.messages,
status: 401,
- });
+ })
}
if (!data.id) {
- return response.send('Please provide an ID');
+ return response.send('Please provide an ID')
}
// Check for invalid characters
if (/\.+/.test(data.id) || /\/+/.test(data.id)) {
- return response.send(
- 'Invalid recipe name. Your recipe name may not contain "." or "/"',
- );
+ return response.send('Invalid recipe name. Your recipe name may not contain "." or "/"')
}
// Clear temporary recipe folder
- await fs.emptyDir(Application.tmpPath('recipe'));
+ await fs.emptyDir(app.tmpPath('recipe'))
// Move uploaded files to temporary path
- const files = request.file('files');
+ const files = request.file('files')
if (!files) {
- return response.abort('Error processsing files.');
+ return response.abort('Error processsing files.')
}
- await files.move(Application.tmpPath('recipe'));
+ await files.move(app.tmpPath('recipe'))
// Compress files to .tar.gz file
- const source = Application.tmpPath('recipe');
- const destination = path.join(
- Application.appRoot,
- `/recipes/archives/${data.id}.tar.gz`,
- );
+ const source = app.tmpPath('recipe')
+ const destination = path.join(app.appRoot, `/recipes/archives/${data.id}.tar.gz`)
- compress(source, destination);
+ compress(source, destination)
// Create recipe in db
await Recipe.create({
@@ -132,123 +121,111 @@ export default class RecipesController {
svg: data.svg,
},
}),
- });
+ })
- return response.send('Created new recipe');
+ return response.send('Created new recipe')
}
// Search official and custom recipes
- public async search({ request, response }: HttpContextContract) {
+ public async search({ request, response }: HttpContext) {
// Validate user input
- let data;
+ let data
try {
- data = await request.validate({ schema: searchSchema });
+ data = await request.validate({ schema: searchSchema })
} catch (error) {
return response.status(401).send({
message: 'Please provide a needle',
messages: error.messages,
status: 401,
- });
+ })
}
- const { needle } = data;
+ const { needle } = data
// Get results
- let results;
+ let results
if (needle === 'ferdium:custom') {
- const dbResults = await Recipe.all();
- results = dbResults.map(recipe => ({
+ const dbResults = await Recipe.all()
+ results = dbResults.map((recipe) => ({
id: recipe.recipeId,
name: recipe.name,
- ...(typeof recipe.data === 'string'
- ? JSON.parse(recipe.data)
- : recipe.data),
- }));
+ ...(typeof recipe.data === 'string' ? JSON.parse(recipe.data) : recipe.data),
+ }))
} else {
- const localResultsArray = await Recipe.query().where(
- 'name',
- 'LIKE',
- `%${needle}%`,
- );
- results = localResultsArray.map(recipe => ({
+ const localResultsArray = await Recipe.query().where('name', 'LIKE', `%${needle}%`)
+ results = localResultsArray.map((recipe) => ({
id: recipe.recipeId,
name: recipe.name,
- ...(typeof recipe.data === 'string'
- ? JSON.parse(recipe.data)
- : recipe.data),
- }));
+ ...(typeof recipe.data === 'string' ? JSON.parse(recipe.data) : recipe.data),
+ }))
}
- return response.send(results);
+ return response.send(results)
}
- public popularRecipes({ response }: HttpContextContract) {
+ public popularRecipes({ response }: HttpContext) {
return response.send(
fs
- .readJsonSync(path.join(Application.appRoot, 'recipes', 'all.json'))
+ .readJsonSync(path.join(app.appRoot, 'recipes', 'all.json'))
// eslint-disable-next-line @typescript-eslint/no-explicit-any
- .filter((recipe: any) => recipe.featured),
- );
+ .filter((recipe: any) => recipe.featured)
+ )
}
// TODO: test this endpoint
- public update({ request, response }: HttpContextContract) {
- const updates = [];
- const recipes = request.all();
- const allJson = fs.readJsonSync(
- path.join(Application.appRoot, 'recipes', 'all.json'),
- );
+ public update({ request, response }: HttpContext) {
+ const updates = []
+ const recipes = request.all()
+ const allJson = fs.readJsonSync(path.join(app.appRoot, 'recipes', 'all.json'))
for (const recipe of Object.keys(recipes)) {
- const version = recipes[recipe];
+ const version = recipes[recipe]
// Find recipe in local recipe repository
// eslint-disable-next-line @typescript-eslint/no-explicit-any
- const localRecipe = allJson.find((r: any) => r.id === recipe);
+ const localRecipe = allJson.find((r: any) => r.id === recipe)
if (localRecipe && semver.lt(version, localRecipe.version)) {
- updates.push(recipe);
+ updates.push(recipe)
}
}
- return response.send(updates);
+ return response.send(updates)
}
// TODO: test this endpoint
// Download a recipe
- public async download({ response, params }: HttpContextContract) {
+ public async download({ response, params }: HttpContext) {
// Validate user input
- let data;
+ let data
try {
data = await validator.validate({
data: params,
schema: downloadSchema,
- });
+ })
} catch (error) {
return response.status(401).send({
message: 'Please provide a recipe ID',
messages: error.messages,
status: 401,
- });
+ })
}
- const service = data.recipe;
+ const service = data.recipe
// Check for invalid characters
if (/\.+/.test(service) || /\/+/.test(service)) {
- return response.send('Invalid recipe name');
+ return response.send('Invalid recipe name')
}
// Check if recipe exists in recipes folder
if (await Drive.exists(`${service}.tar.gz`)) {
- return response
- .type('.tar.gz')
- .send(await Drive.get(`${service}.tar.gz`));
+ return response.type('.tar.gz').send(await Drive.get(`${service}.tar.gz`))
}
return response.status(400).send({
message: 'Recipe not found',
code: 'recipe-not-found',
- });
+ })
}
}
diff --git a/app/Controllers/Http/ServiceController.ts b/app/Controllers/Http/ServiceController.ts
index 76e72e4b..99882446 100644
--- a/app/Controllers/Http/ServiceController.ts
+++ b/app/Controllers/Http/ServiceController.ts
@@ -1,49 +1,49 @@
-import type { HttpContextContract } from '@ioc:Adonis/Core/HttpContext';
-import { schema } from '@ioc:Adonis/Core/Validator';
-import Service from 'App/Models/Service';
-import { url } from 'Config/app';
-import { v4 as uuid } from 'uuid';
-import * as fs from 'fs-extra';
-import path from 'node:path';
-import Application from '@ioc:Adonis/Core/Application';
-import sanitize from 'sanitize-filename';
+import type { HttpContext } from '@adonisjs/core/http'
+import { schema } from '@adonisjs/validator'
+import Service from '#app/Models/Service'
+import { url } from '#config/app'
+import { v4 as uuid } from 'uuid'
+import * as fs from 'fs-extra'
+import path from 'node:path'
+import { app } from '@adonisjs/core/services/app'
+import sanitize from 'sanitize-filename'
const createSchema = schema.create({
name: schema.string(),
recipeId: schema.string(),
-});
+})
export default class ServiceController {
// Create a new service for user
- public async create({ request, response, auth }: HttpContextContract) {
+ public async create({ request, response, auth }: HttpContext) {
// @ts-expect-error Property 'user' does not exist on type 'HttpContextContract'.
- const user = auth.user ?? request.user;
+ const user = auth.user ?? request.user
if (!user) {
- return response.unauthorized('Missing or invalid api token');
+ return response.unauthorized('Missing or invalid api token')
}
// Validate user input
- const data = request.all();
+ const data = request.all()
try {
- await request.validate({ schema: createSchema });
+ await request.validate({ schema: createSchema })
} catch (error) {
return response.status(401).send({
message: 'Invalid POST arguments',
messages: error.messages,
status: 401,
- });
+ })
}
// Get new, unused uuid
- let serviceId;
+ let serviceId
do {
- serviceId = uuid();
+ serviceId = uuid()
} while (
// eslint-disable-next-line no-await-in-loop, unicorn/no-await-expression-member
(await Service.query().where('serviceId', serviceId)).length > 0
- );
+ )
await Service.create({
userId: user.id,
@@ -51,7 +51,7 @@ export default class ServiceController {
name: data.name,
recipeId: data.recipeId,
settings: JSON.stringify(data),
- });
+ })
return response.send({
data: {
@@ -72,28 +72,26 @@ export default class ServiceController {
...data,
},
status: ['created'],
- });
+ })
}
// List all services a user has created
- public async list({ request, response, auth }: HttpContextContract) {
+ public async list({ request, response, auth }: HttpContext) {
// @ts-expect-error Property 'user' does not exist on type 'HttpContextContract'.
- const user = auth.user ?? request.user;
+ const user = auth.user ?? request.user
if (!user) {
- return response.unauthorized('Missing or invalid api token');
+ return response.unauthorized('Missing or invalid api token')
}
- const { id } = user;
- const services = await user.related('services').query();
+ const { id } = user
+ const services = await user.related('services').query()
// Convert to array with all data Franz wants
// eslint-disable-next-line @typescript-eslint/no-explicit-any
const servicesArray = services.map((service: any) => {
const settings =
- typeof service.settings === 'string'
- ? JSON.parse(service.settings)
- : service.settings;
+ typeof service.settings === 'string' ? JSON.parse(service.settings) : service.settings
return {
customRecipe: false,
@@ -110,99 +108,87 @@ export default class ServiceController {
iconUrl: settings.iconId
? `${url}/v1/icon/${settings.iconId}`
: // eslint-disable-next-line unicorn/no-null
- null,
+ null,
id: service.serviceId,
name: service.name,
recipeId: service.recipeId,
userId: id,
- };
- });
+ }
+ })
- return response.send(servicesArray);
+ return response.send(servicesArray)
}
- public async delete({
- request,
- params,
- auth,
- response,
- }: HttpContextContract) {
+ public async delete({ request, params, auth, response }: HttpContext) {
// @ts-expect-error Property 'user' does not exist on type 'HttpContextContract'.
- const user = auth.user ?? request.user;
+ const user = auth.user ?? request.user
if (!user) {
- return response.unauthorized('Missing or invalid api token');
+ return response.unauthorized('Missing or invalid api token')
}
// Update data in database
- await Service.query()
- .where('serviceId', params.id)
- .where('userId', user.id)
- .delete();
+ await Service.query().where('serviceId', params.id).where('userId', user.id).delete()
return response.send({
message: 'Sucessfully deleted service',
status: 200,
- });
+ })
}
// TODO: Test if icon upload works
- public async edit({ request, response, auth, params }: HttpContextContract) {
+ public async edit({ request, response, auth, params }: HttpContext) {
// @ts-expect-error Property 'user' does not exist on type 'HttpContextContract'.
- const user = auth.user ?? request.user;
+ const user = auth.user ?? request.user
if (!user) {
- return response.unauthorized('Missing or invalid api token');
+ return response.unauthorized('Missing or invalid api token')
}
- const { id } = params;
+ const { id } = params
const service = await Service.query()
.where('serviceId', id)
.where('userId', user.id)
- .firstOrFail();
+ .firstOrFail()
if (request.file('icon')) {
// Upload custom service icon
const icon = request.file('icon', {
extnames: ['png', 'jpg', 'jpeg', 'svg'],
size: '2mb',
- });
+ })
if (icon === null) {
- return response.badRequest('Icon not uploaded.');
+ return response.badRequest('Icon not uploaded.')
}
const settings =
- typeof service.settings === 'string'
- ? JSON.parse(service.settings)
- : service.settings;
+ typeof service.settings === 'string' ? JSON.parse(service.settings) : service.settings
- let iconId;
+ let iconId
do {
- iconId = uuid() + uuid();
+ iconId = uuid() + uuid()
} while (
// eslint-disable-next-line no-await-in-loop
- await fs.exists(path.join(Application.tmpPath('uploads'), iconId))
- );
- iconId = `${iconId}.${icon.extname}`;
+ await fs.exists(path.join(app.tmpPath('uploads'), iconId))
+ )
+ iconId = `${iconId}.${icon.extname}`
- await icon.move(Application.tmpPath('uploads'), {
+ await icon.move(app.tmpPath('uploads'), {
name: iconId,
overwrite: true,
- });
+ })
if (icon.state !== 'moved') {
- return response.status(500).send(icon.errors);
+ return response.status(500).send(icon.errors)
}
const newSettings = {
...settings,
iconId,
- customIconVersion: settings?.customIconVersion
- ? settings.customIconVersion + 1
- : 1,
- };
+ customIconVersion: settings?.customIconVersion ? settings.customIconVersion + 1 : 1,
+ }
// Update data in database
await Service.query()
@@ -211,7 +197,7 @@ export default class ServiceController {
.update({
name: service.name,
settings: JSON.stringify(newSettings),
- });
+ })
return response.send({
data: {
@@ -222,28 +208,24 @@ export default class ServiceController {
userId: user.id,
},
status: ['updated'],
- });
+ })
}
// Update service info
- const data = request.all();
+ const data = request.all()
const settings = {
- ...(typeof service.settings === 'string'
- ? JSON.parse(service.settings)
- : service.settings),
+ ...(typeof service.settings === 'string' ? JSON.parse(service.settings) : service.settings),
...data,
- };
+ }
if (settings.customIcon === 'delete') {
- fs.remove(
- path.join(Application.tmpPath('uploads'), settings.iconId),
- ).catch(error => {
- console.error(error);
- });
-
- settings.iconId = undefined;
- settings.customIconVersion = undefined;
- settings.customIcon = '';
+ fs.remove(path.join(app.tmpPath('uploads'), settings.iconId)).catch((error) => {
+ console.error(error)
+ })
+
+ settings.iconId = undefined
+ settings.customIconVersion = undefined
+ settings.customIcon = ''
}
// Update data in database
@@ -253,13 +235,13 @@ export default class ServiceController {
.update({
name: data.name,
settings: JSON.stringify(settings),
- });
+ })
// Get updated row
const serviceUpdated = await Service.query()
.where('serviceId', id)
.where('userId', user.id)
- .firstOrFail();
+ .firstOrFail()
return response.send({
data: {
@@ -270,19 +252,19 @@ export default class ServiceController {
userId: user.id,
},
status: ['updated'],
- });
+ })
}
// TODO: Test if this works
- public async reorder({ request, response, auth }: HttpContextContract) {
+ public async reorder({ request, response, auth }: HttpContext) {
// @ts-expect-error Property 'user' does not exist on type 'HttpContextContract'.
- const user = auth.user ?? request.user;
+ const user = auth.user ?? request.user
if (!user) {
- return response.unauthorized('Missing or invalid api token');
+ return response.unauthorized('Missing or invalid api token')
}
- const data = request.all();
+ const data = request.all()
for (const service of Object.keys(data)) {
// Get current settings from db
@@ -290,14 +272,14 @@ export default class ServiceController {
.where('serviceId', service)
.where('userId', user.id)
- .firstOrFail();
+ .firstOrFail()
const settings = {
...(typeof serviceData.settings === 'string'
? JSON.parse(serviceData.settings)
: serviceData.settings),
order: data[service],
- };
+ }
// Update data in database
await Service.query() // eslint-disable-line no-await-in-loop
@@ -305,18 +287,16 @@ export default class ServiceController {
.where('userId', user.id)
.update({
settings: JSON.stringify(settings),
- });
+ })
}
// Get new services
- const services = await user.related('services').query();
+ const services = await user.related('services').query()
// Convert to array with all data Franz wants
// eslint-disable-next-line @typescript-eslint/no-explicit-any
const servicesArray = services.map((service: any) => {
const settings =
- typeof service.settings === 'string'
- ? JSON.parse(service.settings)
- : service.settings;
+ typeof service.settings === 'string' ? JSON.parse(service.settings) : service.settings
return {
customRecipe: false,
@@ -333,39 +313,39 @@ export default class ServiceController {
iconUrl: settings.iconId
? `${url}/v1/icon/${settings.iconId}`
: // eslint-disable-next-line unicorn/no-null
- null,
+ null,
id: service.serviceId,
name: service.name,
recipeId: service.recipeId,
userId: user.id,
- };
- });
+ }
+ })
- return response.send(servicesArray);
+ return response.send(servicesArray)
}
// TODO: Test if this works
- public async icon({ params, response }: HttpContextContract) {
- let { id } = params;
+ public async icon({ params, response }: HttpContext) {
+ let { id } = params
- id = sanitize(id);
+ id = sanitize(id)
if (id === '') {
return response.status(404).send({
- status: 'Icon doesn\'t exist',
- });
+ status: "Icon doesn't exist",
+ })
}
- const iconPath = path.join(Application.tmpPath('uploads'), id);
+ const iconPath = path.join(app.tmpPath('uploads'), id)
try {
- await fs.access(iconPath);
+ await fs.access(iconPath)
} catch {
// File not available.
return response.status(404).send({
- status: 'Icon doesn\'t exist',
- });
+ status: "Icon doesn't exist",
+ })
}
- return response.download(iconPath);
+ return response.download(iconPath)
}
}
diff --git a/app/Controllers/Http/StaticsController.ts b/app/Controllers/Http/StaticsController.ts
index e221177d..a94a9bab 100644
--- a/app/Controllers/Http/StaticsController.ts
+++ b/app/Controllers/Http/StaticsController.ts
@@ -1,3 +1,3 @@
-// import type { HttpContextContract } from '@ioc:Adonis/Core/HttpContext'
+// import type { HttpContext } from '@adonisjs/core/http'
export default class StaticsController {}
diff --git a/app/Controllers/Http/UserController.ts b/app/Controllers/Http/UserController.ts
index ef7cfdd3..088f7b1c 100644
--- a/app/Controllers/Http/UserController.ts
+++ b/app/Controllers/Http/UserController.ts
@@ -1,134 +1,125 @@
-import type { HttpContextContract } from '@ioc:Adonis/Core/HttpContext';
-import { schema, rules } from '@ioc:Adonis/Core/Validator';
-import User from 'App/Models/User';
-import { connectWithFranz, isRegistrationEnabled } from '../../../config/app';
-import crypto from 'node:crypto';
-import { v4 as uuid } from 'uuid';
-import Workspace from 'App/Models/Workspace';
-import Service from 'App/Models/Service';
-import fetch from 'node-fetch';
+import type { HttpContext } from '@adonisjs/core/http'
+import { schema, rules } from '@adonisjs/validator'
+import User from '#app/Models/User'
+import { connectWithFranz, isRegistrationEnabled } from '../../../config/app.js'
+import crypto from 'node:crypto'
+import { v4 as uuid } from 'uuid'
+import Workspace from '#app/Models/Workspace'
+import Service from '#app/Models/Service'
// TODO: This file needs to be refactored and cleaned up to include types
-import { handleVerifyAndReHash } from '../../../helpers/PasswordHash';
+import { handleVerifyAndReHash } from '../../../helpers/PasswordHash.js'
const newPostSchema = schema.create({
firstname: schema.string(),
lastname: schema.string(),
- email: schema.string([
- rules.email(),
- rules.unique({ table: 'users', column: 'email' }),
- ]),
+ email: schema.string([rules.email(), rules.unique({ table: 'users', column: 'email' })]),
password: schema.string([rules.minLength(8)]),
-});
+})
const franzImportSchema = schema.create({
- email: schema.string([
- rules.email(),
- rules.unique({ table: 'users', column: 'email' }),
- ]),
+ email: schema.string([rules.email(), rules.unique({ table: 'users', column: 'email' })]),
password: schema.string([rules.minLength(8)]),
-});
+})
// // TODO: This whole controller needs to be changed such that it can support importing from both Franz and Ferdi
// eslint-disable-next-line @typescript-eslint/no-explicit-any
const franzRequest = (route: any, method: any, auth: any) =>
new Promise((resolve, reject) => {
- const base = 'https://api.franzinfra.com/v1/';
+ const base = 'https://api.franzinfra.com/v1/'
const user =
- 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Franz/5.3.0-beta.1 Chrome/69.0.3497.128 Electron/4.2.4 Safari/537.36';
+ 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Franz/5.3.0-beta.1 Chrome/69.0.3497.128 Electron/4.2.4 Safari/537.36'
try {
fetch(base + route, {
method,
headers: {
- Authorization: `Bearer ${auth}`,
+ 'Authorization': `Bearer ${auth}`,
'User-Agent': user,
},
})
- .then(data => data.json())
- .then(json => resolve(json));
+ .then((data) => data.json())
+ .then((json) => resolve(json))
} catch {
- reject();
+ reject()
}
- });
+ })
export default class UsersController {
// Register a new user
- public async signup({ request, response, auth }: HttpContextContract) {
+ public async signup({ request, response, auth }: HttpContext) {
if (isRegistrationEnabled === 'false') {
return response.status(401).send({
message: 'Registration is disabled on this server',
status: 401,
- });
+ })
}
// Validate user input
- let data;
+ let data
try {
- data = await request.validate({ schema: newPostSchema });
+ data = await request.validate({ schema: newPostSchema })
} catch (error) {
return response.status(401).send({
message: 'Invalid POST arguments',
messages: error.messages,
status: 401,
- });
+ })
}
// Create user in DB
- let user;
+ let user
try {
user = await User.create({
email: data.email,
password: data.password,
username: data.firstname,
lastname: data.lastname,
- });
+ })
} catch {
return response.status(401).send({
message: 'E-Mail address already in use',
status: 401,
- });
+ })
}
// Generate new auth token
- const token = await auth.use('jwt').login(user, { payload: {} });
+ const token = await auth.use('jwt').login(user, { payload: {} })
return response.send({
message: 'Successfully created account',
token: token.accessToken,
- });
+ })
}
// Login using an existing user
- public async login({ request, response, auth }: HttpContextContract) {
+ public async login({ request, response, auth }: HttpContext) {
if (!request.header('Authorization')) {
return response.status(401).send({
message: 'Please provide authorization',
status: 401,
- });
+ })
}
// Get auth data from auth token
- const authHeader = atob(
- request.header('Authorization')!.replace('Basic ', ''),
- ).split(':');
+ const authHeader = atob(request.header('Authorization')!.replace('Basic ', '')).split(':')
// Check if user with email exists
- const user = await User.query().where('email', authHeader[0]).first();
+ const user = await User.query().where('email', authHeader[0]).first()
if (!user?.email) {
return response.status(401).send({
message: 'User credentials not valid',
code: 'invalid-credentials',
status: 401,
- });
+ })
}
// Verify password
- let isMatchedPassword = false;
+ let isMatchedPassword = false
try {
- isMatchedPassword = await handleVerifyAndReHash(user, authHeader[1]);
+ isMatchedPassword = await handleVerifyAndReHash(user, authHeader[1])
} catch (error) {
- return response.internalServerError({ message: error.message });
+ return response.internalServerError({ message: error.message })
}
if (!isMatchedPassword) {
@@ -136,31 +127,28 @@ export default class UsersController {
message: 'User credentials not valid',
code: 'invalid-credentials',
status: 401,
- });
+ })
}
// Generate token
- const token = await auth.use('jwt').login(user, { payload: {} });
+ const token = await auth.use('jwt').login(user, { payload: {} })
return response.send({
message: 'Successfully logged in',
token: token.accessToken,
- });
+ })
}
// Return information about the current user
- public async me({ request, response, auth }: HttpContextContract) {
+ public async me({ request, response, auth }: HttpContext) {
// @ts-expect-error Property 'user' does not exist on type 'HttpContextContract'.
- const user = auth.user ?? request.user;
+ const user = auth.user ?? request.user
if (!user) {
- return response.send('Missing or invalid api token');
+ return response.send('Missing or invalid api token')
}
- const settings =
- typeof user.settings === 'string'
- ? JSON.parse(user.settings)
- : user.settings;
+ const settings = typeof user.settings === 'string' ? JSON.parse(user.settings) : user.settings
return response.send({
accountType: 'individual',
@@ -176,29 +164,29 @@ export default class UsersController {
lastname: user.lastname,
locale: 'en-US',
...settings,
- });
+ })
}
- public async updateMe({ request, response, auth }: HttpContextContract) {
+ public async updateMe({ request, response, auth }: HttpContext) {
// @ts-expect-error Property 'user' does not exist on type 'HttpContextContract'.
- const user = auth.user ?? request.user;
+ const user = auth.user ?? request.user
if (!user) {
- return response.send('Missing or invalid api token');
+ return response.send('Missing or invalid api token')
}
- let settings = user.settings || {};
+ let settings = user.settings || {}
if (typeof settings === 'string') {
- settings = JSON.parse(settings);
+ settings = JSON.parse(settings)
}
const newSettings = {
...settings,
...request.all(),
- };
+ }
- user.settings = JSON.stringify(newSettings);
- await user.save();
+ user.settings = JSON.stringify(newSettings)
+ await user.save()
return response.send({
data: {
@@ -217,140 +205,137 @@ export default class UsersController {
...newSettings,
},
status: ['data-updated'],
- });
+ })
}
- public async newToken({ request, response, auth }: HttpContextContract) {
+ public async newToken({ request, response, auth }: HttpContext) {
// @ts-expect-error Property 'user' does not exist on type 'HttpContextContract'.
- const user = auth.user ?? request.user;
+ const user = auth.user ?? request.user
if (!user) {
- return response.send('Missing or invalid api token');
+ return response.send('Missing or invalid api token')
}
- const token = await auth.use('jwt').generate(user, { payload: {} });
+ const token = await auth.use('jwt').generate(user, { payload: {} })
return response.send({
token: token.accessToken,
- });
+ })
}
- public async import({ request, response, view }: HttpContextContract) {
+ public async import({ request, response, view }: HttpContext) {
if (isRegistrationEnabled === 'false') {
return response.status(401).send({
message: 'Registration is disabled on this server',
status: 401,
- });
+ })
}
if (connectWithFranz === 'false') {
return response.send(
- 'We could not import your Franz account data.\n\nIf you are the server owner, please set CONNECT_WITH_FRANZ to true to enable account imports.',
- );
+ 'We could not import your Franz account data.\n\nIf you are the server owner, please set CONNECT_WITH_FRANZ to true to enable account imports.'
+ )
}
// Validate user input
- let data;
+ let data
try {
- data = await request.validate({ schema: franzImportSchema });
+ data = await request.validate({ schema: franzImportSchema })
} catch (error) {
return view.render('others.message', {
heading: 'Error while importing',
text: error.messages,
- });
+ })
}
- const { email, password } = data;
+ const { email, password } = data
- const hashedPassword = crypto
- .createHash('sha256')
- .update(password)
- .digest('base64');
+ const hashedPassword = crypto.createHash('sha256').update(password).digest('base64')
- const base = 'https://api.franzinfra.com/v1/';
+ const base = 'https://api.franzinfra.com/v1/'
const userAgent =
- 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Franz/5.3.0-beta.1 Chrome/69.0.3497.128 Electron/4.2.4 Safari/537.36';
+ 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Franz/5.3.0-beta.1 Chrome/69.0.3497.128 Electron/4.2.4 Safari/537.36'
// Try to get an authentication token
- let token;
+ let token
try {
- const basicToken = btoa(`${email}:${hashedPassword}`);
+ const basicToken = btoa(`${email}:${hashedPassword}`)
const loginBody = {
isZendeskLogin: false,
- };
+ }
const rawResponse = await fetch(`${base}auth/login`, {
method: 'POST',
body: JSON.stringify(loginBody),
headers: {
- Authorization: `Basic ${basicToken}`,
+ 'Authorization': `Basic ${basicToken}`,
'User-Agent': userAgent,
'Content-Type': 'application/json',
- accept: '*/*',
+ 'accept': '*/*',
'x-franz-source': 'Web',
},
- });
- const content = await rawResponse.json();
+ })
+ const content = await rawResponse.json()
if (!content.message || content.message !== 'Successfully logged in') {
const errorMessage =
- 'Could not login into Franz with your supplied credentials. Please check and try again';
- return response.status(401).send(errorMessage);
+ 'Could not login into Franz with your supplied credentials. Please check and try again'
+ return response.status(401).send(errorMessage)
}
- token = content.token;
+ token = content.token
} catch (error) {
return response.status(401).send({
message: 'Cannot login to Franz',
error: error,
- });
+ })
}
// Get user information
// eslint-disable-next-line @typescript-eslint/no-explicit-any
- let userInf: any = false;
+ let userInf: any = false
try {
- userInf = await franzRequest('me', 'GET', token);
+ userInf = await franzRequest('me', 'GET', token)
} catch (error) {
- const errorMessage = `Could not get your user info from Franz. Please check your credentials or try again later.\nError: ${error}`;
- return response.status(401).send(errorMessage);
+ const errorMessage = `Could not get your user info from Franz. Please check your credentials or try again later.\nError: ${error}`
+ return response.status(401).send(errorMessage)
}
if (!userInf) {
const errorMessage =
- 'Could not get your user info from Franz. Please check your credentials or try again later';
- return response.status(401).send(errorMessage);
+ 'Could not get your user info from Franz. Please check your credentials or try again later'
+ return response.status(401).send(errorMessage)
}
// Create user in DB
- let user;
+ let user
try {
user = await User.create({
email: userInf.email,
password: hashedPassword,
username: userInf.firstname,
lastname: userInf.lastname,
- });
+ })
} catch (error) {
- const errorMessage = `Could not create your user in our system.\nError: ${error}`;
- return response.status(401).send(errorMessage);
+ const errorMessage = `Could not create your user in our system.\nError: ${error}`
+ return response.status(401).send(errorMessage)
}
- const serviceIdTranslation = {};
+ const serviceIdTranslation = {}
// Import services
try {
- const services = await franzRequest('me/services', 'GET', token);
+ const services = await franzRequest('me/services', 'GET', token)
// @ts-expect-error
for (const service of services) {
// Get new, unused uuid
- let serviceId;
+ let serviceId
do {
- serviceId = uuid();
+ serviceId = uuid()
} while (
// eslint-disable-next-line no-await-in-loop, unicorn/no-await-expression-member
(await Service.query().where('serviceId', serviceId)).length > 0
- );
+ )
// eslint-disable-next-line no-await-in-loop
await Service.create({
@@ -359,34 +344,34 @@ export default class UsersController {
name: service.name,
recipeId: service.recipeId,
settings: JSON.stringify(service),
- });
+ })
// @ts-expect-error
- serviceIdTranslation[service.id] = serviceId;
+ serviceIdTranslation[service.id] = serviceId
}
} catch (error) {
- const errorMessage = `Could not import your services into our system.\nError: ${error}`;
- return response.status(401).send(errorMessage);
+ const errorMessage = `Could not import your services into our system.\nError: ${error}`
+ return response.status(401).send(errorMessage)
}
// Import workspaces
try {
- const workspaces = await franzRequest('workspace', 'GET', token);
+ const workspaces = await franzRequest('workspace', 'GET', token)
// @ts-expect-error
for (const workspace of workspaces) {
- let workspaceId;
+ let workspaceId
do {
- workspaceId = uuid();
+ workspaceId = uuid()
} while (
// eslint-disable-next-line unicorn/no-await-expression-member, no-await-in-loop
(await Workspace.query().where('workspaceId', workspaceId)).length > 0
- );
+ )
const services = workspace.services.map(
// @ts-expect-error
- service => serviceIdTranslation[service],
- );
+ (service) => serviceIdTranslation[service]
+ )
// eslint-disable-next-line no-await-in-loop
await Workspace.create({
@@ -396,15 +381,15 @@ export default class UsersController {
order: workspace.order,
services: JSON.stringify(services),
data: JSON.stringify({}),
- });
+ })
}
} catch (error) {
- const errorMessage = `Could not import your workspaces into our system.\nError: ${error}`;
- return response.status(401).send(errorMessage);
+ const errorMessage = `Could not import your workspaces into our system.\nError: ${error}`
+ return response.status(401).send(errorMessage)
}
return response.send(
- 'Your account has been imported. You can now use your Franz/Ferdi account in Ferdium.',
- );
+ 'Your account has been imported. You can now use your Franz/Ferdi account in Ferdium.'
+ )
}
}
diff --git a/app/Controllers/Http/WorkspaceController.ts b/app/Controllers/Http/WorkspaceController.ts
index 70af343e..a2bc54ef 100644
--- a/app/Controllers/Http/WorkspaceController.ts
+++ b/app/Controllers/Http/WorkspaceController.ts
@@ -1,53 +1,53 @@
-import type { HttpContextContract } from '@ioc:Adonis/Core/HttpContext';
-import { validator, schema } from '@ioc:Adonis/Core/Validator';
-import Workspace from 'App/Models/Workspace';
-import { v4 as uuid } from 'uuid';
+import type { HttpContext } from '@adonisjs/core/http'
+import { validator, schema } from '@adonisjs/validator'
+import Workspace from '#app/Models/Workspace'
+import { v4 as uuid } from 'uuid'
const createSchema = schema.create({
name: schema.string(),
-});
+})
const editSchema = schema.create({
name: schema.string(),
-});
+})
const deleteSchema = schema.create({
id: schema.string(),
-});
+})
export default class WorkspaceController {
// Create a new workspace for user
- public async create({ request, response, auth }: HttpContextContract) {
+ public async create({ request, response, auth }: HttpContext) {
// @ts-expect-error Property 'user' does not exist on type 'HttpContextContract'.
- const user = auth.user ?? request.user;
+ const user = auth.user ?? request.user
if (!user) {
- return response.unauthorized('Missing or invalid api token');
+ return response.unauthorized('Missing or invalid api token')
}
// Validate user input
- let data;
+ let data
try {
- data = await request.validate({ schema: createSchema });
+ data = await request.validate({ schema: createSchema })
} catch (error) {
return response.status(401).send({
message: 'Invalid POST arguments',
messages: error.messages,
status: 401,
- });
+ })
}
// Get new, unused uuid
- let workspaceId;
+ let workspaceId
do {
- workspaceId = uuid();
+ workspaceId = uuid()
} while (
// eslint-disable-next-line unicorn/no-await-expression-member, no-await-in-loop
(await Workspace.query().where('workspaceId', workspaceId)).length > 0
- );
+ )
// eslint-disable-next-line unicorn/no-await-expression-member
- const order = (await user.related('workspaces').query()).length;
+ const order = (await user.related('workspaces').query()).length
await Workspace.create({
userId: user.id,
@@ -56,7 +56,7 @@ export default class WorkspaceController {
order,
services: JSON.stringify([]),
data: JSON.stringify(data),
- });
+ })
return response.send({
userId: user.id,
@@ -64,30 +64,30 @@ export default class WorkspaceController {
id: workspaceId,
order,
workspaces: [],
- });
+ })
}
- public async edit({ request, response, auth, params }: HttpContextContract) {
+ public async edit({ request, response, auth, params }: HttpContext) {
// @ts-expect-error Property 'user' does not exist on type 'HttpContextContract'.
- const user = auth.user ?? request.user;
+ const user = auth.user ?? request.user
if (!user) {
- return response.unauthorized('Missing or invalid api token');
+ return response.unauthorized('Missing or invalid api token')
}
// Validate user input
try {
- await request.validate({ schema: editSchema });
+ await request.validate({ schema: editSchema })
} catch (error) {
return response.status(401).send({
message: 'Invalid POST arguments',
messages: error.messages,
status: 401,
- });
+ })
}
- const data = request.all();
- const { id } = params;
+ const data = request.all()
+ const { id } = params
// Update data in database
await Workspace.query()
@@ -96,13 +96,13 @@ export default class WorkspaceController {
.update({
name: data.name,
services: JSON.stringify(data.services),
- });
+ })
// Get updated row
const workspace = await Workspace.query()
.where('workspaceId', id)
.where('userId', user.id)
- .firstOrFail();
+ .firstOrFail()
return response.send({
id: workspace.workspaceId,
@@ -110,62 +110,54 @@ export default class WorkspaceController {
order: workspace.order,
services: data.services,
userId: user.id,
- });
+ })
}
- public async delete({
- request,
- response,
- auth,
- params,
- }: HttpContextContract) {
+ public async delete({ request, response, auth, params }: HttpContext) {
// @ts-expect-error Property 'user' does not exist on type 'HttpContextContract'.
- const user = auth.user ?? request.user;
+ const user = auth.user ?? request.user
if (!user) {
- return response.unauthorized('Missing or invalid api token');
+ return response.unauthorized('Missing or invalid api token')
}
// Validate user input
- let data;
+ let data
try {
data = await validator.validate({
data: params,
schema: deleteSchema,
- });
+ })
} catch (error) {
return response.status(401).send({
message: 'Invalid arguments',
messages: error.messages,
status: 401,
- });
+ })
}
- const { id } = data;
+ const { id } = data
// Update data in database
- await Workspace.query()
- .where('workspaceId', id)
- .where('userId', user.id)
- .delete();
+ await Workspace.query().where('workspaceId', id).where('userId', user.id).delete()
return response.send({
message: 'Successfully deleted workspace',
- });
+ })
}
// List all workspaces a user has created
- public async list({ request, response, auth }: HttpContextContract) {
+ public async list({ request, response, auth }: HttpContext) {
// @ts-expect-error Property 'user' does not exist on type 'HttpContextContract'.
- const user = auth.user ?? request.user;
+ const user = auth.user ?? request.user
if (!user) {
- return response.unauthorized('Missing or invalid api token');
+ return response.unauthorized('Missing or invalid api token')
}
- const workspaces = await user.related('workspaces').query();
+ const workspaces = await user.related('workspaces').query()
// Convert to array with all data Franz wants
- let workspacesArray: object[] = [];
+ let workspacesArray: object[] = []
if (workspaces) {
// eslint-disable-next-line @typescript-eslint/no-explicit-any
workspacesArray = workspaces.map((workspace: any) => ({
@@ -177,9 +169,9 @@ export default class WorkspaceController {
? JSON.parse(workspace.services)
: workspace.services,
userId: user.id,
- }));
+ }))
}
- return response.send(workspacesArray);
+ return response.send(workspacesArray)
}
}
diff --git a/app/Exceptions/Handler.ts b/app/Exceptions/Handler.ts
index 35c77d01..b13126d9 100644
--- a/app/Exceptions/Handler.ts
+++ b/app/Exceptions/Handler.ts
@@ -13,11 +13,11 @@
|
*/
-import Logger from '@ioc:Adonis/Core/Logger';
-import HttpExceptionHandler from '@ioc:Adonis/Core/HttpExceptionHandler';
+import logger from '@adonisjs/core/services/logger'
+import { ExceptionHandler as AdonisExceptionHandler } from '@adonisjs/core/http'
-export default class ExceptionHandler extends HttpExceptionHandler {
+export default class ExceptionHandler extends AdonisExceptionHandler {
constructor() {
- super(Logger);
+ super(logger)
}
}
diff --git a/app/Middleware/AllowGuestOnly.ts b/app/Middleware/AllowGuestOnly.ts
index ee43571c..5ef5c34e 100644
--- a/app/Middleware/AllowGuestOnly.ts
+++ b/app/Middleware/AllowGuestOnly.ts
@@ -1,6 +1,6 @@
-import { GuardsList } from '@ioc:Adonis/Addons/Auth';
-import { HttpContextContract } from '@ioc:Adonis/Core/HttpContext';
-import { AuthenticationException } from '@adonisjs/auth/build/standalone';
+import { GuardsList } from '@ioc:Adonis/Addons/Auth'
+import { HttpContext } from '@adonisjs/core/http'
+import { AuthenticationException } from '@adonisjs/auth/build/standalone'
/**
* This is actually a reverted a reverted auth middleware available in ./Auth.ts
@@ -10,27 +10,24 @@ export default class GuestMiddleware {
/**
* The URL to redirect to when request is authorized
*/
- protected redirectTo = '/dashboard';
+ protected redirectTo = '/dashboard'
- protected async authenticate(
- auth: HttpContextContract['auth'],
- guards: (keyof GuardsList)[],
- ) {
- let guardLastAttempted: string | undefined;
+ protected async authenticate(auth: HttpContext['auth'], guards: (keyof GuardsList)[]) {
+ let guardLastAttempted: string | undefined
for (const guard of guards) {
- guardLastAttempted = guard;
+ guardLastAttempted = guard
// eslint-disable-next-line no-await-in-loop
if (await auth.use(guard).check()) {
- auth.defaultGuard = guard;
+ auth.defaultGuard = guard
throw new AuthenticationException(
'Unauthorized access',
'E_UNAUTHORIZED_ACCESS',
guardLastAttempted,
- this.redirectTo,
- );
+ this.redirectTo
+ )
}
}
}
@@ -39,18 +36,18 @@ export default class GuestMiddleware {
* Handle request
*/
public async handle(
- { auth }: HttpContextContract,
+ { auth }: HttpContext,
next: () => Promise,
- customGuards: (keyof GuardsList)[],
+ customGuards: (keyof GuardsList)[]
) {
/**
* Uses the user defined guards or the default guard mentioned in
* the config file
*/
- const guards = customGuards.length > 0 ? customGuards : [auth.name];
+ const guards = customGuards.length > 0 ? customGuards : [auth.name]
- await this.authenticate(auth, guards);
+ await this.authenticate(auth, guards)
- await next();
+ await next()
}
}
diff --git a/app/Middleware/Auth.ts b/app/Middleware/Auth.ts
index d0b212c1..29620bb5 100644
--- a/app/Middleware/Auth.ts
+++ b/app/Middleware/Auth.ts
@@ -1,9 +1,9 @@
-import { GuardsList } from '@ioc:Adonis/Addons/Auth';
-import { HttpContextContract } from '@ioc:Adonis/Core/HttpContext';
-import { AuthenticationException } from '@adonisjs/auth/build/standalone';
-import * as jose from 'jose';
-import { appKey } from 'Config/app';
-import User from 'App/Models/User';
+import { GuardsList } from '@ioc:Adonis/Addons/Auth'
+import { HttpContext } from '@adonisjs/core/http'
+import { AuthenticationException } from '@adonisjs/auth/build/standalone'
+import * as jose from 'jose'
+import { appKey } from '#config/app'
+import User from '#app/Models/User'
/**
* Auth middleware is meant to restrict un-authenticated access to a given route
@@ -16,7 +16,7 @@ export default class AuthMiddleware {
/**
* The URL to redirect to when request is Unauthorized
*/
- protected redirectTo = '/user/login';
+ protected redirectTo = '/user/login'
/**
* Authenticates the current HTTP request against a custom set of defined
@@ -27,9 +27,9 @@ export default class AuthMiddleware {
* during the current request.
*/
protected async authenticate(
- auth: HttpContextContract['auth'],
+ auth: HttpContext['auth'],
guards: (keyof GuardsList)[],
- request: HttpContextContract['request'],
+ request: HttpContext['request']
) {
/**
* Hold reference to the guard last attempted within the for loop. We pass
@@ -37,15 +37,15 @@ export default class AuthMiddleware {
* it can decide the correct response behavior based upon the guard
* driver
*/
- let guardLastAttempted: string | undefined;
+ let guardLastAttempted: string | undefined
for (const guard of guards) {
- guardLastAttempted = guard;
+ guardLastAttempted = guard
- let isLoggedIn = false;
+ let isLoggedIn = false
try {
// eslint-disable-next-line no-await-in-loop
- isLoggedIn = await auth.use(guard).check();
+ isLoggedIn = await auth.use(guard).check()
} catch {
// Silent fail to allow the rest of the code to handle the error
}
@@ -56,25 +56,22 @@ export default class AuthMiddleware {
* the rest of the request, since the user authenticated
* succeeded here
*/
- auth.defaultGuard = guard;
- return;
+ auth.defaultGuard = guard
+ return
}
}
// Manually try authenticating using the JWT (verfiy signature required)
// Legacy support for JWTs so that the client still works (older than 2.0.0)
- const authToken = request.headers().authorization?.split(' ')[1];
+ const authToken = request.headers().authorization?.split(' ')[1]
if (authToken) {
try {
- const jwt = await jose.jwtVerify(
- authToken,
- new TextEncoder().encode(appKey),
- );
- const { uid } = jwt.payload;
+ const jwt = await jose.jwtVerify(authToken, new TextEncoder().encode(appKey))
+ const { uid } = jwt.payload
// @ts-expect-error
- request.user = await User.findOrFail(uid);
- return;
+ request.user = await User.findOrFail(uid)
+ return
} catch {
// Silent fail to allow the rest of the code to handle the error
}
@@ -87,32 +84,32 @@ export default class AuthMiddleware {
'Unauthorized access',
'E_UNAUTHORIZED_ACCESS',
guardLastAttempted,
- this.redirectTo,
- );
+ this.redirectTo
+ )
}
/**
* Handle request
*/
public async handle(
- { request, auth, response }: HttpContextContract,
+ { request, auth, response }: HttpContext,
next: () => Promise,
- customGuards: (keyof GuardsList)[],
+ customGuards: (keyof GuardsList)[]
) {
/**
* Uses the user defined guards or the default guard mentioned in
* the config file
*/
- const guards = customGuards.length > 0 ? customGuards : [auth.name];
+ const guards = customGuards.length > 0 ? customGuards : [auth.name]
try {
- await this.authenticate(auth, guards, request);
+ await this.authenticate(auth, guards, request)
} catch (error) {
// If the user is not authenticated and it is a web endpoint, redirect to the login page
if (guards.includes('web')) {
- return response.redirect(error.redirectTo);
+ return response.redirect(error.redirectTo)
}
- throw error;
+ throw error
}
- await next();
+ await next()
}
}
diff --git a/app/Middleware/Dashboard.ts b/app/Middleware/Dashboard.ts
index 62deea0e..f29794cb 100644
--- a/app/Middleware/Dashboard.ts
+++ b/app/Middleware/Dashboard.ts
@@ -1,17 +1,14 @@
-import type { HttpContextContract } from '@ioc:Adonis/Core/HttpContext';
-import Config from '@ioc:Adonis/Core/Config';
+import type { HttpContext } from '@adonisjs/core/http'
+import { Config } from '@adonisjs/core/config'
export default class Dashboard {
- public async handle(
- { response }: HttpContextContract,
- next: () => Promise,
- ) {
+ public async handle({ response }: HttpContext, next: () => Promise) {
if (Config.get('dashboard.enabled') === false) {
response.send(
- 'The user dashboard is disabled on this server\n\nIf you are the server owner, please set IS_DASHBOARD_ENABLED to true to enable the dashboard.',
- );
+ 'The user dashboard is disabled on this server\n\nIf you are the server owner, please set IS_DASHBOARD_ENABLED to true to enable the dashboard.'
+ )
} else {
- await next();
+ await next()
}
}
}
diff --git a/app/Middleware/SilentAuth.ts b/app/Middleware/SilentAuth.ts
index ee73ec49..a7271d57 100644
--- a/app/Middleware/SilentAuth.ts
+++ b/app/Middleware/SilentAuth.ts
@@ -1,4 +1,4 @@
-import { HttpContextContract } from '@ioc:Adonis/Core/HttpContext';
+import { HttpContext } from '@adonisjs/core/http'
/**
* Silent auth middleware can be used as a global middleware to silent check
@@ -10,15 +10,12 @@ export default class SilentAuthMiddleware {
/**
* Handle request
*/
- public async handle(
- { auth }: HttpContextContract,
- next: () => Promise,
- ) {
+ public async handle({ auth }: HttpContext, next: () => Promise) {
/**
* Check if user is logged-in or not. If yes, then `ctx.auth.user` will be
* set to the instance of the currently logged in user.
*/
- await auth.check();
- await next();
+ await auth.check()
+ await next()
}
}
diff --git a/app/Models/Recipe.ts b/app/Models/Recipe.ts
index fce5f3d0..bca6e764 100644
--- a/app/Models/Recipe.ts
+++ b/app/Models/Recipe.ts
@@ -1,23 +1,23 @@
-import { DateTime } from 'luxon';
-import { BaseModel, column } from '@ioc:Adonis/Lucid/Orm';
+import { DateTime } from 'luxon'
+import { BaseModel, column } from '@adonisjs/lucid/orm'
export default class Recipe extends BaseModel {
@column({ isPrimary: true })
- public id: number;
+ public id: number
@column()
- public name: string;
+ public name: string
@column()
- public recipeId: string;
+ public recipeId: string
// TODO: Type the data object.
@column()
- public data: object;
+ public data: object
@column.dateTime({ autoCreate: true })
- public createdAt: DateTime;
+ public createdAt: DateTime
@column.dateTime({ autoCreate: true, autoUpdate: true })
- public updatedAt: DateTime;
+ public updatedAt: DateTime
}
diff --git a/app/Models/Service.ts b/app/Models/Service.ts
index af1a8e1b..0cd2afb6 100644
--- a/app/Models/Service.ts
+++ b/app/Models/Service.ts
@@ -1,40 +1,41 @@
-import { DateTime } from 'luxon';
-import { BaseModel, column, HasOne, hasOne } from '@ioc:Adonis/Lucid/Orm';
-import User from './User';
+import { DateTime } from 'luxon'
+import { BaseModel, column, hasOne } from '@adonisjs/lucid/orm'
+import User from './User.js'
+import type { HasOne } from '@adonisjs/lucid/types/relations'
export default class Service extends BaseModel {
@column({ isPrimary: true })
- public id: number;
+ public id: number
@hasOne(() => User, {
foreignKey: 'userId',
})
- public user: HasOne;
+ public user: HasOne
@column({
columnName: 'userId',
})
- public userId: number;
+ public userId: number
@column({
columnName: 'serviceId',
})
- public serviceId: string;
+ public serviceId: string
@column()
- public name: string;
+ public name: string
@column({
columnName: 'recipeId',
})
- public recipeId: string;
+ public recipeId: string
@column()
- public settings: string;
+ public settings: string
@column.dateTime({ autoCreate: true })
- public createdAt: DateTime;
+ public createdAt: DateTime
@column.dateTime({ autoCreate: true, autoUpdate: true })
- public updatedAt: DateTime;
+ public updatedAt: DateTime
}
diff --git a/app/Models/Token.ts b/app/Models/Token.ts
index 4f85ebcb..a8c29dd6 100644
--- a/app/Models/Token.ts
+++ b/app/Models/Token.ts
@@ -1,38 +1,39 @@
-import { DateTime } from 'luxon';
-import { BaseModel, column, HasOne, hasOne } from '@ioc:Adonis/Lucid/Orm';
-import User from './User';
+import { DateTime } from 'luxon'
+import { BaseModel, column, hasOne } from '@adonisjs/lucid/orm'
+import User from './User.js'
+import { HasOne } from '@adonisjs/lucid/types/relations'
export default class Token extends BaseModel {
@column({ isPrimary: true })
- public id: number;
+ public id: number
@hasOne(() => User, {
localKey: 'user_id',
foreignKey: 'id',
})
- public user: HasOne;
+ public user: HasOne
@column()
- public user_id: number;
+ public user_id: number
@column()
- public token: string;
+ public token: string
@column()
- public type: string;
+ public type: string
@column()
- public is_revoked: boolean;
+ public is_revoked: boolean
@column()
- public name: string;
+ public name: string
@column.dateTime()
- public expires_at: DateTime;
+ public expires_at: DateTime
@column.dateTime({ autoCreate: true })
- public created_at: DateTime;
+ public created_at: DateTime
@column.dateTime({ autoCreate: true, autoUpdate: true })
- public updated_at: DateTime;
+ public updated_at: DateTime
}
diff --git a/app/Models/User.ts b/app/Models/User.ts
index 0b8e688a..cc2c5534 100644
--- a/app/Models/User.ts
+++ b/app/Models/User.ts
@@ -1,75 +1,70 @@
-import { DateTime } from 'luxon';
-import {
- BaseModel,
- beforeSave,
- column,
- HasMany,
- hasMany,
-} from '@ioc:Adonis/Lucid/Orm';
-import Hash from '@ioc:Adonis/Core/Hash';
-import Event from '@ioc:Adonis/Core/Event';
-import moment from 'moment';
-import Encryption from '@ioc:Adonis/Core/Encryption';
-import randtoken from 'rand-token';
-import Token from './Token';
-import Workspace from './Workspace';
-import Service from './Service';
-import Mail from '@ioc:Adonis/Addons/Mail';
-import { url } from 'Config/app';
-import { mailFrom } from 'Config/dashboard';
+import { DateTime } from 'luxon'
+import { BaseModel, beforeSave, column, hasMany } from '@adonisjs/lucid/orm'
+import hash from '@adonisjs/core/services/hash'
+import emitter from '@adonisjs/core/services/emitter'
+import moment from 'moment'
+import Encryption from '@ioc:Adonis/Core/Encryption'
+import randtoken from 'rand-token'
+import Token from './Token.js'
+import Workspace from './Workspace.js'
+import Service from './Service.js'
+import mail from '@adonisjs/mail/services/main'
+import { url } from '#config/app'
+import { mailFrom } from '#config/dashboard'
+import { HasMany } from '@adonisjs/lucid/types/relations'
export default class User extends BaseModel {
@column({ isPrimary: true })
- public id: number;
+ public id: number
@column()
- public email: string;
+ public email: string
@column()
- public username: string;
+ public username: string
@column()
- public password: string;
+ public password: string
@column()
- public lastname: string;
+ public lastname: string
// TODO: Type the settings object.
@column()
- public settings: object;
+ public settings: object
@column.dateTime({ autoCreate: true })
- public created_at: DateTime;
+ public created_at: DateTime
@column.dateTime({ autoCreate: true, autoUpdate: true })
- public updated_at: DateTime;
+ public updated_at: DateTime
@beforeSave()
public static async hashPassword(user: User) {
if (user.$dirty.password) {
- user.password = await Hash.make(user.password);
+ user.password = await hash.make(user.password)
}
}
@hasMany(() => Token, {
foreignKey: 'user_id',
})
- public tokens: HasMany;
+ public tokens: HasMany
@hasMany(() => Service, {
foreignKey: 'userId',
})
- public services: HasMany;
+ public services: HasMany
@hasMany(() => Workspace, {
foreignKey: 'userId',
})
- public workspaces: HasMany;
+ public workspaces: HasMany
public async forgotPassword(): Promise {
- const token = await this.generateToken(this, 'forgot_password');
+ const token = await this.generateToken(this, 'forgot_password')
- await Mail.send(message => {
+ await mail.send((message) => {
message
.from(mailFrom)
.to(this.email)
@@ -78,13 +73,13 @@ export default class User extends BaseModel {
username: this.username,
appUrl: url,
token: token,
- });
- });
+ })
+ })
- await Event.emit('forgot:password', {
+ await emitter.emit('forgot:password', {
user: this,
token,
- });
+ })
}
private async generateToken(user: User, type: string): Promise {
@@ -93,21 +88,17 @@ export default class User extends BaseModel {
.query()
.where('type', type)
.where('is_revoked', false)
- .where(
- 'updated_at',
- '>=',
- moment().subtract(24, 'hours').format('YYYY-MM-DD HH:mm:ss'),
- );
+ .where('updated_at', '>=', moment().subtract(24, 'hours').format('YYYY-MM-DD HH:mm:ss'))
- const row = await query.first();
+ const row = await query.first()
if (row) {
- return row.token;
+ return row.token
}
- const token = Encryption.encrypt(randtoken.generate(16));
+ const token = Encryption.encrypt(randtoken.generate(16))
- await user.related('tokens').create({ type, token });
+ await user.related('tokens').create({ type, token })
- return token;
+ return token
}
}
diff --git a/app/Models/Workspace.ts b/app/Models/Workspace.ts
index 8648e02f..c960ae4a 100644
--- a/app/Models/Workspace.ts
+++ b/app/Models/Workspace.ts
@@ -1,41 +1,42 @@
-import { DateTime } from 'luxon';
-import { BaseModel, column, HasOne, hasOne } from '@ioc:Adonis/Lucid/Orm';
-import User from './User';
+import { DateTime } from 'luxon'
+import { BaseModel, column, hasOne } from '@adonisjs/lucid/orm'
+import User from './User.js'
+import { HasOne } from '@adonisjs/lucid/types/relations'
export default class Workspace extends BaseModel {
@column({ isPrimary: true })
- public id: number;
+ public id: number
@column({
columnName: 'workspaceId',
})
- public workspaceId: string;
+ public workspaceId: string
@hasOne(() => User, {
foreignKey: 'userId',
})
- public user: HasOne;
+ public user: HasOne
@column({
columnName: 'userId',
})
- public userId: number;
+ public userId: number
@column()
- public name: string;
+ public name: string
@column()
- public order: number;
+ public order: number
@column()
- public services: string;
+ public services: string
@column()
- public data: string;
+ public data: string
@column.dateTime({ autoCreate: true })
- public createdAt: DateTime;
+ public createdAt: DateTime
@column.dateTime({ autoCreate: true, autoUpdate: true })
- public updatedAt: DateTime;
+ public updatedAt: DateTime
}
diff --git a/bin/console.ts b/bin/console.ts
new file mode 100644
index 00000000..4b102ee8
--- /dev/null
+++ b/bin/console.ts
@@ -0,0 +1,47 @@
+/*
+|--------------------------------------------------------------------------
+| Ace entry point
+|--------------------------------------------------------------------------
+|
+| The "console.ts" file is the entrypoint for booting the AdonisJS
+| command-line framework and executing commands.
+|
+| Commands do not boot the application, unless the currently running command
+| has "options.startApp" flag set to true.
+|
+*/
+
+import 'reflect-metadata'
+import { Ignitor, prettyPrintError } from '@adonisjs/core'
+
+/**
+ * URL to the application root. AdonisJS need it to resolve
+ * paths to file and directories for scaffolding commands
+ */
+const APP_ROOT = new URL('../', import.meta.url)
+
+/**
+ * The importer is used to import files in context of the
+ * application.
+ */
+const IMPORTER = (filePath: string) => {
+ if (filePath.startsWith('./') || filePath.startsWith('../')) {
+ return import(new URL(filePath, APP_ROOT).href)
+ }
+ return import(filePath)
+}
+
+new Ignitor(APP_ROOT, { importer: IMPORTER })
+ .tap((app) => {
+ app.booting(async () => {
+ await import('#start/env')
+ })
+ app.listen('SIGTERM', () => app.terminate())
+ app.listenIf(app.managedByPm2, 'SIGINT', () => app.terminate())
+ })
+ .ace()
+ .handle(process.argv.splice(2))
+ .catch((error) => {
+ process.exitCode = 1
+ prettyPrintError(error)
+ })
diff --git a/bin/server.ts b/bin/server.ts
new file mode 100644
index 00000000..fe0fefba
--- /dev/null
+++ b/bin/server.ts
@@ -0,0 +1,45 @@
+/*
+|--------------------------------------------------------------------------
+| HTTP server entrypoint
+|--------------------------------------------------------------------------
+|
+| The "server.ts" file is the entrypoint for starting the AdonisJS HTTP
+| server. Either you can run this file directly or use the "serve"
+| command to run this file and monitor file changes
+|
+*/
+
+import 'reflect-metadata'
+import { Ignitor, prettyPrintError } from '@adonisjs/core'
+
+/**
+ * URL to the application root. AdonisJS need it to resolve
+ * paths to file and directories for scaffolding commands
+ */
+const APP_ROOT = new URL('../', import.meta.url)
+
+/**
+ * The importer is used to import files in context of the
+ * application.
+ */
+const IMPORTER = (filePath: string) => {
+ if (filePath.startsWith('./') || filePath.startsWith('../')) {
+ return import(new URL(filePath, APP_ROOT).href)
+ }
+ return import(filePath)
+}
+
+new Ignitor(APP_ROOT, { importer: IMPORTER })
+ .tap((app) => {
+ app.booting(async () => {
+ await import('#start/env')
+ })
+ app.listen('SIGTERM', () => app.terminate())
+ app.listenIf(app.managedByPm2, 'SIGINT', () => app.terminate())
+ })
+ .httpServer()
+ .start()
+ .catch((error) => {
+ process.exitCode = 1
+ prettyPrintError(error)
+ })
diff --git a/bin/test.ts b/bin/test.ts
new file mode 100644
index 00000000..fe7e950d
--- /dev/null
+++ b/bin/test.ts
@@ -0,0 +1,60 @@
+/*
+|--------------------------------------------------------------------------
+| Test runner entrypoint
+|--------------------------------------------------------------------------
+|
+| The "test.ts" file is the entrypoint for running tests using Japa.
+|
+| Either you can run this file directly or use the "test"
+| command to run this file and monitor file changes.
+|
+*/
+
+process.env.NODE_ENV = 'test'
+
+import 'reflect-metadata'
+import { Ignitor, prettyPrintError } from '@adonisjs/core'
+import { configure, processCLIArgs, run } from '@japa/runner'
+
+/**
+ * URL to the application root. AdonisJS need it to resolve
+ * paths to file and directories for scaffolding commands
+ */
+const APP_ROOT = new URL('../', import.meta.url)
+
+/**
+ * The importer is used to import files in context of the
+ * application.
+ */
+const IMPORTER = (filePath: string) => {
+ if (filePath.startsWith('./') || filePath.startsWith('../')) {
+ return import(new URL(filePath, APP_ROOT).href)
+ }
+ return import(filePath)
+}
+
+new Ignitor(APP_ROOT, { importer: IMPORTER })
+ .tap((app) => {
+ app.booting(async () => {
+ await import('#start/env')
+ })
+ app.listen('SIGTERM', () => app.terminate())
+ app.listenIf(app.managedByPm2, 'SIGINT', () => app.terminate())
+ })
+ .testRunner()
+ .configure(async (app) => {
+ const { runnerHooks, ...config } = await import('../tests/bootstrap.js')
+
+ processCLIArgs(process.argv.splice(2))
+ configure({
+ ...app.rcFile.tests,
+ ...config,
+ setup: runnerHooks.setup,
+ teardown: [...runnerHooks.teardown, () => app.terminate()],
+ })
+ })
+ .run(() => run())
+ .catch((error) => {
+ process.exitCode = 1
+ prettyPrintError(error)
+ })
diff --git a/commands/index.ts b/commands/index.ts
deleted file mode 100644
index d2ad5fbe..00000000
--- a/commands/index.ts
+++ /dev/null
@@ -1,21 +0,0 @@
-import { listDirectoryFiles } from '@adonisjs/core/build/standalone';
-import Application from '@ioc:Adonis/Core/Application';
-
-/*
-|--------------------------------------------------------------------------
-| Exporting an array of commands
-|--------------------------------------------------------------------------
-|
-| Instead of manually exporting each file from this directory, we use the
-| helper `listDirectoryFiles` to recursively collect and export an array
-| of filenames.
-|
-| Couple of things to note:
-|
-| 1. The file path must be relative from the project root and not this directory.
-| 2. We must ignore this file to avoid getting into an infinite loop
-|
-*/
-export default listDirectoryFiles(__dirname, Application.appRoot, [
- './commands/index',
-]);
diff --git a/config/app.ts b/config/app.ts
index fb3c0be9..135f20f8 100644
--- a/config/app.ts
+++ b/config/app.ts
@@ -5,12 +5,12 @@
* file.
*/
-import proxyAddr from 'proxy-addr';
-import Env from '@ioc:Adonis/Core/Env';
-import { ServerConfig } from '@ioc:Adonis/Core/Server';
-import { LoggerConfig } from '@ioc:Adonis/Core/Logger';
-import { ProfilerConfig } from '@ioc:Adonis/Core/Profiler';
-import { ValidatorConfig } from '@ioc:Adonis/Core/Validator';
+import proxyAddr from 'proxy-addr'
+import env from '#start/env'
+import { ProfilerConfig } from '@ioc:Adonis/Core/Profiler'
+import { LoggerConfig } from '@adonisjs/core/types/logger'
+import { ValidatorConfig } from '@adonisjs/validator/types'
+import { defineConfig } from '@adonisjs/core/http'
/*
|--------------------------------------------------------------------------
@@ -25,18 +25,17 @@ import { ValidatorConfig } from '@ioc:Adonis/Core/Validator';
| be decrypted.
|
*/
-export const appKey: string = Env.get('APP_KEY');
+export const appKey: string = env.get('APP_KEY')
-export const url: string = Env.get('APP_URL');
+export const url: string = env.get('APP_URL')
// TODO: this is parsed as string to be coherent with the previous version of the code we add (before migrating to AdonisJS 5)
-export const isRegistrationEnabled: string = Env.get('IS_REGISTRATION_ENABLED');
-export const connectWithFranz: string = Env.get('CONNECT_WITH_FRANZ');
-export const isCreationEnabled: string = Env.get('IS_CREATION_ENABLED');
+export const isRegistrationEnabled: string = env.get('IS_REGISTRATION_ENABLED')
+export const connectWithFranz: string = env.get('CONNECT_WITH_FRANZ')
+export const isCreationEnabled: string = env.get('IS_CREATION_ENABLED')
export const jwtUsePEM: boolean =
- Env.get('JWT_USE_PEM', false) ||
- (Env.get('JWT_PUBLIC_KEY', '') !== '' &&
- Env.get('JWT_PRIVATE_KEY', '') !== '');
+ env.get('JWT_USE_PEM', false) ||
+ (env.get('JWT_PUBLIC_KEY', '') !== '' && env.get('JWT_PRIVATE_KEY', '') !== '')
/*
|--------------------------------------------------------------------------
| Http server configuration
@@ -46,7 +45,7 @@ export const jwtUsePEM: boolean =
| the config properties to make keep server secure.
|
*/
-export const http: ServerConfig = {
+export const http = defineConfig({
/*
|--------------------------------------------------------------------------
| Allow method spoofing
@@ -137,7 +136,7 @@ export const http: ServerConfig = {
|
*/
forceContentNegotiationTo: 'application/json',
-};
+})
/*
|--------------------------------------------------------------------------
@@ -157,7 +156,7 @@ export const logger: LoggerConfig = {
| reading the `name` property from the `package.json` file.
|
*/
- name: Env.get('APP_NAME', 'Ferdium-server'),
+ name: env.get('APP_NAME', 'Ferdium-server'),
/*
|--------------------------------------------------------------------------
@@ -179,7 +178,7 @@ export const logger: LoggerConfig = {
| at deployment level and not code level.
|
*/
- level: Env.get('LOG_LEVEL', 'info'),
+ level: env.get('LOG_LEVEL', 'info'),
/*
|--------------------------------------------------------------------------
@@ -190,8 +189,8 @@ export const logger: LoggerConfig = {
| can have huge impact on performance.
|
*/
- prettyPrint: Env.get('NODE_ENV') === 'development',
-};
+ prettyPrint: env.get('NODE_ENV') === 'development',
+}
/*
|--------------------------------------------------------------------------
@@ -230,7 +229,7 @@ export const profiler: ProfilerConfig = {
|
*/
whitelist: [],
-};
+}
/*
|--------------------------------------------------------------------------
@@ -241,4 +240,4 @@ export const profiler: ProfilerConfig = {
| to the default config https://git.io/JT0WE
|
*/
-export const validator: ValidatorConfig = {};
+export const validator: ValidatorConfig = {}
diff --git a/config/auth.ts b/config/auth.ts
index 28a9b8cf..f43bbdb3 100644
--- a/config/auth.ts
+++ b/config/auth.ts
@@ -5,9 +5,9 @@
* file.
*/
-import { AuthConfig } from '@ioc:Adonis/Addons/Auth';
-import Env from '@ioc:Adonis/Core/Env';
-import { appKey, jwtUsePEM } from './app';
+import { AuthConfig } from '@ioc:Adonis/Addons/Auth'
+import env from '#start/env'
+import { appKey, jwtUsePEM } from './app.js'
/*
|--------------------------------------------------------------------------
@@ -233,12 +233,8 @@ const authConfig: AuthConfig = {
driver: 'jwt',
secret: jwtUsePEM ? undefined : appKey,
algorithmJwt: jwtUsePEM ? undefined : 'HS256',
- publicKey: jwtUsePEM
- ? Env.get('JWT_PUBLIC_KEY', '').replaceAll('\\n', '\n')
- : undefined,
- privateKey: jwtUsePEM
- ? Env.get('JWT_PRIVATE_KEY', '').replaceAll('\\n', '\n')
- : undefined,
+ publicKey: jwtUsePEM ? env.get('JWT_PUBLIC_KEY', '').replaceAll('\\n', '\n') : undefined,
+ privateKey: jwtUsePEM ? env.get('JWT_PRIVATE_KEY', '').replaceAll('\\n', '\n') : undefined,
persistJwt: true,
// TODO: We should improve the following implementation as this is a security concern.
// The following ts-expect-error is to set exp to undefined (JWT with no expiration)
@@ -258,6 +254,6 @@ const authConfig: AuthConfig = {
},
},
},
-};
+}
-export default authConfig;
+export default authConfig
diff --git a/config/bodyparser.ts b/config/bodyparser.ts
index b5adcdaa..b3a027b5 100644
--- a/config/bodyparser.ts
+++ b/config/bodyparser.ts
@@ -5,9 +5,10 @@
* file.
*/
-import { BodyParserConfig } from '@ioc:Adonis/Core/BodyParser';
+import { BodyParserConfig } from '@adonisjs/core/bodyparser'
+import { defineConfig } from '@adonisjs/core/bodyparser'
-const bodyParserConfig: BodyParserConfig = {
+const bodyParserConfig = defineConfig({
/*
|--------------------------------------------------------------------------
| White listed methods
@@ -200,6 +201,6 @@ const bodyParserConfig: BodyParserConfig = {
*/
types: ['multipart/form-data'],
},
-};
+})
-export default bodyParserConfig;
+export default bodyParserConfig
diff --git a/config/cors.ts b/config/cors.ts
index dc0e3f64..911326fb 100644
--- a/config/cors.ts
+++ b/config/cors.ts
@@ -1,13 +1,6 @@
-/**
- * Config source: https://git.io/JfefC
- *
- * Feel free to let us know via PR, if you find something broken in this config
- * file.
- */
+import { defineConfig } from '@adonisjs/cors'
-import { CorsConfig } from '@ioc:Adonis/Core/Cors';
-
-const corsConfig: CorsConfig = {
+const corsConfig = defineConfig({
/*
|--------------------------------------------------------------------------
| Enabled
@@ -129,6 +122,6 @@ const corsConfig: CorsConfig = {
|
*/
maxAge: 90,
-};
+})
-export default corsConfig;
+export default corsConfig
diff --git a/config/dashboard.ts b/config/dashboard.ts
index 18feb145..9e920243 100644
--- a/config/dashboard.ts
+++ b/config/dashboard.ts
@@ -1,5 +1,5 @@
-import Env from '@ioc:Adonis/Core/Env';
+import env from '#start/env'
-export const enabled: boolean = Env.get('IS_DASHBOARD_ENABLED') !== 'false';
+export const enabled: boolean = env.get('IS_DASHBOARD_ENABLED') !== 'false'
-export const mailFrom: string = Env.get('MAIL_SENDER');
+export const mailFrom: string = env.get('MAIL_SENDER')
diff --git a/config/database.ts b/config/database.ts
index 65a94558..d2db1c24 100644
--- a/config/database.ts
+++ b/config/database.ts
@@ -1,4 +1,3 @@
-/* eslint-disable @typescript-eslint/indent */
/**
* Config source: https://git.io/JesV9
*
@@ -6,11 +5,12 @@
* file.
*/
-import path from 'node:path';
-import Env from '@ioc:Adonis/Core/Env';
-import { DatabaseConfig } from '@ioc:Adonis/Lucid/Database';
+import path from 'node:path'
+import env from '#start/env'
+import { DatabaseConfig } from '@adonisjs/lucid/database'
+import { defineConfig } from '@adonisjs/lucid'
-const databaseConfig: DatabaseConfig = {
+const databaseConfig = defineConfig({
/*
|--------------------------------------------------------------------------
| Connection
@@ -21,7 +21,7 @@ const databaseConfig: DatabaseConfig = {
| file.
|
*/
- connection: Env.get('DB_CONNECTION', 'sqlite'),
+ connection: env.get('DB_CONNECTION', 'sqlite'),
connections: {
/*
@@ -39,13 +39,13 @@ const databaseConfig: DatabaseConfig = {
client: 'sqlite',
connection: {
filename: path.join(
- Env.get('DATA_DIR', 'data'),
- `${Env.get('DB_DATABASE', 'ferdium')}.sqlite`,
+ env.get('DATA_DIR', 'data'),
+ `${env.get('DB_DATABASE', 'ferdium')}.sqlite`
),
},
pool: {
afterCreate: (conn, cb) => {
- conn.run('PRAGMA foreign_keys=true', cb);
+ conn.run('PRAGMA foreign_keys=true', cb)
},
},
migrations: {
@@ -53,7 +53,7 @@ const databaseConfig: DatabaseConfig = {
},
useNullAsDefault: true,
healthCheck: false,
- debug: Env.get('DB_DEBUG', false),
+ debug: env.get('DB_DEBUG', false),
},
/*
@@ -70,17 +70,17 @@ const databaseConfig: DatabaseConfig = {
mysql: {
client: 'mysql',
connection: {
- host: Env.get('DB_HOST', 'localhost'),
- port: Env.get('DB_PORT', ''),
- user: Env.get('DB_USER', 'root'),
- password: Env.get('DB_PASSWORD', ''),
- database: Env.get('DB_DATABASE', 'ferdium'),
+ host: env.get('DB_HOST', 'localhost'),
+ port: env.get('DB_PORT', ''),
+ user: env.get('DB_USER', 'root'),
+ password: env.get('DB_PASSWORD', ''),
+ database: env.get('DB_DATABASE', 'ferdium'),
},
migrations: {
naturalSort: true,
},
healthCheck: false,
- debug: Env.get('DB_DEBUG', false),
+ debug: env.get('DB_DEBUG', false),
},
/*
@@ -97,25 +97,25 @@ const databaseConfig: DatabaseConfig = {
pg: {
client: 'pg',
connection: {
- host: Env.get('DB_HOST', 'localhost'),
- port: Env.get('DB_PORT', ''),
- user: Env.get('DB_USER', 'root'),
- password: Env.get('DB_PASSWORD', ''),
- database: Env.get('DB_DATABASE', 'ferdium'),
- ssl: Env.get('DB_CA_CERT')
+ host: env.get('DB_HOST', 'localhost'),
+ port: env.get('DB_PORT', ''),
+ user: env.get('DB_USER', 'root'),
+ password: env.get('DB_PASSWORD', ''),
+ database: env.get('DB_DATABASE', 'ferdium'),
+ ssl: env.get('DB_CA_CERT')
? {
rejectUnauthorized: false,
- ca: Env.get('DB_CA_CERT'),
+ ca: env.get('DB_CA_CERT'),
}
- : JSON.parse(Env.get('DB_SSL', 'true')),
+ : JSON.parse(env.get('DB_SSL', 'true')),
},
migrations: {
naturalSort: true,
},
healthCheck: false,
- debug: Env.get('DB_DEBUG', false),
+ debug: env.get('DB_DEBUG', false),
},
},
-};
+})
-export default databaseConfig;
+export default databaseConfig
diff --git a/config/drive.ts b/config/drive.ts
index b6950ebd..f099303e 100644
--- a/config/drive.ts
+++ b/config/drive.ts
@@ -5,9 +5,9 @@
* file.
*/
-import Env from '@ioc:Adonis/Core/Env';
-import { driveConfig } from '@adonisjs/core/build/config';
-import Application from '@ioc:Adonis/Core/Application';
+import env from '#start/env'
+import { driveConfig } from '@adonisjs/core/build/config'
+import { app } from '@adonisjs/core/services/app'
/*
|--------------------------------------------------------------------------
@@ -28,7 +28,7 @@ export default driveConfig({
| the `DRIVE_DISK` environment variable.
|
*/
- disk: Env.get('DRIVE_DISK', 'local'),
+ disk: env.get('DRIVE_DISK', 'local'),
disks: {
/*
@@ -53,7 +53,7 @@ export default driveConfig({
| files.
|
*/
- root: Application.tmpPath('uploads'),
+ root: app.tmpPath('uploads'),
/*
|--------------------------------------------------------------------------
@@ -146,4 +146,4 @@ export default driveConfig({
// usingUniformAcl: false,
// },
},
-});
+})
diff --git a/config/hash.ts b/config/hash.ts
index abe7dd08..22e38bd9 100644
--- a/config/hash.ts
+++ b/config/hash.ts
@@ -5,8 +5,9 @@
* file.
*/
-import Env from '@ioc:Adonis/Core/Env';
-import { hashConfig } from '@adonisjs/core/build/config';
+import env from '#start/env'
+import { defineConfig } from '@adonisjs/core/hash'
+import { drivers } from '@adonisjs/core/hash'
/*
|--------------------------------------------------------------------------
@@ -17,7 +18,7 @@ import { hashConfig } from '@adonisjs/core/build/config';
| defined inside `contracts` directory.
|
*/
-export default hashConfig({
+export default defineConfig({
/*
|--------------------------------------------------------------------------
| Default hasher
@@ -28,18 +29,17 @@ export default hashConfig({
|
| Default is set to bcrypt to prevent breaking-changes.
*/
- default: Env.get('HASH_DRIVER', 'scrypt'),
+ default: env.get('HASH_DRIVER', 'scrypt'),
list: {
- scrypt: {
- driver: 'scrypt',
+ scrypt: drivers.scrypt({
cost: 16_384,
blockSize: 8,
parallelization: 1,
saltSize: 16,
keyLength: 64,
maxMemory: 32 * 1024 * 1024,
- },
+ }),
/*
|--------------------------------------------------------------------------
| Argon
@@ -53,14 +53,13 @@ export default hashConfig({
| npm install phc-argon2
|
*/
- argon: {
- driver: 'argon2',
+ argon: drivers.argon2({
variant: 'id',
iterations: 3,
memory: 4096,
parallelism: 1,
saltSize: 16,
- },
+ }),
/*
|--------------------------------------------------------------------------
@@ -75,14 +74,17 @@ export default hashConfig({
| npm install phc-bcrypt
|
*/
- bcrypt: {
- driver: 'bcrypt',
+ bcrypt: drivers.bcrypt({
rounds: 10,
- },
+ }),
legacy: {
// @ts-expect-error
driver: 'legacy',
},
},
-});
+})
+
+declare module '@adonisjs/core/types' {
+ export interface HashersList extends InferHashers {}
+}
diff --git a/config/mail.ts b/config/mail.ts
index 3f688ce4..7d650d50 100644
--- a/config/mail.ts
+++ b/config/mail.ts
@@ -5,10 +5,10 @@
* file.
*/
-import Env from '@ioc:Adonis/Core/Env';
-import { mailConfig } from '@adonisjs/mail/build/config';
+import env from '#start/env'
+import { defineConfig } from '@adonisjs/mail'
-export default mailConfig({
+export default defineConfig({
/*
|--------------------------------------------------------------------------
| Default mailer
@@ -18,7 +18,7 @@ export default mailConfig({
| a mailer
|
*/
- mailer: Env.get('MAIL_CONNECTION', 'smtp'),
+ mailer: env.get('MAIL_CONNECTION', 'smtp'),
/*
|--------------------------------------------------------------------------
@@ -42,22 +42,21 @@ export default mailConfig({
| Uses SMTP protocol for sending email
|
*/
- smtp: {
- driver: 'smtp',
- name: Env.get('APP_URL'),
- port: Env.get('SMTP_PORT', '2525'),
- host: Env.get('SMTP_HOST', 'localhost'),
- secure: JSON.parse(Env.get('MAIL_SSL', 'false')),
- requireTLS: JSON.parse(Env.get('MAIL_REQUIRE_TLS', 'false')),
+ smtp: drivers.smtp({
+ name: env.get('APP_URL'),
+ port: env.get('SMTP_PORT', '2525'),
+ host: env.get('SMTP_HOST', 'localhost'),
+ secure: JSON.parse(env.get('MAIL_SSL', 'false')),
+ requireTLS: JSON.parse(env.get('MAIL_REQUIRE_TLS', 'false')),
auth: {
- user: Env.get('MAIL_USERNAME'),
- pass: Env.get('MAIL_PASSWORD'),
+ user: env.get('MAIL_USERNAME'),
+ pass: env.get('MAIL_PASSWORD'),
type: 'login',
},
maxConnections: 5,
maxMessages: 100,
rateLimit: 10,
- },
+ }),
/*
|--------------------------------------------------------------------------
@@ -72,47 +71,48 @@ export default mailConfig({
| ```
|
*/
- ses: {
- driver: 'ses',
+ ses: drivers.ses({
apiVersion: '2010-12-01',
- key: Env.get('SES_ACCESS_KEY'),
- secret: Env.get('SES_ACCESS_SECRET'),
- region: Env.get('SES_REGION'),
+ key: env.get('SES_ACCESS_KEY'),
+ secret: env.get('SES_ACCESS_SECRET'),
+ region: env.get('SES_REGION'),
sslEnabled: true,
sendingRate: 10,
maxConnections: 5,
- },
+ }),
/*
|--------------------------------------------------------------------------
| Mailgun
|--------------------------------------------------------------------------
|
- | Uses Mailgun service for sending emails.
+ | Uses Mailgun service for sending emails.
|
| If you are using an EU domain. Ensure to change the baseUrl to hit the
| europe endpoint (https://api.eu.mailgun.net/v3).
|
*/
- mailgun: {
- driver: 'mailgun',
+ mailgun: drivers.mailgun({
baseUrl: 'https://api.mailgun.net/v3',
- key: Env.get('MAILGUN_API_KEY'),
- domain: Env.get('MAILGUN_DOMAIN'),
- },
+ key: env.get('MAILGUN_API_KEY'),
+ domain: env.get('MAILGUN_DOMAIN'),
+ }),
/*
|--------------------------------------------------------------------------
| SparkPost
|--------------------------------------------------------------------------
|
- | Uses Sparkpost service for sending emails.
+ | Uses Sparkpost service for sending emails.
|
*/
- sparkpost: {
- driver: 'sparkpost',
+ sparkpost: drivers.sparkpost({
baseUrl: 'https://api.sparkpost.com/api/v1',
- key: Env.get('SPARKPOST_API_KEY'),
- },
+ key: env.get('SPARKPOST_API_KEY'),
+ }),
},
-});
+})
+
+declare module '@adonisjs/mail/types' {
+ export interface MailersList extends InferMailers {}
+}
diff --git a/config/session.ts b/config/session.ts
index fbf8c7cb..299eec31 100644
--- a/config/session.ts
+++ b/config/session.ts
@@ -5,11 +5,11 @@
* file.
*/
-import Env from '@ioc:Adonis/Core/Env';
-import Application from '@ioc:Adonis/Core/Application';
-import { sessionConfig } from '@adonisjs/session/build/config';
+import env from '#start/env'
+import { app } from '@adonisjs/core/services/app'
+import { defineConfig } from '@adonisjs/session'
-export default sessionConfig({
+export default defineConfig({
/*
|--------------------------------------------------------------------------
| Enable/Disable sessions
@@ -36,7 +36,7 @@ export default sessionConfig({
| Note: Switching drivers will make existing sessions invalid.
|
*/
- driver: Env.get('SESSION_DRIVER', 'cookie'),
+ driver: env.get('SESSION_DRIVER', 'cookie'),
/*
|--------------------------------------------------------------------------
@@ -100,7 +100,7 @@ export default sessionConfig({
|
*/
file: {
- location: Application.tmpPath('sessions'),
+ location: app.tmpPath('sessions'),
},
/*
@@ -113,4 +113,4 @@ export default sessionConfig({
|
*/
redisConnection: 'local',
-});
+})
diff --git a/config/shield.ts b/config/shield.ts
index 3566e1c2..c88df258 100644
--- a/config/shield.ts
+++ b/config/shield.ts
@@ -1,243 +1,138 @@
-/**
- * Config source: https://git.io/Jvwvt
- *
- * Feel free to let us know via PR, if you find something broken in this config
- * file.
- */
+import env from '#start/env'
+import { defineConfig } from '@adonisjs/shield'
-import Env from '@ioc:Adonis/Core/Env';
-import { ShieldConfig } from '@ioc:Adonis/Addons/Shield';
+export default defineConfig({
+ csp: {
+ /*
+ |--------------------------------------------------------------------------
+ | Enable/disable CSP
+ |--------------------------------------------------------------------------
+ |
+ | The CSP rules are disabled by default for seamless onboarding.
+ |
+ */
+ enabled: false,
-/*
-|--------------------------------------------------------------------------
-| Content Security Policy
-|--------------------------------------------------------------------------
-|
-| Content security policy filters out the origins not allowed to execute
-| and load resources like scripts, styles and fonts. There are wide
-| variety of options to choose from.
-*/
-export const csp: ShieldConfig['csp'] = {
- /*
- |--------------------------------------------------------------------------
- | Enable/disable CSP
- |--------------------------------------------------------------------------
- |
- | The CSP rules are disabled by default for seamless onboarding.
- |
- */
- enabled: false,
+ /*
+ |--------------------------------------------------------------------------
+ | Directives
+ |--------------------------------------------------------------------------
+ |
+ | All directives are defined in camelCase and here is the list of
+ | available directives and their possible values.
+ |
+ | https://content-security-policy.com
+ |
+ | @example
+ | directives: {
+ | defaultSrc: ["'self'", '@nonce', 'cdnjs.cloudflare.com']
+ | }
+ |
+ */
+ directives: {},
- /*
- |--------------------------------------------------------------------------
- | Directives
- |--------------------------------------------------------------------------
- |
- | All directives are defined in camelCase and here is the list of
- | available directives and their possible values.
- |
- | https://content-security-policy.com
- |
- | @example
- | directives: {
- | defaultSrc: ["'self'", '@nonce', 'cdnjs.cloudflare.com']
- | }
- |
- */
- directives: {},
-
- /*
- |--------------------------------------------------------------------------
- | Report only
- |--------------------------------------------------------------------------
- |
- | Setting `reportOnly=true` will not block the scripts from running and
- | instead report them to a URL.
- |
- */
- reportOnly: false,
-};
-
-/*
-|--------------------------------------------------------------------------
-| CSRF Protection
-|--------------------------------------------------------------------------
-|
-| CSRF Protection adds another layer of security by making sure, actionable
-| routes does have a valid token to execute an action.
-|
-*/
-export const csrf: ShieldConfig['csrf'] = {
- /*
- |--------------------------------------------------------------------------
- | Enable/Disable CSRF
- |--------------------------------------------------------------------------
- */
- enabled: Env.get('NODE_ENV') === 'production',
-
- /*
- |--------------------------------------------------------------------------
- | Routes to Ignore
- |--------------------------------------------------------------------------
- |
- | Define an array of route patterns that you want to ignore from CSRF
- | validation. Make sure the route patterns are started with a leading
- | slash. Example:
- |
- | `/foo/bar`
- |
- | Also you can define a function that is evaluated on every HTTP Request.
- | ```
- | exceptRoutes: ({ request }) => request.url().includes('/api')
- | ```
- |
- */
- exceptRoutes: ctx => {
- // ignore all routes starting with /v1/ (api)
- return (
- ctx.request.url().includes('/v1/') ||
- ctx.request.url().includes('/import')
- );
+ /*
+ |--------------------------------------------------------------------------
+ | Report only
+ |--------------------------------------------------------------------------
+ |
+ | Setting `reportOnly=true` will not block the scripts from running and
+ | instead report them to a URL.
+ |
+ */
+ reportOnly: false,
},
+ csrf: {
+ /*
+ |--------------------------------------------------------------------------
+ | Enable/Disable CSRF
+ |--------------------------------------------------------------------------
+ */
+ enabled: env.get('NODE_ENV') === 'production',
- /*
- |--------------------------------------------------------------------------
- | Enable Sharing Token Via Cookie
- |--------------------------------------------------------------------------
- |
- | When the following flag is enabled, AdonisJS will drop `XSRF-TOKEN`
- | cookie that frontend frameworks can read and return back as a
- | `X-XSRF-TOKEN` header.
- |
- | The cookie has `httpOnly` flag set to false, so it is little insecure and
- | can be turned off when you are not using a frontend framework making
- | AJAX requests.
- |
- */
- enableXsrfCookie: true,
-
- /*
- |--------------------------------------------------------------------------
- | Methods to Validate
- |--------------------------------------------------------------------------
- |
- | Define an array of HTTP methods to be validated for a valid CSRF token.
- |
- */
- methods: ['POST', 'PUT', 'PATCH', 'DELETE'],
-};
-
-/*
-|--------------------------------------------------------------------------
-| DNS Prefetching
-|--------------------------------------------------------------------------
-|
-| DNS prefetching allows browsers to proactively perform domain name
-| resolution in background.
-|
-| Learn more at https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-DNS-Prefetch-Control
-|
-*/
-export const dnsPrefetch: ShieldConfig['dnsPrefetch'] = {
- /*
- |--------------------------------------------------------------------------
- | Enable/disable this feature
- |--------------------------------------------------------------------------
- */
- enabled: true,
+ /*
+ |--------------------------------------------------------------------------
+ | Routes to Ignore
+ |--------------------------------------------------------------------------
+ |
+ | Define an array of route patterns that you want to ignore from CSRF
+ | validation. Make sure the route patterns are started with a leading
+ | slash. Example:
+ |
+ | `/foo/bar`
+ |
+ | Also you can define a function that is evaluated on every HTTP Request.
+ | ```
+ | exceptRoutes: ({ request }) => request.url().includes('/api')
+ | ```
+ |
+ */
+ exceptRoutes: (ctx) => {
+ // ignore all routes starting with /v1/ (api)
+ return ctx.request.url().includes('/v1/') || ctx.request.url().includes('/import')
+ },
- /*
- |--------------------------------------------------------------------------
- | Allow or Dis-Allow Explicitly
- |--------------------------------------------------------------------------
- |
- | The `enabled` boolean does not set `X-DNS-Prefetch-Control` header. However
- | the `allow` boolean controls the value of `X-DNS-Prefetch-Control` header.
- |
- | - When `allow = true`, then `X-DNS-Prefetch-Control = 'on'`
- | - When `allow = false`, then `X-DNS-Prefetch-Control = 'off'`
- |
- */
- allow: true,
-};
+ /*
+ |--------------------------------------------------------------------------
+ | Enable Sharing Token Via Cookie
+ |--------------------------------------------------------------------------
+ |
+ | When the following flag is enabled, AdonisJS will drop `XSRF-TOKEN`
+ | cookie that frontend frameworks can read and return back as a
+ | `X-XSRF-TOKEN` header.
+ |
+ | The cookie has `httpOnly` flag set to false, so it is little insecure and
+ | can be turned off when you are not using a frontend framework making
+ | AJAX requests.
+ |
+ */
+ enableXsrfCookie: true,
-/*
-|--------------------------------------------------------------------------
-| Iframe Options
-|--------------------------------------------------------------------------
-|
-| xFrame defines whether or not your website can be embedded inside an
-| iframe. Choose from one of the following options.
-|
-| - DENY
-| - SAMEORIGIN
-| - ALLOW-FROM http://example.com
-|
-| Learn more at https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Frame-Options
-*/
-export const xFrame: ShieldConfig['xFrame'] = {
- enabled: true,
- action: 'DENY',
-};
-
-/*
-|--------------------------------------------------------------------------
-| Http Strict Transport Security
-|--------------------------------------------------------------------------
-|
-| A security to ensure that a browser always makes a connection over
-| HTTPS.
-|
-| Learn more at https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Strict-Transport-Security
-|
-*/
-export const hsts: ShieldConfig['hsts'] = {
- enabled: true,
- /*
- |--------------------------------------------------------------------------
- | Max Age
- |--------------------------------------------------------------------------
- |
- | Control, how long the browser should remember that a site is only to be
- | accessed using HTTPS.
- |
- */
- maxAge: '180 days',
-
- /*
- |--------------------------------------------------------------------------
- | Include Subdomains
- |--------------------------------------------------------------------------
- |
- | Apply rules on the subdomains as well.
- |
- */
- includeSubDomains: true,
+ /*
+ |--------------------------------------------------------------------------
+ | Methods to Validate
+ |--------------------------------------------------------------------------
+ |
+ | Define an array of HTTP methods to be validated for a valid CSRF token.
+ |
+ */
+ methods: ['POST', 'PUT', 'PATCH', 'DELETE'],
+ },
+ hsts: {
+ enabled: true,
+ /*
+ |--------------------------------------------------------------------------
+ | Max Age
+ |--------------------------------------------------------------------------
+ |
+ | Control, how long the browser should remember that a site is only to be
+ | accessed using HTTPS.
+ |
+ */
+ maxAge: '180 days',
- /*
- |--------------------------------------------------------------------------
- | Preloading
- |--------------------------------------------------------------------------
- |
- | Google maintains a service to register your domain and it will preload
- | the HSTS policy. Learn more https://hstspreload.org/
- |
- */
- preload: false,
-};
+ /*
+ |--------------------------------------------------------------------------
+ | Include Subdomains
+ |--------------------------------------------------------------------------
+ |
+ | Apply rules on the subdomains as well.
+ |
+ */
+ includeSubDomains: true,
-/*
-|--------------------------------------------------------------------------
-| No Sniff
-|--------------------------------------------------------------------------
-|
-| Browsers have a habit of sniffing content-type of a response. Which means
-| files with .txt extension containing Javascript code will be executed as
-| Javascript. You can disable this behavior by setting nosniff to false.
-|
-| Learn more at https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Content-Type-Options
-|
-*/
-export const contentTypeSniffing: ShieldConfig['contentTypeSniffing'] = {
- enabled: true,
-};
+ /*
+ |--------------------------------------------------------------------------
+ | Preloading
+ |--------------------------------------------------------------------------
+ |
+ | Google maintains a service to register your domain and it will preload
+ | the HSTS policy. Learn more https://hstspreload.org/
+ |
+ */
+ preload: false,
+ },
+ contentTypeSniffing: {
+ enabled: true,
+ },
+})
diff --git a/config/static.ts b/config/static.ts
index 1f7c88fe..1d0d0c33 100644
--- a/config/static.ts
+++ b/config/static.ts
@@ -1,10 +1,10 @@
-import { AssetsConfig } from '@ioc:Adonis/Core/Static';
+import { defineConfig } from '@adonisjs/static'
-const staticConfig: AssetsConfig = {
+const staticConfig = defineConfig({
enabled: true,
dotFiles: 'ignore',
etag: true,
lastModified: true,
-};
+})
-export default staticConfig;
+export default staticConfig
diff --git a/contracts/env.ts b/contracts/env.ts
deleted file mode 100644
index e1fd92ef..00000000
--- a/contracts/env.ts
+++ /dev/null
@@ -1,23 +0,0 @@
-/**
- * Contract source: https://git.io/JTm6U
- *
- * Feel free to let us know via PR, if you find something broken in this contract
- * file.
- */
-
-declare module '@ioc:Adonis/Core/Env' {
- /*
- |--------------------------------------------------------------------------
- | Getting types for validated environment variables
- |--------------------------------------------------------------------------
- |
- | The `default` export from the "../env.ts" file exports types for the
- | validated environment variables. Here we merge them with the `EnvTypes`
- | interface so that you can enjoy intellisense when using the "Env"
- | module.
- |
- */
-
- type CustomTypes = typeof import('../env').default;
- interface EnvTypes extends CustomTypes {}
-}
diff --git a/contracts/hash.ts b/contracts/hash.ts
deleted file mode 100644
index af336c7e..00000000
--- a/contracts/hash.ts
+++ /dev/null
@@ -1,26 +0,0 @@
-/**
- * Contract source: https://git.io/Jfefs
- *
- * Feel free to let us know via PR, if you find something broken in this contract
- * file.
- */
-
-import { InferListFromConfig } from '@adonisjs/core/build/config';
-import hashConfig from '../config/hash';
-
-declare module '@ioc:Adonis/Core/Hash' {
- interface HashersList extends InferListFromConfig {
- bcrypt: {
- config: BcryptConfig;
- implementation: BcryptContract;
- };
- argon: {
- config: ArgonConfig;
- implementation: ArgonContract;
- };
- legacy: {
- config: BcryptConfig;
- implementation: HashDriverContract;
- };
- }
-}
diff --git a/contracts/mail.ts b/contracts/mail.ts
deleted file mode 100644
index 0ea307f7..00000000
--- a/contracts/mail.ts
+++ /dev/null
@@ -1,13 +0,0 @@
-/**
- * Contract source: https://git.io/JvgAT
- *
- * Feel free to let us know via PR, if you find something broken in this contract
- * file.
- */
-
-import { InferMailersFromConfig } from '@adonisjs/mail/build/config';
-import mailConfig from '../config/mail';
-
-declare module '@ioc:Adonis/Addons/Mail' {
- interface MailersList extends InferMailersFromConfig {}
-}
diff --git a/database/factories/ServiceFactory.ts b/database/factories/ServiceFactory.ts
index f675063b..696a0491 100644
--- a/database/factories/ServiceFactory.ts
+++ b/database/factories/ServiceFactory.ts
@@ -1,8 +1,8 @@
-import Service from 'App/Models/Service';
-import Factory from '@ioc:Adonis/Lucid/Factory';
+import Service from '#app/Models/Service'
+import Factory from '@adonisjs/lucid/factories'
export default Factory.define(Service, ({ faker }) => ({
name: faker.company.name(),
recipeId: faker.string.alphanumeric(9),
serviceId: faker.string.alphanumeric(10),
-})).build();
+})).build()
diff --git a/database/factories/TokenFactory.ts b/database/factories/TokenFactory.ts
index 5afc6791..0774dcde 100644
--- a/database/factories/TokenFactory.ts
+++ b/database/factories/TokenFactory.ts
@@ -1,6 +1,6 @@
-import Token from 'App/Models/Token';
-import Factory from '@ioc:Adonis/Lucid/Factory';
-import { DateTime } from 'luxon';
+import Token from '#app/Models/Token'
+import Factory from '@adonisjs/lucid/factories'
+import { DateTime } from 'luxon'
export default Factory.define(Token, async ({ faker }) => ({
token: faker.string.alphanumeric(32),
@@ -9,9 +9,6 @@ export default Factory.define(Token, async ({ faker }) => ({
created_at: DateTime.now(),
updated_at: DateTime.now(),
}))
- .state(
- 'old_token',
- token => (token.updated_at = DateTime.now().minus({ hours: 25 })),
- )
- .state('revoked', token => (token.is_revoked = true))
- .build();
+ .state('old_token', (token) => (token.updated_at = DateTime.now().minus({ hours: 25 })))
+ .state('revoked', (token) => (token.is_revoked = true))
+ .build()
diff --git a/database/factories/UserFactory.ts b/database/factories/UserFactory.ts
index ee6553ed..caa2ea96 100644
--- a/database/factories/UserFactory.ts
+++ b/database/factories/UserFactory.ts
@@ -1,13 +1,10 @@
-import User from 'App/Models/User';
-import Factory from '@ioc:Adonis/Lucid/Factory';
-import WorkspaceFactory from './WorkspaceFactory';
-import ServiceFactory from './ServiceFactory';
-import crypto from 'node:crypto';
+import User from '#app/Models/User'
+import Factory from '@adonisjs/lucid/factories'
+import WorkspaceFactory from './WorkspaceFactory.js'
+import ServiceFactory from './ServiceFactory.js'
+import crypto from 'node:crypto'
-const hashedPassword = crypto
- .createHash('sha256')
- .update('password')
- .digest('base64');
+const hashedPassword = crypto.createHash('sha256').update('password').digest('base64')
export default Factory.define(User, async ({ faker }) => ({
email: faker.internet.email(),
@@ -18,4 +15,4 @@ export default Factory.define(User, async ({ faker }) => ({
}))
.relation('workspaces', () => WorkspaceFactory)
.relation('services', () => ServiceFactory)
- .build();
+ .build()
diff --git a/database/factories/WorkspaceFactory.ts b/database/factories/WorkspaceFactory.ts
index 40cda6be..7d298294 100644
--- a/database/factories/WorkspaceFactory.ts
+++ b/database/factories/WorkspaceFactory.ts
@@ -1,7 +1,7 @@
-import Workspace from 'App/Models/Workspace';
-import Factory from '@ioc:Adonis/Lucid/Factory';
+import Workspace from '#app/Models/Workspace'
+import Factory from '@adonisjs/lucid/factories'
export default Factory.define(Workspace, ({ faker }) => ({
name: faker.internet.userName(),
workspaceId: faker.string.alphanumeric(10),
-})).build();
+})).build()
diff --git a/database/migrations/1503250034279_user.ts b/database/migrations/1503250034279_user.ts
index 262a472b..4a58213e 100644
--- a/database/migrations/1503250034279_user.ts
+++ b/database/migrations/1503250034279_user.ts
@@ -1,20 +1,20 @@
-import BaseSchema from '@ioc:Adonis/Lucid/Schema';
+import { BaseSchema } from '@adonisjs/lucid/schema'
export default class extends BaseSchema {
- protected tableName = 'users';
+ protected tableName = 'users'
public async up(): Promise {
- this.schema.createTable(this.tableName, table => {
- table.increments();
- table.string('username', 80).notNullable();
- table.string('email', 254).notNullable().unique();
- table.string('password', 60).notNullable();
- table.json('settings');
- table.timestamps();
- });
+ this.schema.createTable(this.tableName, (table) => {
+ table.increments()
+ table.string('username', 80).notNullable()
+ table.string('email', 254).notNullable().unique()
+ table.string('password', 60).notNullable()
+ table.json('settings')
+ table.timestamps()
+ })
}
public async down(): Promise {
- this.schema.dropTable(this.tableName);
+ this.schema.dropTable(this.tableName)
}
}
diff --git a/database/migrations/1503250034280_token.ts b/database/migrations/1503250034280_token.ts
index 5a030d02..3830c98b 100644
--- a/database/migrations/1503250034280_token.ts
+++ b/database/migrations/1503250034280_token.ts
@@ -1,20 +1,20 @@
-import BaseSchema from '@ioc:Adonis/Lucid/Schema';
+import { BaseSchema } from '@adonisjs/lucid/schema'
export default class extends BaseSchema {
- protected tableName = 'tokens';
+ protected tableName = 'tokens'
public async up(): Promise {
- this.schema.createTable(this.tableName, table => {
- table.increments();
- table.integer('user_id').unsigned().references('users.id');
- table.string('token', 255).notNullable().unique().index();
- table.string('type', 80).notNullable();
- table.boolean('is_revoked').defaultTo(false);
- table.timestamps();
- });
+ this.schema.createTable(this.tableName, (table) => {
+ table.increments()
+ table.integer('user_id').unsigned().references('users.id')
+ table.string('token', 255).notNullable().unique().index()
+ table.string('type', 80).notNullable()
+ table.boolean('is_revoked').defaultTo(false)
+ table.timestamps()
+ })
}
public async down(): Promise {
- this.schema.dropTable(this.tableName);
+ this.schema.dropTable(this.tableName)
}
}
diff --git a/database/migrations/1566385379883_service_schema.ts b/database/migrations/1566385379883_service_schema.ts
index 9c3e23d5..3c46cabf 100644
--- a/database/migrations/1566385379883_service_schema.ts
+++ b/database/migrations/1566385379883_service_schema.ts
@@ -1,21 +1,21 @@
-import BaseSchema from '@ioc:Adonis/Lucid/Schema';
+import { BaseSchema } from '@adonisjs/lucid/schema'
export default class extends BaseSchema {
- protected tableName = 'services';
+ protected tableName = 'services'
public async up(): Promise {
- this.schema.createTable(this.tableName, table => {
- table.increments();
- table.string('userId', 80).notNullable();
- table.string('serviceId', 80).notNullable();
- table.string('name', 80).notNullable();
- table.string('recipeId', 254).notNullable();
- table.json('settings');
- table.timestamps();
- });
+ this.schema.createTable(this.tableName, (table) => {
+ table.increments()
+ table.string('userId', 80).notNullable()
+ table.string('serviceId', 80).notNullable()
+ table.string('name', 80).notNullable()
+ table.string('recipeId', 254).notNullable()
+ table.json('settings')
+ table.timestamps()
+ })
}
public async down(): Promise {
- this.schema.dropTable(this.tableName);
+ this.schema.dropTable(this.tableName)
}
}
diff --git a/database/migrations/1566554231482_recipe_schema.ts b/database/migrations/1566554231482_recipe_schema.ts
index 3a9784dd..567c89f0 100644
--- a/database/migrations/1566554231482_recipe_schema.ts
+++ b/database/migrations/1566554231482_recipe_schema.ts
@@ -1,19 +1,19 @@
-import BaseSchema from '@ioc:Adonis/Lucid/Schema';
+import { BaseSchema } from '@adonisjs/lucid/schema'
export default class extends BaseSchema {
- protected tableName = 'recipes';
+ protected tableName = 'recipes'
public async up(): Promise {
- this.schema.createTable(this.tableName, table => {
- table.increments();
- table.string('name', 80).notNullable();
- table.string('recipeId', 254).notNullable().unique();
- table.json('data');
- table.timestamps();
- });
+ this.schema.createTable(this.tableName, (table) => {
+ table.increments()
+ table.string('name', 80).notNullable()
+ table.string('recipeId', 254).notNullable().unique()
+ table.json('data')
+ table.timestamps()
+ })
}
public async down(): Promise {
- this.schema.dropTable(this.tableName);
+ this.schema.dropTable(this.tableName)
}
}
diff --git a/database/migrations/1566554359294_workspace_schema.ts b/database/migrations/1566554359294_workspace_schema.ts
index 77e11893..b863200b 100644
--- a/database/migrations/1566554359294_workspace_schema.ts
+++ b/database/migrations/1566554359294_workspace_schema.ts
@@ -1,22 +1,22 @@
-import BaseSchema from '@ioc:Adonis/Lucid/Schema';
+import { BaseSchema } from '@adonisjs/lucid/schema'
export default class extends BaseSchema {
- protected tableName = 'workspaces';
+ protected tableName = 'workspaces'
public async up(): Promise {
- this.schema.createTable(this.tableName, table => {
- table.increments();
- table.string('workspaceId', 80).notNullable().unique();
- table.string('userId', 80).notNullable();
- table.string('name', 80).notNullable();
- table.integer('order');
- table.json('services');
- table.json('data');
- table.timestamps();
- });
+ this.schema.createTable(this.tableName, (table) => {
+ table.increments()
+ table.string('workspaceId', 80).notNullable().unique()
+ table.string('userId', 80).notNullable()
+ table.string('name', 80).notNullable()
+ table.integer('order')
+ table.json('services')
+ table.json('data')
+ table.timestamps()
+ })
}
public async down(): Promise {
- this.schema.dropTable(this.tableName);
+ this.schema.dropTable(this.tableName)
}
}
diff --git a/database/migrations/1612629845398_users_update_schema.ts b/database/migrations/1612629845398_users_update_schema.ts
index 8831ea49..76dc8167 100644
--- a/database/migrations/1612629845398_users_update_schema.ts
+++ b/database/migrations/1612629845398_users_update_schema.ts
@@ -1,15 +1,15 @@
-import BaseSchema from '@ioc:Adonis/Lucid/Schema';
+import { BaseSchema } from '@adonisjs/lucid/schema'
export default class extends BaseSchema {
public async up(): Promise {
- this.schema.alterTable('users', table => {
- table.string('lastname', 80).notNullable().defaultTo('');
- });
+ this.schema.alterTable('users', (table) => {
+ table.string('lastname', 80).notNullable().defaultTo('')
+ })
}
public async down(): Promise {
- this.schema.alterTable('users', table => {
- table.dropColumn('lastname');
- });
+ this.schema.alterTable('users', (table) => {
+ table.dropColumn('lastname')
+ })
}
}
diff --git a/database/migrations/1658076326250_correct_token_relations.ts b/database/migrations/1658076326250_correct_token_relations.ts
index 54866577..1013861e 100644
--- a/database/migrations/1658076326250_correct_token_relations.ts
+++ b/database/migrations/1658076326250_correct_token_relations.ts
@@ -1,18 +1,16 @@
-import BaseSchema from '@ioc:Adonis/Lucid/Schema';
+import { BaseSchema } from '@adonisjs/lucid/schema'
export default class extends BaseSchema {
- protected tableName = 'tokens';
+ protected tableName = 'tokens'
public async up(): Promise {
- await this.db.rawQuery(
- 'DELETE FROM tokens WHERE user_id NOT IN (SELECT id FROM users)',
- );
+ await this.db.rawQuery('DELETE FROM tokens WHERE user_id NOT IN (SELECT id FROM users)')
- this.schema.alterTable(this.tableName, table => {
- table.dropForeign('user_id');
+ this.schema.alterTable(this.tableName, (table) => {
+ table.dropForeign('user_id')
- table.foreign('user_id').references('users.id').onDelete('cascade');
- });
+ table.foreign('user_id').references('users.id').onDelete('cascade')
+ })
}
public async down(): Promise {
diff --git a/database/migrations/1696110557648_jwt_tokens.ts b/database/migrations/1696110557648_jwt_tokens.ts
index 9400de7b..7823283b 100644
--- a/database/migrations/1696110557648_jwt_tokens.ts
+++ b/database/migrations/1696110557648_jwt_tokens.ts
@@ -1,29 +1,23 @@
-import BaseSchema from '@ioc:Adonis/Lucid/Schema';
+import { BaseSchema } from '@adonisjs/lucid/schema'
export default class JwtTokens extends BaseSchema {
- protected tableName = 'jwt_tokens';
+ protected tableName = 'jwt_tokens'
public async up() {
- this.schema.createTable(this.tableName, table => {
- table.increments('id').primary();
- table
- .integer('user_id')
- .unsigned()
- .references('users.id')
- .onDelete('CASCADE');
- table.string('name').notNullable();
- table.string('type').notNullable();
- table.string('token', 64).notNullable().unique();
- table.timestamp('expires_at', { useTz: true }).nullable();
- table.string('refresh_token').notNullable().unique().index();
- table
- .timestamp('refresh_token_expires_at', { useTz: true })
- .notNullable();
- table.timestamp('created_at', { useTz: true }).notNullable();
- });
+ this.schema.createTable(this.tableName, (table) => {
+ table.increments('id').primary()
+ table.integer('user_id').unsigned().references('users.id').onDelete('CASCADE')
+ table.string('name').notNullable()
+ table.string('type').notNullable()
+ table.string('token', 64).notNullable().unique()
+ table.timestamp('expires_at', { useTz: true }).nullable()
+ table.string('refresh_token').notNullable().unique().index()
+ table.timestamp('refresh_token_expires_at', { useTz: true }).notNullable()
+ table.timestamp('created_at', { useTz: true }).notNullable()
+ })
}
public async down() {
- this.schema.dropTable(this.tableName);
+ this.schema.dropTable(this.tableName)
}
}
diff --git a/helpers/PasswordHash.ts b/helpers/PasswordHash.ts
index be3da2ce..5c731954 100644
--- a/helpers/PasswordHash.ts
+++ b/helpers/PasswordHash.ts
@@ -1,17 +1,14 @@
-import User from 'App/Models/User';
-import Hash from '@ioc:Adonis/Core/Hash';
+import User from '#app/Models/User'
+import hash from '@adonisjs/core/services/hash'
-export async function handleVerifyAndReHash(
- user: User,
- passwordToTest: string,
-): Promise {
+export async function handleVerifyAndReHash(user: User, passwordToTest: string): Promise {
// Verify password
- const usesLegacyHasher = /^\$2[aby]/.test(user.password);
- let isMatchedPassword = false;
+ const usesLegacyHasher = /^\$2[aby]/.test(user.password)
+ let isMatchedPassword = false
isMatchedPassword = await (usesLegacyHasher
- ? Hash.use('legacy').verify(user.password, passwordToTest)
- : Hash.verify(user.password, passwordToTest));
+ ? hash.use('legacy').verify(user.password, passwordToTest)
+ : hash.verify(user.password, passwordToTest))
// TODO: For some reason this is not working (user can't login after re-hashing)
// rehash user password
@@ -20,5 +17,5 @@ export async function handleVerifyAndReHash(
// await user.save();
// }
- return isMatchedPassword;
+ return isMatchedPassword
}
diff --git a/package.json b/package.json
index afebb339..c15a7e7d 100644
--- a/package.json
+++ b/package.json
@@ -16,13 +16,13 @@
"homepage": "https://github.com/ferdium/ferdium-server",
"license": "MIT License",
"scripts": {
- "prepare": "is-ci || husky install",
+ "prepare": "is-ci || husky",
"dev": "cross-env-shell ENV_PATH=.env.development node ace serve --watch",
"migrate": "cross-env-shell ENV_PATH=.env.development node ace migration:run",
"refresh": "cross-env-shell ENV_PATH=.env.development node ace migration:refresh",
"status": "cross-env-shell ENV_PATH=.env.development node ace migration:status",
"build": "node ace build --production",
- "start": "cross-env-shell ENV_PATH=.env node build/server.js",
+ "start": "cross-env-shell ENV_PATH=.env node bin/server.js",
"test": "cross-env-shell ENV_PATH=.env.test node ace test",
"typecheck": "tsc --noEmit",
"lint": "eslint \"**/*.{js,ts}\"",
@@ -30,67 +30,75 @@
"reformat-files": "prettier --ignore-path .eslintignore --write \"**/*.{js,ts,scss,json}\"",
"prepare-code": "pnpm typecheck && pnpm lint:fix && pnpm reformat-files && pnpm test"
},
+ "imports": {
+ "#controllers/*": "./app/Controllers/*.js",
+ "#exceptions/*": "./app/Exceptions/*.js",
+ "#models/*": "./app/Models/*.js",
+ "#middleware/*": "./app/Middleware/*.js",
+ "#database/*": "./database/*.js",
+ "#types/*": "./types/*.js",
+ "#start/*": "./start/*.js",
+ "#tests/*": "./tests/*.js",
+ "#config/*": "./config/*.js"
+ },
"devDependencies": {
- "@adonisjs/assembler": "5.9.5",
- "@japa/preset-adonis": "1.2.0",
- "@japa/runner": "2.5.1",
- "@symfony/webpack-encore": "4.4.0",
- "@types/bcrypt": "5.0.0",
- "@types/fs-extra": "11.0.1",
- "@types/luxon": "3.3.1",
- "@types/node-fetch": "2.6.4",
- "@types/proxy-addr": "^2.0.0",
- "@types/semver": "7.5.0",
- "@types/source-map-support": "0.5.6",
- "@types/targz": "1.0.1",
- "@types/uuid": "9.0.2",
- "@typescript-eslint/eslint-plugin": "6.2.0",
- "@typescript-eslint/parser": "6.2.0",
- "adonis-preset-ts": "2.1.0",
+ "@adonisjs/assembler": "7.1.1",
+ "@adonisjs/eslint-config": "1.2.1",
+ "@adonisjs/eslint-plugin": "1.2.1",
+ "@adonisjs/prettier-config": "1.2.1",
+ "@adonisjs/tsconfig": "1.2.1",
+ "@adonisjs/vite": "2.0.2",
+ "@japa/plugin-adonisjs": "3.0.0",
+ "@japa/runner": "3.1.1",
+ "@swc/core": "1.4.0",
+ "@types/bcrypt": "5.0.2",
+ "@types/fs-extra": "11.0.4",
+ "@types/luxon": "3.4.2",
+ "@types/proxy-addr": "^2.0.3",
+ "@types/semver": "7.5.6",
+ "@types/source-map-support": "0.5.10",
+ "@types/targz": "1.0.4",
+ "@types/uuid": "9.0.8",
+ "@typescript-eslint/eslint-plugin": "6.21.0",
+ "@typescript-eslint/parser": "6.21.0",
"cross-env": "7.0.3",
- "eslint": "8.46.0",
- "eslint-config-prettier": "8.9.0",
- "eslint-plugin-adonis": "2.1.1",
- "eslint-plugin-import": "2.28.0",
- "eslint-plugin-prettier": "5.0.0",
- "eslint-plugin-unicorn": "48.0.1",
- "husky": "8.0.3",
+ "eslint": "8.56.0",
+ "eslint-plugin-import": "2.29.1",
+ "eslint-plugin-unicorn": "51.0.1",
+ "husky": "9.0.10",
"is-ci": "3.0.1",
- "pino-pretty": "10.2.0",
- "prettier": "3.0.0",
- "typescript": "5.1.6",
- "youch": "3.2.3",
- "youch-terminal": "2.2.2"
+ "prettier": "3.2.5",
+ "ts-node": "10.9.2",
+ "typescript": "5.3.3",
+ "vite": "5.1.1"
},
"dependencies": {
- "@adonisjs/auth": "8.2.3",
- "@adonisjs/core": "5.9.0",
- "@adonisjs/lucid": "18.4.0",
- "@adonisjs/mail": "8.2.0",
- "@adonisjs/repl": "3.1.11",
- "@adonisjs/session": "6.4.0",
- "@adonisjs/shield": "7.1.1",
- "@adonisjs/view": "6.2.0",
+ "@adonisjs/auth": "9.1.1",
+ "@adonisjs/core": "6.2.3",
+ "@adonisjs/cors": "2.2.1",
+ "@adonisjs/lucid": "20.1.0",
+ "@adonisjs/mail": "9.2.0",
+ "@adonisjs/session": "7.1.1",
+ "@adonisjs/shield": "8.1.1",
+ "@adonisjs/static": "1.1.1",
+ "@adonisjs/validator": "13.0.2",
"adonis5-jwt": "github:SpecialAro/adonis5-jwt#34941c10adcf89583a40767552b994ea499b92e3",
- "aws-sdk": "2.1425.0",
"bcrypt": "5.1.1",
- "fs-extra": "11.1.1",
- "jose": "4.14.6",
- "luxon": "3.3.0",
- "moment": "2.29.4",
+ "edge.js": "6.0.1",
+ "fs-extra": "11.2.0",
+ "jose": "5.2.1",
+ "luxon": "3.4.4",
+ "moment": "2.30.1",
"mysql": "2.18.1",
- "node-fetch": "2",
- "pg": "8.11.1",
- "phc-bcrypt": "1.0.8",
+ "pg": "8.11.3",
"proxy-addr": "2.0.7",
"rand-token": "1.0.1",
- "reflect-metadata": "0.1.13",
+ "reflect-metadata": "0.2.1",
"sanitize-filename": "1.6.3",
- "semver": "7.5.4",
- "source-map-support": "0.5.21",
- "sqlite3": "5.1.6",
+ "semver": "7.6.0",
+ "sqlite3": "5.1.7",
"targz": "1.0.1",
- "uuid": "9.0.0"
+ "uuid": "9.0.1"
},
"pnpm": {
"allowedDeprecatedVersions": {
@@ -98,12 +106,9 @@
"@types/pino-pretty": "5.0.0",
"@types/pino-std-serializers": "4.0.0",
"cuid": "2.1.8",
- "querystring": "0.2.0",
- "resolve-url": "0.2.1",
- "source-map-resolve": "0.5.3",
- "source-map-url": "0.4.1",
- "stable": "0.1.8",
- "urix": "0.1.0"
+ "querystring": "0.2.0"
}
- }
+ },
+ "type": "module",
+ "prettier": "@adonisjs/prettier-config"
}
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index ae833fcf..991eda12 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -6,62 +6,59 @@ settings:
dependencies:
'@adonisjs/auth':
- specifier: 8.2.3
- version: 8.2.3(@adonisjs/application@5.3.0)(@adonisjs/core@5.9.0)(@adonisjs/lucid@18.4.0)(@adonisjs/session@6.4.0)
+ specifier: 9.1.1
+ version: 9.1.1(@adonisjs/assembler@7.1.1)(@adonisjs/core@6.2.3)(@adonisjs/lucid@20.1.0)(@adonisjs/session@7.1.1)(@japa/plugin-adonisjs@3.0.0)
'@adonisjs/core':
- specifier: 5.9.0
- version: 5.9.0
+ specifier: 6.2.3
+ version: 6.2.3(@adonisjs/assembler@7.1.1)(bcrypt@5.1.1)(edge.js@6.0.1)
+ '@adonisjs/cors':
+ specifier: 2.2.1
+ version: 2.2.1(@adonisjs/core@6.2.3)
'@adonisjs/lucid':
- specifier: 18.4.0
- version: 18.4.0(@adonisjs/application@5.3.0)(@adonisjs/core@5.9.0)(mysql@2.18.1)(pg@8.11.1)(sqlite3@5.1.6)
+ specifier: 20.1.0
+ version: 20.1.0(@adonisjs/assembler@7.1.1)(@adonisjs/core@6.2.3)(luxon@3.4.4)(mysql@2.18.1)(pg@8.11.3)(sqlite3@5.1.7)
'@adonisjs/mail':
- specifier: 8.2.0
- version: 8.2.0(@adonisjs/core@5.9.0)(@adonisjs/view@6.2.0)(@types/luxon@3.3.1)(luxon@3.3.0)(moment@2.29.4)
- '@adonisjs/repl':
- specifier: 3.1.11
- version: 3.1.11(@adonisjs/core@5.9.0)
+ specifier: 9.2.0
+ version: 9.2.0(@adonisjs/core@6.2.3)(@types/luxon@3.4.2)(@types/node@20.11.17)(edge.js@6.0.1)(luxon@3.4.4)(moment@2.30.1)
'@adonisjs/session':
- specifier: 6.4.0
- version: 6.4.0(@adonisjs/core@5.9.0)
- '@adonisjs/shield':
specifier: 7.1.1
- version: 7.1.1(@adonisjs/core@5.9.0)(@adonisjs/session@6.4.0)(@adonisjs/view@6.2.0)
- '@adonisjs/view':
- specifier: 6.2.0
- version: 6.2.0(@adonisjs/core@5.9.0)
+ version: 7.1.1(@adonisjs/core@6.2.3)(edge.js@6.0.1)
+ '@adonisjs/shield':
+ specifier: 8.1.1
+ version: 8.1.1(@adonisjs/core@6.2.3)(@adonisjs/session@7.1.1)(edge.js@6.0.1)
+ '@adonisjs/static':
+ specifier: 1.1.1
+ version: 1.1.1(@adonisjs/core@6.2.3)
+ '@adonisjs/validator':
+ specifier: 13.0.2
+ version: 13.0.2(@adonisjs/core@6.2.3)
adonis5-jwt:
specifier: github:SpecialAro/adonis5-jwt#34941c10adcf89583a40767552b994ea499b92e3
version: github.com/SpecialAro/adonis5-jwt/34941c10adcf89583a40767552b994ea499b92e3
- aws-sdk:
- specifier: 2.1425.0
- version: 2.1425.0
bcrypt:
specifier: 5.1.1
version: 5.1.1
+ edge.js:
+ specifier: 6.0.1
+ version: 6.0.1
fs-extra:
- specifier: 11.1.1
- version: 11.1.1
+ specifier: 11.2.0
+ version: 11.2.0
jose:
- specifier: 4.14.6
- version: 4.14.6
+ specifier: 5.2.1
+ version: 5.2.1
luxon:
- specifier: 3.3.0
- version: 3.3.0
+ specifier: 3.4.4
+ version: 3.4.4
moment:
- specifier: 2.29.4
- version: 2.29.4
+ specifier: 2.30.1
+ version: 2.30.1
mysql:
specifier: 2.18.1
version: 2.18.1
- node-fetch:
- specifier: '2'
- version: 2.7.0
pg:
- specifier: 8.11.1
- version: 8.11.1
- phc-bcrypt:
- specifier: 1.0.8
- version: 1.0.8
+ specifier: 8.11.3
+ version: 8.11.3
proxy-addr:
specifier: 2.0.7
version: 2.0.7
@@ -69,118 +66,112 @@ dependencies:
specifier: 1.0.1
version: 1.0.1
reflect-metadata:
- specifier: 0.1.13
- version: 0.1.13
+ specifier: 0.2.1
+ version: 0.2.1
sanitize-filename:
specifier: 1.6.3
version: 1.6.3
semver:
- specifier: 7.5.4
- version: 7.5.4
- source-map-support:
- specifier: 0.5.21
- version: 0.5.21
+ specifier: 7.6.0
+ version: 7.6.0
sqlite3:
- specifier: 5.1.6
- version: 5.1.6
+ specifier: 5.1.7
+ version: 5.1.7
targz:
specifier: 1.0.1
version: 1.0.1
uuid:
- specifier: 9.0.0
- version: 9.0.0
+ specifier: 9.0.1
+ version: 9.0.1
devDependencies:
'@adonisjs/assembler':
- specifier: 5.9.5
- version: 5.9.5(@adonisjs/core@5.9.0)
- '@japa/preset-adonis':
- specifier: 1.2.0
- version: 1.2.0(@adonisjs/core@5.9.0)(@japa/runner@2.5.1)(openapi-types@12.1.3)
+ specifier: 7.1.1
+ version: 7.1.1(typescript@5.3.3)
+ '@adonisjs/eslint-config':
+ specifier: 1.2.1
+ version: 1.2.1(eslint@8.56.0)(prettier@3.2.5)(typescript@5.3.3)
+ '@adonisjs/eslint-plugin':
+ specifier: 1.2.1
+ version: 1.2.1(eslint@8.56.0)(typescript@5.3.3)
+ '@adonisjs/prettier-config':
+ specifier: 1.2.1
+ version: 1.2.1
+ '@adonisjs/tsconfig':
+ specifier: 1.2.1
+ version: 1.2.1
+ '@adonisjs/vite':
+ specifier: 2.0.2
+ version: 2.0.2(@adonisjs/core@6.2.3)(@adonisjs/shield@8.1.1)(edge.js@6.0.1)(vite@5.1.1)
+ '@japa/plugin-adonisjs':
+ specifier: 3.0.0
+ version: 3.0.0(@adonisjs/core@6.2.3)(@japa/runner@3.1.1)
'@japa/runner':
- specifier: 2.5.1
- version: 2.5.1
- '@symfony/webpack-encore':
- specifier: 4.4.0
- version: 4.4.0(@babel/core@7.23.0)(@babel/preset-env@7.22.20)(eslint@8.46.0)(postcss@8.4.31)(typescript@5.1.6)(webpack-cli@5.1.4)(webpack@5.88.2)
+ specifier: 3.1.1
+ version: 3.1.1
+ '@swc/core':
+ specifier: 1.4.0
+ version: 1.4.0
'@types/bcrypt':
- specifier: 5.0.0
- version: 5.0.0
+ specifier: 5.0.2
+ version: 5.0.2
'@types/fs-extra':
- specifier: 11.0.1
- version: 11.0.1
+ specifier: 11.0.4
+ version: 11.0.4
'@types/luxon':
- specifier: 3.3.1
- version: 3.3.1
- '@types/node-fetch':
- specifier: 2.6.4
- version: 2.6.4
+ specifier: 3.4.2
+ version: 3.4.2
'@types/proxy-addr':
- specifier: ^2.0.0
- version: 2.0.1
+ specifier: ^2.0.3
+ version: 2.0.3
'@types/semver':
- specifier: 7.5.0
- version: 7.5.0
+ specifier: 7.5.6
+ version: 7.5.6
'@types/source-map-support':
- specifier: 0.5.6
- version: 0.5.6
+ specifier: 0.5.10
+ version: 0.5.10
'@types/targz':
- specifier: 1.0.1
- version: 1.0.1
+ specifier: 1.0.4
+ version: 1.0.4
'@types/uuid':
- specifier: 9.0.2
- version: 9.0.2
+ specifier: 9.0.8
+ version: 9.0.8
'@typescript-eslint/eslint-plugin':
- specifier: 6.2.0
- version: 6.2.0(@typescript-eslint/parser@6.2.0)(eslint@8.46.0)(typescript@5.1.6)
+ specifier: 6.21.0
+ version: 6.21.0(@typescript-eslint/parser@6.21.0)(eslint@8.56.0)(typescript@5.3.3)
'@typescript-eslint/parser':
- specifier: 6.2.0
- version: 6.2.0(eslint@8.46.0)(typescript@5.1.6)
- adonis-preset-ts:
- specifier: 2.1.0
- version: 2.1.0
+ specifier: 6.21.0
+ version: 6.21.0(eslint@8.56.0)(typescript@5.3.3)
cross-env:
specifier: 7.0.3
version: 7.0.3
eslint:
- specifier: 8.46.0
- version: 8.46.0
- eslint-config-prettier:
- specifier: 8.9.0
- version: 8.9.0(eslint@8.46.0)
- eslint-plugin-adonis:
- specifier: 2.1.1
- version: 2.1.1(eslint@8.46.0)(typescript@5.1.6)
+ specifier: 8.56.0
+ version: 8.56.0
eslint-plugin-import:
- specifier: 2.28.0
- version: 2.28.0(@typescript-eslint/parser@6.2.0)(eslint@8.46.0)
- eslint-plugin-prettier:
- specifier: 5.0.0
- version: 5.0.0(eslint-config-prettier@8.9.0)(eslint@8.46.0)(prettier@3.0.0)
+ specifier: 2.29.1
+ version: 2.29.1(@typescript-eslint/parser@6.21.0)(eslint@8.56.0)
eslint-plugin-unicorn:
- specifier: 48.0.1
- version: 48.0.1(eslint@8.46.0)
+ specifier: 51.0.1
+ version: 51.0.1(eslint@8.56.0)
husky:
- specifier: 8.0.3
- version: 8.0.3
+ specifier: 9.0.10
+ version: 9.0.10
is-ci:
specifier: 3.0.1
version: 3.0.1
- pino-pretty:
- specifier: 10.2.0
- version: 10.2.0
prettier:
- specifier: 3.0.0
- version: 3.0.0
+ specifier: 3.2.5
+ version: 3.2.5
+ ts-node:
+ specifier: 10.9.2
+ version: 10.9.2(@swc/core@1.4.0)(@types/node@20.11.17)(typescript@5.3.3)
typescript:
- specifier: 5.1.6
- version: 5.1.6
- youch:
- specifier: 3.2.3
- version: 3.2.3
- youch-terminal:
- specifier: 2.2.2
- version: 2.2.2
+ specifier: 5.3.3
+ version: 5.3.3
+ vite:
+ specifier: 5.1.1
+ version: 5.1.1(@types/node@20.11.17)
packages:
@@ -189,251 +180,334 @@ packages:
engines: {node: '>=0.10.0'}
dev: true
- /@adonisjs/ace@11.3.1(@adonisjs/application@5.3.0):
- resolution: {integrity: sha512-Ho3+Lk/16OSjX3CfhxsoLUTlcVG4sDlXUwHx+Zry/RLft5M6plT5ln0WkZvL7tqtb1uCZgP5YiMrMtDjSRzZLA==}
- peerDependencies:
- '@adonisjs/application': ^5.0.0
- dependencies:
- '@adonisjs/application': 5.3.0
- '@poppinss/cliui': 3.0.5
- '@poppinss/prompts': 2.0.2
- '@poppinss/utils': 4.0.4
- fs-extra: 10.1.0
- getopts: 2.3.0
- leven: 3.1.0
- mustache: 4.2.0
- slash: 3.0.0
- term-size: 2.2.1
-
- /@adonisjs/application@5.3.0:
- resolution: {integrity: sha512-AruZZXMgOdmmRxJEHUbXoqhgRavPfhkeIR2nQtGyxbn0PCNjqlGraq8ypuLINY1J+wNuH2tt0xCS98EDeMdTOQ==}
+ /@adonisjs/ace@13.0.0:
+ resolution: {integrity: sha512-Hj5QjRgYnMUXiYuzMH5gQtzHH2hBNo4BO8VW7Jkrbbvh/YlUeFBkTSpTY010EBxmxSrslZKuHQynJ9JVRFExyQ==}
+ engines: {node: '>=18.16.0'}
dependencies:
- '@adonisjs/config': 3.0.9
- '@adonisjs/env': 3.0.9
- '@adonisjs/fold': 8.2.0
- '@adonisjs/logger': 4.1.5
- '@adonisjs/profiler': 6.0.9(@adonisjs/logger@4.1.5)
- '@poppinss/utils': 5.0.0
- semver: 7.5.4
+ '@poppinss/cliui': 6.3.0
+ '@poppinss/hooks': 7.2.2
+ '@poppinss/macroable': 1.0.1
+ '@poppinss/prompts': 3.1.2
+ '@poppinss/utils': 6.7.2
+ fastest-levenshtein: 1.0.16
+ jsonschema: 1.4.1
+ string-width: 7.1.0
+ yargs-parser: 21.1.1
+ youch: 3.3.3
+ youch-terminal: 2.2.3
- /@adonisjs/assembler@5.9.5(@adonisjs/core@5.9.0):
- resolution: {integrity: sha512-wCtQRZ4KoIZkzi+ux5NrDUDNASRomytRZ7AZBdw8Hi3LlEOeac4T8+47y7gXwJFKH2nnGoiIwnXGIgJyolXEfQ==}
+ /@adonisjs/application@8.0.4(@adonisjs/config@5.0.1)(@adonisjs/fold@10.0.1):
+ resolution: {integrity: sha512-Bh+tKZ/nmU0odBq3FJjpFTZoLcp6/vEosE9DGBu9jbxELeLeW4eY3racNidlEpMz45ObQHA7mAgzeL50xKoWvQ==}
+ engines: {node: '>=18.16.0'}
peerDependencies:
- '@adonisjs/core': ^5.1.0
- dependencies:
- '@adonisjs/application': 5.3.0
- '@adonisjs/core': 5.9.0
- '@adonisjs/env': 3.0.9
- '@adonisjs/ioc-transformer': 2.3.4
- '@adonisjs/require-ts': 2.0.13
- '@adonisjs/sink': 5.4.3(@adonisjs/application@5.3.0)
- '@poppinss/chokidar-ts': 3.3.5
- '@poppinss/cliui': 3.0.5
- '@poppinss/utils': 5.0.0
- cpy: 8.1.2
- emittery: 0.13.1
- execa: 5.1.1
- fs-extra: 10.1.0
- get-port: 5.1.1
+ '@adonisjs/config': ^5.0.0
+ '@adonisjs/fold': ^10.0.0
+ dependencies:
+ '@adonisjs/config': 5.0.1
+ '@adonisjs/fold': 10.0.1
+ '@poppinss/hooks': 7.2.2
+ '@poppinss/macroable': 1.0.1
+ '@poppinss/utils': 6.7.2
glob-parent: 6.0.2
- has-yarn: 2.1.0
- picomatch: 2.3.1
- slash: 3.0.0
+ tempura: 0.4.0
+
+ /@adonisjs/assembler@7.1.1(typescript@5.3.3):
+ resolution: {integrity: sha512-W5D+IXs/6Zym+3htv2E9JUXvo7XUvA5vfEbtLEKSGw+hFEcGL5uo7BGFDafmYran4axF+mrIYS8gJDU8SvwszQ==}
+ engines: {node: '>=18.16.0'}
+ peerDependencies:
+ typescript: ^4.0.0 || ^5.0.0
+ dependencies:
+ '@adonisjs/env': 5.0.1
+ '@antfu/install-pkg': 0.3.1
+ '@poppinss/chokidar-ts': 4.1.3(typescript@5.3.3)
+ '@poppinss/cliui': 6.3.0
+ cpy: 11.0.0
+ dedent: 1.5.1
+ execa: 8.0.1
+ fast-glob: 3.3.2
+ get-port: 7.0.0
+ junk: 4.0.1
+ picomatch: 3.0.1
+ pretty-hrtime: 1.0.3
+ slash: 5.1.0
+ ts-morph: 21.0.1
+ typescript: 5.3.3
transitivePeerDependencies:
- - supports-color
- dev: true
-
- /@adonisjs/auth@8.2.3(@adonisjs/application@5.3.0)(@adonisjs/core@5.9.0)(@adonisjs/lucid@18.4.0)(@adonisjs/session@6.4.0):
- resolution: {integrity: sha512-js9e8AHEsNC/8MGvho6MgL+uXr8SlhTg9MJJDWQBBiqsKkT7+H7NMP/pLbuSzYaaf40t2u/OXfq6wXuIC5ZYvw==}
- peerDependencies:
- '@adonisjs/core': ^5.7.1
- '@adonisjs/i18n': ^1.5.0
- '@adonisjs/lucid': ^18.0.0
- '@adonisjs/redis': ^7.2.0
- '@adonisjs/session': ^6.2.0
+ - babel-plugin-macros
+
+ /@adonisjs/auth@9.1.1(@adonisjs/assembler@7.1.1)(@adonisjs/core@6.2.3)(@adonisjs/lucid@20.1.0)(@adonisjs/session@7.1.1)(@japa/plugin-adonisjs@3.0.0):
+ resolution: {integrity: sha512-gusUQT/9xWYZvdOzHQeqFlI1WDsxi0DIHxjkCNcExwLHpCwBvJ2+VItQ5+dBx5Aryi7Szm2C4od/vg08f//A5g==}
+ engines: {node: '>=18.16.0'}
+ peerDependencies:
+ '@adonisjs/core': ^6.2.1
+ '@adonisjs/lucid': ^20.1.0
+ '@adonisjs/session': ^7.1.1
+ '@japa/api-client': ^2.0.2
+ '@japa/browser-client': ^2.0.2
+ '@japa/plugin-adonisjs': ^3.0.0
peerDependenciesMeta:
- '@adonisjs/i18n':
- optional: true
'@adonisjs/lucid':
optional: true
- '@adonisjs/redis':
- optional: true
'@adonisjs/session':
optional: true
+ '@japa/api-client':
+ optional: true
+ '@japa/browser-client':
+ optional: true
+ '@japa/plugin-adonisjs':
+ optional: true
dependencies:
- '@adonisjs/core': 5.9.0
- '@adonisjs/lucid': 18.4.0(@adonisjs/application@5.3.0)(@adonisjs/core@5.9.0)(mysql@2.18.1)(pg@8.11.1)(sqlite3@5.1.6)
- '@adonisjs/session': 6.4.0(@adonisjs/core@5.9.0)
- '@poppinss/hooks': 5.0.3(@adonisjs/application@5.3.0)
- '@poppinss/utils': 5.0.0
- luxon: 3.3.0
+ '@adonisjs/core': 6.2.3(@adonisjs/assembler@7.1.1)(bcrypt@5.1.1)(edge.js@6.0.1)
+ '@adonisjs/lucid': 20.1.0(@adonisjs/assembler@7.1.1)(@adonisjs/core@6.2.3)(luxon@3.4.4)(mysql@2.18.1)(pg@8.11.3)(sqlite3@5.1.7)
+ '@adonisjs/presets': 2.2.4(@adonisjs/assembler@7.1.1)(@adonisjs/core@6.2.3)
+ '@adonisjs/session': 7.1.1(@adonisjs/core@6.2.3)(edge.js@6.0.1)
+ '@japa/plugin-adonisjs': 3.0.0(@adonisjs/core@6.2.3)(@japa/runner@3.1.1)
+ basic-auth: 2.0.1
transitivePeerDependencies:
- - '@adonisjs/application'
+ - '@adonisjs/assembler'
dev: false
- /@adonisjs/bodyparser@8.1.9(@adonisjs/application@5.3.0)(@adonisjs/drive@2.3.0)(@adonisjs/http-server@5.12.0):
- resolution: {integrity: sha512-enVETPmoBJhg+CP6AVlG/GSwllpW/5y22wjFpEhYZl0YOXnE7i+wsp2VeGfMtQzl4+snTuAPEfwCtG+I/s6jqQ==}
+ /@adonisjs/bodyparser@10.0.1(@adonisjs/http-server@7.0.3):
+ resolution: {integrity: sha512-Q5NvSjqSt8yNN/CObu7pRDgMRpFVnPHL1CReBK1Y9ZdPpSCJ+/n/GpOYsUh+ChhFMjRNdFy4rDk3RJ2QUOTHIQ==}
+ engines: {node: '>=18.16.0'}
peerDependencies:
- '@adonisjs/application': ^5.0.0
- '@adonisjs/drive': ^2.0.0
- '@adonisjs/http-server': ^5.0.0
- dependencies:
- '@adonisjs/application': 5.3.0
- '@adonisjs/drive': 2.3.0(@adonisjs/application@5.3.0)(@adonisjs/http-server@5.12.0)
- '@adonisjs/http-server': 5.12.0(@adonisjs/application@5.3.0)(@adonisjs/encryption@4.0.8)
- '@poppinss/co-body': 1.2.0
+ '@adonisjs/http-server': ^7.0.2
+ dependencies:
+ '@adonisjs/http-server': 7.0.3(@adonisjs/application@8.0.4)(@adonisjs/encryption@6.0.1)(@adonisjs/events@9.0.1)(@adonisjs/fold@10.0.1)(@adonisjs/logger@6.0.1)
+ '@paralleldrive/cuid2': 2.2.2
+ '@poppinss/macroable': 1.0.1
'@poppinss/multiparty': 2.0.1
- '@poppinss/utils': 5.0.0
+ '@poppinss/utils': 6.7.2
+ '@types/qs': 6.9.11
bytes: 3.1.2
- file-type: 16.5.4
- fs-extra: 10.1.0
+ file-type: 19.0.0
+ inflation: 2.1.0
media-typer: 1.1.0
- slash: 3.0.0
+ qs: 6.11.2
+ raw-body: 2.5.2
- /@adonisjs/config@3.0.9:
- resolution: {integrity: sha512-f+wzrc+0HLvhJyYGEMV2QTHtyJ8sI3PKvH9h/baW/iF8UO3KF+llHH0Cf3/M5dYnpdz9rnmj0VtdTaIDfxrgGg==}
- dependencies:
- '@poppinss/utils': 5.0.0
-
- /@adonisjs/core@5.9.0:
- resolution: {integrity: sha512-32zG9EW0t0Ck0cMzlwD0+z3GJG7k/gZz6P0+h+s8N1N7fHxGixrKs7W7lT3OcIvk0NsuIw1tUPAU7fAWytHEqA==}
- dependencies:
- '@adonisjs/ace': 11.3.1(@adonisjs/application@5.3.0)
- '@adonisjs/application': 5.3.0
- '@adonisjs/bodyparser': 8.1.9(@adonisjs/application@5.3.0)(@adonisjs/drive@2.3.0)(@adonisjs/http-server@5.12.0)
- '@adonisjs/drive': 2.3.0(@adonisjs/application@5.3.0)(@adonisjs/http-server@5.12.0)
- '@adonisjs/encryption': 4.0.8(@adonisjs/application@5.3.0)
- '@adonisjs/events': 7.2.1(@adonisjs/application@5.3.0)
- '@adonisjs/hash': 7.2.2(@adonisjs/application@5.3.0)
- '@adonisjs/http-server': 5.12.0(@adonisjs/application@5.3.0)(@adonisjs/encryption@4.0.8)
- '@adonisjs/validator': 12.5.0(@adonisjs/application@5.3.0)(@adonisjs/bodyparser@8.1.9)(@adonisjs/http-server@5.12.0)
- '@poppinss/cliui': 3.0.5
- '@poppinss/manager': 5.0.2
- '@poppinss/utils': 5.0.0
- fs-extra: 10.1.0
- macroable: 7.0.2
- memfs: 3.5.3
- serve-static: 1.15.0
- stringify-attributes: 2.0.0
- transitivePeerDependencies:
- - supports-color
+ /@adonisjs/config@5.0.1:
+ resolution: {integrity: sha512-hyednyDBGsoBthbcf7S8r8M68tS8Y7rnIBPIZKHhQikXOXgf/E9IkQWgWjJR9+ODbaiMY69roJYR5L9dElre7w==}
+ engines: {node: '>=18.16.0'}
+ dependencies:
+ '@poppinss/utils': 6.7.2
- /@adonisjs/drive@2.3.0(@adonisjs/application@5.3.0)(@adonisjs/http-server@5.12.0):
- resolution: {integrity: sha512-3V1kBe2qB/860KcS+dDonv8Xya2YDBdR7291pQgObJeTbV50Vy8RhwdOwtU7ybRfN2kh/svdC4238JGpbQOR9w==}
+ /@adonisjs/core@6.2.3(@adonisjs/assembler@7.1.1)(bcrypt@5.1.1)(edge.js@6.0.1):
+ resolution: {integrity: sha512-ompZA34XINVz2FhegQLvjBn0l550DfIalMTRFgxDzSK80BYCd1xEbIZJ33Js361PH/REgekvdOH5YJBxJqJYjw==}
+ engines: {node: '>=18.16.0'}
+ hasBin: true
peerDependencies:
- '@adonisjs/application': ^5.0.0
- '@adonisjs/http-server': ^5.0.0
- dependencies:
- '@adonisjs/application': 5.3.0
- '@adonisjs/http-server': 5.12.0(@adonisjs/application@5.3.0)(@adonisjs/encryption@4.0.8)
- '@poppinss/manager': 5.0.2
- '@poppinss/utils': 5.0.0
- '@types/fs-extra': 9.0.13
- etag: 1.8.1
- fs-extra: 10.1.0
- memfs: 3.5.3
+ '@adonisjs/assembler': ^7.1.0
+ '@vinejs/vine': ^1.7.0
+ argon2: ^0.31.1
+ bcrypt: ^5.1.1
+ edge.js: ^6.0.1
+ peerDependenciesMeta:
+ '@adonisjs/assembler':
+ optional: true
+ '@vinejs/vine':
+ optional: true
+ argon2:
+ optional: true
+ bcrypt:
+ optional: true
+ edge.js:
+ optional: true
+ dependencies:
+ '@adonisjs/ace': 13.0.0
+ '@adonisjs/application': 8.0.4(@adonisjs/config@5.0.1)(@adonisjs/fold@10.0.1)
+ '@adonisjs/assembler': 7.1.1(typescript@5.3.3)
+ '@adonisjs/bodyparser': 10.0.1(@adonisjs/http-server@7.0.3)
+ '@adonisjs/config': 5.0.1
+ '@adonisjs/encryption': 6.0.1
+ '@adonisjs/env': 5.0.1
+ '@adonisjs/events': 9.0.1(@adonisjs/application@8.0.4)(@adonisjs/fold@10.0.1)
+ '@adonisjs/fold': 10.0.1
+ '@adonisjs/hash': 9.0.1(bcrypt@5.1.1)
+ '@adonisjs/http-server': 7.0.3(@adonisjs/application@8.0.4)(@adonisjs/encryption@6.0.1)(@adonisjs/events@9.0.1)(@adonisjs/fold@10.0.1)(@adonisjs/logger@6.0.1)
+ '@adonisjs/logger': 6.0.1
+ '@adonisjs/repl': 4.0.1
+ '@paralleldrive/cuid2': 2.2.2
+ '@poppinss/macroable': 1.0.1
+ '@poppinss/utils': 6.7.2
+ '@sindresorhus/is': 6.1.0
+ '@types/he': 1.2.3
+ bcrypt: 5.1.1
+ edge.js: 6.0.1
+ he: 1.2.0
+ parse-imports: 1.1.2
+ pretty-hrtime: 1.0.3
+ string-width: 7.1.0
+ youch: 3.3.3
+ youch-terminal: 2.2.3
- /@adonisjs/encryption@4.0.8(@adonisjs/application@5.3.0):
- resolution: {integrity: sha512-zMWbIESPHXafsbiLJyON/hlRYwrTIA3PuTil7xC8W4ngC36PgWe86Ra0x0t961u1We/LaSGkT8Vn93DymqB3aA==}
+ /@adonisjs/cors@2.2.1(@adonisjs/core@6.2.3):
+ resolution: {integrity: sha512-qnrSG8ylpgTeZBOYEN3yXxY0PBUEg1KGDhgn9VKVFGxLKT+o9GGVOSZxUK3wG341B1zB9w5vuZN1z4M0Jitb6g==}
+ engines: {node: '>=18.16.0'}
peerDependencies:
- '@adonisjs/application': ^5.0.0
+ '@adonisjs/core': ^6.2.0
+ dependencies:
+ '@adonisjs/core': 6.2.3(@adonisjs/assembler@7.1.1)(bcrypt@5.1.1)(edge.js@6.0.1)
+ dev: false
+
+ /@adonisjs/encryption@6.0.1:
+ resolution: {integrity: sha512-9Vz2xU8cryCvRgQDri+4khZIeRDM6yJFe35PdR6xyhgQaT91Qn7fJ2oAcg3yVuNp3WKxg6PTRcxva+ZTfdP3SA==}
+ engines: {node: '>=18.16.0'}
dependencies:
- '@adonisjs/application': 5.3.0
- '@poppinss/utils': 4.0.4
+ '@poppinss/utils': 6.7.2
- /@adonisjs/env@3.0.9:
- resolution: {integrity: sha512-9lxGmOQuF4FpUQ6NIwL/YQumaXG+2Wt8jQlQptplSUTasy6DHSEp7/SYvtC2RD9vxwn4gsptNCo+f8YRiqUvwQ==}
+ /@adonisjs/env@5.0.1:
+ resolution: {integrity: sha512-jka5D+LHjG0Cuy1IpuOv7NfO5Pu4SZ41UzX5csPeXzBIWyuD9as+HphxctHZpsD2KZ97EuSbVJv6zzxJfZ4Edg==}
+ engines: {node: '>=18.16.0'}
dependencies:
- '@poppinss/utils': 4.0.4
- dotenv: 16.3.1
- validator: 13.11.0
+ '@poppinss/utils': 6.7.2
+ '@poppinss/validator-lite': 1.0.3
+ dotenv: 16.4.1
+ split-lines: 3.0.0
- /@adonisjs/events@7.2.1(@adonisjs/application@5.3.0):
- resolution: {integrity: sha512-N+ewQ19pvdWVIRGBeio1GqlMRJpHpZ+ZHCjhObI+bqoCh5nBApumW0JYe4blyMnUbUAtA9Aq1m1QbGaE7pRMcw==}
+ /@adonisjs/eslint-config@1.2.1(eslint@8.56.0)(prettier@3.2.5)(typescript@5.3.3):
+ resolution: {integrity: sha512-kCGvnLcRWyw21YVEnka1TDNquJKrqkY6K7EENxM6tWwoHUyn0j99ssX4+Hv3d2UVvVezcC4KF1l8YZKzLqlgjA==}
peerDependencies:
- '@adonisjs/application': ^5.0.0
+ eslint: '>=7.4.0'
+ prettier: '>=2.0.0'
dependencies:
- '@adonisjs/application': 5.3.0
- emittery: 0.10.2
+ '@adonisjs/eslint-plugin': 1.2.1(eslint@8.56.0)(typescript@5.3.3)
+ '@typescript-eslint/eslint-plugin': 6.21.0(@typescript-eslint/parser@6.21.0)(eslint@8.56.0)(typescript@5.3.3)
+ '@typescript-eslint/parser': 6.21.0(eslint@8.56.0)(typescript@5.3.3)
+ eslint: 8.56.0
+ eslint-config-prettier: 8.10.0(eslint@8.56.0)
+ eslint-plugin-jsonc: 2.13.0(eslint@8.56.0)
+ eslint-plugin-prettier: 5.1.3(eslint-config-prettier@8.10.0)(eslint@8.56.0)(prettier@3.2.5)
+ eslint-plugin-unicorn: 47.0.0(eslint@8.56.0)
+ jsonc-eslint-parser: 2.4.0
+ prettier: 3.2.5
+ transitivePeerDependencies:
+ - '@types/eslint'
+ - supports-color
+ - typescript
+ dev: true
- /@adonisjs/fold@8.2.0:
- resolution: {integrity: sha512-Uoo2HPp4SShIkGOF3+p3gT09W3j0zpkK+fOpPyYPTqYm7CWAunklTlowqX45b6CAVb5DCcORDUB8ia4D1ijeKg==}
+ /@adonisjs/eslint-plugin@1.2.1(eslint@8.56.0)(typescript@5.3.3):
+ resolution: {integrity: sha512-dwL0x5An5n/q1sy4ZL3eUqqTGlTJKn/Z8m53m7/DpAHtvq4QZTaxUZ3rF5WgnNiI5Q8+wyc/JcQ+lvQ4T0vH+A==}
dependencies:
- '@poppinss/utils': 4.0.4
+ '@typescript-eslint/utils': 6.21.0(eslint@8.56.0)(typescript@5.3.3)
+ transitivePeerDependencies:
+ - eslint
+ - supports-color
+ - typescript
+ dev: true
- /@adonisjs/hash@7.2.2(@adonisjs/application@5.3.0):
- resolution: {integrity: sha512-qJxFX8jNH+5+jxckIIvz2y9pMt59ueT50a4B5kUe/68g5iC7UdwKmMos+tj5Pnm5hRFfwKXbtIQBGd+Bb87+2Q==}
+ /@adonisjs/events@9.0.1(@adonisjs/application@8.0.4)(@adonisjs/fold@10.0.1):
+ resolution: {integrity: sha512-1tOwBrwrJLE7zLB+/KzbAzBUq8IeQMLdqUFVC0d5A+Bq0ko/kn4O2xoRAybhrG9NHxQtFoSrOx+Ynb/8d+YffQ==}
+ engines: {node: '>=18.16.0'}
peerDependencies:
- '@adonisjs/application': ^5.0.0
+ '@adonisjs/application': ^8.0.2
+ '@adonisjs/fold': ^10.0.1
dependencies:
- '@adonisjs/application': 5.3.0
- '@phc/format': 1.0.0
- '@poppinss/manager': 5.0.2
- '@poppinss/utils': 5.0.0
+ '@adonisjs/application': 8.0.4(@adonisjs/config@5.0.1)(@adonisjs/fold@10.0.1)
+ '@adonisjs/fold': 10.0.1
+ '@poppinss/utils': 6.7.2
+ '@sindresorhus/is': 6.1.0
+ emittery: 1.0.2
- /@adonisjs/http-server@5.12.0(@adonisjs/application@5.3.0)(@adonisjs/encryption@4.0.8):
- resolution: {integrity: sha512-+9cw/DRlLO2NSoHsccmMe3pFf6c0/8INds2yf73ZAZOmzUROb9DQaXHocJ/iwHX9EVxtDuKWDc5z0jI1SYdqEA==}
+ /@adonisjs/fold@10.0.1:
+ resolution: {integrity: sha512-3SqwopxFtvy3WDs1Z3ZOdjS1M3JfTX8r0dCEQ+ascXhiLYwmv0LCoCY3vcmwVL+wpuyOG1qkKWkjZP1sB3+/bA==}
+ engines: {node: '>=18.16.0'}
+ dependencies:
+ '@poppinss/utils': 6.7.2
+
+ /@adonisjs/hash@9.0.1(bcrypt@5.1.1):
+ resolution: {integrity: sha512-K1jHQWr7ovXf6zHoo+70fmAt33op50GVygZd6ilvyQfCCEPx3lRqGoxqmRdgzDW5eCAfxCwy+nH7zxf8BhX4GQ==}
+ engines: {node: '>=18.16.0'}
peerDependencies:
- '@adonisjs/application': ^5.0.0
- '@adonisjs/encryption': ^4.0.0
+ argon2: ^0.31.2
+ bcrypt: ^5.1.1
+ peerDependenciesMeta:
+ argon2:
+ optional: true
+ bcrypt:
+ optional: true
dependencies:
- '@adonisjs/application': 5.3.0
- '@adonisjs/encryption': 4.0.8(@adonisjs/application@5.3.0)
+ '@phc/format': 1.0.0
+ '@poppinss/utils': 6.7.2
+ bcrypt: 5.1.1
+
+ /@adonisjs/http-server@7.0.3(@adonisjs/application@8.0.4)(@adonisjs/encryption@6.0.1)(@adonisjs/events@9.0.1)(@adonisjs/fold@10.0.1)(@adonisjs/logger@6.0.1):
+ resolution: {integrity: sha512-z8IlnmCsEHiwqYo4eOXx+lKgyXtRCfbQ/KKfEJgfHfspmczJqCt2jVNiJuFuVBeIdPXDIJIys2dJMwu1hsyqoA==}
+ engines: {node: '>=18.16.0'}
+ peerDependencies:
+ '@adonisjs/application': ^8.0.2
+ '@adonisjs/encryption': ^6.0.0
+ '@adonisjs/events': ^9.0.0
+ '@adonisjs/fold': ^10.0.1
+ '@adonisjs/logger': ^6.0.1
+ dependencies:
+ '@adonisjs/application': 8.0.4(@adonisjs/config@5.0.1)(@adonisjs/fold@10.0.1)
+ '@adonisjs/encryption': 6.0.1
+ '@adonisjs/events': 9.0.1(@adonisjs/application@8.0.4)(@adonisjs/fold@10.0.1)
+ '@adonisjs/fold': 10.0.1
+ '@adonisjs/logger': 6.0.1
+ '@paralleldrive/cuid2': 2.2.2
+ '@poppinss/macroable': 1.0.1
'@poppinss/matchit': 3.1.2
- '@poppinss/utils': 5.0.0
+ '@poppinss/middleware': 3.2.2
+ '@poppinss/utils': 6.7.2
+ '@sindresorhus/is': 6.1.0
accepts: 1.3.8
- co-compose: 7.0.3
content-disposition: 0.5.4
- cookie: 0.5.0
+ cookie: 0.6.0
destroy: 1.2.0
encodeurl: 1.0.2
etag: 1.8.1
fresh: 0.5.2
- haye: 3.0.0
- macroable: 7.0.2
mime-types: 2.1.35
- ms: 2.1.3
on-finished: 2.4.1
- pluralize: 8.0.0
proxy-addr: 2.0.7
qs: 6.11.2
tmp-cache: 1.1.0
type-is: 1.6.18
vary: 1.1.2
+ youch: 3.3.3
- /@adonisjs/ioc-transformer@2.3.4:
- resolution: {integrity: sha512-ik1C7f0Hbqenw6S1Ty06B4pznGfpUH5bL2fiCYgwq+jKPw8CKdsTQKvYudS6Tj68Nr6Mpqow4RNbvFV/OC0mZg==}
- dev: true
-
- /@adonisjs/logger@4.1.5:
- resolution: {integrity: sha512-JMINhXp/6VW0y4e86luyM8vbBzV4Y5F4IzVklMObCu/SwiaCbp5bgx9Z6QOHiGVW8SFVlRF1KlwLq8pAifjTpQ==}
+ /@adonisjs/logger@6.0.1:
+ resolution: {integrity: sha512-zt3G2XPWZcreO6okdZ4A9CXfZhPBaAUTbsJZrLEYILdb5E0r5ZGw/MH6enK4uiN7BI+Y90W6HjXfQzKmXnNV2g==}
+ engines: {node: '>=18.16.0'}
dependencies:
- '@poppinss/utils': 5.0.0
- '@types/pino': 6.3.12
+ '@poppinss/utils': 6.7.2
abstract-logging: 2.0.1
- pino: 6.14.0
+ pino: 8.18.0
- /@adonisjs/lucid@18.4.0(@adonisjs/application@5.3.0)(@adonisjs/core@5.9.0)(mysql@2.18.1)(pg@8.11.1)(sqlite3@5.1.6):
- resolution: {integrity: sha512-pSBhKFzqr6mWoeIiGdcW2OQIWAyCoLn+G7VmXXLqxHvGm+9SaioKJaSMmaJa0xgS5v64r/MVLeH/nw87Q4KpyQ==}
+ /@adonisjs/lucid@20.1.0(@adonisjs/assembler@7.1.1)(@adonisjs/core@6.2.3)(luxon@3.4.4)(mysql@2.18.1)(pg@8.11.3)(sqlite3@5.1.7):
+ resolution: {integrity: sha512-0kCqagM5pvydFFUP5rcc7G+LI18pMNKBnzdYzavAz2jKgw3yclr4I70t9j20DiMJTjWwF0v2X9gFfHXjXSQ7aA==}
+ engines: {node: '>=18.16.0'}
peerDependencies:
- '@adonisjs/core': ^5.1.0
+ '@adonisjs/assembler': ^7.0.0
+ '@adonisjs/core': ^6.2.2
+ luxon: ^3.4.4
+ peerDependenciesMeta:
+ '@adonisjs/assembler':
+ optional: true
+ luxon:
+ optional: true
dependencies:
- '@adonisjs/core': 5.9.0
- '@faker-js/faker': 8.1.0
- '@poppinss/hooks': 5.0.3(@adonisjs/application@5.3.0)
- '@poppinss/utils': 5.0.0
+ '@adonisjs/assembler': 7.1.1(typescript@5.3.3)
+ '@adonisjs/core': 6.2.3(@adonisjs/assembler@7.1.1)(bcrypt@5.1.1)(edge.js@6.0.1)
+ '@adonisjs/presets': 2.2.4(@adonisjs/assembler@7.1.1)(@adonisjs/core@6.2.3)
+ '@faker-js/faker': 8.4.0
+ '@poppinss/hooks': 7.2.2
+ '@poppinss/macroable': 1.0.1
+ '@poppinss/utils': 6.7.2
fast-deep-equal: 3.1.3
igniculus: 1.5.0
- knex: 2.5.1(mysql@2.18.1)(pg@8.11.1)(sqlite3@5.1.6)
- knex-dynamic-connection: 3.1.0(mysql@2.18.1)(pg@8.11.1)(sqlite3@5.1.6)
- luxon: 3.3.0
- macroable: 7.0.2
+ kleur: 4.1.5
+ knex: 3.1.0(mysql@2.18.1)(pg@8.11.3)(sqlite3@5.1.7)
+ knex-dynamic-connection: 3.1.1(mysql@2.18.1)(pg@8.11.3)(sqlite3@5.1.7)
+ luxon: 3.4.4
pretty-hrtime: 1.0.3
qs: 6.11.2
- slash: 3.0.0
+ slash: 5.1.0
tarn: 3.0.2
transitivePeerDependencies:
- - '@adonisjs/application'
- better-sqlite3
- mysql
- mysql2
@@ -444,23 +518,28 @@ packages:
- tedious
dev: false
- /@adonisjs/mail@8.2.0(@adonisjs/core@5.9.0)(@adonisjs/view@6.2.0)(@types/luxon@3.3.1)(luxon@3.3.0)(moment@2.29.4):
- resolution: {integrity: sha512-gsmqj4akVnR3UFBotrfY517uWl9JC9CLiXdxMdtO76sq3p6GUUV1GlqL/m6lPurPTrT8a+EFe5CKBpLwIt84CQ==}
+ /@adonisjs/mail@9.2.0(@adonisjs/core@6.2.3)(@types/luxon@3.4.2)(@types/node@20.11.17)(edge.js@6.0.1)(luxon@3.4.4)(moment@2.30.1):
+ resolution: {integrity: sha512-TeZuB0VV3dDh4lPdHxvR9nxWFYkgjtRCURCT4mBMpa3Pxu0XtLwCs8s6jLYvt8k+L4pG2zHJttCrKNpM6hsrlw==}
+ engines: {node: '>=18.16.0'}
peerDependencies:
- '@adonisjs/core': ^5.1.0
- '@adonisjs/view': ^6.0.0
- dependencies:
- '@adonisjs/core': 5.9.0
- '@adonisjs/view': 6.2.0(@adonisjs/core@5.9.0)
- '@poppinss/colors': 3.0.3
- '@poppinss/manager': 5.0.2
- '@poppinss/utils': 4.0.4
- fastq: 1.15.0
- get-stream: 6.0.1
- got: 11.8.6
- ical-generator: 4.1.0(@types/luxon@3.3.1)(luxon@3.3.0)(moment@2.29.4)
- multi-part: 3.0.0
- nodemailer: 6.9.5
+ '@adonisjs/core': ^6.2.0
+ '@aws-sdk/client-ses': ^3.485.0
+ edge.js: ^6.0.1
+ peerDependenciesMeta:
+ '@aws-sdk/client-ses':
+ optional: true
+ dependencies:
+ '@adonisjs/core': 6.2.3(@adonisjs/assembler@7.1.1)(bcrypt@5.1.1)(edge.js@6.0.1)
+ '@poppinss/colors': 4.1.2
+ '@poppinss/macroable': 1.0.1
+ '@poppinss/utils': 6.7.2
+ '@types/nodemailer': 6.4.14
+ edge.js: 6.0.1
+ fastq: 1.17.1
+ formdata-node: 6.0.3
+ got: 14.2.0
+ ical-generator: 6.0.1(@types/luxon@3.4.2)(@types/node@20.11.17)(luxon@3.4.4)(moment@2.30.1)
+ nodemailer: 6.9.9
transitivePeerDependencies:
- '@touch4it/ical-timezones'
- '@types/luxon'
@@ -473,8548 +552,4286 @@ packages:
- rrule
dev: false
- /@adonisjs/profiler@6.0.9(@adonisjs/logger@4.1.5):
- resolution: {integrity: sha512-V1bJPPDTn05NzAKUEICnYtWi9fC8NownUToaqxVkWOUovYBO6ubt06qtH1Uv9zvUjB2PKHUn+ieDAOgyHle09A==}
- peerDependencies:
- '@adonisjs/logger': ^4.0.0
- dependencies:
- '@adonisjs/logger': 4.1.5
- '@poppinss/utils': 4.0.4
- jest-worker: 27.5.1
-
- /@adonisjs/repl@3.1.11(@adonisjs/core@5.9.0):
- resolution: {integrity: sha512-t4xN+G+fa/XeZ+7qHnFbTk1bri/4RIGdFDk1cq2SeZI3nfu3E8Ma62uQVc8U3AAroN51plzXVcUoQ/Iw8q1P+Q==}
+ /@adonisjs/presets@2.2.4(@adonisjs/assembler@7.1.1)(@adonisjs/core@6.2.3):
+ resolution: {integrity: sha512-bYciFKma/M2JkKR2bxg3A9/oNGGIXgGNLatgvGVSxCJvAZ5LRkcPsdCr+n0rruAmY/BedUrhAV4b82UyDVxBEg==}
peerDependencies:
- '@adonisjs/core': ^5.1.0
+ '@adonisjs/assembler': ^7.0.0
+ '@adonisjs/core': ^6.2.0
+ peerDependenciesMeta:
+ '@adonisjs/assembler':
+ optional: true
dependencies:
- '@adonisjs/core': 5.9.0
- '@poppinss/colors': 3.0.3
- node-repl-await: 0.1.2
- parse-imports: 0.0.5
- string-width: 4.2.3
+ '@adonisjs/assembler': 7.1.1(typescript@5.3.3)
+ '@adonisjs/core': 6.2.3(@adonisjs/assembler@7.1.1)(bcrypt@5.1.1)(edge.js@6.0.1)
+ '@poppinss/utils': 6.7.2
dev: false
- /@adonisjs/require-ts@2.0.13:
- resolution: {integrity: sha512-PyDvrGzriU9dJC/ZkP+aT/+5jKCMTWIlc6KivU/uSGX9L9+PF213nzAATS1PKEWP1G0GcWsnyhQW8QgMwuFS3A==}
- dependencies:
- '@poppinss/utils': 5.0.0
- debug: 4.3.4
- find-cache-dir: 3.3.2
- fs-extra: 10.1.0
- normalize-path: 3.0.0
- pirates: 4.0.6
- rev-hash: 3.0.0
- source-map-support: 0.5.21
- transitivePeerDependencies:
- - supports-color
+ /@adonisjs/prettier-config@1.2.1:
+ resolution: {integrity: sha512-lE9vJNKvknB+RO7uf11C2aT4nPjCxrP6IqPDjVu3HU7qy1VPY1e44SEsxdCOvOm7aFbv9hRV8ZN7sOl37Wa8ww==}
dev: true
- /@adonisjs/session@6.4.0(@adonisjs/core@5.9.0):
- resolution: {integrity: sha512-9yHS60lFpNBUX5/yB+0j+bXQDWqbaYJ1JelLCYtaKRa7B0NewvmPAmsNpHH8SrXE3XGaRyKOxrUGRcmSGg5mRA==}
+ /@adonisjs/repl@4.0.1:
+ resolution: {integrity: sha512-fgDRC5I8RBKHzsJPM4rRQF/OWI0K9cNihCIf4yHdqQt3mhFqWSOUjSi4sXWykdICLiddmyBO86au7i0d0dj5vQ==}
+ engines: {node: '>=18.16.0'}
+ dependencies:
+ '@poppinss/colors': 4.1.2
+ string-width: 7.1.0
+
+ /@adonisjs/session@7.1.1(@adonisjs/core@6.2.3)(edge.js@6.0.1):
+ resolution: {integrity: sha512-rv5lF6uEaAT3kujAEbwpVJuTfPcskjXlM8bt8OV2V6eGMQHGVczV3bErvQjW5ouHqyZiotKkCV2+7roGJdDaWw==}
+ engines: {node: '>=18.16.0'}
peerDependencies:
- '@adonisjs/core': ^5.8.0
+ '@adonisjs/core': ^6.2.0
+ '@adonisjs/redis': ^8.0.0
+ '@japa/api-client': ^2.0.2
+ '@japa/browser-client': ^2.0.2
+ edge.js: ^6.0.1
+ peerDependenciesMeta:
+ '@adonisjs/redis':
+ optional: true
+ '@japa/api-client':
+ optional: true
+ '@japa/browser-client':
+ optional: true
+ edge.js:
+ optional: true
dependencies:
- '@adonisjs/core': 5.9.0
- '@poppinss/utils': 4.0.4
- fs-extra: 10.1.0
- dev: false
+ '@adonisjs/core': 6.2.3(@adonisjs/assembler@7.1.1)(bcrypt@5.1.1)(edge.js@6.0.1)
+ '@poppinss/utils': 6.7.2
+ edge.js: 6.0.1
- /@adonisjs/shield@7.1.1(@adonisjs/core@5.9.0)(@adonisjs/session@6.4.0)(@adonisjs/view@6.2.0):
- resolution: {integrity: sha512-y1YzXwravcS/A1yxcyfSD/UrRi2+H9v0ntX9NgVhLYvBF5eHuPzQKgv9sICVjmj2z7n94HzcTAio0Rc32EX51Q==}
+ /@adonisjs/shield@8.1.1(@adonisjs/core@6.2.3)(@adonisjs/session@7.1.1)(edge.js@6.0.1):
+ resolution: {integrity: sha512-b/rIypxfG8HKPRvWYJo7qhvAlvYCFXn7/A7eb/QI/PQV4fMmW4iF9tAykxl5peu4WJCHCwXwR3Y6/j0VerQcmQ==}
+ engines: {node: '>=18.16.0'}
peerDependencies:
- '@adonisjs/core': ^5.7.0
- '@adonisjs/session': ^6.2.0
- '@adonisjs/view': ^6.1.0
+ '@adonisjs/core': ^6.2.0
+ '@adonisjs/i18n': ^2.0.0
+ '@adonisjs/session': ^7.0.0
+ '@japa/api-client': ^2.0.2
+ edge.js: ^6.0.1
peerDependenciesMeta:
- '@adonisjs/view':
+ '@adonisjs/i18n':
+ optional: true
+ '@japa/api-client':
+ optional: true
+ edge.js:
optional: true
dependencies:
- '@adonisjs/core': 5.9.0
- '@adonisjs/session': 6.4.0(@adonisjs/core@5.9.0)
- '@adonisjs/view': 6.2.0(@adonisjs/core@5.9.0)
- '@poppinss/utils': 4.0.4
+ '@adonisjs/core': 6.2.3(@adonisjs/assembler@7.1.1)(bcrypt@5.1.1)(edge.js@6.0.1)
+ '@adonisjs/session': 7.1.1(@adonisjs/core@6.2.3)(edge.js@6.0.1)
+ '@poppinss/utils': 6.7.2
csrf: 3.1.0
+ edge.js: 6.0.1
helmet-csp: 3.4.0
- dev: false
- /@adonisjs/sink@5.4.3(@adonisjs/application@5.3.0):
- resolution: {integrity: sha512-wmAft/tjHQLtjbDjntaVu3/cmeP+3tXKDaMeWjVf6Dz+tXaM9XNg2EVVSV41F3JDF4W1u9ich9mC+4wvWJDy5g==}
+ /@adonisjs/static@1.1.1(@adonisjs/core@6.2.3):
+ resolution: {integrity: sha512-Ukd2WB21/eajKLNQbaQ3Chxdqn7HyeHSO41J29oWc8DQFEhxxQIUGq0C1Kv5cJFY7PvZm9RAKMBi/2JC58LFWQ==}
+ engines: {node: '>=18.16.0'}
peerDependencies:
- '@adonisjs/application': ^5.0.0
- dependencies:
- '@adonisjs/application': 5.3.0
- '@poppinss/cliui': 3.0.5
- '@poppinss/prompts': 2.0.2
- '@poppinss/utils': 5.0.0
- cp-file: 9.1.0
- fs-extra: 10.1.0
- marked: 4.3.0
- marked-terminal: 5.2.0(marked@4.3.0)
- mrm-core: 7.1.13
- mustache: 4.2.0
- open: 8.4.2
+ '@adonisjs/core': ^6.2.0
+ dependencies:
+ '@adonisjs/core': 6.2.3(@adonisjs/assembler@7.1.1)(bcrypt@5.1.1)(edge.js@6.0.1)
+ serve-static: 1.15.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
+ /@adonisjs/tsconfig@1.2.1:
+ resolution: {integrity: sha512-N8zdNw/bC3ft64e7CGr/LfYDCumoWe3wwePEqq2LRTCjBN/ICyxywW6f60QHLr+q17yHMU6fRFDt0GuRLXtPSA==}
dev: true
- /@adonisjs/validator@12.5.0(@adonisjs/application@5.3.0)(@adonisjs/bodyparser@8.1.9)(@adonisjs/http-server@5.12.0):
- resolution: {integrity: sha512-88Lu+8OyS92A4mg0hE8AEjr8q9KmgZeR5obPGoAnCxBrptrsHHtKTQq242c+DbzuAWZzw5ZEX2dvv34PW/FmFw==}
+ /@adonisjs/validator@13.0.2(@adonisjs/core@6.2.3):
+ resolution: {integrity: sha512-gec1SiJP6Y/SUbm1Co6Z0kh9euUWZnEioWHKJ/XdoX31rTI6qoET1EYX/NGuzT6axsk/zBWmgENhMv/WwNwZ7Q==}
+ engines: {node: '>=18.16.0'}
peerDependencies:
- '@adonisjs/application': ^5.0.0
- '@adonisjs/bodyparser': ^8.0.0
- '@adonisjs/http-server': ^5.0.0
- dependencies:
- '@adonisjs/application': 5.3.0
- '@adonisjs/bodyparser': 8.1.9(@adonisjs/application@5.3.0)(@adonisjs/drive@2.3.0)(@adonisjs/http-server@5.12.0)
- '@adonisjs/http-server': 5.12.0(@adonisjs/application@5.3.0)(@adonisjs/encryption@4.0.8)
- '@poppinss/utils': 5.0.0
- '@types/luxon': 3.3.1
- '@types/validator': 13.11.2
- luxon: 3.4.3
- normalize-url: 6.1.0
+ '@adonisjs/core': ^6.2.0
+ dependencies:
+ '@adonisjs/core': 6.2.3(@adonisjs/assembler@7.1.1)(bcrypt@5.1.1)(edge.js@6.0.1)
+ '@poppinss/utils': 6.7.2
+ '@types/luxon': 3.4.2
+ '@types/validator': 13.11.8
+ luxon: 3.4.4
+ normalize-url: 8.0.0
tmp-cache: 1.1.0
validator: 13.11.0
-
- /@adonisjs/view@6.2.0(@adonisjs/core@5.9.0):
- resolution: {integrity: sha512-967f0fQ0QqdHIGh8qVdWoTHbfjB21gCh+SmCbuBWk1etpO0xTGgA2P1iDkBp/9Cd8BUTyhJX2TamKTsUP8FraA==}
- peerDependencies:
- '@adonisjs/core': ^5.7.0
- dependencies:
- '@adonisjs/core': 5.9.0
- edge-error: 2.0.8
- edge-supercharged: 3.1.1
- edge.js: 5.5.1
dev: false
- /@ampproject/remapping@2.2.1:
- resolution: {integrity: sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==}
- engines: {node: '>=6.0.0'}
- dependencies:
- '@jridgewell/gen-mapping': 0.3.3
- '@jridgewell/trace-mapping': 0.3.19
- dev: true
-
- /@apidevtools/json-schema-ref-parser@9.1.2:
- resolution: {integrity: sha512-r1w81DpR+KyRWd3f+rk6TNqMgedmAxZP5v5KWlXQWlgMUUtyEJch0DKEci1SorPMiSeM8XPl7MZ3miJ60JIpQg==}
+ /@adonisjs/vite@2.0.2(@adonisjs/core@6.2.3)(@adonisjs/shield@8.1.1)(edge.js@6.0.1)(vite@5.1.1):
+ resolution: {integrity: sha512-DBlJGZFPdfGGtwwp119LZgcXlG8oBIdzxA7nqXZdO7KoEcmZJ9QVYTyJHMc5aYxgbhUXcZtKegNcIrfxXCRwjw==}
+ engines: {node: '>=18.16.0'}
+ peerDependencies:
+ '@adonisjs/core': ^6.2.0
+ '@adonisjs/shield': ^8.0.0
+ edge.js: ^6.0.1
+ vite: ^5.0.11
+ peerDependenciesMeta:
+ '@adonisjs/shield':
+ optional: true
+ edge.js:
+ optional: true
+ vite:
+ optional: true
dependencies:
- '@jsdevtools/ono': 7.1.3
- '@types/json-schema': 7.0.13
- call-me-maybe: 1.0.2
- js-yaml: 4.1.0
- dev: true
-
- /@apidevtools/openapi-schemas@2.1.0:
- resolution: {integrity: sha512-Zc1AlqrJlX3SlpupFGpiLi2EbteyP7fXmUOGup6/DnkRgjP9bgMM/ag+n91rsv0U1Gpz0H3VILA/o3bW7Ua6BQ==}
- engines: {node: '>=10'}
- dev: true
-
- /@apidevtools/swagger-methods@3.0.2:
- resolution: {integrity: sha512-QAkD5kK2b1WfjDS/UQn/qQkbwF31uqRjPTrsCs5ZG9BQGAkjwvqGFjjPqAuzac/IYzpPtRzjCP1WrTuAIjMrXg==}
+ '@adonisjs/core': 6.2.3(@adonisjs/assembler@7.1.1)(bcrypt@5.1.1)(edge.js@6.0.1)
+ '@adonisjs/shield': 8.1.1(@adonisjs/core@6.2.3)(@adonisjs/session@7.1.1)(edge.js@6.0.1)
+ defu: 6.1.4
+ edge-error: 4.0.1
+ edge.js: 6.0.1
+ vite: 5.1.1(@types/node@20.11.17)
+ vite-plugin-restart: 0.4.0(vite@5.1.1)
dev: true
- /@apidevtools/swagger-parser@10.0.3(openapi-types@12.1.3):
- resolution: {integrity: sha512-sNiLY51vZOmSPFZA5TF35KZ2HbgYklQnTSDnkghamzLb3EkNtcQnrBQEj5AOCxHpTtXpqMCRM1CrmV2rG6nw4g==}
- peerDependencies:
- openapi-types: '>=7'
+ /@antfu/install-pkg@0.3.1:
+ resolution: {integrity: sha512-A3zWY9VeTPnxlMiZtsGHw2lSd3ghwvL8s9RiGOtqvDxhhFfZ781ynsGBa/iUnDJ5zBrmTFQrJDud3TGgRISaxw==}
dependencies:
- '@apidevtools/json-schema-ref-parser': 9.1.2
- '@apidevtools/openapi-schemas': 2.1.0
- '@apidevtools/swagger-methods': 3.0.2
- '@jsdevtools/ono': 7.1.3
- call-me-maybe: 1.0.2
- openapi-types: 12.1.3
- z-schema: 5.0.5
- dev: true
+ execa: 8.0.1
/@arr/every@1.0.1:
resolution: {integrity: sha512-UQFQ6SgyJ6LX42W8rHCs8KVc0JS0tzVL9ct4XYedJukskYVWTo49tNiMEK9C2HTyarbNiT/RVIRSY82vH+6sTg==}
engines: {node: '>=4'}
- /@babel/code-frame@7.22.13:
- resolution: {integrity: sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==}
+ /@babel/code-frame@7.23.5:
+ resolution: {integrity: sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA==}
engines: {node: '>=6.9.0'}
dependencies:
- '@babel/highlight': 7.22.20
+ '@babel/highlight': 7.23.4
chalk: 2.4.2
dev: true
- /@babel/compat-data@7.22.20:
- resolution: {integrity: sha512-BQYjKbpXjoXwFW5jGqiizJQQT/aC7pFm9Ok1OWssonuguICi264lbgMzRp2ZMmRSlfkX6DsWDDcsrctK8Rwfiw==}
+ /@babel/helper-validator-identifier@7.22.20:
+ resolution: {integrity: sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==}
engines: {node: '>=6.9.0'}
dev: true
- /@babel/core@7.23.0:
- resolution: {integrity: sha512-97z/ju/Jy1rZmDxybphrBuI+jtJjFVoz7Mr9yUQVVVi+DNZE333uFQeMOqcCIy1x3WYBIbWftUSLmbNXNT7qFQ==}
+ /@babel/highlight@7.23.4:
+ resolution: {integrity: sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==}
engines: {node: '>=6.9.0'}
dependencies:
- '@ampproject/remapping': 2.2.1
- '@babel/code-frame': 7.22.13
- '@babel/generator': 7.23.0
- '@babel/helper-compilation-targets': 7.22.15
- '@babel/helper-module-transforms': 7.23.0(@babel/core@7.23.0)
- '@babel/helpers': 7.23.1
- '@babel/parser': 7.23.0
- '@babel/template': 7.22.15
- '@babel/traverse': 7.23.0
- '@babel/types': 7.23.0
- convert-source-map: 2.0.0
- debug: 4.3.4
- gensync: 1.0.0-beta.2
- json5: 2.2.3
- semver: 6.3.1
- transitivePeerDependencies:
- - supports-color
+ '@babel/helper-validator-identifier': 7.22.20
+ chalk: 2.4.2
+ js-tokens: 4.0.0
dev: true
- /@babel/generator@7.23.0:
- resolution: {integrity: sha512-lN85QRR+5IbYrMWM6Y4pE/noaQtg4pNiqeNGX60eqOfo6gtEj6uw/JagelB8vVztSd7R6M5n1+PQkDbHbBRU4g==}
- engines: {node: '>=6.9.0'}
- dependencies:
- '@babel/types': 7.23.0
- '@jridgewell/gen-mapping': 0.3.3
- '@jridgewell/trace-mapping': 0.3.19
- jsesc: 2.5.2
- dev: true
+ /@colors/colors@1.5.0:
+ resolution: {integrity: sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==}
+ engines: {node: '>=0.1.90'}
+ requiresBuild: true
+ optional: true
- /@babel/helper-annotate-as-pure@7.22.5:
- resolution: {integrity: sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==}
- engines: {node: '>=6.9.0'}
+ /@cspotcode/source-map-support@0.8.1:
+ resolution: {integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==}
+ engines: {node: '>=12'}
dependencies:
- '@babel/types': 7.23.0
+ '@jridgewell/trace-mapping': 0.3.9
dev: true
- /@babel/helper-builder-binary-assignment-operator-visitor@7.22.15:
- resolution: {integrity: sha512-QkBXwGgaoC2GtGZRoma6kv7Szfv06khvhFav67ZExau2RaXzy8MpHSMO2PNoP2XtmQphJQRHFfg77Bq731Yizw==}
- engines: {node: '>=6.9.0'}
- dependencies:
- '@babel/types': 7.23.0
+ /@esbuild/aix-ppc64@0.19.12:
+ resolution: {integrity: sha512-bmoCYyWdEL3wDQIVbcyzRyeKLgk2WtWLTWz1ZIAZF/EGbNOwSA6ew3PftJ1PqMiOOGu0OyFMzG53L0zqIpPeNA==}
+ engines: {node: '>=12'}
+ cpu: [ppc64]
+ os: [aix]
+ requiresBuild: true
dev: true
+ optional: true
- /@babel/helper-compilation-targets@7.22.15:
- resolution: {integrity: sha512-y6EEzULok0Qvz8yyLkCvVX+02ic+By2UdOhylwUOvOn9dvYc9mKICJuuU1n1XBI02YWsNsnrY1kc6DVbjcXbtw==}
- engines: {node: '>=6.9.0'}
- dependencies:
- '@babel/compat-data': 7.22.20
- '@babel/helper-validator-option': 7.22.15
- browserslist: 4.22.1
- lru-cache: 5.1.1
- semver: 6.3.1
+ /@esbuild/android-arm64@0.19.12:
+ resolution: {integrity: sha512-P0UVNGIienjZv3f5zq0DP3Nt2IE/3plFzuaS96vihvD0Hd6H/q4WXUGpCxD/E8YrSXfNyRPbpTq+T8ZQioSuPA==}
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [android]
+ requiresBuild: true
dev: true
+ optional: true
- /@babel/helper-create-class-features-plugin@7.22.15(@babel/core@7.23.0):
- resolution: {integrity: sha512-jKkwA59IXcvSaiK2UN45kKwSC9o+KuoXsBDvHvU/7BecYIp8GQ2UwrVvFgJASUT+hBnwJx6MhvMCuMzwZZ7jlg==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0
- dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-annotate-as-pure': 7.22.5
- '@babel/helper-environment-visitor': 7.22.20
- '@babel/helper-function-name': 7.23.0
- '@babel/helper-member-expression-to-functions': 7.23.0
- '@babel/helper-optimise-call-expression': 7.22.5
- '@babel/helper-replace-supers': 7.22.20(@babel/core@7.23.0)
- '@babel/helper-skip-transparent-expression-wrappers': 7.22.5
- '@babel/helper-split-export-declaration': 7.22.6
- semver: 6.3.1
+ /@esbuild/android-arm@0.19.12:
+ resolution: {integrity: sha512-qg/Lj1mu3CdQlDEEiWrlC4eaPZ1KztwGJ9B6J+/6G+/4ewxJg7gqj8eVYWvao1bXrqGiW2rsBZFSX3q2lcW05w==}
+ engines: {node: '>=12'}
+ cpu: [arm]
+ os: [android]
+ requiresBuild: true
dev: true
+ optional: true
- /@babel/helper-create-regexp-features-plugin@7.22.15(@babel/core@7.23.0):
- resolution: {integrity: sha512-29FkPLFjn4TPEa3RE7GpW+qbE8tlsu3jntNYNfcGsc49LphF1PQIiD+vMZ1z1xVOKt+93khA9tc2JBs3kBjA7w==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0
- dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-annotate-as-pure': 7.22.5
- regexpu-core: 5.3.2
- semver: 6.3.1
+ /@esbuild/android-x64@0.19.12:
+ resolution: {integrity: sha512-3k7ZoUW6Q6YqhdhIaq/WZ7HwBpnFBlW905Fa4s4qWJyiNOgT1dOqDiVAQFwBH7gBRZr17gLrlFCRzF6jFh7Kew==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [android]
+ requiresBuild: true
dev: true
+ optional: true
- /@babel/helper-define-polyfill-provider@0.4.2(@babel/core@7.23.0):
- resolution: {integrity: sha512-k0qnnOqHn5dK9pZpfD5XXZ9SojAITdCKRn2Lp6rnDGzIbaP0rHyMPk/4wsSxVBVz4RfN0q6VpXWP2pDGIoQ7hw==}
- peerDependencies:
- '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0
- dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-compilation-targets': 7.22.15
- '@babel/helper-plugin-utils': 7.22.5
- debug: 4.3.4
- lodash.debounce: 4.0.8
- resolve: 1.22.6
- transitivePeerDependencies:
- - supports-color
+ /@esbuild/darwin-arm64@0.19.12:
+ resolution: {integrity: sha512-B6IeSgZgtEzGC42jsI+YYu9Z3HKRxp8ZT3cqhvliEHovq8HSX2YX8lNocDn79gCKJXOSaEot9MVYky7AKjCs8g==}
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [darwin]
+ requiresBuild: true
dev: true
+ optional: true
- /@babel/helper-environment-visitor@7.22.20:
- resolution: {integrity: sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==}
- engines: {node: '>=6.9.0'}
+ /@esbuild/darwin-x64@0.19.12:
+ resolution: {integrity: sha512-hKoVkKzFiToTgn+41qGhsUJXFlIjxI/jSYeZf3ugemDYZldIXIxhvwN6erJGlX4t5h417iFuheZ7l+YVn05N3A==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [darwin]
+ requiresBuild: true
dev: true
+ optional: true
- /@babel/helper-function-name@7.23.0:
- resolution: {integrity: sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==}
- engines: {node: '>=6.9.0'}
- dependencies:
- '@babel/template': 7.22.15
- '@babel/types': 7.23.0
+ /@esbuild/freebsd-arm64@0.19.12:
+ resolution: {integrity: sha512-4aRvFIXmwAcDBw9AueDQ2YnGmz5L6obe5kmPT8Vd+/+x/JMVKCgdcRwH6APrbpNXsPz+K653Qg8HB/oXvXVukA==}
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [freebsd]
+ requiresBuild: true
dev: true
+ optional: true
- /@babel/helper-hoist-variables@7.22.5:
- resolution: {integrity: sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==}
- engines: {node: '>=6.9.0'}
- dependencies:
- '@babel/types': 7.23.0
+ /@esbuild/freebsd-x64@0.19.12:
+ resolution: {integrity: sha512-EYoXZ4d8xtBoVN7CEwWY2IN4ho76xjYXqSXMNccFSx2lgqOG/1TBPW0yPx1bJZk94qu3tX0fycJeeQsKovA8gg==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [freebsd]
+ requiresBuild: true
dev: true
+ optional: true
- /@babel/helper-member-expression-to-functions@7.23.0:
- resolution: {integrity: sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA==}
- engines: {node: '>=6.9.0'}
- dependencies:
- '@babel/types': 7.23.0
+ /@esbuild/linux-arm64@0.19.12:
+ resolution: {integrity: sha512-EoTjyYyLuVPfdPLsGVVVC8a0p1BFFvtpQDB/YLEhaXyf/5bczaGeN15QkR+O4S5LeJ92Tqotve7i1jn35qwvdA==}
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [linux]
+ requiresBuild: true
dev: true
+ optional: true
- /@babel/helper-module-imports@7.22.15:
- resolution: {integrity: sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==}
- engines: {node: '>=6.9.0'}
- dependencies:
- '@babel/types': 7.23.0
+ /@esbuild/linux-arm@0.19.12:
+ resolution: {integrity: sha512-J5jPms//KhSNv+LO1S1TX1UWp1ucM6N6XuL6ITdKWElCu8wXP72l9MM0zDTzzeikVyqFE6U8YAV9/tFyj0ti+w==}
+ engines: {node: '>=12'}
+ cpu: [arm]
+ os: [linux]
+ requiresBuild: true
dev: true
+ optional: true
- /@babel/helper-module-transforms@7.23.0(@babel/core@7.23.0):
- resolution: {integrity: sha512-WhDWw1tdrlT0gMgUJSlX0IQvoO1eN279zrAUbVB+KpV2c3Tylz8+GnKOLllCS6Z/iZQEyVYxhZVUdPTqs2YYPw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0
- dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-environment-visitor': 7.22.20
- '@babel/helper-module-imports': 7.22.15
- '@babel/helper-simple-access': 7.22.5
- '@babel/helper-split-export-declaration': 7.22.6
- '@babel/helper-validator-identifier': 7.22.20
+ /@esbuild/linux-ia32@0.19.12:
+ resolution: {integrity: sha512-Thsa42rrP1+UIGaWz47uydHSBOgTUnwBwNq59khgIwktK6x60Hivfbux9iNR0eHCHzOLjLMLfUMLCypBkZXMHA==}
+ engines: {node: '>=12'}
+ cpu: [ia32]
+ os: [linux]
+ requiresBuild: true
dev: true
+ optional: true
- /@babel/helper-optimise-call-expression@7.22.5:
- resolution: {integrity: sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==}
- engines: {node: '>=6.9.0'}
- dependencies:
- '@babel/types': 7.23.0
+ /@esbuild/linux-loong64@0.19.12:
+ resolution: {integrity: sha512-LiXdXA0s3IqRRjm6rV6XaWATScKAXjI4R4LoDlvO7+yQqFdlr1Bax62sRwkVvRIrwXxvtYEHHI4dm50jAXkuAA==}
+ engines: {node: '>=12'}
+ cpu: [loong64]
+ os: [linux]
+ requiresBuild: true
dev: true
+ optional: true
- /@babel/helper-plugin-utils@7.22.5:
- resolution: {integrity: sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==}
- engines: {node: '>=6.9.0'}
+ /@esbuild/linux-mips64el@0.19.12:
+ resolution: {integrity: sha512-fEnAuj5VGTanfJ07ff0gOA6IPsvrVHLVb6Lyd1g2/ed67oU1eFzL0r9WL7ZzscD+/N6i3dWumGE1Un4f7Amf+w==}
+ engines: {node: '>=12'}
+ cpu: [mips64el]
+ os: [linux]
+ requiresBuild: true
dev: true
+ optional: true
- /@babel/helper-remap-async-to-generator@7.22.20(@babel/core@7.23.0):
- resolution: {integrity: sha512-pBGyV4uBqOns+0UvhsTO8qgl8hO89PmiDYv+/COyp1aeMcmfrfruz+/nCMFiYyFF/Knn0yfrC85ZzNFjembFTw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0
- dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-annotate-as-pure': 7.22.5
- '@babel/helper-environment-visitor': 7.22.20
- '@babel/helper-wrap-function': 7.22.20
+ /@esbuild/linux-ppc64@0.19.12:
+ resolution: {integrity: sha512-nYJA2/QPimDQOh1rKWedNOe3Gfc8PabU7HT3iXWtNUbRzXS9+vgB0Fjaqr//XNbd82mCxHzik2qotuI89cfixg==}
+ engines: {node: '>=12'}
+ cpu: [ppc64]
+ os: [linux]
+ requiresBuild: true
dev: true
+ optional: true
- /@babel/helper-replace-supers@7.22.20(@babel/core@7.23.0):
- resolution: {integrity: sha512-qsW0In3dbwQUbK8kejJ4R7IHVGwHJlV6lpG6UA7a9hSa2YEiAib+N1T2kr6PEeUT+Fl7najmSOS6SmAwCHK6Tw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0
- dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-environment-visitor': 7.22.20
- '@babel/helper-member-expression-to-functions': 7.23.0
- '@babel/helper-optimise-call-expression': 7.22.5
+ /@esbuild/linux-riscv64@0.19.12:
+ resolution: {integrity: sha512-2MueBrlPQCw5dVJJpQdUYgeqIzDQgw3QtiAHUC4RBz9FXPrskyyU3VI1hw7C0BSKB9OduwSJ79FTCqtGMWqJHg==}
+ engines: {node: '>=12'}
+ cpu: [riscv64]
+ os: [linux]
+ requiresBuild: true
dev: true
+ optional: true
- /@babel/helper-simple-access@7.22.5:
- resolution: {integrity: sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==}
- engines: {node: '>=6.9.0'}
- dependencies:
- '@babel/types': 7.23.0
+ /@esbuild/linux-s390x@0.19.12:
+ resolution: {integrity: sha512-+Pil1Nv3Umes4m3AZKqA2anfhJiVmNCYkPchwFJNEJN5QxmTs1uzyy4TvmDrCRNT2ApwSari7ZIgrPeUx4UZDg==}
+ engines: {node: '>=12'}
+ cpu: [s390x]
+ os: [linux]
+ requiresBuild: true
dev: true
+ optional: true
- /@babel/helper-skip-transparent-expression-wrappers@7.22.5:
- resolution: {integrity: sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q==}
- engines: {node: '>=6.9.0'}
- dependencies:
- '@babel/types': 7.23.0
+ /@esbuild/linux-x64@0.19.12:
+ resolution: {integrity: sha512-B71g1QpxfwBvNrfyJdVDexenDIt1CiDN1TIXLbhOw0KhJzE78KIFGX6OJ9MrtC0oOqMWf+0xop4qEU8JrJTwCg==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [linux]
+ requiresBuild: true
dev: true
+ optional: true
- /@babel/helper-split-export-declaration@7.22.6:
- resolution: {integrity: sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==}
- engines: {node: '>=6.9.0'}
- dependencies:
- '@babel/types': 7.23.0
+ /@esbuild/netbsd-x64@0.19.12:
+ resolution: {integrity: sha512-3ltjQ7n1owJgFbuC61Oj++XhtzmymoCihNFgT84UAmJnxJfm4sYCiSLTXZtE00VWYpPMYc+ZQmB6xbSdVh0JWA==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [netbsd]
+ requiresBuild: true
dev: true
+ optional: true
- /@babel/helper-string-parser@7.22.5:
- resolution: {integrity: sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==}
- engines: {node: '>=6.9.0'}
+ /@esbuild/openbsd-x64@0.19.12:
+ resolution: {integrity: sha512-RbrfTB9SWsr0kWmb9srfF+L933uMDdu9BIzdA7os2t0TXhCRjrQyCeOt6wVxr79CKD4c+p+YhCj31HBkYcXebw==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [openbsd]
+ requiresBuild: true
dev: true
+ optional: true
- /@babel/helper-validator-identifier@7.22.20:
- resolution: {integrity: sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==}
- engines: {node: '>=6.9.0'}
+ /@esbuild/sunos-x64@0.19.12:
+ resolution: {integrity: sha512-HKjJwRrW8uWtCQnQOz9qcU3mUZhTUQvi56Q8DPTLLB+DawoiQdjsYq+j+D3s9I8VFtDr+F9CjgXKKC4ss89IeA==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [sunos]
+ requiresBuild: true
dev: true
+ optional: true
- /@babel/helper-validator-option@7.22.15:
- resolution: {integrity: sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA==}
- engines: {node: '>=6.9.0'}
+ /@esbuild/win32-arm64@0.19.12:
+ resolution: {integrity: sha512-URgtR1dJnmGvX864pn1B2YUYNzjmXkuJOIqG2HdU62MVS4EHpU2946OZoTMnRUHklGtJdJZ33QfzdjGACXhn1A==}
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [win32]
+ requiresBuild: true
dev: true
+ optional: true
- /@babel/helper-wrap-function@7.22.20:
- resolution: {integrity: sha512-pms/UwkOpnQe/PDAEdV/d7dVCoBbB+R4FvYoHGZz+4VPcg7RtYy2KP7S2lbuWM6FCSgob5wshfGESbC/hzNXZw==}
- engines: {node: '>=6.9.0'}
- dependencies:
- '@babel/helper-function-name': 7.23.0
- '@babel/template': 7.22.15
- '@babel/types': 7.23.0
+ /@esbuild/win32-ia32@0.19.12:
+ resolution: {integrity: sha512-+ZOE6pUkMOJfmxmBZElNOx72NKpIa/HFOMGzu8fqzQJ5kgf6aTGrcJaFsNiVMH4JKpMipyK+7k0n2UXN7a8YKQ==}
+ engines: {node: '>=12'}
+ cpu: [ia32]
+ os: [win32]
+ requiresBuild: true
dev: true
+ optional: true
- /@babel/helpers@7.23.1:
- resolution: {integrity: sha512-chNpneuK18yW5Oxsr+t553UZzzAs3aZnFm4bxhebsNTeshrC95yA7l5yl7GBAG+JG1rF0F7zzD2EixK9mWSDoA==}
- engines: {node: '>=6.9.0'}
- dependencies:
- '@babel/template': 7.22.15
- '@babel/traverse': 7.23.0
- '@babel/types': 7.23.0
- transitivePeerDependencies:
- - supports-color
+ /@esbuild/win32-x64@0.19.12:
+ resolution: {integrity: sha512-T1QyPSDCyMXaO3pzBkF96E8xMkiRYbUEZADd29SyPGabqxMViNoii+NcK7eWJAEoU6RZyEm5lVSIjTmcdoB9HA==}
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [win32]
+ requiresBuild: true
dev: true
+ optional: true
- /@babel/highlight@7.22.20:
- resolution: {integrity: sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg==}
- engines: {node: '>=6.9.0'}
+ /@eslint-community/eslint-utils@4.4.0(eslint@8.56.0):
+ resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ peerDependencies:
+ eslint: ^6.0.0 || ^7.0.0 || >=8.0.0
dependencies:
- '@babel/helper-validator-identifier': 7.22.20
- chalk: 2.4.2
- js-tokens: 4.0.0
+ eslint: 8.56.0
+ eslint-visitor-keys: 3.4.3
dev: true
- /@babel/parser@7.23.0:
- resolution: {integrity: sha512-vvPKKdMemU85V9WE/l5wZEmImpCtLqbnTvqDS2U1fJ96KrxoW7KrXhNsNCblQlg8Ck4b85yxdTyelsMUgFUXiw==}
- engines: {node: '>=6.0.0'}
- hasBin: true
- dependencies:
- '@babel/types': 7.23.0
+ /@eslint-community/regexpp@4.10.0:
+ resolution: {integrity: sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==}
+ engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0}
dev: true
- /@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.22.15(@babel/core@7.23.0):
- resolution: {integrity: sha512-FB9iYlz7rURmRJyXRKEnalYPPdn87H5no108cyuQQyMwlpJ2SJtpIUBI27kdTin956pz+LPypkPVPUTlxOmrsg==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0
+ /@eslint/eslintrc@2.1.4:
+ resolution: {integrity: sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-plugin-utils': 7.22.5
+ ajv: 6.12.6
+ debug: 4.3.4
+ espree: 9.6.1
+ globals: 13.22.0
+ ignore: 5.3.1
+ import-fresh: 3.3.0
+ js-yaml: 4.1.0
+ minimatch: 3.1.2
+ strip-json-comments: 3.1.1
+ transitivePeerDependencies:
+ - supports-color
dev: true
- /@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.22.15(@babel/core@7.23.0):
- resolution: {integrity: sha512-Hyph9LseGvAeeXzikV88bczhsrLrIZqDPxO+sSmAunMPaGrBGhfMWzCPYTtiW9t+HzSE2wtV8e5cc5P6r1xMDQ==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.13.0
- dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-plugin-utils': 7.22.5
- '@babel/helper-skip-transparent-expression-wrappers': 7.22.5
- '@babel/plugin-transform-optional-chaining': 7.23.0(@babel/core@7.23.0)
+ /@eslint/js@8.56.0:
+ resolution: {integrity: sha512-gMsVel9D7f2HLkBma9VbtzZRehRogVRfbr++f06nL2vnCGCNlzOD+/MUov/F4p8myyAHspEhVobgjpX64q5m6A==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
dev: true
- /@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2(@babel/core@7.23.0):
- resolution: {integrity: sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
- dependencies:
- '@babel/core': 7.23.0
- dev: true
+ /@faker-js/faker@8.4.0:
+ resolution: {integrity: sha512-htW87352wzUCdX1jyUQocUcmAaFqcR/w082EC8iP/gtkF0K+aKcBp0hR5Arb7dzR8tQ1TrhE9DNa5EbJELm84w==}
+ engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0, npm: '>=6.14.13'}
+ dev: false
- /@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.23.0):
- resolution: {integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==}
- peerDependencies:
- '@babel/core': ^7.0.0-0
- dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-plugin-utils': 7.22.5
- dev: true
+ /@gar/promisify@1.1.3:
+ resolution: {integrity: sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==}
+ requiresBuild: true
+ dev: false
+ optional: true
- /@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.23.0):
- resolution: {integrity: sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==}
- peerDependencies:
- '@babel/core': ^7.0.0-0
+ /@humanwhocodes/config-array@0.11.14:
+ resolution: {integrity: sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==}
+ engines: {node: '>=10.10.0'}
dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-plugin-utils': 7.22.5
+ '@humanwhocodes/object-schema': 2.0.2
+ debug: 4.3.4
+ minimatch: 3.1.2
+ transitivePeerDependencies:
+ - supports-color
dev: true
- /@babel/plugin-syntax-class-static-block@7.14.5(@babel/core@7.23.0):
- resolution: {integrity: sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
- dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-plugin-utils': 7.22.5
+ /@humanwhocodes/module-importer@1.0.1:
+ resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==}
+ engines: {node: '>=12.22'}
dev: true
- /@babel/plugin-syntax-dynamic-import@7.8.3(@babel/core@7.23.0):
- resolution: {integrity: sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==}
- peerDependencies:
- '@babel/core': ^7.0.0-0
- dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-plugin-utils': 7.22.5
+ /@humanwhocodes/object-schema@2.0.2:
+ resolution: {integrity: sha512-6EwiSjwWYP7pTckG6I5eyFANjPhmPjUX9JRLUSfNPC7FX7zK9gyZAfUEaECL6ALTpGX5AjnBq3C9XmVWPitNpw==}
dev: true
- /@babel/plugin-syntax-export-namespace-from@7.8.3(@babel/core@7.23.0):
- resolution: {integrity: sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==}
- peerDependencies:
- '@babel/core': ^7.0.0-0
+ /@japa/core@9.0.0:
+ resolution: {integrity: sha512-BQiS8rd1qiSkz+uTsx+Bfsp+FVeoKpJXMtUse4XDt2cUfDdCnvYkvRnqmR/F/u8ttt71sZ4mHKizGa1Q5MG3DQ==}
+ engines: {node: '>=18.16.0'}
dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-plugin-utils': 7.22.5
- dev: true
+ '@poppinss/cliui': 6.3.0
+ '@poppinss/hooks': 7.2.2
+ '@poppinss/macroable': 1.0.1
+ async-retry: 1.3.3
+ emittery: 1.0.2
+ string-width: 7.1.0
+ time-span: 5.1.0
- /@babel/plugin-syntax-import-assertions@7.22.5(@babel/core@7.23.0):
- resolution: {integrity: sha512-rdV97N7KqsRzeNGoWUOK6yUsWarLjE5Su/Snk9IYPU9CwkWHs4t+rTGOvffTR8XGkJMTAdLfO0xVnXm8wugIJg==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
+ /@japa/errors-printer@3.0.2:
+ resolution: {integrity: sha512-8U4d8umhyg3YNAzQaJoHSULjFdEp/c+xGBwZgpMgIIYvhy3NKU0KvE3TfVAjfKcO8zaLuvh72NlnLSfyP3ooqw==}
+ engines: {node: '>=18.16.0'}
dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-plugin-utils': 7.22.5
- dev: true
-
- /@babel/plugin-syntax-import-attributes@7.22.5(@babel/core@7.23.0):
- resolution: {integrity: sha512-KwvoWDeNKPETmozyFE0P2rOLqh39EoQHNjqizrI5B8Vt0ZNS7M56s7dAiAqbYfiAYOuIzIh96z3iR2ktgu3tEg==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
+ '@poppinss/colors': 4.1.2
+ jest-diff: 29.7.0
+ youch: 3.3.3
+ youch-terminal: 2.2.3
+
+ /@japa/plugin-adonisjs@3.0.0(@adonisjs/core@6.2.3)(@japa/runner@3.1.1):
+ resolution: {integrity: sha512-gw92tnOlNeVuZoI/ysX/AW9AZdACd5cm50Jpa+dUPQ7VJU7J7PQCNGhp3FF98h7czdGvw8KJvszr/grr3SENEA==}
+ engines: {node: '>=18.16.0'}
+ peerDependencies:
+ '@adonisjs/core': ^6.2.0
+ '@japa/api-client': ^2.0.2
+ '@japa/browser-client': ^2.0.2
+ '@japa/runner': ^3.1.1
+ playwright: ^1.40.1
+ peerDependenciesMeta:
+ '@japa/api-client':
+ optional: true
+ '@japa/browser-client':
+ optional: true
+ playwright:
+ optional: true
dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-plugin-utils': 7.22.5
- dev: true
+ '@adonisjs/core': 6.2.3(@adonisjs/assembler@7.1.1)(bcrypt@5.1.1)(edge.js@6.0.1)
+ '@japa/runner': 3.1.1
- /@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.23.0):
- resolution: {integrity: sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==}
- peerDependencies:
- '@babel/core': ^7.0.0-0
+ /@japa/runner@3.1.1:
+ resolution: {integrity: sha512-DWy16uw2naDMitXGNN0ULURLaVIQY/VBVtxw7rpdA8QL1Q2nCaaqJXufHqS8kO1ZRd0bOtFHMgx2/eYvxkmapA==}
+ engines: {node: '>=18.16.0'}
dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-plugin-utils': 7.22.5
- dev: true
+ '@japa/core': 9.0.0
+ '@japa/errors-printer': 3.0.2
+ '@poppinss/colors': 4.1.2
+ '@poppinss/hooks': 7.2.2
+ fast-glob: 3.3.2
+ find-cache-dir: 5.0.0
+ getopts: 2.3.0
+ ms: 2.1.3
+ serialize-error: 11.0.3
+ slash: 5.1.0
- /@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.23.0):
- resolution: {integrity: sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==}
- peerDependencies:
- '@babel/core': ^7.0.0-0
+ /@jest/schemas@29.6.3:
+ resolution: {integrity: sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==}
+ engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-plugin-utils': 7.22.5
- dev: true
+ '@sinclair/typebox': 0.27.8
- /@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.23.0):
- resolution: {integrity: sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==}
- peerDependencies:
- '@babel/core': ^7.0.0-0
- dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-plugin-utils': 7.22.5
+ /@jridgewell/resolve-uri@3.1.1:
+ resolution: {integrity: sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==}
+ engines: {node: '>=6.0.0'}
dev: true
- /@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.23.0):
- resolution: {integrity: sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==}
- peerDependencies:
- '@babel/core': ^7.0.0-0
- dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-plugin-utils': 7.22.5
+ /@jridgewell/sourcemap-codec@1.4.15:
+ resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==}
dev: true
- /@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.23.0):
- resolution: {integrity: sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==}
- peerDependencies:
- '@babel/core': ^7.0.0-0
+ /@jridgewell/trace-mapping@0.3.9:
+ resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==}
dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-plugin-utils': 7.22.5
+ '@jridgewell/resolve-uri': 3.1.1
+ '@jridgewell/sourcemap-codec': 1.4.15
dev: true
- /@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.23.0):
- resolution: {integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==}
- peerDependencies:
- '@babel/core': ^7.0.0-0
- dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-plugin-utils': 7.22.5
- dev: true
+ /@lukeed/ms@2.0.2:
+ resolution: {integrity: sha512-9I2Zn6+NJLfaGoz9jN3lpwDgAYvfGeNYdbAIjJOqzs4Tpc+VU3Jqq4IofSUBKajiDS8k9fZIg18/z13mpk1bsA==}
+ engines: {node: '>=8'}
- /@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.23.0):
- resolution: {integrity: sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==}
- peerDependencies:
- '@babel/core': ^7.0.0-0
+ /@mapbox/node-pre-gyp@1.0.11:
+ resolution: {integrity: sha512-Yhlar6v9WQgUp/He7BdgzOz8lqMQ8sU+jkCq7Wx8Myc5YFJLbEe7lgui/V7G1qB1DJykHSGwreceSaD60Y0PUQ==}
+ hasBin: true
dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-plugin-utils': 7.22.5
- dev: true
+ detect-libc: 2.0.2
+ https-proxy-agent: 5.0.1
+ make-dir: 3.1.0
+ node-fetch: 2.7.0
+ nopt: 5.0.0
+ npmlog: 5.0.1
+ rimraf: 3.0.2
+ semver: 7.6.0
+ tar: 6.2.0
+ transitivePeerDependencies:
+ - encoding
+ - supports-color
- /@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.23.0):
- resolution: {integrity: sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==}
- peerDependencies:
- '@babel/core': ^7.0.0-0
- dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-plugin-utils': 7.22.5
- dev: true
+ /@noble/hashes@1.3.3:
+ resolution: {integrity: sha512-V7/fPHgl+jsVPXqqeOzT8egNj2iBIVt+ECeMMG8TdcnTikP3oaBtUVqpT/gYCR68aEBJSF+XbYUxStjbFMqIIA==}
+ engines: {node: '>= 16'}
- /@babel/plugin-syntax-private-property-in-object@7.14.5(@babel/core@7.23.0):
- resolution: {integrity: sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
+ /@nodelib/fs.scandir@2.1.5:
+ resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==}
+ engines: {node: '>= 8'}
dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-plugin-utils': 7.22.5
- dev: true
+ '@nodelib/fs.stat': 2.0.5
+ run-parallel: 1.2.0
- /@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.23.0):
- resolution: {integrity: sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
- dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-plugin-utils': 7.22.5
- dev: true
+ /@nodelib/fs.stat@2.0.5:
+ resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==}
+ engines: {node: '>= 8'}
- /@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.23.0):
- resolution: {integrity: sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0
+ /@nodelib/fs.walk@1.2.8:
+ resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==}
+ engines: {node: '>= 8'}
dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.0)
- '@babel/helper-plugin-utils': 7.22.5
- dev: true
+ '@nodelib/fs.scandir': 2.1.5
+ fastq: 1.17.1
- /@babel/plugin-transform-arrow-functions@7.22.5(@babel/core@7.23.0):
- resolution: {integrity: sha512-26lTNXoVRdAnsaDXPpvCNUq+OVWEVC6bx7Vvz9rC53F2bagUWW4u4ii2+h8Fejfh7RYqPxn+libeFBBck9muEw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
+ /@npmcli/fs@1.1.1:
+ resolution: {integrity: sha512-8KG5RD0GVP4ydEzRn/I4BNDuxDtqVbOdm8675T49OIG/NGhaK0pjPX7ZcDlvKYbA+ulvVK3ztfcF4uBdOxuJbQ==}
+ requiresBuild: true
dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-plugin-utils': 7.22.5
- dev: true
+ '@gar/promisify': 1.1.3
+ semver: 7.6.0
+ dev: false
+ optional: true
- /@babel/plugin-transform-async-generator-functions@7.22.15(@babel/core@7.23.0):
- resolution: {integrity: sha512-jBm1Es25Y+tVoTi5rfd5t1KLmL8ogLKpXszboWOTTtGFGz2RKnQe2yn7HbZ+kb/B8N0FVSGQo874NSlOU1T4+w==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
+ /@npmcli/move-file@1.1.2:
+ resolution: {integrity: sha512-1SUf/Cg2GzGDyaf15aR9St9TWlb+XvbZXWpDx8YKs7MLzMH/BCeopv+y9vzrzgkfykCGuWOlSu3mZhj2+FQcrg==}
+ engines: {node: '>=10'}
+ deprecated: This functionality has been moved to @npmcli/fs
+ requiresBuild: true
dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-environment-visitor': 7.22.20
- '@babel/helper-plugin-utils': 7.22.5
- '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.23.0)
- '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.23.0)
- dev: true
+ mkdirp: 1.0.4
+ rimraf: 3.0.2
+ dev: false
+ optional: true
- /@babel/plugin-transform-async-to-generator@7.22.5(@babel/core@7.23.0):
- resolution: {integrity: sha512-b1A8D8ZzE/VhNDoV1MSJTnpKkCG5bJo+19R4o4oy03zM7ws8yEMK755j61Dc3EyvdysbqH5BOOTquJ7ZX9C6vQ==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
+ /@paralleldrive/cuid2@2.2.2:
+ resolution: {integrity: sha512-ZOBkgDwEdoYVlSeRbYYXs0S9MejQofiVYoTbKzy/6GQa39/q5tQU2IX46+shYnUkpEl3wc+J6wRlar7r2EK2xA==}
dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-module-imports': 7.22.15
- '@babel/helper-plugin-utils': 7.22.5
- '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.23.0)
- dev: true
+ '@noble/hashes': 1.3.3
- /@babel/plugin-transform-block-scoped-functions@7.22.5(@babel/core@7.23.0):
- resolution: {integrity: sha512-tdXZ2UdknEKQWKJP1KMNmuF5Lx3MymtMN/pvA+p/VEkhK8jVcQ1fzSy8KM9qRYhAf2/lV33hoMPKI/xaI9sADA==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
- dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-plugin-utils': 7.22.5
- dev: true
+ /@phc/format@1.0.0:
+ resolution: {integrity: sha512-m7X9U6BG2+J+R1lSOdCiITLLrxm+cWlNI3HUFA92oLO77ObGNzaKdh8pMLqdZcshtkKuV84olNNXDfMc4FezBQ==}
+ engines: {node: '>=10'}
- /@babel/plugin-transform-block-scoping@7.23.0(@babel/core@7.23.0):
- resolution: {integrity: sha512-cOsrbmIOXmf+5YbL99/S49Y3j46k/T16b9ml8bm9lP6N9US5iQ2yBK7gpui1pg0V/WMcXdkfKbTb7HXq9u+v4g==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
- dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-plugin-utils': 7.22.5
+ /@pkgr/core@0.1.1:
+ resolution: {integrity: sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA==}
+ engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0}
dev: true
- /@babel/plugin-transform-class-properties@7.22.5(@babel/core@7.23.0):
- resolution: {integrity: sha512-nDkQ0NfkOhPTq8YCLiWNxp1+f9fCobEjCb0n8WdbNUBc4IB5V7P1QnX9IjpSoquKrXF5SKojHleVNs2vGeHCHQ==}
- engines: {node: '>=6.9.0'}
+ /@poppinss/chokidar-ts@4.1.3(typescript@5.3.3):
+ resolution: {integrity: sha512-v5Tx0mxt1fX6+acYKm1ZUhFMlGdcKgO1C8wSPRO/X44LjE0PduHGDDq6ePBrMDyg+EKnUUt3DcU9APRri7zEcA==}
+ engines: {node: '>=18.16.0'}
peerDependencies:
- '@babel/core': ^7.0.0-0
+ typescript: ^4.0.0 || ^5.0.0
dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-create-class-features-plugin': 7.22.15(@babel/core@7.23.0)
- '@babel/helper-plugin-utils': 7.22.5
- dev: true
+ chokidar: 3.5.3
+ emittery: 1.0.2
+ memoize: 10.0.0
+ picomatch: 3.0.1
+ slash: 5.1.0
+ typescript: 5.3.3
- /@babel/plugin-transform-class-static-block@7.22.11(@babel/core@7.23.0):
- resolution: {integrity: sha512-GMM8gGmqI7guS/llMFk1bJDkKfn3v3C4KHK9Yg1ey5qcHcOlKb0QvcMrgzvxo+T03/4szNh5lghY+fEC98Kq9g==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.12.0
+ /@poppinss/cliui@6.3.0:
+ resolution: {integrity: sha512-GEu/IsJ9SanzAGa9NaHsHneumwlScLfhBJHU8uYcB6GyaTvQQg38OuiGnn5U95Wk3a/roUOSsrEVU1bnVvYtoQ==}
+ engines: {node: '>=18.16.0'}
dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-create-class-features-plugin': 7.22.15(@babel/core@7.23.0)
- '@babel/helper-plugin-utils': 7.22.5
- '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.23.0)
- dev: true
+ '@poppinss/colors': 4.1.2
+ cli-boxes: 3.0.0
+ cli-table3: 0.6.3
+ cli-truncate: 4.0.0
+ log-update: 6.0.0
+ pretty-hrtime: 1.0.3
+ string-width: 7.1.0
+ supports-color: 9.4.0
+ terminal-size: 4.0.0
+ wordwrap: 1.0.0
- /@babel/plugin-transform-classes@7.22.15(@babel/core@7.23.0):
- resolution: {integrity: sha512-VbbC3PGjBdE0wAWDdHM9G8Gm977pnYI0XpqMd6LrKISj8/DJXEsWqgRuTYaNE9Bv0JGhTZUzHDlMk18IpOuoqw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
- dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-annotate-as-pure': 7.22.5
- '@babel/helper-compilation-targets': 7.22.15
- '@babel/helper-environment-visitor': 7.22.20
- '@babel/helper-function-name': 7.23.0
- '@babel/helper-optimise-call-expression': 7.22.5
- '@babel/helper-plugin-utils': 7.22.5
- '@babel/helper-replace-supers': 7.22.20(@babel/core@7.23.0)
- '@babel/helper-split-export-declaration': 7.22.6
- globals: 11.12.0
- dev: true
-
- /@babel/plugin-transform-computed-properties@7.22.5(@babel/core@7.23.0):
- resolution: {integrity: sha512-4GHWBgRf0krxPX+AaPtgBAlTgTeZmqDynokHOX7aqqAB4tHs3U2Y02zH6ETFdLZGcg9UQSD1WCmkVrE9ErHeOg==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
+ /@poppinss/colors@4.1.2:
+ resolution: {integrity: sha512-+qLfhQrdLa7RqJNZmGIc1ERVz2JtMD3kLI41tNfKhQBZt0wiWoYMhP/Tv+eopPnMy3NwANWgDSbqsi+teY1oig==}
+ engines: {node: '>=18.16.0'}
dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-plugin-utils': 7.22.5
- '@babel/template': 7.22.15
- dev: true
+ kleur: 4.1.5
- /@babel/plugin-transform-destructuring@7.23.0(@babel/core@7.23.0):
- resolution: {integrity: sha512-vaMdgNXFkYrB+8lbgniSYWHsgqK5gjaMNcc84bMIOMRLH0L9AqYq3hwMdvnyqj1OPqea8UtjPEuS/DCenah1wg==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
- dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-plugin-utils': 7.22.5
- dev: true
+ /@poppinss/hooks@7.2.2:
+ resolution: {integrity: sha512-EDivPMt9sAUV5kNhH2bvtVjuLvHhQ6SKVP19OjvvcyRalqAa6KqCItJ2qeU8A93s0cr1a28Sytu+KSwsmOY8pg==}
+ engines: {node: '>=18.16.0'}
- /@babel/plugin-transform-dotall-regex@7.22.5(@babel/core@7.23.0):
- resolution: {integrity: sha512-5/Yk9QxCQCl+sOIB1WelKnVRxTJDSAIxtJLL2/pqL14ZVlbH0fUQUZa/T5/UnQtBNgghR7mfB8ERBKyKPCi7Vw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
- dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.0)
- '@babel/helper-plugin-utils': 7.22.5
- dev: true
+ /@poppinss/inspect@1.0.1:
+ resolution: {integrity: sha512-kLeEaBSGhlleyYvKc7c9s3uE6xv7cwyulE0EgHf4jU/CL96h0yC4mkdw1wvC1l1PYYQozCGy46FwMBAAMOobCA==}
- /@babel/plugin-transform-duplicate-keys@7.22.5(@babel/core@7.23.0):
- resolution: {integrity: sha512-dEnYD+9BBgld5VBXHnF/DbYGp3fqGMsyxKbtD1mDyIA7AkTSpKXFhCVuj/oQVOoALfBs77DudA0BE4d5mcpmqw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
- dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-plugin-utils': 7.22.5
- dev: true
+ /@poppinss/macroable@1.0.1:
+ resolution: {integrity: sha512-bO3+rnqGhE+gdx4DOyYjY9jCm2+c5Ncyl2Gmst0w271rIFnsB00btonpdmAqvFNzS8rcas+APGm+47fYMmkpQA==}
+ engines: {node: '>=18.16.0'}
- /@babel/plugin-transform-dynamic-import@7.22.11(@babel/core@7.23.0):
- resolution: {integrity: sha512-g/21plo58sfteWjaO0ZNVb+uEOkJNjAaHhbejrnBmu011l/eNDScmkbjCC3l4FKb10ViaGU4aOkFznSu2zRHgA==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
+ /@poppinss/matchit@3.1.2:
+ resolution: {integrity: sha512-Bx+jY+vmdQFmwYiHliiPjr+oVBaGnh79B1h1FSAm3jME1QylLFt8PPYC0ymO8Q5PzJj/KuE3jeTnZhRHOWqq8g==}
dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-plugin-utils': 7.22.5
- '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.23.0)
- dev: true
+ '@arr/every': 1.0.1
- /@babel/plugin-transform-exponentiation-operator@7.22.5(@babel/core@7.23.0):
- resolution: {integrity: sha512-vIpJFNM/FjZ4rh1myqIya9jXwrwwgFRHPjT3DkUA9ZLHuzox8jiXkOLvwm1H+PQIP3CqfC++WPKeuDi0Sjdj1g==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
- dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-builder-binary-assignment-operator-visitor': 7.22.15
- '@babel/helper-plugin-utils': 7.22.5
- dev: true
+ /@poppinss/middleware@3.2.2:
+ resolution: {integrity: sha512-73AJXODpZcfpO3b9Fr4SQNksXtATpUpCAnKgIUVDfZqAsS1gzLGhDfYo/Qi44hH29P8q28MXqmaoYY2oTpdZFQ==}
+ engines: {node: '>=18.16.0'}
- /@babel/plugin-transform-export-namespace-from@7.22.11(@babel/core@7.23.0):
- resolution: {integrity: sha512-xa7aad7q7OiT8oNZ1mU7NrISjlSkVdMbNxn9IuLZyL9AJEhs1Apba3I+u5riX1dIkdptP5EKDG5XDPByWxtehw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
+ /@poppinss/multiparty@2.0.1:
+ resolution: {integrity: sha512-Pf3V9PFyZDIkDBBiAOT2hdmA+1l/+hverHbUnMzNzwtwgO50s2ZPt5KxUydVA0hceg9gryo5unQ0WUF1SO9tkQ==}
dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-plugin-utils': 7.22.5
- '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.23.0)
- dev: true
+ http-errors: 2.0.0
+ safe-buffer: 5.2.1
+ uid-safe: 2.1.5
- /@babel/plugin-transform-for-of@7.22.15(@babel/core@7.23.0):
- resolution: {integrity: sha512-me6VGeHsx30+xh9fbDLLPi0J1HzmeIIyenoOQHuw2D4m2SAU3NrspX5XxJLBpqn5yrLzrlw2Iy3RA//Bx27iOA==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
+ /@poppinss/prompts@3.1.2:
+ resolution: {integrity: sha512-wjAWTZkZz2kH5dVGbEPx9IRxJcIy6Nzn614TdGsn2kzeMI5woPaKWKxrLEQfK/teIxUrOVUmbjcorDohBkIjiw==}
+ engines: {node: '>=18.16.0'}
dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-plugin-utils': 7.22.5
- dev: true
+ '@poppinss/colors': 4.1.2
+ '@poppinss/utils': 6.7.2
+ enquirer: 2.4.1
- /@babel/plugin-transform-function-name@7.22.5(@babel/core@7.23.0):
- resolution: {integrity: sha512-UIzQNMS0p0HHiQm3oelztj+ECwFnj+ZRV4KnguvlsD2of1whUeM6o7wGNj6oLwcDoAXQ8gEqfgC24D+VdIcevg==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
+ /@poppinss/utils@6.7.2:
+ resolution: {integrity: sha512-C7K0gy7nW0XzlWcuVrSqT1nLQBAddhpgbnvHtYtxFYkS/BdJKzeVz771c80yhLcmrqXoGqZZgjdC7y6Me1L4Tg==}
+ engines: {node: '>=18.16.0'}
dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-compilation-targets': 7.22.15
- '@babel/helper-function-name': 7.23.0
- '@babel/helper-plugin-utils': 7.22.5
- dev: true
+ '@lukeed/ms': 2.0.2
+ '@types/bytes': 3.1.4
+ '@types/pluralize': 0.0.33
+ bytes: 3.1.2
+ case-anything: 2.1.13
+ flattie: 1.1.0
+ pluralize: 8.0.0
+ safe-stable-stringify: 2.4.3
+ secure-json-parse: 2.7.0
+ slash: 5.1.0
+ slugify: 1.6.6
+ truncatise: 0.0.8
- /@babel/plugin-transform-json-strings@7.22.11(@babel/core@7.23.0):
- resolution: {integrity: sha512-CxT5tCqpA9/jXFlme9xIBCc5RPtdDq3JpkkhgHQqtDdiTnTI0jtZ0QzXhr5DILeYifDPp2wvY2ad+7+hLMW5Pw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
+ /@poppinss/validator-lite@1.0.3:
+ resolution: {integrity: sha512-u4dmT7PDHwNtxY3q1jHVp/u+hMEEcBlkzd37QwwM4tVt/0mLlEDttSfPQ+TT7sqPG4VEtWKwVSlMInwPUYyJpA==}
dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-plugin-utils': 7.22.5
- '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.23.0)
+ validator: 13.11.0
+
+ /@rollup/rollup-android-arm-eabi@4.10.0:
+ resolution: {integrity: sha512-/MeDQmcD96nVoRumKUljsYOLqfv1YFJps+0pTrb2Z9Nl/w5qNUysMaWQsrd1mvAlNT4yza1iVyIu4Q4AgF6V3A==}
+ cpu: [arm]
+ os: [android]
+ requiresBuild: true
dev: true
+ optional: true
- /@babel/plugin-transform-literals@7.22.5(@babel/core@7.23.0):
- resolution: {integrity: sha512-fTLj4D79M+mepcw3dgFBTIDYpbcB9Sm0bpm4ppXPaO+U+PKFFyV9MGRvS0gvGw62sd10kT5lRMKXAADb9pWy8g==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
- dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-plugin-utils': 7.22.5
+ /@rollup/rollup-android-arm64@4.10.0:
+ resolution: {integrity: sha512-lvu0jK97mZDJdpZKDnZI93I0Om8lSDaiPx3OiCk0RXn3E8CMPJNS/wxjAvSJJzhhZpfjXsjLWL8LnS6qET4VNQ==}
+ cpu: [arm64]
+ os: [android]
+ requiresBuild: true
dev: true
+ optional: true
- /@babel/plugin-transform-logical-assignment-operators@7.22.11(@babel/core@7.23.0):
- resolution: {integrity: sha512-qQwRTP4+6xFCDV5k7gZBF3C31K34ut0tbEcTKxlX/0KXxm9GLcO14p570aWxFvVzx6QAfPgq7gaeIHXJC8LswQ==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
- dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-plugin-utils': 7.22.5
- '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.23.0)
+ /@rollup/rollup-darwin-arm64@4.10.0:
+ resolution: {integrity: sha512-uFpayx8I8tyOvDkD7X6n0PriDRWxcqEjqgtlxnUA/G9oS93ur9aZ8c8BEpzFmsed1TH5WZNG5IONB8IiW90TQg==}
+ cpu: [arm64]
+ os: [darwin]
+ requiresBuild: true
dev: true
+ optional: true
- /@babel/plugin-transform-member-expression-literals@7.22.5(@babel/core@7.23.0):
- resolution: {integrity: sha512-RZEdkNtzzYCFl9SE9ATaUMTj2hqMb4StarOJLrZRbqqU4HSBE7UlBw9WBWQiDzrJZJdUWiMTVDI6Gv/8DPvfew==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
- dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-plugin-utils': 7.22.5
+ /@rollup/rollup-darwin-x64@4.10.0:
+ resolution: {integrity: sha512-nIdCX03qFKoR/MwQegQBK+qZoSpO3LESurVAC6s6jazLA1Mpmgzo3Nj3H1vydXp/JM29bkCiuF7tDuToj4+U9Q==}
+ cpu: [x64]
+ os: [darwin]
+ requiresBuild: true
dev: true
+ optional: true
- /@babel/plugin-transform-modules-amd@7.23.0(@babel/core@7.23.0):
- resolution: {integrity: sha512-xWT5gefv2HGSm4QHtgc1sYPbseOyf+FFDo2JbpE25GWl5BqTGO9IMwTYJRoIdjsF85GE+VegHxSCUt5EvoYTAw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
- dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-module-transforms': 7.23.0(@babel/core@7.23.0)
- '@babel/helper-plugin-utils': 7.22.5
+ /@rollup/rollup-linux-arm-gnueabihf@4.10.0:
+ resolution: {integrity: sha512-Fz7a+y5sYhYZMQFRkOyCs4PLhICAnxRX/GnWYReaAoruUzuRtcf+Qnw+T0CoAWbHCuz2gBUwmWnUgQ67fb3FYw==}
+ cpu: [arm]
+ os: [linux]
+ requiresBuild: true
dev: true
+ optional: true
- /@babel/plugin-transform-modules-commonjs@7.23.0(@babel/core@7.23.0):
- resolution: {integrity: sha512-32Xzss14/UVc7k9g775yMIvkVK8xwKE0DPdP5JTapr3+Z9w4tzeOuLNY6BXDQR6BdnzIlXnCGAzsk/ICHBLVWQ==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
- dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-module-transforms': 7.23.0(@babel/core@7.23.0)
- '@babel/helper-plugin-utils': 7.22.5
- '@babel/helper-simple-access': 7.22.5
+ /@rollup/rollup-linux-arm64-gnu@4.10.0:
+ resolution: {integrity: sha512-yPtF9jIix88orwfTi0lJiqINnlWo6p93MtZEoaehZnmCzEmLL0eqjA3eGVeyQhMtxdV+Mlsgfwhh0+M/k1/V7Q==}
+ cpu: [arm64]
+ os: [linux]
+ requiresBuild: true
dev: true
+ optional: true
- /@babel/plugin-transform-modules-systemjs@7.23.0(@babel/core@7.23.0):
- resolution: {integrity: sha512-qBej6ctXZD2f+DhlOC9yO47yEYgUh5CZNz/aBoH4j/3NOlRfJXJbY7xDQCqQVf9KbrqGzIWER1f23doHGrIHFg==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
- dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-hoist-variables': 7.22.5
- '@babel/helper-module-transforms': 7.23.0(@babel/core@7.23.0)
- '@babel/helper-plugin-utils': 7.22.5
- '@babel/helper-validator-identifier': 7.22.20
+ /@rollup/rollup-linux-arm64-musl@4.10.0:
+ resolution: {integrity: sha512-9GW9yA30ib+vfFiwjX+N7PnjTnCMiUffhWj4vkG4ukYv1kJ4T9gHNg8zw+ChsOccM27G9yXrEtMScf1LaCuoWQ==}
+ cpu: [arm64]
+ os: [linux]
+ requiresBuild: true
dev: true
+ optional: true
- /@babel/plugin-transform-modules-umd@7.22.5(@babel/core@7.23.0):
- resolution: {integrity: sha512-+S6kzefN/E1vkSsKx8kmQuqeQsvCKCd1fraCM7zXm4SFoggI099Tr4G8U81+5gtMdUeMQ4ipdQffbKLX0/7dBQ==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
- dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-module-transforms': 7.23.0(@babel/core@7.23.0)
- '@babel/helper-plugin-utils': 7.22.5
+ /@rollup/rollup-linux-riscv64-gnu@4.10.0:
+ resolution: {integrity: sha512-X1ES+V4bMq2ws5fF4zHornxebNxMXye0ZZjUrzOrf7UMx1d6wMQtfcchZ8SqUnQPPHdOyOLW6fTcUiFgHFadRA==}
+ cpu: [riscv64]
+ os: [linux]
+ requiresBuild: true
dev: true
+ optional: true
- /@babel/plugin-transform-named-capturing-groups-regex@7.22.5(@babel/core@7.23.0):
- resolution: {integrity: sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0
- dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.0)
- '@babel/helper-plugin-utils': 7.22.5
+ /@rollup/rollup-linux-x64-gnu@4.10.0:
+ resolution: {integrity: sha512-w/5OpT2EnI/Xvypw4FIhV34jmNqU5PZjZue2l2Y3ty1Ootm3SqhI+AmfhlUYGBTd9JnpneZCDnt3uNOiOBkMyw==}
+ cpu: [x64]
+ os: [linux]
+ requiresBuild: true
dev: true
+ optional: true
- /@babel/plugin-transform-new-target@7.22.5(@babel/core@7.23.0):
- resolution: {integrity: sha512-AsF7K0Fx/cNKVyk3a+DW0JLo+Ua598/NxMRvxDnkpCIGFh43+h/v2xyhRUYf6oD8gE4QtL83C7zZVghMjHd+iw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
- dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-plugin-utils': 7.22.5
+ /@rollup/rollup-linux-x64-musl@4.10.0:
+ resolution: {integrity: sha512-q/meftEe3QlwQiGYxD9rWwB21DoKQ9Q8wA40of/of6yGHhZuGfZO0c3WYkN9dNlopHlNT3mf5BPsUSxoPuVQaw==}
+ cpu: [x64]
+ os: [linux]
+ requiresBuild: true
dev: true
+ optional: true
- /@babel/plugin-transform-nullish-coalescing-operator@7.22.11(@babel/core@7.23.0):
- resolution: {integrity: sha512-YZWOw4HxXrotb5xsjMJUDlLgcDXSfO9eCmdl1bgW4+/lAGdkjaEvOnQ4p5WKKdUgSzO39dgPl0pTnfxm0OAXcg==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
- dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-plugin-utils': 7.22.5
- '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.23.0)
+ /@rollup/rollup-win32-arm64-msvc@4.10.0:
+ resolution: {integrity: sha512-NrR6667wlUfP0BHaEIKgYM/2va+Oj+RjZSASbBMnszM9k+1AmliRjHc3lJIiOehtSSjqYiO7R6KLNrWOX+YNSQ==}
+ cpu: [arm64]
+ os: [win32]
+ requiresBuild: true
dev: true
+ optional: true
- /@babel/plugin-transform-numeric-separator@7.22.11(@babel/core@7.23.0):
- resolution: {integrity: sha512-3dzU4QGPsILdJbASKhF/V2TVP+gJya1PsueQCxIPCEcerqF21oEcrob4mzjsp2Py/1nLfF5m+xYNMDpmA8vffg==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
- dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-plugin-utils': 7.22.5
- '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.23.0)
+ /@rollup/rollup-win32-ia32-msvc@4.10.0:
+ resolution: {integrity: sha512-FV0Tpt84LPYDduIDcXvEC7HKtyXxdvhdAOvOeWMWbQNulxViH2O07QXkT/FffX4FqEI02jEbCJbr+YcuKdyyMg==}
+ cpu: [ia32]
+ os: [win32]
+ requiresBuild: true
dev: true
+ optional: true
- /@babel/plugin-transform-object-rest-spread@7.22.15(@babel/core@7.23.0):
- resolution: {integrity: sha512-fEB+I1+gAmfAyxZcX1+ZUwLeAuuf8VIg67CTznZE0MqVFumWkh8xWtn58I4dxdVf080wn7gzWoF8vndOViJe9Q==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
- dependencies:
- '@babel/compat-data': 7.22.20
- '@babel/core': 7.23.0
- '@babel/helper-compilation-targets': 7.22.15
- '@babel/helper-plugin-utils': 7.22.5
- '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.23.0)
- '@babel/plugin-transform-parameters': 7.22.15(@babel/core@7.23.0)
+ /@rollup/rollup-win32-x64-msvc@4.10.0:
+ resolution: {integrity: sha512-OZoJd+o5TaTSQeFFQ6WjFCiltiYVjIdsXxwu/XZ8qRpsvMQr4UsVrE5UyT9RIvsnuF47DqkJKhhVZ2Q9YW9IpQ==}
+ cpu: [x64]
+ os: [win32]
+ requiresBuild: true
dev: true
+ optional: true
- /@babel/plugin-transform-object-super@7.22.5(@babel/core@7.23.0):
- resolution: {integrity: sha512-klXqyaT9trSjIUrcsYIfETAzmOEZL3cBYqOYLJxBHfMFFggmXOv+NYSX/Jbs9mzMVESw/WycLFPRx8ba/b2Ipw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
- dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-plugin-utils': 7.22.5
- '@babel/helper-replace-supers': 7.22.20(@babel/core@7.23.0)
+ /@sinclair/typebox@0.27.8:
+ resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==}
+
+ /@sindresorhus/is@6.1.0:
+ resolution: {integrity: sha512-BuvU07zq3tQ/2SIgBsEuxKYDyDjC0n7Zir52bpHy2xnBbW81+po43aLFPLbeV3HRAheFbGud1qgcqSYfhtHMAg==}
+ engines: {node: '>=16'}
+
+ /@swc/core-darwin-arm64@1.4.0:
+ resolution: {integrity: sha512-UTJ/Vz+s7Pagef6HmufWt6Rs0aUu+EJF4Pzuwvr7JQQ5b1DZeAAUeUtkUTFx/PvCbM8Xfw4XdKBUZfrIKCfW8A==}
+ engines: {node: '>=10'}
+ cpu: [arm64]
+ os: [darwin]
+ requiresBuild: true
dev: true
+ optional: true
- /@babel/plugin-transform-optional-catch-binding@7.22.11(@babel/core@7.23.0):
- resolution: {integrity: sha512-rli0WxesXUeCJnMYhzAglEjLWVDF6ahb45HuprcmQuLidBJFWjNnOzssk2kuc6e33FlLaiZhG/kUIzUMWdBKaQ==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
- dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-plugin-utils': 7.22.5
- '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.23.0)
+ /@swc/core-darwin-x64@1.4.0:
+ resolution: {integrity: sha512-f8v58u2GsGak8EtZFN9guXqE0Ep10Suny6xriaW2d8FGqESPyNrnBzli3aqkSeQk5gGqu2zJ7WiiKp3XoUOidA==}
+ engines: {node: '>=10'}
+ cpu: [x64]
+ os: [darwin]
+ requiresBuild: true
dev: true
+ optional: true
- /@babel/plugin-transform-optional-chaining@7.23.0(@babel/core@7.23.0):
- resolution: {integrity: sha512-sBBGXbLJjxTzLBF5rFWaikMnOGOk/BmK6vVByIdEggZ7Vn6CvWXZyRkkLFK6WE0IF8jSliyOkUN6SScFgzCM0g==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
- dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-plugin-utils': 7.22.5
- '@babel/helper-skip-transparent-expression-wrappers': 7.22.5
- '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.23.0)
+ /@swc/core-linux-arm-gnueabihf@1.4.0:
+ resolution: {integrity: sha512-q2KAkBzmPcTnRij/Y1fgHCKAGevUX/H4uUESrw1J5gmUg9Qip6onKV80lTumA1/aooGJ18LOsB31qdbwmZk9OA==}
+ engines: {node: '>=10'}
+ cpu: [arm]
+ os: [linux]
+ requiresBuild: true
dev: true
+ optional: true
- /@babel/plugin-transform-parameters@7.22.15(@babel/core@7.23.0):
- resolution: {integrity: sha512-hjk7qKIqhyzhhUvRT683TYQOFa/4cQKwQy7ALvTpODswN40MljzNDa0YldevS6tGbxwaEKVn502JmY0dP7qEtQ==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
- dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-plugin-utils': 7.22.5
+ /@swc/core-linux-arm64-gnu@1.4.0:
+ resolution: {integrity: sha512-SknGu96W0mzHtLHWm+62fk5+Omp9fMPFO7AWyGFmz2tr8EgRRXtTSrBUnWhAbgcalnhen48GsvtMdxf1KNputg==}
+ engines: {node: '>=10'}
+ cpu: [arm64]
+ os: [linux]
+ requiresBuild: true
dev: true
+ optional: true
- /@babel/plugin-transform-private-methods@7.22.5(@babel/core@7.23.0):
- resolution: {integrity: sha512-PPjh4gyrQnGe97JTalgRGMuU4icsZFnWkzicB/fUtzlKUqvsWBKEpPPfr5a2JiyirZkHxnAqkQMO5Z5B2kK3fA==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
- dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-create-class-features-plugin': 7.22.15(@babel/core@7.23.0)
- '@babel/helper-plugin-utils': 7.22.5
+ /@swc/core-linux-arm64-musl@1.4.0:
+ resolution: {integrity: sha512-/k3TDvpBRMDNskHooNN1KqwUhcwkfBlIYxRTnJvsfT2C7My4pffR+4KXmt0IKynlTTbCdlU/4jgX4801FSuliw==}
+ engines: {node: '>=10'}
+ cpu: [arm64]
+ os: [linux]
+ requiresBuild: true
dev: true
+ optional: true
- /@babel/plugin-transform-private-property-in-object@7.22.11(@babel/core@7.23.0):
- resolution: {integrity: sha512-sSCbqZDBKHetvjSwpyWzhuHkmW5RummxJBVbYLkGkaiTOWGxml7SXt0iWa03bzxFIx7wOj3g/ILRd0RcJKBeSQ==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
- dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-annotate-as-pure': 7.22.5
- '@babel/helper-create-class-features-plugin': 7.22.15(@babel/core@7.23.0)
- '@babel/helper-plugin-utils': 7.22.5
- '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.23.0)
+ /@swc/core-linux-x64-gnu@1.4.0:
+ resolution: {integrity: sha512-GYsTMvNt5+WTVlwwQzOOWsPMw6P/F41u5PGHWmfev8Nd4QJ1h3rWPySKk4mV42IJwH9MgQCVSl3ygwNqwl6kFg==}
+ engines: {node: '>=10'}
+ cpu: [x64]
+ os: [linux]
+ requiresBuild: true
dev: true
+ optional: true
- /@babel/plugin-transform-property-literals@7.22.5(@babel/core@7.23.0):
- resolution: {integrity: sha512-TiOArgddK3mK/x1Qwf5hay2pxI6wCZnvQqrFSqbtg1GLl2JcNMitVH/YnqjP+M31pLUeTfzY1HAXFDnUBV30rQ==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
- dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-plugin-utils': 7.22.5
+ /@swc/core-linux-x64-musl@1.4.0:
+ resolution: {integrity: sha512-jGVPdM/VwF7kK/uYRW5N6FwzKf/FnDjGIR3RPvQokjYJy7Auk+3Oj21C0Jev7sIT9RYnO/TrFEoEozKeD/z2Qw==}
+ engines: {node: '>=10'}
+ cpu: [x64]
+ os: [linux]
+ requiresBuild: true
dev: true
+ optional: true
- /@babel/plugin-transform-regenerator@7.22.10(@babel/core@7.23.0):
- resolution: {integrity: sha512-F28b1mDt8KcT5bUyJc/U9nwzw6cV+UmTeRlXYIl2TNqMMJif0Jeey9/RQ3C4NOd2zp0/TRsDns9ttj2L523rsw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
- dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-plugin-utils': 7.22.5
- regenerator-transform: 0.15.2
+ /@swc/core-win32-arm64-msvc@1.4.0:
+ resolution: {integrity: sha512-biHYm1AronEKlt47O/H8sSOBM2BKXMmWT+ApvlxUw50m1RGNnVnE0bgY7tylFuuSiWyXsQPJbmUV708JqORXVg==}
+ engines: {node: '>=10'}
+ cpu: [arm64]
+ os: [win32]
+ requiresBuild: true
dev: true
+ optional: true
- /@babel/plugin-transform-reserved-words@7.22.5(@babel/core@7.23.0):
- resolution: {integrity: sha512-DTtGKFRQUDm8svigJzZHzb/2xatPc6TzNvAIJ5GqOKDsGFYgAskjRulbR/vGsPKq3OPqtexnz327qYpP57RFyA==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
- dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-plugin-utils': 7.22.5
+ /@swc/core-win32-ia32-msvc@1.4.0:
+ resolution: {integrity: sha512-TL5L2tFQb19kJwv6+elToGBj74QXCn9j+hZfwQatvZEJRA5rDK16eH6oAE751dGUArhnWlW3Vj65hViPvTuycw==}
+ engines: {node: '>=10'}
+ cpu: [ia32]
+ os: [win32]
+ requiresBuild: true
dev: true
+ optional: true
- /@babel/plugin-transform-shorthand-properties@7.22.5(@babel/core@7.23.0):
- resolution: {integrity: sha512-vM4fq9IXHscXVKzDv5itkO1X52SmdFBFcMIBZ2FRn2nqVYqw6dBexUgMvAjHW+KXpPPViD/Yo3GrDEBaRC0QYA==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
- dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-plugin-utils': 7.22.5
+ /@swc/core-win32-x64-msvc@1.4.0:
+ resolution: {integrity: sha512-e2xVezU7XZ2Stzn4i7TOQe2Kn84oYdG0M3A7XI7oTdcpsKCcKwgiMoroiAhqCv+iN20KNqhnWwJiUiTj/qN5AA==}
+ engines: {node: '>=10'}
+ cpu: [x64]
+ os: [win32]
+ requiresBuild: true
dev: true
+ optional: true
- /@babel/plugin-transform-spread@7.22.5(@babel/core@7.23.0):
- resolution: {integrity: sha512-5ZzDQIGyvN4w8+dMmpohL6MBo+l2G7tfC/O2Dg7/hjpgeWvUx8FzfeOKxGog9IimPa4YekaQ9PlDqTLOljkcxg==}
- engines: {node: '>=6.9.0'}
+ /@swc/core@1.4.0:
+ resolution: {integrity: sha512-wc5DMI5BJftnK0Fyx9SNJKkA0+BZSJQx8430yutWmsILkHMBD3Yd9GhlMaxasab9RhgKqZp7Ht30hUYO5ZDvQg==}
+ engines: {node: '>=10'}
+ requiresBuild: true
peerDependencies:
- '@babel/core': ^7.0.0-0
+ '@swc/helpers': ^0.5.0
+ peerDependenciesMeta:
+ '@swc/helpers':
+ optional: true
dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-plugin-utils': 7.22.5
- '@babel/helper-skip-transparent-expression-wrappers': 7.22.5
+ '@swc/counter': 0.1.3
+ '@swc/types': 0.1.5
+ optionalDependencies:
+ '@swc/core-darwin-arm64': 1.4.0
+ '@swc/core-darwin-x64': 1.4.0
+ '@swc/core-linux-arm-gnueabihf': 1.4.0
+ '@swc/core-linux-arm64-gnu': 1.4.0
+ '@swc/core-linux-arm64-musl': 1.4.0
+ '@swc/core-linux-x64-gnu': 1.4.0
+ '@swc/core-linux-x64-musl': 1.4.0
+ '@swc/core-win32-arm64-msvc': 1.4.0
+ '@swc/core-win32-ia32-msvc': 1.4.0
+ '@swc/core-win32-x64-msvc': 1.4.0
dev: true
- /@babel/plugin-transform-sticky-regex@7.22.5(@babel/core@7.23.0):
- resolution: {integrity: sha512-zf7LuNpHG0iEeiyCNwX4j3gDg1jgt1k3ZdXBKbZSoA3BbGQGvMiSvfbZRR3Dr3aeJe3ooWFZxOOG3IRStYp2Bw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
- dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-plugin-utils': 7.22.5
+ /@swc/counter@0.1.3:
+ resolution: {integrity: sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ==}
dev: true
- /@babel/plugin-transform-template-literals@7.22.5(@babel/core@7.23.0):
- resolution: {integrity: sha512-5ciOehRNf+EyUeewo8NkbQiUs4d6ZxiHo6BcBcnFlgiJfu16q0bQUw9Jvo0b0gBKFG1SMhDSjeKXSYuJLeFSMA==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
- dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-plugin-utils': 7.22.5
+ /@swc/types@0.1.5:
+ resolution: {integrity: sha512-myfUej5naTBWnqOCc/MdVOLVjXUXtIA+NpDrDBKJtLLg2shUjBu3cZmB/85RyitKc55+lUUyl7oRfLOvkr2hsw==}
dev: true
- /@babel/plugin-transform-typeof-symbol@7.22.5(@babel/core@7.23.0):
- resolution: {integrity: sha512-bYkI5lMzL4kPii4HHEEChkD0rkc+nvnlR6+o/qdqR6zrm0Sv/nodmyLhlq2DO0YKLUNd2VePmPRjJXSBh9OIdA==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
+ /@szmarczak/http-timer@5.0.1:
+ resolution: {integrity: sha512-+PmQX0PiAYPMeVYe237LJAYvOMYW1j2rH5YROyS3b4CTVJum34HfRvKvAzozHAQG0TnHNdUfY9nCeUyRAs//cw==}
+ engines: {node: '>=14.16'}
dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-plugin-utils': 7.22.5
- dev: true
+ defer-to-connect: 2.0.1
+ dev: false
- /@babel/plugin-transform-unicode-escapes@7.22.10(@babel/core@7.23.0):
- resolution: {integrity: sha512-lRfaRKGZCBqDlRU3UIFovdp9c9mEvlylmpod0/OatICsSfuQ9YFthRo1tpTkGsklEefZdqlEFdY4A2dwTb6ohg==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
+ /@tokenizer/token@0.3.0:
+ resolution: {integrity: sha512-OvjF+z51L3ov0OyAU0duzsYuvO01PH7x4t6DJx+guahgTnBHkhJdG7soQeTSFLWN3efnHyibZ4Z8l2EuWwJN3A==}
+
+ /@tootallnate/once@1.1.2:
+ resolution: {integrity: sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==}
+ engines: {node: '>= 6'}
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@ts-morph/common@0.17.0:
+ resolution: {integrity: sha512-RMSSvSfs9kb0VzkvQ2NWobwnj7TxCA9vI/IjR9bDHqgAyVbu2T0DN4wiKVqomyDWqO7dPr/tErSfq7urQ1Q37g==}
dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-plugin-utils': 7.22.5
- dev: true
+ fast-glob: 3.3.2
+ minimatch: 5.1.6
+ mkdirp: 1.0.4
+ path-browserify: 1.0.1
+ dev: false
- /@babel/plugin-transform-unicode-property-regex@7.22.5(@babel/core@7.23.0):
- resolution: {integrity: sha512-HCCIb+CbJIAE6sXn5CjFQXMwkCClcOfPCzTlilJ8cUatfzwHlWQkbtV0zD338u9dZskwvuOYTuuaMaA8J5EI5A==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
+ /@ts-morph/common@0.22.0:
+ resolution: {integrity: sha512-HqNBuV/oIlMKdkLshXd1zKBqNQCsuPEsgQOkfFQ/eUKjRlwndXW1AjN9LVkBEIukm00gGXSRmfkl0Wv5VXLnlw==}
dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.0)
- '@babel/helper-plugin-utils': 7.22.5
+ fast-glob: 3.3.2
+ minimatch: 9.0.3
+ mkdirp: 3.0.1
+ path-browserify: 1.0.1
+
+ /@tsconfig/node10@1.0.9:
+ resolution: {integrity: sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==}
dev: true
- /@babel/plugin-transform-unicode-regex@7.22.5(@babel/core@7.23.0):
- resolution: {integrity: sha512-028laaOKptN5vHJf9/Arr/HiJekMd41hOEZYvNsrsXqJ7YPYuX2bQxh31fkZzGmq3YqHRJzYFFAVYvKfMPKqyg==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
- dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.0)
- '@babel/helper-plugin-utils': 7.22.5
+ /@tsconfig/node12@1.0.11:
+ resolution: {integrity: sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==}
dev: true
- /@babel/plugin-transform-unicode-sets-regex@7.22.5(@babel/core@7.23.0):
- resolution: {integrity: sha512-lhMfi4FC15j13eKrh3DnYHjpGj6UKQHtNKTbtc1igvAhRy4+kLhV07OpLcsN0VgDEw/MjAvJO4BdMJsHwMhzCg==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0
- dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.0)
- '@babel/helper-plugin-utils': 7.22.5
+ /@tsconfig/node14@1.0.3:
+ resolution: {integrity: sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==}
dev: true
- /@babel/preset-env@7.22.20(@babel/core@7.23.0):
- resolution: {integrity: sha512-11MY04gGC4kSzlPHRfvVkNAZhUxOvm7DCJ37hPDnUENwe06npjIRAfInEMTGSb4LZK5ZgDFkv5hw0lGebHeTyg==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
- dependencies:
- '@babel/compat-data': 7.22.20
- '@babel/core': 7.23.0
- '@babel/helper-compilation-targets': 7.22.15
- '@babel/helper-plugin-utils': 7.22.5
- '@babel/helper-validator-option': 7.22.15
- '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.22.15(@babel/core@7.23.0)
- '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.22.15(@babel/core@7.23.0)
- '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.23.0)
- '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.23.0)
- '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.23.0)
- '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.23.0)
- '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.23.0)
- '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.23.0)
- '@babel/plugin-syntax-import-assertions': 7.22.5(@babel/core@7.23.0)
- '@babel/plugin-syntax-import-attributes': 7.22.5(@babel/core@7.23.0)
- '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.23.0)
- '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.23.0)
- '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.23.0)
- '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.23.0)
- '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.23.0)
- '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.23.0)
- '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.23.0)
- '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.23.0)
- '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.23.0)
- '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.23.0)
- '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.23.0)
- '@babel/plugin-transform-arrow-functions': 7.22.5(@babel/core@7.23.0)
- '@babel/plugin-transform-async-generator-functions': 7.22.15(@babel/core@7.23.0)
- '@babel/plugin-transform-async-to-generator': 7.22.5(@babel/core@7.23.0)
- '@babel/plugin-transform-block-scoped-functions': 7.22.5(@babel/core@7.23.0)
- '@babel/plugin-transform-block-scoping': 7.23.0(@babel/core@7.23.0)
- '@babel/plugin-transform-class-properties': 7.22.5(@babel/core@7.23.0)
- '@babel/plugin-transform-class-static-block': 7.22.11(@babel/core@7.23.0)
- '@babel/plugin-transform-classes': 7.22.15(@babel/core@7.23.0)
- '@babel/plugin-transform-computed-properties': 7.22.5(@babel/core@7.23.0)
- '@babel/plugin-transform-destructuring': 7.23.0(@babel/core@7.23.0)
- '@babel/plugin-transform-dotall-regex': 7.22.5(@babel/core@7.23.0)
- '@babel/plugin-transform-duplicate-keys': 7.22.5(@babel/core@7.23.0)
- '@babel/plugin-transform-dynamic-import': 7.22.11(@babel/core@7.23.0)
- '@babel/plugin-transform-exponentiation-operator': 7.22.5(@babel/core@7.23.0)
- '@babel/plugin-transform-export-namespace-from': 7.22.11(@babel/core@7.23.0)
- '@babel/plugin-transform-for-of': 7.22.15(@babel/core@7.23.0)
- '@babel/plugin-transform-function-name': 7.22.5(@babel/core@7.23.0)
- '@babel/plugin-transform-json-strings': 7.22.11(@babel/core@7.23.0)
- '@babel/plugin-transform-literals': 7.22.5(@babel/core@7.23.0)
- '@babel/plugin-transform-logical-assignment-operators': 7.22.11(@babel/core@7.23.0)
- '@babel/plugin-transform-member-expression-literals': 7.22.5(@babel/core@7.23.0)
- '@babel/plugin-transform-modules-amd': 7.23.0(@babel/core@7.23.0)
- '@babel/plugin-transform-modules-commonjs': 7.23.0(@babel/core@7.23.0)
- '@babel/plugin-transform-modules-systemjs': 7.23.0(@babel/core@7.23.0)
- '@babel/plugin-transform-modules-umd': 7.22.5(@babel/core@7.23.0)
- '@babel/plugin-transform-named-capturing-groups-regex': 7.22.5(@babel/core@7.23.0)
- '@babel/plugin-transform-new-target': 7.22.5(@babel/core@7.23.0)
- '@babel/plugin-transform-nullish-coalescing-operator': 7.22.11(@babel/core@7.23.0)
- '@babel/plugin-transform-numeric-separator': 7.22.11(@babel/core@7.23.0)
- '@babel/plugin-transform-object-rest-spread': 7.22.15(@babel/core@7.23.0)
- '@babel/plugin-transform-object-super': 7.22.5(@babel/core@7.23.0)
- '@babel/plugin-transform-optional-catch-binding': 7.22.11(@babel/core@7.23.0)
- '@babel/plugin-transform-optional-chaining': 7.23.0(@babel/core@7.23.0)
- '@babel/plugin-transform-parameters': 7.22.15(@babel/core@7.23.0)
- '@babel/plugin-transform-private-methods': 7.22.5(@babel/core@7.23.0)
- '@babel/plugin-transform-private-property-in-object': 7.22.11(@babel/core@7.23.0)
- '@babel/plugin-transform-property-literals': 7.22.5(@babel/core@7.23.0)
- '@babel/plugin-transform-regenerator': 7.22.10(@babel/core@7.23.0)
- '@babel/plugin-transform-reserved-words': 7.22.5(@babel/core@7.23.0)
- '@babel/plugin-transform-shorthand-properties': 7.22.5(@babel/core@7.23.0)
- '@babel/plugin-transform-spread': 7.22.5(@babel/core@7.23.0)
- '@babel/plugin-transform-sticky-regex': 7.22.5(@babel/core@7.23.0)
- '@babel/plugin-transform-template-literals': 7.22.5(@babel/core@7.23.0)
- '@babel/plugin-transform-typeof-symbol': 7.22.5(@babel/core@7.23.0)
- '@babel/plugin-transform-unicode-escapes': 7.22.10(@babel/core@7.23.0)
- '@babel/plugin-transform-unicode-property-regex': 7.22.5(@babel/core@7.23.0)
- '@babel/plugin-transform-unicode-regex': 7.22.5(@babel/core@7.23.0)
- '@babel/plugin-transform-unicode-sets-regex': 7.22.5(@babel/core@7.23.0)
- '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.23.0)
- '@babel/types': 7.23.0
- babel-plugin-polyfill-corejs2: 0.4.5(@babel/core@7.23.0)
- babel-plugin-polyfill-corejs3: 0.8.4(@babel/core@7.23.0)
- babel-plugin-polyfill-regenerator: 0.5.2(@babel/core@7.23.0)
- core-js-compat: 3.32.2
- semver: 6.3.1
- transitivePeerDependencies:
- - supports-color
+ /@tsconfig/node16@1.0.4:
+ resolution: {integrity: sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==}
dev: true
- /@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.23.0):
- resolution: {integrity: sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==}
- peerDependencies:
- '@babel/core': ^7.0.0-0 || ^8.0.0-0 <8.0.0
+ /@types/bcrypt@5.0.2:
+ resolution: {integrity: sha512-6atioO8Y75fNcbmj0G7UjI9lXN2pQ/IGJ2FWT4a/btd0Lk9lQalHLKhkgKVZ3r+spnmWUKfbMi1GEe9wyHQfNQ==}
dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-plugin-utils': 7.22.5
- '@babel/types': 7.23.0
- esutils: 2.0.3
+ '@types/node': 20.11.17
dev: true
- /@babel/regjsgen@0.8.0:
- resolution: {integrity: sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==}
+ /@types/bytes@3.1.4:
+ resolution: {integrity: sha512-A0uYgOj3zNc4hNjHc5lYUfJQ/HVyBXiUMKdXd7ysclaE6k9oJdavQzODHuwjpUu2/boCP8afjQYi8z/GtvNCWA==}
+
+ /@types/estree@1.0.5:
+ resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==}
dev: true
- /@babel/runtime@7.23.1:
- resolution: {integrity: sha512-hC2v6p8ZSI/W0HUzh3V8C5g+NwSKzKPtJwSpTjwl0o297GP9+ZLQSkdvHz46CM3LqyoXxq+5G9komY+eSqSO0g==}
- engines: {node: '>=6.9.0'}
+ /@types/fs-extra@11.0.4:
+ resolution: {integrity: sha512-yTbItCNreRooED33qjunPthRcSjERP1r4MqCZc7wv0u2sUkzTFp45tgUfS5+r7FrZPdmCCNflLhVSP/o+SemsQ==}
dependencies:
- regenerator-runtime: 0.14.0
+ '@types/jsonfile': 6.1.4
+ '@types/node': 20.11.17
dev: true
- /@babel/template@7.22.15:
- resolution: {integrity: sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==}
- engines: {node: '>=6.9.0'}
+ /@types/he@1.2.3:
+ resolution: {integrity: sha512-q67/qwlxblDzEDvzHhVkwc1gzVWxaNxeyHUBF4xElrvjL11O+Ytze+1fGpBHlr/H9myiBUaUXNnNPmBHxxfAcA==}
+
+ /@types/http-cache-semantics@4.0.4:
+ resolution: {integrity: sha512-1m0bIFVc7eJWyve9S0RnuRgcQqF/Xd5QsUZAZeQFr1Q3/p9JWoQQEqmVy+DPTNpGXwhgIetAoYF8JSc33q29QA==}
+ dev: false
+
+ /@types/json-schema@7.0.15:
+ resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==}
+ dev: true
+
+ /@types/json5@0.0.29:
+ resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==}
+ dev: true
+
+ /@types/jsonfile@6.1.4:
+ resolution: {integrity: sha512-D5qGUYwjvnNNextdU59/+fI+spnwtTFmyQP0h+PfIOSkNfpU6AOICUOkm4i0OnSk+NyjdPJrxCDro0sJsWlRpQ==}
dependencies:
- '@babel/code-frame': 7.22.13
- '@babel/parser': 7.23.0
- '@babel/types': 7.23.0
+ '@types/node': 20.11.17
dev: true
- /@babel/traverse@7.23.0:
- resolution: {integrity: sha512-t/QaEvyIoIkwzpiZ7aoSKK8kObQYeF7T2v+dazAYCb8SXtp58zEVkWW7zAnju8FNKNdr4ScAOEDmMItbyOmEYw==}
- engines: {node: '>=6.9.0'}
+ /@types/luxon@3.4.2:
+ resolution: {integrity: sha512-TifLZlFudklWlMBfhubvgqTXRzLDI5pCbGa4P8a3wPyUQSW+1xQ5eDsreP9DWHX3tjq1ke96uYG/nwundroWcA==}
+
+ /@types/node@20.11.17:
+ resolution: {integrity: sha512-QmgQZGWu1Yw9TDyAP9ZzpFJKynYNeOvwMJmaxABfieQoVoiVOS6MN1WSpqpRcbeA5+RW82kraAVxCCJg+780Qw==}
dependencies:
- '@babel/code-frame': 7.22.13
- '@babel/generator': 7.23.0
- '@babel/helper-environment-visitor': 7.22.20
- '@babel/helper-function-name': 7.23.0
- '@babel/helper-hoist-variables': 7.22.5
- '@babel/helper-split-export-declaration': 7.22.6
- '@babel/parser': 7.23.0
- '@babel/types': 7.23.0
- debug: 4.3.4
- globals: 11.12.0
- transitivePeerDependencies:
- - supports-color
+ undici-types: 5.26.5
+
+ /@types/nodemailer@6.4.14:
+ resolution: {integrity: sha512-fUWthHO9k9DSdPCSPRqcu6TWhYyxTBg382vlNIttSe9M7XfsT06y0f24KHXtbnijPGGRIcVvdKHTNikOI6qiHA==}
+ dependencies:
+ '@types/node': 20.11.17
+ dev: false
+
+ /@types/normalize-package-data@2.4.4:
+ resolution: {integrity: sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==}
dev: true
- /@babel/types@7.23.0:
- resolution: {integrity: sha512-0oIyUfKoI3mSqMvsxBdclDwxXKXAUA8v/apZbc+iSyARYou1o8ZGDxbUYyLFoW2arqS2jDGqJuZvv1d/io1axg==}
- engines: {node: '>=6.9.0'}
+ /@types/pluralize@0.0.33:
+ resolution: {integrity: sha512-JOqsl+ZoCpP4e8TDke9W79FDcSgPAR0l6pixx2JHkhnRjvShyYiAYw2LVsnA7K08Y6DeOnaU6ujmENO4os/cYg==}
+
+ /@types/proxy-addr@2.0.3:
+ resolution: {integrity: sha512-TgAHHO4tNG3HgLTUhB+hM4iwW6JUNeQHCLnF1DjaDA9c69PN+IasoFu2MYDhubFc+ZIw5c5t9DMtjvrD6R3Egg==}
dependencies:
- '@babel/helper-string-parser': 7.22.5
- '@babel/helper-validator-identifier': 7.22.20
- to-fast-properties: 2.0.0
+ '@types/node': 20.11.17
dev: true
- /@colors/colors@1.5.0:
- resolution: {integrity: sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==}
- engines: {node: '>=0.1.90'}
- requiresBuild: true
- optional: true
+ /@types/qs@6.9.11:
+ resolution: {integrity: sha512-oGk0gmhnEJK4Yyk+oI7EfXsLayXatCWPHary1MtcmbAifkobT9cM9yutG/hZKIseOU0MqbIwQ/u2nn/Gb+ltuQ==}
- /@discoveryjs/json-ext@0.5.7:
- resolution: {integrity: sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==}
- engines: {node: '>=10.0.0'}
+ /@types/semver@7.5.6:
+ resolution: {integrity: sha512-dn1l8LaMea/IjDoHNd9J52uBbInB796CDffS6VdIxvqYCPSG0V0DzHp76GpaWnlhg88uYyPbXCDIowa86ybd5A==}
dev: true
- /@eslint-community/eslint-utils@4.4.0(eslint@8.46.0):
- resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
- peerDependencies:
- eslint: ^6.0.0 || ^7.0.0 || >=8.0.0
+ /@types/source-map-support@0.5.10:
+ resolution: {integrity: sha512-tgVP2H469x9zq34Z0m/fgPewGhg/MLClalNOiPIzQlXrSS2YrKu/xCdSCKnEDwkFha51VKEKB6A9wW26/ZNwzA==}
dependencies:
- eslint: 8.46.0
- eslint-visitor-keys: 3.4.3
+ source-map: 0.6.1
dev: true
- /@eslint-community/regexpp@4.9.0:
- resolution: {integrity: sha512-zJmuCWj2VLBt4c25CfBIbMZLGLyhkvs7LznyVX5HfpzeocThgIj5XQK4L+g3U36mMcx8bPMhGyPpwCATamC4jQ==}
- engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0}
+ /@types/tar-fs@2.0.4:
+ resolution: {integrity: sha512-ipPec0CjTmVDWE+QKr9cTmIIoTl7dFG/yARCM5MqK8i6CNLIG1P8x4kwDsOQY1ChZOZjH0wO9nvfgBvWl4R3kA==}
+ dependencies:
+ '@types/node': 20.11.17
+ '@types/tar-stream': 3.1.3
dev: true
- /@eslint/eslintrc@2.1.2:
- resolution: {integrity: sha512-+wvgpDsrB1YqAMdEUCcnTlpfVBH7Vqn6A/NT3D8WVXFIaKMlErPIZT3oCIAVCOtarRpMtelZLqJeU3t7WY6X6g==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ /@types/tar-stream@3.1.3:
+ resolution: {integrity: sha512-Zbnx4wpkWBMBSu5CytMbrT5ZpMiF55qgM+EpHzR4yIDu7mv52cej8hTkOc6K+LzpkOAbxwn/m7j3iO+/l42YkQ==}
dependencies:
- ajv: 6.12.6
- debug: 4.3.4
- espree: 9.6.1
- globals: 13.22.0
- ignore: 5.2.4
- import-fresh: 3.3.0
- js-yaml: 4.1.0
- minimatch: 3.1.2
- strip-json-comments: 3.1.1
- transitivePeerDependencies:
- - supports-color
+ '@types/node': 20.11.17
dev: true
- /@eslint/js@8.50.0:
- resolution: {integrity: sha512-NCC3zz2+nvYd+Ckfh87rA47zfu2QsQpvc6k1yzTk+b9KzRj0wkGa8LSoGOXN6Zv4lRf/EIoZ80biDh9HOI+RNQ==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ /@types/targz@1.0.4:
+ resolution: {integrity: sha512-4i2weIjweWsnrvutLH7dM/+FPVSFSqxb+XKWo61tAiHxyYYHveImqys5JijMboKJz+jhFu24SlFrdVAB0xAMIw==}
+ dependencies:
+ '@types/tar-fs': 2.0.4
dev: true
- /@faker-js/faker@8.1.0:
- resolution: {integrity: sha512-38DT60rumHfBYynif3lmtxMqMqmsOQIxQgEuPZxCk2yUYN0eqWpTACgxi0VpidvsJB8CRxCpvP7B3anK85FjtQ==}
- engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0, npm: '>=6.14.13'}
- dev: false
+ /@types/uuid@9.0.8:
+ resolution: {integrity: sha512-jg+97EGIcY9AGHJJRaaPVgetKDsrTgbRjQ5Msgjh/DQKEFl0DtyRr/VCOyD1T2R1MNeWPK/u7JoGhlDZnKBAfA==}
+ dev: true
- /@gar/promisify@1.1.3:
- resolution: {integrity: sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==}
- requiresBuild: true
+ /@types/validator@13.11.8:
+ resolution: {integrity: sha512-c/hzNDBh7eRF+KbCf+OoZxKbnkpaK/cKp9iLQWqB7muXtM+MtL9SUUH8vCFcLn6dH1Qm05jiexK0ofWY7TfOhQ==}
dev: false
- optional: true
- /@humanwhocodes/config-array@0.11.11:
- resolution: {integrity: sha512-N2brEuAadi0CcdeMXUkhbZB84eskAc8MEX1By6qEchoVywSgXPIjou4rYsl0V3Hj0ZnuGycGCjdNgockbzeWNA==}
- engines: {node: '>=10.10.0'}
+ /@typescript-eslint/eslint-plugin@6.21.0(@typescript-eslint/parser@6.21.0)(eslint@8.56.0)(typescript@5.3.3):
+ resolution: {integrity: sha512-oy9+hTPCUFpngkEZUSzbf9MxI65wbKFoQYsgPdILTfbUldp5ovUuphZVe4i30emU9M/kP+T64Di0mxl7dSw3MA==}
+ engines: {node: ^16.0.0 || >=18.0.0}
+ peerDependencies:
+ '@typescript-eslint/parser': ^6.0.0 || ^6.0.0-alpha
+ eslint: ^7.0.0 || ^8.0.0
+ typescript: '*'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
dependencies:
- '@humanwhocodes/object-schema': 1.2.1
+ '@eslint-community/regexpp': 4.10.0
+ '@typescript-eslint/parser': 6.21.0(eslint@8.56.0)(typescript@5.3.3)
+ '@typescript-eslint/scope-manager': 6.21.0
+ '@typescript-eslint/type-utils': 6.21.0(eslint@8.56.0)(typescript@5.3.3)
+ '@typescript-eslint/utils': 6.21.0(eslint@8.56.0)(typescript@5.3.3)
+ '@typescript-eslint/visitor-keys': 6.21.0
debug: 4.3.4
- minimatch: 3.1.2
+ eslint: 8.56.0
+ graphemer: 1.4.0
+ ignore: 5.3.1
+ natural-compare: 1.4.0
+ semver: 7.6.0
+ ts-api-utils: 1.2.1(typescript@5.3.3)
+ typescript: 5.3.3
transitivePeerDependencies:
- supports-color
dev: true
- /@humanwhocodes/module-importer@1.0.1:
- resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==}
- engines: {node: '>=12.22'}
- dev: true
-
- /@humanwhocodes/object-schema@1.2.1:
- resolution: {integrity: sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==}
- dev: true
-
- /@japa/api-client@1.4.4(@japa/runner@2.5.1):
- resolution: {integrity: sha512-7YVDWMWDvUGRlAxOS2QmYTyfxsY+EC0fiVz/w7J4qIT2oYhl1TVfJ/R1WWRoLe/KuZr2yIUNlp7OdStVjESB5A==}
+ /@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@5.3.3):
+ resolution: {integrity: sha512-tbsV1jPne5CkFQCgPBcDOt30ItF7aJoZL997JSF7MhGQqOeT3svWRYxiqlfA5RUdlHN6Fi+EI9bxqbdyAUZjYQ==}
+ engines: {node: ^16.0.0 || >=18.0.0}
peerDependencies:
- '@japa/runner': ^2.2.3
+ eslint: ^7.0.0 || ^8.0.0
+ typescript: '*'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
dependencies:
- '@japa/runner': 2.5.1
- '@poppinss/hooks': 6.0.2-0
- '@types/superagent': 4.1.19
- cookie: 0.5.0
- macroable: 7.0.2
- set-cookie-parser: 2.6.0
- superagent: 8.1.2
+ '@typescript-eslint/scope-manager': 6.21.0
+ '@typescript-eslint/types': 6.21.0
+ '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.3.3)
+ '@typescript-eslint/visitor-keys': 6.21.0
+ debug: 4.3.4
+ eslint: 8.56.0
+ typescript: 5.3.3
transitivePeerDependencies:
- supports-color
dev: true
- /@japa/assert@1.4.1(@japa/runner@2.5.1)(openapi-types@12.1.3):
- resolution: {integrity: sha512-IyacnyaGzHqKTUbnOproPluHGWybt0ix0UsISAnjK62aTlDS4pOYPXkCDexk21/iReXNLtFgKM/RrDPDAUfrqA==}
- peerDependencies:
- '@japa/runner': ^2.1.1
- dependencies:
- '@japa/runner': 2.5.1
- '@types/chai': 4.3.6
- api-contract-validator: 2.2.8(openapi-types@12.1.3)
- chai: 4.3.10
- macroable: 7.0.2
- transitivePeerDependencies:
- - openapi-types
- dev: true
-
- /@japa/base-reporter@1.1.2:
- resolution: {integrity: sha512-6MYs/EsXjouFPNUQL3VGllryZ5enI5rqhvQbY2Dzh3Zmhu22DWw6v9d2pxucrFptDTtQ38MBPVL/BIeZAafmOw==}
+ /@typescript-eslint/scope-manager@6.21.0:
+ resolution: {integrity: sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==}
+ engines: {node: ^16.0.0 || >=18.0.0}
dependencies:
- '@japa/errors-printer': 2.1.0
- '@poppinss/cliui': 3.0.5
- ms: 2.1.3
+ '@typescript-eslint/types': 6.21.0
+ '@typescript-eslint/visitor-keys': 6.21.0
dev: true
- /@japa/core@7.3.3:
- resolution: {integrity: sha512-3mkWlzWVALZANFfMK6Q6xtYGM3mpzZeeGGUVQGDt2OOxvL8FDADVxHrRn9BFc1V4fVJO4jR/QH5utrb+RfCF5g==}
+ /@typescript-eslint/type-utils@6.21.0(eslint@8.56.0)(typescript@5.3.3):
+ resolution: {integrity: sha512-rZQI7wHfao8qMX3Rd3xqeYSMCL3SoiSQLBATSiVKARdFGCYSRvmViieZjqc58jKgs8Y8i9YvVVhRbHSTA4VBag==}
+ engines: {node: ^16.0.0 || >=18.0.0}
+ peerDependencies:
+ eslint: ^7.0.0 || ^8.0.0
+ typescript: '*'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
dependencies:
- '@poppinss/hooks': 6.0.2-0
- async-retry: 1.3.3
- emittery: 0.13.1
- macroable: 7.0.2
- time-span: 4.0.0
+ '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.3.3)
+ '@typescript-eslint/utils': 6.21.0(eslint@8.56.0)(typescript@5.3.3)
+ debug: 4.3.4
+ eslint: 8.56.0
+ ts-api-utils: 1.2.1(typescript@5.3.3)
+ typescript: 5.3.3
+ transitivePeerDependencies:
+ - supports-color
dev: true
- /@japa/errors-printer@2.1.0:
- resolution: {integrity: sha512-iZUrB58e29jbRxb7lxocz5uHt9mQ1q7iojs8Gh1kIKmvaPx0KMqce77JDtqYzu2+95WjmppAvM6au1l1WYJmpw==}
- dependencies:
- '@poppinss/cliui': 3.0.5
- jest-diff: 29.7.0
- youch: 3.2.3
- youch-terminal: 2.2.2
+ /@typescript-eslint/types@6.21.0:
+ resolution: {integrity: sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==}
+ engines: {node: ^16.0.0 || >=18.0.0}
dev: true
- /@japa/preset-adonis@1.2.0(@adonisjs/core@5.9.0)(@japa/runner@2.5.1)(openapi-types@12.1.3):
- resolution: {integrity: sha512-jcvQCN9U5WA4kdKDtYuV6DZMzrZomxho3MASS6yhnJsSqSW6jgFDNwhOgSzY7AyPgxmVAf3jZ6JKd7r2USctlA==}
+ /@typescript-eslint/typescript-estree@6.21.0(typescript@5.3.3):
+ resolution: {integrity: sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==}
+ engines: {node: ^16.0.0 || >=18.0.0}
peerDependencies:
- '@adonisjs/core': ^5.0.0
- '@japa/runner': ^2.0.0
- dependencies:
- '@adonisjs/core': 5.9.0
- '@japa/api-client': 1.4.4(@japa/runner@2.5.1)
- '@japa/assert': 1.4.1(@japa/runner@2.5.1)(openapi-types@12.1.3)
- '@japa/run-failed-tests': 1.1.1(@japa/runner@2.5.1)
- '@japa/runner': 2.5.1
- '@japa/spec-reporter': 1.3.3
+ typescript: '*'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+ dependencies:
+ '@typescript-eslint/types': 6.21.0
+ '@typescript-eslint/visitor-keys': 6.21.0
+ debug: 4.3.4
+ globby: 11.1.0
+ is-glob: 4.0.3
+ minimatch: 9.0.3
+ semver: 7.6.0
+ ts-api-utils: 1.2.1(typescript@5.3.3)
+ typescript: 5.3.3
transitivePeerDependencies:
- - openapi-types
- supports-color
dev: true
- /@japa/run-failed-tests@1.1.1(@japa/runner@2.5.1):
- resolution: {integrity: sha512-lMv1nAtKBpX7CH8K+HHRr2aaCTAJ9Q3i7DG12MmU2A/EDJFuP7e9ZASE8O0UTlk5Goc+DR6mzuFXG3R351J89w==}
+ /@typescript-eslint/utils@6.21.0(eslint@8.56.0)(typescript@5.3.3):
+ resolution: {integrity: sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==}
+ engines: {node: ^16.0.0 || >=18.0.0}
peerDependencies:
- '@japa/runner': ^2.2.3
+ eslint: ^7.0.0 || ^8.0.0
dependencies:
- '@japa/runner': 2.5.1
- '@poppinss/cliui': 3.0.5
- find-cache-dir: 3.3.2
- fs-extra: 11.1.1
+ '@eslint-community/eslint-utils': 4.4.0(eslint@8.56.0)
+ '@types/json-schema': 7.0.15
+ '@types/semver': 7.5.6
+ '@typescript-eslint/scope-manager': 6.21.0
+ '@typescript-eslint/types': 6.21.0
+ '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.3.3)
+ eslint: 8.56.0
+ semver: 7.6.0
+ transitivePeerDependencies:
+ - supports-color
+ - typescript
dev: true
- /@japa/runner@2.5.1:
- resolution: {integrity: sha512-p1zjniMCiGxRnZkUs5WtZjTQhbXcnK0aM2Wu4Qc+w+MBpmOrw5J2zJuge0FweepTUR9CT3r2x65uw4qIshy8XQ==}
+ /@typescript-eslint/visitor-keys@6.21.0:
+ resolution: {integrity: sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==}
+ engines: {node: ^16.0.0 || >=18.0.0}
dependencies:
- '@japa/core': 7.3.3
- '@japa/errors-printer': 2.1.0
- '@poppinss/cliui': 3.0.5
- '@poppinss/hooks': 6.0.2-0
- fast-glob: 3.3.1
- getopts: 2.3.0
- inclusion: 1.0.1
+ '@typescript-eslint/types': 6.21.0
+ eslint-visitor-keys: 3.4.3
dev: true
- /@japa/spec-reporter@1.3.3:
- resolution: {integrity: sha512-EOOjvQVmmWZDKxmO+f0v/BSNeKzKkeJSrNwEldkF40zZWdHX2J3Jb2MJowE5DgSOQCiG/OG2UFen0I+XLnPoxQ==}
- dependencies:
- '@japa/base-reporter': 1.1.2
- '@japa/errors-printer': 2.1.0
- '@poppinss/cliui': 3.0.5
- ms: 2.1.3
+ /@ungap/structured-clone@1.2.0:
+ resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==}
dev: true
- /@jest/schemas@29.6.3:
- resolution: {integrity: sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==}
- engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
- dependencies:
- '@sinclair/typebox': 0.27.8
- dev: true
+ /abbrev@1.1.1:
+ resolution: {integrity: sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==}
+ requiresBuild: true
- /@jest/types@25.5.0:
- resolution: {integrity: sha512-OXD0RgQ86Tu3MazKo8bnrkDRaDXXMGUqd+kTtLtK1Zb7CRzQcaSRPPPV37SvYTdevXEBVxe0HXylEjs8ibkmCw==}
- engines: {node: '>= 8.3'}
+ /abort-controller@3.0.0:
+ resolution: {integrity: sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==}
+ engines: {node: '>=6.5'}
dependencies:
- '@types/istanbul-lib-coverage': 2.0.4
- '@types/istanbul-reports': 1.1.2
- '@types/yargs': 15.0.16
- chalk: 3.0.0
- dev: true
+ event-target-shim: 5.0.1
- /@jest/types@29.6.3:
- resolution: {integrity: sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==}
- engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
+ /abstract-logging@2.0.1:
+ resolution: {integrity: sha512-2BjRTZxTPvheOvGbBslFSYOUkr+SjPtOnrLP33f+VIWLzezQpZcqVg7ja3L4dBXmzzgwT+a029jRx5PCi3JuiA==}
+
+ /accepts@1.3.8:
+ resolution: {integrity: sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==}
+ engines: {node: '>= 0.6'}
dependencies:
- '@jest/schemas': 29.6.3
- '@types/istanbul-lib-coverage': 2.0.4
- '@types/istanbul-reports': 3.0.2
- '@types/node': 20.7.2
- '@types/yargs': 17.0.26
- chalk: 4.1.2
- dev: true
+ mime-types: 2.1.35
+ negotiator: 0.6.3
- /@jridgewell/gen-mapping@0.3.3:
- resolution: {integrity: sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==}
- engines: {node: '>=6.0.0'}
+ /acorn-jsx@5.3.2(acorn@8.11.3):
+ resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==}
+ peerDependencies:
+ acorn: ^6.0.0 || ^7.0.0 || ^8.0.0
dependencies:
- '@jridgewell/set-array': 1.1.2
- '@jridgewell/sourcemap-codec': 1.4.15
- '@jridgewell/trace-mapping': 0.3.19
+ acorn: 8.11.3
dev: true
- /@jridgewell/resolve-uri@3.1.1:
- resolution: {integrity: sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==}
- engines: {node: '>=6.0.0'}
+ /acorn-walk@8.3.2:
+ resolution: {integrity: sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==}
+ engines: {node: '>=0.4.0'}
dev: true
- /@jridgewell/set-array@1.1.2:
- resolution: {integrity: sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==}
- engines: {node: '>=6.0.0'}
- dev: true
+ /acorn@8.11.3:
+ resolution: {integrity: sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==}
+ engines: {node: '>=0.4.0'}
+ hasBin: true
- /@jridgewell/source-map@0.3.5:
- resolution: {integrity: sha512-UTYAUj/wviwdsMfzoSJspJxbkH5o1snzwX0//0ENX1u/55kkZZkcTZP6u9bwKGkv+dkk9at4m1Cpt0uY80kcpQ==}
+ /agent-base@6.0.2:
+ resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==}
+ engines: {node: '>= 6.0.0'}
dependencies:
- '@jridgewell/gen-mapping': 0.3.3
- '@jridgewell/trace-mapping': 0.3.19
- dev: true
-
- /@jridgewell/sourcemap-codec@1.4.15:
- resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==}
- dev: true
+ debug: 4.3.4
+ transitivePeerDependencies:
+ - supports-color
- /@jridgewell/trace-mapping@0.3.19:
- resolution: {integrity: sha512-kf37QtfW+Hwx/buWGMPcR60iF9ziHa6r/CZJIHbmcm4+0qrXiVdxegAH0F6yddEVQ7zdkjcGCgCzUu+BcbhQxw==}
+ /agentkeepalive@4.5.0:
+ resolution: {integrity: sha512-5GG/5IbQQpC9FpkRGsSvZI5QYeSCzlJHdpBQntCsuTOxhKD8lqKhrleg2Yi7yvMIf82Ycmmqln9U8V9qwEiJew==}
+ engines: {node: '>= 8.0.0'}
+ requiresBuild: true
dependencies:
- '@jridgewell/resolve-uri': 3.1.1
- '@jridgewell/sourcemap-codec': 1.4.15
- dev: true
-
- /@jsdevtools/ono@7.1.3:
- resolution: {integrity: sha512-4JQNk+3mVzK3xh2rqd6RB4J46qUR19azEHBneZyTZM+c456qOrbbM/5xcR8huNCCcbVt7+UmizG6GuUvPvKUYg==}
- dev: true
+ humanize-ms: 1.2.1
+ dev: false
+ optional: true
- /@kdf/salt@2.0.1:
- resolution: {integrity: sha512-1RBY7HcGYuWBm0+4ygjdRerN+mhpuT5picGB6+azqUXsz/IZljegrKkeHRiV6wuxY8n4HrxOuw8ou7JuGxRWdQ==}
- engines: {node: '>=10'}
+ /aggregate-error@3.1.0:
+ resolution: {integrity: sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==}
+ engines: {node: '>=8'}
+ requiresBuild: true
+ dependencies:
+ clean-stack: 2.2.0
+ indent-string: 4.0.0
dev: false
+ optional: true
+
+ /aggregate-error@4.0.1:
+ resolution: {integrity: sha512-0poP0T7el6Vq3rstR8Mn4V/IQrpBLO6POkUSrN7RhyY+GF/InCFShQzsQ39T25gkHhLgSLByyAz+Kjb+c2L98w==}
+ engines: {node: '>=12'}
+ dependencies:
+ clean-stack: 4.2.0
+ indent-string: 5.0.0
- /@leichtgewicht/ip-codec@2.0.4:
- resolution: {integrity: sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A==}
+ /ajv@6.12.6:
+ resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==}
+ dependencies:
+ fast-deep-equal: 3.1.3
+ fast-json-stable-stringify: 2.1.0
+ json-schema-traverse: 0.4.1
+ uri-js: 4.4.1
dev: true
- /@mapbox/node-pre-gyp@1.0.11:
- resolution: {integrity: sha512-Yhlar6v9WQgUp/He7BdgzOz8lqMQ8sU+jkCq7Wx8Myc5YFJLbEe7lgui/V7G1qB1DJykHSGwreceSaD60Y0PUQ==}
- hasBin: true
+ /ansi-colors@4.1.3:
+ resolution: {integrity: sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==}
+ engines: {node: '>=6'}
+
+ /ansi-escapes@6.2.0:
+ resolution: {integrity: sha512-kzRaCqXnpzWs+3z5ABPQiVke+iq0KXkHo8xiWV4RPTi5Yli0l97BEQuhXV1s7+aSU/fu1kUuxgS4MsQ0fRuygw==}
+ engines: {node: '>=14.16'}
dependencies:
- detect-libc: 2.0.2
- https-proxy-agent: 5.0.1
- make-dir: 3.1.0
- node-fetch: 2.7.0
- nopt: 5.0.0
- npmlog: 5.0.1
- rimraf: 3.0.2
- semver: 7.5.4
- tar: 6.2.0
- transitivePeerDependencies:
- - encoding
- - supports-color
- dev: false
+ type-fest: 3.13.1
+
+ /ansi-regex@5.0.1:
+ resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==}
+ engines: {node: '>=8'}
- /@mrmlnc/readdir-enhanced@2.2.1:
- resolution: {integrity: sha512-bPHp6Ji8b41szTOcaP63VlnbbO5Ny6dwAATtY6JTjh5N2OLrb5Qk/Th5cRkRQhkWCt+EJsYrNB0MiL+Gpn6e3g==}
+ /ansi-regex@6.0.1:
+ resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==}
+ engines: {node: '>=12'}
+
+ /ansi-styles@3.2.1:
+ resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==}
engines: {node: '>=4'}
dependencies:
- call-me-maybe: 1.0.2
- glob-to-regexp: 0.3.0
+ color-convert: 1.9.3
dev: true
- /@nodelib/fs.scandir@2.1.5:
- resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==}
- engines: {node: '>= 8'}
+ /ansi-styles@4.3.0:
+ resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==}
+ engines: {node: '>=8'}
dependencies:
- '@nodelib/fs.stat': 2.0.5
- run-parallel: 1.2.0
+ color-convert: 2.0.1
- /@nodelib/fs.stat@1.1.3:
- resolution: {integrity: sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw==}
- engines: {node: '>= 6'}
- dev: true
+ /ansi-styles@5.2.0:
+ resolution: {integrity: sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==}
+ engines: {node: '>=10'}
- /@nodelib/fs.stat@2.0.5:
- resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==}
- engines: {node: '>= 8'}
+ /ansi-styles@6.2.1:
+ resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==}
+ engines: {node: '>=12'}
- /@nodelib/fs.walk@1.2.8:
- resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==}
+ /anymatch@3.1.3:
+ resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==}
engines: {node: '>= 8'}
dependencies:
- '@nodelib/fs.scandir': 2.1.5
- fastq: 1.15.0
+ normalize-path: 3.0.0
+ picomatch: 2.3.1
- /@npmcli/fs@1.1.1:
- resolution: {integrity: sha512-8KG5RD0GVP4ydEzRn/I4BNDuxDtqVbOdm8675T49OIG/NGhaK0pjPX7ZcDlvKYbA+ulvVK3ztfcF4uBdOxuJbQ==}
- requiresBuild: true
- dependencies:
- '@gar/promisify': 1.1.3
- semver: 7.5.4
- dev: false
- optional: true
+ /aproba@2.0.0:
+ resolution: {integrity: sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==}
- /@npmcli/move-file@1.1.2:
- resolution: {integrity: sha512-1SUf/Cg2GzGDyaf15aR9St9TWlb+XvbZXWpDx8YKs7MLzMH/BCeopv+y9vzrzgkfykCGuWOlSu3mZhj2+FQcrg==}
+ /are-we-there-yet@2.0.0:
+ resolution: {integrity: sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==}
engines: {node: '>=10'}
- deprecated: This functionality has been moved to @npmcli/fs
+ dependencies:
+ delegates: 1.0.0
+ readable-stream: 3.6.2
+
+ /are-we-there-yet@3.0.1:
+ resolution: {integrity: sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==}
+ engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0}
requiresBuild: true
dependencies:
- mkdirp: 1.0.4
- rimraf: 3.0.2
+ delegates: 1.0.0
+ readable-stream: 3.6.2
dev: false
optional: true
- /@nuxt/friendly-errors-webpack-plugin@2.5.2(webpack@5.88.2):
- resolution: {integrity: sha512-LLc+90lnxVbpKkMqk5z1EWpXoODhc6gRkqqXJCInJwF5xabHAE7biFvbULfvTRmtaTzAaP8IV4HQDLUgeAUTTw==}
- engines: {node: '>=8.0.0', npm: '>=5.0.0'}
- peerDependencies:
- webpack: ^2.0.0 || ^3.0.0 || ^4.0.0 || ^5.0.0
- dependencies:
- chalk: 2.4.2
- consola: 2.15.3
- error-stack-parser: 2.1.4
- string-width: 4.2.3
- webpack: 5.88.2(webpack-cli@5.1.4)
+ /arg@4.1.3:
+ resolution: {integrity: sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==}
dev: true
- /@phc/format@1.0.0:
- resolution: {integrity: sha512-m7X9U6BG2+J+R1lSOdCiITLLrxm+cWlNI3HUFA92oLO77ObGNzaKdh8pMLqdZcshtkKuV84olNNXDfMc4FezBQ==}
- engines: {node: '>=10'}
-
- /@pkgr/utils@2.4.2:
- resolution: {integrity: sha512-POgTXhjrTfbTV63DiFXav4lBHiICLKKwDeaKn9Nphwj7WH6m0hMMCaJkMyRWjgtPFyRKRVoMXXjczsTQRDEhYw==}
- engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0}
- dependencies:
- cross-spawn: 7.0.3
- fast-glob: 3.3.1
- is-glob: 4.0.3
- open: 9.1.0
- picocolors: 1.0.0
- tslib: 2.6.2
+ /argparse@2.0.1:
+ resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==}
dev: true
- /@poppinss/chokidar-ts@3.3.5:
- resolution: {integrity: sha512-Ht//xB2ZPa16EDH/bmaWEBWunsBTnBYdnv3nKwXHrqNHDfcYX1DHcJmcNORRH9YLOOuVsTmqDcpiAdTn06LaHQ==}
+ /array-buffer-byte-length@1.0.0:
+ resolution: {integrity: sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==}
dependencies:
- builtin-modules: 3.3.0
- chokidar: 3.5.3
- debug: 4.3.4
- emittery: 0.10.2
- fs-extra: 10.1.0
- mem: 8.1.1
- picomatch: 2.3.1
- transitivePeerDependencies:
- - supports-color
+ call-bind: 1.0.5
+ is-array-buffer: 3.0.2
dev: true
- /@poppinss/cliui@3.0.5:
- resolution: {integrity: sha512-9TCwhJ6hQDAv7LWredEQL7eSA97kQ/i5Td80T7InV9z9rOXT8keywAM0pSvTUS01bwCeiZQVoT4r/G67DRiPJA==}
- dependencies:
- '@poppinss/colors': 3.0.3
- cli-boxes: 3.0.0
- cli-table3: 0.6.3
- color-support: 1.1.3
- log-update: 4.0.0
- pretty-hrtime: 1.0.3
- string-width: 4.2.3
-
- /@poppinss/co-body@1.2.0:
- resolution: {integrity: sha512-1aJ06XrtQ8gueo91+Vc7TTSeXECsW1pWDCKumtuGL+9xsjJvP6n567YuimwHuH99wFMIhyNW5U1g2C/4wjvXCQ==}
+ /array-includes@3.1.7:
+ resolution: {integrity: sha512-dlcsNBIiWhPkHdOEEKnehA+RNUWDc4UqFtnIXU4uuYDPtA4LDkr7qip2p0VvFAEXNDr0yWZ9PJyIRiGjRLQzwQ==}
+ engines: {node: '>= 0.4'}
dependencies:
- '@poppinss/utils': 5.0.0
- inflation: 2.0.0
- qs: 6.11.2
- raw-body: 2.5.2
- type-is: 1.6.18
+ call-bind: 1.0.5
+ define-properties: 1.2.1
+ es-abstract: 1.22.3
+ get-intrinsic: 1.2.2
+ is-string: 1.0.7
+ dev: true
- /@poppinss/colors@3.0.3:
- resolution: {integrity: sha512-jiZcp91PvIs5s4Wz4gEVY9J2tqH6H1++mZmsrC3TmFam9gbVPUJPEubPM5j4BQYJre7bjs9nkIbYFcWMOFHIVQ==}
- dependencies:
- color-support: 1.1.3
- kleur: 4.1.5
+ /array-union@2.1.0:
+ resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==}
+ engines: {node: '>=8'}
+ dev: true
- /@poppinss/file-generator@1.0.2:
- resolution: {integrity: sha512-rRob//4jLbUVbDSsNRihloKGgpyVsWdFQWUmONxX/gyv4koT1OlVoc3ccWgk7Y/sEa2cFxj3zrFs+wdT09iXWw==}
+ /array.prototype.findlastindex@1.2.3:
+ resolution: {integrity: sha512-LzLoiOMAxvy+Gd3BAq3B7VeIgPdo+Q8hthvKtXybMvRV0jrXfJM/t8mw7nNlpEcVlVUnCnM2KSX4XU5HmpodOA==}
+ engines: {node: '>= 0.4'}
dependencies:
- bytes: 3.1.2
+ call-bind: 1.0.5
+ define-properties: 1.2.1
+ es-abstract: 1.22.3
+ es-shim-unscopables: 1.0.2
+ get-intrinsic: 1.2.2
+ dev: true
- /@poppinss/hooks@5.0.3(@adonisjs/application@5.3.0):
- resolution: {integrity: sha512-M5a151VUl+RslVP5qwDW+u+0VmzKt5Nfplzdx2nrtXol3yVlLN3u2Jp6UADESid3DDI7IRHmFrA3sQusey3eUA==}
- peerDependencies:
- '@adonisjs/application': '>=4.0.0'
- peerDependenciesMeta:
- '@adonisjs/application':
- optional: true
+ /array.prototype.flat@1.3.2:
+ resolution: {integrity: sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==}
+ engines: {node: '>= 0.4'}
dependencies:
- '@adonisjs/application': 5.3.0
- dev: false
-
- /@poppinss/hooks@6.0.2-0:
- resolution: {integrity: sha512-mG0hnQlxgflvxyM6t/XO8z/FwotsYRXPhtLZ3cz3iyk4t8xaNtOihSANBcvqdkxZCtGBvotNIf/GnES9hvlfSQ==}
+ call-bind: 1.0.5
+ define-properties: 1.2.1
+ es-abstract: 1.22.3
+ es-shim-unscopables: 1.0.2
dev: true
- /@poppinss/inspect@1.0.1:
- resolution: {integrity: sha512-kLeEaBSGhlleyYvKc7c9s3uE6xv7cwyulE0EgHf4jU/CL96h0yC4mkdw1wvC1l1PYYQozCGy46FwMBAAMOobCA==}
- dev: false
-
- /@poppinss/manager@5.0.2:
- resolution: {integrity: sha512-c5F3EKztq/iw0J+BfNu5rSI5/ji+kjts4rJaC/VvIzpTWzbRorb7UR9J32T8cLtTwjNHbmxk3BAU402lvL2JFA==}
-
- /@poppinss/matchit@3.1.2:
- resolution: {integrity: sha512-Bx+jY+vmdQFmwYiHliiPjr+oVBaGnh79B1h1FSAm3jME1QylLFt8PPYC0ymO8Q5PzJj/KuE3jeTnZhRHOWqq8g==}
+ /array.prototype.flatmap@1.3.2:
+ resolution: {integrity: sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==}
+ engines: {node: '>= 0.4'}
dependencies:
- '@arr/every': 1.0.1
+ call-bind: 1.0.5
+ define-properties: 1.2.1
+ es-abstract: 1.22.3
+ es-shim-unscopables: 1.0.2
+ dev: true
- /@poppinss/multiparty@2.0.1:
- resolution: {integrity: sha512-Pf3V9PFyZDIkDBBiAOT2hdmA+1l/+hverHbUnMzNzwtwgO50s2ZPt5KxUydVA0hceg9gryo5unQ0WUF1SO9tkQ==}
+ /arraybuffer.prototype.slice@1.0.2:
+ resolution: {integrity: sha512-yMBKppFur/fbHu9/6USUe03bZ4knMYiwFBcyiaXB8Go0qNehwX6inYPzK9U0NeQvGxKthcmHcaR8P5MStSRBAw==}
+ engines: {node: '>= 0.4'}
dependencies:
- http-errors: 2.0.0
- safe-buffer: 5.2.1
- uid-safe: 2.1.5
+ array-buffer-byte-length: 1.0.0
+ call-bind: 1.0.5
+ define-properties: 1.2.1
+ es-abstract: 1.22.3
+ get-intrinsic: 1.2.2
+ is-array-buffer: 3.0.2
+ is-shared-array-buffer: 1.0.2
+ dev: true
- /@poppinss/prompts@2.0.2:
- resolution: {integrity: sha512-jTrE8U5rnHTZNpBvPauFVDMQZZuEnfABbJUEXfq0uu8oGJnPaaA+y0bQbyqVf4yWqgRGldgrzAwNz739hIEnPQ==}
+ /as-table@1.0.55:
+ resolution: {integrity: sha512-xvsWESUJn0JN421Xb9MQw6AsMHRCUknCe0Wjlxvjud80mU4E6hQf1A6NzQKcYNmYw62MfzEtXc+badstZP3JpQ==}
dependencies:
- '@poppinss/colors': 3.0.3
- enquirer: 2.4.1
+ printable-characters: 1.0.42
- /@poppinss/utils@3.3.1:
- resolution: {integrity: sha512-k4MFt+4JhOWJZ9D2xpEcG/mpZyXVXYT+dSOg83vHK1xhXl+7r0IYBXRKWX2+To7/90KJaWlwpcdCAalXE8Debg==}
- dependencies:
- '@types/bytes': 3.1.2
- '@types/he': 1.2.1
- buffer-alloc: 1.2.0
- bytes: 3.1.2
- change-case: 4.1.2
- cuid: 2.1.8
- flattie: 1.1.0
- fs-readdir-recursive: 1.1.0
- he: 1.2.0
- kind-of: 6.0.3
- lodash: 4.17.21
- ms: 2.1.3
- pluralize: 8.0.0
- require-all: 3.0.0
- resolve-from: 5.0.0
- slugify: 1.6.6
- truncatise: 0.0.8
- dev: false
+ /astring@1.8.6:
+ resolution: {integrity: sha512-ISvCdHdlTDlH5IpxQJIex7BWBywFWgjJSVdwst+/iQCoEYnyOaQ95+X1JGshuBjGp6nxKUy1jMgE3zPqN7fQdg==}
+ hasBin: true
- /@poppinss/utils@4.0.4:
- resolution: {integrity: sha512-6LS3mofSVB9IQZqofA4rX6KVVcCpdwUQuNe4efHqOTzgD/Q5HTVvDP0vKg1m994QlzJs4aLW1JwXVcNCThEh4g==}
+ /async-retry@1.3.3:
+ resolution: {integrity: sha512-wfr/jstw9xNi/0teMHrRW7dsz3Lt5ARhYNZ2ewpadnhaIp5mbALhOAP+EAdsC7t4Z6wqsDVv9+W6gm1Dk9mEyw==}
dependencies:
- '@poppinss/file-generator': 1.0.2
- '@types/bytes': 3.1.2
- '@types/he': 1.2.1
- bytes: 3.1.2
- change-case: 4.1.2
- cuid: 2.1.8
- flattie: 1.1.0
- fs-readdir-recursive: 1.1.0
- he: 1.2.0
- kind-of: 6.0.3
- lodash: 4.17.21
- ms: 2.1.3
- pluralize: 8.0.0
- require-all: 3.0.0
- resolve-from: 5.0.0
- slugify: 1.6.6
- truncatise: 0.0.8
+ retry: 0.13.1
- /@poppinss/utils@5.0.0:
- resolution: {integrity: sha512-SpJL5p4Nx3bRCpCf62KagZLUHLvJD+VDylGpXAeP2G5qb3s6SSOBlpaFmer4GxdyTqLIUt0PRCzF1TbpNU+qZw==}
- dependencies:
- '@poppinss/file-generator': 1.0.2
- '@types/bytes': 3.1.2
- '@types/he': 1.2.1
- bytes: 3.1.2
- change-case: 4.1.2
- cuid: 2.1.8
- flattie: 1.1.0
- fs-readdir-recursive: 1.1.0
- he: 1.2.0
- kind-of: 6.0.3
- lodash: 4.17.21
- ms: 2.1.3
- pluralize: 8.0.0
- require-all: 3.0.0
- resolve-from: 5.0.0
- slugify: 1.6.6
- truncatise: 0.0.8
+ /atomic-sleep@1.0.0:
+ resolution: {integrity: sha512-kNOjDqAh7px0XWNI+4QbzoiR/nTkHAWNud2uvnJquD1/x5a7EQZMJT0AczqK0Qn67oY/TTQ1LbUKajZpp3I9tQ==}
+ engines: {node: '>=8.0.0'}
- /@sinclair/typebox@0.27.8:
- resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==}
+ /available-typed-arrays@1.0.5:
+ resolution: {integrity: sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==}
+ engines: {node: '>= 0.4'}
dev: true
- /@sindresorhus/is@4.6.0:
- resolution: {integrity: sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==}
- engines: {node: '>=10'}
+ /balanced-match@1.0.2:
+ resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
+
+ /base64-js@1.5.1:
+ resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==}
+
+ /basic-auth@2.0.1:
+ resolution: {integrity: sha512-NF+epuEdnUYVlGuhaxbbq+dvJttwLnGY+YixlXlME5KpQ5W3CnXA5cVTneY3SPbPDRkcjMbifrwmFYcClgOZeg==}
+ engines: {node: '>= 0.8'}
+ dependencies:
+ safe-buffer: 5.1.2
dev: false
- /@symfony/webpack-encore@4.4.0(@babel/core@7.23.0)(@babel/preset-env@7.22.20)(eslint@8.46.0)(postcss@8.4.31)(typescript@5.1.6)(webpack-cli@5.1.4)(webpack@5.88.2):
- resolution: {integrity: sha512-p3n2Z16sGV6odZ3ihIU+gupYc55KfrfCt62+Gppe8MUo6QuT5Bk2cXXjR4Hb89KvCRDHnjYEWVfnewRsfE8TRQ==}
- engines: {node: '>=14.0.0'}
- hasBin: true
- peerDependencies:
- '@babel/core': ^7.17.0
- '@babel/plugin-transform-react-jsx': ^7.12.11
- '@babel/preset-env': ^7.16.0
- '@babel/preset-react': ^7.0.0
- '@babel/preset-typescript': ^7.0.0
- '@symfony/stimulus-bridge': ^3.0.0
- '@vue/babel-helper-vue-jsx-merge-props': ^1.0.0
- '@vue/babel-preset-jsx': ^1.0.0
- '@vue/compiler-sfc': ^2.6 || ^3.0.2
- eslint: ^8.0.0
- eslint-webpack-plugin: ^3.1.0 || ^4.0.0
- file-loader: ^6.0.0
- fork-ts-checker-webpack-plugin: ^7.0.0
- handlebars: ^4.7.7
- handlebars-loader: ^1.7.0
- less: ^4.0.0
- less-loader: ^11.0.0
- postcss: ^8.3.0
- postcss-loader: ^7.0.0
- sass: ^1.17.0
- sass-loader: ^13.0.0
- stylus: ^0.58.1
- stylus-loader: ^7.0.0
- ts-loader: ^9.0.0
- typescript: ^4.2.2 || ^5.0.0
- vue: ^2.6 || ^3.2.14
- vue-loader: ^15.0.11 || ^17.0.0
- vue-template-compiler: ^2.5
- webpack: ^5.72
- webpack-cli: ^4.9.1 || ^5.0.1
- webpack-notifier: ^1.15.0
- peerDependenciesMeta:
- '@babel/plugin-transform-react-jsx':
- optional: true
- '@babel/preset-react':
- optional: true
- '@babel/preset-typescript':
- optional: true
- '@symfony/stimulus-bridge':
- optional: true
- '@vue/babel-helper-vue-jsx-merge-props':
- optional: true
- '@vue/babel-preset-jsx':
- optional: true
- '@vue/compiler-sfc':
- optional: true
- eslint:
- optional: true
- eslint-webpack-plugin:
- optional: true
- file-loader:
- optional: true
- fork-ts-checker-webpack-plugin:
- optional: true
- handlebars:
- optional: true
- handlebars-loader:
- optional: true
- less:
- optional: true
- less-loader:
- optional: true
- postcss:
- optional: true
- postcss-loader:
- optional: true
- sass:
- optional: true
- sass-loader:
- optional: true
- stylus:
- optional: true
- stylus-loader:
- optional: true
- ts-loader:
- optional: true
- typescript:
- optional: true
- vue:
- optional: true
- vue-loader:
- optional: true
- vue-template-compiler:
- optional: true
- webpack-notifier:
- optional: true
+ /bcrypt@5.1.1:
+ resolution: {integrity: sha512-AGBHOG5hPYZ5Xl9KXzU5iKq9516yEmvCKDg3ecP5kX2aB6UqTeXZxk2ELnDgDm6BQSMlLt9rDB4LoSMx0rYwww==}
+ engines: {node: '>= 10.0.0'}
+ requiresBuild: true
dependencies:
- '@babel/core': 7.23.0
- '@babel/preset-env': 7.22.20(@babel/core@7.23.0)
- '@nuxt/friendly-errors-webpack-plugin': 2.5.2(webpack@5.88.2)
- assets-webpack-plugin: 7.0.0(webpack@5.88.2)
- babel-loader: 8.3.0(@babel/core@7.23.0)(webpack@5.88.2)
- chalk: 4.1.2
- clean-webpack-plugin: 4.0.0(webpack@5.88.2)
- css-loader: 6.8.1(webpack@5.88.2)
- css-minimizer-webpack-plugin: 5.0.1(webpack@5.88.2)
- eslint: 8.46.0
- fast-levenshtein: 3.0.0
- mini-css-extract-plugin: 2.7.6(webpack@5.88.2)
- pkg-up: 3.1.0
- postcss: 8.4.31
- pretty-error: 4.0.0
- resolve-url-loader: 5.0.0
- semver: 7.5.4
- style-loader: 3.3.3(webpack@5.88.2)
- sync-rpc: 1.3.6
- tapable: 2.2.1
- terser-webpack-plugin: 5.3.9(webpack@5.88.2)
- tmp: 0.2.1
- typescript: 5.1.6
- webpack: 5.88.2(webpack-cli@5.1.4)
- webpack-cli: 5.1.4(webpack@5.88.2)
- webpack-dev-server: 4.15.1(webpack-cli@5.1.4)(webpack@5.88.2)
- yargs-parser: 21.1.1
+ '@mapbox/node-pre-gyp': 1.0.11
+ node-addon-api: 5.1.0
transitivePeerDependencies:
- - '@parcel/css'
- - '@swc/core'
- - '@swc/css'
- - bufferutil
- - clean-css
- - csso
- - debug
- - esbuild
- - lightningcss
+ - encoding
- supports-color
- - uglify-js
- - utf-8-validate
- dev: true
- /@szmarczak/http-timer@4.0.6:
- resolution: {integrity: sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==}
- engines: {node: '>=10'}
- dependencies:
- defer-to-connect: 2.0.1
+ /bignumber.js@9.0.0:
+ resolution: {integrity: sha512-t/OYhhJ2SD+YGBQcjY8GzzDHEk9f3nerxjtfa6tlMXfe7frs/WozhvCNoGvpM0P3bNf3Gq5ZRMlGr5f3r4/N8A==}
dev: false
- /@tokenizer/token@0.3.0:
- resolution: {integrity: sha512-OvjF+z51L3ov0OyAU0duzsYuvO01PH7x4t6DJx+guahgTnBHkhJdG7soQeTSFLWN3efnHyibZ4Z8l2EuWwJN3A==}
+ /binary-extensions@2.2.0:
+ resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==}
+ engines: {node: '>=8'}
- /@tootallnate/once@1.1.2:
- resolution: {integrity: sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==}
- engines: {node: '>= 6'}
- requiresBuild: true
+ /bindings@1.5.0:
+ resolution: {integrity: sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==}
+ dependencies:
+ file-uri-to-path: 1.0.0
dev: false
- optional: true
- /@trysound/sax@0.2.0:
- resolution: {integrity: sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==}
- engines: {node: '>=10.13.0'}
- dev: true
+ /bl@1.2.3:
+ resolution: {integrity: sha512-pvcNpa0UU69UT341rO6AYy4FVAIkUHuZXRIWbq+zHnsVcRzDDjIAhGuuYoi0d//cwIwtt4pkpKycWEfjdV+vww==}
+ dependencies:
+ readable-stream: 2.3.8
+ safe-buffer: 5.2.1
+ dev: false
- /@ts-morph/common@0.17.0:
- resolution: {integrity: sha512-RMSSvSfs9kb0VzkvQ2NWobwnj7TxCA9vI/IjR9bDHqgAyVbu2T0DN4wiKVqomyDWqO7dPr/tErSfq7urQ1Q37g==}
+ /bl@4.1.0:
+ resolution: {integrity: sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==}
dependencies:
- fast-glob: 3.3.1
- minimatch: 5.1.6
- mkdirp: 1.0.4
- path-browserify: 1.0.1
+ buffer: 5.7.1
+ inherits: 2.0.4
+ readable-stream: 3.6.2
dev: false
- /@types/bcrypt@5.0.0:
- resolution: {integrity: sha512-agtcFKaruL8TmcvqbndlqHPSJgsolhf/qPWchFlgnW1gECTN/nKbFcoFnvKAQRFfKbh+BO6A3SWdJu9t+xF3Lw==}
+ /brace-expansion@1.1.11:
+ resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==}
dependencies:
- '@types/node': 20.7.2
- dev: true
+ balanced-match: 1.0.2
+ concat-map: 0.0.1
- /@types/body-parser@1.19.3:
- resolution: {integrity: sha512-oyl4jvAfTGX9Bt6Or4H9ni1Z447/tQuxnZsytsCaExKlmJiU8sFgnIBRzJUpKwB5eWn9HuBYlUlVA74q/yN0eQ==}
+ /brace-expansion@2.0.1:
+ resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==}
dependencies:
- '@types/connect': 3.4.36
- '@types/node': 20.7.2
- dev: true
+ balanced-match: 1.0.2
+
+ /braces@3.0.2:
+ resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==}
+ engines: {node: '>=8'}
+ dependencies:
+ fill-range: 7.0.1
- /@types/bonjour@3.5.11:
- resolution: {integrity: sha512-isGhjmBtLIxdHBDl2xGwUzEM8AOyOvWsADWq7rqirdi/ZQoHnLWErHvsThcEzTX8juDRiZtzp2Qkv5bgNh6mAg==}
+ /browserslist@4.22.3:
+ resolution: {integrity: sha512-UAp55yfwNv0klWNapjs/ktHoguxuQNGnOzxYmfnXIS+8AsRDZkSDxg7R1AX3GKzn078SBI5dzwzj/Yx0Or0e3A==}
+ engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
+ hasBin: true
dependencies:
- '@types/node': 20.7.2
+ caniuse-lite: 1.0.30001585
+ electron-to-chromium: 1.4.665
+ node-releases: 2.0.14
+ update-browserslist-db: 1.0.13(browserslist@4.22.3)
dev: true
- /@types/bytes@3.1.2:
- resolution: {integrity: sha512-92b6q7CSYBMVZDtMZh5PuKm3LjZwcU7s6H8e9sU20Z1tOrTuXN+Hz3VuP9E8axiQRaCoiEOMN1duqPCEIhamrQ==}
+ /buffer-alloc-unsafe@1.1.0:
+ resolution: {integrity: sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==}
+ dev: false
- /@types/cacheable-request@6.0.3:
- resolution: {integrity: sha512-IQ3EbTzGxIigb1I3qPZc1rWJnH0BmSKv5QYTalEwweFvyBDLSAe24zP0le/hyi7ecGfZVlIVAg4BZqb8WBwKqw==}
+ /buffer-alloc@1.2.0:
+ resolution: {integrity: sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==}
dependencies:
- '@types/http-cache-semantics': 4.0.2
- '@types/keyv': 3.1.4
- '@types/node': 20.7.2
- '@types/responselike': 1.0.1
+ buffer-alloc-unsafe: 1.1.0
+ buffer-fill: 1.0.0
dev: false
- /@types/chai@4.3.6:
- resolution: {integrity: sha512-VOVRLM1mBxIRxydiViqPcKn6MIxZytrbMpd6RJLIWKxUNr3zux8no0Oc7kJx0WAPIitgZ0gkrDS+btlqQpubpw==}
- dev: true
+ /buffer-fill@1.0.0:
+ resolution: {integrity: sha512-T7zexNBwiiaCOGDg9xNX9PBmjrubblRkENuptryuI64URkXDFum9il/JGL8Lm8wYfAXpredVXXZz7eMHilimiQ==}
+ dev: false
- /@types/connect-history-api-fallback@1.5.1:
- resolution: {integrity: sha512-iaQslNbARe8fctL5Lk+DsmgWOM83lM+7FzP0eQUJs1jd3kBE8NWqBTIT2S8SqQOJjxvt2eyIjpOuYeRXq2AdMw==}
- dependencies:
- '@types/express-serve-static-core': 4.17.37
- '@types/node': 20.7.2
- dev: true
+ /buffer-writer@2.0.0:
+ resolution: {integrity: sha512-a7ZpuTZU1TRtnwyCNW3I5dc0wWNC3VR9S++Ewyk2HHZdrO3CQJqSpd+95Us590V6AL7JqUAH2IwZ/398PmNFgw==}
+ engines: {node: '>=4'}
+ dev: false
- /@types/connect@3.4.36:
- resolution: {integrity: sha512-P63Zd/JUGq+PdrM1lv0Wv5SBYeA2+CORvbrXbngriYY0jzLUWfQMQQxOhjONEz/wlHOAxOdY7CY65rgQdTjq2w==}
+ /buffer@5.7.1:
+ resolution: {integrity: sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==}
dependencies:
- '@types/node': 20.7.2
- dev: true
-
- /@types/cookiejar@2.1.2:
- resolution: {integrity: sha512-t73xJJrvdTjXrn4jLS9VSGRbz0nUY3cl2DMGDU48lKl+HR9dbbjW2A9r3g40VA++mQpy6uuHg33gy7du2BKpog==}
- dev: true
+ base64-js: 1.5.1
+ ieee754: 1.2.1
+ dev: false
- /@types/eslint-scope@3.7.5:
- resolution: {integrity: sha512-JNvhIEyxVW6EoMIFIvj93ZOywYFatlpu9deeH6eSx6PE3WHYvHaQtmHmQeNw7aA81bYGBPPQqdtBm6b1SsQMmA==}
+ /buffer@6.0.3:
+ resolution: {integrity: sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==}
dependencies:
- '@types/eslint': 8.44.3
- '@types/estree': 1.0.2
- dev: true
+ base64-js: 1.5.1
+ ieee754: 1.2.1
- /@types/eslint@8.44.3:
- resolution: {integrity: sha512-iM/WfkwAhwmPff3wZuPLYiHX18HI24jU8k1ZSH7P8FHwxTjZ2P6CoX2wnF43oprR+YXJM6UUxATkNvyv/JHd+g==}
- dependencies:
- '@types/estree': 1.0.2
- '@types/json-schema': 7.0.13
+ /builtin-modules@3.3.0:
+ resolution: {integrity: sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==}
+ engines: {node: '>=6'}
dev: true
- /@types/estree@1.0.2:
- resolution: {integrity: sha512-VeiPZ9MMwXjO32/Xu7+OwflfmeoRwkE/qzndw42gGtgJwZopBnzy2gD//NN1+go1mADzkDcqf/KnFRSjTJ8xJA==}
- dev: true
+ /bytes@3.1.2:
+ resolution: {integrity: sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==}
+ engines: {node: '>= 0.8'}
- /@types/express-serve-static-core@4.17.37:
- resolution: {integrity: sha512-ZohaCYTgGFcOP7u6aJOhY9uIZQgZ2vxC2yWoArY+FeDXlqeH66ZVBjgvg+RLVAS/DWNq4Ap9ZXu1+SUQiiWYMg==}
- dependencies:
- '@types/node': 20.7.2
- '@types/qs': 6.9.8
- '@types/range-parser': 1.2.5
- '@types/send': 0.17.2
- dev: true
-
- /@types/express@4.17.18:
- resolution: {integrity: sha512-Sxv8BSLLgsBYmcnGdGjjEjqET2U+AKAdCRODmMiq02FgjwuV75Ut85DRpvFjyw/Mk0vgUOliGRU0UUmuuZHByQ==}
- dependencies:
- '@types/body-parser': 1.19.3
- '@types/express-serve-static-core': 4.17.37
- '@types/qs': 6.9.8
- '@types/serve-static': 1.15.3
- dev: true
-
- /@types/fs-extra@11.0.1:
- resolution: {integrity: sha512-MxObHvNl4A69ofaTRU8DFqvgzzv8s9yRtaPPm5gud9HDNvpB3GPQFvNuTWAI59B9huVGV5jXYJwbCsmBsOGYWA==}
+ /cacache@15.3.0:
+ resolution: {integrity: sha512-VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ==}
+ engines: {node: '>= 10'}
+ requiresBuild: true
dependencies:
- '@types/jsonfile': 6.1.2
- '@types/node': 20.7.2
- dev: true
+ '@npmcli/fs': 1.1.1
+ '@npmcli/move-file': 1.1.2
+ chownr: 2.0.0
+ fs-minipass: 2.1.0
+ glob: 7.2.3
+ infer-owner: 1.0.4
+ lru-cache: 6.0.0
+ minipass: 3.3.6
+ minipass-collect: 1.0.2
+ minipass-flush: 1.0.5
+ minipass-pipeline: 1.2.4
+ mkdirp: 1.0.4
+ p-map: 4.0.0
+ promise-inflight: 1.0.1
+ rimraf: 3.0.2
+ ssri: 8.0.1
+ tar: 6.2.0
+ unique-filename: 1.1.1
+ transitivePeerDependencies:
+ - bluebird
+ dev: false
+ optional: true
- /@types/fs-extra@9.0.13:
- resolution: {integrity: sha512-nEnwB++1u5lVDM2UI4c1+5R+FYaKfaAzS4OococimjVm3nQw3TuzH5UNsocrcTBbhnerblyHj4A49qXbIiZdpA==}
- dependencies:
- '@types/node': 20.7.2
+ /cacheable-lookup@7.0.0:
+ resolution: {integrity: sha512-+qJyx4xiKra8mZrcwhjMRMUhD5NR1R8esPkzIYxX96JiecFoxAXFuz/GpR3+ev4PE1WamHip78wV0vcmPQtp8w==}
+ engines: {node: '>=14.16'}
+ dev: false
- /@types/glob@7.2.0:
- resolution: {integrity: sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==}
+ /cacheable-request@10.2.14:
+ resolution: {integrity: sha512-zkDT5WAF4hSSoUgyfg5tFIxz8XQK+25W/TLVojJTMKBaxevLBBtLxgqguAuVQB8PVW79FVjHcU+GJ9tVbDZ9mQ==}
+ engines: {node: '>=14.16'}
dependencies:
- '@types/minimatch': 5.1.2
- '@types/node': 20.7.2
- dev: true
-
- /@types/he@1.2.1:
- resolution: {integrity: sha512-CdNmJMcSqX1BiP3iSsWt+VgixndRIDGzWyaGpBnW3i5heATSk5bJu2j3buutsoBQNjyryqxaNpr8M7fRsGL15w==}
-
- /@types/http-cache-semantics@4.0.2:
- resolution: {integrity: sha512-FD+nQWA2zJjh4L9+pFXqWOi0Hs1ryBCfI+985NjluQ1p8EYtoLvjLOKidXBtZ4/IcxDX4o8/E8qDS3540tNliw==}
+ '@types/http-cache-semantics': 4.0.4
+ get-stream: 6.0.1
+ http-cache-semantics: 4.1.1
+ keyv: 4.5.4
+ mimic-response: 4.0.0
+ normalize-url: 8.0.0
+ responselike: 3.0.0
dev: false
- /@types/http-errors@2.0.2:
- resolution: {integrity: sha512-lPG6KlZs88gef6aD85z3HNkztpj7w2R7HmR3gygjfXCQmsLloWNARFkMuzKiiY8FGdh1XDpgBdrSf4aKDiA7Kg==}
- dev: true
-
- /@types/http-proxy@1.17.12:
- resolution: {integrity: sha512-kQtujO08dVtQ2wXAuSFfk9ASy3sug4+ogFR8Kd8UgP8PEuc1/G/8yjYRmp//PcDNJEUKOza/MrQu15bouEUCiw==}
+ /call-bind@1.0.5:
+ resolution: {integrity: sha512-C3nQxfFZxFRVoJoGKKI8y3MOEo129NQ+FgQ08iye+Mk4zNZZGdjfs06bVTr+DBSlA66Q2VEcMki/cUCP4SercQ==}
dependencies:
- '@types/node': 20.7.2
- dev: true
+ function-bind: 1.1.2
+ get-intrinsic: 1.2.2
+ set-function-length: 1.2.0
- /@types/istanbul-lib-coverage@2.0.4:
- resolution: {integrity: sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==}
+ /callsites@3.1.0:
+ resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==}
+ engines: {node: '>=6'}
dev: true
- /@types/istanbul-lib-report@3.0.1:
- resolution: {integrity: sha512-gPQuzaPR5h/djlAv2apEG1HVOyj1IUs7GpfMZixU0/0KXT3pm64ylHuMUI1/Akh+sq/iikxg6Z2j+fcMDXaaTQ==}
- dependencies:
- '@types/istanbul-lib-coverage': 2.0.4
+ /caniuse-lite@1.0.30001585:
+ resolution: {integrity: sha512-yr2BWR1yLXQ8fMpdS/4ZZXpseBgE7o4g41x3a6AJOqZuOi+iE/WdJYAuZ6Y95i4Ohd2Y+9MzIWRR+uGABH4s3Q==}
dev: true
- /@types/istanbul-reports@1.1.2:
- resolution: {integrity: sha512-P/W9yOX/3oPZSpaYOCQzGqgCQRXn0FFO/V8bWrCQs+wLmvVVxk6CRBXALEvNs9OHIatlnlFokfhuDo2ug01ciw==}
- dependencies:
- '@types/istanbul-lib-coverage': 2.0.4
- '@types/istanbul-lib-report': 3.0.1
- dev: true
+ /case-anything@2.1.13:
+ resolution: {integrity: sha512-zlOQ80VrQ2Ue+ymH5OuM/DlDq64mEm+B9UTdHULv5osUMD6HalNTblf2b1u/m6QecjsnOkBpqVZ+XPwIVsy7Ng==}
+ engines: {node: '>=12.13'}
- /@types/istanbul-reports@3.0.2:
- resolution: {integrity: sha512-kv43F9eb3Lhj+lr/Hn6OcLCs/sSM8bt+fIaP11rCYngfV6NVjzWXJ17owQtDQTL9tQ8WSLUrGsSJ6rJz0F1w1A==}
+ /chalk@2.4.2:
+ resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==}
+ engines: {node: '>=4'}
dependencies:
- '@types/istanbul-lib-report': 3.0.1
- dev: true
-
- /@types/json-schema@7.0.13:
- resolution: {integrity: sha512-RbSSoHliUbnXj3ny0CNFOoxrIDV6SUGyStHsvDqosw6CkdPV8TtWGlfecuK4ToyMEAql6pzNxgCFKanovUzlgQ==}
- dev: true
-
- /@types/json5@0.0.29:
- resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==}
+ ansi-styles: 3.2.1
+ escape-string-regexp: 1.0.5
+ supports-color: 5.5.0
dev: true
- /@types/jsonfile@6.1.2:
- resolution: {integrity: sha512-8t92P+oeW4d/CRQfJaSqEwXujrhH4OEeHRjGU3v1Q8mUS8GPF3yiX26sw4svv6faL2HfBtGTe2xWIoVgN3dy9w==}
+ /chalk@4.1.2:
+ resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==}
+ engines: {node: '>=10'}
dependencies:
- '@types/node': 20.7.2
- dev: true
+ ansi-styles: 4.3.0
+ supports-color: 7.2.0
- /@types/keyv@3.1.4:
- resolution: {integrity: sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==}
+ /chokidar@3.5.3:
+ resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==}
+ engines: {node: '>= 8.10.0'}
dependencies:
- '@types/node': 20.7.2
+ anymatch: 3.1.3
+ braces: 3.0.2
+ glob-parent: 5.1.2
+ is-binary-path: 2.1.0
+ is-glob: 4.0.3
+ normalize-path: 3.0.0
+ readdirp: 3.6.0
+ optionalDependencies:
+ fsevents: 2.3.3
+
+ /chownr@1.1.4:
+ resolution: {integrity: sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==}
dev: false
- /@types/luxon@3.3.1:
- resolution: {integrity: sha512-XOS5nBcgEeP2PpcqJHjCWhUCAzGfXIU8ILOSLpx2FhxqMW9KdxgCGXNOEKGVBfveKtIpztHzKK5vSRVLyW/NqA==}
+ /chownr@2.0.0:
+ resolution: {integrity: sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==}
+ engines: {node: '>=10'}
- /@types/mime@1.3.3:
- resolution: {integrity: sha512-Ys+/St+2VF4+xuY6+kDIXGxbNRO0mesVg0bbxEfB97Od1Vjpjx9KD1qxs64Gcb3CWPirk9Xe+PT4YiiHQ9T+eg==}
+ /ci-info@3.9.0:
+ resolution: {integrity: sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==}
+ engines: {node: '>=8'}
dev: true
- /@types/mime@3.0.2:
- resolution: {integrity: sha512-Wj+fqpTLtTbG7c0tH47dkahefpLKEbB+xAZuLq7b4/IDHPl/n6VoXcyUQ2bypFlbSwvCr0y+bD4euTTqTJsPxQ==}
+ /ci-info@4.0.0:
+ resolution: {integrity: sha512-TdHqgGf9odd8SXNuxtUBVx8Nv+qZOejE6qyqiy5NtbYYQOeFa6zmHkxlPzmaLxWWHsU6nJmB7AETdVPi+2NBUg==}
+ engines: {node: '>=8'}
dev: true
- /@types/minimatch@5.1.2:
- resolution: {integrity: sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==}
- dev: true
+ /classnames@2.5.1:
+ resolution: {integrity: sha512-saHYOzhIQs6wy2sVxTM6bUDsQO4F50V9RQ22qBpEdCW+I+/Wmke2HOl6lS6dTpdxVhb88/I6+Hs+438c3lfUow==}
- /@types/node-fetch@2.6.4:
- resolution: {integrity: sha512-1ZX9fcN4Rvkvgv4E6PAY5WXUFWFcRWxZa3EW83UjycOB9ljJCedb2CupIP4RZMEwF/M3eTcCihbBRgwtGbg5Rg==}
+ /clean-regexp@1.0.0:
+ resolution: {integrity: sha512-GfisEZEJvzKrmGWkvfhgzcz/BllN1USeqD2V6tg14OAOgaCD2Z/PUEuxnAZ/nPvmaHRG7a8y77p1T/IRQ4D1Hw==}
+ engines: {node: '>=4'}
dependencies:
- '@types/node': 20.7.2
- form-data: 3.0.1
+ escape-string-regexp: 1.0.5
dev: true
- /@types/node@20.7.2:
- resolution: {integrity: sha512-RcdC3hOBOauLP+r/kRt27NrByYtDjsXyAuSbR87O6xpsvi763WI+5fbSIvYJrXnt9w4RuxhV6eAXfIs7aaf/FQ==}
+ /clean-stack@2.2.0:
+ resolution: {integrity: sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==}
+ engines: {node: '>=6'}
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /clean-stack@4.2.0:
+ resolution: {integrity: sha512-LYv6XPxoyODi36Dp976riBtSY27VmFo+MKqEU9QCCWyTrdEPDog+RWA7xQWHi6Vbp61j5c4cdzzX1NidnwtUWg==}
+ engines: {node: '>=12'}
+ dependencies:
+ escape-string-regexp: 5.0.0
- /@types/normalize-package-data@2.4.2:
- resolution: {integrity: sha512-lqa4UEhhv/2sjjIQgjX8B+RBjj47eo0mzGasklVJ78UKGQY1r0VpB9XHDaZZO9qzEFDdy4MrXLuEaSmPrPSe/A==}
- dev: true
+ /cli-boxes@3.0.0:
+ resolution: {integrity: sha512-/lzGpEWL/8PfI0BmBOPRwp0c/wFNX1RdUML3jK/RcSBA9T8mZDdQpqYBKtCFTOfQbwPqWEOpjqW+Fnayc0969g==}
+ engines: {node: '>=10'}
- /@types/pino-pretty@5.0.0:
- resolution: {integrity: sha512-N1uzqSzioqz8R3AkDbSJwcfDWeI3YMPNapSQQhnB2ISU4NYgUIcAh+hYT5ygqBM+klX4htpEhXMmoJv3J7GrdA==}
- deprecated: This is a stub types definition. pino-pretty provides its own type definitions, so you do not need this installed.
+ /cli-cursor@4.0.0:
+ resolution: {integrity: sha512-VGtlMu3x/4DOtIUwEkRezxUZ2lBacNJCHash0N0WeZDBS+7Ux1dm3XWAgWYxLJFMMdOeXMHXorshEFhbMSGelg==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
dependencies:
- pino-pretty: 10.2.0
+ restore-cursor: 4.0.0
- /@types/pino-std-serializers@4.0.0:
- resolution: {integrity: sha512-gXfUZx2xIBbFYozGms53fT0nvkacx/+62c8iTxrEqH5PkIGAQvDbXg2774VWOycMPbqn5YJBQ3BMsg4Li3dWbg==}
- deprecated: This is a stub types definition. pino-std-serializers provides its own type definitions, so you do not need this installed.
+ /cli-table3@0.6.3:
+ resolution: {integrity: sha512-w5Jac5SykAeZJKntOxJCrm63Eg5/4dhMWIcuTbo9rpE+brgaSZo0RuNJZeOyMgsUdhDeojvgyQLmjI+K50ZGyg==}
+ engines: {node: 10.* || >= 12.*}
dependencies:
- pino-std-serializers: 6.2.2
+ string-width: 4.2.3
+ optionalDependencies:
+ '@colors/colors': 1.5.0
- /@types/pino@6.3.12:
- resolution: {integrity: sha512-dsLRTq8/4UtVSpJgl9aeqHvbh6pzdmjYD3C092SYgLD2TyoCqHpTJk6vp8DvCTGGc7iowZ2MoiYiVUUCcu7muw==}
+ /cli-truncate@4.0.0:
+ resolution: {integrity: sha512-nPdaFdQ0h/GEigbPClz11D0v/ZJEwxmeVZGeMo3Z5StPtUTkA9o1lD6QwoirYiSDzbcwn2XcjwmCp68W1IS4TA==}
+ engines: {node: '>=18'}
dependencies:
- '@types/node': 20.7.2
- '@types/pino-pretty': 5.0.0
- '@types/pino-std-serializers': 4.0.0
- sonic-boom: 2.8.0
+ slice-ansi: 5.0.0
+ string-width: 7.1.0
+
+ /code-block-writer@11.0.3:
+ resolution: {integrity: sha512-NiujjUFB4SwScJq2bwbYUtXbZhBSlY6vYzm++3Q6oC+U+injTqfPYFK8wS9COOmb2lueqp0ZRB4nK1VYeHgNyw==}
+ dev: false
+
+ /code-block-writer@12.0.0:
+ resolution: {integrity: sha512-q4dMFMlXtKR3XNBHyMHt/3pwYNA69EDk00lloMOaaUMKPUXBw6lpXtbu3MMVG6/uOihGnRDOlkyqsONEUj60+w==}
- /@types/proxy-addr@2.0.1:
- resolution: {integrity: sha512-fLqXRu+ihH+/V7AB12siUu84uloauJ7SdBMrHARcHQN/yYIa0d9uQSYxSWnMRF0892N2/CJzPVYP3ltgtkkgsQ==}
+ /color-convert@1.9.3:
+ resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==}
dependencies:
- '@types/node': 20.7.2
+ color-name: 1.1.3
dev: true
- /@types/qs@6.9.8:
- resolution: {integrity: sha512-u95svzDlTysU5xecFNTgfFG5RUWu1A9P0VzgpcIiGZA9iraHOdSzcxMxQ55DyeRaGCSxQi7LxXDI4rzq/MYfdg==}
- dev: true
+ /color-convert@2.0.1:
+ resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==}
+ engines: {node: '>=7.0.0'}
+ dependencies:
+ color-name: 1.1.4
- /@types/range-parser@1.2.5:
- resolution: {integrity: sha512-xrO9OoVPqFuYyR/loIHjnbvvyRZREYKLjxV4+dY6v3FQR3stQ9ZxIGkaclF7YhI9hfjpuTbu14hZEy94qKLtOA==}
+ /color-name@1.1.3:
+ resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==}
dev: true
- /@types/responselike@1.0.1:
- resolution: {integrity: sha512-TiGnitEDxj2X0j+98Eqk5lv/Cij8oHd32bU4D/Yw6AOq7vvTk0gSD2GPj0G/HkvhMoVsdlhYF4yqqlyPBTM6Sg==}
- dependencies:
- '@types/node': 20.7.2
+ /color-name@1.1.4:
+ resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==}
+
+ /color-support@1.1.3:
+ resolution: {integrity: sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==}
+ hasBin: true
+
+ /colorette@2.0.19:
+ resolution: {integrity: sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==}
dev: false
- /@types/retry@0.12.0:
- resolution: {integrity: sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==}
- dev: true
+ /commander@10.0.1:
+ resolution: {integrity: sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==}
+ engines: {node: '>=14'}
+ dev: false
- /@types/semver@7.5.0:
- resolution: {integrity: sha512-G8hZ6XJiHnuhQKR7ZmysCeJWE08o8T0AXtk5darsCaTVsYZhhgUrq53jizaR2FvsoeCwJhlmwTjkXBY5Pn/ZHw==}
- dev: true
+ /common-path-prefix@3.0.0:
+ resolution: {integrity: sha512-QE33hToZseCH3jS0qN96O/bSh3kaw/h+Tq7ngyY9eWDUnTlTNUyqfqvCXioLe5Na5jFsL78ra/wuBU4iuEgd4w==}
- /@types/send@0.17.2:
- resolution: {integrity: sha512-aAG6yRf6r0wQ29bkS+x97BIs64ZLxeE/ARwyS6wrldMm3C1MdKwCcnnEwMC1slI8wuxJOpiUH9MioC0A0i+GJw==}
- dependencies:
- '@types/mime': 1.3.3
- '@types/node': 20.7.2
- dev: true
+ /concat-map@0.0.1:
+ resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==}
- /@types/serve-index@1.9.2:
- resolution: {integrity: sha512-asaEIoc6J+DbBKXtO7p2shWUpKacZOoMBEGBgPG91P8xhO53ohzHWGCs4ScZo5pQMf5ukQzVT9fhX1WzpHihig==}
- dependencies:
- '@types/express': 4.17.18
- dev: true
+ /console-control-strings@1.1.0:
+ resolution: {integrity: sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==}
- /@types/serve-static@1.15.3:
- resolution: {integrity: sha512-yVRvFsEMrv7s0lGhzrggJjNOSmZCdgCjw9xWrPr/kNNLp6FaDfMC1KaYl3TSJ0c58bECwNBMoQrZJ8hA8E1eFg==}
+ /content-disposition@0.5.4:
+ resolution: {integrity: sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==}
+ engines: {node: '>= 0.6'}
dependencies:
- '@types/http-errors': 2.0.2
- '@types/mime': 3.0.2
- '@types/node': 20.7.2
- dev: true
+ safe-buffer: 5.2.1
- /@types/sockjs@0.3.34:
- resolution: {integrity: sha512-R+n7qBFnm/6jinlteC9DBL5dGiDGjWAvjo4viUanpnc/dG1y7uDoacXPIQ/PQEg1fI912SMHIa014ZjRpvDw4g==}
- dependencies:
- '@types/node': 20.7.2
- dev: true
+ /convert-hrtime@5.0.0:
+ resolution: {integrity: sha512-lOETlkIeYSJWcbbcvjRKGxVMXJR+8+OQb/mTPbA4ObPMytYIsUbuOE0Jzy60hjARYszq1id0j8KgVhC+WGZVTg==}
+ engines: {node: '>=12'}
- /@types/source-map-support@0.5.6:
- resolution: {integrity: sha512-b2nJ9YyXmkhGaa2b8VLM0kJ04xxwNyijcq12/kDoomCt43qbHBeK2SLNJ9iJmETaAj+bKUT05PQUu3Q66GvLhQ==}
- dependencies:
- source-map: 0.6.1
- dev: true
+ /cookie@0.5.0:
+ resolution: {integrity: sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==}
+ engines: {node: '>= 0.6'}
- /@types/superagent@4.1.19:
- resolution: {integrity: sha512-McM1mlc7PBZpCaw0fw/36uFqo0YeA6m8JqoyE4OfqXsZCIg0hPP2xdE6FM7r6fdprDZHlJwDpydUj1R++93hCA==}
- dependencies:
- '@types/cookiejar': 2.1.2
- '@types/node': 20.7.2
- dev: true
+ /cookie@0.6.0:
+ resolution: {integrity: sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==}
+ engines: {node: '>= 0.6'}
- /@types/tar-fs@2.0.2:
- resolution: {integrity: sha512-XuZRAvdo7FbDfgQCNkc8NOdSae5XtG+of2mTSgJ85G4OG0miN4E8BTGT+JBTLO87RQ7iCwsIDCqCsHnf2IaSXA==}
+ /copy-file@11.0.0:
+ resolution: {integrity: sha512-mFsNh/DIANLqFt5VHZoGirdg7bK5+oTWlhnGu6tgRhzBlnEKWaPX2xrFaLltii/6rmhqFMJqffUgknuRdpYlHw==}
+ engines: {node: '>=18'}
dependencies:
- '@types/node': 20.7.2
- '@types/tar-stream': 3.1.1
- dev: true
+ graceful-fs: 4.2.11
+ p-event: 6.0.0
- /@types/tar-stream@3.1.1:
- resolution: {integrity: sha512-/1E+a09mAFQwhlEHqiS3LuNWIBiyrn0HqUWZk2IyGzodu9zkXbaT5vl94iGlZGnG2IONVFZd84SFhns3MhhAQQ==}
+ /core-js-compat@3.35.1:
+ resolution: {integrity: sha512-sftHa5qUJY3rs9Zht1WEnmkvXputCyDBczPnr7QDgL8n3qrF3CMXY4VPSYtOLLiOUJcah2WNXREd48iOl6mQIw==}
dependencies:
- '@types/node': 20.7.2
+ browserslist: 4.22.3
dev: true
- /@types/targz@1.0.1:
- resolution: {integrity: sha512-Uf5QxuLICkVOmSyDhPicBpIXk2oLIqaldObfr/WsTKTAPk666OpbeL0wZuNXwc5yg9OH1cBVj1rpMHGBJe4ilg==}
+ /core-util-is@1.0.3:
+ resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==}
+ dev: false
+
+ /cpy@11.0.0:
+ resolution: {integrity: sha512-vA71mFQyIxCrqvP/9JBLCj05UJV/+WpvAxZK2/EiK5ndD090cjuChfJ3ExVVuZXHoTJ/3HLedOPYDWyxnNHjrg==}
+ engines: {node: '>=18'}
dependencies:
- '@types/tar-fs': 2.0.2
- dev: true
+ copy-file: 11.0.0
+ globby: 13.2.2
+ junk: 4.0.1
+ micromatch: 4.0.5
+ p-filter: 3.0.0
+ p-map: 6.0.0
- /@types/uuid@9.0.2:
- resolution: {integrity: sha512-kNnC1GFBLuhImSnV7w4njQkUiJi0ZXUycu1rUaouPqiKlXkh77JKgdRnTAp1x5eBwcIwbtI+3otwzuIDEuDoxQ==}
+ /create-require@1.1.1:
+ resolution: {integrity: sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==}
dev: true
- /@types/validator@13.11.2:
- resolution: {integrity: sha512-nIKVVQKT6kGKysnNt+xLobr+pFJNssJRi2s034wgWeFBUx01fI8BeHTW2TcRp7VcFu9QCYG8IlChTuovcm0oKQ==}
-
- /@types/ws@8.5.6:
- resolution: {integrity: sha512-8B5EO9jLVCy+B58PLHvLDuOD8DRVMgQzq8d55SjLCOn9kqGyqOvy27exVaTio1q1nX5zLu8/6N0n2ThSxOM6tg==}
+ /cross-env@7.0.3:
+ resolution: {integrity: sha512-+/HKd6EgcQCJGh2PSjZuUitQBQynKor4wrFbRg4DtAgS1aWO+gU52xpH7M9ScGgXSYmAVS9bIJ8EzuaGw0oNAw==}
+ engines: {node: '>=10.14', npm: '>=6', yarn: '>=1'}
+ hasBin: true
dependencies:
- '@types/node': 20.7.2
- dev: true
-
- /@types/yargs-parser@21.0.1:
- resolution: {integrity: sha512-axdPBuLuEJt0c4yI5OZssC19K2Mq1uKdrfZBzuxLvaztgqUtFYZUNw7lETExPYJR9jdEoIg4mb7RQKRQzOkeGQ==}
+ cross-spawn: 7.0.3
dev: true
- /@types/yargs@15.0.16:
- resolution: {integrity: sha512-2FeD5qezW3FvLpZ0JpfuaEWepgNLl9b2gQYiz/ce0NhoB1W/D+VZu98phITXkADYerfr/jb7JcDcVhITsc9bwg==}
+ /cross-spawn@7.0.3:
+ resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==}
+ engines: {node: '>= 8'}
dependencies:
- '@types/yargs-parser': 21.0.1
- dev: true
+ path-key: 3.1.1
+ shebang-command: 2.0.0
+ which: 2.0.2
- /@types/yargs@17.0.26:
- resolution: {integrity: sha512-Y3vDy2X6zw/ZCumcwLpdhM5L7jmyGpmBCTYMHDLqT2IKVMYRRLdv6ZakA+wxhra6Z/3bwhNbNl9bDGXaFU+6rw==}
+ /csrf@3.1.0:
+ resolution: {integrity: sha512-uTqEnCvWRk042asU6JtapDTcJeeailFy4ydOQS28bj1hcLnYRiqi8SsD2jS412AY1I/4qdOwWZun774iqywf9w==}
+ engines: {node: '>= 0.8'}
dependencies:
- '@types/yargs-parser': 21.0.1
- dev: true
+ rndm: 1.2.0
+ tsscmp: 1.0.6
+ uid-safe: 2.1.5
- /@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0)(eslint@8.46.0)(typescript@5.1.6):
- resolution: {integrity: sha512-TiZzBSJja/LbhNPvk6yc0JrX9XqhQ0hdh6M2svYfsHGejaKFIAGd9MQ+ERIMzLGlN/kZoYIgdxFV0PuljTKXag==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ /data-uri-to-buffer@2.0.2:
+ resolution: {integrity: sha512-ND9qDTLc6diwj+Xe5cdAgVTbLVdXbtxTJRXRhli8Mowuaan+0EJOtdqJ0QCHNSSPyoXGx9HX2/VMnKeC34AChA==}
+
+ /debug@2.6.9:
+ resolution: {integrity: sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==}
peerDependencies:
- '@typescript-eslint/parser': ^5.0.0
- eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
- typescript: '*'
+ supports-color: '*'
peerDependenciesMeta:
- typescript:
+ supports-color:
optional: true
dependencies:
- '@eslint-community/regexpp': 4.9.0
- '@typescript-eslint/parser': 5.62.0(eslint@8.46.0)(typescript@5.1.6)
- '@typescript-eslint/scope-manager': 5.62.0
- '@typescript-eslint/type-utils': 5.62.0(eslint@8.46.0)(typescript@5.1.6)
- '@typescript-eslint/utils': 5.62.0(eslint@8.46.0)(typescript@5.1.6)
- debug: 4.3.4
- eslint: 8.46.0
- graphemer: 1.4.0
- ignore: 5.2.4
- natural-compare-lite: 1.4.0
- semver: 7.5.4
- tsutils: 3.21.0(typescript@5.1.6)
- typescript: 5.1.6
- transitivePeerDependencies:
- - supports-color
- dev: true
+ ms: 2.0.0
+ dev: false
- /@typescript-eslint/eslint-plugin@6.2.0(@typescript-eslint/parser@6.2.0)(eslint@8.46.0)(typescript@5.1.6):
- resolution: {integrity: sha512-rClGrMuyS/3j0ETa1Ui7s6GkLhfZGKZL3ZrChLeAiACBE/tRc1wq8SNZESUuluxhLj9FkUefRs2l6bCIArWBiQ==}
- engines: {node: ^16.0.0 || >=18.0.0}
+ /debug@3.2.7:
+ resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==}
peerDependencies:
- '@typescript-eslint/parser': ^6.0.0 || ^6.0.0-alpha
- eslint: ^7.0.0 || ^8.0.0
- typescript: '*'
+ supports-color: '*'
peerDependenciesMeta:
- typescript:
+ supports-color:
optional: true
dependencies:
- '@eslint-community/regexpp': 4.9.0
- '@typescript-eslint/parser': 6.2.0(eslint@8.46.0)(typescript@5.1.6)
- '@typescript-eslint/scope-manager': 6.2.0
- '@typescript-eslint/type-utils': 6.2.0(eslint@8.46.0)(typescript@5.1.6)
- '@typescript-eslint/utils': 6.2.0(eslint@8.46.0)(typescript@5.1.6)
- '@typescript-eslint/visitor-keys': 6.2.0
- debug: 4.3.4
- eslint: 8.46.0
- graphemer: 1.4.0
- ignore: 5.2.4
- natural-compare: 1.4.0
- natural-compare-lite: 1.4.0
- semver: 7.5.4
- ts-api-utils: 1.0.3(typescript@5.1.6)
- typescript: 5.1.6
- transitivePeerDependencies:
- - supports-color
+ ms: 2.1.3
dev: true
- /@typescript-eslint/parser@5.62.0(eslint@8.46.0)(typescript@5.1.6):
- resolution: {integrity: sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ /debug@4.3.4:
+ resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==}
+ engines: {node: '>=6.0'}
peerDependencies:
- eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
- typescript: '*'
+ supports-color: '*'
peerDependenciesMeta:
- typescript:
+ supports-color:
optional: true
dependencies:
- '@typescript-eslint/scope-manager': 5.62.0
- '@typescript-eslint/types': 5.62.0
- '@typescript-eslint/typescript-estree': 5.62.0(typescript@5.1.6)
- debug: 4.3.4
- eslint: 8.46.0
- typescript: 5.1.6
- transitivePeerDependencies:
- - supports-color
- dev: true
+ ms: 2.1.2
- /@typescript-eslint/parser@6.2.0(eslint@8.46.0)(typescript@5.1.6):
- resolution: {integrity: sha512-igVYOqtiK/UsvKAmmloQAruAdUHihsOCvplJpplPZ+3h4aDkC/UKZZNKgB6h93ayuYLuEymU3h8nF1xMRbh37g==}
- engines: {node: ^16.0.0 || >=18.0.0}
+ /decompress-response@6.0.0:
+ resolution: {integrity: sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==}
+ engines: {node: '>=10'}
+ dependencies:
+ mimic-response: 3.1.0
+ dev: false
+
+ /dedent@1.5.1:
+ resolution: {integrity: sha512-+LxW+KLWxu3HW3M2w2ympwtqPrqYRzU8fqi6Fhd18fBALe15blJPI/I4+UHveMVG6lJqB4JNd4UG0S5cnVHwIg==}
peerDependencies:
- eslint: ^7.0.0 || ^8.0.0
- typescript: '*'
+ babel-plugin-macros: ^3.1.0
peerDependenciesMeta:
- typescript:
+ babel-plugin-macros:
optional: true
- dependencies:
- '@typescript-eslint/scope-manager': 6.2.0
- '@typescript-eslint/types': 6.2.0
- '@typescript-eslint/typescript-estree': 6.2.0(typescript@5.1.6)
- '@typescript-eslint/visitor-keys': 6.2.0
- debug: 4.3.4
- eslint: 8.46.0
- typescript: 5.1.6
- transitivePeerDependencies:
- - supports-color
- dev: true
- /@typescript-eslint/scope-manager@5.62.0:
- resolution: {integrity: sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
- dependencies:
- '@typescript-eslint/types': 5.62.0
- '@typescript-eslint/visitor-keys': 5.62.0
- dev: true
+ /deep-extend@0.6.0:
+ resolution: {integrity: sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==}
+ engines: {node: '>=4.0.0'}
+ dev: false
- /@typescript-eslint/scope-manager@6.2.0:
- resolution: {integrity: sha512-1ZMNVgm5nnHURU8ZSJ3snsHzpFeNK84rdZjluEVBGNu7jDymfqceB3kdIZ6A4xCfEFFhRIB6rF8q/JIqJd2R0Q==}
- engines: {node: ^16.0.0 || >=18.0.0}
- dependencies:
- '@typescript-eslint/types': 6.2.0
- '@typescript-eslint/visitor-keys': 6.2.0
+ /deep-is@0.1.4:
+ resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==}
dev: true
- /@typescript-eslint/type-utils@5.62.0(eslint@8.46.0)(typescript@5.1.6):
- resolution: {integrity: sha512-xsSQreu+VnfbqQpW5vnCJdq1Z3Q0U31qiWmRhr98ONQmcp/yhiPJFPq8MXiJVLiksmOKSjIldZzkebzHuCGzew==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
- peerDependencies:
- eslint: '*'
- typescript: '*'
- peerDependenciesMeta:
- typescript:
- optional: true
+ /defer-to-connect@2.0.1:
+ resolution: {integrity: sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==}
+ engines: {node: '>=10'}
+ dev: false
+
+ /define-data-property@1.1.1:
+ resolution: {integrity: sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ==}
+ engines: {node: '>= 0.4'}
dependencies:
- '@typescript-eslint/typescript-estree': 5.62.0(typescript@5.1.6)
- '@typescript-eslint/utils': 5.62.0(eslint@8.46.0)(typescript@5.1.6)
- debug: 4.3.4
- eslint: 8.46.0
- tsutils: 3.21.0(typescript@5.1.6)
- typescript: 5.1.6
- transitivePeerDependencies:
- - supports-color
- dev: true
+ get-intrinsic: 1.2.2
+ gopd: 1.0.1
+ has-property-descriptors: 1.0.1
- /@typescript-eslint/type-utils@6.2.0(eslint@8.46.0)(typescript@5.1.6):
- resolution: {integrity: sha512-DnGZuNU2JN3AYwddYIqrVkYW0uUQdv0AY+kz2M25euVNlujcN2u+rJgfJsBFlUEzBB6OQkUqSZPyuTLf2bP5mw==}
- engines: {node: ^16.0.0 || >=18.0.0}
- peerDependencies:
- eslint: ^7.0.0 || ^8.0.0
- typescript: '*'
- peerDependenciesMeta:
- typescript:
- optional: true
+ /define-properties@1.2.1:
+ resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==}
+ engines: {node: '>= 0.4'}
dependencies:
- '@typescript-eslint/typescript-estree': 6.2.0(typescript@5.1.6)
- '@typescript-eslint/utils': 6.2.0(eslint@8.46.0)(typescript@5.1.6)
- debug: 4.3.4
- eslint: 8.46.0
- ts-api-utils: 1.0.3(typescript@5.1.6)
- typescript: 5.1.6
- transitivePeerDependencies:
- - supports-color
+ define-data-property: 1.1.1
+ has-property-descriptors: 1.0.1
+ object-keys: 1.1.1
dev: true
- /@typescript-eslint/types@5.62.0:
- resolution: {integrity: sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ /defu@6.1.4:
+ resolution: {integrity: sha512-mEQCMmwJu317oSz8CwdIOdwf3xMif1ttiM8LTufzc3g6kR+9Pe236twL8j3IYT1F7GfRgGcW6MWxzZjLIkuHIg==}
dev: true
- /@typescript-eslint/types@6.2.0:
- resolution: {integrity: sha512-1nRRaDlp/XYJQLvkQJG5F3uBTno5SHPT7XVcJ5n1/k2WfNI28nJsvLakxwZRNY5spuatEKO7d5nZWsQpkqXwBA==}
- engines: {node: ^16.0.0 || >=18.0.0}
- dev: true
+ /delegates@1.0.0:
+ resolution: {integrity: sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==}
- /@typescript-eslint/typescript-estree@5.62.0(typescript@5.1.6):
- resolution: {integrity: sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
- peerDependencies:
- typescript: '*'
- peerDependenciesMeta:
- typescript:
- optional: true
- dependencies:
- '@typescript-eslint/types': 5.62.0
- '@typescript-eslint/visitor-keys': 5.62.0
- debug: 4.3.4
- globby: 11.1.0
- is-glob: 4.0.3
- semver: 7.5.4
- tsutils: 3.21.0(typescript@5.1.6)
- typescript: 5.1.6
- transitivePeerDependencies:
- - supports-color
+ /depd@2.0.0:
+ resolution: {integrity: sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==}
+ engines: {node: '>= 0.8'}
+
+ /destroy@1.2.0:
+ resolution: {integrity: sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==}
+ engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16}
+
+ /detect-libc@2.0.2:
+ resolution: {integrity: sha512-UX6sGumvvqSaXgdKGUsgZWqcUyIXZ/vZTrlRT/iobiKhGL0zL4d3osHj3uqllWJK+i+sixDS/3COVEOFbupFyw==}
+ engines: {node: '>=8'}
+
+ /diff-sequences@29.6.3:
+ resolution: {integrity: sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==}
+ engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
+
+ /diff@4.0.2:
+ resolution: {integrity: sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==}
+ engines: {node: '>=0.3.1'}
dev: true
- /@typescript-eslint/typescript-estree@6.2.0(typescript@5.1.6):
- resolution: {integrity: sha512-Mts6+3HQMSM+LZCglsc2yMIny37IhUgp1Qe8yJUYVyO6rHP7/vN0vajKu3JvHCBIy8TSiKddJ/Zwu80jhnGj1w==}
- engines: {node: ^16.0.0 || >=18.0.0}
- peerDependencies:
- typescript: '*'
- peerDependenciesMeta:
- typescript:
- optional: true
+ /dir-glob@3.0.1:
+ resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==}
+ engines: {node: '>=8'}
dependencies:
- '@typescript-eslint/types': 6.2.0
- '@typescript-eslint/visitor-keys': 6.2.0
- debug: 4.3.4
- globby: 11.1.0
- is-glob: 4.0.3
- semver: 7.5.4
- ts-api-utils: 1.0.3(typescript@5.1.6)
- typescript: 5.1.6
- transitivePeerDependencies:
- - supports-color
- dev: true
+ path-type: 4.0.0
- /@typescript-eslint/utils@5.62.0(eslint@8.46.0)(typescript@5.1.6):
- resolution: {integrity: sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
- peerDependencies:
- eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
- dependencies:
- '@eslint-community/eslint-utils': 4.4.0(eslint@8.46.0)
- '@types/json-schema': 7.0.13
- '@types/semver': 7.5.0
- '@typescript-eslint/scope-manager': 5.62.0
- '@typescript-eslint/types': 5.62.0
- '@typescript-eslint/typescript-estree': 5.62.0(typescript@5.1.6)
- eslint: 8.46.0
- eslint-scope: 5.1.1
- semver: 7.5.4
- transitivePeerDependencies:
- - supports-color
- - typescript
+ /doctrine@2.1.0:
+ resolution: {integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==}
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ esutils: 2.0.3
dev: true
- /@typescript-eslint/utils@6.2.0(eslint@8.46.0)(typescript@5.1.6):
- resolution: {integrity: sha512-RCFrC1lXiX1qEZN8LmLrxYRhOkElEsPKTVSNout8DMzf8PeWoQG7Rxz2SadpJa3VSh5oYKGwt7j7X/VRg+Y3OQ==}
- engines: {node: ^16.0.0 || >=18.0.0}
- peerDependencies:
- eslint: ^7.0.0 || ^8.0.0
+ /doctrine@3.0.0:
+ resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==}
+ engines: {node: '>=6.0.0'}
dependencies:
- '@eslint-community/eslint-utils': 4.4.0(eslint@8.46.0)
- '@types/json-schema': 7.0.13
- '@types/semver': 7.5.0
- '@typescript-eslint/scope-manager': 6.2.0
- '@typescript-eslint/types': 6.2.0
- '@typescript-eslint/typescript-estree': 6.2.0(typescript@5.1.6)
- eslint: 8.46.0
- semver: 7.5.4
- transitivePeerDependencies:
- - supports-color
- - typescript
+ esutils: 2.0.3
dev: true
- /@typescript-eslint/visitor-keys@5.62.0:
- resolution: {integrity: sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ /dotenv@16.4.1:
+ resolution: {integrity: sha512-CjA3y+Dr3FyFDOAMnxZEGtnW9KBR2M0JvvUtXNW+dYJL5ROWxP9DUHCwgFqpMk0OXCc0ljhaNTr2w/kutYIcHQ==}
+ engines: {node: '>=12'}
+
+ /edge-error@4.0.1:
+ resolution: {integrity: sha512-z5mNO97k8hRVpJ6Ew1qbkMTfQ44CwuWnl+ShMCrEFgD+b324CnjBS6HbiR+Wh6Wcmw9C+/XsFBHzZ+376PpD/w==}
+ engines: {node: '>=18.16.0'}
+
+ /edge-lexer@6.0.1:
+ resolution: {integrity: sha512-iYPlo+EyERGL4cICzqXIYVxMB6sSOXazpAqkqN4YcLtwR7K1i1KcwNkSy36T40BYvP7UjjjjAVnz+fk3NEWH9Q==}
+ engines: {node: '>=18.16.0'}
dependencies:
- '@typescript-eslint/types': 5.62.0
- eslint-visitor-keys: 3.4.3
- dev: true
+ edge-error: 4.0.1
- /@typescript-eslint/visitor-keys@6.2.0:
- resolution: {integrity: sha512-QbaYUQVKKo9bgCzpjz45llCfwakyoxHetIy8CAvYCtd16Zu1KrpzNHofwF8kGkpPOxZB2o6kz+0nqH8ZkIzuoQ==}
- engines: {node: ^16.0.0 || >=18.0.0}
+ /edge-parser@9.0.1:
+ resolution: {integrity: sha512-E6N8GRlI6gnVDpy1VmxZzY+zhB24cmjb0jrLbeXATBX+GM8XntFybQERMfCrt4wkV1LRTpKZ8F6gzupRxAo9zQ==}
+ engines: {node: '>=18.16.0'}
dependencies:
- '@typescript-eslint/types': 6.2.0
- eslint-visitor-keys: 3.4.3
- dev: true
+ acorn: 8.11.3
+ astring: 1.8.6
+ edge-error: 4.0.1
+ edge-lexer: 6.0.1
+ js-stringify: 1.0.2
- /@webassemblyjs/ast@1.11.6:
- resolution: {integrity: sha512-IN1xI7PwOvLPgjcf180gC1bqn3q/QaOCwYUahIOhbYUu8KA/3tw2RT/T0Gidi1l7Hhj5D/INhJxiICObqpMu4Q==}
+ /edge.js@6.0.1:
+ resolution: {integrity: sha512-htTUs7szn0LlAUi7yvczfUIZuIBNgaWyOc/OQsekHQeD8zKqSTPI9PWbCSHwwXqYWoKZxxc0O+uzcB+5kT/9ow==}
+ engines: {node: '>=18.16.0'}
dependencies:
- '@webassemblyjs/helper-numbers': 1.11.6
- '@webassemblyjs/helper-wasm-bytecode': 1.11.6
- dev: true
+ '@poppinss/inspect': 1.0.1
+ '@poppinss/macroable': 1.0.1
+ '@poppinss/utils': 6.7.2
+ classnames: 2.5.1
+ edge-error: 4.0.1
+ edge-lexer: 6.0.1
+ edge-parser: 9.0.1
+ fs-readdir-recursive: 1.1.0
+ he: 1.2.0
+ js-stringify: 1.0.2
+ property-information: 6.4.1
+ stringify-attributes: 4.0.0
- /@webassemblyjs/floating-point-hex-parser@1.11.6:
- resolution: {integrity: sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==}
- dev: true
+ /ee-first@1.1.1:
+ resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==}
- /@webassemblyjs/helper-api-error@1.11.6:
- resolution: {integrity: sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==}
+ /electron-to-chromium@1.4.665:
+ resolution: {integrity: sha512-UpyCWObBoD+nSZgOC2ToaIdZB0r9GhqT2WahPKiSki6ckkSuKhQNso8V2PrFcHBMleI/eqbKgVQgVC4Wni4ilw==}
dev: true
- /@webassemblyjs/helper-buffer@1.11.6:
- resolution: {integrity: sha512-z3nFzdcp1mb8nEOFFk8DrYLpHvhKC3grJD2ardfKOzmbmJvEf/tPIqCY+sNcwZIY8ZD7IkB2l7/pqhUhqm7hLA==}
- dev: true
+ /emittery@1.0.2:
+ resolution: {integrity: sha512-PqHdP6JJrxiSXQzCAzII77dVsfyGWu+7V0ghqkaCej2shF1cnIPeFE9kKZcVTqvBjrRMDVOdNXKEYcjxkznS1g==}
+ engines: {node: '>=14.16'}
- /@webassemblyjs/helper-numbers@1.11.6:
- resolution: {integrity: sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==}
- dependencies:
- '@webassemblyjs/floating-point-hex-parser': 1.11.6
- '@webassemblyjs/helper-api-error': 1.11.6
- '@xtuc/long': 4.2.2
- dev: true
+ /emoji-regex@10.3.0:
+ resolution: {integrity: sha512-QpLs9D9v9kArv4lfDEgg1X/gN5XLnf/A6l9cs8SPZLRZR3ZkY9+kwIQTxm+fsSej5UMYGE8fdoaZVIBlqG0XTw==}
- /@webassemblyjs/helper-wasm-bytecode@1.11.6:
- resolution: {integrity: sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==}
- dev: true
+ /emoji-regex@8.0.0:
+ resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==}
+
+ /encodeurl@1.0.2:
+ resolution: {integrity: sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==}
+ engines: {node: '>= 0.8'}
- /@webassemblyjs/helper-wasm-section@1.11.6:
- resolution: {integrity: sha512-LPpZbSOwTpEC2cgn4hTydySy1Ke+XEu+ETXuoyvuyezHO3Kjdu90KK95Sh9xTbmjrCsUwvWwCOQQNta37VrS9g==}
+ /encoding@0.1.13:
+ resolution: {integrity: sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==}
+ requiresBuild: true
dependencies:
- '@webassemblyjs/ast': 1.11.6
- '@webassemblyjs/helper-buffer': 1.11.6
- '@webassemblyjs/helper-wasm-bytecode': 1.11.6
- '@webassemblyjs/wasm-gen': 1.11.6
- dev: true
+ iconv-lite: 0.6.3
+ dev: false
+ optional: true
- /@webassemblyjs/ieee754@1.11.6:
- resolution: {integrity: sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==}
+ /end-of-stream@1.4.4:
+ resolution: {integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==}
dependencies:
- '@xtuc/ieee754': 1.2.0
- dev: true
+ once: 1.4.0
+ dev: false
- /@webassemblyjs/leb128@1.11.6:
- resolution: {integrity: sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==}
+ /enquirer@2.4.1:
+ resolution: {integrity: sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==}
+ engines: {node: '>=8.6'}
dependencies:
- '@xtuc/long': 4.2.2
- dev: true
+ ansi-colors: 4.1.3
+ strip-ansi: 6.0.1
- /@webassemblyjs/utf8@1.11.6:
- resolution: {integrity: sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==}
- dev: true
+ /env-paths@2.2.1:
+ resolution: {integrity: sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==}
+ engines: {node: '>=6'}
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /err-code@2.0.3:
+ resolution: {integrity: sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==}
+ requiresBuild: true
+ dev: false
+ optional: true
- /@webassemblyjs/wasm-edit@1.11.6:
- resolution: {integrity: sha512-Ybn2I6fnfIGuCR+Faaz7YcvtBKxvoLV3Lebn1tM4o/IAJzmi9AWYIPWpyBfU8cC+JxAO57bk4+zdsTjJR+VTOw==}
+ /error-ex@1.3.2:
+ resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==}
dependencies:
- '@webassemblyjs/ast': 1.11.6
- '@webassemblyjs/helper-buffer': 1.11.6
- '@webassemblyjs/helper-wasm-bytecode': 1.11.6
- '@webassemblyjs/helper-wasm-section': 1.11.6
- '@webassemblyjs/wasm-gen': 1.11.6
- '@webassemblyjs/wasm-opt': 1.11.6
- '@webassemblyjs/wasm-parser': 1.11.6
- '@webassemblyjs/wast-printer': 1.11.6
+ is-arrayish: 0.2.1
dev: true
- /@webassemblyjs/wasm-gen@1.11.6:
- resolution: {integrity: sha512-3XOqkZP/y6B4F0PBAXvI1/bky7GryoogUtfwExeP/v7Nzwo1QLcq5oQmpKlftZLbT+ERUOAZVQjuNVak6UXjPA==}
+ /es-abstract@1.22.3:
+ resolution: {integrity: sha512-eiiY8HQeYfYH2Con2berK+To6GrK2RxbPawDkGq4UiCQQfZHb6wX9qQqkbpPqaxQFcl8d9QzZqo0tGE0VcrdwA==}
+ engines: {node: '>= 0.4'}
dependencies:
- '@webassemblyjs/ast': 1.11.6
- '@webassemblyjs/helper-wasm-bytecode': 1.11.6
- '@webassemblyjs/ieee754': 1.11.6
- '@webassemblyjs/leb128': 1.11.6
- '@webassemblyjs/utf8': 1.11.6
+ array-buffer-byte-length: 1.0.0
+ arraybuffer.prototype.slice: 1.0.2
+ available-typed-arrays: 1.0.5
+ call-bind: 1.0.5
+ es-set-tostringtag: 2.0.2
+ es-to-primitive: 1.2.1
+ function.prototype.name: 1.1.6
+ get-intrinsic: 1.2.2
+ get-symbol-description: 1.0.0
+ globalthis: 1.0.3
+ gopd: 1.0.1
+ has-property-descriptors: 1.0.1
+ has-proto: 1.0.1
+ has-symbols: 1.0.3
+ hasown: 2.0.0
+ internal-slot: 1.0.6
+ is-array-buffer: 3.0.2
+ is-callable: 1.2.7
+ is-negative-zero: 2.0.2
+ is-regex: 1.1.4
+ is-shared-array-buffer: 1.0.2
+ is-string: 1.0.7
+ is-typed-array: 1.1.12
+ is-weakref: 1.0.2
+ object-inspect: 1.13.1
+ object-keys: 1.1.1
+ object.assign: 4.1.5
+ regexp.prototype.flags: 1.5.1
+ safe-array-concat: 1.1.0
+ safe-regex-test: 1.0.2
+ string.prototype.trim: 1.2.8
+ string.prototype.trimend: 1.0.7
+ string.prototype.trimstart: 1.0.7
+ typed-array-buffer: 1.0.0
+ typed-array-byte-length: 1.0.0
+ typed-array-byte-offset: 1.0.0
+ typed-array-length: 1.0.4
+ unbox-primitive: 1.0.2
+ which-typed-array: 1.1.13
dev: true
- /@webassemblyjs/wasm-opt@1.11.6:
- resolution: {integrity: sha512-cOrKuLRE7PCe6AsOVl7WasYf3wbSo4CeOk6PkrjS7g57MFfVUF9u6ysQBBODX0LdgSvQqRiGz3CXvIDKcPNy4g==}
+ /es-module-lexer@1.4.1:
+ resolution: {integrity: sha512-cXLGjP0c4T3flZJKQSuziYoq7MlT+rnvfZjfp7h+I7K9BNX54kP9nyWvdbwjQ4u1iWbOL4u96fgeZLToQlZC7w==}
+
+ /es-set-tostringtag@2.0.2:
+ resolution: {integrity: sha512-BuDyupZt65P9D2D2vA/zqcI3G5xRsklm5N3xCwuiy+/vKy8i0ifdsQP1sLgO4tZDSCaQUSnmC48khknGMV3D2Q==}
+ engines: {node: '>= 0.4'}
dependencies:
- '@webassemblyjs/ast': 1.11.6
- '@webassemblyjs/helper-buffer': 1.11.6
- '@webassemblyjs/wasm-gen': 1.11.6
- '@webassemblyjs/wasm-parser': 1.11.6
+ get-intrinsic: 1.2.2
+ has-tostringtag: 1.0.0
+ hasown: 2.0.0
dev: true
- /@webassemblyjs/wasm-parser@1.11.6:
- resolution: {integrity: sha512-6ZwPeGzMJM3Dqp3hCsLgESxBGtT/OeCvCZ4TA1JUPYgmhAx38tTPR9JaKy0S5H3evQpO/h2uWs2j6Yc/fjkpTQ==}
+ /es-shim-unscopables@1.0.2:
+ resolution: {integrity: sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==}
dependencies:
- '@webassemblyjs/ast': 1.11.6
- '@webassemblyjs/helper-api-error': 1.11.6
- '@webassemblyjs/helper-wasm-bytecode': 1.11.6
- '@webassemblyjs/ieee754': 1.11.6
- '@webassemblyjs/leb128': 1.11.6
- '@webassemblyjs/utf8': 1.11.6
+ hasown: 2.0.0
dev: true
- /@webassemblyjs/wast-printer@1.11.6:
- resolution: {integrity: sha512-JM7AhRcE+yW2GWYaKeHL5vt4xqee5N2WcezptmgyhNS+ScggqcT1OtXykhAb13Sn5Yas0j2uv9tHgrjwvzAP4A==}
+ /es-to-primitive@1.2.1:
+ resolution: {integrity: sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==}
+ engines: {node: '>= 0.4'}
dependencies:
- '@webassemblyjs/ast': 1.11.6
- '@xtuc/long': 4.2.2
+ is-callable: 1.2.7
+ is-date-object: 1.0.5
+ is-symbol: 1.0.4
dev: true
- /@webpack-cli/configtest@2.1.1(webpack-cli@5.1.4)(webpack@5.88.2):
- resolution: {integrity: sha512-wy0mglZpDSiSS0XHrVR+BAdId2+yxPSoJW8fsna3ZpYSlufjvxnP4YbKTCBZnNIcGN4r6ZPXV55X4mYExOfLmw==}
- engines: {node: '>=14.15.0'}
- peerDependencies:
- webpack: 5.x.x
- webpack-cli: 5.x.x
- dependencies:
- webpack: 5.88.2(webpack-cli@5.1.4)
- webpack-cli: 5.1.4(webpack@5.88.2)
+ /esbuild@0.19.12:
+ resolution: {integrity: sha512-aARqgq8roFBj054KvQr5f1sFu0D65G+miZRCuJyJ0G13Zwx7vRar5Zhn2tkQNzIXcBrNVsv/8stehpj+GAjgbg==}
+ engines: {node: '>=12'}
+ hasBin: true
+ requiresBuild: true
+ optionalDependencies:
+ '@esbuild/aix-ppc64': 0.19.12
+ '@esbuild/android-arm': 0.19.12
+ '@esbuild/android-arm64': 0.19.12
+ '@esbuild/android-x64': 0.19.12
+ '@esbuild/darwin-arm64': 0.19.12
+ '@esbuild/darwin-x64': 0.19.12
+ '@esbuild/freebsd-arm64': 0.19.12
+ '@esbuild/freebsd-x64': 0.19.12
+ '@esbuild/linux-arm': 0.19.12
+ '@esbuild/linux-arm64': 0.19.12
+ '@esbuild/linux-ia32': 0.19.12
+ '@esbuild/linux-loong64': 0.19.12
+ '@esbuild/linux-mips64el': 0.19.12
+ '@esbuild/linux-ppc64': 0.19.12
+ '@esbuild/linux-riscv64': 0.19.12
+ '@esbuild/linux-s390x': 0.19.12
+ '@esbuild/linux-x64': 0.19.12
+ '@esbuild/netbsd-x64': 0.19.12
+ '@esbuild/openbsd-x64': 0.19.12
+ '@esbuild/sunos-x64': 0.19.12
+ '@esbuild/win32-arm64': 0.19.12
+ '@esbuild/win32-ia32': 0.19.12
+ '@esbuild/win32-x64': 0.19.12
+ dev: true
+
+ /escalade@3.1.2:
+ resolution: {integrity: sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==}
+ engines: {node: '>=6'}
+
+ /escape-goat@4.0.0:
+ resolution: {integrity: sha512-2Sd4ShcWxbx6OY1IHyla/CVNwvg7XwZVoXZHcSu9w9SReNP1EzzD5T8NWKIR38fIqEns9kDWKUQTXXAmlDrdPg==}
+ engines: {node: '>=12'}
+
+ /escape-html@1.0.3:
+ resolution: {integrity: sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==}
+ dev: false
+
+ /escape-string-regexp@1.0.5:
+ resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==}
+ engines: {node: '>=0.8.0'}
+ dev: true
+
+ /escape-string-regexp@4.0.0:
+ resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==}
+ engines: {node: '>=10'}
dev: true
- /@webpack-cli/info@2.0.2(webpack-cli@5.1.4)(webpack@5.88.2):
- resolution: {integrity: sha512-zLHQdI/Qs1UyT5UBdWNqsARasIA+AaF8t+4u2aS2nEpBQh2mWIVb8qAklq0eUENnC5mOItrIB4LiS9xMtph18A==}
- engines: {node: '>=14.15.0'}
+ /escape-string-regexp@5.0.0:
+ resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==}
+ engines: {node: '>=12'}
+
+ /eslint-compat-utils@0.4.1(eslint@8.56.0):
+ resolution: {integrity: sha512-5N7ZaJG5pZxUeNNJfUchurLVrunD1xJvyg5kYOIVF8kg1f3ajTikmAu/5fZ9w100omNPOoMjngRszh/Q/uFGMg==}
+ engines: {node: '>=12'}
peerDependencies:
- webpack: 5.x.x
- webpack-cli: 5.x.x
+ eslint: '>=6.0.0'
dependencies:
- webpack: 5.88.2(webpack-cli@5.1.4)
- webpack-cli: 5.1.4(webpack@5.88.2)
+ eslint: 8.56.0
+ semver: 7.6.0
dev: true
- /@webpack-cli/serve@2.0.5(webpack-cli@5.1.4)(webpack@5.88.2):
- resolution: {integrity: sha512-lqaoKnRYBdo1UgDX8uF24AfGMifWK19TxPmM5FHc2vAGxrJ/qtyUyFBWoY1tISZdelsQ5fBcOusifo5o5wSJxQ==}
- engines: {node: '>=14.15.0'}
+ /eslint-config-prettier@8.10.0(eslint@8.56.0):
+ resolution: {integrity: sha512-SM8AMJdeQqRYT9O9zguiruQZaN7+z+E4eAP9oiLNGKMtomwaB1E9dcgUD6ZAn/eQAb52USbvezbiljfZUhbJcg==}
+ hasBin: true
peerDependencies:
- webpack: 5.x.x
- webpack-cli: 5.x.x
- webpack-dev-server: '*'
- peerDependenciesMeta:
- webpack-dev-server:
- optional: true
+ eslint: '>=7.0.0'
dependencies:
- webpack: 5.88.2(webpack-cli@5.1.4)
- webpack-cli: 5.1.4(webpack@5.88.2)
+ eslint: 8.56.0
dev: true
- /@xtuc/ieee754@1.2.0:
- resolution: {integrity: sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==}
+ /eslint-import-resolver-node@0.3.9:
+ resolution: {integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==}
+ dependencies:
+ debug: 3.2.7
+ is-core-module: 2.13.1
+ resolve: 1.22.8
+ transitivePeerDependencies:
+ - supports-color
dev: true
- /@xtuc/long@4.2.2:
- resolution: {integrity: sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==}
- dev: true
-
- /abbrev@1.1.1:
- resolution: {integrity: sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==}
- requiresBuild: true
- dev: false
-
- /abort-controller@3.0.0:
- resolution: {integrity: sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==}
- engines: {node: '>=6.5'}
- dependencies:
- event-target-shim: 5.0.1
-
- /abstract-logging@2.0.1:
- resolution: {integrity: sha512-2BjRTZxTPvheOvGbBslFSYOUkr+SjPtOnrLP33f+VIWLzezQpZcqVg7ja3L4dBXmzzgwT+a029jRx5PCi3JuiA==}
-
- /accepts@1.3.8:
- resolution: {integrity: sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==}
- engines: {node: '>= 0.6'}
- dependencies:
- mime-types: 2.1.35
- negotiator: 0.6.3
-
- /acorn-class-fields@1.0.0(acorn@8.10.0):
- resolution: {integrity: sha512-l+1FokF34AeCXGBHkrXFmml9nOIRI+2yBnBpO5MaVAaTIJ96irWLtcCxX+7hAp6USHFCe+iyyBB4ZhxV807wmA==}
- engines: {node: '>=4.8.2'}
+ /eslint-module-utils@2.8.0(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-node@0.3.9)(eslint@8.56.0):
+ resolution: {integrity: sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==}
+ engines: {node: '>=4'}
peerDependencies:
- acorn: ^6 || ^7 || ^8
+ '@typescript-eslint/parser': '*'
+ eslint: '*'
+ eslint-import-resolver-node: '*'
+ eslint-import-resolver-typescript: '*'
+ eslint-import-resolver-webpack: '*'
+ peerDependenciesMeta:
+ '@typescript-eslint/parser':
+ optional: true
+ eslint:
+ optional: true
+ eslint-import-resolver-node:
+ optional: true
+ eslint-import-resolver-typescript:
+ optional: true
+ eslint-import-resolver-webpack:
+ optional: true
dependencies:
- acorn: 8.10.0
- acorn-private-class-elements: 1.0.0(acorn@8.10.0)
- dev: false
+ '@typescript-eslint/parser': 6.21.0(eslint@8.56.0)(typescript@5.3.3)
+ debug: 3.2.7
+ eslint: 8.56.0
+ eslint-import-resolver-node: 0.3.9
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
- /acorn-import-assertions@1.9.0(acorn@8.10.0):
- resolution: {integrity: sha512-cmMwop9x+8KFhxvKrKfPYmN6/pKTYYHBqLa0DfvVZcKMJWNyWLnaqND7dx/qn66R7ewM1UX5XMaDVP5wlVTaVA==}
+ /eslint-plugin-import@2.29.1(@typescript-eslint/parser@6.21.0)(eslint@8.56.0):
+ resolution: {integrity: sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==}
+ engines: {node: '>=4'}
peerDependencies:
- acorn: ^8
+ '@typescript-eslint/parser': '*'
+ eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8
+ peerDependenciesMeta:
+ '@typescript-eslint/parser':
+ optional: true
dependencies:
- acorn: 8.10.0
+ '@typescript-eslint/parser': 6.21.0(eslint@8.56.0)(typescript@5.3.3)
+ array-includes: 3.1.7
+ array.prototype.findlastindex: 1.2.3
+ array.prototype.flat: 1.3.2
+ array.prototype.flatmap: 1.3.2
+ debug: 3.2.7
+ doctrine: 2.1.0
+ eslint: 8.56.0
+ eslint-import-resolver-node: 0.3.9
+ eslint-module-utils: 2.8.0(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-node@0.3.9)(eslint@8.56.0)
+ hasown: 2.0.0
+ is-core-module: 2.13.1
+ is-glob: 4.0.3
+ minimatch: 3.1.2
+ object.fromentries: 2.0.7
+ object.groupby: 1.0.1
+ object.values: 1.1.7
+ semver: 6.3.1
+ tsconfig-paths: 3.15.0
+ transitivePeerDependencies:
+ - eslint-import-resolver-typescript
+ - eslint-import-resolver-webpack
+ - supports-color
dev: true
- /acorn-jsx@5.3.2(acorn@8.10.0):
- resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==}
+ /eslint-plugin-jsonc@2.13.0(eslint@8.56.0):
+ resolution: {integrity: sha512-2wWdJfpO/UbZzPDABuUVvlUQjfMJa2p2iQfYt/oWxOMpXCcjuiMUSaA02gtY/Dbu82vpaSqc+O7Xq6ECHwtIxA==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
peerDependencies:
- acorn: ^6.0.0 || ^7.0.0 || ^8.0.0
+ eslint: '>=6.0.0'
dependencies:
- acorn: 8.10.0
+ '@eslint-community/eslint-utils': 4.4.0(eslint@8.56.0)
+ eslint: 8.56.0
+ eslint-compat-utils: 0.4.1(eslint@8.56.0)
+ espree: 9.6.1
+ graphemer: 1.4.0
+ jsonc-eslint-parser: 2.4.0
+ natural-compare: 1.4.0
+ synckit: 0.6.2
dev: true
- /acorn-private-class-elements@1.0.0(acorn@8.10.0):
- resolution: {integrity: sha512-zYNcZtxKgVCg1brS39BEou86mIao1EV7eeREG+6WMwKbuYTeivRRs6S2XdWnboRde6G9wKh2w+WBydEyJsJ6mg==}
- engines: {node: '>=4.8.2'}
+ /eslint-plugin-prettier@5.1.3(eslint-config-prettier@8.10.0)(eslint@8.56.0)(prettier@3.2.5):
+ resolution: {integrity: sha512-C9GCVAs4Eq7ZC/XFQHITLiHJxQngdtraXaM+LoUFoFp/lHNl2Zn8f3WQbe9HvTBBQ9YnKFB0/2Ajdqwo5D1EAw==}
+ engines: {node: ^14.18.0 || >=16.0.0}
peerDependencies:
- acorn: ^6.1.0 || ^7 || ^8
+ '@types/eslint': '>=8.0.0'
+ eslint: '>=8.0.0'
+ eslint-config-prettier: '*'
+ prettier: '>=3.0.0'
+ peerDependenciesMeta:
+ '@types/eslint':
+ optional: true
+ eslint-config-prettier:
+ optional: true
dependencies:
- acorn: 8.10.0
- dev: false
+ eslint: 8.56.0
+ eslint-config-prettier: 8.10.0(eslint@8.56.0)
+ prettier: 3.2.5
+ prettier-linter-helpers: 1.0.0
+ synckit: 0.8.8
+ dev: true
- /acorn-private-methods@1.0.0(acorn@8.10.0):
- resolution: {integrity: sha512-Jou2L3nfwfPpFdmmHObI3yUpVPM1bPohTUAZCyVDw5Efyn9LSS6E36neRLCRfIr8QjskAfdxRdABOrvP4c/gwQ==}
- engines: {node: '>=4.8.2'}
+ /eslint-plugin-unicorn@47.0.0(eslint@8.56.0):
+ resolution: {integrity: sha512-ivB3bKk7fDIeWOUmmMm9o3Ax9zbMz1Bsza/R2qm46ufw4T6VBFBaJIR1uN3pCKSmSXm8/9Nri8V+iUut1NhQGA==}
+ engines: {node: '>=16'}
peerDependencies:
- acorn: ^6 || ^7 || ^8
+ eslint: '>=8.38.0'
dependencies:
- acorn: 8.10.0
- acorn-private-class-elements: 1.0.0(acorn@8.10.0)
- dev: false
+ '@babel/helper-validator-identifier': 7.22.20
+ '@eslint-community/eslint-utils': 4.4.0(eslint@8.56.0)
+ ci-info: 3.9.0
+ clean-regexp: 1.0.0
+ eslint: 8.56.0
+ esquery: 1.5.0
+ indent-string: 4.0.0
+ is-builtin-module: 3.2.1
+ jsesc: 3.0.2
+ lodash: 4.17.21
+ pluralize: 8.0.0
+ read-pkg-up: 7.0.1
+ regexp-tree: 0.1.27
+ regjsparser: 0.10.0
+ safe-regex: 2.1.1
+ semver: 7.6.0
+ strip-indent: 3.0.0
+ dev: true
- /acorn-static-class-features@1.0.0(acorn@8.10.0):
- resolution: {integrity: sha512-XZJECjbmMOKvMHiNzbiPXuXpLAJfN3dAKtfIYbk1eHiWdsutlek+gS7ND4B8yJ3oqvHo1NxfafnezVmq7NXK0A==}
- engines: {node: '>=4.8.2'}
+ /eslint-plugin-unicorn@51.0.1(eslint@8.56.0):
+ resolution: {integrity: sha512-MuR/+9VuB0fydoI0nIn2RDA5WISRn4AsJyNSaNKLVwie9/ONvQhxOBbkfSICBPnzKrB77Fh6CZZXjgTt/4Latw==}
+ engines: {node: '>=16'}
peerDependencies:
- acorn: ^6.1.0 || ^7 || ^8
+ eslint: '>=8.56.0'
dependencies:
- acorn: 8.10.0
- acorn-private-class-elements: 1.0.0(acorn@8.10.0)
- dev: false
-
- /acorn-walk@8.2.0:
- resolution: {integrity: sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==}
- engines: {node: '>=0.4.0'}
- dev: false
-
- /acorn@8.10.0:
- resolution: {integrity: sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==}
- engines: {node: '>=0.4.0'}
- hasBin: true
+ '@babel/helper-validator-identifier': 7.22.20
+ '@eslint-community/eslint-utils': 4.4.0(eslint@8.56.0)
+ '@eslint/eslintrc': 2.1.4
+ ci-info: 4.0.0
+ clean-regexp: 1.0.0
+ core-js-compat: 3.35.1
+ eslint: 8.56.0
+ esquery: 1.5.0
+ indent-string: 4.0.0
+ is-builtin-module: 3.2.1
+ jsesc: 3.0.2
+ pluralize: 8.0.0
+ read-pkg-up: 7.0.1
+ regexp-tree: 0.1.27
+ regjsparser: 0.10.0
+ semver: 7.6.0
+ strip-indent: 3.0.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: true
- /adjust-sourcemap-loader@4.0.0:
- resolution: {integrity: sha512-OXwN5b9pCUXNQHJpwwD2qP40byEmSgzj8B4ydSN0uMNYWiFmJ6x6KwUllMmfk8Rwu/HJDFR7U8ubsWBoN0Xp0A==}
- engines: {node: '>=8.9'}
+ /eslint-scope@7.2.2:
+ resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
dependencies:
- loader-utils: 2.0.4
- regex-parser: 2.2.11
+ esrecurse: 4.3.0
+ estraverse: 5.3.0
dev: true
- /adonis-preset-ts@2.1.0:
- resolution: {integrity: sha512-cQH/NP250gOF9k3TTDhVsTOPSAvyH4MhKVZ4ryYiihA+vnP27sut1gVIrRas3Evl5d2wEgWVGI5DgdP/ZFSk0w==}
+ /eslint-visitor-keys@3.4.3:
+ resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
dev: true
- /agent-base@6.0.2:
- resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==}
- engines: {node: '>= 6.0.0'}
+ /eslint@8.56.0:
+ resolution: {integrity: sha512-Go19xM6T9puCOWntie1/P997aXxFsOi37JIHRWI514Hc6ZnaHGKY9xFhrU65RT6CcBEzZoGG1e6Nq+DT04ZtZQ==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ hasBin: true
dependencies:
+ '@eslint-community/eslint-utils': 4.4.0(eslint@8.56.0)
+ '@eslint-community/regexpp': 4.10.0
+ '@eslint/eslintrc': 2.1.4
+ '@eslint/js': 8.56.0
+ '@humanwhocodes/config-array': 0.11.14
+ '@humanwhocodes/module-importer': 1.0.1
+ '@nodelib/fs.walk': 1.2.8
+ '@ungap/structured-clone': 1.2.0
+ ajv: 6.12.6
+ chalk: 4.1.2
+ cross-spawn: 7.0.3
debug: 4.3.4
+ doctrine: 3.0.0
+ escape-string-regexp: 4.0.0
+ eslint-scope: 7.2.2
+ eslint-visitor-keys: 3.4.3
+ espree: 9.6.1
+ esquery: 1.5.0
+ esutils: 2.0.3
+ fast-deep-equal: 3.1.3
+ file-entry-cache: 6.0.1
+ find-up: 5.0.0
+ glob-parent: 6.0.2
+ globals: 13.22.0
+ graphemer: 1.4.0
+ ignore: 5.3.1
+ imurmurhash: 0.1.4
+ is-glob: 4.0.3
+ is-path-inside: 3.0.3
+ js-yaml: 4.1.0
+ json-stable-stringify-without-jsonify: 1.0.1
+ levn: 0.4.1
+ lodash.merge: 4.6.2
+ minimatch: 3.1.2
+ natural-compare: 1.4.0
+ optionator: 0.9.3
+ strip-ansi: 6.0.1
+ text-table: 0.2.0
transitivePeerDependencies:
- supports-color
- dev: false
+ dev: true
- /agentkeepalive@4.5.0:
- resolution: {integrity: sha512-5GG/5IbQQpC9FpkRGsSvZI5QYeSCzlJHdpBQntCsuTOxhKD8lqKhrleg2Yi7yvMIf82Ycmmqln9U8V9qwEiJew==}
- engines: {node: '>= 8.0.0'}
- requiresBuild: true
- dependencies:
- humanize-ms: 1.2.1
+ /esm@3.2.25:
+ resolution: {integrity: sha512-U1suiZ2oDVWv4zPO56S0NcR5QriEahGtdN2OR6FiOG4WJvcjBVFB0qI4+eKoWFH483PKGuLuu6V8Z4T5g63UVA==}
+ engines: {node: '>=6'}
dev: false
- optional: true
-
- /aggregate-error@3.1.0:
- resolution: {integrity: sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==}
- engines: {node: '>=8'}
- dependencies:
- clean-stack: 2.2.0
- indent-string: 4.0.0
- /ajv-formats@2.1.1(ajv@8.12.0):
- resolution: {integrity: sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==}
- peerDependencies:
- ajv: ^8.0.0
- peerDependenciesMeta:
- ajv:
- optional: true
+ /espree@9.6.1:
+ resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
dependencies:
- ajv: 8.12.0
+ acorn: 8.11.3
+ acorn-jsx: 5.3.2(acorn@8.11.3)
+ eslint-visitor-keys: 3.4.3
dev: true
- /ajv-keywords@3.5.2(ajv@6.12.6):
- resolution: {integrity: sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==}
- peerDependencies:
- ajv: ^6.9.1
+ /esquery@1.5.0:
+ resolution: {integrity: sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==}
+ engines: {node: '>=0.10'}
dependencies:
- ajv: 6.12.6
+ estraverse: 5.3.0
dev: true
- /ajv-keywords@5.1.0(ajv@8.12.0):
- resolution: {integrity: sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==}
- peerDependencies:
- ajv: ^8.8.2
+ /esrecurse@4.3.0:
+ resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==}
+ engines: {node: '>=4.0'}
dependencies:
- ajv: 8.12.0
- fast-deep-equal: 3.1.3
+ estraverse: 5.3.0
dev: true
- /ajv@6.12.6:
- resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==}
- dependencies:
- fast-deep-equal: 3.1.3
- fast-json-stable-stringify: 2.1.0
- json-schema-traverse: 0.4.1
- uri-js: 4.4.1
+ /estraverse@5.3.0:
+ resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==}
+ engines: {node: '>=4.0'}
dev: true
- /ajv@8.12.0:
- resolution: {integrity: sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==}
- dependencies:
- fast-deep-equal: 3.1.3
- json-schema-traverse: 1.0.0
- require-from-string: 2.0.2
- uri-js: 4.4.1
+ /esutils@2.0.3:
+ resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==}
+ engines: {node: '>=0.10.0'}
dev: true
- /ansi-colors@4.1.3:
- resolution: {integrity: sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==}
+ /etag@1.8.1:
+ resolution: {integrity: sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==}
+ engines: {node: '>= 0.6'}
+
+ /event-target-shim@5.0.1:
+ resolution: {integrity: sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==}
engines: {node: '>=6'}
- /ansi-escapes@4.3.2:
- resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==}
- engines: {node: '>=8'}
- dependencies:
- type-fest: 0.21.3
+ /events@3.3.0:
+ resolution: {integrity: sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==}
+ engines: {node: '>=0.8.x'}
- /ansi-escapes@6.2.0:
- resolution: {integrity: sha512-kzRaCqXnpzWs+3z5ABPQiVke+iq0KXkHo8xiWV4RPTi5Yli0l97BEQuhXV1s7+aSU/fu1kUuxgS4MsQ0fRuygw==}
- engines: {node: '>=14.16'}
+ /execa@8.0.1:
+ resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==}
+ engines: {node: '>=16.17'}
dependencies:
- type-fest: 3.13.1
- dev: true
+ cross-spawn: 7.0.3
+ get-stream: 8.0.1
+ human-signals: 5.0.0
+ is-stream: 3.0.0
+ merge-stream: 2.0.0
+ npm-run-path: 5.2.0
+ onetime: 6.0.0
+ signal-exit: 4.1.0
+ strip-final-newline: 3.0.0
- /ansi-html-community@0.0.8:
- resolution: {integrity: sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==}
- engines: {'0': node >= 0.8.0}
- hasBin: true
- dev: true
+ /expand-template@2.0.3:
+ resolution: {integrity: sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==}
+ engines: {node: '>=6'}
+ dev: false
- /ansi-regex@2.1.1:
- resolution: {integrity: sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==}
- engines: {node: '>=0.10.0'}
+ /fast-deep-equal@3.1.3:
+ resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==}
+
+ /fast-diff@1.3.0:
+ resolution: {integrity: sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==}
dev: true
- /ansi-regex@5.0.1:
- resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==}
- engines: {node: '>=8'}
+ /fast-glob@3.3.2:
+ resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==}
+ engines: {node: '>=8.6.0'}
+ dependencies:
+ '@nodelib/fs.stat': 2.0.5
+ '@nodelib/fs.walk': 1.2.8
+ glob-parent: 5.1.2
+ merge2: 1.4.1
+ micromatch: 4.0.5
- /ansi-styles@2.2.1:
- resolution: {integrity: sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==}
- engines: {node: '>=0.10.0'}
+ /fast-json-stable-stringify@2.1.0:
+ resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==}
dev: true
- /ansi-styles@3.2.1:
- resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==}
- engines: {node: '>=4'}
- dependencies:
- color-convert: 1.9.3
+ /fast-levenshtein@2.0.6:
+ resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==}
dev: true
- /ansi-styles@4.3.0:
- resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==}
- engines: {node: '>=8'}
- dependencies:
- color-convert: 2.0.1
-
- /ansi-styles@5.2.0:
- resolution: {integrity: sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==}
- engines: {node: '>=10'}
- dev: true
+ /fast-redact@3.3.0:
+ resolution: {integrity: sha512-6T5V1QK1u4oF+ATxs1lWUmlEk6P2T9HqJG3e2DnHOdVgZy2rFJBoEnrIedcTXlkAHU/zKC+7KETJ+KGGKwxgMQ==}
+ engines: {node: '>=6'}
- /ansicolors@0.3.2:
- resolution: {integrity: sha512-QXu7BPrP29VllRxH8GwB7x5iX5qWKAAMLqKQGWTeLWVlNHNOpVMJ91dsxQAIWXpjuW5wqvxu3Jd/nRjrJ+0pqg==}
- dev: true
+ /fastest-levenshtein@1.0.16:
+ resolution: {integrity: sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==}
+ engines: {node: '>= 4.9.1'}
- /anymatch@3.1.3:
- resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==}
- engines: {node: '>= 8'}
+ /fastq@1.17.1:
+ resolution: {integrity: sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==}
dependencies:
- normalize-path: 3.0.0
- picomatch: 2.3.1
- dev: true
+ reusify: 1.0.4
- /api-contract-validator@2.2.8(openapi-types@12.1.3):
- resolution: {integrity: sha512-YM3rMcrIp8Thf/WWbVBXBGX793Mm3Phw2pn3VbJpiZkpeTCTtF10huKPrzQ2gSIaK5GjAhTRJMAOyf+rsS7MAw==}
- engines: {node: '>=8'}
+ /file-entry-cache@6.0.1:
+ resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==}
+ engines: {node: ^10.12.0 || >=12.0.0}
dependencies:
- api-schema-builder: 2.0.11(openapi-types@12.1.3)
- chalk: 3.0.0
- columnify: 1.6.0
- jest-diff: 25.5.0
- jest-matcher-utils: 25.5.0
- lodash.flatten: 4.4.0
- lodash.get: 4.4.2
- lodash.set: 4.3.2
- uri-js: 4.4.1
- transitivePeerDependencies:
- - openapi-types
+ flat-cache: 3.1.0
dev: true
- /api-schema-builder@2.0.11(openapi-types@12.1.3):
- resolution: {integrity: sha512-85zbwf8MtPWodhfnmQRW5YD/fuGR12FP+8TbcYai5wbRnoUmPYLftLSbp7NB6zQMPb61Gjz+ApPUSyTdcCos7g==}
- engines: {node: '>=8'}
+ /file-type@19.0.0:
+ resolution: {integrity: sha512-s7cxa7/leUWLiXO78DVVfBVse+milos9FitauDLG1pI7lNaJ2+5lzPnr2N24ym+84HVwJL6hVuGfgVE+ALvU8Q==}
+ engines: {node: '>=18'}
dependencies:
- ajv: 6.12.6
- clone-deep: 4.0.1
- decimal.js: 10.4.3
- js-yaml: 3.14.1
- json-schema-deref-sync: 0.14.0
- lodash.get: 4.4.2
- openapi-schema-validator: 3.0.3
- swagger-parser: 10.0.3(openapi-types@12.1.3)
- transitivePeerDependencies:
- - openapi-types
- dev: true
+ readable-web-to-node-stream: 3.0.2
+ strtok3: 7.0.0
+ token-types: 5.0.1
- /aproba@2.0.0:
- resolution: {integrity: sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==}
+ /file-uri-to-path@1.0.0:
+ resolution: {integrity: sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==}
dev: false
- /are-we-there-yet@2.0.0:
- resolution: {integrity: sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==}
- engines: {node: '>=10'}
+ /fill-range@7.0.1:
+ resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==}
+ engines: {node: '>=8'}
dependencies:
- delegates: 1.0.0
- readable-stream: 3.6.2
- dev: false
+ to-regex-range: 5.0.1
- /are-we-there-yet@3.0.1:
- resolution: {integrity: sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==}
- engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0}
- requiresBuild: true
+ /find-cache-dir@5.0.0:
+ resolution: {integrity: sha512-OuWNfjfP05JcpAP3JPgAKUhWefjMRfI5iAoSsvE24ANYWJaepAtlSgWECSVEuRgSXpyNEc9DJwG/TZpgcOqyig==}
+ engines: {node: '>=16'}
dependencies:
- delegates: 1.0.0
- readable-stream: 3.6.2
- dev: false
- optional: true
+ common-path-prefix: 3.0.0
+ pkg-dir: 7.0.0
- /argparse@1.0.10:
- resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==}
+ /find-up@4.1.0:
+ resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==}
+ engines: {node: '>=8'}
dependencies:
- sprintf-js: 1.0.3
+ locate-path: 5.0.0
+ path-exists: 4.0.0
dev: true
- /argparse@2.0.1:
- resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==}
+ /find-up@5.0.0:
+ resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==}
+ engines: {node: '>=10'}
+ dependencies:
+ locate-path: 6.0.0
+ path-exists: 4.0.0
dev: true
- /arr-diff@4.0.0:
- resolution: {integrity: sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA==}
- engines: {node: '>=0.10.0'}
- dev: true
+ /find-up@6.3.0:
+ resolution: {integrity: sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+ dependencies:
+ locate-path: 7.2.0
+ path-exists: 5.0.0
- /arr-flatten@1.1.0:
- resolution: {integrity: sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==}
- engines: {node: '>=0.10.0'}
+ /flat-cache@3.1.0:
+ resolution: {integrity: sha512-OHx4Qwrrt0E4jEIcI5/Xb+f+QmJYNj2rrK8wiIdQOIrB9WrrJL8cjZvXdXuBTkkEwEqLycb5BeZDV1o2i9bTew==}
+ engines: {node: '>=12.0.0'}
+ dependencies:
+ flatted: 3.2.9
+ keyv: 4.5.4
+ rimraf: 3.0.2
dev: true
- /arr-union@3.1.0:
- resolution: {integrity: sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q==}
- engines: {node: '>=0.10.0'}
+ /flatted@3.2.9:
+ resolution: {integrity: sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==}
dev: true
- /array-buffer-byte-length@1.0.0:
- resolution: {integrity: sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==}
+ /flattie@1.1.0:
+ resolution: {integrity: sha512-xU99gDEnciIwJdGcBmNHnzTJ/w5AT+VFJOu6sTB6WM8diOYNA3Sa+K1DiEBQ7XH4QikQq3iFW1U+jRVcotQnBw==}
+ engines: {node: '>=8'}
+
+ /for-each@0.3.3:
+ resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==}
dependencies:
- call-bind: 1.0.2
- is-array-buffer: 3.0.2
+ is-callable: 1.2.7
dev: true
- /array-flatten@1.1.1:
- resolution: {integrity: sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==}
- dev: true
+ /form-data-encoder@4.0.2:
+ resolution: {integrity: sha512-KQVhvhK8ZkWzxKxOr56CPulAhH3dobtuQ4+hNQ+HekH/Wp5gSOafqRAeTphQUJAIk0GBvHZgJ2ZGRWd5kphMuw==}
+ engines: {node: '>= 18'}
+ dev: false
- /array-flatten@2.1.2:
- resolution: {integrity: sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==}
- dev: true
+ /formdata-node@6.0.3:
+ resolution: {integrity: sha512-8e1++BCiTzUno9v5IZ2J6bv4RU+3UKDmqWUQD0MIMVCd9AdhWkO1gw57oo1mNEX1dMq2EGI+FbWz4B92pscSQg==}
+ engines: {node: '>= 18'}
+ dev: false
- /array-includes@3.1.7:
- resolution: {integrity: sha512-dlcsNBIiWhPkHdOEEKnehA+RNUWDc4UqFtnIXU4uuYDPtA4LDkr7qip2p0VvFAEXNDr0yWZ9PJyIRiGjRLQzwQ==}
- engines: {node: '>= 0.4'}
+ /forwarded@0.2.0:
+ resolution: {integrity: sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==}
+ engines: {node: '>= 0.6'}
+
+ /fresh@0.5.2:
+ resolution: {integrity: sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==}
+ engines: {node: '>= 0.6'}
+
+ /fs-constants@1.0.0:
+ resolution: {integrity: sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==}
+ dev: false
+
+ /fs-extra@11.2.0:
+ resolution: {integrity: sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==}
+ engines: {node: '>=14.14'}
dependencies:
- call-bind: 1.0.2
- define-properties: 1.2.1
- es-abstract: 1.22.2
- get-intrinsic: 1.2.1
- is-string: 1.0.7
- dev: true
+ graceful-fs: 4.2.11
+ jsonfile: 6.1.0
+ universalify: 2.0.1
+ dev: false
- /array-union@1.0.2:
- resolution: {integrity: sha512-Dxr6QJj/RdU/hCaBjOfxW+q6lyuVE6JFWIrAUpuOOhoJJoQ99cUn3igRaHVB5P9WrgFVN0FfArM3x0cueOU8ng==}
- engines: {node: '>=0.10.0'}
+ /fs-minipass@2.1.0:
+ resolution: {integrity: sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==}
+ engines: {node: '>= 8'}
dependencies:
- array-uniq: 1.0.3
- dev: true
+ minipass: 3.3.6
- /array-union@2.1.0:
- resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==}
- engines: {node: '>=8'}
- dev: true
+ /fs-readdir-recursive@1.1.0:
+ resolution: {integrity: sha512-GNanXlVr2pf02+sPN40XN8HG+ePaNcvM0q5mZBd668Obwb0yD5GiUbZOFgwn8kGMY6I3mdyDJzieUy3PTYyTRA==}
- /array-uniq@1.0.3:
- resolution: {integrity: sha512-MNha4BWQ6JbwhFhj03YK552f7cb3AzoE8SzeljgChvL1dl3IcvggXVz1DilzySZkCja+CXuZbdW7yATchWn8/Q==}
- engines: {node: '>=0.10.0'}
- dev: true
+ /fs.realpath@1.0.0:
+ resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==}
+ requiresBuild: true
- /array-unique@0.3.2:
- resolution: {integrity: sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ==}
- engines: {node: '>=0.10.0'}
- dev: true
+ /fsevents@2.3.3:
+ resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==}
+ engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
+ os: [darwin]
+ requiresBuild: true
+ optional: true
- /array.prototype.findlastindex@1.2.3:
- resolution: {integrity: sha512-LzLoiOMAxvy+Gd3BAq3B7VeIgPdo+Q8hthvKtXybMvRV0jrXfJM/t8mw7nNlpEcVlVUnCnM2KSX4XU5HmpodOA==}
+ /function-bind@1.1.2:
+ resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==}
+
+ /function.prototype.name@1.1.6:
+ resolution: {integrity: sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==}
engines: {node: '>= 0.4'}
dependencies:
- call-bind: 1.0.2
+ call-bind: 1.0.5
define-properties: 1.2.1
- es-abstract: 1.22.2
- es-shim-unscopables: 1.0.0
- get-intrinsic: 1.2.1
+ es-abstract: 1.22.3
+ functions-have-names: 1.2.3
dev: true
- /array.prototype.flat@1.3.2:
- resolution: {integrity: sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==}
- engines: {node: '>= 0.4'}
- dependencies:
- call-bind: 1.0.2
- define-properties: 1.2.1
- es-abstract: 1.22.2
- es-shim-unscopables: 1.0.0
+ /functions-have-names@1.2.3:
+ resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==}
dev: true
- /array.prototype.flatmap@1.3.2:
- resolution: {integrity: sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==}
- engines: {node: '>= 0.4'}
+ /gauge@3.0.2:
+ resolution: {integrity: sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==}
+ engines: {node: '>=10'}
dependencies:
- call-bind: 1.0.2
- define-properties: 1.2.1
- es-abstract: 1.22.2
- es-shim-unscopables: 1.0.0
- dev: true
+ aproba: 2.0.0
+ color-support: 1.1.3
+ console-control-strings: 1.1.0
+ has-unicode: 2.0.1
+ object-assign: 4.1.1
+ signal-exit: 3.0.7
+ string-width: 4.2.3
+ strip-ansi: 6.0.1
+ wide-align: 1.1.5
- /arraybuffer.prototype.slice@1.0.2:
- resolution: {integrity: sha512-yMBKppFur/fbHu9/6USUe03bZ4knMYiwFBcyiaXB8Go0qNehwX6inYPzK9U0NeQvGxKthcmHcaR8P5MStSRBAw==}
- engines: {node: '>= 0.4'}
+ /gauge@4.0.4:
+ resolution: {integrity: sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==}
+ engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0}
+ requiresBuild: true
dependencies:
- array-buffer-byte-length: 1.0.0
- call-bind: 1.0.2
- define-properties: 1.2.1
- es-abstract: 1.22.2
- get-intrinsic: 1.2.1
- is-array-buffer: 3.0.2
- is-shared-array-buffer: 1.0.2
- dev: true
+ aproba: 2.0.0
+ color-support: 1.1.3
+ console-control-strings: 1.1.0
+ has-unicode: 2.0.1
+ signal-exit: 3.0.7
+ string-width: 4.2.3
+ strip-ansi: 6.0.1
+ wide-align: 1.1.5
+ dev: false
+ optional: true
- /arrify@2.0.1:
- resolution: {integrity: sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==}
- engines: {node: '>=8'}
- dev: true
+ /get-east-asian-width@1.2.0:
+ resolution: {integrity: sha512-2nk+7SIVb14QrgXFHcm84tD4bKQz0RxPuMT8Ag5KPOq7J5fEmAg0UbXdTOSHqNuHSU28k55qnceesxXRZGzKWA==}
+ engines: {node: '>=18'}
- /as-table@1.0.55:
- resolution: {integrity: sha512-xvsWESUJn0JN421Xb9MQw6AsMHRCUknCe0Wjlxvjud80mU4E6hQf1A6NzQKcYNmYw62MfzEtXc+badstZP3JpQ==}
+ /get-intrinsic@1.2.2:
+ resolution: {integrity: sha512-0gSo4ml/0j98Y3lngkFEot/zhiCeWsbYIlZ+uZOVgzLyLaUw7wxUL+nCTP0XJvJg1AXulJRI3UJi8GsbDuxdGA==}
dependencies:
- printable-characters: 1.0.42
- dev: true
+ function-bind: 1.1.2
+ has-proto: 1.0.1
+ has-symbols: 1.0.3
+ hasown: 2.0.0
- /asap@2.0.6:
- resolution: {integrity: sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==}
- dev: true
+ /get-package-type@0.1.0:
+ resolution: {integrity: sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==}
+ engines: {node: '>=8.0.0'}
+ dev: false
- /assertion-error@1.1.0:
- resolution: {integrity: sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==}
- dev: true
+ /get-port@7.0.0:
+ resolution: {integrity: sha512-mDHFgApoQd+azgMdwylJrv2DX47ywGq1i5VFJE7fZ0dttNq3iQMfsU4IvEgBHojA3KqEudyu7Vq+oN8kNaNkWw==}
+ engines: {node: '>=16'}
- /assets-webpack-plugin@7.0.0(webpack@5.88.2):
- resolution: {integrity: sha512-DMZ9r6HFxynWeONRMhSOFTvTrmit5dovdoUKdJgCG03M6CC7XiwNImPH+Ad1jaVrQ2n59e05lBhte52xPt4MSA==}
- engines: {node: '>=10.x.x'}
- peerDependencies:
- webpack: '>=5.0.0'
+ /get-source@2.0.12:
+ resolution: {integrity: sha512-X5+4+iD+HoSeEED+uwrQ07BOQr0kEDFMVqqpBuI+RaZBpBpHCuXxo70bjar6f0b0u/DQJsJ7ssurpP0V60Az+w==}
dependencies:
- camelcase: 6.3.0
- escape-string-regexp: 4.0.0
- lodash: 4.17.21
- webpack: 5.88.2(webpack-cli@5.1.4)
- dev: true
+ data-uri-to-buffer: 2.0.2
+ source-map: 0.6.1
- /assign-symbols@1.0.0:
- resolution: {integrity: sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw==}
- engines: {node: '>=0.10.0'}
+ /get-stream@6.0.1:
+ resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==}
+ engines: {node: '>=10'}
+ dev: false
+
+ /get-stream@8.0.1:
+ resolution: {integrity: sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==}
+ engines: {node: '>=16'}
+
+ /get-symbol-description@1.0.0:
+ resolution: {integrity: sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==}
+ engines: {node: '>= 0.4'}
+ dependencies:
+ call-bind: 1.0.5
+ get-intrinsic: 1.2.2
dev: true
- /astral-regex@2.0.0:
- resolution: {integrity: sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==}
- engines: {node: '>=8'}
+ /getopts@2.3.0:
+ resolution: {integrity: sha512-5eDf9fuSXwxBL6q5HX+dhDj+dslFGWzU5thZ9kNKUkcPtaPdatmUFKwHFrLb/uf/WpA4BHET+AX3Scl56cAjpA==}
- /astring@1.8.6:
- resolution: {integrity: sha512-ISvCdHdlTDlH5IpxQJIex7BWBywFWgjJSVdwst+/iQCoEYnyOaQ95+X1JGshuBjGp6nxKUy1jMgE3zPqN7fQdg==}
- hasBin: true
+ /github-from-package@0.0.0:
+ resolution: {integrity: sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==}
dev: false
- /async-retry@1.3.3:
- resolution: {integrity: sha512-wfr/jstw9xNi/0teMHrRW7dsz3Lt5ARhYNZ2ewpadnhaIp5mbALhOAP+EAdsC7t4Z6wqsDVv9+W6gm1Dk9mEyw==}
+ /glob-parent@5.1.2:
+ resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==}
+ engines: {node: '>= 6'}
dependencies:
- retry: 0.13.1
- dev: true
-
- /asynckit@0.4.0:
- resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==}
- dev: true
-
- /atob@2.1.2:
- resolution: {integrity: sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==}
- engines: {node: '>= 4.5.0'}
- hasBin: true
- dev: true
-
- /atomic-sleep@1.0.0:
- resolution: {integrity: sha512-kNOjDqAh7px0XWNI+4QbzoiR/nTkHAWNud2uvnJquD1/x5a7EQZMJT0AczqK0Qn67oY/TTQ1LbUKajZpp3I9tQ==}
- engines: {node: '>=8.0.0'}
-
- /available-typed-arrays@1.0.5:
- resolution: {integrity: sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==}
- engines: {node: '>= 0.4'}
+ is-glob: 4.0.3
- /aws-sdk@2.1425.0:
- resolution: {integrity: sha512-DbY5z7E8RsrX8/0pMBKMuh/rWFic3AghtU2AWkUdzxDi0cUSK7rOSPS/OIURU9Rh0jaNXoA0ujBDdx/CC5CvRA==}
- engines: {node: '>= 10.0.0'}
+ /glob-parent@6.0.2:
+ resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==}
+ engines: {node: '>=10.13.0'}
dependencies:
- buffer: 4.9.2
- events: 1.1.1
- ieee754: 1.1.13
- jmespath: 0.16.0
- querystring: 0.2.0
- sax: 1.2.1
- url: 0.10.3
- util: 0.12.5
- uuid: 8.0.0
- xml2js: 0.5.0
- dev: false
+ is-glob: 4.0.3
- /babel-code-frame@6.26.0:
- resolution: {integrity: sha512-XqYMR2dfdGMW+hd0IUZ2PwK+fGeFkOxZJ0wY+JaQAHzt1Zx8LcvpiZD2NiGkEG8qx0CfkAOr5xt76d1e8vG90g==}
+ /glob@7.2.3:
+ resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==}
dependencies:
- chalk: 1.1.3
- esutils: 2.0.3
- js-tokens: 3.0.2
- dev: true
+ fs.realpath: 1.0.0
+ inflight: 1.0.6
+ inherits: 2.0.4
+ minimatch: 3.1.2
+ once: 1.4.0
+ path-is-absolute: 1.0.1
- /babel-loader@8.3.0(@babel/core@7.23.0)(webpack@5.88.2):
- resolution: {integrity: sha512-H8SvsMF+m9t15HNLMipppzkC+Y2Yq+v3SonZyU70RBL/h1gxPkH08Ot8pEE9Z4Kd+czyWJClmFS8qzIP9OZ04Q==}
- engines: {node: '>= 8.9'}
- peerDependencies:
- '@babel/core': ^7.0.0
- webpack: '>=2'
+ /globals@13.22.0:
+ resolution: {integrity: sha512-H1Ddc/PbZHTDVJSnj8kWptIRSD6AM3pK+mKytuIVF4uoBV7rshFlhhvA58ceJ5wp3Er58w6zj7bykMpYXt3ETw==}
+ engines: {node: '>=8'}
dependencies:
- '@babel/core': 7.23.0
- find-cache-dir: 3.3.2
- loader-utils: 2.0.4
- make-dir: 3.1.0
- schema-utils: 2.7.1
- webpack: 5.88.2(webpack-cli@5.1.4)
+ type-fest: 0.20.2
dev: true
- /babel-plugin-polyfill-corejs2@0.4.5(@babel/core@7.23.0):
- resolution: {integrity: sha512-19hwUH5FKl49JEsvyTcoHakh6BE0wgXLLptIyKZ3PijHc/Ci521wygORCUCCred+E/twuqRyAkE02BAWPmsHOg==}
- peerDependencies:
- '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0
+ /globalthis@1.0.3:
+ resolution: {integrity: sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==}
+ engines: {node: '>= 0.4'}
dependencies:
- '@babel/compat-data': 7.22.20
- '@babel/core': 7.23.0
- '@babel/helper-define-polyfill-provider': 0.4.2(@babel/core@7.23.0)
- semver: 6.3.1
- transitivePeerDependencies:
- - supports-color
+ define-properties: 1.2.1
dev: true
- /babel-plugin-polyfill-corejs3@0.8.4(@babel/core@7.23.0):
- resolution: {integrity: sha512-9l//BZZsPR+5XjyJMPtZSK4jv0BsTO1zDac2GC6ygx9WLGlcsnRd1Co0B2zT5fF5Ic6BZy+9m3HNZ3QcOeDKfg==}
- peerDependencies:
- '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0
+ /globby@11.1.0:
+ resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==}
+ engines: {node: '>=10'}
dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-define-polyfill-provider': 0.4.2(@babel/core@7.23.0)
- core-js-compat: 3.32.2
- transitivePeerDependencies:
- - supports-color
+ array-union: 2.1.0
+ dir-glob: 3.0.1
+ fast-glob: 3.3.2
+ ignore: 5.3.1
+ merge2: 1.4.1
+ slash: 3.0.0
dev: true
- /babel-plugin-polyfill-regenerator@0.5.2(@babel/core@7.23.0):
- resolution: {integrity: sha512-tAlOptU0Xj34V1Y2PNTL4Y0FOJMDB6bZmoW39FeCQIhigGLkqu3Fj6uiXpxIf6Ij274ENdYx64y6Au+ZKlb1IA==}
- peerDependencies:
- '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0
+ /globby@13.2.2:
+ resolution: {integrity: sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
dependencies:
- '@babel/core': 7.23.0
- '@babel/helper-define-polyfill-provider': 0.4.2(@babel/core@7.23.0)
- transitivePeerDependencies:
- - supports-color
- dev: true
-
- /balanced-match@1.0.2:
- resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
-
- /base64-js@1.5.1:
- resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==}
+ dir-glob: 3.0.1
+ fast-glob: 3.3.2
+ ignore: 5.3.1
+ merge2: 1.4.1
+ slash: 4.0.0
- /base@0.11.2:
- resolution: {integrity: sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==}
- engines: {node: '>=0.10.0'}
+ /gopd@1.0.1:
+ resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==}
dependencies:
- cache-base: 1.0.1
- class-utils: 0.3.6
- component-emitter: 1.3.0
- define-property: 1.0.0
- isobject: 3.0.1
- mixin-deep: 1.3.2
- pascalcase: 0.1.1
- dev: true
+ get-intrinsic: 1.2.2
- /batch@0.6.1:
- resolution: {integrity: sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==}
- dev: true
-
- /bcrypt@5.1.1:
- resolution: {integrity: sha512-AGBHOG5hPYZ5Xl9KXzU5iKq9516yEmvCKDg3ecP5kX2aB6UqTeXZxk2ELnDgDm6BQSMlLt9rDB4LoSMx0rYwww==}
- engines: {node: '>= 10.0.0'}
- requiresBuild: true
+ /got@14.2.0:
+ resolution: {integrity: sha512-dBq2KkHcQl3AwPoIWsLsQScCPpUgRulz1qZVthjPYKYOPmYfBnekR3vxecjZbm91Vc3JUGnV9mqFX7B+Fe2quw==}
+ engines: {node: '>=20'}
dependencies:
- '@mapbox/node-pre-gyp': 1.0.11
- node-addon-api: 5.1.0
- transitivePeerDependencies:
- - encoding
- - supports-color
+ '@sindresorhus/is': 6.1.0
+ '@szmarczak/http-timer': 5.0.1
+ cacheable-lookup: 7.0.0
+ cacheable-request: 10.2.14
+ decompress-response: 6.0.0
+ form-data-encoder: 4.0.2
+ get-stream: 8.0.1
+ http2-wrapper: 2.2.1
+ lowercase-keys: 3.0.0
+ p-cancelable: 4.0.1
+ responselike: 3.0.0
dev: false
- /big-integer@1.6.51:
- resolution: {integrity: sha512-GPEid2Y9QU1Exl1rpO9B2IPJGHPSupF5GnVIP0blYvNOMer2bTvSWs1jGOUg04hTmu67nmLsQ9TBo1puaotBHg==}
- engines: {node: '>=0.6'}
- dev: true
+ /graceful-fs@4.2.11:
+ resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==}
- /big.js@5.2.2:
- resolution: {integrity: sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==}
+ /graphemer@1.4.0:
+ resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==}
dev: true
- /bignumber.js@9.0.0:
- resolution: {integrity: sha512-t/OYhhJ2SD+YGBQcjY8GzzDHEk9f3nerxjtfa6tlMXfe7frs/WozhvCNoGvpM0P3bNf3Gq5ZRMlGr5f3r4/N8A==}
- dev: false
+ /has-bigints@1.0.2:
+ resolution: {integrity: sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==}
+ dev: true
- /binary-extensions@2.2.0:
- resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==}
- engines: {node: '>=8'}
+ /has-flag@3.0.0:
+ resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==}
+ engines: {node: '>=4'}
dev: true
- /bl@1.2.3:
- resolution: {integrity: sha512-pvcNpa0UU69UT341rO6AYy4FVAIkUHuZXRIWbq+zHnsVcRzDDjIAhGuuYoi0d//cwIwtt4pkpKycWEfjdV+vww==}
- dependencies:
- readable-stream: 2.3.8
- safe-buffer: 5.2.1
- dev: false
+ /has-flag@4.0.0:
+ resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==}
+ engines: {node: '>=8'}
- /body-parser@1.20.1:
- resolution: {integrity: sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==}
- engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16}
+ /has-property-descriptors@1.0.1:
+ resolution: {integrity: sha512-VsX8eaIewvas0xnvinAe9bw4WfIeODpGYikiWYLH+dma0Jw6KHYqWiWfhQlgOVK8D6PvjubK5Uc4P0iIhIcNVg==}
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.1
- type-is: 1.6.18
- unpipe: 1.0.0
- transitivePeerDependencies:
- - supports-color
- dev: true
+ get-intrinsic: 1.2.2
- /bonjour-service@1.1.1:
- resolution: {integrity: sha512-Z/5lQRMOG9k7W+FkeGTNjh7htqn/2LMnfOvBZ8pynNZCM9MwkQkI3zeI4oz09uWdcgmgHugVvBqxGg4VQJ5PCg==}
- dependencies:
- array-flatten: 2.1.2
- dns-equal: 1.0.0
- fast-deep-equal: 3.1.3
- multicast-dns: 7.2.5
- dev: true
+ /has-proto@1.0.1:
+ resolution: {integrity: sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==}
+ engines: {node: '>= 0.4'}
- /boolbase@1.0.0:
- resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==}
- dev: true
+ /has-symbols@1.0.3:
+ resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==}
+ engines: {node: '>= 0.4'}
- /bplist-parser@0.2.0:
- resolution: {integrity: sha512-z0M+byMThzQmD9NILRniCUXYsYpjwnlO8N5uCFaCqIOpqRsJCrQL9NK3JsD67CN5a08nF5oIL2bD6loTdHOuKw==}
- engines: {node: '>= 5.10.0'}
+ /has-tostringtag@1.0.0:
+ resolution: {integrity: sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==}
+ engines: {node: '>= 0.4'}
dependencies:
- big-integer: 1.6.51
+ has-symbols: 1.0.3
dev: true
- /brace-expansion@1.1.11:
- resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==}
- dependencies:
- balanced-match: 1.0.2
- concat-map: 0.0.1
+ /has-unicode@2.0.1:
+ resolution: {integrity: sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==}
- /brace-expansion@2.0.1:
- resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==}
+ /hasown@2.0.0:
+ resolution: {integrity: sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==}
+ engines: {node: '>= 0.4'}
dependencies:
- balanced-match: 1.0.2
+ function-bind: 1.1.2
- /braces@2.3.2:
- resolution: {integrity: sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==}
- engines: {node: '>=0.10.0'}
- dependencies:
- arr-flatten: 1.1.0
- array-unique: 0.3.2
- extend-shallow: 2.0.1
- fill-range: 4.0.0
- isobject: 3.0.1
- repeat-element: 1.1.4
- snapdragon: 0.8.2
- snapdragon-node: 2.1.1
- split-string: 3.1.0
- to-regex: 3.0.2
- transitivePeerDependencies:
- - supports-color
- dev: true
+ /he@1.2.0:
+ resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==}
+ hasBin: true
- /braces@3.0.2:
- resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==}
- engines: {node: '>=8'}
- dependencies:
- fill-range: 7.0.1
+ /helmet-csp@3.4.0:
+ resolution: {integrity: sha512-a+YgzWw6dajqhQfb6ktxil0FsQuWTKzrLSUfy55dxS8fuvl1jidTIMPZ2udN15mjjcpBPgTHNHGF5tyWKYyR8w==}
+ engines: {node: '>=10.0.0'}
- /browserslist@4.22.1:
- resolution: {integrity: sha512-FEVc202+2iuClEhZhrWy6ZiAcRLvNMyYcxZ8raemul1DYVOVdFsbqckWLdsixQZCpJlwe77Z3UTalE7jsjnKfQ==}
- engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
- hasBin: true
- dependencies:
- caniuse-lite: 1.0.30001541
- electron-to-chromium: 1.4.537
- node-releases: 2.0.13
- update-browserslist-db: 1.0.13(browserslist@4.22.1)
+ /hosted-git-info@2.8.9:
+ resolution: {integrity: sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==}
dev: true
- /buffer-alloc-unsafe@1.1.0:
- resolution: {integrity: sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==}
+ /http-cache-semantics@4.1.1:
+ resolution: {integrity: sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==}
dev: false
- /buffer-alloc@1.2.0:
- resolution: {integrity: sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==}
+ /http-errors@2.0.0:
+ resolution: {integrity: sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==}
+ engines: {node: '>= 0.8'}
dependencies:
- buffer-alloc-unsafe: 1.1.0
- buffer-fill: 1.0.0
- dev: false
-
- /buffer-fill@1.0.0:
- resolution: {integrity: sha512-T7zexNBwiiaCOGDg9xNX9PBmjrubblRkENuptryuI64URkXDFum9il/JGL8Lm8wYfAXpredVXXZz7eMHilimiQ==}
- dev: false
-
- /buffer-from@1.1.2:
- resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==}
+ depd: 2.0.0
+ inherits: 2.0.4
+ setprototypeof: 1.2.0
+ statuses: 2.0.1
+ toidentifier: 1.0.1
- /buffer-writer@2.0.0:
- resolution: {integrity: sha512-a7ZpuTZU1TRtnwyCNW3I5dc0wWNC3VR9S++Ewyk2HHZdrO3CQJqSpd+95Us590V6AL7JqUAH2IwZ/398PmNFgw==}
- engines: {node: '>=4'}
+ /http-proxy-agent@4.0.1:
+ resolution: {integrity: sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==}
+ engines: {node: '>= 6'}
+ requiresBuild: true
+ dependencies:
+ '@tootallnate/once': 1.1.2
+ agent-base: 6.0.2
+ debug: 4.3.4
+ transitivePeerDependencies:
+ - supports-color
dev: false
+ optional: true
- /buffer@4.9.2:
- resolution: {integrity: sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==}
+ /http2-wrapper@2.2.1:
+ resolution: {integrity: sha512-V5nVw1PAOgfI3Lmeaj2Exmeg7fenjhRUgz1lPSezy1CuhPYbgQtbQj4jZfEAEMlaL+vupsvhjqCyjzob0yxsmQ==}
+ engines: {node: '>=10.19.0'}
dependencies:
- base64-js: 1.5.1
- ieee754: 1.1.13
- isarray: 1.0.0
+ quick-lru: 5.1.1
+ resolve-alpn: 1.2.1
dev: false
- /buffer@6.0.3:
- resolution: {integrity: sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==}
+ /https-proxy-agent@5.0.1:
+ resolution: {integrity: sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==}
+ engines: {node: '>= 6'}
dependencies:
- base64-js: 1.5.1
- ieee754: 1.2.1
-
- /builtin-modules@3.3.0:
- resolution: {integrity: sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==}
- engines: {node: '>=6'}
- dev: true
+ agent-base: 6.0.2
+ debug: 4.3.4
+ transitivePeerDependencies:
+ - supports-color
- /builtins@1.0.3:
- resolution: {integrity: sha512-uYBjakWipfaO/bXI7E8rq6kpwHRZK5cNYrUv2OzZSI/FvmdMyXJ2tG9dKcjEC5YHmHpUAwsargWIZNWdxb/bnQ==}
- dev: true
+ /human-signals@5.0.0:
+ resolution: {integrity: sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==}
+ engines: {node: '>=16.17.0'}
- /bundle-name@3.0.0:
- resolution: {integrity: sha512-PKA4BeSvBpQKQ8iPOGCSiell+N8P+Tf1DlwqmYhpe2gAhKPHn8EYOxVT+ShuGmhg8lN8XiSlS80yiExKXrURlw==}
- engines: {node: '>=12'}
+ /humanize-ms@1.2.1:
+ resolution: {integrity: sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==}
+ requiresBuild: true
dependencies:
- run-applescript: 5.0.0
- dev: true
+ ms: 2.1.3
+ dev: false
+ optional: true
- /bytes@3.0.0:
- resolution: {integrity: sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==}
- engines: {node: '>= 0.8'}
+ /husky@9.0.10:
+ resolution: {integrity: sha512-TQGNknoiy6bURzIO77pPRu+XHi6zI7T93rX+QnJsoYFf3xdjKOur+IlfqzJGMHIK/wXrLg+GsvMs8Op7vI2jVA==}
+ engines: {node: '>=18'}
+ hasBin: true
dev: true
- /bytes@3.1.2:
- resolution: {integrity: sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==}
- engines: {node: '>= 0.8'}
-
- /cacache@15.3.0:
- resolution: {integrity: sha512-VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ==}
- engines: {node: '>= 10'}
- requiresBuild: true
- dependencies:
- '@npmcli/fs': 1.1.1
- '@npmcli/move-file': 1.1.2
- chownr: 2.0.0
- fs-minipass: 2.1.0
- glob: 7.2.3
- infer-owner: 1.0.4
- lru-cache: 6.0.0
- minipass: 3.3.6
- minipass-collect: 1.0.2
- minipass-flush: 1.0.5
- minipass-pipeline: 1.2.4
- mkdirp: 1.0.4
- p-map: 4.0.0
- promise-inflight: 1.0.1
- rimraf: 3.0.2
- ssri: 8.0.1
- tar: 6.2.0
- unique-filename: 1.1.1
- transitivePeerDependencies:
- - bluebird
+ /ical-generator@6.0.1(@types/luxon@3.4.2)(@types/node@20.11.17)(luxon@3.4.4)(moment@2.30.1):
+ resolution: {integrity: sha512-m0Li239l4xddH+MveodfAWFFrHrT8F3rGmgR0zyWUe0Mg7Q/XxiPssN+cKer3+WSpfFNyhjdAsqalTUivKl/vQ==}
+ engines: {node: '>=18.0.0'}
+ peerDependencies:
+ '@touch4it/ical-timezones': '>=1.6.0'
+ '@types/luxon': '>= 1.26.0'
+ '@types/mocha': '>= 8.2.1'
+ '@types/node': '*'
+ dayjs: '>= 1.10.0'
+ luxon: '>= 1.26.0'
+ moment: '>= 2.29.0'
+ moment-timezone: '>= 0.5.33'
+ rrule: '>= 2.6.8'
+ peerDependenciesMeta:
+ '@touch4it/ical-timezones':
+ optional: true
+ '@types/luxon':
+ optional: true
+ '@types/mocha':
+ optional: true
+ '@types/node':
+ optional: true
+ dayjs:
+ optional: true
+ luxon:
+ optional: true
+ moment:
+ optional: true
+ moment-timezone:
+ optional: true
+ rrule:
+ optional: true
+ dependencies:
+ '@types/luxon': 3.4.2
+ '@types/node': 20.11.17
+ luxon: 3.4.4
+ moment: 2.30.1
+ uuid-random: 1.3.2
dev: false
- optional: true
- /cache-base@1.0.1:
- resolution: {integrity: sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==}
+ /iconv-lite@0.4.24:
+ resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==}
engines: {node: '>=0.10.0'}
dependencies:
- collection-visit: 1.0.0
- component-emitter: 1.3.0
- get-value: 2.0.6
- has-value: 1.0.0
- isobject: 3.0.1
- set-value: 2.0.1
- to-object-path: 0.3.0
- union-value: 1.0.1
- unset-value: 1.0.0
- dev: true
-
- /cacheable-lookup@5.0.4:
- resolution: {integrity: sha512-2/kNscPhpcxrOigMZzbiWF7dz8ilhb/nIHU3EyZiXWXpeq/au8qJ8VhdftMkty3n7Gj6HIGalQG8oiBNB3AJgA==}
- engines: {node: '>=10.6.0'}
- dev: false
+ safer-buffer: 2.1.2
- /cacheable-request@7.0.4:
- resolution: {integrity: sha512-v+p6ongsrp0yTGbJXjgxPow2+DL93DASP4kXCDKb8/bwRtt9OEF3whggkkDkGNzgcWy2XaF4a8nZglC7uElscg==}
- engines: {node: '>=8'}
+ /iconv-lite@0.6.3:
+ resolution: {integrity: sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==}
+ engines: {node: '>=0.10.0'}
+ requiresBuild: true
dependencies:
- clone-response: 1.0.3
- get-stream: 5.2.0
- http-cache-semantics: 4.1.1
- keyv: 4.5.3
- lowercase-keys: 2.0.0
- normalize-url: 6.1.0
- responselike: 2.0.1
+ safer-buffer: 2.1.2
dev: false
+ optional: true
- /call-bind@1.0.2:
- resolution: {integrity: sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==}
- dependencies:
- function-bind: 1.1.1
- get-intrinsic: 1.2.1
+ /ieee754@1.2.1:
+ resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==}
- /call-me-maybe@1.0.2:
- resolution: {integrity: sha512-HpX65o1Hnr9HH25ojC1YGs7HCQLq0GCOibSaWER0eNpgJ/Z1MZv2mTc7+xh6WOPxbRVcmgbv4hGU+uSQ/2xFZQ==}
- dev: true
+ /igniculus@1.5.0:
+ resolution: {integrity: sha512-vhj2J/cSzNg2G5tcK4Z1KZdeYmQa5keoxFULUYAxctK/zHJb1oraO7noCqnJxKe1b2eZdiiaSL1IHPOFAI8UYQ==}
+ engines: {node: '>=4.0.0'}
+ dev: false
- /callsites@3.1.0:
- resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==}
+ /ignore@5.3.1:
+ resolution: {integrity: sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==}
+ engines: {node: '>= 4'}
+
+ /import-fresh@3.3.0:
+ resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==}
engines: {node: '>=6'}
+ dependencies:
+ parent-module: 1.0.1
+ resolve-from: 4.0.0
dev: true
- /camel-case@4.1.2:
- resolution: {integrity: sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==}
- dependencies:
- pascal-case: 3.1.2
- tslib: 2.6.2
+ /imurmurhash@0.1.4:
+ resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==}
+ engines: {node: '>=0.8.19'}
- /camelcase@6.3.0:
- resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==}
- engines: {node: '>=10'}
- dev: true
+ /indent-string@4.0.0:
+ resolution: {integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==}
+ engines: {node: '>=8'}
- /caniuse-api@3.0.0:
- resolution: {integrity: sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==}
- dependencies:
- browserslist: 4.22.1
- caniuse-lite: 1.0.30001541
- lodash.memoize: 4.1.2
- lodash.uniq: 4.5.0
- dev: true
+ /indent-string@5.0.0:
+ resolution: {integrity: sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==}
+ engines: {node: '>=12'}
- /caniuse-lite@1.0.30001541:
- resolution: {integrity: sha512-bLOsqxDgTqUBkzxbNlSBt8annkDpQB9NdzdTbO2ooJ+eC/IQcvDspDc058g84ejCelF7vHUx57KIOjEecOHXaw==}
- dev: true
+ /infer-owner@1.0.4:
+ resolution: {integrity: sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==}
+ requiresBuild: true
+ dev: false
+ optional: true
- /capital-case@1.0.4:
- resolution: {integrity: sha512-ds37W8CytHgwnhGGTi88pcPyR15qoNkOpYwmMMfnWqqWgESapLqvDx6huFjQ5vqWSn2Z06173XNA7LtMOeUh1A==}
- dependencies:
- no-case: 3.0.4
- tslib: 2.6.2
- upper-case-first: 2.0.2
+ /inflation@2.1.0:
+ resolution: {integrity: sha512-t54PPJHG1Pp7VQvxyVCJ9mBbjG3Hqryges9bXoOO6GExCPa+//i/d5GSuFtpx3ALLd7lgIAur6zrIlBQyJuMlQ==}
+ engines: {node: '>= 0.8.0'}
- /cardinal@2.1.1:
- resolution: {integrity: sha512-JSr5eOgoEymtYHBjNWyjrMqet9Am2miJhlfKNdqLp6zoeAh0KN5dRAcxlecj5mAJrmQomgiOBj35xHLrFjqBpw==}
- hasBin: true
+ /inflight@1.0.6:
+ resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==}
+ requiresBuild: true
dependencies:
- ansicolors: 0.3.2
- redeyed: 2.1.1
- dev: true
+ once: 1.4.0
+ wrappy: 1.0.2
- /chai@4.3.10:
- resolution: {integrity: sha512-0UXG04VuVbruMUYbJ6JctvH0YnC/4q3/AkT18q4NaITo91CUm0liMS9VqzT9vZhVQ/1eqPanMWjBM+Juhfb/9g==}
- engines: {node: '>=4'}
- dependencies:
- assertion-error: 1.1.0
- check-error: 1.0.3
- deep-eql: 4.1.3
- get-func-name: 2.0.2
- loupe: 2.3.6
- pathval: 1.1.1
- type-detect: 4.0.8
- dev: true
+ /inherits@2.0.4:
+ resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==}
- /chalk@1.1.3:
- resolution: {integrity: sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==}
- engines: {node: '>=0.10.0'}
- dependencies:
- ansi-styles: 2.2.1
- escape-string-regexp: 1.0.5
- has-ansi: 2.0.0
- strip-ansi: 3.0.1
- supports-color: 2.0.0
- dev: true
+ /ini@1.3.8:
+ resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==}
+ dev: false
- /chalk@2.4.2:
- resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==}
- engines: {node: '>=4'}
+ /internal-slot@1.0.6:
+ resolution: {integrity: sha512-Xj6dv+PsbtwyPpEflsejS+oIZxmMlV44zAhG479uYu89MsjcYOhCFnNyKrkJrihbsiasQyY0afoCl/9BLR65bg==}
+ engines: {node: '>= 0.4'}
dependencies:
- ansi-styles: 3.2.1
- escape-string-regexp: 1.0.5
- supports-color: 5.5.0
+ get-intrinsic: 1.2.2
+ hasown: 2.0.0
+ side-channel: 1.0.4
dev: true
- /chalk@3.0.0:
- resolution: {integrity: sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==}
- engines: {node: '>=8'}
- dependencies:
- ansi-styles: 4.3.0
- supports-color: 7.2.0
- dev: true
+ /interpret@2.2.0:
+ resolution: {integrity: sha512-Ju0Bz/cEia55xDwUWEa8+olFpCiQoypjnQySseKtmjNrnps3P+xfpUmGr90T7yjlVJmOtybRvPXhKMbHr+fWnw==}
+ engines: {node: '>= 0.10'}
+ dev: false
- /chalk@4.1.2:
- resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==}
- engines: {node: '>=10'}
+ /ip@2.0.0:
+ resolution: {integrity: sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==}
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /ipaddr.js@1.9.1:
+ resolution: {integrity: sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==}
+ engines: {node: '>= 0.10'}
+
+ /is-array-buffer@3.0.2:
+ resolution: {integrity: sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==}
dependencies:
- ansi-styles: 4.3.0
- supports-color: 7.2.0
+ call-bind: 1.0.5
+ get-intrinsic: 1.2.2
+ is-typed-array: 1.1.12
dev: true
- /chalk@5.3.0:
- resolution: {integrity: sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==}
- engines: {node: ^12.17.0 || ^14.13 || >=16.0.0}
+ /is-arrayish@0.2.1:
+ resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==}
dev: true
- /change-case@4.1.2:
- resolution: {integrity: sha512-bSxY2ws9OtviILG1EiY5K7NNxkqg/JnRnFxLtKQ96JaviiIxi7djMrSd0ECT9AC+lttClmYwKw53BWpOMblo7A==}
+ /is-bigint@1.0.4:
+ resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==}
dependencies:
- camel-case: 4.1.2
- capital-case: 1.0.4
- constant-case: 3.0.4
- dot-case: 3.0.4
- header-case: 2.0.4
- no-case: 3.0.4
- param-case: 3.0.4
- pascal-case: 3.1.2
- path-case: 3.0.4
- sentence-case: 3.0.4
- snake-case: 3.0.4
- tslib: 2.6.2
-
- /charenc@0.0.2:
- resolution: {integrity: sha512-yrLQ/yVUFXkzg7EDQsPieE/53+0RlaWTs+wBrvW36cyilJ2SaDWfl4Yj7MtLTXleV9uEKefbAGUPv2/iWSooRA==}
+ has-bigints: 1.0.2
dev: true
- /check-error@1.0.3:
- resolution: {integrity: sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==}
+ /is-binary-path@2.1.0:
+ resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==}
+ engines: {node: '>=8'}
dependencies:
- get-func-name: 2.0.2
- dev: true
+ binary-extensions: 2.2.0
- /chokidar@3.5.3:
- resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==}
- engines: {node: '>= 8.10.0'}
+ /is-boolean-object@1.1.2:
+ resolution: {integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==}
+ engines: {node: '>= 0.4'}
dependencies:
- anymatch: 3.1.3
- braces: 3.0.2
- glob-parent: 5.1.2
- is-binary-path: 2.1.0
- is-glob: 4.0.3
- normalize-path: 3.0.0
- readdirp: 3.6.0
- optionalDependencies:
- fsevents: 2.3.3
+ call-bind: 1.0.5
+ has-tostringtag: 1.0.0
dev: true
- /chownr@1.1.4:
- resolution: {integrity: sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==}
- dev: false
-
- /chownr@2.0.0:
- resolution: {integrity: sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==}
- engines: {node: '>=10'}
- dev: false
-
- /chrome-trace-event@1.0.3:
- resolution: {integrity: sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==}
- engines: {node: '>=6.0'}
+ /is-builtin-module@3.2.1:
+ resolution: {integrity: sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A==}
+ engines: {node: '>=6'}
+ dependencies:
+ builtin-modules: 3.3.0
dev: true
- /ci-info@3.8.0:
- resolution: {integrity: sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw==}
- engines: {node: '>=8'}
+ /is-callable@1.2.7:
+ resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==}
+ engines: {node: '>= 0.4'}
dev: true
- /class-utils@0.3.6:
- resolution: {integrity: sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==}
- engines: {node: '>=0.10.0'}
+ /is-ci@3.0.1:
+ resolution: {integrity: sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==}
+ hasBin: true
dependencies:
- arr-union: 3.1.0
- define-property: 0.2.5
- isobject: 3.0.1
- static-extend: 0.1.2
+ ci-info: 3.9.0
dev: true
- /clean-regexp@1.0.0:
- resolution: {integrity: sha512-GfisEZEJvzKrmGWkvfhgzcz/BllN1USeqD2V6tg14OAOgaCD2Z/PUEuxnAZ/nPvmaHRG7a8y77p1T/IRQ4D1Hw==}
- engines: {node: '>=4'}
+ /is-core-module@2.13.1:
+ resolution: {integrity: sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==}
dependencies:
- escape-string-regexp: 1.0.5
- dev: true
-
- /clean-stack@2.2.0:
- resolution: {integrity: sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==}
- engines: {node: '>=6'}
+ hasown: 2.0.0
- /clean-webpack-plugin@4.0.0(webpack@5.88.2):
- resolution: {integrity: sha512-WuWE1nyTNAyW5T7oNyys2EN0cfP2fdRxhxnIQWiAp0bMabPdHhoGxM8A6YL2GhqwgrPnnaemVE7nv5XJ2Fhh2w==}
- engines: {node: '>=10.0.0'}
- peerDependencies:
- webpack: '>=4.0.0 <6.0.0'
+ /is-date-object@1.0.5:
+ resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==}
+ engines: {node: '>= 0.4'}
dependencies:
- del: 4.1.1
- webpack: 5.88.2(webpack-cli@5.1.4)
+ has-tostringtag: 1.0.0
dev: true
- /cli-boxes@3.0.0:
- resolution: {integrity: sha512-/lzGpEWL/8PfI0BmBOPRwp0c/wFNX1RdUML3jK/RcSBA9T8mZDdQpqYBKtCFTOfQbwPqWEOpjqW+Fnayc0969g==}
- engines: {node: '>=10'}
+ /is-extglob@2.1.1:
+ resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==}
+ engines: {node: '>=0.10.0'}
- /cli-cursor@3.1.0:
- resolution: {integrity: sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==}
+ /is-fullwidth-code-point@3.0.0:
+ resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==}
engines: {node: '>=8'}
- dependencies:
- restore-cursor: 3.1.0
- /cli-table3@0.6.3:
- resolution: {integrity: sha512-w5Jac5SykAeZJKntOxJCrm63Eg5/4dhMWIcuTbo9rpE+brgaSZo0RuNJZeOyMgsUdhDeojvgyQLmjI+K50ZGyg==}
- engines: {node: 10.* || >= 12.*}
- dependencies:
- string-width: 4.2.3
- optionalDependencies:
- '@colors/colors': 1.5.0
+ /is-fullwidth-code-point@4.0.0:
+ resolution: {integrity: sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==}
+ engines: {node: '>=12'}
- /clone-deep@4.0.1:
- resolution: {integrity: sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==}
- engines: {node: '>=6'}
+ /is-fullwidth-code-point@5.0.0:
+ resolution: {integrity: sha512-OVa3u9kkBbw7b8Xw5F9P+D/T9X+Z4+JruYVNapTjPYZYUznQ5YfWeFkOj606XYYW8yugTfC8Pj0hYqvi4ryAhA==}
+ engines: {node: '>=18'}
dependencies:
- is-plain-object: 2.0.4
- kind-of: 6.0.3
- shallow-clone: 3.0.1
- dev: true
+ get-east-asian-width: 1.2.0
- /clone-response@1.0.3:
- resolution: {integrity: sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==}
+ /is-glob@4.0.3:
+ resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==}
+ engines: {node: '>=0.10.0'}
dependencies:
- mimic-response: 1.0.1
- dev: false
+ is-extglob: 2.1.1
- /clone@1.0.4:
- resolution: {integrity: sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==}
- engines: {node: '>=0.8'}
- dev: true
+ /is-lambda@1.0.1:
+ resolution: {integrity: sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==}
+ requiresBuild: true
+ dev: false
+ optional: true
- /clone@2.1.2:
- resolution: {integrity: sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==}
- engines: {node: '>=0.8'}
+ /is-negative-zero@2.0.2:
+ resolution: {integrity: sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==}
+ engines: {node: '>= 0.4'}
dev: true
- /co-compose@7.0.3:
- resolution: {integrity: sha512-ZHLSLzeBXe5yaEyIHo9T92uVrbsBRLMXlG0G4/pSm9f6148l4mJTr1cii8Jl9ce+mbLmW5XqHURPC7gZFJNeZA==}
-
- /code-block-writer@11.0.3:
- resolution: {integrity: sha512-NiujjUFB4SwScJq2bwbYUtXbZhBSlY6vYzm++3Q6oC+U+injTqfPYFK8wS9COOmb2lueqp0ZRB4nK1VYeHgNyw==}
- dev: false
-
- /collection-visit@1.0.0:
- resolution: {integrity: sha512-lNkKvzEeMBBjUGHZ+q6z9pSJla0KWAQPvtzhEV9+iGyQYG+pBpl7xKDhxoNSOZH2hhv0v5k0y2yAM4o4SjoSkw==}
- engines: {node: '>=0.10.0'}
- dependencies:
- map-visit: 1.0.0
- object-visit: 1.0.1
- dev: true
-
- /color-convert@1.9.3:
- resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==}
- dependencies:
- color-name: 1.1.3
- dev: true
-
- /color-convert@2.0.1:
- resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==}
- engines: {node: '>=7.0.0'}
+ /is-number-object@1.0.7:
+ resolution: {integrity: sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==}
+ engines: {node: '>= 0.4'}
dependencies:
- color-name: 1.1.4
-
- /color-name@1.1.3:
- resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==}
+ has-tostringtag: 1.0.0
dev: true
- /color-name@1.1.4:
- resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==}
-
- /color-support@1.1.3:
- resolution: {integrity: sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==}
- hasBin: true
+ /is-number@7.0.0:
+ resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==}
+ engines: {node: '>=0.12.0'}
- /colord@2.9.3:
- resolution: {integrity: sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==}
+ /is-path-inside@3.0.3:
+ resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==}
+ engines: {node: '>=8'}
dev: true
- /colorette@2.0.19:
- resolution: {integrity: sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==}
- dev: false
-
- /colorette@2.0.20:
- resolution: {integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==}
-
- /columnify@1.6.0:
- resolution: {integrity: sha512-lomjuFZKfM6MSAnV9aCZC9sc0qGbmZdfygNv+nCpqVkSKdCxCklLtd16O0EILGkImHw9ZpHkAnHaB+8Zxq5W6Q==}
- engines: {node: '>=8.0.0'}
+ /is-regex@1.1.4:
+ resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==}
+ engines: {node: '>= 0.4'}
dependencies:
- strip-ansi: 6.0.1
- wcwidth: 1.0.1
+ call-bind: 1.0.5
+ has-tostringtag: 1.0.0
dev: true
- /combined-stream@1.0.8:
- resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==}
- engines: {node: '>= 0.8'}
+ /is-shared-array-buffer@1.0.2:
+ resolution: {integrity: sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==}
dependencies:
- delayed-stream: 1.0.0
+ call-bind: 1.0.5
dev: true
- /commander@10.0.1:
- resolution: {integrity: sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==}
- engines: {node: '>=14'}
+ /is-stream@3.0.0:
+ resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
- /commander@2.20.3:
- resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==}
+ /is-string@1.0.7:
+ resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==}
+ engines: {node: '>= 0.4'}
+ dependencies:
+ has-tostringtag: 1.0.0
dev: true
- /commander@7.2.0:
- resolution: {integrity: sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==}
- engines: {node: '>= 10'}
+ /is-symbol@1.0.4:
+ resolution: {integrity: sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==}
+ engines: {node: '>= 0.4'}
+ dependencies:
+ has-symbols: 1.0.3
dev: true
- /commander@9.5.0:
- resolution: {integrity: sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==}
- engines: {node: ^12.20.0 || >=14}
- requiresBuild: true
+ /is-typed-array@1.1.12:
+ resolution: {integrity: sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg==}
+ engines: {node: '>= 0.4'}
+ dependencies:
+ which-typed-array: 1.1.13
dev: true
- optional: true
- /comment-json@2.4.2:
- resolution: {integrity: sha512-T+iXox779qsqneMYx/x5BZyz4xjCeQRmuNVzz8tko7qZUs3MlzpA3RAs+O1XsgcKToNBMIvfVzafGOeiU7RggA==}
- engines: {node: '>= 6'}
+ /is-weakref@1.0.2:
+ resolution: {integrity: sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==}
dependencies:
- core-util-is: 1.0.3
- esprima: 4.0.1
- has-own-prop: 2.0.0
- repeat-string: 1.6.1
+ call-bind: 1.0.5
dev: true
- /commondir@1.0.1:
- resolution: {integrity: sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==}
- dev: true
+ /isarray@1.0.0:
+ resolution: {integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==}
+ dev: false
- /component-emitter@1.3.0:
- resolution: {integrity: sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==}
+ /isarray@2.0.5:
+ resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==}
dev: true
- /compressible@2.0.18:
- resolution: {integrity: sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==}
- engines: {node: '>= 0.6'}
- dependencies:
- mime-db: 1.52.0
- dev: true
+ /isexe@2.0.0:
+ resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==}
- /compression@1.7.4:
- resolution: {integrity: sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==}
- engines: {node: '>= 0.8.0'}
+ /jest-diff@29.7.0:
+ resolution: {integrity: sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==}
+ engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
dependencies:
- accepts: 1.3.8
- bytes: 3.0.0
- compressible: 2.0.18
- debug: 2.6.9
- on-headers: 1.0.2
- safe-buffer: 5.1.2
- vary: 1.1.2
- transitivePeerDependencies:
- - supports-color
- dev: true
-
- /concat-map@0.0.1:
- resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==}
-
- /connect-history-api-fallback@2.0.0:
- resolution: {integrity: sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==}
- engines: {node: '>=0.8'}
- dev: true
+ chalk: 4.1.2
+ diff-sequences: 29.6.3
+ jest-get-type: 29.6.3
+ pretty-format: 29.7.0
- /consola@2.15.3:
- resolution: {integrity: sha512-9vAdYbHj6x2fLKC4+oPH0kFzY/orMZyG2Aj+kNylHxKGJ/Ed4dpNyAQYwJOdqO4zdM7XpVHmyejQDcQHrnuXbw==}
- dev: true
+ /jest-get-type@29.6.3:
+ resolution: {integrity: sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==}
+ engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
- /console-control-strings@1.1.0:
- resolution: {integrity: sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==}
+ /jose@4.15.4:
+ resolution: {integrity: sha512-W+oqK4H+r5sITxfxpSU+MMdr/YSWGvgZMQDIsNoBDGGy4i7GBPTtvFKibQzW06n3U3TqHjhvBJsirShsEJ6eeQ==}
dev: false
- /constant-case@3.0.4:
- resolution: {integrity: sha512-I2hSBi7Vvs7BEuJDr5dDHfzb/Ruj3FyvFyh7KLilAjNQw3Be+xgqUBA2W6scVEcL0hL1dwPRtIqEPVUCKkSsyQ==}
- dependencies:
- no-case: 3.0.4
- tslib: 2.6.2
- upper-case: 2.0.2
+ /jose@5.2.1:
+ resolution: {integrity: sha512-qiaQhtQRw6YrOaOj0v59h3R6hUY9NvxBmmnMfKemkqYmBB0tEc97NbLP7ix44VP5p9/0YHG8Vyhzuo5YBNwviA==}
+ dev: false
- /content-disposition@0.5.4:
- resolution: {integrity: sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==}
- engines: {node: '>= 0.6'}
- dependencies:
- safe-buffer: 5.2.1
+ /js-stringify@1.0.2:
+ resolution: {integrity: sha512-rtS5ATOo2Q5k1G+DADISilDA6lv79zIiwFd6CcjuIxGKLFm5C+RLImRscVap9k55i+MOZwgliw+NejvkLuGD5g==}
- /content-type@1.0.5:
- resolution: {integrity: sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==}
- engines: {node: '>= 0.6'}
+ /js-tokens@4.0.0:
+ resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==}
dev: true
- /convert-hrtime@3.0.0:
- resolution: {integrity: sha512-7V+KqSvMiHp8yWDuwfww06XleMWVVB9b9tURBx+G7UTADuo5hYPuowKloz4OzOqbPezxgo+fdQ1522WzPG4OeA==}
- engines: {node: '>=8'}
+ /js-yaml@4.1.0:
+ resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==}
+ hasBin: true
+ dependencies:
+ argparse: 2.0.1
dev: true
- /convert-source-map@1.9.0:
- resolution: {integrity: sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==}
+ /jsesc@0.5.0:
+ resolution: {integrity: sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==}
+ hasBin: true
dev: true
- /convert-source-map@2.0.0:
- resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==}
+ /jsesc@3.0.2:
+ resolution: {integrity: sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==}
+ engines: {node: '>=6'}
+ hasBin: true
dev: true
- /cookie-signature@1.0.6:
- resolution: {integrity: sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==}
- dev: true
+ /json-buffer@3.0.1:
+ resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==}
- /cookie@0.5.0:
- resolution: {integrity: sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==}
- engines: {node: '>= 0.6'}
+ /json-parse-even-better-errors@2.3.1:
+ resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==}
+ dev: true
- /cookiejar@2.1.4:
- resolution: {integrity: sha512-LDx6oHrK+PhzLKJU9j5S7/Y3jM/mUHvD/DeI1WQmJn652iPC5Y4TBzC9l+5OMOXlyTTA+SmVUPm0HQUwpD5Jqw==}
+ /json-schema-traverse@0.4.1:
+ resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==}
dev: true
- /copy-descriptor@0.1.1:
- resolution: {integrity: sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw==}
- engines: {node: '>=0.10.0'}
+ /json-stable-stringify-without-jsonify@1.0.1:
+ resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==}
dev: true
- /core-js-compat@3.32.2:
- resolution: {integrity: sha512-+GjlguTDINOijtVRUxrQOv3kfu9rl+qPNdX2LTbJ/ZyVTuxK+ksVSAGX1nHstu4hrv1En/uPTtWgq2gI5wt4AQ==}
+ /json5@1.0.2:
+ resolution: {integrity: sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==}
+ hasBin: true
dependencies:
- browserslist: 4.22.1
+ minimist: 1.2.8
dev: true
- /core-util-is@1.0.3:
- resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==}
-
- /cp-file@7.0.0:
- resolution: {integrity: sha512-0Cbj7gyvFVApzpK/uhCtQ/9kE9UnYpxMzaq5nQQC/Dh4iaj5fxp7iEFIullrYwzj8nf0qnsI1Qsx34hAeAebvw==}
- engines: {node: '>=8'}
+ /jsonc-eslint-parser@2.4.0:
+ resolution: {integrity: sha512-WYDyuc/uFcGp6YtM2H0uKmUwieOuzeE/5YocFJLnLfclZ4inf3mRn8ZVy1s7Hxji7Jxm6Ss8gqpexD/GlKoGgg==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
dependencies:
- graceful-fs: 4.2.11
- make-dir: 3.1.0
- nested-error-stacks: 2.1.1
- p-event: 4.2.0
+ acorn: 8.11.3
+ eslint-visitor-keys: 3.4.3
+ espree: 9.6.1
+ semver: 7.6.0
dev: true
- /cp-file@9.1.0:
- resolution: {integrity: sha512-3scnzFj/94eb7y4wyXRWwvzLFaQp87yyfTnChIjlfYrVqp5lVO3E2hIJMeQIltUT0K2ZAB3An1qXcBmwGyvuwA==}
- engines: {node: '>=10'}
+ /jsonfile@6.1.0:
+ resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==}
dependencies:
+ universalify: 2.0.1
+ optionalDependencies:
graceful-fs: 4.2.11
- make-dir: 3.1.0
- nested-error-stacks: 2.1.1
- p-event: 4.2.0
- dev: true
+ dev: false
- /cpy@8.1.2:
- resolution: {integrity: sha512-dmC4mUesv0OYH2kNFEidtf/skUwv4zePmGeepjyyJ0qTo5+8KhA1o99oIAwVVLzQMAeDJml74d6wPPKb6EZUTg==}
- engines: {node: '>=8'}
- dependencies:
- arrify: 2.0.1
- cp-file: 7.0.0
- globby: 9.2.0
- has-glob: 1.0.0
- junk: 3.1.0
- nested-error-stacks: 2.1.1
- p-all: 2.1.0
- p-filter: 2.1.0
- p-map: 3.0.0
- transitivePeerDependencies:
- - supports-color
- dev: true
+ /jsonschema@1.4.1:
+ resolution: {integrity: sha512-S6cATIPVv1z0IlxdN+zUk5EPjkGCdnhN4wVSBlvoUO1tOLJootbo9CquNJmbIh4yikWHiUedhRYrNPn1arpEmQ==}
- /cross-env@7.0.3:
- resolution: {integrity: sha512-+/HKd6EgcQCJGh2PSjZuUitQBQynKor4wrFbRg4DtAgS1aWO+gU52xpH7M9ScGgXSYmAVS9bIJ8EzuaGw0oNAw==}
- engines: {node: '>=10.14', npm: '>=6', yarn: '>=1'}
- hasBin: true
- dependencies:
- cross-spawn: 7.0.3
- dev: true
+ /junk@4.0.1:
+ resolution: {integrity: sha512-Qush0uP+G8ZScpGMZvHUiRfI0YBWuB3gVBYlI0v0vvOJt5FLicco+IkP0a50LqTTQhmts/m6tP5SWE+USyIvcQ==}
+ engines: {node: '>=12.20'}
- /cross-spawn@7.0.3:
- resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==}
- engines: {node: '>= 8'}
+ /keyv@4.5.4:
+ resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==}
dependencies:
- path-key: 3.1.1
- shebang-command: 2.0.0
- which: 2.0.2
- dev: true
+ json-buffer: 3.0.1
- /crypt@0.0.2:
- resolution: {integrity: sha512-mCxBlsHFYh9C+HVpiEacem8FEBnMXgU9gy4zmNC+SXAZNB/1idgp/aulFJ4FgCi7GPEVbfyng092GqL2k2rmow==}
- dev: true
+ /kleur@4.1.5:
+ resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==}
+ engines: {node: '>=6'}
- /csrf@3.1.0:
- resolution: {integrity: sha512-uTqEnCvWRk042asU6JtapDTcJeeailFy4ydOQS28bj1hcLnYRiqi8SsD2jS412AY1I/4qdOwWZun774iqywf9w==}
- engines: {node: '>= 0.8'}
+ /knex-dynamic-connection@3.1.1(mysql@2.18.1)(pg@8.11.3)(sqlite3@5.1.7):
+ resolution: {integrity: sha512-Omq2Mw+5LkjJvZX+ESWpLx2FYkH9SB6Qq4Jad7f2LNQOQV1VLq91QQqtEhkgprnQuT3IUvzFooARpSN1uzoMEg==}
+ engines: {node: '>=14.0.0'}
dependencies:
- rndm: 1.2.0
- tsscmp: 1.0.6
- uid-safe: 2.1.5
+ debug: 4.3.4
+ knex: 3.1.0(mysql@2.18.1)(pg@8.11.3)(sqlite3@5.1.7)
+ transitivePeerDependencies:
+ - better-sqlite3
+ - mysql
+ - mysql2
+ - pg
+ - pg-native
+ - sqlite3
+ - supports-color
+ - tedious
dev: false
- /css-declaration-sorter@6.4.1(postcss@8.4.31):
- resolution: {integrity: sha512-rtdthzxKuyq6IzqX6jEcIzQF/YqccluefyCYheovBOLhFT/drQA9zj/UbRAa9J7C0o6EG6u3E6g+vKkay7/k3g==}
- engines: {node: ^10 || ^12 || >=14}
- peerDependencies:
- postcss: ^8.0.9
- dependencies:
- postcss: 8.4.31
- dev: true
-
- /css-loader@6.8.1(webpack@5.88.2):
- resolution: {integrity: sha512-xDAXtEVGlD0gJ07iclwWVkLoZOpEvAWaSyf6W18S2pOC//K8+qUDIx8IIT3D+HjnmkJPQeesOPv5aiUaJsCM2g==}
- engines: {node: '>= 12.13.0'}
- peerDependencies:
- webpack: ^5.0.0
- dependencies:
- icss-utils: 5.1.0(postcss@8.4.31)
- postcss: 8.4.31
- postcss-modules-extract-imports: 3.0.0(postcss@8.4.31)
- postcss-modules-local-by-default: 4.0.3(postcss@8.4.31)
- postcss-modules-scope: 3.0.0(postcss@8.4.31)
- postcss-modules-values: 4.0.0(postcss@8.4.31)
- postcss-value-parser: 4.2.0
- semver: 7.5.4
- webpack: 5.88.2(webpack-cli@5.1.4)
- dev: true
-
- /css-minimizer-webpack-plugin@5.0.1(webpack@5.88.2):
- resolution: {integrity: sha512-3caImjKFQkS+ws1TGcFn0V1HyDJFq1Euy589JlD6/3rV2kj+w7r5G9WDMgSHvpvXHNZ2calVypZWuEDQd9wfLg==}
- engines: {node: '>= 14.15.0'}
+ /knex@3.1.0(mysql@2.18.1)(pg@8.11.3)(sqlite3@5.1.7):
+ resolution: {integrity: sha512-GLoII6hR0c4ti243gMs5/1Rb3B+AjwMOfjYm97pu0FOQa7JH56hgBxYf5WK2525ceSbBY1cjeZ9yk99GPMB6Kw==}
+ engines: {node: '>=16'}
+ hasBin: true
peerDependencies:
- '@parcel/css': '*'
- '@swc/css': '*'
- clean-css: '*'
- csso: '*'
- esbuild: '*'
- lightningcss: '*'
- webpack: ^5.0.0
+ better-sqlite3: '*'
+ mysql: '*'
+ mysql2: '*'
+ pg: '*'
+ pg-native: '*'
+ sqlite3: '*'
+ tedious: '*'
peerDependenciesMeta:
- '@parcel/css':
+ better-sqlite3:
optional: true
- '@swc/css':
+ mysql:
optional: true
- clean-css:
+ mysql2:
optional: true
- csso:
+ pg:
optional: true
- esbuild:
+ pg-native:
optional: true
- lightningcss:
+ sqlite3:
+ optional: true
+ tedious:
optional: true
dependencies:
- '@jridgewell/trace-mapping': 0.3.19
- cssnano: 6.0.1(postcss@8.4.31)
- jest-worker: 29.7.0
- postcss: 8.4.31
- schema-utils: 4.2.0
- serialize-javascript: 6.0.1
- webpack: 5.88.2(webpack-cli@5.1.4)
- dev: true
-
- /css-select@4.3.0:
- resolution: {integrity: sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==}
- dependencies:
- boolbase: 1.0.0
- css-what: 6.1.0
- domhandler: 4.3.1
- domutils: 2.8.0
- nth-check: 2.1.1
- dev: true
-
- /css-select@5.1.0:
- resolution: {integrity: sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==}
- dependencies:
- boolbase: 1.0.0
- css-what: 6.1.0
- domhandler: 5.0.3
- domutils: 3.1.0
- nth-check: 2.1.1
- dev: true
-
- /css-tree@2.2.1:
- resolution: {integrity: sha512-OA0mILzGc1kCOCSJerOeqDxDQ4HOh+G8NbOJFOTgOCzpw7fCBubk0fEyxp8AgOL/jvLgYA/uV0cMbe43ElF1JA==}
- engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0, npm: '>=7.0.0'}
- dependencies:
- mdn-data: 2.0.28
- source-map-js: 1.0.2
- dev: true
-
- /css-tree@2.3.1:
- resolution: {integrity: sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==}
- engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0}
- dependencies:
- mdn-data: 2.0.30
- source-map-js: 1.0.2
- dev: true
-
- /css-what@6.1.0:
- resolution: {integrity: sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==}
- engines: {node: '>= 6'}
- dev: true
-
- /cssesc@3.0.0:
- resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==}
- engines: {node: '>=4'}
- hasBin: true
- dev: true
-
- /cssnano-preset-default@6.0.1(postcss@8.4.31):
- resolution: {integrity: sha512-7VzyFZ5zEB1+l1nToKyrRkuaJIx0zi/1npjvZfbBwbtNTzhLtlvYraK/7/uqmX2Wb2aQtd983uuGw79jAjLSuQ==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.2.15
- dependencies:
- css-declaration-sorter: 6.4.1(postcss@8.4.31)
- cssnano-utils: 4.0.0(postcss@8.4.31)
- postcss: 8.4.31
- postcss-calc: 9.0.1(postcss@8.4.31)
- postcss-colormin: 6.0.0(postcss@8.4.31)
- postcss-convert-values: 6.0.0(postcss@8.4.31)
- postcss-discard-comments: 6.0.0(postcss@8.4.31)
- postcss-discard-duplicates: 6.0.0(postcss@8.4.31)
- postcss-discard-empty: 6.0.0(postcss@8.4.31)
- postcss-discard-overridden: 6.0.0(postcss@8.4.31)
- postcss-merge-longhand: 6.0.0(postcss@8.4.31)
- postcss-merge-rules: 6.0.1(postcss@8.4.31)
- postcss-minify-font-values: 6.0.0(postcss@8.4.31)
- postcss-minify-gradients: 6.0.0(postcss@8.4.31)
- postcss-minify-params: 6.0.0(postcss@8.4.31)
- postcss-minify-selectors: 6.0.0(postcss@8.4.31)
- postcss-normalize-charset: 6.0.0(postcss@8.4.31)
- postcss-normalize-display-values: 6.0.0(postcss@8.4.31)
- postcss-normalize-positions: 6.0.0(postcss@8.4.31)
- postcss-normalize-repeat-style: 6.0.0(postcss@8.4.31)
- postcss-normalize-string: 6.0.0(postcss@8.4.31)
- postcss-normalize-timing-functions: 6.0.0(postcss@8.4.31)
- postcss-normalize-unicode: 6.0.0(postcss@8.4.31)
- postcss-normalize-url: 6.0.0(postcss@8.4.31)
- postcss-normalize-whitespace: 6.0.0(postcss@8.4.31)
- postcss-ordered-values: 6.0.0(postcss@8.4.31)
- postcss-reduce-initial: 6.0.0(postcss@8.4.31)
- postcss-reduce-transforms: 6.0.0(postcss@8.4.31)
- postcss-svgo: 6.0.0(postcss@8.4.31)
- postcss-unique-selectors: 6.0.0(postcss@8.4.31)
- dev: true
-
- /cssnano-utils@4.0.0(postcss@8.4.31):
- resolution: {integrity: sha512-Z39TLP+1E0KUcd7LGyF4qMfu8ZufI0rDzhdyAMsa/8UyNUU8wpS0fhdBxbQbv32r64ea00h4878gommRVg2BHw==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.2.15
- dependencies:
- postcss: 8.4.31
- dev: true
-
- /cssnano@6.0.1(postcss@8.4.31):
- resolution: {integrity: sha512-fVO1JdJ0LSdIGJq68eIxOqFpIJrZqXUsBt8fkrBcztCQqAjQD51OhZp7tc0ImcbwXD4k7ny84QTV90nZhmqbkg==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.2.15
- dependencies:
- cssnano-preset-default: 6.0.1(postcss@8.4.31)
- lilconfig: 2.1.0
- postcss: 8.4.31
- dev: true
-
- /csso@5.0.5:
- resolution: {integrity: sha512-0LrrStPOdJj+SPCCrGhzryycLjwcgUSHBtxNA8aIDxf0GLsRh1cKYhB00Gd1lDOS4yGH69+SNn13+TWbVHETFQ==}
- engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0, npm: '>=7.0.0'}
- dependencies:
- css-tree: 2.2.1
- dev: true
-
- /cuid@2.1.8:
- resolution: {integrity: sha512-xiEMER6E7TlTPnDxrM4eRiC6TRgjNX9xzEZ5U/Se2YJKr7Mq4pJn/2XEHjl3STcSh96GmkHPcBXLES8M29wyyg==}
- deprecated: Cuid and other k-sortable and non-cryptographic ids (Ulid, ObjectId, KSUID, all UUIDs) are all insecure. Use @paralleldrive/cuid2 instead.
-
- /dag-map@1.0.2:
- resolution: {integrity: sha512-+LSAiGFwQ9dRnRdOeaj7g47ZFJcOUPukAP8J3A3fuZ1g9Y44BG+P1sgApjLXTQPOzC4+7S9Wr8kXsfpINM4jpw==}
- dev: true
-
- /data-uri-to-buffer@2.0.2:
- resolution: {integrity: sha512-ND9qDTLc6diwj+Xe5cdAgVTbLVdXbtxTJRXRhli8Mowuaan+0EJOtdqJ0QCHNSSPyoXGx9HX2/VMnKeC34AChA==}
- dev: true
-
- /dateformat@4.6.3:
- resolution: {integrity: sha512-2P0p0pFGzHS5EMnhdxQi7aJN+iMheud0UhG4dlE1DLAlvL8JHjJJTX/CSm4JXwV0Ka5nGk3zC5mcb5bUQUxxMA==}
-
- /debug@2.6.9:
- resolution: {integrity: sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==}
- peerDependencies:
- supports-color: '*'
- peerDependenciesMeta:
- supports-color:
- optional: true
- dependencies:
- ms: 2.0.0
-
- /debug@3.2.7:
- resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==}
- peerDependencies:
- supports-color: '*'
- peerDependenciesMeta:
- supports-color:
- optional: true
- dependencies:
- ms: 2.1.3
- dev: true
-
- /debug@4.3.4:
- resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==}
- engines: {node: '>=6.0'}
- peerDependencies:
- supports-color: '*'
- peerDependenciesMeta:
- supports-color:
- optional: true
- dependencies:
- ms: 2.1.2
-
- /decimal.js@10.4.3:
- resolution: {integrity: sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==}
- dev: true
-
- /decode-uri-component@0.2.2:
- resolution: {integrity: sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==}
- engines: {node: '>=0.10'}
- dev: true
-
- /decompress-response@6.0.0:
- resolution: {integrity: sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==}
- engines: {node: '>=10'}
- dependencies:
- mimic-response: 3.1.0
- dev: false
-
- /deep-eql@4.1.3:
- resolution: {integrity: sha512-WaEtAOpRA1MQ0eohqZjpGD8zdI0Ovsm8mmFhaDN8dvDZzyoUMcYDnf5Y6iu7HTXxf8JDS23qWa4a+hKCDyOPzw==}
- engines: {node: '>=6'}
- dependencies:
- type-detect: 4.0.8
- dev: true
-
- /deep-extend@0.6.0:
- resolution: {integrity: sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==}
- engines: {node: '>=4.0.0'}
- dev: true
-
- /deep-is@0.1.4:
- resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==}
- dev: true
-
- /default-browser-id@3.0.0:
- resolution: {integrity: sha512-OZ1y3y0SqSICtE8DE4S8YOE9UZOJ8wO16fKWVP5J1Qz42kV9jcnMVFrEE/noXb/ss3Q4pZIH79kxofzyNNtUNA==}
- engines: {node: '>=12'}
- dependencies:
- bplist-parser: 0.2.0
- untildify: 4.0.0
- dev: true
-
- /default-browser@4.0.0:
- resolution: {integrity: sha512-wX5pXO1+BrhMkSbROFsyxUm0i/cJEScyNhA4PPxc41ICuv05ZZB/MX28s8aZx6xjmatvebIapF6hLEKEcpneUA==}
- engines: {node: '>=14.16'}
- dependencies:
- bundle-name: 3.0.0
- default-browser-id: 3.0.0
- execa: 7.2.0
- titleize: 3.0.0
- dev: true
-
- /default-gateway@6.0.3:
- resolution: {integrity: sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==}
- engines: {node: '>= 10'}
- dependencies:
- execa: 5.1.1
- dev: true
-
- /defaults@1.0.4:
- resolution: {integrity: sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==}
- dependencies:
- clone: 1.0.4
- dev: true
-
- /defer-to-connect@2.0.1:
- resolution: {integrity: sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==}
- engines: {node: '>=10'}
- dev: false
-
- /define-data-property@1.1.0:
- resolution: {integrity: sha512-UzGwzcjyv3OtAvolTj1GoyNYzfFR+iqbGjcnBEENZVCpM4/Ng1yhGNvS3lR/xDS74Tb2wGG9WzNSNIOS9UVb2g==}
- engines: {node: '>= 0.4'}
- dependencies:
- get-intrinsic: 1.2.1
- gopd: 1.0.1
- has-property-descriptors: 1.0.0
- dev: true
-
- /define-lazy-prop@2.0.0:
- resolution: {integrity: sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==}
- engines: {node: '>=8'}
- dev: true
-
- /define-lazy-prop@3.0.0:
- resolution: {integrity: sha512-N+MeXYoqr3pOgn8xfyRPREN7gHakLYjhsHhWGT3fWAiL4IkAt0iDw14QiiEm2bE30c5XX5q0FtAA3CK5f9/BUg==}
- engines: {node: '>=12'}
- dev: true
-
- /define-properties@1.2.1:
- resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==}
- engines: {node: '>= 0.4'}
- dependencies:
- define-data-property: 1.1.0
- has-property-descriptors: 1.0.0
- object-keys: 1.1.1
- dev: true
-
- /define-property@0.2.5:
- resolution: {integrity: sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==}
- engines: {node: '>=0.10.0'}
- dependencies:
- is-descriptor: 0.1.6
- dev: true
-
- /define-property@1.0.0:
- resolution: {integrity: sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==}
- engines: {node: '>=0.10.0'}
- dependencies:
- is-descriptor: 1.0.2
- dev: true
-
- /define-property@2.0.2:
- resolution: {integrity: sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==}
- engines: {node: '>=0.10.0'}
- dependencies:
- is-descriptor: 1.0.2
- isobject: 3.0.1
- dev: true
-
- /del@4.1.1:
- resolution: {integrity: sha512-QwGuEUouP2kVwQenAsOof5Fv8K9t3D8Ca8NxcXKrIpEHjTXK5J2nXLdP+ALI1cgv8wj7KuwBhTwBkOZSJKM5XQ==}
- engines: {node: '>=6'}
- dependencies:
- '@types/glob': 7.2.0
- globby: 6.1.0
- is-path-cwd: 2.2.0
- is-path-in-cwd: 2.1.0
- p-map: 2.1.0
- pify: 4.0.1
- rimraf: 2.7.1
- dev: true
-
- /delayed-stream@1.0.0:
- resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==}
- engines: {node: '>=0.4.0'}
- dev: true
-
- /delegates@1.0.0:
- resolution: {integrity: sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==}
- dev: false
-
- /depd@1.1.2:
- resolution: {integrity: sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==}
- engines: {node: '>= 0.6'}
- dev: true
-
- /depd@2.0.0:
- resolution: {integrity: sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==}
- engines: {node: '>= 0.8'}
-
- /destroy@1.2.0:
- resolution: {integrity: sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==}
- engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16}
-
- /detect-indent@6.1.0:
- resolution: {integrity: sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==}
- engines: {node: '>=8'}
- dev: true
-
- /detect-libc@2.0.2:
- resolution: {integrity: sha512-UX6sGumvvqSaXgdKGUsgZWqcUyIXZ/vZTrlRT/iobiKhGL0zL4d3osHj3uqllWJK+i+sixDS/3COVEOFbupFyw==}
- engines: {node: '>=8'}
- dev: false
-
- /detect-node@2.1.0:
- resolution: {integrity: sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==}
- dev: true
-
- /dezalgo@1.0.4:
- resolution: {integrity: sha512-rXSP0bf+5n0Qonsb+SVVfNfIsimO4HEtmnIpPHY8Q1UCzKlQrDMfdobr8nJOOsRgWCyMRqeSBQzmWUMq7zvVig==}
- dependencies:
- asap: 2.0.6
- wrappy: 1.0.2
- dev: true
-
- /diff-sequences@25.2.6:
- resolution: {integrity: sha512-Hq8o7+6GaZeoFjtpgvRBUknSXNeJiCx7V9Fr94ZMljNiCr9n9L8H8aJqgWOQiDDGdyn29fRNcDdRVJ5fdyihfg==}
- engines: {node: '>= 8.3'}
- dev: true
-
- /diff-sequences@29.6.3:
- resolution: {integrity: sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==}
- engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
- dev: true
-
- /dir-glob@2.2.2:
- resolution: {integrity: sha512-f9LBi5QWzIW3I6e//uxZoLBlUt9kcp66qo0sSCxL6YZKc75R1c4MFCoe/LaZiBGmgujvQdxc5Bn3QhfyvK5Hsw==}
- engines: {node: '>=4'}
- dependencies:
- path-type: 3.0.0
- dev: true
-
- /dir-glob@3.0.1:
- resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==}
- engines: {node: '>=8'}
- dependencies:
- path-type: 4.0.0
- dev: true
-
- /dns-equal@1.0.0:
- resolution: {integrity: sha512-z+paD6YUQsk+AbGCEM4PrOXSss5gd66QfcVBFTKR/HpFL9jCqikS94HYwKww6fQyO7IxrIIyUu+g0Ka9tUS2Cg==}
- dev: true
-
- /dns-packet@5.6.1:
- resolution: {integrity: sha512-l4gcSouhcgIKRvyy99RNVOgxXiicE+2jZoNmaNmZ6JXiGajBOJAesk1OBlJuM5k2c+eudGdLxDqXuPCKIj6kpw==}
- engines: {node: '>=6'}
- dependencies:
- '@leichtgewicht/ip-codec': 2.0.4
- dev: true
-
- /doctrine@2.1.0:
- resolution: {integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==}
- engines: {node: '>=0.10.0'}
- dependencies:
- esutils: 2.0.3
- dev: true
-
- /doctrine@3.0.0:
- resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==}
- engines: {node: '>=6.0.0'}
- dependencies:
- esutils: 2.0.3
- dev: true
-
- /dom-converter@0.2.0:
- resolution: {integrity: sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA==}
- dependencies:
- utila: 0.4.0
- dev: true
-
- /dom-serializer@1.4.1:
- resolution: {integrity: sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==}
- dependencies:
- domelementtype: 2.3.0
- domhandler: 4.3.1
- entities: 2.2.0
- dev: true
-
- /dom-serializer@2.0.0:
- resolution: {integrity: sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==}
- dependencies:
- domelementtype: 2.3.0
- domhandler: 5.0.3
- entities: 4.5.0
- dev: true
-
- /domelementtype@2.3.0:
- resolution: {integrity: sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==}
- dev: true
-
- /domhandler@4.3.1:
- resolution: {integrity: sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==}
- engines: {node: '>= 4'}
- dependencies:
- domelementtype: 2.3.0
- dev: true
-
- /domhandler@5.0.3:
- resolution: {integrity: sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==}
- engines: {node: '>= 4'}
- dependencies:
- domelementtype: 2.3.0
- dev: true
-
- /domutils@2.8.0:
- resolution: {integrity: sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==}
- dependencies:
- dom-serializer: 1.4.1
- domelementtype: 2.3.0
- domhandler: 4.3.1
- dev: true
-
- /domutils@3.1.0:
- resolution: {integrity: sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==}
- dependencies:
- dom-serializer: 2.0.0
- domelementtype: 2.3.0
- domhandler: 5.0.3
- dev: true
-
- /dot-case@3.0.4:
- resolution: {integrity: sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==}
- dependencies:
- no-case: 3.0.4
- tslib: 2.6.2
-
- /dotenv@16.3.1:
- resolution: {integrity: sha512-IPzF4w4/Rd94bA9imS68tZBaYyBWSCE47V1RGuMrB94iyTOIEwRmVL2x/4An+6mETpLrKJ5hQkB8W4kFAadeIQ==}
- engines: {node: '>=12'}
-
- /edge-error@2.0.8:
- resolution: {integrity: sha512-ORKH7rn/LEfgo0qrgoMMwFPfestNFvTO+dRLDmS+zgulhd9BVXfv/p+V6K3OyEeu2L0ysYp/71uHB31GIDe68A==}
- dev: false
-
- /edge-error@3.0.0:
- resolution: {integrity: sha512-TJE2A6KFqBMIe3EPyl/5V8veGYcMfpEtSNKfZkrSkQAyz3kh27etQ2erU6o0lkAFqDjjUl11YVzBIO2ij5/Zhw==}
- dev: false
-
- /edge-lexer@5.0.2:
- resolution: {integrity: sha512-MSpv6JRPD96eZl0uPo8gIvE9cPAXb1eNRfZKlQpFYJ2O8cNdZDpN8RvT2zpu4XqC63HWs/c938qc3dWN+GJhFw==}
- dependencies:
- edge-error: 3.0.0
- dev: false
-
- /edge-parser@8.2.2:
- resolution: {integrity: sha512-48iOLaOD4PAxIU0jnLRNXUL8G6ktO79bA4adOGXzNHg2M+mHfudFI7QPdF6IO8gW0NC1N0TPvwLWK3FVkE9bLQ==}
- dependencies:
- acorn: 8.10.0
- astring: 1.8.6
- edge-error: 3.0.0
- edge-lexer: 5.0.2
- js-stringify: 1.0.2
- dev: false
-
- /edge-supercharged@3.1.1:
- resolution: {integrity: sha512-Pxgst3UeR+0PWuTIG2QHuFgFe73TMoVMphRsa/bOmIvOkQ87cD7+VxiS9ph2KbA4djJ2ChbdgtbNiIvju5yXEw==}
- dependencies:
- '@poppinss/utils': 3.3.1
- slash: 3.0.0
- dev: false
-
- /edge.js@5.5.1:
- resolution: {integrity: sha512-lAhEdj1tW2VOJsP5X38wSHjjaXXwoteZ+8PDAJ50rAKzBxpw4QsdXK2jVzMFgRoTMUf7C+x+Tp51R9yxGTLO0w==}
- dependencies:
- '@poppinss/inspect': 1.0.1
- '@poppinss/utils': 5.0.0
- edge-error: 3.0.0
- edge-lexer: 5.0.2
- edge-parser: 8.2.2
- js-stringify: 1.0.2
- macroable: 7.0.2
- stringify-attributes: 2.0.0
- dev: false
-
- /editorconfig@0.15.3:
- resolution: {integrity: sha512-M9wIMFx96vq0R4F+gRpY3o2exzb8hEj/n9S8unZtHSvYjibBp/iMufSzvmOcV/laG0ZtuTVGtiJggPOSW2r93g==}
- hasBin: true
- dependencies:
- commander: 2.20.3
- lru-cache: 4.1.5
- semver: 5.7.2
- sigmund: 1.0.1
- dev: true
-
- /ee-first@1.1.1:
- resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==}
-
- /electron-to-chromium@1.4.537:
- resolution: {integrity: sha512-W1+g9qs9hviII0HAwOdehGYkr+zt7KKdmCcJcjH0mYg6oL8+ioT3Skjmt7BLoAQqXhjf40AXd+HlR4oAWMlXjA==}
- dev: true
-
- /emittery@0.10.2:
- resolution: {integrity: sha512-aITqOwnLanpHLNXZJENbOgjUBeHocD+xsSJmNrjovKBW5HbSpW3d1pEls7GFQPUWXiwG9+0P4GtHfEqC/4M0Iw==}
- engines: {node: '>=12'}
-
- /emittery@0.13.1:
- resolution: {integrity: sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==}
- engines: {node: '>=12'}
- dev: true
-
- /emoji-regex@8.0.0:
- resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==}
-
- /emojis-list@3.0.0:
- resolution: {integrity: sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==}
- engines: {node: '>= 4'}
- dev: true
-
- /encodeurl@1.0.2:
- resolution: {integrity: sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==}
- engines: {node: '>= 0.8'}
-
- /encoding@0.1.13:
- resolution: {integrity: sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==}
- requiresBuild: true
- dependencies:
- iconv-lite: 0.6.3
- dev: false
- optional: true
-
- /end-of-stream@1.4.4:
- resolution: {integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==}
- dependencies:
- once: 1.4.0
-
- /enhanced-resolve@5.15.0:
- resolution: {integrity: sha512-LXYT42KJ7lpIKECr2mAXIaMldcNCh/7E0KBKOu4KSfkHmP+mZmSs+8V5gBAqisWBy0OO4W5Oyys0GO1Y8KtdKg==}
- engines: {node: '>=10.13.0'}
- dependencies:
- graceful-fs: 4.2.11
- tapable: 2.2.1
- dev: true
-
- /enquirer@2.4.1:
- resolution: {integrity: sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==}
- engines: {node: '>=8.6'}
- dependencies:
- ansi-colors: 4.1.3
- strip-ansi: 6.0.1
-
- /entities@2.2.0:
- resolution: {integrity: sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==}
- dev: true
-
- /entities@4.5.0:
- resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==}
- engines: {node: '>=0.12'}
- dev: true
-
- /env-paths@2.2.1:
- resolution: {integrity: sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==}
- engines: {node: '>=6'}
- requiresBuild: true
- dev: false
- optional: true
-
- /envinfo@7.10.0:
- resolution: {integrity: sha512-ZtUjZO6l5mwTHvc1L9+1q5p/R3wTopcfqMW8r5t8SJSKqeVI/LtajORwRFEKpEFuekjD0VBjwu1HMxL4UalIRw==}
- engines: {node: '>=4'}
- hasBin: true
- dev: true
-
- /err-code@2.0.3:
- resolution: {integrity: sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==}
- requiresBuild: true
- dev: false
- optional: true
-
- /error-ex@1.3.2:
- resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==}
- dependencies:
- is-arrayish: 0.2.1
- dev: true
-
- /error-stack-parser@2.1.4:
- resolution: {integrity: sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ==}
- dependencies:
- stackframe: 1.3.4
- dev: true
-
- /es-abstract@1.22.2:
- resolution: {integrity: sha512-YoxfFcDmhjOgWPWsV13+2RNjq1F6UQnfs+8TftwNqtzlmFzEXvlUwdrNrYeaizfjQzRMxkZ6ElWMOJIFKdVqwA==}
- engines: {node: '>= 0.4'}
- dependencies:
- array-buffer-byte-length: 1.0.0
- arraybuffer.prototype.slice: 1.0.2
- available-typed-arrays: 1.0.5
- call-bind: 1.0.2
- es-set-tostringtag: 2.0.1
- es-to-primitive: 1.2.1
- function.prototype.name: 1.1.6
- get-intrinsic: 1.2.1
- get-symbol-description: 1.0.0
- globalthis: 1.0.3
- gopd: 1.0.1
- has: 1.0.3
- has-property-descriptors: 1.0.0
- has-proto: 1.0.1
- has-symbols: 1.0.3
- internal-slot: 1.0.5
- is-array-buffer: 3.0.2
- is-callable: 1.2.7
- is-negative-zero: 2.0.2
- is-regex: 1.1.4
- is-shared-array-buffer: 1.0.2
- is-string: 1.0.7
- is-typed-array: 1.1.12
- is-weakref: 1.0.2
- object-inspect: 1.12.3
- object-keys: 1.1.1
- object.assign: 4.1.4
- regexp.prototype.flags: 1.5.1
- safe-array-concat: 1.0.1
- safe-regex-test: 1.0.0
- string.prototype.trim: 1.2.8
- string.prototype.trimend: 1.0.7
- string.prototype.trimstart: 1.0.7
- typed-array-buffer: 1.0.0
- typed-array-byte-length: 1.0.0
- typed-array-byte-offset: 1.0.0
- typed-array-length: 1.0.4
- unbox-primitive: 1.0.2
- which-typed-array: 1.1.11
- dev: true
-
- /es-module-lexer@0.3.26:
- resolution: {integrity: sha512-Va0Q/xqtrss45hWzP8CZJwzGSZJjDM5/MJRE3IXXnUCcVLElR9BRaE9F62BopysASyc4nM3uwhSW7FFB9nlWAA==}
- dev: false
-
- /es-module-lexer@1.3.1:
- resolution: {integrity: sha512-JUFAyicQV9mXc3YRxPnDlrfBKpqt6hUYzz9/boprUJHs4e4KVr3XwOF70doO6gwXUor6EWZJAyWAfKki84t20Q==}
- dev: true
-
- /es-set-tostringtag@2.0.1:
- resolution: {integrity: sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==}
- engines: {node: '>= 0.4'}
- dependencies:
- get-intrinsic: 1.2.1
- has: 1.0.3
- has-tostringtag: 1.0.0
- dev: true
-
- /es-shim-unscopables@1.0.0:
- resolution: {integrity: sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==}
- dependencies:
- has: 1.0.3
- dev: true
-
- /es-to-primitive@1.2.1:
- resolution: {integrity: sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==}
- engines: {node: '>= 0.4'}
- dependencies:
- is-callable: 1.2.7
- is-date-object: 1.0.5
- is-symbol: 1.0.4
- dev: true
-
- /escalade@3.1.1:
- resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==}
- engines: {node: '>=6'}
-
- /escape-goat@2.1.1:
- resolution: {integrity: sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q==}
- engines: {node: '>=8'}
-
- /escape-html@1.0.3:
- resolution: {integrity: sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==}
-
- /escape-string-regexp@1.0.5:
- resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==}
- engines: {node: '>=0.8.0'}
- dev: true
-
- /escape-string-regexp@4.0.0:
- resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==}
- engines: {node: '>=10'}
- dev: true
-
- /eslint-config-prettier@8.9.0(eslint@8.46.0):
- resolution: {integrity: sha512-+sbni7NfVXnOpnRadUA8S28AUlsZt9GjgFvABIRL9Hkn8KqNzOp+7Lw4QWtrwn20KzU3wqu1QoOj2m+7rKRqkA==}
- hasBin: true
- peerDependencies:
- eslint: '>=7.0.0'
- dependencies:
- eslint: 8.46.0
- dev: true
-
- /eslint-import-resolver-node@0.3.9:
- resolution: {integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==}
- dependencies:
- debug: 3.2.7
- is-core-module: 2.13.0
- resolve: 1.22.6
- transitivePeerDependencies:
- - supports-color
- dev: true
-
- /eslint-module-utils@2.8.0(@typescript-eslint/parser@6.2.0)(eslint-import-resolver-node@0.3.9)(eslint@8.46.0):
- resolution: {integrity: sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==}
- engines: {node: '>=4'}
- peerDependencies:
- '@typescript-eslint/parser': '*'
- eslint: '*'
- eslint-import-resolver-node: '*'
- eslint-import-resolver-typescript: '*'
- eslint-import-resolver-webpack: '*'
- peerDependenciesMeta:
- '@typescript-eslint/parser':
- optional: true
- eslint:
- optional: true
- eslint-import-resolver-node:
- optional: true
- eslint-import-resolver-typescript:
- optional: true
- eslint-import-resolver-webpack:
- optional: true
- dependencies:
- '@typescript-eslint/parser': 6.2.0(eslint@8.46.0)(typescript@5.1.6)
- debug: 3.2.7
- eslint: 8.46.0
- eslint-import-resolver-node: 0.3.9
- transitivePeerDependencies:
- - supports-color
- dev: true
-
- /eslint-plugin-adonis@2.1.1(eslint@8.46.0)(typescript@5.1.6):
- resolution: {integrity: sha512-iC3eZXofK4q+KOGypiquT74amCpeqW+5K5WZ7pezUvrXgmFkZMn7MSQjAg44KVzq6pQdXFuRNlnS+ijcwx0AMw==}
- engines: {node: '>=10.0.0'}
- peerDependencies:
- eslint: ^8.0.0
- dependencies:
- '@typescript-eslint/eslint-plugin': 5.62.0(@typescript-eslint/parser@5.62.0)(eslint@8.46.0)(typescript@5.1.6)
- '@typescript-eslint/parser': 5.62.0(eslint@8.46.0)(typescript@5.1.6)
- eslint: 8.46.0
- transitivePeerDependencies:
- - supports-color
- - typescript
- dev: true
-
- /eslint-plugin-import@2.28.0(@typescript-eslint/parser@6.2.0)(eslint@8.46.0):
- resolution: {integrity: sha512-B8s/n+ZluN7sxj9eUf7/pRFERX0r5bnFA2dCaLHy2ZeaQEAz0k+ZZkFWRFHJAqxfxQDx6KLv9LeIki7cFdwW+Q==}
- engines: {node: '>=4'}
- peerDependencies:
- '@typescript-eslint/parser': '*'
- eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8
- peerDependenciesMeta:
- '@typescript-eslint/parser':
- optional: true
- dependencies:
- '@typescript-eslint/parser': 6.2.0(eslint@8.46.0)(typescript@5.1.6)
- array-includes: 3.1.7
- array.prototype.findlastindex: 1.2.3
- array.prototype.flat: 1.3.2
- array.prototype.flatmap: 1.3.2
- debug: 3.2.7
- doctrine: 2.1.0
- eslint: 8.46.0
- eslint-import-resolver-node: 0.3.9
- eslint-module-utils: 2.8.0(@typescript-eslint/parser@6.2.0)(eslint-import-resolver-node@0.3.9)(eslint@8.46.0)
- has: 1.0.3
- is-core-module: 2.13.0
- is-glob: 4.0.3
- minimatch: 3.1.2
- object.fromentries: 2.0.7
- object.groupby: 1.0.1
- object.values: 1.1.7
- resolve: 1.22.6
- semver: 6.3.1
- tsconfig-paths: 3.14.2
- transitivePeerDependencies:
- - eslint-import-resolver-typescript
- - eslint-import-resolver-webpack
- - supports-color
- dev: true
-
- /eslint-plugin-prettier@5.0.0(eslint-config-prettier@8.9.0)(eslint@8.46.0)(prettier@3.0.0):
- resolution: {integrity: sha512-AgaZCVuYDXHUGxj/ZGu1u8H8CYgDY3iG6w5kUFw4AzMVXzB7VvbKgYR4nATIN+OvUrghMbiDLeimVjVY5ilq3w==}
- engines: {node: ^14.18.0 || >=16.0.0}
- peerDependencies:
- '@types/eslint': '>=8.0.0'
- eslint: '>=8.0.0'
- eslint-config-prettier: '*'
- prettier: '>=3.0.0'
- peerDependenciesMeta:
- '@types/eslint':
- optional: true
- eslint-config-prettier:
- optional: true
- dependencies:
- eslint: 8.46.0
- eslint-config-prettier: 8.9.0(eslint@8.46.0)
- prettier: 3.0.0
- prettier-linter-helpers: 1.0.0
- synckit: 0.8.5
- dev: true
-
- /eslint-plugin-unicorn@48.0.1(eslint@8.46.0):
- resolution: {integrity: sha512-FW+4r20myG/DqFcCSzoumaddKBicIPeFnTrifon2mWIzlfyvzwyqZjqVP7m4Cqr/ZYisS2aiLghkUWaPg6vtCw==}
- engines: {node: '>=16'}
- peerDependencies:
- eslint: '>=8.44.0'
- dependencies:
- '@babel/helper-validator-identifier': 7.22.20
- '@eslint-community/eslint-utils': 4.4.0(eslint@8.46.0)
- ci-info: 3.8.0
- clean-regexp: 1.0.0
- eslint: 8.46.0
- esquery: 1.5.0
- indent-string: 4.0.0
- is-builtin-module: 3.2.1
- jsesc: 3.0.2
- lodash: 4.17.21
- pluralize: 8.0.0
- read-pkg-up: 7.0.1
- regexp-tree: 0.1.27
- regjsparser: 0.10.0
- semver: 7.5.4
- strip-indent: 3.0.0
- dev: true
-
- /eslint-scope@5.1.1:
- resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==}
- engines: {node: '>=8.0.0'}
- dependencies:
- esrecurse: 4.3.0
- estraverse: 4.3.0
- dev: true
-
- /eslint-scope@7.2.2:
- resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
- dependencies:
- esrecurse: 4.3.0
- estraverse: 5.3.0
- dev: true
-
- /eslint-visitor-keys@3.4.3:
- resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
- dev: true
-
- /eslint@8.46.0:
- resolution: {integrity: sha512-cIO74PvbW0qU8e0mIvk5IV3ToWdCq5FYG6gWPHHkx6gNdjlbAYvtfHmlCMXxjcoVaIdwy/IAt3+mDkZkfvb2Dg==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
- hasBin: true
- dependencies:
- '@eslint-community/eslint-utils': 4.4.0(eslint@8.46.0)
- '@eslint-community/regexpp': 4.9.0
- '@eslint/eslintrc': 2.1.2
- '@eslint/js': 8.50.0
- '@humanwhocodes/config-array': 0.11.11
- '@humanwhocodes/module-importer': 1.0.1
- '@nodelib/fs.walk': 1.2.8
- ajv: 6.12.6
- chalk: 4.1.2
- cross-spawn: 7.0.3
- debug: 4.3.4
- doctrine: 3.0.0
- escape-string-regexp: 4.0.0
- eslint-scope: 7.2.2
- eslint-visitor-keys: 3.4.3
- espree: 9.6.1
- esquery: 1.5.0
- esutils: 2.0.3
- fast-deep-equal: 3.1.3
- file-entry-cache: 6.0.1
- find-up: 5.0.0
- glob-parent: 6.0.2
- globals: 13.22.0
- graphemer: 1.4.0
- ignore: 5.2.4
- imurmurhash: 0.1.4
- is-glob: 4.0.3
- is-path-inside: 3.0.3
- js-yaml: 4.1.0
- json-stable-stringify-without-jsonify: 1.0.1
- levn: 0.4.1
- lodash.merge: 4.6.2
- minimatch: 3.1.2
- natural-compare: 1.4.0
- optionator: 0.9.3
- strip-ansi: 6.0.1
- text-table: 0.2.0
- transitivePeerDependencies:
- - supports-color
- dev: true
-
- /esm@3.2.25:
- resolution: {integrity: sha512-U1suiZ2oDVWv4zPO56S0NcR5QriEahGtdN2OR6FiOG4WJvcjBVFB0qI4+eKoWFH483PKGuLuu6V8Z4T5g63UVA==}
- engines: {node: '>=6'}
- dev: false
-
- /espree@9.6.1:
- resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
- dependencies:
- acorn: 8.10.0
- acorn-jsx: 5.3.2(acorn@8.10.0)
- eslint-visitor-keys: 3.4.3
- dev: true
-
- /esprima@4.0.1:
- resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==}
- engines: {node: '>=4'}
- hasBin: true
- dev: true
-
- /esquery@1.5.0:
- resolution: {integrity: sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==}
- engines: {node: '>=0.10'}
- dependencies:
- estraverse: 5.3.0
- dev: true
-
- /esrecurse@4.3.0:
- resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==}
- engines: {node: '>=4.0'}
- dependencies:
- estraverse: 5.3.0
- dev: true
-
- /estraverse@4.3.0:
- resolution: {integrity: sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==}
- engines: {node: '>=4.0'}
- dev: true
-
- /estraverse@5.3.0:
- resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==}
- engines: {node: '>=4.0'}
- dev: true
-
- /esutils@2.0.3:
- resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==}
- engines: {node: '>=0.10.0'}
- dev: true
-
- /etag@1.8.1:
- resolution: {integrity: sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==}
- engines: {node: '>= 0.6'}
-
- /event-target-shim@5.0.1:
- resolution: {integrity: sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==}
- engines: {node: '>=6'}
-
- /eventemitter3@4.0.7:
- resolution: {integrity: sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==}
- dev: true
-
- /events@1.1.1:
- resolution: {integrity: sha512-kEcvvCBByWXGnZy6JUlgAp2gBIUjfCAV6P6TgT1/aaQKcmuAEC4OZTV1I4EWQLz2gxZw76atuVyvHhTxvi0Flw==}
- engines: {node: '>=0.4.x'}
- dev: false
-
- /events@3.3.0:
- resolution: {integrity: sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==}
- engines: {node: '>=0.8.x'}
-
- /execa@5.1.1:
- resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==}
- engines: {node: '>=10'}
- dependencies:
- cross-spawn: 7.0.3
- get-stream: 6.0.1
- human-signals: 2.1.0
- is-stream: 2.0.1
- merge-stream: 2.0.0
- npm-run-path: 4.0.1
- onetime: 5.1.2
- signal-exit: 3.0.7
- strip-final-newline: 2.0.0
- dev: true
-
- /execa@7.2.0:
- resolution: {integrity: sha512-UduyVP7TLB5IcAQl+OzLyLcS/l32W/GLg+AhHJ+ow40FOk2U3SAllPwR44v4vmdFwIWqpdwxxpQbF1n5ta9seA==}
- engines: {node: ^14.18.0 || ^16.14.0 || >=18.0.0}
- dependencies:
- cross-spawn: 7.0.3
- get-stream: 6.0.1
- human-signals: 4.3.1
- is-stream: 3.0.0
- merge-stream: 2.0.0
- npm-run-path: 5.1.0
- onetime: 6.0.0
- signal-exit: 3.0.7
- strip-final-newline: 3.0.0
- dev: true
-
- /expand-brackets@2.1.4:
- resolution: {integrity: sha512-w/ozOKR9Obk3qoWeY/WDi6MFta9AoMR+zud60mdnbniMcBxRuFJyDt2LdX/14A1UABeqk+Uk+LDfUpvoGKppZA==}
- engines: {node: '>=0.10.0'}
- dependencies:
- debug: 2.6.9
- define-property: 0.2.5
- extend-shallow: 2.0.1
- posix-character-classes: 0.1.1
- regex-not: 1.0.2
- snapdragon: 0.8.2
- to-regex: 3.0.2
- transitivePeerDependencies:
- - supports-color
- dev: true
-
- /express@4.18.2:
- resolution: {integrity: sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==}
- engines: {node: '>= 0.10.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.5
- 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
- transitivePeerDependencies:
- - supports-color
- dev: true
-
- /extend-shallow@2.0.1:
- resolution: {integrity: sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==}
- engines: {node: '>=0.10.0'}
- dependencies:
- is-extendable: 0.1.1
- dev: true
-
- /extend-shallow@3.0.2:
- resolution: {integrity: sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==}
- engines: {node: '>=0.10.0'}
- dependencies:
- assign-symbols: 1.0.0
- is-extendable: 1.0.1
- dev: true
-
- /extend@3.0.2:
- resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==}
- dev: true
-
- /extglob@2.0.4:
- resolution: {integrity: sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==}
- engines: {node: '>=0.10.0'}
- dependencies:
- array-unique: 0.3.2
- define-property: 1.0.0
- expand-brackets: 2.1.4
- extend-shallow: 2.0.1
- fragment-cache: 0.2.1
- regex-not: 1.0.2
- snapdragon: 0.8.2
- to-regex: 3.0.2
- transitivePeerDependencies:
- - supports-color
- dev: true
-
- /fast-copy@3.0.1:
- resolution: {integrity: sha512-Knr7NOtK3HWRYGtHoJrjkaWepqT8thIVGAwt0p0aUs1zqkAzXZV4vo9fFNwyb5fcqK1GKYFYxldQdIDVKhUAfA==}
-
- /fast-deep-equal@3.1.3:
- resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==}
-
- /fast-diff@1.3.0:
- resolution: {integrity: sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==}
- dev: true
-
- /fast-glob@2.2.7:
- resolution: {integrity: sha512-g1KuQwHOZAmOZMuBtHdxDtju+T2RT8jgCC9aANsbpdiDDTSnjgfuVsIBNKbUeJI3oKMRExcfNDtJl4OhbffMsw==}
- engines: {node: '>=4.0.0'}
- dependencies:
- '@mrmlnc/readdir-enhanced': 2.2.1
- '@nodelib/fs.stat': 1.1.3
- glob-parent: 3.1.0
- is-glob: 4.0.3
- merge2: 1.4.1
- micromatch: 3.1.10
- transitivePeerDependencies:
- - supports-color
- dev: true
-
- /fast-glob@3.3.1:
- resolution: {integrity: sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==}
- engines: {node: '>=8.6.0'}
- dependencies:
- '@nodelib/fs.stat': 2.0.5
- '@nodelib/fs.walk': 1.2.8
- glob-parent: 5.1.2
- merge2: 1.4.1
- micromatch: 4.0.5
-
- /fast-json-stable-stringify@2.1.0:
- resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==}
- dev: true
-
- /fast-levenshtein@2.0.6:
- resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==}
- dev: true
-
- /fast-levenshtein@3.0.0:
- resolution: {integrity: sha512-hKKNajm46uNmTlhHSyZkmToAc56uZJwYq7yrciZjqOxnlfQwERDQJmHPUp7m1m9wx8vgOe8IaCKZ5Kv2k1DdCQ==}
- dependencies:
- fastest-levenshtein: 1.0.16
- dev: true
-
- /fast-redact@3.3.0:
- resolution: {integrity: sha512-6T5V1QK1u4oF+ATxs1lWUmlEk6P2T9HqJG3e2DnHOdVgZy2rFJBoEnrIedcTXlkAHU/zKC+7KETJ+KGGKwxgMQ==}
- engines: {node: '>=6'}
-
- /fast-safe-stringify@2.1.1:
- resolution: {integrity: sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==}
-
- /fastest-levenshtein@1.0.16:
- resolution: {integrity: sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==}
- engines: {node: '>= 4.9.1'}
- dev: true
-
- /fastq@1.15.0:
- resolution: {integrity: sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==}
- dependencies:
- reusify: 1.0.4
-
- /faye-websocket@0.11.4:
- resolution: {integrity: sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==}
- engines: {node: '>=0.8.0'}
- dependencies:
- websocket-driver: 0.7.4
- dev: true
-
- /file-entry-cache@6.0.1:
- resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==}
- engines: {node: ^10.12.0 || >=12.0.0}
- dependencies:
- flat-cache: 3.1.0
- dev: true
-
- /file-type@12.4.2:
- resolution: {integrity: sha512-UssQP5ZgIOKelfsaB5CuGAL+Y+q7EmONuiwF3N5HAH0t27rvrttgi6Ra9k/+DVaY9UF6+ybxu5pOXLUdA8N7Vg==}
- engines: {node: '>=8'}
- dev: false
-
- /file-type@16.5.4:
- resolution: {integrity: sha512-/yFHK0aGjFEgDJjEKP0pWCplsPFPhwyfwevf/pVxiN0tmE4L9LmwWxWukdJSHdoCli4VgQLehjJtwQBnqmsKcw==}
- engines: {node: '>=10'}
- dependencies:
- readable-web-to-node-stream: 3.0.2
- strtok3: 6.3.0
- token-types: 4.2.1
-
- /fill-range@4.0.0:
- resolution: {integrity: sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ==}
- engines: {node: '>=0.10.0'}
- dependencies:
- extend-shallow: 2.0.1
- is-number: 3.0.0
- repeat-string: 1.6.1
- to-regex-range: 2.1.1
- dev: true
-
- /fill-range@7.0.1:
- resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==}
- engines: {node: '>=8'}
- dependencies:
- to-regex-range: 5.0.1
-
- /finalhandler@1.2.0:
- resolution: {integrity: sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==}
- engines: {node: '>= 0.8'}
- 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
- transitivePeerDependencies:
- - supports-color
- dev: true
-
- /find-cache-dir@3.3.2:
- resolution: {integrity: sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==}
- engines: {node: '>=8'}
- dependencies:
- commondir: 1.0.1
- make-dir: 3.1.0
- pkg-dir: 4.2.0
- dev: true
-
- /find-up@3.0.0:
- resolution: {integrity: sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==}
- engines: {node: '>=6'}
- dependencies:
- locate-path: 3.0.0
- dev: true
-
- /find-up@4.1.0:
- resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==}
- engines: {node: '>=8'}
- dependencies:
- locate-path: 5.0.0
- path-exists: 4.0.0
- dev: true
-
- /find-up@5.0.0:
- resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==}
- engines: {node: '>=10'}
- dependencies:
- locate-path: 6.0.0
- path-exists: 4.0.0
- dev: true
-
- /flat-cache@3.1.0:
- resolution: {integrity: sha512-OHx4Qwrrt0E4jEIcI5/Xb+f+QmJYNj2rrK8wiIdQOIrB9WrrJL8cjZvXdXuBTkkEwEqLycb5BeZDV1o2i9bTew==}
- engines: {node: '>=12.0.0'}
- dependencies:
- flatted: 3.2.9
- keyv: 4.5.3
- rimraf: 3.0.2
- dev: true
-
- /flatstr@1.0.12:
- resolution: {integrity: sha512-4zPxDyhCyiN2wIAtSLI6gc82/EjqZc1onI4Mz/l0pWrAlsSfYH/2ZIcU+e3oA2wDwbzIWNKwa23F8rh6+DRWkw==}
-
- /flatted@3.2.9:
- resolution: {integrity: sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==}
- dev: true
-
- /flattie@1.1.0:
- resolution: {integrity: sha512-xU99gDEnciIwJdGcBmNHnzTJ/w5AT+VFJOu6sTB6WM8diOYNA3Sa+K1DiEBQ7XH4QikQq3iFW1U+jRVcotQnBw==}
- engines: {node: '>=8'}
-
- /follow-redirects@1.15.3:
- resolution: {integrity: sha512-1VzOtuEM8pC9SFU1E+8KfTjZyMztRsgEfwQl44z8A25uy13jSzTj6dyK2Df52iV0vgHCfBwLhDWevLn95w5v6Q==}
- engines: {node: '>=4.0'}
- peerDependencies:
- debug: '*'
- peerDependenciesMeta:
- debug:
- optional: true
- dev: true
-
- /for-each@0.3.3:
- resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==}
- dependencies:
- is-callable: 1.2.7
-
- /for-in@1.0.2:
- resolution: {integrity: sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ==}
- engines: {node: '>=0.10.0'}
- dev: true
-
- /form-data@3.0.1:
- resolution: {integrity: sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==}
- engines: {node: '>= 6'}
- dependencies:
- asynckit: 0.4.0
- combined-stream: 1.0.8
- mime-types: 2.1.35
- dev: true
-
- /form-data@4.0.0:
- resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==}
- engines: {node: '>= 6'}
- dependencies:
- asynckit: 0.4.0
- combined-stream: 1.0.8
- mime-types: 2.1.35
- dev: true
-
- /formidable@2.1.2:
- resolution: {integrity: sha512-CM3GuJ57US06mlpQ47YcunuUZ9jpm8Vx+P2CGt2j7HpgkKZO/DJYQ0Bobim8G6PFQmK5lOqOOdUXboU+h73A4g==}
- dependencies:
- dezalgo: 1.0.4
- hexoid: 1.0.0
- once: 1.4.0
- qs: 6.11.2
- dev: true
-
- /forwarded@0.2.0:
- resolution: {integrity: sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==}
- engines: {node: '>= 0.6'}
-
- /fragment-cache@0.2.1:
- resolution: {integrity: sha512-GMBAbW9antB8iZRHLoGw0b3HANt57diZYFO/HL1JGIC1MjKrdmhxvrJbupnVvpys0zsz7yBApXdQyfepKly2kA==}
- engines: {node: '>=0.10.0'}
- dependencies:
- map-cache: 0.2.2
- dev: true
-
- /fresh@0.5.2:
- resolution: {integrity: sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==}
- engines: {node: '>= 0.6'}
-
- /fs-constants@1.0.0:
- resolution: {integrity: sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==}
- dev: false
-
- /fs-extra@10.1.0:
- resolution: {integrity: sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==}
- engines: {node: '>=12'}
- dependencies:
- graceful-fs: 4.2.11
- jsonfile: 6.1.0
- universalify: 2.0.0
-
- /fs-extra@11.1.1:
- resolution: {integrity: sha512-MGIE4HOvQCeUCzmlHs0vXpih4ysz4wg9qiSAu6cd42lVwPbTM1TjV7RusoyQqMmk/95gdQZX72u+YW+c3eEpFQ==}
- engines: {node: '>=14.14'}
- dependencies:
- graceful-fs: 4.2.11
- jsonfile: 6.1.0
- universalify: 2.0.0
-
- /fs-extra@8.1.0:
- resolution: {integrity: sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==}
- engines: {node: '>=6 <7 || >=8'}
- dependencies:
- graceful-fs: 4.2.11
- jsonfile: 4.0.0
- universalify: 0.1.2
- dev: true
-
- /fs-minipass@2.1.0:
- resolution: {integrity: sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==}
- engines: {node: '>= 8'}
- dependencies:
- minipass: 3.3.6
- dev: false
-
- /fs-monkey@1.0.5:
- resolution: {integrity: sha512-8uMbBjrhzW76TYgEV27Y5E//W2f/lTFmx78P2w19FZSxarhI/798APGQyuGCwmkNxgwGRhrLfvWyLBvNtuOmew==}
-
- /fs-readdir-recursive@1.1.0:
- resolution: {integrity: sha512-GNanXlVr2pf02+sPN40XN8HG+ePaNcvM0q5mZBd668Obwb0yD5GiUbZOFgwn8kGMY6I3mdyDJzieUy3PTYyTRA==}
-
- /fs.realpath@1.0.0:
- resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==}
-
- /fsevents@2.3.3:
- resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==}
- engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
- os: [darwin]
- requiresBuild: true
- dev: true
- optional: true
-
- /function-bind@1.1.1:
- resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==}
-
- /function.prototype.name@1.1.6:
- resolution: {integrity: sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==}
- engines: {node: '>= 0.4'}
- dependencies:
- call-bind: 1.0.2
- define-properties: 1.2.1
- es-abstract: 1.22.2
- functions-have-names: 1.2.3
- dev: true
-
- /functions-have-names@1.2.3:
- resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==}
- dev: true
-
- /gauge@3.0.2:
- resolution: {integrity: sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==}
- engines: {node: '>=10'}
- dependencies:
- aproba: 2.0.0
- color-support: 1.1.3
- console-control-strings: 1.1.0
- has-unicode: 2.0.1
- object-assign: 4.1.1
- signal-exit: 3.0.7
- string-width: 4.2.3
- strip-ansi: 6.0.1
- wide-align: 1.1.5
- dev: false
-
- /gauge@4.0.4:
- resolution: {integrity: sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==}
- engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0}
- requiresBuild: true
- dependencies:
- aproba: 2.0.0
- color-support: 1.1.3
- console-control-strings: 1.1.0
- has-unicode: 2.0.1
- signal-exit: 3.0.7
- string-width: 4.2.3
- strip-ansi: 6.0.1
- wide-align: 1.1.5
- dev: false
- optional: true
-
- /gensync@1.0.0-beta.2:
- resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==}
- engines: {node: '>=6.9.0'}
- dev: true
-
- /get-func-name@2.0.2:
- resolution: {integrity: sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==}
- dev: true
-
- /get-intrinsic@1.2.1:
- resolution: {integrity: sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==}
- dependencies:
- function-bind: 1.1.1
- has: 1.0.3
- has-proto: 1.0.1
- has-symbols: 1.0.3
-
- /get-package-type@0.1.0:
- resolution: {integrity: sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==}
- engines: {node: '>=8.0.0'}
- dev: false
-
- /get-port@3.2.0:
- resolution: {integrity: sha512-x5UJKlgeUiNT8nyo/AcnwLnZuZNcSjSw0kogRB+Whd1fjjFq4B1hySFxSFWWSn4mIBzg3sRNUDFYc4g5gjPoLg==}
- engines: {node: '>=4'}
- dev: true
-
- /get-port@5.1.1:
- resolution: {integrity: sha512-g/Q1aTSDOxFpchXC4i8ZWvxA1lnPqx/JHqcpIw0/LX9T8x/GBbi6YnlN5nhaKIFkT8oFsscUKgDJYxfwfS6QsQ==}
- engines: {node: '>=8'}
- dev: true
-
- /get-source@2.0.12:
- resolution: {integrity: sha512-X5+4+iD+HoSeEED+uwrQ07BOQr0kEDFMVqqpBuI+RaZBpBpHCuXxo70bjar6f0b0u/DQJsJ7ssurpP0V60Az+w==}
- dependencies:
- data-uri-to-buffer: 2.0.2
- source-map: 0.6.1
- dev: true
-
- /get-stream@5.2.0:
- resolution: {integrity: sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==}
- engines: {node: '>=8'}
- dependencies:
- pump: 3.0.0
- dev: false
-
- /get-stream@6.0.1:
- resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==}
- engines: {node: '>=10'}
-
- /get-symbol-description@1.0.0:
- resolution: {integrity: sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==}
- engines: {node: '>= 0.4'}
- dependencies:
- call-bind: 1.0.2
- get-intrinsic: 1.2.1
- dev: true
-
- /get-value@2.0.6:
- resolution: {integrity: sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA==}
- engines: {node: '>=0.10.0'}
- dev: true
-
- /getopts@2.3.0:
- resolution: {integrity: sha512-5eDf9fuSXwxBL6q5HX+dhDj+dslFGWzU5thZ9kNKUkcPtaPdatmUFKwHFrLb/uf/WpA4BHET+AX3Scl56cAjpA==}
-
- /glob-parent@3.1.0:
- resolution: {integrity: sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA==}
- dependencies:
- is-glob: 3.1.0
- path-dirname: 1.0.2
- dev: true
-
- /glob-parent@5.1.2:
- resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==}
- engines: {node: '>= 6'}
- dependencies:
- is-glob: 4.0.3
-
- /glob-parent@6.0.2:
- resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==}
- engines: {node: '>=10.13.0'}
- dependencies:
- is-glob: 4.0.3
- dev: true
-
- /glob-to-regexp@0.3.0:
- resolution: {integrity: sha512-Iozmtbqv0noj0uDDqoL0zNq0VBEfK2YFoMAZoxJe4cwphvLR+JskfF30QhXHOR4m3KrE6NLRYw+U9MRXvifyig==}
- dev: true
-
- /glob-to-regexp@0.4.1:
- resolution: {integrity: sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==}
- dev: true
-
- /glob@7.2.3:
- resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==}
- dependencies:
- fs.realpath: 1.0.0
- inflight: 1.0.6
- inherits: 2.0.4
- minimatch: 3.1.2
- once: 1.4.0
- path-is-absolute: 1.0.1
-
- /glob@8.1.0:
- resolution: {integrity: sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==}
- engines: {node: '>=12'}
- dependencies:
- fs.realpath: 1.0.0
- inflight: 1.0.6
- inherits: 2.0.4
- minimatch: 5.1.6
- once: 1.4.0
-
- /globals@11.12.0:
- resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==}
- engines: {node: '>=4'}
- dev: true
-
- /globals@13.22.0:
- resolution: {integrity: sha512-H1Ddc/PbZHTDVJSnj8kWptIRSD6AM3pK+mKytuIVF4uoBV7rshFlhhvA58ceJ5wp3Er58w6zj7bykMpYXt3ETw==}
- engines: {node: '>=8'}
- dependencies:
- type-fest: 0.20.2
- dev: true
-
- /globalthis@1.0.3:
- resolution: {integrity: sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==}
- engines: {node: '>= 0.4'}
- dependencies:
- define-properties: 1.2.1
- dev: true
-
- /globby@11.1.0:
- resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==}
- engines: {node: '>=10'}
- dependencies:
- array-union: 2.1.0
- dir-glob: 3.0.1
- fast-glob: 3.3.1
- ignore: 5.2.4
- merge2: 1.4.1
- slash: 3.0.0
- dev: true
-
- /globby@6.1.0:
- resolution: {integrity: sha512-KVbFv2TQtbzCoxAnfD6JcHZTYCzyliEaaeM/gH8qQdkKr5s0OP9scEgvdcngyk7AVdY6YVW/TJHd+lQ/Df3Daw==}
- engines: {node: '>=0.10.0'}
- dependencies:
- array-union: 1.0.2
- glob: 7.2.3
- object-assign: 4.1.1
- pify: 2.3.0
- pinkie-promise: 2.0.1
- dev: true
-
- /globby@9.2.0:
- resolution: {integrity: sha512-ollPHROa5mcxDEkwg6bPt3QbEf4pDQSNtd6JPL1YvOvAo/7/0VAm9TccUeoTmarjPw4pfUthSCqcyfNB1I3ZSg==}
- engines: {node: '>=6'}
- dependencies:
- '@types/glob': 7.2.0
- array-union: 1.0.2
- dir-glob: 2.2.2
- fast-glob: 2.2.7
- glob: 7.2.3
- ignore: 4.0.6
- pify: 4.0.1
- slash: 2.0.0
- transitivePeerDependencies:
- - supports-color
- dev: true
-
- /gopd@1.0.1:
- resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==}
- dependencies:
- get-intrinsic: 1.2.1
-
- /got@11.8.6:
- resolution: {integrity: sha512-6tfZ91bOr7bOXnK7PRDCGBLa1H4U080YHNaAQ2KsMGlLEzRbk44nsZF2E1IeRc3vtJHPVbKCYgdFbaGO2ljd8g==}
- engines: {node: '>=10.19.0'}
- dependencies:
- '@sindresorhus/is': 4.6.0
- '@szmarczak/http-timer': 4.0.6
- '@types/cacheable-request': 6.0.3
- '@types/responselike': 1.0.1
- cacheable-lookup: 5.0.4
- cacheable-request: 7.0.4
- decompress-response: 6.0.0
- http2-wrapper: 1.0.3
- lowercase-keys: 2.0.0
- p-cancelable: 2.1.1
- responselike: 2.0.1
- dev: false
-
- /graceful-fs@4.2.11:
- resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==}
-
- /graphemer@1.4.0:
- resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==}
- dev: true
-
- /handle-thing@2.0.1:
- resolution: {integrity: sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==}
- dev: true
-
- /has-ansi@2.0.0:
- resolution: {integrity: sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==}
- engines: {node: '>=0.10.0'}
- dependencies:
- ansi-regex: 2.1.1
- dev: true
-
- /has-bigints@1.0.2:
- resolution: {integrity: sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==}
- dev: true
-
- /has-flag@3.0.0:
- resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==}
- engines: {node: '>=4'}
- dev: true
-
- /has-flag@4.0.0:
- resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==}
- engines: {node: '>=8'}
-
- /has-glob@1.0.0:
- resolution: {integrity: sha512-D+8A457fBShSEI3tFCj65PAbT++5sKiFtdCdOam0gnfBgw9D277OERk+HM9qYJXmdVLZ/znez10SqHN0BBQ50g==}
- engines: {node: '>=0.10.0'}
- dependencies:
- is-glob: 3.1.0
- dev: true
-
- /has-own-prop@2.0.0:
- resolution: {integrity: sha512-Pq0h+hvsVm6dDEa8x82GnLSYHOzNDt7f0ddFa3FqcQlgzEiptPqL+XrOJNavjOzSYiYWIrgeVYYgGlLmnxwilQ==}
- engines: {node: '>=8'}
- dev: true
-
- /has-property-descriptors@1.0.0:
- resolution: {integrity: sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==}
- dependencies:
- get-intrinsic: 1.2.1
- dev: true
-
- /has-proto@1.0.1:
- resolution: {integrity: sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==}
- engines: {node: '>= 0.4'}
-
- /has-symbols@1.0.3:
- resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==}
- engines: {node: '>= 0.4'}
-
- /has-tostringtag@1.0.0:
- resolution: {integrity: sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==}
- engines: {node: '>= 0.4'}
- dependencies:
- has-symbols: 1.0.3
-
- /has-unicode@2.0.1:
- resolution: {integrity: sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==}
- dev: false
-
- /has-value@0.3.1:
- resolution: {integrity: sha512-gpG936j8/MzaeID5Yif+577c17TxaDmhuyVgSwtnL/q8UUTySg8Mecb+8Cf1otgLoD7DDH75axp86ER7LFsf3Q==}
- engines: {node: '>=0.10.0'}
- dependencies:
- get-value: 2.0.6
- has-values: 0.1.4
- isobject: 2.1.0
- dev: true
-
- /has-value@1.0.0:
- resolution: {integrity: sha512-IBXk4GTsLYdQ7Rvt+GRBrFSVEkmuOUy4re0Xjd9kJSUQpnTrWR4/y9RpfexN9vkAPMFuQoeWKwqzPozRTlasGw==}
- engines: {node: '>=0.10.0'}
- dependencies:
- get-value: 2.0.6
- has-values: 1.0.0
- isobject: 3.0.1
- dev: true
-
- /has-values@0.1.4:
- resolution: {integrity: sha512-J8S0cEdWuQbqD9//tlZxiMuMNmxB8PlEwvYwuxsTmR1G5RXUePEX/SJn7aD0GMLieuZYSwNH0cQuJGwnYunXRQ==}
- engines: {node: '>=0.10.0'}
- dev: true
-
- /has-values@1.0.0:
- resolution: {integrity: sha512-ODYZC64uqzmtfGMEAX/FvZiRyWLpAC3vYnNunURUnkGVTS+mI0smVsWaPydRBsE3g+ok7h960jChO8mFcWlHaQ==}
- engines: {node: '>=0.10.0'}
- dependencies:
- is-number: 3.0.0
- kind-of: 4.0.0
- dev: true
-
- /has-yarn@2.1.0:
- resolution: {integrity: sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==}
- engines: {node: '>=8'}
- dev: true
-
- /has@1.0.3:
- resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==}
- engines: {node: '>= 0.4.0'}
- dependencies:
- function-bind: 1.1.1
-
- /haye@3.0.0:
- resolution: {integrity: sha512-yWxbPdeex78IR3x3X/DdqkZbVG4rP4UaRdUGmpClfnUh1C61mASt7Iav8vk2tXcTMSygBHDDfgoVqk68NJqzhQ==}
-
- /he@1.2.0:
- resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==}
- hasBin: true
-
- /header-case@2.0.4:
- resolution: {integrity: sha512-H/vuk5TEEVZwrR0lp2zed9OCo1uAILMlx0JEMgC26rzyJJ3N1v6XkwHHXJQdR2doSjcGPM6OKPYoJgf0plJ11Q==}
- dependencies:
- capital-case: 1.0.4
- tslib: 2.6.2
-
- /helmet-csp@3.4.0:
- resolution: {integrity: sha512-a+YgzWw6dajqhQfb6ktxil0FsQuWTKzrLSUfy55dxS8fuvl1jidTIMPZ2udN15mjjcpBPgTHNHGF5tyWKYyR8w==}
- engines: {node: '>=10.0.0'}
- dev: false
-
- /help-me@4.2.0:
- resolution: {integrity: sha512-TAOnTB8Tz5Dw8penUuzHVrKNKlCIbwwbHnXraNJxPwf8LRtE2HlM84RYuezMFcwOJmoYOCWVDyJ8TQGxn9PgxA==}
- dependencies:
- glob: 8.1.0
- readable-stream: 3.6.2
-
- /hexoid@1.0.0:
- resolution: {integrity: sha512-QFLV0taWQOZtvIRIAdBChesmogZrtuXvVWsFHZTk2SU+anspqZ2vMnoLg7IE1+Uk16N19APic1BuF8bC8c2m5g==}
- engines: {node: '>=8'}
- dev: true
-
- /hosted-git-info@2.8.9:
- resolution: {integrity: sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==}
- dev: true
-
- /hpack.js@2.1.6:
- resolution: {integrity: sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==}
- dependencies:
- inherits: 2.0.4
- obuf: 1.1.2
- readable-stream: 2.3.8
- wbuf: 1.7.3
- dev: true
-
- /html-entities@2.4.0:
- resolution: {integrity: sha512-igBTJcNNNhvZFRtm8uA6xMY6xYleeDwn3PeBCkDz7tHttv4F2hsDI2aPgNERWzvRcNYHNT3ymRaQzllmXj4YsQ==}
- dev: true
-
- /htmlparser2@6.1.0:
- resolution: {integrity: sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==}
- dependencies:
- domelementtype: 2.3.0
- domhandler: 4.3.1
- domutils: 2.8.0
- entities: 2.2.0
- dev: true
-
- /http-cache-semantics@4.1.1:
- resolution: {integrity: sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==}
- dev: false
-
- /http-deceiver@1.2.7:
- resolution: {integrity: sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==}
- dev: true
-
- /http-errors@1.6.3:
- resolution: {integrity: sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==}
- engines: {node: '>= 0.6'}
- dependencies:
- depd: 1.1.2
- inherits: 2.0.3
- setprototypeof: 1.1.0
- statuses: 1.5.0
- dev: true
-
- /http-errors@2.0.0:
- resolution: {integrity: sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==}
- engines: {node: '>= 0.8'}
- dependencies:
- depd: 2.0.0
- inherits: 2.0.4
- setprototypeof: 1.2.0
- statuses: 2.0.1
- toidentifier: 1.0.1
-
- /http-parser-js@0.5.8:
- resolution: {integrity: sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==}
- dev: true
-
- /http-proxy-agent@4.0.1:
- resolution: {integrity: sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==}
- engines: {node: '>= 6'}
- requiresBuild: true
- dependencies:
- '@tootallnate/once': 1.1.2
- agent-base: 6.0.2
- debug: 4.3.4
- transitivePeerDependencies:
- - supports-color
- dev: false
- optional: true
-
- /http-proxy-middleware@2.0.6(@types/express@4.17.18):
- resolution: {integrity: sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw==}
- engines: {node: '>=12.0.0'}
- peerDependencies:
- '@types/express': ^4.17.13
- peerDependenciesMeta:
- '@types/express':
- optional: true
- dependencies:
- '@types/express': 4.17.18
- '@types/http-proxy': 1.17.12
- http-proxy: 1.18.1
- is-glob: 4.0.3
- is-plain-obj: 3.0.0
- micromatch: 4.0.5
- transitivePeerDependencies:
- - debug
- dev: true
-
- /http-proxy@1.18.1:
- resolution: {integrity: sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==}
- engines: {node: '>=8.0.0'}
- dependencies:
- eventemitter3: 4.0.7
- follow-redirects: 1.15.3
- requires-port: 1.0.0
- transitivePeerDependencies:
- - debug
- dev: true
-
- /http2-wrapper@1.0.3:
- resolution: {integrity: sha512-V+23sDMr12Wnz7iTcDeJr3O6AIxlnvT/bmaAAAP/Xda35C90p9599p0F1eHR/N1KILWSoWVAiOMFjBBXaXSMxg==}
- engines: {node: '>=10.19.0'}
- dependencies:
- quick-lru: 5.1.1
- resolve-alpn: 1.2.1
- dev: false
-
- /https-proxy-agent@5.0.1:
- resolution: {integrity: sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==}
- engines: {node: '>= 6'}
- dependencies:
- agent-base: 6.0.2
- debug: 4.3.4
- transitivePeerDependencies:
- - supports-color
- dev: false
-
- /human-signals@2.1.0:
- resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==}
- engines: {node: '>=10.17.0'}
- dev: true
-
- /human-signals@4.3.1:
- resolution: {integrity: sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ==}
- engines: {node: '>=14.18.0'}
- dev: true
-
- /humanize-ms@1.2.1:
- resolution: {integrity: sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==}
- requiresBuild: true
- dependencies:
- ms: 2.1.3
- dev: false
- optional: true
-
- /husky@8.0.3:
- resolution: {integrity: sha512-+dQSyqPh4x1hlO1swXBiNb2HzTDN1I2IGLQx1GrBuiqFJfoMrnZWwVmatvSiO+Iz8fBUnf+lekwNo4c2LlXItg==}
- engines: {node: '>=14'}
- hasBin: true
- dev: true
-
- /ical-generator@4.1.0(@types/luxon@3.3.1)(luxon@3.3.0)(moment@2.29.4):
- resolution: {integrity: sha512-5GrFDJ8SAOj8cB9P1uEZIfKrNxSZ1R2eOQfZePL+CtdWh4RwNXWe8b0goajz+Hu37vcipG3RVldoa2j57Y20IA==}
- engines: {node: ^14.8.0 || >=16.0.0}
- peerDependencies:
- '@touch4it/ical-timezones': '>=1.6.0'
- '@types/luxon': '>= 1.26.0'
- '@types/mocha': '>= 8.2.1'
- '@types/node': '>= 15.0.0'
- dayjs: '>= 1.10.0'
- luxon: '>= 1.26.0'
- moment: '>= 2.29.0'
- moment-timezone: '>= 0.5.33'
- rrule: '>= 2.6.8'
- peerDependenciesMeta:
- '@touch4it/ical-timezones':
- optional: true
- '@types/luxon':
- optional: true
- '@types/mocha':
- optional: true
- '@types/node':
- optional: true
- dayjs:
- optional: true
- luxon:
- optional: true
- moment:
- optional: true
- moment-timezone:
- optional: true
- rrule:
- optional: true
- dependencies:
- '@types/luxon': 3.3.1
- luxon: 3.3.0
- moment: 2.29.4
- uuid-random: 1.3.2
- dev: false
-
- /iconv-lite@0.4.24:
- resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==}
- engines: {node: '>=0.10.0'}
- dependencies:
- safer-buffer: 2.1.2
-
- /iconv-lite@0.6.3:
- resolution: {integrity: sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==}
- engines: {node: '>=0.10.0'}
- requiresBuild: true
- dependencies:
- safer-buffer: 2.1.2
- dev: false
- optional: true
-
- /icss-utils@5.1.0(postcss@8.4.31):
- resolution: {integrity: sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==}
- engines: {node: ^10 || ^12 || >= 14}
- peerDependencies:
- postcss: ^8.1.0
- dependencies:
- postcss: 8.4.31
- dev: true
-
- /ieee754@1.1.13:
- resolution: {integrity: sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==}
- dev: false
-
- /ieee754@1.2.1:
- resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==}
-
- /igniculus@1.5.0:
- resolution: {integrity: sha512-vhj2J/cSzNg2G5tcK4Z1KZdeYmQa5keoxFULUYAxctK/zHJb1oraO7noCqnJxKe1b2eZdiiaSL1IHPOFAI8UYQ==}
- engines: {node: '>=4.0.0'}
- dev: false
-
- /ignore@4.0.6:
- resolution: {integrity: sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==}
- engines: {node: '>= 4'}
- dev: true
-
- /ignore@5.2.4:
- resolution: {integrity: sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==}
- engines: {node: '>= 4'}
- dev: true
-
- /import-fresh@3.3.0:
- resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==}
- engines: {node: '>=6'}
- dependencies:
- parent-module: 1.0.1
- resolve-from: 4.0.0
- dev: true
-
- /import-local@3.1.0:
- resolution: {integrity: sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==}
- engines: {node: '>=8'}
- hasBin: true
- dependencies:
- pkg-dir: 4.2.0
- resolve-cwd: 3.0.0
- dev: true
-
- /imurmurhash@0.1.4:
- resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==}
- engines: {node: '>=0.8.19'}
-
- /inclusion@1.0.1:
- resolution: {integrity: sha512-TRicJXpIfJN+a47xxjs5nfy2V5l413e4aAtsLYRG+OsDM3A3uloBd/+fDmj23RVuIL9VQfwtb37iIc0rtMw9KA==}
- dependencies:
- parent-module: 2.0.0
- dev: true
-
- /indent-string@4.0.0:
- resolution: {integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==}
- engines: {node: '>=8'}
-
- /infer-owner@1.0.4:
- resolution: {integrity: sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==}
- requiresBuild: true
- dev: false
- optional: true
-
- /inflation@2.0.0:
- resolution: {integrity: sha512-m3xv4hJYR2oXw4o4Y5l6P5P16WYmazYof+el6Al3f+YlggGj6qT9kImBAnzDelRALnP5d3h4jGBPKzYCizjZZw==}
- engines: {node: '>= 0.8.0'}
-
- /inflight@1.0.6:
- resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==}
- dependencies:
- once: 1.4.0
- wrappy: 1.0.2
-
- /inherits@2.0.3:
- resolution: {integrity: sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==}
- dev: true
-
- /inherits@2.0.4:
- resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==}
-
- /ini@1.3.8:
- resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==}
- dev: true
-
- /internal-slot@1.0.5:
- resolution: {integrity: sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==}
- engines: {node: '>= 0.4'}
- dependencies:
- get-intrinsic: 1.2.1
- has: 1.0.3
- side-channel: 1.0.4
- dev: true
-
- /interpret@2.2.0:
- resolution: {integrity: sha512-Ju0Bz/cEia55xDwUWEa8+olFpCiQoypjnQySseKtmjNrnps3P+xfpUmGr90T7yjlVJmOtybRvPXhKMbHr+fWnw==}
- engines: {node: '>= 0.10'}
- dev: false
-
- /interpret@3.1.1:
- resolution: {integrity: sha512-6xwYfHbajpoF0xLW+iwLkhwgvLoZDfjYfoFNu8ftMoXINzwuymNLd9u/KmwtdT2GbR+/Cz66otEGEVVUHX9QLQ==}
- engines: {node: '>=10.13.0'}
- dev: true
-
- /ip@2.0.0:
- resolution: {integrity: sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==}
- requiresBuild: true
- dev: false
- optional: true
-
- /ipaddr.js@1.9.1:
- resolution: {integrity: sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==}
- engines: {node: '>= 0.10'}
-
- /ipaddr.js@2.1.0:
- resolution: {integrity: sha512-LlbxQ7xKzfBusov6UMi4MFpEg0m+mAm9xyNGEduwXMEDuf4WfzB/RZwMVYEd7IKGvh4IUkEXYxtAVu9T3OelJQ==}
- engines: {node: '>= 10'}
- dev: true
-
- /is-accessor-descriptor@0.1.6:
- resolution: {integrity: sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==}
- engines: {node: '>=0.10.0'}
- dependencies:
- kind-of: 3.2.2
- dev: true
-
- /is-accessor-descriptor@1.0.0:
- resolution: {integrity: sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==}
- engines: {node: '>=0.10.0'}
- dependencies:
- kind-of: 6.0.3
- dev: true
-
- /is-arguments@1.1.1:
- resolution: {integrity: sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==}
- engines: {node: '>= 0.4'}
- dependencies:
- call-bind: 1.0.2
- has-tostringtag: 1.0.0
- dev: false
-
- /is-array-buffer@3.0.2:
- resolution: {integrity: sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==}
- dependencies:
- call-bind: 1.0.2
- get-intrinsic: 1.2.1
- is-typed-array: 1.1.12
- dev: true
-
- /is-arrayish@0.2.1:
- resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==}
- dev: true
-
- /is-bigint@1.0.4:
- resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==}
- dependencies:
- has-bigints: 1.0.2
- dev: true
-
- /is-binary-path@2.1.0:
- resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==}
- engines: {node: '>=8'}
- dependencies:
- binary-extensions: 2.2.0
- dev: true
-
- /is-boolean-object@1.1.2:
- resolution: {integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==}
- engines: {node: '>= 0.4'}
- dependencies:
- call-bind: 1.0.2
- has-tostringtag: 1.0.0
- dev: true
-
- /is-buffer@1.1.6:
- resolution: {integrity: sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==}
- dev: true
-
- /is-builtin-module@3.2.1:
- resolution: {integrity: sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A==}
- engines: {node: '>=6'}
- dependencies:
- builtin-modules: 3.3.0
- dev: true
-
- /is-callable@1.2.7:
- resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==}
- engines: {node: '>= 0.4'}
-
- /is-ci@3.0.1:
- resolution: {integrity: sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==}
- hasBin: true
- dependencies:
- ci-info: 3.8.0
- dev: true
-
- /is-core-module@2.13.0:
- resolution: {integrity: sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ==}
- dependencies:
- has: 1.0.3
-
- /is-data-descriptor@0.1.4:
- resolution: {integrity: sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==}
- engines: {node: '>=0.10.0'}
- dependencies:
- kind-of: 3.2.2
- dev: true
-
- /is-data-descriptor@1.0.0:
- resolution: {integrity: sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==}
- engines: {node: '>=0.10.0'}
- dependencies:
- kind-of: 6.0.3
- dev: true
-
- /is-date-object@1.0.5:
- resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==}
- engines: {node: '>= 0.4'}
- dependencies:
- has-tostringtag: 1.0.0
- dev: true
-
- /is-descriptor@0.1.6:
- resolution: {integrity: sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==}
- engines: {node: '>=0.10.0'}
- dependencies:
- is-accessor-descriptor: 0.1.6
- is-data-descriptor: 0.1.4
- kind-of: 5.1.0
- dev: true
-
- /is-descriptor@1.0.2:
- resolution: {integrity: sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==}
- engines: {node: '>=0.10.0'}
- dependencies:
- is-accessor-descriptor: 1.0.0
- is-data-descriptor: 1.0.0
- kind-of: 6.0.3
- dev: true
-
- /is-docker@2.2.1:
- resolution: {integrity: sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==}
- engines: {node: '>=8'}
- hasBin: true
- dev: true
-
- /is-docker@3.0.0:
- resolution: {integrity: sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==}
- engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
- hasBin: true
- dev: true
-
- /is-extendable@0.1.1:
- resolution: {integrity: sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==}
- engines: {node: '>=0.10.0'}
- dev: true
-
- /is-extendable@1.0.1:
- resolution: {integrity: sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==}
- engines: {node: '>=0.10.0'}
- dependencies:
- is-plain-object: 2.0.4
- dev: true
-
- /is-extglob@1.0.0:
- resolution: {integrity: sha512-7Q+VbVafe6x2T+Tu6NcOf6sRklazEPmBoB3IWk3WdGZM2iGUwU/Oe3Wtq5lSEkDTTlpp8yx+5t4pzO/i9Ty1ww==}
- engines: {node: '>=0.10.0'}
- dev: true
-
- /is-extglob@2.1.1:
- resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==}
- engines: {node: '>=0.10.0'}
-
- /is-fullwidth-code-point@3.0.0:
- resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==}
- engines: {node: '>=8'}
-
- /is-generator-function@1.0.10:
- resolution: {integrity: sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==}
- engines: {node: '>= 0.4'}
- dependencies:
- has-tostringtag: 1.0.0
- dev: false
-
- /is-glob@2.0.1:
- resolution: {integrity: sha512-a1dBeB19NXsf/E0+FHqkagizel/LQw2DjSQpvQrj3zT+jYPpaUCryPnrQajXKFLCMuf4I6FhRpaGtw4lPrG6Eg==}
- engines: {node: '>=0.10.0'}
- dependencies:
- is-extglob: 1.0.0
- dev: true
-
- /is-glob@3.1.0:
- resolution: {integrity: sha512-UFpDDrPgM6qpnFNI+rh/p3bUaq9hKLZN8bMUWzxmcnZVS3omf4IPK+BrewlnWjO1WmUsMYuSjKh4UJuV4+Lqmw==}
- engines: {node: '>=0.10.0'}
- dependencies:
- is-extglob: 2.1.1
- dev: true
-
- /is-glob@4.0.3:
- resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==}
- engines: {node: '>=0.10.0'}
- dependencies:
- is-extglob: 2.1.1
-
- /is-inside-container@1.0.0:
- resolution: {integrity: sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==}
- engines: {node: '>=14.16'}
- hasBin: true
- dependencies:
- is-docker: 3.0.0
- dev: true
-
- /is-invalid-path@0.1.0:
- resolution: {integrity: sha512-aZMG0T3F34mTg4eTdszcGXx54oiZ4NtHSft3hWNJMGJXUUqdIj3cOZuHcU0nCWWcY3jd7yRe/3AEm3vSNTpBGQ==}
- engines: {node: '>=0.10.0'}
- dependencies:
- is-glob: 2.0.1
- dev: true
-
- /is-lambda@1.0.1:
- resolution: {integrity: sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==}
- requiresBuild: true
- dev: false
- optional: true
-
- /is-negative-zero@2.0.2:
- resolution: {integrity: sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==}
- engines: {node: '>= 0.4'}
- dev: true
-
- /is-number-object@1.0.7:
- resolution: {integrity: sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==}
- engines: {node: '>= 0.4'}
- dependencies:
- has-tostringtag: 1.0.0
- dev: true
-
- /is-number@3.0.0:
- resolution: {integrity: sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==}
- engines: {node: '>=0.10.0'}
- dependencies:
- kind-of: 3.2.2
- dev: true
-
- /is-number@7.0.0:
- resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==}
- engines: {node: '>=0.12.0'}
-
- /is-path-cwd@2.2.0:
- resolution: {integrity: sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==}
- engines: {node: '>=6'}
- dev: true
-
- /is-path-in-cwd@2.1.0:
- resolution: {integrity: sha512-rNocXHgipO+rvnP6dk3zI20RpOtrAM/kzbB258Uw5BWr3TpXi861yzjo16Dn4hUox07iw5AyeMLHWsujkjzvRQ==}
- engines: {node: '>=6'}
- dependencies:
- is-path-inside: 2.1.0
- dev: true
-
- /is-path-inside@2.1.0:
- resolution: {integrity: sha512-wiyhTzfDWsvwAW53OBWF5zuvaOGlZ6PwYxAbPVDhpm+gM09xKQGjBq/8uYN12aDvMxnAnq3dxTyoSoRNmg5YFg==}
- engines: {node: '>=6'}
- dependencies:
- path-is-inside: 1.0.2
- dev: true
-
- /is-path-inside@3.0.3:
- resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==}
- engines: {node: '>=8'}
- dev: true
-
- /is-plain-obj@3.0.0:
- resolution: {integrity: sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==}
- engines: {node: '>=10'}
- dev: true
-
- /is-plain-object@2.0.4:
- resolution: {integrity: sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==}
- engines: {node: '>=0.10.0'}
- dependencies:
- isobject: 3.0.1
- dev: true
-
- /is-regex@1.1.4:
- resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==}
- engines: {node: '>= 0.4'}
- dependencies:
- call-bind: 1.0.2
- has-tostringtag: 1.0.0
- dev: true
-
- /is-shared-array-buffer@1.0.2:
- resolution: {integrity: sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==}
- dependencies:
- call-bind: 1.0.2
- dev: true
-
- /is-stream@2.0.1:
- resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==}
- engines: {node: '>=8'}
- dev: true
-
- /is-stream@3.0.0:
- resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==}
- engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
- dev: true
-
- /is-string@1.0.7:
- resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==}
- engines: {node: '>= 0.4'}
- dependencies:
- has-tostringtag: 1.0.0
- dev: true
-
- /is-symbol@1.0.4:
- resolution: {integrity: sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==}
- engines: {node: '>= 0.4'}
- dependencies:
- has-symbols: 1.0.3
- dev: true
-
- /is-typed-array@1.1.12:
- resolution: {integrity: sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg==}
- engines: {node: '>= 0.4'}
- dependencies:
- which-typed-array: 1.1.11
-
- /is-valid-path@0.1.1:
- resolution: {integrity: sha512-+kwPrVDu9Ms03L90Qaml+79+6DZHqHyRoANI6IsZJ/g8frhnfchDOBCa0RbQ6/kdHt5CS5OeIEyrYznNuVN+8A==}
- engines: {node: '>=0.10.0'}
- dependencies:
- is-invalid-path: 0.1.0
- dev: true
-
- /is-weakref@1.0.2:
- resolution: {integrity: sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==}
- dependencies:
- call-bind: 1.0.2
- dev: true
-
- /is-windows@1.0.2:
- resolution: {integrity: sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==}
- engines: {node: '>=0.10.0'}
- dev: true
-
- /is-wsl@2.2.0:
- resolution: {integrity: sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==}
- engines: {node: '>=8'}
- dependencies:
- is-docker: 2.2.1
- dev: true
-
- /isarray@1.0.0:
- resolution: {integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==}
-
- /isarray@2.0.5:
- resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==}
- dev: true
-
- /isexe@2.0.0:
- resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==}
-
- /isobject@2.1.0:
- resolution: {integrity: sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA==}
- engines: {node: '>=0.10.0'}
- dependencies:
- isarray: 1.0.0
- dev: true
-
- /isobject@3.0.1:
- resolution: {integrity: sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==}
- engines: {node: '>=0.10.0'}
- dev: true
-
- /jest-diff@25.5.0:
- resolution: {integrity: sha512-z1kygetuPiREYdNIumRpAHY6RXiGmp70YHptjdaxTWGmA085W3iCnXNx0DhflK3vwrKmrRWyY1wUpkPMVxMK7A==}
- engines: {node: '>= 8.3'}
- dependencies:
- chalk: 3.0.0
- diff-sequences: 25.2.6
- jest-get-type: 25.2.6
- pretty-format: 25.5.0
- dev: true
-
- /jest-diff@29.7.0:
- resolution: {integrity: sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==}
- engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
- dependencies:
- chalk: 4.1.2
- diff-sequences: 29.6.3
- jest-get-type: 29.6.3
- pretty-format: 29.7.0
- dev: true
-
- /jest-get-type@25.2.6:
- resolution: {integrity: sha512-DxjtyzOHjObRM+sM1knti6or+eOgcGU4xVSb2HNP1TqO4ahsT+rqZg+nyqHWJSvWgKC5cG3QjGFBqxLghiF/Ig==}
- engines: {node: '>= 8.3'}
- dev: true
-
- /jest-get-type@29.6.3:
- resolution: {integrity: sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==}
- engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
- dev: true
-
- /jest-matcher-utils@25.5.0:
- resolution: {integrity: sha512-VWI269+9JS5cpndnpCwm7dy7JtGQT30UHfrnM3mXl22gHGt/b7NkjBqXfbhZ8V4B7ANUsjK18PlSBmG0YH7gjw==}
- engines: {node: '>= 8.3'}
- dependencies:
- chalk: 3.0.0
- jest-diff: 25.5.0
- jest-get-type: 25.2.6
- pretty-format: 25.5.0
- dev: true
-
- /jest-util@29.7.0:
- resolution: {integrity: sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==}
- engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
- dependencies:
- '@jest/types': 29.6.3
- '@types/node': 20.7.2
- chalk: 4.1.2
- ci-info: 3.8.0
- graceful-fs: 4.2.11
- picomatch: 2.3.1
- dev: true
-
- /jest-worker@27.5.1:
- resolution: {integrity: sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==}
- engines: {node: '>= 10.13.0'}
- dependencies:
- '@types/node': 20.7.2
- merge-stream: 2.0.0
- supports-color: 8.1.1
-
- /jest-worker@29.7.0:
- resolution: {integrity: sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==}
- engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
- dependencies:
- '@types/node': 20.7.2
- jest-util: 29.7.0
- merge-stream: 2.0.0
- supports-color: 8.1.1
- dev: true
-
- /jmespath@0.16.0:
- resolution: {integrity: sha512-9FzQjJ7MATs1tSpnco1K6ayiYE3figslrXA72G2HQ/n76RzvYlofyi5QM+iX4YRs/pu3yzxlVQSST23+dMDknw==}
- engines: {node: '>= 0.6.0'}
- dev: false
-
- /jose@4.14.6:
- resolution: {integrity: sha512-EqJPEUlZD0/CSUMubKtMaYUOtWe91tZXTWMJZoKSbLk+KtdhNdcvppH8lA9XwVu2V4Ailvsj0GBZJ2ZwDjfesQ==}
- dev: false
-
- /joycon@3.1.1:
- resolution: {integrity: sha512-34wB/Y7MW7bzjKRjUKTa46I2Z7eV62Rkhva+KkopW7Qvv/OSWBqvkSY7vusOPrNuZcUG3tApvdVgNB8POj3SPw==}
- engines: {node: '>=10'}
-
- /js-stringify@1.0.2:
- resolution: {integrity: sha512-rtS5ATOo2Q5k1G+DADISilDA6lv79zIiwFd6CcjuIxGKLFm5C+RLImRscVap9k55i+MOZwgliw+NejvkLuGD5g==}
- dev: false
-
- /js-tokens@3.0.2:
- resolution: {integrity: sha512-RjTcuD4xjtthQkaWH7dFlH85L+QaVtSoOyGdZ3g6HFhS9dFNDfLyqgm2NFe2X6cQpeFmt0452FJjFG5UameExg==}
- dev: true
-
- /js-tokens@4.0.0:
- resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==}
- dev: true
-
- /js-yaml@3.14.1:
- resolution: {integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==}
- hasBin: true
- dependencies:
- argparse: 1.0.10
- esprima: 4.0.1
- dev: true
-
- /js-yaml@4.1.0:
- resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==}
- hasBin: true
- dependencies:
- argparse: 2.0.1
- dev: true
-
- /jsesc@0.5.0:
- resolution: {integrity: sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==}
- hasBin: true
- dev: true
-
- /jsesc@2.5.2:
- resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==}
- engines: {node: '>=4'}
- hasBin: true
- dev: true
-
- /jsesc@3.0.2:
- resolution: {integrity: sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==}
- engines: {node: '>=6'}
- hasBin: true
- dev: true
-
- /json-buffer@3.0.1:
- resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==}
-
- /json-parse-even-better-errors@2.3.1:
- resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==}
- dev: true
-
- /json-schema-deref-sync@0.14.0:
- resolution: {integrity: sha512-yGR1xmhdiD6R0MSrwWcFxQzAj5b3i5Gb/mt5tvQKgFMMeNe0KZYNEN/jWr7G+xn39Azqgcvk4ZKMs8dQl8e4wA==}
- engines: {node: '>=6.0.0'}
- dependencies:
- clone: 2.1.2
- dag-map: 1.0.2
- is-valid-path: 0.1.1
- lodash: 4.17.21
- md5: 2.2.1
- memory-cache: 0.2.0
- traverse: 0.6.7
- valid-url: 1.0.9
- dev: true
-
- /json-schema-traverse@0.4.1:
- resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==}
- dev: true
-
- /json-schema-traverse@1.0.0:
- resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==}
- dev: true
-
- /json-stable-stringify-without-jsonify@1.0.1:
- resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==}
- dev: true
-
- /json5@1.0.2:
- resolution: {integrity: sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==}
- hasBin: true
- dependencies:
- minimist: 1.2.8
- dev: true
-
- /json5@2.2.3:
- resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==}
- engines: {node: '>=6'}
- hasBin: true
- dev: true
-
- /jsonfile@4.0.0:
- resolution: {integrity: sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==}
- optionalDependencies:
- graceful-fs: 4.2.11
- dev: true
-
- /jsonfile@6.1.0:
- resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==}
- dependencies:
- universalify: 2.0.0
- optionalDependencies:
- graceful-fs: 4.2.11
-
- /junk@3.1.0:
- resolution: {integrity: sha512-pBxcB3LFc8QVgdggvZWyeys+hnrNWg4OcZIU/1X59k5jQdLBlCsYGRQaz234SqoRLTCgMH00fY0xRJH+F9METQ==}
- engines: {node: '>=8'}
- dev: true
-
- /keyv@4.5.3:
- resolution: {integrity: sha512-QCiSav9WaX1PgETJ+SpNnx2PRRapJ/oRSXM4VO5OGYGSjrxbKPVFVhB3l2OCbLCk329N8qyAtsJjSjvVBWzEug==}
- dependencies:
- json-buffer: 3.0.1
-
- /kind-of@3.2.2:
- resolution: {integrity: sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==}
- engines: {node: '>=0.10.0'}
- dependencies:
- is-buffer: 1.1.6
- dev: true
-
- /kind-of@4.0.0:
- resolution: {integrity: sha512-24XsCxmEbRwEDbz/qz3stgin8TTzZ1ESR56OMCN0ujYg+vRutNSiOj9bHH9u85DKgXguraugV5sFuvbD4FW/hw==}
- engines: {node: '>=0.10.0'}
- dependencies:
- is-buffer: 1.1.6
- dev: true
-
- /kind-of@5.1.0:
- resolution: {integrity: sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==}
- engines: {node: '>=0.10.0'}
- dev: true
-
- /kind-of@6.0.3:
- resolution: {integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==}
- engines: {node: '>=0.10.0'}
-
- /kleur@3.0.3:
- resolution: {integrity: sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==}
- engines: {node: '>=6'}
- dev: true
-
- /kleur@4.1.5:
- resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==}
- engines: {node: '>=6'}
-
- /knex-dynamic-connection@3.1.0(mysql@2.18.1)(pg@8.11.1)(sqlite3@5.1.6):
- resolution: {integrity: sha512-owRQ9cHBtaBUfYBs/dyt1s/Y0PYwUE66apnfYpzzMTkN2tNlzC1s7owqDJleHOelhJERZgd4jd1BZgcdfXLEhQ==}
- engines: {node: '>=14.0.0'}
- dependencies:
- debug: 4.3.4
- knex: 2.5.1(mysql@2.18.1)(pg@8.11.1)(sqlite3@5.1.6)
- transitivePeerDependencies:
- - better-sqlite3
- - mysql
- - mysql2
- - pg
- - pg-native
- - sqlite3
- - supports-color
- - tedious
- dev: false
-
- /knex@2.5.1(mysql@2.18.1)(pg@8.11.1)(sqlite3@5.1.6):
- resolution: {integrity: sha512-z78DgGKUr4SE/6cm7ku+jHvFT0X97aERh/f0MUKAKgFnwCYBEW4TFBqtHWFYiJFid7fMrtpZ/gxJthvz5mEByA==}
- engines: {node: '>=12'}
- hasBin: true
- peerDependencies:
- better-sqlite3: '*'
- mysql: '*'
- mysql2: '*'
- pg: '*'
- pg-native: '*'
- sqlite3: '*'
- tedious: '*'
- peerDependenciesMeta:
- better-sqlite3:
- optional: true
- mysql:
- optional: true
- mysql2:
- optional: true
- pg:
- optional: true
- pg-native:
- optional: true
- sqlite3:
- optional: true
- tedious:
- optional: true
- dependencies:
- colorette: 2.0.19
- commander: 10.0.1
- debug: 4.3.4
- escalade: 3.1.1
- esm: 3.2.25
- get-package-type: 0.1.0
- getopts: 2.3.0
- interpret: 2.2.0
- lodash: 4.17.21
- mysql: 2.18.1
- pg: 8.11.1
- pg-connection-string: 2.6.1
- rechoir: 0.8.0
- resolve-from: 5.0.0
- sqlite3: 5.1.6
- tarn: 3.0.2
- tildify: 2.0.0
- transitivePeerDependencies:
- - supports-color
- dev: false
-
- /launch-editor@2.6.0:
- resolution: {integrity: sha512-JpDCcQnyAAzZZaZ7vEiSqL690w7dAEyLao+KC96zBplnYbJS7TYNjvM3M7y3dGz+v7aIsJk3hllWuc0kWAjyRQ==}
- dependencies:
- picocolors: 1.0.0
- shell-quote: 1.8.1
- dev: true
-
- /leven@3.1.0:
- resolution: {integrity: sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==}
- engines: {node: '>=6'}
-
- /levn@0.4.1:
- resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==}
- engines: {node: '>= 0.8.0'}
- dependencies:
- prelude-ls: 1.2.1
- type-check: 0.4.0
- dev: true
-
- /lilconfig@2.1.0:
- resolution: {integrity: sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==}
- engines: {node: '>=10'}
- dev: true
-
- /lines-and-columns@1.2.4:
- resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==}
- dev: true
-
- /listify@1.0.3:
- resolution: {integrity: sha512-083swF7iH7bx8666zdzBColpgEuy46HjN3r1isD4zV6Ix7FuHfb/2/WVnl4CH8hjuoWeFF7P5KkKNXUnJCFEJg==}
- engines: {node: '>= 0.4'}
- dev: true
-
- /loader-runner@4.3.0:
- resolution: {integrity: sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==}
- engines: {node: '>=6.11.5'}
- dev: true
-
- /loader-utils@2.0.4:
- resolution: {integrity: sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==}
- engines: {node: '>=8.9.0'}
- dependencies:
- big.js: 5.2.2
- emojis-list: 3.0.0
- json5: 2.2.3
- dev: true
-
- /locate-path@3.0.0:
- resolution: {integrity: sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==}
- engines: {node: '>=6'}
- dependencies:
- p-locate: 3.0.0
- path-exists: 3.0.0
- dev: true
-
- /locate-path@5.0.0:
- resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==}
- engines: {node: '>=8'}
- dependencies:
- p-locate: 4.1.0
- dev: true
-
- /locate-path@6.0.0:
- resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==}
- engines: {node: '>=10'}
- dependencies:
- p-locate: 5.0.0
- dev: true
-
- /lodash.debounce@4.0.8:
- resolution: {integrity: sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==}
- dev: true
-
- /lodash.flatten@4.4.0:
- resolution: {integrity: sha512-C5N2Z3DgnnKr0LOpv/hKCgKdb7ZZwafIrsesve6lmzvZIRZRGaZ/l6Q8+2W7NaT+ZwO3fFlSCzCzrDCFdJfZ4g==}
- dev: true
-
- /lodash.get@4.4.2:
- resolution: {integrity: sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==}
- dev: true
-
- /lodash.isequal@4.5.0:
- resolution: {integrity: sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==}
- dev: true
-
- /lodash.memoize@4.1.2:
- resolution: {integrity: sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==}
- dev: true
-
- /lodash.merge@4.6.2:
- resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==}
- dev: true
-
- /lodash.set@4.3.2:
- resolution: {integrity: sha512-4hNPN5jlm/N/HLMCO43v8BXKq9Z7QdAGc/VGrRD61w8gN9g/6jF9A4L1pbUgBLCffi0w9VsXfTOij5x8iTyFvg==}
- dev: true
-
- /lodash.uniq@4.5.0:
- resolution: {integrity: sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==}
- dev: true
-
- /lodash@4.17.21:
- resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==}
-
- /log-update@4.0.0:
- resolution: {integrity: sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg==}
- engines: {node: '>=10'}
- dependencies:
- ansi-escapes: 4.3.2
- cli-cursor: 3.1.0
- slice-ansi: 4.0.0
- wrap-ansi: 6.2.0
-
- /loupe@2.3.6:
- resolution: {integrity: sha512-RaPMZKiMy8/JruncMU5Bt6na1eftNoo++R4Y+N2FrxkDVTrGvcyzFTsaGif4QTeKESheMGegbhw6iUAq+5A8zA==}
- dependencies:
- get-func-name: 2.0.2
- dev: true
-
- /lower-case@2.0.2:
- resolution: {integrity: sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==}
- dependencies:
- tslib: 2.6.2
-
- /lowercase-keys@2.0.0:
- resolution: {integrity: sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==}
- engines: {node: '>=8'}
- dev: false
-
- /lru-cache@4.1.5:
- resolution: {integrity: sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==}
- dependencies:
- pseudomap: 1.0.2
- yallist: 2.1.2
- dev: true
-
- /lru-cache@5.1.1:
- resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==}
- dependencies:
- yallist: 3.1.1
- dev: true
-
- /lru-cache@6.0.0:
- resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==}
- engines: {node: '>=10'}
- dependencies:
- yallist: 4.0.0
-
- /luxon@3.3.0:
- resolution: {integrity: sha512-An0UCfG/rSiqtAIiBPO0Y9/zAnHUZxAMiCpTd5h2smgsj7GGmcenvrvww2cqNA8/4A5ZrD1gJpHN2mIHZQF+Mg==}
- engines: {node: '>=12'}
- dev: false
-
- /luxon@3.4.3:
- resolution: {integrity: sha512-tFWBiv3h7z+T/tDaoxA8rqTxy1CHV6gHS//QdaH4pulbq/JuBSGgQspQQqcgnwdAx6pNI7cmvz5Sv/addzHmUg==}
- engines: {node: '>=12'}
-
- /macroable@7.0.2:
- resolution: {integrity: sha512-QS9p+Q20YBxpE0dJBnF6CPURP7p1GUsxnhTxTWH5nG3A1F5w8Rg3T4Xyh5UlrFSbHp88oOciVP/0agsNLhkHdQ==}
-
- /make-dir@3.1.0:
- resolution: {integrity: sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==}
- engines: {node: '>=8'}
- dependencies:
- semver: 6.3.1
-
- /make-fetch-happen@9.1.0:
- resolution: {integrity: sha512-+zopwDy7DNknmwPQplem5lAZX/eCOzSvSNNcSKm5eVwTkOBzoktEfXsa9L23J/GIRhxRsaxzkPEhrJEpE2F4Gg==}
- engines: {node: '>= 10'}
- requiresBuild: true
- dependencies:
- agentkeepalive: 4.5.0
- cacache: 15.3.0
- http-cache-semantics: 4.1.1
- http-proxy-agent: 4.0.1
- https-proxy-agent: 5.0.1
- is-lambda: 1.0.1
- lru-cache: 6.0.0
- minipass: 3.3.6
- minipass-collect: 1.0.2
- minipass-fetch: 1.4.1
- minipass-flush: 1.0.5
- minipass-pipeline: 1.2.4
- negotiator: 0.6.3
- promise-retry: 2.0.1
- socks-proxy-agent: 6.2.1
- ssri: 8.0.1
- transitivePeerDependencies:
- - bluebird
- - supports-color
- dev: false
- optional: true
-
- /map-age-cleaner@0.1.3:
- resolution: {integrity: sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w==}
- engines: {node: '>=6'}
- dependencies:
- p-defer: 1.0.0
- dev: true
-
- /map-cache@0.2.2:
- resolution: {integrity: sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg==}
- engines: {node: '>=0.10.0'}
- dev: true
-
- /map-visit@1.0.0:
- resolution: {integrity: sha512-4y7uGv8bd2WdM9vpQsiQNo41Ln1NvhvDRuVt0k2JZQ+ezN2uaQes7lZeZ+QQUHOLQAtDaBJ+7wCbi+ab/KFs+w==}
- engines: {node: '>=0.10.0'}
- dependencies:
- object-visit: 1.0.1
- dev: true
-
- /marked-terminal@5.2.0(marked@4.3.0):
- resolution: {integrity: sha512-Piv6yNwAQXGFjZSaiNljyNFw7jKDdGrw70FSbtxEyldLsyeuV5ZHm/1wW++kWbrOF1VPnUgYOhB2oLL0ZpnekA==}
- engines: {node: '>=14.13.1 || >=16.0.0'}
- peerDependencies:
- marked: ^1.0.0 || ^2.0.0 || ^3.0.0 || ^4.0.0 || ^5.0.0
- dependencies:
- ansi-escapes: 6.2.0
- cardinal: 2.1.1
- chalk: 5.3.0
- cli-table3: 0.6.3
- marked: 4.3.0
- node-emoji: 1.11.0
- supports-hyperlinks: 2.3.0
- dev: true
-
- /marked@4.3.0:
- resolution: {integrity: sha512-PRsaiG84bK+AMvxziE/lCFss8juXjNaWzVbN5tXAm4XjeaS9NAHhop+PjQxz2A9h8Q4M/xGmzP8vqNwy6JeK0A==}
- engines: {node: '>= 12'}
- hasBin: true
- dev: true
-
- /md5@2.2.1:
- resolution: {integrity: sha512-PlGG4z5mBANDGCKsYQe0CaUYHdZYZt8ZPZLmEt+Urf0W4GlpTX4HescwHU+dc9+Z/G/vZKYZYFrwgm9VxK6QOQ==}
- dependencies:
- charenc: 0.0.2
- crypt: 0.0.2
- is-buffer: 1.1.6
- dev: true
-
- /mdn-data@2.0.28:
- resolution: {integrity: sha512-aylIc7Z9y4yzHYAJNuESG3hfhC+0Ibp/MAMiaOZgNv4pmEdFyfZhhhny4MNiAfWdBQ1RQ2mfDWmM1x8SvGyp8g==}
- dev: true
-
- /mdn-data@2.0.30:
- resolution: {integrity: sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==}
- dev: true
-
- /media-typer@0.3.0:
- resolution: {integrity: sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==}
- engines: {node: '>= 0.6'}
-
- /media-typer@1.1.0:
- resolution: {integrity: sha512-aisnrDP4GNe06UcKFnV5bfMNPBUw4jsLGaWwWfnH3v02GnBuXX2MCVn5RbrWo0j3pczUilYblq7fQ7Nw2t5XKw==}
- engines: {node: '>= 0.8'}
-
- /mem@8.1.1:
- resolution: {integrity: sha512-qFCFUDs7U3b8mBDPyz5EToEKoAkgCzqquIgi9nkkR9bixxOVOre+09lbuH7+9Kn2NFpm56M3GUWVbU2hQgdACA==}
- engines: {node: '>=10'}
- dependencies:
- map-age-cleaner: 0.1.3
- mimic-fn: 3.1.0
- dev: true
-
- /memfs@3.5.3:
- resolution: {integrity: sha512-UERzLsxzllchadvbPs5aolHh65ISpKpM+ccLbOJ8/vvpBKmAWf+la7dXFy7Mr0ySHbdHrFv5kGFCUHHe6GFEmw==}
- engines: {node: '>= 4.0.0'}
- dependencies:
- fs-monkey: 1.0.5
-
- /memory-cache@0.2.0:
- resolution: {integrity: sha512-OcjA+jzjOYzKmKS6IQVALHLVz+rNTMPoJvCztFaZxwG14wtAW7VRZjwTQu06vKCYOxh4jVnik7ya0SXTB0W+xA==}
- dev: true
-
- /merge-descriptors@1.0.1:
- resolution: {integrity: sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==}
- dev: true
-
- /merge-stream@2.0.0:
- resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==}
-
- /merge2@1.4.1:
- resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==}
- engines: {node: '>= 8'}
-
- /methods@1.1.2:
- resolution: {integrity: sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==}
- engines: {node: '>= 0.6'}
- dev: true
-
- /micromatch@3.1.10:
- resolution: {integrity: sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==}
- engines: {node: '>=0.10.0'}
- dependencies:
- arr-diff: 4.0.0
- array-unique: 0.3.2
- braces: 2.3.2
- define-property: 2.0.2
- extend-shallow: 3.0.2
- extglob: 2.0.4
- fragment-cache: 0.2.1
- kind-of: 6.0.3
- nanomatch: 1.2.13
- object.pick: 1.3.0
- regex-not: 1.0.2
- snapdragon: 0.8.2
- to-regex: 3.0.2
- transitivePeerDependencies:
- - supports-color
- dev: true
-
- /micromatch@4.0.5:
- resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==}
- engines: {node: '>=8.6'}
- dependencies:
- braces: 3.0.2
- picomatch: 2.3.1
-
- /mime-db@1.52.0:
- resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==}
- engines: {node: '>= 0.6'}
-
- /mime-kind@3.0.0:
- resolution: {integrity: sha512-sx9lClVP7GXY2mO3aVDWTQLhfvAdDvNhGi3o3g7+ae3aKaoybeGbEIlnreoRKjrbDpvlPltlkIryxOtatojeXQ==}
- engines: {node: '>=8.3.0'}
- dependencies:
- file-type: 12.4.2
- mime-types: 2.1.35
- dev: false
-
- /mime-types@2.1.35:
- resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==}
- engines: {node: '>= 0.6'}
- dependencies:
- mime-db: 1.52.0
-
- /mime@1.6.0:
- resolution: {integrity: sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==}
- engines: {node: '>=4'}
- hasBin: true
-
- /mime@2.6.0:
- resolution: {integrity: sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==}
- engines: {node: '>=4.0.0'}
- hasBin: true
- dev: true
-
- /mimic-fn@2.1.0:
- resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==}
- engines: {node: '>=6'}
-
- /mimic-fn@3.1.0:
- resolution: {integrity: sha512-Ysbi9uYW9hFyfrThdDEQuykN4Ey6BuwPD2kpI5ES/nFTDn/98yxYNLZJcgUAKPT/mcrLLKaGzJR9YVxJrIdASQ==}
- engines: {node: '>=8'}
- dev: true
-
- /mimic-fn@4.0.0:
- resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==}
- engines: {node: '>=12'}
- dev: true
-
- /mimic-response@1.0.1:
- resolution: {integrity: sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==}
- engines: {node: '>=4'}
- dev: false
-
- /mimic-response@3.1.0:
- resolution: {integrity: sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==}
- engines: {node: '>=10'}
- dev: false
-
- /min-indent@1.0.1:
- resolution: {integrity: sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==}
- engines: {node: '>=4'}
- dev: true
-
- /mini-css-extract-plugin@2.7.6(webpack@5.88.2):
- resolution: {integrity: sha512-Qk7HcgaPkGG6eD77mLvZS1nmxlao3j+9PkrT9Uc7HAE1id3F41+DdBRYRYkbyfNRGzm8/YWtzhw7nVPmwhqTQw==}
- engines: {node: '>= 12.13.0'}
- peerDependencies:
- webpack: ^5.0.0
- dependencies:
- schema-utils: 4.2.0
- webpack: 5.88.2(webpack-cli@5.1.4)
- dev: true
-
- /minimalistic-assert@1.0.1:
- resolution: {integrity: sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==}
- dev: true
-
- /minimatch@3.1.2:
- resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==}
- dependencies:
- brace-expansion: 1.1.11
-
- /minimatch@5.1.6:
- resolution: {integrity: sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==}
- engines: {node: '>=10'}
- dependencies:
- brace-expansion: 2.0.1
-
- /minimist@1.2.8:
- resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==}
-
- /minipass-collect@1.0.2:
- resolution: {integrity: sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==}
- engines: {node: '>= 8'}
- requiresBuild: true
- dependencies:
- minipass: 3.3.6
- dev: false
- optional: true
-
- /minipass-fetch@1.4.1:
- resolution: {integrity: sha512-CGH1eblLq26Y15+Azk7ey4xh0J/XfJfrCox5LDJiKqI2Q2iwOLOKrlmIaODiSQS8d18jalF6y2K2ePUm0CmShw==}
- engines: {node: '>=8'}
- requiresBuild: true
- dependencies:
- minipass: 3.3.6
- minipass-sized: 1.0.3
- minizlib: 2.1.2
- optionalDependencies:
- encoding: 0.1.13
- dev: false
- optional: true
-
- /minipass-flush@1.0.5:
- resolution: {integrity: sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==}
- engines: {node: '>= 8'}
- requiresBuild: true
- dependencies:
- minipass: 3.3.6
- dev: false
- optional: true
-
- /minipass-pipeline@1.2.4:
- resolution: {integrity: sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==}
- engines: {node: '>=8'}
- requiresBuild: true
- dependencies:
- minipass: 3.3.6
- dev: false
- optional: true
-
- /minipass-sized@1.0.3:
- resolution: {integrity: sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==}
- engines: {node: '>=8'}
- requiresBuild: true
- dependencies:
- minipass: 3.3.6
- dev: false
- optional: true
-
- /minipass@3.3.6:
- resolution: {integrity: sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==}
- engines: {node: '>=8'}
- dependencies:
- yallist: 4.0.0
- dev: false
-
- /minipass@5.0.0:
- resolution: {integrity: sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==}
- engines: {node: '>=8'}
- dev: false
-
- /minizlib@2.1.2:
- resolution: {integrity: sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==}
- engines: {node: '>= 8'}
- dependencies:
- minipass: 3.3.6
- yallist: 4.0.0
- dev: false
-
- /mixin-deep@1.3.2:
- resolution: {integrity: sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==}
- engines: {node: '>=0.10.0'}
- dependencies:
- for-in: 1.0.2
- is-extendable: 1.0.1
- dev: true
-
- /mkdirp@0.5.6:
- resolution: {integrity: sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==}
- hasBin: true
- dependencies:
- minimist: 1.2.8
- dev: false
-
- /mkdirp@1.0.4:
- resolution: {integrity: sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==}
- engines: {node: '>=10'}
- hasBin: true
- dev: false
-
- /moment@2.29.4:
- resolution: {integrity: sha512-5LC9SOxjSc2HF6vO2CyuTDNivEdoz2IvyJJGj6X8DJ0eFyfszE0QiEd+iXmBvUP3WHxSjFH/vIsA0EN00cgr8w==}
- dev: false
-
- /mrm-core@7.1.13:
- resolution: {integrity: sha512-+AlsNuryLYw9HWqf+HBcNXULiwBEfcmb2VDccvYyg71x25bC8nJOn0YJA13x1PUUEF0aEbc5RTfqa6weMtRHaw==}
- engines: {node: '>=10.13'}
- dependencies:
- babel-code-frame: 6.26.0
- comment-json: 2.4.2
- detect-indent: 6.1.0
- editorconfig: 0.15.3
- find-up: 4.1.0
- fs-extra: 8.1.0
- kleur: 3.0.3
- listify: 1.0.3
- lodash: 4.17.21
- minimist: 1.2.8
- prop-ini: 0.0.2
- rc: 1.2.8
- readme-badger: 0.3.0
- semver: 6.3.1
- smpltmpl: 1.0.2
- split-lines: 2.1.0
- strip-bom: 4.0.0
- validate-npm-package-name: 3.0.0
- webpack-merge: 4.2.2
- yaml: 2.3.2
- dev: true
-
- /ms@2.0.0:
- resolution: {integrity: sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==}
-
- /ms@2.1.2:
- resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==}
-
- /ms@2.1.3:
- resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==}
-
- /multi-part-lite@1.0.0:
- resolution: {integrity: sha512-KxIRbBZZ45hoKX1ROD/19wJr0ql1bef1rE8Y1PCwD3PuNXV42pp7Wo8lEHYuAajoT4vfAFcd3rPjlkyEEyt1nw==}
- engines: {node: '>=8.3.0'}
- dev: false
-
- /multi-part@3.0.0:
- resolution: {integrity: sha512-pDbdYQ6DLDxAsD83w9R7r7rlW56cETL7hIB5bCWX7FJYw0K+kL5JwHr0I8tRk9lGeFcAzf+2OEzXWlG/4wCnFw==}
- engines: {node: '>=8.3.0'}
- dependencies:
- mime-kind: 3.0.0
- multi-part-lite: 1.0.0
- dev: false
-
- /multicast-dns@7.2.5:
- resolution: {integrity: sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg==}
- hasBin: true
- dependencies:
- dns-packet: 5.6.1
- thunky: 1.1.0
- dev: true
-
- /mustache@4.2.0:
- resolution: {integrity: sha512-71ippSywq5Yb7/tVYyGbkBggbU8H3u5Rz56fH60jGFgr8uHwxs+aSKeqmluIVzM0m0kB7xQjKS6qPfd0b2ZoqQ==}
- hasBin: true
-
- /mysql@2.18.1:
- resolution: {integrity: sha512-Bca+gk2YWmqp2Uf6k5NFEurwY/0td0cpebAucFpY/3jhrwrVGuxU2uQFCHjU19SJfje0yQvi+rVWdq78hR5lig==}
- engines: {node: '>= 0.6'}
- dependencies:
- bignumber.js: 9.0.0
- readable-stream: 2.3.7
- safe-buffer: 5.1.2
- sqlstring: 2.3.1
- dev: false
-
- /nanoid@3.3.6:
- resolution: {integrity: sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==}
- engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
- hasBin: true
- dev: true
-
- /nanomatch@1.2.13:
- resolution: {integrity: sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==}
- engines: {node: '>=0.10.0'}
- dependencies:
- arr-diff: 4.0.0
- array-unique: 0.3.2
- define-property: 2.0.2
- extend-shallow: 3.0.2
- fragment-cache: 0.2.1
- is-windows: 1.0.2
- kind-of: 6.0.3
- object.pick: 1.3.0
- regex-not: 1.0.2
- snapdragon: 0.8.2
- to-regex: 3.0.2
- transitivePeerDependencies:
- - supports-color
- dev: true
-
- /natural-compare-lite@1.4.0:
- resolution: {integrity: sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==}
- dev: true
-
- /natural-compare@1.4.0:
- resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==}
- dev: true
-
- /negotiator@0.6.3:
- resolution: {integrity: sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==}
- engines: {node: '>= 0.6'}
-
- /neo-async@2.6.2:
- resolution: {integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==}
- dev: true
-
- /nested-error-stacks@2.1.1:
- resolution: {integrity: sha512-9iN1ka/9zmX1ZvLV9ewJYEk9h7RyRRtqdK0woXcqohu8EWIerfPUjYJPg0ULy0UqP7cslmdGc8xKDJcojlKiaw==}
- dev: true
-
- /no-case@3.0.4:
- resolution: {integrity: sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==}
- dependencies:
- lower-case: 2.0.2
- tslib: 2.6.2
-
- /node-addon-api@4.3.0:
- resolution: {integrity: sha512-73sE9+3UaLYYFmDsFZnqCInzPyh3MqIwZO9cw58yIqAZhONrrabrYyYe3TuIqtIiOuTXVhsGau8hcrhhwSsDIQ==}
- dev: false
-
- /node-addon-api@5.1.0:
- resolution: {integrity: sha512-eh0GgfEkpnoWDq+VY8OyvYhFEzBk6jIYbRKdIlyTiAXIVJ8PyBaKb0rp7oDtoddbdoHWhq8wwr+XZ81F1rpNdA==}
- dev: false
-
- /node-emoji@1.11.0:
- resolution: {integrity: sha512-wo2DpQkQp7Sjm2A0cq+sN7EHKO6Sl0ctXeBdFZrL9T9+UywORbufTcTZxom8YqpLQt/FqNMUkOpkZrJVYSKD3A==}
- dependencies:
- lodash: 4.17.21
- dev: true
-
- /node-fetch@2.7.0:
- resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==}
- engines: {node: 4.x || >=6.0.0}
- peerDependencies:
- encoding: ^0.1.0
- peerDependenciesMeta:
- encoding:
- optional: true
- dependencies:
- whatwg-url: 5.0.0
- dev: false
-
- /node-forge@1.3.1:
- resolution: {integrity: sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==}
- engines: {node: '>= 6.13.0'}
- dev: true
-
- /node-gyp@8.4.1:
- resolution: {integrity: sha512-olTJRgUtAb/hOXG0E93wZDs5YiJlgbXxTwQAFHyNlRsXQnYzUaF2aGgujZbw+hR8aF4ZG/rST57bWMWD16jr9w==}
- engines: {node: '>= 10.12.0'}
- hasBin: true
- requiresBuild: true
- dependencies:
- env-paths: 2.2.1
- glob: 7.2.3
- graceful-fs: 4.2.11
- make-fetch-happen: 9.1.0
- nopt: 5.0.0
- npmlog: 6.0.2
- rimraf: 3.0.2
- semver: 7.5.4
- tar: 6.2.0
- which: 2.0.2
+ colorette: 2.0.19
+ commander: 10.0.1
+ debug: 4.3.4
+ escalade: 3.1.2
+ esm: 3.2.25
+ get-package-type: 0.1.0
+ getopts: 2.3.0
+ interpret: 2.2.0
+ lodash: 4.17.21
+ mysql: 2.18.1
+ pg: 8.11.3
+ pg-connection-string: 2.6.2
+ rechoir: 0.8.0
+ resolve-from: 5.0.0
+ sqlite3: 5.1.7
+ tarn: 3.0.2
+ tildify: 2.0.0
transitivePeerDependencies:
- - bluebird
- supports-color
dev: false
- optional: true
-
- /node-releases@2.0.13:
- resolution: {integrity: sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==}
- dev: true
-
- /node-repl-await@0.1.2:
- resolution: {integrity: sha512-e03zlI31RjF6Ks9+/ju0gY55dZSm21XXMSzy85FGZtDxuAZCa/iQwzWoQjmZvaolQCrIjzs0e4shxZs1bxbpUg==}
- dependencies:
- acorn: 8.10.0
- acorn-class-fields: 1.0.0(acorn@8.10.0)
- acorn-private-methods: 1.0.0(acorn@8.10.0)
- acorn-static-class-features: 1.0.0(acorn@8.10.0)
- acorn-walk: 8.2.0
- dev: false
-
- /nodemailer@6.9.5:
- resolution: {integrity: sha512-/dmdWo62XjumuLc5+AYQZeiRj+PRR8y8qKtFCOyuOl1k/hckZd8durUUHs/ucKx6/8kN+wFxqKJlQ/LK/qR5FA==}
- engines: {node: '>=6.0.0'}
- dev: false
-
- /nopt@5.0.0:
- resolution: {integrity: sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==}
- engines: {node: '>=6'}
- hasBin: true
- dependencies:
- abbrev: 1.1.1
- dev: false
- /normalize-package-data@2.5.0:
- resolution: {integrity: sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==}
+ /levn@0.4.1:
+ resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==}
+ engines: {node: '>= 0.8.0'}
dependencies:
- hosted-git-info: 2.8.9
- resolve: 1.22.6
- semver: 5.7.2
- validate-npm-package-license: 3.0.4
+ prelude-ls: 1.2.1
+ type-check: 0.4.0
dev: true
- /normalize-path@3.0.0:
- resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==}
- engines: {node: '>=0.10.0'}
+ /lines-and-columns@1.2.4:
+ resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==}
dev: true
- /normalize-url@6.1.0:
- resolution: {integrity: sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==}
- engines: {node: '>=10'}
-
- /npm-run-path@4.0.1:
- resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==}
+ /locate-path@5.0.0:
+ resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==}
engines: {node: '>=8'}
dependencies:
- path-key: 3.1.1
+ p-locate: 4.1.0
dev: true
- /npm-run-path@5.1.0:
- resolution: {integrity: sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==}
- engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+ /locate-path@6.0.0:
+ resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==}
+ engines: {node: '>=10'}
dependencies:
- path-key: 4.0.0
+ p-locate: 5.0.0
dev: true
- /npmlog@5.0.1:
- resolution: {integrity: sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==}
- dependencies:
- are-we-there-yet: 2.0.0
- console-control-strings: 1.1.0
- gauge: 3.0.2
- set-blocking: 2.0.0
- dev: false
-
- /npmlog@6.0.2:
- resolution: {integrity: sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==}
- engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0}
- requiresBuild: true
+ /locate-path@7.2.0:
+ resolution: {integrity: sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
dependencies:
- are-we-there-yet: 3.0.1
- console-control-strings: 1.1.0
- gauge: 4.0.4
- set-blocking: 2.0.0
- dev: false
- optional: true
+ p-locate: 6.0.0
- /nth-check@2.1.1:
- resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==}
- dependencies:
- boolbase: 1.0.0
+ /lodash.merge@4.6.2:
+ resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==}
dev: true
- /object-assign@4.1.1:
- resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==}
- engines: {node: '>=0.10.0'}
+ /lodash@4.17.21:
+ resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==}
- /object-copy@0.1.0:
- resolution: {integrity: sha512-79LYn6VAb63zgtmAteVOWo9Vdj71ZVBy3Pbse+VqxDpEP83XuujMrGqHIwAXJ5I/aM0zU7dIyIAhifVTPrNItQ==}
- engines: {node: '>=0.10.0'}
+ /log-update@6.0.0:
+ resolution: {integrity: sha512-niTvB4gqvtof056rRIrTZvjNYE4rCUzO6X/X+kYjd7WFxXeJ0NwEFnRxX6ehkvv3jTwrXnNdtAak5XYZuIyPFw==}
+ engines: {node: '>=18'}
dependencies:
- copy-descriptor: 0.1.1
- define-property: 0.2.5
- kind-of: 3.2.2
- dev: true
-
- /object-inspect@1.12.3:
- resolution: {integrity: sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==}
-
- /object-keys@1.1.1:
- resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==}
- engines: {node: '>= 0.4'}
- dev: true
+ ansi-escapes: 6.2.0
+ cli-cursor: 4.0.0
+ slice-ansi: 7.1.0
+ strip-ansi: 7.1.0
+ wrap-ansi: 9.0.0
- /object-visit@1.0.1:
- resolution: {integrity: sha512-GBaMwwAVK9qbQN3Scdo0OyvgPW7l3lnaVMj84uTOZlswkX0KpF6fyDBJhtTthf7pymztoN36/KEr1DyhF96zEA==}
- engines: {node: '>=0.10.0'}
- dependencies:
- isobject: 3.0.1
- dev: true
+ /lowercase-keys@3.0.0:
+ resolution: {integrity: sha512-ozCC6gdQ+glXOQsveKD0YsDy8DSQFjDTz4zyzEHNV5+JP5D62LmfDZ6o1cycFx9ouG940M5dE8C8CTewdj2YWQ==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+ dev: false
- /object.assign@4.1.4:
- resolution: {integrity: sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==}
- engines: {node: '>= 0.4'}
+ /lru-cache@6.0.0:
+ resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==}
+ engines: {node: '>=10'}
dependencies:
- call-bind: 1.0.2
- define-properties: 1.2.1
- has-symbols: 1.0.3
- object-keys: 1.1.1
- dev: true
+ yallist: 4.0.0
- /object.fromentries@2.0.7:
- resolution: {integrity: sha512-UPbPHML6sL8PI/mOqPwsH4G6iyXcCGzLin8KvEPenOZN5lpCNBZZQ+V62vdjB1mQHrmqGQt5/OJzemUA+KJmEA==}
- engines: {node: '>= 0.4'}
- dependencies:
- call-bind: 1.0.2
- define-properties: 1.2.1
- es-abstract: 1.22.2
- dev: true
+ /luxon@3.4.4:
+ resolution: {integrity: sha512-zobTr7akeGHnv7eBOXcRgMeCP6+uyYsczwmeRCauvpvaAltgNyTbLH/+VaEAPUeWBT+1GuNmz4wC/6jtQzbbVA==}
+ engines: {node: '>=12'}
+ dev: false
- /object.groupby@1.0.1:
- resolution: {integrity: sha512-HqaQtqLnp/8Bn4GL16cj+CUYbnpe1bh0TtEaWvybszDG4tgxCJuRpV8VGuvNaI1fAnI4lUJzDG55MXcOH4JZcQ==}
+ /make-dir@3.1.0:
+ resolution: {integrity: sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==}
+ engines: {node: '>=8'}
dependencies:
- call-bind: 1.0.2
- define-properties: 1.2.1
- es-abstract: 1.22.2
- get-intrinsic: 1.2.1
- dev: true
+ semver: 6.3.1
- /object.pick@1.3.0:
- resolution: {integrity: sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ==}
- engines: {node: '>=0.10.0'}
- dependencies:
- isobject: 3.0.1
+ /make-error@1.3.6:
+ resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==}
dev: true
- /object.values@1.1.7:
- resolution: {integrity: sha512-aU6xnDFYT3x17e/f0IiiwlGPTy2jzMySGfUB4fq6z7CV8l85CWHDk5ErhyhpfDHhrOMwGFhSQkhMGHaIotA6Ng==}
- engines: {node: '>= 0.4'}
+ /make-fetch-happen@9.1.0:
+ resolution: {integrity: sha512-+zopwDy7DNknmwPQplem5lAZX/eCOzSvSNNcSKm5eVwTkOBzoktEfXsa9L23J/GIRhxRsaxzkPEhrJEpE2F4Gg==}
+ engines: {node: '>= 10'}
+ requiresBuild: true
dependencies:
- call-bind: 1.0.2
- define-properties: 1.2.1
- es-abstract: 1.22.2
- dev: true
-
- /obuf@1.1.2:
- resolution: {integrity: sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==}
- dev: true
-
- /on-exit-leak-free@2.1.0:
- resolution: {integrity: sha512-VuCaZZAjReZ3vUwgOB8LxAosIurDiAW0s13rI1YwmaP++jvcxP77AWoQvenZebpCA2m8WC1/EosPYPMjnRAp/w==}
+ agentkeepalive: 4.5.0
+ cacache: 15.3.0
+ http-cache-semantics: 4.1.1
+ http-proxy-agent: 4.0.1
+ https-proxy-agent: 5.0.1
+ is-lambda: 1.0.1
+ lru-cache: 6.0.0
+ minipass: 3.3.6
+ minipass-collect: 1.0.2
+ minipass-fetch: 1.4.1
+ minipass-flush: 1.0.5
+ minipass-pipeline: 1.2.4
+ negotiator: 0.6.3
+ promise-retry: 2.0.1
+ socks-proxy-agent: 6.2.1
+ ssri: 8.0.1
+ transitivePeerDependencies:
+ - bluebird
+ - supports-color
+ dev: false
+ optional: true
- /on-finished@2.4.1:
- resolution: {integrity: sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==}
- engines: {node: '>= 0.8'}
- dependencies:
- ee-first: 1.1.1
+ /media-typer@0.3.0:
+ resolution: {integrity: sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==}
+ engines: {node: '>= 0.6'}
- /on-headers@1.0.2:
- resolution: {integrity: sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==}
+ /media-typer@1.1.0:
+ resolution: {integrity: sha512-aisnrDP4GNe06UcKFnV5bfMNPBUw4jsLGaWwWfnH3v02GnBuXX2MCVn5RbrWo0j3pczUilYblq7fQ7Nw2t5XKw==}
engines: {node: '>= 0.8'}
- dev: true
- /once@1.4.0:
- resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==}
+ /memoize@10.0.0:
+ resolution: {integrity: sha512-H6cBLgsi6vMWOcCpvVCdFFnl3kerEXbrYh9q+lY6VXvQSmM6CkmV08VOwT+WE2tzIEqRPFfAq3fm4v/UIW6mSA==}
+ engines: {node: '>=18'}
dependencies:
- wrappy: 1.0.2
+ mimic-function: 5.0.0
- /onetime@5.1.2:
- resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==}
- engines: {node: '>=6'}
- dependencies:
- mimic-fn: 2.1.0
+ /merge-stream@2.0.0:
+ resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==}
- /onetime@6.0.0:
- resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==}
- engines: {node: '>=12'}
- dependencies:
- mimic-fn: 4.0.0
- dev: true
+ /merge2@1.4.1:
+ resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==}
+ engines: {node: '>= 8'}
- /open@8.4.2:
- resolution: {integrity: sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==}
- engines: {node: '>=12'}
+ /micromatch@4.0.5:
+ resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==}
+ engines: {node: '>=8.6'}
dependencies:
- define-lazy-prop: 2.0.0
- is-docker: 2.2.1
- is-wsl: 2.2.0
- dev: true
+ braces: 3.0.2
+ picomatch: 2.3.1
- /open@9.1.0:
- resolution: {integrity: sha512-OS+QTnw1/4vrf+9hh1jc1jnYjzSG4ttTBB8UxOwAnInG3Uo4ssetzC1ihqaIHjLJnA5GGlRl6QlZXOTQhRBUvg==}
- engines: {node: '>=14.16'}
- dependencies:
- default-browser: 4.0.0
- define-lazy-prop: 3.0.0
- is-inside-container: 1.0.0
- is-wsl: 2.2.0
- dev: true
+ /mime-db@1.52.0:
+ resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==}
+ engines: {node: '>= 0.6'}
- /openapi-schema-validator@3.0.3:
- resolution: {integrity: sha512-KKpeNEvAmpy6B2JCfyrM4yWjL6vggDCVbBoR8Yfkj0Jltc6PCW+dBbcg+1yrTCuDv80qBQJ6w0ejA71DlOFegA==}
+ /mime-types@2.1.35:
+ resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==}
+ engines: {node: '>= 0.6'}
dependencies:
- ajv: 6.12.6
- lodash.merge: 4.6.2
- openapi-types: 1.3.4
- swagger-schema-official: 2.0.0-bab6bed
- dev: true
-
- /openapi-types@1.3.4:
- resolution: {integrity: sha512-h8rADpW3k/wepLdERKF0VKMAPdoFYNQCLGPmc/f8sgQ2dxUy+7sY4WAX2XDUDjhKTjbJVbxxofLkzy7f1/tE4g==}
- dev: true
-
- /openapi-types@12.1.3:
- resolution: {integrity: sha512-N4YtSYJqghVu4iek2ZUvcN/0aqH1kRDuNqzcycDxhOUpg7GdvLa2F3DgS6yBNhInhv2r/6I0Flkn7CqL8+nIcw==}
- dev: true
+ mime-db: 1.52.0
- /optionator@0.9.3:
- resolution: {integrity: sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==}
- engines: {node: '>= 0.8.0'}
- dependencies:
- '@aashutoshrathi/word-wrap': 1.2.6
- deep-is: 0.1.4
- fast-levenshtein: 2.0.6
- levn: 0.4.1
- prelude-ls: 1.2.1
- type-check: 0.4.0
- dev: true
+ /mime@1.6.0:
+ resolution: {integrity: sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==}
+ engines: {node: '>=4'}
+ hasBin: true
+ dev: false
- /p-all@2.1.0:
- resolution: {integrity: sha512-HbZxz5FONzz/z2gJfk6bFca0BCiSRF8jU3yCsWOen/vR6lZjfPOu/e7L3uFzTW1i0H8TlC3vqQstEJPQL4/uLA==}
+ /mimic-fn@2.1.0:
+ resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==}
engines: {node: '>=6'}
- dependencies:
- p-map: 2.1.0
- dev: true
- /p-cancelable@2.1.1:
- resolution: {integrity: sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==}
- engines: {node: '>=8'}
- dev: false
+ /mimic-fn@4.0.0:
+ resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==}
+ engines: {node: '>=12'}
- /p-defer@1.0.0:
- resolution: {integrity: sha512-wB3wfAxZpk2AzOfUMJNL+d36xothRSyj8EXOa4f6GMqYDN9BJaaSISbsk+wS9abmnebVw95C2Kb5t85UmpCxuw==}
- engines: {node: '>=4'}
- dev: true
+ /mimic-function@5.0.0:
+ resolution: {integrity: sha512-RBfQ+9X9DpXdEoK7Bu+KeEU6vFhumEIiXKWECPzRBmDserEq4uR2b/VCm0LwpMSosoq2k+Zuxj/GzOr0Fn6h/g==}
+ engines: {node: '>=18'}
- /p-event@4.2.0:
- resolution: {integrity: sha512-KXatOjCRXXkSePPb1Nbi0p0m+gQAwdlbhi4wQKJPI1HsMQS9g+Sqp2o+QHziPr7eYJyOZet836KoHEVM1mwOrQ==}
- engines: {node: '>=8'}
- dependencies:
- p-timeout: 3.2.0
- dev: true
+ /mimic-response@3.1.0:
+ resolution: {integrity: sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==}
+ engines: {node: '>=10'}
+ dev: false
- /p-filter@2.1.0:
- resolution: {integrity: sha512-ZBxxZ5sL2HghephhpGAQdoskxplTwr7ICaehZwLIlfL6acuVgZPm8yBNuRAFBGEqtD/hmUeq9eqLg2ys9Xr/yw==}
- engines: {node: '>=8'}
- dependencies:
- p-map: 2.1.0
- dev: true
+ /mimic-response@4.0.0:
+ resolution: {integrity: sha512-e5ISH9xMYU0DzrT+jl8q2ze9D6eWBto+I8CNpe+VI+K2J/F/k3PdkdTdz4wvGVH4NTpo+NRYTVIuMQEMMcsLqg==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+ dev: false
- /p-finally@1.0.0:
- resolution: {integrity: sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==}
+ /min-indent@1.0.1:
+ resolution: {integrity: sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==}
engines: {node: '>=4'}
dev: true
- /p-limit@2.3.0:
- resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==}
- engines: {node: '>=6'}
+ /minimatch@3.1.2:
+ resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==}
dependencies:
- p-try: 2.2.0
- dev: true
+ brace-expansion: 1.1.11
- /p-limit@3.1.0:
- resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==}
+ /minimatch@5.1.6:
+ resolution: {integrity: sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==}
engines: {node: '>=10'}
dependencies:
- yocto-queue: 0.1.0
- dev: true
+ brace-expansion: 2.0.1
+ dev: false
- /p-locate@3.0.0:
- resolution: {integrity: sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==}
- engines: {node: '>=6'}
+ /minimatch@9.0.3:
+ resolution: {integrity: sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==}
+ engines: {node: '>=16 || 14 >=14.17'}
dependencies:
- p-limit: 2.3.0
- dev: true
+ brace-expansion: 2.0.1
- /p-locate@4.1.0:
- resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==}
- engines: {node: '>=8'}
- dependencies:
- p-limit: 2.3.0
- dev: true
+ /minimist@1.2.8:
+ resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==}
- /p-locate@5.0.0:
- resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==}
- engines: {node: '>=10'}
+ /minipass-collect@1.0.2:
+ resolution: {integrity: sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==}
+ engines: {node: '>= 8'}
+ requiresBuild: true
dependencies:
- p-limit: 3.1.0
- dev: true
-
- /p-map@2.1.0:
- resolution: {integrity: sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==}
- engines: {node: '>=6'}
- dev: true
+ minipass: 3.3.6
+ dev: false
+ optional: true
- /p-map@3.0.0:
- resolution: {integrity: sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==}
+ /minipass-fetch@1.4.1:
+ resolution: {integrity: sha512-CGH1eblLq26Y15+Azk7ey4xh0J/XfJfrCox5LDJiKqI2Q2iwOLOKrlmIaODiSQS8d18jalF6y2K2ePUm0CmShw==}
engines: {node: '>=8'}
+ requiresBuild: true
dependencies:
- aggregate-error: 3.1.0
- dev: true
+ minipass: 3.3.6
+ minipass-sized: 1.0.3
+ minizlib: 2.1.2
+ optionalDependencies:
+ encoding: 0.1.13
+ dev: false
+ optional: true
- /p-map@4.0.0:
- resolution: {integrity: sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==}
- engines: {node: '>=10'}
+ /minipass-flush@1.0.5:
+ resolution: {integrity: sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==}
+ engines: {node: '>= 8'}
requiresBuild: true
dependencies:
- aggregate-error: 3.1.0
+ minipass: 3.3.6
dev: false
optional: true
- /p-retry@4.6.2:
- resolution: {integrity: sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==}
+ /minipass-pipeline@1.2.4:
+ resolution: {integrity: sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==}
engines: {node: '>=8'}
+ requiresBuild: true
dependencies:
- '@types/retry': 0.12.0
- retry: 0.13.1
- dev: true
+ minipass: 3.3.6
+ dev: false
+ optional: true
- /p-timeout@3.2.0:
- resolution: {integrity: sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg==}
+ /minipass-sized@1.0.3:
+ resolution: {integrity: sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==}
engines: {node: '>=8'}
+ requiresBuild: true
dependencies:
- p-finally: 1.0.0
- dev: true
-
- /p-try@2.2.0:
- resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==}
- engines: {node: '>=6'}
- dev: true
-
- /packet-reader@1.0.0:
- resolution: {integrity: sha512-HAKu/fG3HpHFO0AA8WE8q2g+gBJaZ9MG7fcKk+IJPLTGAD6Psw4443l+9DGRbOIh3/aXr7Phy0TjilYivJo5XQ==}
+ minipass: 3.3.6
dev: false
+ optional: true
- /param-case@3.0.4:
- resolution: {integrity: sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==}
- dependencies:
- dot-case: 3.0.4
- tslib: 2.6.2
-
- /parent-module@1.0.1:
- resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==}
- engines: {node: '>=6'}
+ /minipass@3.3.6:
+ resolution: {integrity: sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==}
+ engines: {node: '>=8'}
dependencies:
- callsites: 3.1.0
- dev: true
+ yallist: 4.0.0
- /parent-module@2.0.0:
- resolution: {integrity: sha512-uo0Z9JJeWzv8BG+tRcapBKNJ0dro9cLyczGzulS6EfeyAdeC9sbojtW6XwvYxJkEne9En+J2XEl4zyglVeIwFg==}
+ /minipass@5.0.0:
+ resolution: {integrity: sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==}
engines: {node: '>=8'}
- dependencies:
- callsites: 3.1.0
- dev: true
- /parse-imports@0.0.5:
- resolution: {integrity: sha512-yA6mDNotJmyAXcEdi2AjiHfI8Llk+/uv/jgBgvzFVP8iGaHC5L3rR6VQk/1qEE3SvLUsDQ2GdQMfPTi0qrmt8Q==}
- engines: {node: '>= 10'}
+ /minizlib@2.1.2:
+ resolution: {integrity: sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==}
+ engines: {node: '>= 8'}
dependencies:
- es-module-lexer: 0.3.26
- slashes: 2.0.2
+ minipass: 3.3.6
+ yallist: 4.0.0
+
+ /mkdirp-classic@0.5.3:
+ resolution: {integrity: sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==}
dev: false
- /parse-json@5.2.0:
- resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==}
- engines: {node: '>=8'}
+ /mkdirp@0.5.6:
+ resolution: {integrity: sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==}
+ hasBin: true
dependencies:
- '@babel/code-frame': 7.22.13
- error-ex: 1.3.2
- json-parse-even-better-errors: 2.3.1
- lines-and-columns: 1.2.4
- dev: true
-
- /parseurl@1.3.3:
- resolution: {integrity: sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==}
- engines: {node: '>= 0.8'}
+ minimist: 1.2.8
+ dev: false
- /pascal-case@3.1.2:
- resolution: {integrity: sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==}
- dependencies:
- no-case: 3.0.4
- tslib: 2.6.2
+ /mkdirp@1.0.4:
+ resolution: {integrity: sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==}
+ engines: {node: '>=10'}
+ hasBin: true
- /pascalcase@0.1.1:
- resolution: {integrity: sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw==}
- engines: {node: '>=0.10.0'}
- dev: true
+ /mkdirp@3.0.1:
+ resolution: {integrity: sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg==}
+ engines: {node: '>=10'}
+ hasBin: true
- /path-browserify@1.0.1:
- resolution: {integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==}
+ /moment@2.30.1:
+ resolution: {integrity: sha512-uEmtNhbDOrWPFS+hdjFCBfy9f2YoyzRpwcl+DqpC6taX21FzsTLQVbMV/W7PzNSX6x/bhC1zA3c2UQ5NzH6how==}
dev: false
- /path-case@3.0.4:
- resolution: {integrity: sha512-qO4qCFjXqVTrcbPt/hQfhTQ+VhFsqNKOPtytgNKkKxSoEp3XPUQ8ObFuePylOIok5gjn69ry8XiULxCwot3Wfg==}
- dependencies:
- dot-case: 3.0.4
- tslib: 2.6.2
+ /ms@2.0.0:
+ resolution: {integrity: sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==}
+ dev: false
- /path-dirname@1.0.2:
- resolution: {integrity: sha512-ALzNPpyNq9AqXMBjeymIjFDAkAFH06mHJH/cSBHAgU0s4vfpBn6b2nf8tiRLvagKD8RbTpq2FKTBg7cl9l3c7Q==}
- dev: true
+ /ms@2.1.2:
+ resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==}
- /path-exists@3.0.0:
- resolution: {integrity: sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==}
- engines: {node: '>=4'}
- dev: true
+ /ms@2.1.3:
+ resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==}
- /path-exists@4.0.0:
- resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==}
- engines: {node: '>=8'}
- dev: true
+ /mustache@4.2.0:
+ resolution: {integrity: sha512-71ippSywq5Yb7/tVYyGbkBggbU8H3u5Rz56fH60jGFgr8uHwxs+aSKeqmluIVzM0m0kB7xQjKS6qPfd0b2ZoqQ==}
+ hasBin: true
- /path-is-absolute@1.0.1:
- resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==}
- engines: {node: '>=0.10.0'}
- requiresBuild: true
+ /mysql@2.18.1:
+ resolution: {integrity: sha512-Bca+gk2YWmqp2Uf6k5NFEurwY/0td0cpebAucFpY/3jhrwrVGuxU2uQFCHjU19SJfje0yQvi+rVWdq78hR5lig==}
+ engines: {node: '>= 0.6'}
+ dependencies:
+ bignumber.js: 9.0.0
+ readable-stream: 2.3.7
+ safe-buffer: 5.1.2
+ sqlstring: 2.3.1
+ dev: false
- /path-is-inside@1.0.2:
- resolution: {integrity: sha512-DUWJr3+ULp4zXmol/SZkFf3JGsS9/SIv+Y3Rt93/UjPpDpklB5f1er4O3POIbUuUJ3FXgqte2Q7SrU6zAqwk8w==}
+ /nanoid@3.3.7:
+ resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==}
+ engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
+ hasBin: true
dev: true
- /path-key@3.1.1:
- resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==}
- engines: {node: '>=8'}
- dev: true
+ /napi-build-utils@1.0.2:
+ resolution: {integrity: sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==}
+ dev: false
- /path-key@4.0.0:
- resolution: {integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==}
- engines: {node: '>=12'}
+ /natural-compare@1.4.0:
+ resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==}
dev: true
- /path-parse@1.0.7:
- resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==}
-
- /path-to-regexp@0.1.7:
- resolution: {integrity: sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==}
- dev: true
+ /negotiator@0.6.3:
+ resolution: {integrity: sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==}
+ engines: {node: '>= 0.6'}
- /path-type@3.0.0:
- resolution: {integrity: sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==}
- engines: {node: '>=4'}
+ /node-abi@3.54.0:
+ resolution: {integrity: sha512-p7eGEiQil0YUV3ItH4/tBb781L5impVmmx2E9FRKF7d18XXzp4PGT2tdYMFY6wQqgxD0IwNZOiSJ0/K0fSi/OA==}
+ engines: {node: '>=10'}
dependencies:
- pify: 3.0.0
- dev: true
+ semver: 7.6.0
+ dev: false
- /path-type@4.0.0:
- resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==}
- engines: {node: '>=8'}
- dev: true
+ /node-addon-api@5.1.0:
+ resolution: {integrity: sha512-eh0GgfEkpnoWDq+VY8OyvYhFEzBk6jIYbRKdIlyTiAXIVJ8PyBaKb0rp7oDtoddbdoHWhq8wwr+XZ81F1rpNdA==}
- /pathval@1.1.1:
- resolution: {integrity: sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==}
- dev: true
+ /node-addon-api@7.1.0:
+ resolution: {integrity: sha512-mNcltoe1R8o7STTegSOHdnJNN7s5EUvhoS7ShnTHDyOSd+8H+UdWODq6qSv67PjC8Zc5JRT8+oLAMCr0SIXw7g==}
+ engines: {node: ^16 || ^18 || >= 20}
+ dev: false
- /peek-readable@4.1.0:
- resolution: {integrity: sha512-ZI3LnwUv5nOGbQzD9c2iDG6toheuXSZP5esSHBjopsXH4dg19soufvpUGA3uohi5anFtGb2lhAVdHzH6R/Evvg==}
- engines: {node: '>=8'}
+ /node-fetch@2.7.0:
+ resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==}
+ engines: {node: 4.x || >=6.0.0}
+ peerDependencies:
+ encoding: ^0.1.0
+ peerDependenciesMeta:
+ encoding:
+ optional: true
+ dependencies:
+ whatwg-url: 5.0.0
- /pg-cloudflare@1.1.1:
- resolution: {integrity: sha512-xWPagP/4B6BgFO+EKz3JONXv3YDgvkbVrGw2mTo3D6tVDQRh1e7cqVGvyR3BE+eQgAvx1XhW/iEASj4/jCWl3Q==}
+ /node-gyp@8.4.1:
+ resolution: {integrity: sha512-olTJRgUtAb/hOXG0E93wZDs5YiJlgbXxTwQAFHyNlRsXQnYzUaF2aGgujZbw+hR8aF4ZG/rST57bWMWD16jr9w==}
+ engines: {node: '>= 10.12.0'}
+ hasBin: true
requiresBuild: true
+ dependencies:
+ env-paths: 2.2.1
+ glob: 7.2.3
+ graceful-fs: 4.2.11
+ make-fetch-happen: 9.1.0
+ nopt: 5.0.0
+ npmlog: 6.0.2
+ rimraf: 3.0.2
+ semver: 7.6.0
+ tar: 6.2.0
+ which: 2.0.2
+ transitivePeerDependencies:
+ - bluebird
+ - supports-color
dev: false
optional: true
- /pg-connection-string@2.6.1:
- resolution: {integrity: sha512-w6ZzNu6oMmIzEAYVw+RLK0+nqHPt8K3ZnknKi+g48Ak2pr3dtljJW3o+D/n2zzCG07Zoe9VOX3aiKpj+BN0pjg==}
- dev: false
-
- /pg-connection-string@2.6.2:
- resolution: {integrity: sha512-ch6OwaeaPYcova4kKZ15sbJ2hKb/VP48ZD2gE7i1J+L4MspCtBMAx8nMgz7bksc7IojCIIWuEhHibSMFH8m8oA==}
- dev: false
+ /node-releases@2.0.14:
+ resolution: {integrity: sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==}
+ dev: true
- /pg-int8@1.0.1:
- resolution: {integrity: sha512-WCtabS6t3c8SkpDBUlb1kjOs7l66xsGdKpIPZsg4wR+B3+u9UAum2odSsF9tnvxg80h4ZxLWMy4pRjOsFIqQpw==}
- engines: {node: '>=4.0.0'}
+ /nodemailer@6.9.9:
+ resolution: {integrity: sha512-dexTll8zqQoVJEZPwQAKzxxtFn0qTnjdQTchoU6Re9BUUGBJiOy3YMn/0ShTW6J5M0dfQ1NeDeRTTl4oIWgQMA==}
+ engines: {node: '>=6.0.0'}
dev: false
- /pg-pool@3.6.1(pg@8.11.1):
- resolution: {integrity: sha512-jizsIzhkIitxCGfPRzJn1ZdcosIt3pz9Sh3V01fm1vZnbnCMgmGl5wvGGdNN2EL9Rmb0EcFoCkixH4Pu+sP9Og==}
- peerDependencies:
- pg: '>=8.0'
+ /nopt@5.0.0:
+ resolution: {integrity: sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==}
+ engines: {node: '>=6'}
+ hasBin: true
+ dependencies:
+ abbrev: 1.1.1
+
+ /normalize-package-data@2.5.0:
+ resolution: {integrity: sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==}
dependencies:
- pg: 8.11.1
- dev: false
+ hosted-git-info: 2.8.9
+ resolve: 1.22.8
+ semver: 5.7.2
+ validate-npm-package-license: 3.0.4
+ dev: true
- /pg-protocol@1.6.0:
- resolution: {integrity: sha512-M+PDm637OY5WM307051+bsDia5Xej6d9IR4GwJse1qA1DIhiKlksvrneZOYQq42OM+spubpcNYEo2FcKQrDk+Q==}
- dev: false
+ /normalize-path@3.0.0:
+ resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==}
+ engines: {node: '>=0.10.0'}
- /pg-types@2.2.0:
- resolution: {integrity: sha512-qTAAlrEsl8s4OiEQY69wDvcMIdQN6wdz5ojQiOy6YRMuynxenON0O5oCpJI6lshc6scgAY8qvJ2On/p+CXY0GA==}
- engines: {node: '>=4'}
- dependencies:
- pg-int8: 1.0.1
- postgres-array: 2.0.0
- postgres-bytea: 1.0.0
- postgres-date: 1.0.7
- postgres-interval: 1.2.0
+ /normalize-url@8.0.0:
+ resolution: {integrity: sha512-uVFpKhj5MheNBJRTiMZ9pE/7hD1QTeEvugSJW/OmLzAp78PB5O6adfMNTvmfKhXBkvCzC+rqifWcVYpGFwTjnw==}
+ engines: {node: '>=14.16'}
dev: false
- /pg@8.11.1:
- resolution: {integrity: sha512-utdq2obft07MxaDg0zBJI+l/M3mBRfIpEN3iSemsz0G5F2/VXx+XzqF4oxrbIZXQxt2AZzIUzyVg/YM6xOP/WQ==}
- engines: {node: '>= 8.0.0'}
- peerDependencies:
- pg-native: '>=3.0.1'
- peerDependenciesMeta:
- pg-native:
- optional: true
+ /npm-run-path@5.2.0:
+ resolution: {integrity: sha512-W4/tgAXFqFA0iL7fk0+uQ3g7wkL8xJmx3XdK0VGb4cHW//eZTtKGvFBBoRKVTpY7n6ze4NL9ly7rgXcHufqXKg==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
dependencies:
- buffer-writer: 2.0.0
- packet-reader: 1.0.0
- pg-connection-string: 2.6.2
- pg-pool: 3.6.1(pg@8.11.1)
- pg-protocol: 1.6.0
- pg-types: 2.2.0
- pgpass: 1.0.5
- optionalDependencies:
- pg-cloudflare: 1.1.1
- dev: false
+ path-key: 4.0.0
- /pgpass@1.0.5:
- resolution: {integrity: sha512-FdW9r/jQZhSeohs1Z3sI1yxFQNFvMcnmfuj4WBMUTxOrAyLMaTcE1aAMBiTlbMNaXvBCQuVi0R7hd8udDSP7ug==}
+ /npmlog@5.0.1:
+ resolution: {integrity: sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==}
dependencies:
- split2: 4.2.0
- dev: false
+ are-we-there-yet: 2.0.0
+ console-control-strings: 1.1.0
+ gauge: 3.0.2
+ set-blocking: 2.0.0
- /phc-bcrypt@1.0.8:
- resolution: {integrity: sha512-k2Q1J+K4KOf47Uee7fqGFiu1nWKCqd17ks44U/WUHOZ4UvR2iRvkPpZtMQBLGbD82Ows/s+DiNhAMBOj7jPnrQ==}
- engines: {node: '>=12'}
+ /npmlog@6.0.2:
+ resolution: {integrity: sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==}
+ engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0}
+ requiresBuild: true
dependencies:
- '@kdf/salt': 2.0.1
- '@phc/format': 1.0.0
- bcrypt: 5.1.1
- tsse: 2.1.0
- transitivePeerDependencies:
- - encoding
- - supports-color
+ are-we-there-yet: 3.0.1
+ console-control-strings: 1.1.0
+ gauge: 4.0.4
+ set-blocking: 2.0.0
dev: false
+ optional: true
- /picocolors@1.0.0:
- resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==}
- dev: true
-
- /picomatch@2.3.1:
- resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==}
- engines: {node: '>=8.6'}
-
- /pify@2.3.0:
- resolution: {integrity: sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==}
+ /object-assign@4.1.1:
+ resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==}
engines: {node: '>=0.10.0'}
- dev: true
- /pify@3.0.0:
- resolution: {integrity: sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==}
- engines: {node: '>=4'}
- dev: true
+ /object-inspect@1.13.1:
+ resolution: {integrity: sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==}
- /pify@4.0.1:
- resolution: {integrity: sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==}
- engines: {node: '>=6'}
+ /object-keys@1.1.1:
+ resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==}
+ engines: {node: '>= 0.4'}
dev: true
- /pinkie-promise@2.0.1:
- resolution: {integrity: sha512-0Gni6D4UcLTbv9c57DfxDGdr41XfgUjqWZu492f0cIGr16zDU06BWP/RAEvOuo7CQ0CNjHaLlM59YJJFm3NWlw==}
- engines: {node: '>=0.10.0'}
+ /object.assign@4.1.5:
+ resolution: {integrity: sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==}
+ engines: {node: '>= 0.4'}
dependencies:
- pinkie: 2.0.4
+ call-bind: 1.0.5
+ define-properties: 1.2.1
+ has-symbols: 1.0.3
+ object-keys: 1.1.1
dev: true
- /pinkie@2.0.4:
- resolution: {integrity: sha512-MnUuEycAemtSaeFSjXKW/aroV7akBbY+Sv+RkyqFjgAe73F+MR0TBWKBRDkmfWq/HiFmdavfZ1G7h4SPZXaCSg==}
- engines: {node: '>=0.10.0'}
+ /object.fromentries@2.0.7:
+ resolution: {integrity: sha512-UPbPHML6sL8PI/mOqPwsH4G6iyXcCGzLin8KvEPenOZN5lpCNBZZQ+V62vdjB1mQHrmqGQt5/OJzemUA+KJmEA==}
+ engines: {node: '>= 0.4'}
+ dependencies:
+ call-bind: 1.0.5
+ define-properties: 1.2.1
+ es-abstract: 1.22.3
dev: true
- /pino-abstract-transport@1.1.0:
- resolution: {integrity: sha512-lsleG3/2a/JIWUtf9Q5gUNErBqwIu1tUKTT3dUzaf5DySw9ra1wcqKjJjLX1VTY64Wk1eEOYsVGSaGfCK85ekA==}
+ /object.groupby@1.0.1:
+ resolution: {integrity: sha512-HqaQtqLnp/8Bn4GL16cj+CUYbnpe1bh0TtEaWvybszDG4tgxCJuRpV8VGuvNaI1fAnI4lUJzDG55MXcOH4JZcQ==}
dependencies:
- readable-stream: 4.4.2
- split2: 4.2.0
+ call-bind: 1.0.5
+ define-properties: 1.2.1
+ es-abstract: 1.22.3
+ get-intrinsic: 1.2.2
+ dev: true
- /pino-pretty@10.2.0:
- resolution: {integrity: sha512-tRvpyEmGtc2D+Lr3FulIZ+R1baggQ4S3xD2Ar93KixFEDx6SEAUP3W5aYuEw1C73d6ROrNcB2IXLteW8itlwhA==}
- hasBin: true
+ /object.values@1.1.7:
+ resolution: {integrity: sha512-aU6xnDFYT3x17e/f0IiiwlGPTy2jzMySGfUB4fq6z7CV8l85CWHDk5ErhyhpfDHhrOMwGFhSQkhMGHaIotA6Ng==}
+ engines: {node: '>= 0.4'}
dependencies:
- colorette: 2.0.20
- dateformat: 4.6.3
- fast-copy: 3.0.1
- fast-safe-stringify: 2.1.1
- help-me: 4.2.0
- joycon: 3.1.1
- minimist: 1.2.8
- on-exit-leak-free: 2.1.0
- pino-abstract-transport: 1.1.0
- pump: 3.0.0
- readable-stream: 4.4.2
- secure-json-parse: 2.7.0
- sonic-boom: 3.4.0
- strip-json-comments: 3.1.1
+ call-bind: 1.0.5
+ define-properties: 1.2.1
+ es-abstract: 1.22.3
+ dev: true
- /pino-std-serializers@3.2.0:
- resolution: {integrity: sha512-EqX4pwDPrt3MuOAAUBMU0Tk5kR/YcCM5fNPEzgCO2zJ5HfX0vbiH9HbJglnyeQsN96Kznae6MWD47pZB5avTrg==}
+ /on-exit-leak-free@2.1.2:
+ resolution: {integrity: sha512-0eJJY6hXLGf1udHwfNftBqH+g73EU4B504nZeKpz1sYRKafAghwxEJunB2O7rDZkL4PGfsMVnTXZ2EjibbqcsA==}
+ engines: {node: '>=14.0.0'}
- /pino-std-serializers@6.2.2:
- resolution: {integrity: sha512-cHjPPsE+vhj/tnhCy/wiMh3M3z3h/j15zHQX+S9GkTBgqJuTuJzYJ4gUyACLhDaJ7kk9ba9iRDmbH2tJU03OiA==}
+ /on-finished@2.4.1:
+ resolution: {integrity: sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==}
+ engines: {node: '>= 0.8'}
+ dependencies:
+ ee-first: 1.1.1
- /pino@6.14.0:
- resolution: {integrity: sha512-iuhEDel3Z3hF9Jfe44DPXR8l07bhjuFY3GMHIXbjnY9XcafbyDDwl2sN2vw2GjMPf5Nkoe+OFao7ffn9SXaKDg==}
- hasBin: true
+ /once@1.4.0:
+ resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==}
dependencies:
- fast-redact: 3.3.0
- fast-safe-stringify: 2.1.1
- flatstr: 1.0.12
- pino-std-serializers: 3.2.0
- process-warning: 1.0.0
- quick-format-unescaped: 4.0.4
- sonic-boom: 1.4.1
+ wrappy: 1.0.2
- /pirates@4.0.6:
- resolution: {integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==}
- engines: {node: '>= 6'}
- dev: true
+ /onetime@5.1.2:
+ resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==}
+ engines: {node: '>=6'}
+ dependencies:
+ mimic-fn: 2.1.0
- /pkg-dir@4.2.0:
- resolution: {integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==}
- engines: {node: '>=8'}
+ /onetime@6.0.0:
+ resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==}
+ engines: {node: '>=12'}
dependencies:
- find-up: 4.1.0
- dev: true
+ mimic-fn: 4.0.0
- /pkg-up@3.1.0:
- resolution: {integrity: sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA==}
- engines: {node: '>=8'}
+ /optionator@0.9.3:
+ resolution: {integrity: sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==}
+ engines: {node: '>= 0.8.0'}
dependencies:
- find-up: 3.0.0
+ '@aashutoshrathi/word-wrap': 1.2.6
+ deep-is: 0.1.4
+ fast-levenshtein: 2.0.6
+ levn: 0.4.1
+ prelude-ls: 1.2.1
+ type-check: 0.4.0
dev: true
- /pluralize@8.0.0:
- resolution: {integrity: sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==}
- engines: {node: '>=4'}
-
- /posix-character-classes@0.1.1:
- resolution: {integrity: sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg==}
- engines: {node: '>=0.10.0'}
- dev: true
+ /p-cancelable@4.0.1:
+ resolution: {integrity: sha512-wBowNApzd45EIKdO1LaU+LrMBwAcjfPaYtVzV3lmfM3gf8Z4CHZsiIqlM8TZZ8okYvh5A1cP6gTfCRQtwUpaUg==}
+ engines: {node: '>=14.16'}
+ dev: false
- /postcss-calc@9.0.1(postcss@8.4.31):
- resolution: {integrity: sha512-TipgjGyzP5QzEhsOZUaIkeO5mKeMFpebWzRogWG/ysonUlnHcq5aJe0jOjpfzUU8PeSaBQnrE8ehR0QA5vs8PQ==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.2.2
+ /p-event@6.0.0:
+ resolution: {integrity: sha512-Xbfxd0CfZmHLGKXH32k1JKjQYX6Rkv0UtQdaFJ8OyNcf+c0oWCeXHc1C4CX/IESZLmcvfPa5aFIO/vCr5gqtag==}
+ engines: {node: '>=16.17'}
dependencies:
- postcss: 8.4.31
- postcss-selector-parser: 6.0.13
- postcss-value-parser: 4.2.0
- dev: true
+ p-timeout: 6.1.2
- /postcss-colormin@6.0.0(postcss@8.4.31):
- resolution: {integrity: sha512-EuO+bAUmutWoZYgHn2T1dG1pPqHU6L4TjzPlu4t1wZGXQ/fxV16xg2EJmYi0z+6r+MGV1yvpx1BHkUaRrPa2bw==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.2.15
+ /p-filter@3.0.0:
+ resolution: {integrity: sha512-QtoWLjXAW++uTX67HZQz1dbTpqBfiidsB6VtQUC9iR85S120+s0T5sO6s+B5MLzFcZkrEd/DGMmCjR+f2Qpxwg==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
dependencies:
- browserslist: 4.22.1
- caniuse-api: 3.0.0
- colord: 2.9.3
- postcss: 8.4.31
- postcss-value-parser: 4.2.0
- dev: true
+ p-map: 5.5.0
- /postcss-convert-values@6.0.0(postcss@8.4.31):
- resolution: {integrity: sha512-U5D8QhVwqT++ecmy8rnTb+RL9n/B806UVaS3m60lqle4YDFcpbS3ae5bTQIh3wOGUSDHSEtMYLs/38dNG7EYFw==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.2.15
+ /p-limit@2.3.0:
+ resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==}
+ engines: {node: '>=6'}
dependencies:
- browserslist: 4.22.1
- postcss: 8.4.31
- postcss-value-parser: 4.2.0
+ p-try: 2.2.0
dev: true
- /postcss-discard-comments@6.0.0(postcss@8.4.31):
- resolution: {integrity: sha512-p2skSGqzPMZkEQvJsgnkBhCn8gI7NzRH2683EEjrIkoMiwRELx68yoUJ3q3DGSGuQ8Ug9Gsn+OuDr46yfO+eFw==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.2.15
+ /p-limit@3.1.0:
+ resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==}
+ engines: {node: '>=10'}
dependencies:
- postcss: 8.4.31
+ yocto-queue: 0.1.0
dev: true
- /postcss-discard-duplicates@6.0.0(postcss@8.4.31):
- resolution: {integrity: sha512-bU1SXIizMLtDW4oSsi5C/xHKbhLlhek/0/yCnoMQany9k3nPBq+Ctsv/9oMmyqbR96HYHxZcHyK2HR5P/mqoGA==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.2.15
+ /p-limit@4.0.0:
+ resolution: {integrity: sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
dependencies:
- postcss: 8.4.31
- dev: true
+ yocto-queue: 1.0.0
- /postcss-discard-empty@6.0.0(postcss@8.4.31):
- resolution: {integrity: sha512-b+h1S1VT6dNhpcg+LpyiUrdnEZfICF0my7HAKgJixJLW7BnNmpRH34+uw/etf5AhOlIhIAuXApSzzDzMI9K/gQ==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.2.15
+ /p-locate@4.1.0:
+ resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==}
+ engines: {node: '>=8'}
dependencies:
- postcss: 8.4.31
+ p-limit: 2.3.0
dev: true
- /postcss-discard-overridden@6.0.0(postcss@8.4.31):
- resolution: {integrity: sha512-4VELwssYXDFigPYAZ8vL4yX4mUepF/oCBeeIT4OXsJPYOtvJumyz9WflmJWTfDwCUcpDR+z0zvCWBXgTx35SVw==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.2.15
+ /p-locate@5.0.0:
+ resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==}
+ engines: {node: '>=10'}
dependencies:
- postcss: 8.4.31
+ p-limit: 3.1.0
dev: true
- /postcss-merge-longhand@6.0.0(postcss@8.4.31):
- resolution: {integrity: sha512-4VSfd1lvGkLTLYcxFuISDtWUfFS4zXe0FpF149AyziftPFQIWxjvFSKhA4MIxMe4XM3yTDgQMbSNgzIVxChbIg==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.2.15
+ /p-locate@6.0.0:
+ resolution: {integrity: sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
dependencies:
- postcss: 8.4.31
- postcss-value-parser: 4.2.0
- stylehacks: 6.0.0(postcss@8.4.31)
- dev: true
+ p-limit: 4.0.0
- /postcss-merge-rules@6.0.1(postcss@8.4.31):
- resolution: {integrity: sha512-a4tlmJIQo9SCjcfiCcCMg/ZCEe0XTkl/xK0XHBs955GWg9xDX3NwP9pwZ78QUOWB8/0XCjZeJn98Dae0zg6AAw==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.2.15
+ /p-map@4.0.0:
+ resolution: {integrity: sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==}
+ engines: {node: '>=10'}
+ requiresBuild: true
dependencies:
- browserslist: 4.22.1
- caniuse-api: 3.0.0
- cssnano-utils: 4.0.0(postcss@8.4.31)
- postcss: 8.4.31
- postcss-selector-parser: 6.0.13
- dev: true
+ aggregate-error: 3.1.0
+ dev: false
+ optional: true
- /postcss-minify-font-values@6.0.0(postcss@8.4.31):
- resolution: {integrity: sha512-zNRAVtyh5E8ndZEYXA4WS8ZYsAp798HiIQ1V2UF/C/munLp2r1UGHwf1+6JFu7hdEhJFN+W1WJQKBrtjhFgEnA==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.2.15
+ /p-map@5.5.0:
+ resolution: {integrity: sha512-VFqfGDHlx87K66yZrNdI4YGtD70IRyd+zSvgks6mzHPRNkoKy+9EKP4SFC77/vTTQYmRmti7dvqC+m5jBrBAcg==}
+ engines: {node: '>=12'}
dependencies:
- postcss: 8.4.31
- postcss-value-parser: 4.2.0
+ aggregate-error: 4.0.1
+
+ /p-map@6.0.0:
+ resolution: {integrity: sha512-T8BatKGY+k5rU+Q/GTYgrEf2r4xRMevAN5mtXc2aPc4rS1j3s+vWTaO2Wag94neXuCAUAs8cxBL9EeB5EA6diw==}
+ engines: {node: '>=16'}
+
+ /p-timeout@6.1.2:
+ resolution: {integrity: sha512-UbD77BuZ9Bc9aABo74gfXhNvzC9Tx7SxtHSh1fxvx3jTLLYvmVhiQZZrJzqqU0jKbN32kb5VOKiLEQI/3bIjgQ==}
+ engines: {node: '>=14.16'}
+
+ /p-try@2.2.0:
+ resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==}
+ engines: {node: '>=6'}
dev: true
- /postcss-minify-gradients@6.0.0(postcss@8.4.31):
- resolution: {integrity: sha512-wO0F6YfVAR+K1xVxF53ueZJza3L+R3E6cp0VwuXJQejnNUH0DjcAFe3JEBeTY1dLwGa0NlDWueCA1VlEfiKgAA==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.2.15
+ /packet-reader@1.0.0:
+ resolution: {integrity: sha512-HAKu/fG3HpHFO0AA8WE8q2g+gBJaZ9MG7fcKk+IJPLTGAD6Psw4443l+9DGRbOIh3/aXr7Phy0TjilYivJo5XQ==}
+ dev: false
+
+ /parent-module@1.0.1:
+ resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==}
+ engines: {node: '>=6'}
dependencies:
- colord: 2.9.3
- cssnano-utils: 4.0.0(postcss@8.4.31)
- postcss: 8.4.31
- postcss-value-parser: 4.2.0
+ callsites: 3.1.0
dev: true
- /postcss-minify-params@6.0.0(postcss@8.4.31):
- resolution: {integrity: sha512-Fz/wMQDveiS0n5JPcvsMeyNXOIMrwF88n7196puSuQSWSa+/Ofc1gDOSY2xi8+A4PqB5dlYCKk/WfqKqsI+ReQ==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.2.15
+ /parse-imports@1.1.2:
+ resolution: {integrity: sha512-UgTSNWlBvx+f4nxVSH3fOyJPJKol8GkFuG8mN8q9FqtmJgwaEx0azPRlXXX0klNlRxoP2gwme00TPDSm6rm/IA==}
+ engines: {node: '>= 12.17'}
dependencies:
- browserslist: 4.22.1
- cssnano-utils: 4.0.0(postcss@8.4.31)
- postcss: 8.4.31
- postcss-value-parser: 4.2.0
- dev: true
+ es-module-lexer: 1.4.1
+ slashes: 3.0.12
- /postcss-minify-selectors@6.0.0(postcss@8.4.31):
- resolution: {integrity: sha512-ec/q9JNCOC2CRDNnypipGfOhbYPuUkewGwLnbv6omue/PSASbHSU7s6uSQ0tcFRVv731oMIx8k0SP4ZX6be/0g==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.2.15
+ /parse-json@5.2.0:
+ resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==}
+ engines: {node: '>=8'}
dependencies:
- postcss: 8.4.31
- postcss-selector-parser: 6.0.13
+ '@babel/code-frame': 7.23.5
+ error-ex: 1.3.2
+ json-parse-even-better-errors: 2.3.1
+ lines-and-columns: 1.2.4
dev: true
- /postcss-modules-extract-imports@3.0.0(postcss@8.4.31):
- resolution: {integrity: sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==}
- engines: {node: ^10 || ^12 || >= 14}
- peerDependencies:
- postcss: ^8.1.0
- dependencies:
- postcss: 8.4.31
+ /parseurl@1.3.3:
+ resolution: {integrity: sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==}
+ engines: {node: '>= 0.8'}
+ dev: false
+
+ /path-browserify@1.0.1:
+ resolution: {integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==}
+
+ /path-exists@4.0.0:
+ resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==}
+ engines: {node: '>=8'}
dev: true
- /postcss-modules-local-by-default@4.0.3(postcss@8.4.31):
- resolution: {integrity: sha512-2/u2zraspoACtrbFRnTijMiQtb4GW4BvatjaG/bCjYQo8kLTdevCUlwuBHx2sCnSyrI3x3qj4ZK1j5LQBgzmwA==}
- engines: {node: ^10 || ^12 || >= 14}
- peerDependencies:
- postcss: ^8.1.0
- dependencies:
- icss-utils: 5.1.0(postcss@8.4.31)
- postcss: 8.4.31
- postcss-selector-parser: 6.0.13
- postcss-value-parser: 4.2.0
- dev: true
+ /path-exists@5.0.0:
+ resolution: {integrity: sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+
+ /path-is-absolute@1.0.1:
+ resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==}
+ engines: {node: '>=0.10.0'}
+ requiresBuild: true
+
+ /path-key@3.1.1:
+ resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==}
+ engines: {node: '>=8'}
+
+ /path-key@4.0.0:
+ resolution: {integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==}
+ engines: {node: '>=12'}
+
+ /path-parse@1.0.7:
+ resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==}
- /postcss-modules-scope@3.0.0(postcss@8.4.31):
- resolution: {integrity: sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==}
- engines: {node: ^10 || ^12 || >= 14}
- peerDependencies:
- postcss: ^8.1.0
- dependencies:
- postcss: 8.4.31
- postcss-selector-parser: 6.0.13
- dev: true
+ /path-type@4.0.0:
+ resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==}
+ engines: {node: '>=8'}
- /postcss-modules-values@4.0.0(postcss@8.4.31):
- resolution: {integrity: sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==}
- engines: {node: ^10 || ^12 || >= 14}
- peerDependencies:
- postcss: ^8.1.0
- dependencies:
- icss-utils: 5.1.0(postcss@8.4.31)
- postcss: 8.4.31
- dev: true
+ /peek-readable@5.0.0:
+ resolution: {integrity: sha512-YtCKvLUOvwtMGmrniQPdO7MwPjgkFBtFIrmfSbYmYuq3tKDV/mcfAhBth1+C3ru7uXIZasc/pHnb+YDYNkkj4A==}
+ engines: {node: '>=14.16'}
- /postcss-normalize-charset@6.0.0(postcss@8.4.31):
- resolution: {integrity: sha512-cqundwChbu8yO/gSWkuFDmKrCZ2vJzDAocheT2JTd0sFNA4HMGoKMfbk2B+J0OmO0t5GUkiAkSM5yF2rSLUjgQ==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.2.15
- dependencies:
- postcss: 8.4.31
- dev: true
+ /pg-cloudflare@1.1.1:
+ resolution: {integrity: sha512-xWPagP/4B6BgFO+EKz3JONXv3YDgvkbVrGw2mTo3D6tVDQRh1e7cqVGvyR3BE+eQgAvx1XhW/iEASj4/jCWl3Q==}
+ requiresBuild: true
+ dev: false
+ optional: true
- /postcss-normalize-display-values@6.0.0(postcss@8.4.31):
- resolution: {integrity: sha512-Qyt5kMrvy7dJRO3OjF7zkotGfuYALETZE+4lk66sziWSPzlBEt7FrUshV6VLECkI4EN8Z863O6Nci4NXQGNzYw==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.2.15
- dependencies:
- postcss: 8.4.31
- postcss-value-parser: 4.2.0
- dev: true
+ /pg-connection-string@2.6.2:
+ resolution: {integrity: sha512-ch6OwaeaPYcova4kKZ15sbJ2hKb/VP48ZD2gE7i1J+L4MspCtBMAx8nMgz7bksc7IojCIIWuEhHibSMFH8m8oA==}
+ dev: false
- /postcss-normalize-positions@6.0.0(postcss@8.4.31):
- resolution: {integrity: sha512-mPCzhSV8+30FZyWhxi6UoVRYd3ZBJgTRly4hOkaSifo0H+pjDYcii/aVT4YE6QpOil15a5uiv6ftnY3rm0igPg==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.2.15
- dependencies:
- postcss: 8.4.31
- postcss-value-parser: 4.2.0
- dev: true
+ /pg-int8@1.0.1:
+ resolution: {integrity: sha512-WCtabS6t3c8SkpDBUlb1kjOs7l66xsGdKpIPZsg4wR+B3+u9UAum2odSsF9tnvxg80h4ZxLWMy4pRjOsFIqQpw==}
+ engines: {node: '>=4.0.0'}
+ dev: false
- /postcss-normalize-repeat-style@6.0.0(postcss@8.4.31):
- resolution: {integrity: sha512-50W5JWEBiOOAez2AKBh4kRFm2uhrT3O1Uwdxz7k24aKtbD83vqmcVG7zoIwo6xI2FZ/HDlbrCopXhLeTpQib1A==}
- engines: {node: ^14 || ^16 || >=18.0}
+ /pg-pool@3.6.1(pg@8.11.3):
+ resolution: {integrity: sha512-jizsIzhkIitxCGfPRzJn1ZdcosIt3pz9Sh3V01fm1vZnbnCMgmGl5wvGGdNN2EL9Rmb0EcFoCkixH4Pu+sP9Og==}
peerDependencies:
- postcss: ^8.2.15
+ pg: '>=8.0'
dependencies:
- postcss: 8.4.31
- postcss-value-parser: 4.2.0
- dev: true
+ pg: 8.11.3
+ dev: false
- /postcss-normalize-string@6.0.0(postcss@8.4.31):
- resolution: {integrity: sha512-KWkIB7TrPOiqb8ZZz6homet2KWKJwIlysF5ICPZrXAylGe2hzX/HSf4NTX2rRPJMAtlRsj/yfkrWGavFuB+c0w==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.2.15
- dependencies:
- postcss: 8.4.31
- postcss-value-parser: 4.2.0
- dev: true
+ /pg-protocol@1.6.0:
+ resolution: {integrity: sha512-M+PDm637OY5WM307051+bsDia5Xej6d9IR4GwJse1qA1DIhiKlksvrneZOYQq42OM+spubpcNYEo2FcKQrDk+Q==}
+ dev: false
- /postcss-normalize-timing-functions@6.0.0(postcss@8.4.31):
- resolution: {integrity: sha512-tpIXWciXBp5CiFs8sem90IWlw76FV4oi6QEWfQwyeREVwUy39VSeSqjAT7X0Qw650yAimYW5gkl2Gd871N5SQg==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.2.15
+ /pg-types@2.2.0:
+ resolution: {integrity: sha512-qTAAlrEsl8s4OiEQY69wDvcMIdQN6wdz5ojQiOy6YRMuynxenON0O5oCpJI6lshc6scgAY8qvJ2On/p+CXY0GA==}
+ engines: {node: '>=4'}
dependencies:
- postcss: 8.4.31
- postcss-value-parser: 4.2.0
- dev: true
+ pg-int8: 1.0.1
+ postgres-array: 2.0.0
+ postgres-bytea: 1.0.0
+ postgres-date: 1.0.7
+ postgres-interval: 1.2.0
+ dev: false
- /postcss-normalize-unicode@6.0.0(postcss@8.4.31):
- resolution: {integrity: sha512-ui5crYkb5ubEUDugDc786L/Me+DXp2dLg3fVJbqyAl0VPkAeALyAijF2zOsnZyaS1HyfPuMH0DwyY18VMFVNkg==}
- engines: {node: ^14 || ^16 || >=18.0}
+ /pg@8.11.3:
+ resolution: {integrity: sha512-+9iuvG8QfaaUrrph+kpF24cXkH1YOOUeArRNYIxq1viYHZagBxrTno7cecY1Fa44tJeZvaoG+Djpkc3JwehN5g==}
+ engines: {node: '>= 8.0.0'}
peerDependencies:
- postcss: ^8.2.15
+ pg-native: '>=3.0.1'
+ peerDependenciesMeta:
+ pg-native:
+ optional: true
dependencies:
- browserslist: 4.22.1
- postcss: 8.4.31
- postcss-value-parser: 4.2.0
- dev: true
+ buffer-writer: 2.0.0
+ packet-reader: 1.0.0
+ pg-connection-string: 2.6.2
+ pg-pool: 3.6.1(pg@8.11.3)
+ pg-protocol: 1.6.0
+ pg-types: 2.2.0
+ pgpass: 1.0.5
+ optionalDependencies:
+ pg-cloudflare: 1.1.1
+ dev: false
- /postcss-normalize-url@6.0.0(postcss@8.4.31):
- resolution: {integrity: sha512-98mvh2QzIPbb02YDIrYvAg4OUzGH7s1ZgHlD3fIdTHLgPLRpv1ZTKJDnSAKr4Rt21ZQFzwhGMXxpXlfrUBKFHw==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.2.15
+ /pgpass@1.0.5:
+ resolution: {integrity: sha512-FdW9r/jQZhSeohs1Z3sI1yxFQNFvMcnmfuj4WBMUTxOrAyLMaTcE1aAMBiTlbMNaXvBCQuVi0R7hd8udDSP7ug==}
dependencies:
- postcss: 8.4.31
- postcss-value-parser: 4.2.0
- dev: true
+ split2: 4.2.0
+ dev: false
- /postcss-normalize-whitespace@6.0.0(postcss@8.4.31):
- resolution: {integrity: sha512-7cfE1AyLiK0+ZBG6FmLziJzqQCpTQY+8XjMhMAz8WSBSCsCNNUKujgIgjCAmDT3cJ+3zjTXFkoD15ZPsckArVw==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.2.15
- dependencies:
- postcss: 8.4.31
- postcss-value-parser: 4.2.0
+ /picocolors@1.0.0:
+ resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==}
dev: true
- /postcss-ordered-values@6.0.0(postcss@8.4.31):
- resolution: {integrity: sha512-K36XzUDpvfG/nWkjs6d1hRBydeIxGpKS2+n+ywlKPzx1nMYDYpoGbcjhj5AwVYJK1qV2/SDoDEnHzlPD6s3nMg==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.2.15
- dependencies:
- cssnano-utils: 4.0.0(postcss@8.4.31)
- postcss: 8.4.31
- postcss-value-parser: 4.2.0
- dev: true
+ /picomatch@2.3.1:
+ resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==}
+ engines: {node: '>=8.6'}
- /postcss-reduce-initial@6.0.0(postcss@8.4.31):
- resolution: {integrity: sha512-s2UOnidpVuXu6JiiI5U+fV2jamAw5YNA9Fdi/GRK0zLDLCfXmSGqQtzpUPtfN66RtCbb9fFHoyZdQaxOB3WxVA==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.2.15
- dependencies:
- browserslist: 4.22.1
- caniuse-api: 3.0.0
- postcss: 8.4.31
- dev: true
+ /picomatch@3.0.1:
+ resolution: {integrity: sha512-I3EurrIQMlRc9IaAZnqRR044Phh2DXY+55o7uJ0V+hYZAcQYSuFWsc9q5PvyDHUSCe1Qxn/iBz+78s86zWnGag==}
+ engines: {node: '>=10'}
- /postcss-reduce-transforms@6.0.0(postcss@8.4.31):
- resolution: {integrity: sha512-FQ9f6xM1homnuy1wLe9lP1wujzxnwt1EwiigtWwuyf8FsqqXUDUp2Ulxf9A5yjlUOTdCJO6lonYjg1mgqIIi2w==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.2.15
+ /pino-abstract-transport@1.1.0:
+ resolution: {integrity: sha512-lsleG3/2a/JIWUtf9Q5gUNErBqwIu1tUKTT3dUzaf5DySw9ra1wcqKjJjLX1VTY64Wk1eEOYsVGSaGfCK85ekA==}
dependencies:
- postcss: 8.4.31
- postcss-value-parser: 4.2.0
- dev: true
+ readable-stream: 4.4.2
+ split2: 4.2.0
- /postcss-selector-parser@6.0.13:
- resolution: {integrity: sha512-EaV1Gl4mUEV4ddhDnv/xtj7sxwrwxdetHdWUGnT4VJQf+4d05v6lHYZr8N573k5Z0BViss7BDhfWtKS3+sfAqQ==}
- engines: {node: '>=4'}
- dependencies:
- cssesc: 3.0.0
- util-deprecate: 1.0.2
- dev: true
+ /pino-std-serializers@6.2.2:
+ resolution: {integrity: sha512-cHjPPsE+vhj/tnhCy/wiMh3M3z3h/j15zHQX+S9GkTBgqJuTuJzYJ4gUyACLhDaJ7kk9ba9iRDmbH2tJU03OiA==}
- /postcss-svgo@6.0.0(postcss@8.4.31):
- resolution: {integrity: sha512-r9zvj/wGAoAIodn84dR/kFqwhINp5YsJkLoujybWG59grR/IHx+uQ2Zo+IcOwM0jskfYX3R0mo+1Kip1VSNcvw==}
- engines: {node: ^14 || ^16 || >= 18}
- peerDependencies:
- postcss: ^8.2.15
+ /pino@8.18.0:
+ resolution: {integrity: sha512-Mz/gKiRyuXu4HnpHgi1YWdHQCoWMufapzooisvFn78zl4dZciAxS+YeRkUxXl1ee/SzU80YCz1zpECCh4oC6Aw==}
+ hasBin: true
dependencies:
- postcss: 8.4.31
- postcss-value-parser: 4.2.0
- svgo: 3.0.2
- dev: true
+ atomic-sleep: 1.0.0
+ fast-redact: 3.3.0
+ on-exit-leak-free: 2.1.2
+ pino-abstract-transport: 1.1.0
+ pino-std-serializers: 6.2.2
+ process-warning: 3.0.0
+ quick-format-unescaped: 4.0.4
+ real-require: 0.2.0
+ safe-stable-stringify: 2.4.3
+ sonic-boom: 3.8.0
+ thread-stream: 2.4.1
- /postcss-unique-selectors@6.0.0(postcss@8.4.31):
- resolution: {integrity: sha512-EPQzpZNxOxP7777t73RQpZE5e9TrnCrkvp7AH7a0l89JmZiPnS82y216JowHXwpBCQitfyxrof9TK3rYbi7/Yw==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.2.15
+ /pkg-dir@7.0.0:
+ resolution: {integrity: sha512-Ie9z/WINcxxLp27BKOCHGde4ITq9UklYKDzVo1nhk5sqGEXU3FpkwP5GM2voTGJkGd9B3Otl+Q4uwSOeSUtOBA==}
+ engines: {node: '>=14.16'}
dependencies:
- postcss: 8.4.31
- postcss-selector-parser: 6.0.13
- dev: true
+ find-up: 6.3.0
- /postcss-value-parser@4.2.0:
- resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==}
- dev: true
+ /pluralize@8.0.0:
+ resolution: {integrity: sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==}
+ engines: {node: '>=4'}
- /postcss@8.4.31:
- resolution: {integrity: sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==}
+ /postcss@8.4.35:
+ resolution: {integrity: sha512-u5U8qYpBCpN13BsiEB0CbR1Hhh4Gc0zLFuedrHJKMctHCHAGrMdG0PRM/KErzAL3CU6/eckEtmHNB3x6e3c0vA==}
engines: {node: ^10 || ^12 || >=14}
dependencies:
- nanoid: 3.3.6
+ nanoid: 3.3.7
picocolors: 1.0.0
source-map-js: 1.0.2
dev: true
@@ -9041,6 +4858,25 @@ packages:
xtend: 4.0.2
dev: false
+ /prebuild-install@7.1.1:
+ resolution: {integrity: sha512-jAXscXWMcCK8GgCoHOfIr0ODh5ai8mj63L2nWrjuAgXE6tDyYGnx4/8o/rCgU+B4JSyZBKbeZqzhtwtC3ovxjw==}
+ engines: {node: '>=10'}
+ hasBin: true
+ dependencies:
+ detect-libc: 2.0.2
+ expand-template: 2.0.3
+ github-from-package: 0.0.0
+ minimist: 1.2.8
+ mkdirp-classic: 0.5.3
+ napi-build-utils: 1.0.2
+ node-abi: 3.54.0
+ pump: 3.0.0
+ rc: 1.2.8
+ simple-get: 4.0.1
+ tar-fs: 2.1.1
+ tunnel-agent: 0.6.0
+ dev: false
+
/prelude-ls@1.2.1:
resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==}
engines: {node: '>= 0.8.0'}
@@ -9053,29 +4889,12 @@ packages:
fast-diff: 1.3.0
dev: true
- /prettier@3.0.0:
- resolution: {integrity: sha512-zBf5eHpwHOGPC47h0zrPyNn+eAEIdEzfywMoYn2XPi0P44Zp0tSq64rq0xAREh4auw2cJZHo9QUob+NqCQky4g==}
+ /prettier@3.2.5:
+ resolution: {integrity: sha512-3/GWa9aOC0YeD7LUfvOG2NiDyhOWRvt1k+rcKhOuYnMY24iiCphgneUfJDyFXd6rZCAnuLBv6UeAULtrhT/F4A==}
engines: {node: '>=14'}
hasBin: true
dev: true
- /pretty-error@4.0.0:
- resolution: {integrity: sha512-AoJ5YMAcXKYxKhuJGdcvse+Voc6v1RgnsR3nWcYU7q4t6z0Q6T86sv5Zq8VIRbOWWFpvdGE83LtdSMNd+6Y0xw==}
- dependencies:
- lodash: 4.17.21
- renderkid: 3.0.0
- dev: true
-
- /pretty-format@25.5.0:
- resolution: {integrity: sha512-kbo/kq2LQ/A/is0PQwsEHM7Ca6//bGPPvU6UnsdDRSKTWxT/ru/xb88v4BJf6a69H+uTytOEsTusT9ksd/1iWQ==}
- engines: {node: '>= 8.3'}
- dependencies:
- '@jest/types': 25.5.0
- ansi-regex: 5.0.1
- ansi-styles: 4.3.0
- react-is: 16.13.1
- dev: true
-
/pretty-format@29.7.0:
resolution: {integrity: sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
@@ -9083,7 +4902,6 @@ packages:
'@jest/schemas': 29.6.3
ansi-styles: 5.2.0
react-is: 18.2.0
- dev: true
/pretty-hrtime@1.0.3:
resolution: {integrity: sha512-66hKPCr+72mlfiSjlEB1+45IjXSqvVAIy6mocupoww4tBFE9R9IhwwUGoI4G++Tc9Aq+2rxOt0RFU6gPcrte0A==}
@@ -9091,13 +4909,13 @@ packages:
/printable-characters@1.0.42:
resolution: {integrity: sha512-dKp+C4iXWK4vVYZmYSd0KBH5F/h1HoZRsbJ82AVKRO3PEo8L4lBS/vLwhVtpwwuYcoIsVY+1JYKR268yn480uQ==}
- dev: true
/process-nextick-args@2.0.1:
resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==}
+ dev: false
- /process-warning@1.0.0:
- resolution: {integrity: sha512-du4wfLyj4yCZq1VupnVSZmRsPJsNuxoDQFdCFHLaYiEbFBD7QE0a+I4D7hOxrVnh78QE/YipFAj9lXHiXocV+Q==}
+ /process-warning@3.0.0:
+ resolution: {integrity: sha512-mqn0kFRl0EoqhnL0GQ0veqFHyIN1yig9RHh/InzORTUiZHFRAur+aMtRkELNwGs9aNwKS6tg/An4NYBPGwvtzQ==}
/process@0.11.10:
resolution: {integrity: sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==}
@@ -9124,11 +4942,8 @@ packages:
dev: false
optional: true
- /prop-ini@0.0.2:
- resolution: {integrity: sha512-qyU57WvAvZDbzmRy9xDbJGVwrGJhmA+rYnVjy4xtX4Ny9c7gzvpmf/j7A3oq9ChbPh15MZQKjPep2mNdnAhtig==}
- dependencies:
- extend: 3.0.2
- dev: true
+ /property-information@6.4.1:
+ resolution: {integrity: sha512-OHYtXfu5aI2sS2LWFSN5rgJjrQ4pCy8i1jubJLe2QvMF8JJ++HXTUIVWFLfXJoaOfvYYjk2SN8J2wFUWIGXT4w==}
/proxy-addr@2.0.7:
resolution: {integrity: sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==}
@@ -9137,10 +4952,6 @@ packages:
forwarded: 0.2.0
ipaddr.js: 1.9.1
- /pseudomap@1.0.2:
- resolution: {integrity: sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==}
- dev: true
-
/pump@1.0.3:
resolution: {integrity: sha512-8k0JupWme55+9tCVE+FS5ULT3K6AbgqrGa58lTT49RpyfwwcGedHqaC5LlQNdEAumn/wFsu6aPwkuPMioy8kqw==}
dependencies:
@@ -9153,9 +4964,6 @@ packages:
dependencies:
end-of-stream: 1.4.4
once: 1.4.0
-
- /punycode@1.3.2:
- resolution: {integrity: sha512-RofWgt/7fL5wP1Y7fxE7/EmTLzQVnB0ycyibJ0OOHIlJqTNzglYFxVwETOcIoJqJmpDXJ9xImDv+Fq34F/d4Dw==}
dev: false
/punycode@2.3.0:
@@ -9163,25 +4971,12 @@ packages:
engines: {node: '>=6'}
dev: true
- /qs@6.11.0:
- resolution: {integrity: sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==}
- engines: {node: '>=0.6'}
- dependencies:
- side-channel: 1.0.4
- dev: true
-
/qs@6.11.2:
resolution: {integrity: sha512-tDNIz22aBzCDxLtVH++VnTfzxlfeK5CbqohpSqpJgj1Wg/cQbStNAz3NuqCs5vV+pjBsK4x4pN9HlVh7rcYRiA==}
engines: {node: '>=0.6'}
dependencies:
side-channel: 1.0.4
- /querystring@0.2.0:
- resolution: {integrity: sha512-X/xY82scca2tau62i9mDyU9K+I+djTMUsvwf7xnUX5GLvVzgJybOJf4Y6o9Zx3oJK/LSXg5tTZBjwzqVPaPO2g==}
- engines: {node: '>=0.4.x'}
- deprecated: The querystring API is considered Legacy. new code should use the URLSearchParams API instead.
- dev: false
-
/queue-microtask@1.2.3:
resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==}
@@ -9202,25 +4997,10 @@ packages:
resolution: {integrity: sha512-iv7LhNVO047HzYR3InF6pUcUsPQiHTM1Qal51DcGSuZFBil1aBBWG5eHPNek7bvILMaYJ/8RU1e8w1AMdHmLQQ==}
engines: {node: '>= 0.8'}
- /randombytes@2.1.0:
- resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==}
- dependencies:
- safe-buffer: 5.2.1
- dev: true
-
/range-parser@1.2.1:
resolution: {integrity: sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==}
engines: {node: '>= 0.6'}
-
- /raw-body@2.5.1:
- resolution: {integrity: sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==}
- engines: {node: '>= 0.8'}
- dependencies:
- bytes: 3.1.2
- http-errors: 2.0.0
- iconv-lite: 0.4.24
- unpipe: 1.0.0
- dev: true
+ dev: false
/raw-body@2.5.2:
resolution: {integrity: sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==}
@@ -9239,15 +5019,10 @@ packages:
ini: 1.3.8
minimist: 1.2.8
strip-json-comments: 2.0.1
- dev: true
-
- /react-is@16.13.1:
- resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==}
- dev: true
+ dev: false
/react-is@18.2.0:
resolution: {integrity: sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==}
- dev: true
/read-pkg-up@7.0.1:
resolution: {integrity: sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==}
@@ -9262,7 +5037,7 @@ packages:
resolution: {integrity: sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==}
engines: {node: '>=8'}
dependencies:
- '@types/normalize-package-data': 2.4.2
+ '@types/normalize-package-data': 2.4.4
normalize-package-data: 2.5.0
parse-json: 5.2.0
type-fest: 0.6.0
@@ -9290,6 +5065,7 @@ packages:
safe-buffer: 5.1.2
string_decoder: 1.1.1
util-deprecate: 1.0.2
+ dev: false
/readable-stream@3.6.2:
resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==}
@@ -9320,62 +5096,21 @@ packages:
engines: {node: '>=8.10.0'}
dependencies:
picomatch: 2.3.1
- dev: true
- /readme-badger@0.3.0:
- resolution: {integrity: sha512-+sMOLSs1imZUISZ2Rhz7qqVd77QtpcAPbGeIraFdgJmijb04YtdlPjGNBvDChTNtLbeQ6JNGQy3pOgslWfaP3g==}
- dependencies:
- balanced-match: 1.0.2
- dev: true
+ /real-require@0.2.0:
+ resolution: {integrity: sha512-57frrGM/OCTLqLOAh0mhVA9VBMHd+9U7Zb2THMGdBUoZVOtGbJzjxsYGDJ3A9AYYCP4hn6y1TVbaOfzWtm5GFg==}
+ engines: {node: '>= 12.13.0'}
/rechoir@0.8.0:
resolution: {integrity: sha512-/vxpCXddiX8NGfGO/mTafwjq4aFa/71pvamip0++IQk3zG8cbCj0fifNPrjjF1XMXUne91jL9OoxmdykoEtifQ==}
engines: {node: '>= 10.13.0'}
dependencies:
- resolve: 1.22.6
-
- /redeyed@2.1.1:
- resolution: {integrity: sha512-FNpGGo1DycYAdnrKFxCMmKYgo/mILAqtRYbkdQD8Ep/Hk2PQ5+aEAEx+IU713RTDmuBaH0c8P5ZozurNu5ObRQ==}
- dependencies:
- esprima: 4.0.1
- dev: true
-
- /reflect-metadata@0.1.13:
- resolution: {integrity: sha512-Ts1Y/anZELhSsjMcU605fU9RE4Oi3p5ORujwbIKXfWa+0Zxs510Qrmrce5/Jowq3cHSZSJqBjypxmHarc+vEWg==}
+ resolve: 1.22.8
dev: false
- /regenerate-unicode-properties@10.1.1:
- resolution: {integrity: sha512-X007RyZLsCJVVrjgEFVpLUTZwyOZk3oiL75ZcuYjlIWd6rNJtOjkBwQc5AsRrpbKVkxN6sklw/k/9m2jJYOf8Q==}
- engines: {node: '>=4'}
- dependencies:
- regenerate: 1.4.2
- dev: true
-
- /regenerate@1.4.2:
- resolution: {integrity: sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==}
- dev: true
-
- /regenerator-runtime@0.14.0:
- resolution: {integrity: sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA==}
- dev: true
-
- /regenerator-transform@0.15.2:
- resolution: {integrity: sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==}
- dependencies:
- '@babel/runtime': 7.23.1
- dev: true
-
- /regex-not@1.0.2:
- resolution: {integrity: sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==}
- engines: {node: '>=0.10.0'}
- dependencies:
- extend-shallow: 3.0.2
- safe-regex: 1.1.0
- dev: true
-
- /regex-parser@2.2.11:
- resolution: {integrity: sha512-jbD/FT0+9MBU2XAZluI7w2OBs1RBi6p9M83nkoZayQXXU9e8Robt69FcZc7wU4eJD/YFTjn1JdCk3rbMJajz8Q==}
- dev: true
+ /reflect-metadata@0.2.1:
+ resolution: {integrity: sha512-i5lLI6iw9AU3Uu4szRNPPEkomnkjRTaVt9hy/bn5g/oSzekBSMeLZblcjP74AW0vBabqERLLIrz+gR8QYR54Tw==}
+ dev: false
/regexp-tree@0.1.27:
resolution: {integrity: sha512-iETxpjK6YoRWJG5o6hXLwvjYAoW+FEZn9os0PD/b6AP6xQwsa/Y7lCVgIixBbUPMfhu+i2LtdeAqVTgGlQarfA==}
@@ -9386,23 +5121,11 @@ packages:
resolution: {integrity: sha512-sy6TXMN+hnP/wMy+ISxg3krXx7BAtWVO4UouuCN/ziM9UEne0euamVNafDfvC83bRNr95y0V5iijeDQFUNpvrg==}
engines: {node: '>= 0.4'}
dependencies:
- call-bind: 1.0.2
+ call-bind: 1.0.5
define-properties: 1.2.1
set-function-name: 2.0.1
dev: true
- /regexpu-core@5.3.2:
- resolution: {integrity: sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==}
- engines: {node: '>=4'}
- dependencies:
- '@babel/regjsgen': 0.8.0
- regenerate: 1.4.2
- regenerate-unicode-properties: 10.1.1
- regjsparser: 0.9.1
- unicode-match-property-ecmascript: 2.0.0
- unicode-match-property-value-ecmascript: 2.1.0
- dev: true
-
/regjsparser@0.10.0:
resolution: {integrity: sha512-qx+xQGZVsy55CH0a1hiVwHmqjLryfh7wQyF5HO07XJ9f7dQMY/gPQHhlyDkIzJKC+x2fUCpCcUODUUUFrm7SHA==}
hasBin: true
@@ -9410,57 +5133,10 @@ packages:
jsesc: 0.5.0
dev: true
- /regjsparser@0.9.1:
- resolution: {integrity: sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==}
- hasBin: true
- dependencies:
- jsesc: 0.5.0
- dev: true
-
- /renderkid@3.0.0:
- resolution: {integrity: sha512-q/7VIQA8lmM1hF+jn+sFSPWGlMkSAeNYcPLmDQx2zzuiDfaLrOmumR8iaUKlenFgh0XRPIUeSPlH3A+AW3Z5pg==}
- dependencies:
- css-select: 4.3.0
- dom-converter: 0.2.0
- htmlparser2: 6.1.0
- lodash: 4.17.21
- strip-ansi: 6.0.1
- dev: true
-
- /repeat-element@1.1.4:
- resolution: {integrity: sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ==}
- engines: {node: '>=0.10.0'}
- dev: true
-
- /repeat-string@1.6.1:
- resolution: {integrity: sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==}
- engines: {node: '>=0.10'}
- dev: true
-
- /require-all@3.0.0:
- resolution: {integrity: sha512-jPGN876lc5exWYrMcgZSd7U42P0PmVQzxnQB13fCSzmyGnqQWW4WUz5DosZ/qe24hz+5o9lSvW2epBNZ1xa6Fw==}
- engines: {node: '>= 0.8'}
-
- /require-from-string@2.0.2:
- resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==}
- engines: {node: '>=0.10.0'}
- dev: true
-
- /requires-port@1.0.0:
- resolution: {integrity: sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==}
- dev: true
-
/resolve-alpn@1.2.1:
resolution: {integrity: sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g==}
dev: false
- /resolve-cwd@3.0.0:
- resolution: {integrity: sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==}
- engines: {node: '>=8'}
- dependencies:
- resolve-from: 5.0.0
- dev: true
-
/resolve-from@4.0.0:
resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==}
engines: {node: '>=4'}
@@ -9469,49 +5145,30 @@ packages:
/resolve-from@5.0.0:
resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==}
engines: {node: '>=8'}
+ dev: false
- /resolve-url-loader@5.0.0:
- resolution: {integrity: sha512-uZtduh8/8srhBoMx//5bwqjQ+rfYOUq8zC9NrMUGtjBiGTtFJM42s58/36+hTqeqINcnYe08Nj3LkK9lW4N8Xg==}
- engines: {node: '>=12'}
- dependencies:
- adjust-sourcemap-loader: 4.0.0
- convert-source-map: 1.9.0
- loader-utils: 2.0.4
- postcss: 8.4.31
- source-map: 0.6.1
- dev: true
-
- /resolve-url@0.2.1:
- resolution: {integrity: sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg==}
- deprecated: https://github.com/lydell/resolve-url#deprecated
- dev: true
-
- /resolve@1.22.6:
- resolution: {integrity: sha512-njhxM7mV12JfufShqGy3Rz8j11RPdLy4xi15UurGJeoHLfJpVXKdh3ueuOqbYUcDZnffr6X739JBo5LzyahEsw==}
+ /resolve@1.22.8:
+ resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==}
hasBin: true
dependencies:
- is-core-module: 2.13.0
+ is-core-module: 2.13.1
path-parse: 1.0.7
supports-preserve-symlinks-flag: 1.0.0
- /responselike@2.0.1:
- resolution: {integrity: sha512-4gl03wn3hj1HP3yzgdI7d3lCkF95F21Pz4BPGvKHinyQzALR5CapwC8yIi0Rh58DEMQ/SguC03wFj2k0M/mHhw==}
+ /responselike@3.0.0:
+ resolution: {integrity: sha512-40yHxbNcl2+rzXvZuVkrYohathsSJlMTXKryG5y8uciHv1+xDLHQpgjG64JUO9nrEq2jGLH6IZ8BcZyw3wrweg==}
+ engines: {node: '>=14.16'}
dependencies:
- lowercase-keys: 2.0.0
+ lowercase-keys: 3.0.0
dev: false
- /restore-cursor@3.1.0:
- resolution: {integrity: sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==}
- engines: {node: '>=8'}
+ /restore-cursor@4.0.0:
+ resolution: {integrity: sha512-I9fPXU9geO9bHOt9pHHOhOkYerIMsmVaWB0rA2AI9ERh/+x/i7MV5HKBNrg+ljO5eoPVgCcnFuRjJ9uH6I/3eg==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
dependencies:
onetime: 5.1.2
signal-exit: 3.0.7
- /ret@0.1.15:
- resolution: {integrity: sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==}
- engines: {node: '>=0.12'}
- dev: true
-
/retry@0.12.0:
resolution: {integrity: sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==}
engines: {node: '>= 4'}
@@ -9521,24 +5178,11 @@ packages:
/retry@0.13.1:
resolution: {integrity: sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==}
- engines: {node: '>= 4'}
- dev: true
-
- /reusify@1.0.4:
- resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==}
- engines: {iojs: '>=1.0.0', node: '>=0.10.0'}
-
- /rev-hash@3.0.0:
- resolution: {integrity: sha512-s+87HfEKAu95TaTxnbCobn0/BkbzR23LHSwVdYvr8mn5+PPjzy+hTWyh92b5oaLgig9TKPe5d6ZcubsVBtUrZg==}
- engines: {node: '>=8'}
- dev: true
-
- /rimraf@2.7.1:
- resolution: {integrity: sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==}
- hasBin: true
- dependencies:
- glob: 7.2.3
- dev: true
+ engines: {node: '>= 4'}
+
+ /reusify@1.0.4:
+ resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==}
+ engines: {iojs: '>=1.0.0', node: '>=0.10.0'}
/rimraf@3.0.2:
resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==}
@@ -9548,13 +5192,28 @@ packages:
/rndm@1.2.0:
resolution: {integrity: sha512-fJhQQI5tLrQvYIYFpOnFinzv9dwmR7hRnUz1XqP3OJ1jIweTNOd6aTO4jwQSgcBSFUB+/KHJxuGneime+FdzOw==}
- dev: false
- /run-applescript@5.0.0:
- resolution: {integrity: sha512-XcT5rBksx1QdIhlFOCtgZkB99ZEouFZ1E2Kc2LHqNW13U3/74YGdkQRmThTwxy4QIyookibDKYZOPqX//6BlAg==}
- engines: {node: '>=12'}
+ /rollup@4.10.0:
+ resolution: {integrity: sha512-t2v9G2AKxcQ8yrG+WGxctBes1AomT0M4ND7jTFBCVPXQ/WFTvNSefIrNSmLKhIKBrvN8SG+CZslimJcT3W2u2g==}
+ engines: {node: '>=18.0.0', npm: '>=8.0.0'}
+ hasBin: true
dependencies:
- execa: 5.1.1
+ '@types/estree': 1.0.5
+ optionalDependencies:
+ '@rollup/rollup-android-arm-eabi': 4.10.0
+ '@rollup/rollup-android-arm64': 4.10.0
+ '@rollup/rollup-darwin-arm64': 4.10.0
+ '@rollup/rollup-darwin-x64': 4.10.0
+ '@rollup/rollup-linux-arm-gnueabihf': 4.10.0
+ '@rollup/rollup-linux-arm64-gnu': 4.10.0
+ '@rollup/rollup-linux-arm64-musl': 4.10.0
+ '@rollup/rollup-linux-riscv64-gnu': 4.10.0
+ '@rollup/rollup-linux-x64-gnu': 4.10.0
+ '@rollup/rollup-linux-x64-musl': 4.10.0
+ '@rollup/rollup-win32-arm64-msvc': 4.10.0
+ '@rollup/rollup-win32-ia32-msvc': 4.10.0
+ '@rollup/rollup-win32-x64-msvc': 4.10.0
+ fsevents: 2.3.3
dev: true
/run-parallel@1.2.0:
@@ -9562,36 +5221,42 @@ packages:
dependencies:
queue-microtask: 1.2.3
- /safe-array-concat@1.0.1:
- resolution: {integrity: sha512-6XbUAseYE2KtOuGueyeobCySj9L4+66Tn6KQMOPQJrAJEowYKW/YR/MGJZl7FdydUdaFu4LYyDZjxf4/Nmo23Q==}
+ /safe-array-concat@1.1.0:
+ resolution: {integrity: sha512-ZdQ0Jeb9Ofti4hbt5lX3T2JcAamT9hfzYU1MNB+z/jaEbB6wfFfPIR/zEORmZqobkCCJhSjodobH6WHNmJ97dg==}
engines: {node: '>=0.4'}
dependencies:
- call-bind: 1.0.2
- get-intrinsic: 1.2.1
+ call-bind: 1.0.5
+ get-intrinsic: 1.2.2
has-symbols: 1.0.3
isarray: 2.0.5
dev: true
/safe-buffer@5.1.2:
resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==}
+ dev: false
/safe-buffer@5.2.1:
resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==}
- /safe-regex-test@1.0.0:
- resolution: {integrity: sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==}
+ /safe-regex-test@1.0.2:
+ resolution: {integrity: sha512-83S9w6eFq12BBIJYvjMux6/dkirb8+4zJRA9cxNBVb7Wq5fJBW+Xze48WqR8pxua7bDuAaaAxtVVd4Idjp1dBQ==}
+ engines: {node: '>= 0.4'}
dependencies:
- call-bind: 1.0.2
- get-intrinsic: 1.2.1
+ call-bind: 1.0.5
+ get-intrinsic: 1.2.2
is-regex: 1.1.4
dev: true
- /safe-regex@1.1.0:
- resolution: {integrity: sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg==}
+ /safe-regex@2.1.1:
+ resolution: {integrity: sha512-rx+x8AMzKb5Q5lQ95Zoi6ZbJqwCLkqi3XuJXp5P3rT8OEc6sZCJG5AE5dU3lsgRr/F4Bs31jSlVN+j5KrsGu9A==}
dependencies:
- ret: 0.1.15
+ regexp-tree: 0.1.27
dev: true
+ /safe-stable-stringify@2.4.3:
+ resolution: {integrity: sha512-e2bDA2WJT0wxseVd4lsDP4+3ONX6HpMXQa1ZhFQ7SU+GjvORCmShbCMltrtIDfkYhVHrOcPtj+KhmDBdPdZD1g==}
+ engines: {node: '>=10'}
+
/safer-buffer@2.1.2:
resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==}
@@ -9601,52 +5266,9 @@ packages:
truncate-utf8-bytes: 1.0.2
dev: false
- /sax@1.2.1:
- resolution: {integrity: sha512-8I2a3LovHTOpm7NV5yOyO8IHqgVsfK4+UuySrXU8YXkSRX7k6hCV9b3HrkKCr3nMpgj+0bmocaJJWpvp1oc7ZA==}
- dev: false
-
- /schema-utils@2.7.1:
- resolution: {integrity: sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==}
- engines: {node: '>= 8.9.0'}
- dependencies:
- '@types/json-schema': 7.0.13
- ajv: 6.12.6
- ajv-keywords: 3.5.2(ajv@6.12.6)
- dev: true
-
- /schema-utils@3.3.0:
- resolution: {integrity: sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==}
- engines: {node: '>= 10.13.0'}
- dependencies:
- '@types/json-schema': 7.0.13
- ajv: 6.12.6
- ajv-keywords: 3.5.2(ajv@6.12.6)
- dev: true
-
- /schema-utils@4.2.0:
- resolution: {integrity: sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==}
- engines: {node: '>= 12.13.0'}
- dependencies:
- '@types/json-schema': 7.0.13
- ajv: 8.12.0
- ajv-formats: 2.1.1(ajv@8.12.0)
- ajv-keywords: 5.1.0(ajv@8.12.0)
- dev: true
-
/secure-json-parse@2.7.0:
resolution: {integrity: sha512-6aU+Rwsezw7VR8/nyvKTx8QpWH9FrcYiXXlqC4z5d5XQBDRqtbfsRjnwGyqbi3gddNtWHuEk9OANUotL26qKUw==}
- /select-hose@2.0.0:
- resolution: {integrity: sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==}
- dev: true
-
- /selfsigned@2.1.1:
- resolution: {integrity: sha512-GSL3aowiF7wa/WtSFwnUrludWFoNhftq8bUkH9pkzjpN2XSPOAYEgg6e0sS9s0rZwgJzJiQRPU18A6clnoW5wQ==}
- engines: {node: '>=10'}
- dependencies:
- node-forge: 1.3.1
- dev: true
-
/semver@5.7.2:
resolution: {integrity: sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==}
hasBin: true
@@ -9656,8 +5278,8 @@ packages:
resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==}
hasBin: true
- /semver@7.5.4:
- resolution: {integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==}
+ /semver@7.6.0:
+ resolution: {integrity: sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==}
engines: {node: '>=10'}
hasBin: true
dependencies:
@@ -9682,34 +5304,13 @@ packages:
statuses: 2.0.1
transitivePeerDependencies:
- supports-color
+ dev: false
- /sentence-case@3.0.4:
- resolution: {integrity: sha512-8LS0JInaQMCRoQ7YUytAo/xUu5W2XnQxV2HI/6uM6U7CITS1RqPElr30V6uIqyMKM9lJGRVFy5/4CuzcixNYSg==}
- dependencies:
- no-case: 3.0.4
- tslib: 2.6.2
- upper-case-first: 2.0.2
-
- /serialize-javascript@6.0.1:
- resolution: {integrity: sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w==}
- dependencies:
- randombytes: 2.1.0
- dev: true
-
- /serve-index@1.9.1:
- resolution: {integrity: sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==}
- engines: {node: '>= 0.8.0'}
+ /serialize-error@11.0.3:
+ resolution: {integrity: sha512-2G2y++21dhj2R7iHAdd0FIzjGwuKZld+7Pl/bTU6YIkrC2ZMbVUjm+luj6A6V34Rv9XfKJDKpTWu9W4Gse1D9g==}
+ engines: {node: '>=14.16'}
dependencies:
- accepts: 1.3.8
- batch: 0.6.1
- debug: 2.6.9
- escape-html: 1.0.3
- http-errors: 1.6.3
- mime-types: 2.1.35
- parseurl: 1.3.3
- transitivePeerDependencies:
- - supports-color
- dev: true
+ type-fest: 2.19.0
/serve-static@1.15.0:
resolution: {integrity: sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==}
@@ -9721,98 +5322,98 @@ packages:
send: 0.18.0
transitivePeerDependencies:
- supports-color
+ dev: false
/set-blocking@2.0.0:
resolution: {integrity: sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==}
- dev: false
- /set-cookie-parser@2.6.0:
- resolution: {integrity: sha512-RVnVQxTXuerk653XfuliOxBP81Sf0+qfQE73LIYKcyMYHG94AuH0kgrQpRDuTZnSmjpysHmzxJXKNfa6PjFhyQ==}
- dev: true
+ /set-function-length@1.2.0:
+ resolution: {integrity: sha512-4DBHDoyHlM1IRPGYcoxexgh67y4ueR53FKV1yyxwFMY7aCqcN/38M1+SwZ/qJQ8iLv7+ck385ot4CcisOAPT9w==}
+ engines: {node: '>= 0.4'}
+ dependencies:
+ define-data-property: 1.1.1
+ function-bind: 1.1.2
+ get-intrinsic: 1.2.2
+ gopd: 1.0.1
+ has-property-descriptors: 1.0.1
/set-function-name@2.0.1:
resolution: {integrity: sha512-tMNCiqYVkXIZgc2Hnoy2IvC/f8ezc5koaRFkCjrpWzGpCd3qbZXPzVy9MAZzK1ch/X0jvSkojys3oqJN0qCmdA==}
engines: {node: '>= 0.4'}
dependencies:
- define-data-property: 1.1.0
+ define-data-property: 1.1.1
functions-have-names: 1.2.3
- has-property-descriptors: 1.0.0
- dev: true
-
- /set-value@2.0.1:
- resolution: {integrity: sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==}
- engines: {node: '>=0.10.0'}
- dependencies:
- extend-shallow: 2.0.1
- is-extendable: 0.1.1
- is-plain-object: 2.0.4
- split-string: 3.1.0
- dev: true
-
- /setprototypeof@1.1.0:
- resolution: {integrity: sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==}
+ has-property-descriptors: 1.0.1
dev: true
/setprototypeof@1.2.0:
resolution: {integrity: sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==}
- /shallow-clone@3.0.1:
- resolution: {integrity: sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==}
- engines: {node: '>=8'}
- dependencies:
- kind-of: 6.0.3
- dev: true
-
/shebang-command@2.0.0:
resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==}
engines: {node: '>=8'}
dependencies:
shebang-regex: 3.0.0
- dev: true
/shebang-regex@3.0.0:
resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==}
engines: {node: '>=8'}
- dev: true
-
- /shell-quote@1.8.1:
- resolution: {integrity: sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==}
- dev: true
/side-channel@1.0.4:
resolution: {integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==}
dependencies:
- call-bind: 1.0.2
- get-intrinsic: 1.2.1
- object-inspect: 1.12.3
-
- /sigmund@1.0.1:
- resolution: {integrity: sha512-fCvEXfh6NWpm+YSuY2bpXb/VIihqWA6hLsgboC+0nl71Q7N7o2eaCW8mJa/NLvQhs6jpd3VZV4UiUQlV6+lc8g==}
- dev: true
+ call-bind: 1.0.5
+ get-intrinsic: 1.2.2
+ object-inspect: 1.13.1
/signal-exit@3.0.7:
resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==}
- /slash@2.0.0:
- resolution: {integrity: sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==}
- engines: {node: '>=6'}
- dev: true
+ /signal-exit@4.1.0:
+ resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==}
+ engines: {node: '>=14'}
+
+ /simple-concat@1.0.1:
+ resolution: {integrity: sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==}
+ dev: false
+
+ /simple-get@4.0.1:
+ resolution: {integrity: sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==}
+ dependencies:
+ decompress-response: 6.0.0
+ once: 1.4.0
+ simple-concat: 1.0.1
+ dev: false
/slash@3.0.0:
resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==}
engines: {node: '>=8'}
+ dev: true
- /slashes@2.0.2:
- resolution: {integrity: sha512-68p+QkFAQQRetIUzNXAdktNJr8AYLxJukjBegYQz8F7VATsBJG621UYtY/vS2j9jerxdJ1k6Tc25K4DXEw1d5w==}
- dev: false
+ /slash@4.0.0:
+ resolution: {integrity: sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==}
+ engines: {node: '>=12'}
- /slice-ansi@4.0.0:
- resolution: {integrity: sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==}
- engines: {node: '>=10'}
+ /slash@5.1.0:
+ resolution: {integrity: sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg==}
+ engines: {node: '>=14.16'}
+
+ /slashes@3.0.12:
+ resolution: {integrity: sha512-Q9VME8WyGkc7pJf6QEkj3wE+2CnvZMI+XJhwdTPR8Z/kWQRXi7boAWLDibRPyHRTUTPx5FaU7MsyrjI3yLB4HA==}
+
+ /slice-ansi@5.0.0:
+ resolution: {integrity: sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==}
+ engines: {node: '>=12'}
dependencies:
- ansi-styles: 4.3.0
- astral-regex: 2.0.0
- is-fullwidth-code-point: 3.0.0
+ ansi-styles: 6.2.1
+ is-fullwidth-code-point: 4.0.0
+
+ /slice-ansi@7.1.0:
+ resolution: {integrity: sha512-bSiSngZ/jWeX93BqeIAbImyTbEihizcwNjFoRUIY/T1wWQsfsm2Vw1agPKylXvQTU7iASGdHhyqRlqQzfz+Htg==}
+ engines: {node: '>=18'}
+ dependencies:
+ ansi-styles: 6.2.1
+ is-fullwidth-code-point: 5.0.0
/slugify@1.6.6:
resolution: {integrity: sha512-h+z7HKHYXj6wJU+AnS/+IH8Uh9fdcX1Lrhg1/VMdf9PwoBQXFcXiAdsy2tSK0P6gKwJLXp02r90ahUCqHk9rrw==}
@@ -9825,59 +5426,6 @@ packages:
dev: false
optional: true
- /smpltmpl@1.0.2:
- resolution: {integrity: sha512-Hq23NNgeZigOzIiX1dkb6W3gFn2/XQj43KhPxu65IMieG/gIwf/lQb1IudjYv0c/5LwJeS/mPayYzyo+8WJMxQ==}
- engines: {node: '>=4'}
- dependencies:
- babel-code-frame: 6.26.0
- dev: true
-
- /snake-case@3.0.4:
- resolution: {integrity: sha512-LAOh4z89bGQvl9pFfNF8V146i7o7/CqFPbqzYgP+yYzDIDeS9HaNFtXABamRW+AQzEVODcvE79ljJ+8a9YSdMg==}
- dependencies:
- dot-case: 3.0.4
- tslib: 2.6.2
-
- /snapdragon-node@2.1.1:
- resolution: {integrity: sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==}
- engines: {node: '>=0.10.0'}
- dependencies:
- define-property: 1.0.0
- isobject: 3.0.1
- snapdragon-util: 3.0.1
- dev: true
-
- /snapdragon-util@3.0.1:
- resolution: {integrity: sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==}
- engines: {node: '>=0.10.0'}
- dependencies:
- kind-of: 3.2.2
- dev: true
-
- /snapdragon@0.8.2:
- resolution: {integrity: sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==}
- engines: {node: '>=0.10.0'}
- dependencies:
- base: 0.11.2
- debug: 2.6.9
- define-property: 0.2.5
- extend-shallow: 2.0.1
- map-cache: 0.2.2
- source-map: 0.5.7
- source-map-resolve: 0.5.3
- use: 3.1.1
- transitivePeerDependencies:
- - supports-color
- dev: true
-
- /sockjs@0.3.24:
- resolution: {integrity: sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==}
- dependencies:
- faye-websocket: 0.11.4
- uuid: 8.3.2
- websocket-driver: 0.7.4
- dev: true
-
/socks-proxy-agent@6.2.1:
resolution: {integrity: sha512-a6KW9G+6B3nWZ1yB8G7pJwL3ggLy1uTzKAgCb7ttblwqdz9fMGJUuTy3uFzEP48FAs9FLILlmzDlE2JJhVQaXQ==}
engines: {node: '>= 10'}
@@ -9901,19 +5449,8 @@ packages:
dev: false
optional: true
- /sonic-boom@1.4.1:
- resolution: {integrity: sha512-LRHh/A8tpW7ru89lrlkU4AszXt1dbwSjVWguGrmlxE7tawVmDBlI1PILMkXAxJTwqhgsEeTHzj36D5CmHgQmNg==}
- dependencies:
- atomic-sleep: 1.0.0
- flatstr: 1.0.12
-
- /sonic-boom@2.8.0:
- resolution: {integrity: sha512-kuonw1YOYYNOve5iHdSahXPOK49GqwA+LZhI6Wz/l0rP57iKyXXIHaRagOBHAPmGwJC6od2Z9zgvZ5loSgMlVg==}
- dependencies:
- atomic-sleep: 1.0.0
-
- /sonic-boom@3.4.0:
- resolution: {integrity: sha512-zSe9QQW30nPzjkSJ0glFQO5T9lHsk39tz+2bAAwCj8CNgEG8ItZiX7Wb2ZgA8I04dwRGCcf1m3ABJa8AYm12Fw==}
+ /sonic-boom@3.8.0:
+ resolution: {integrity: sha512-ybz6OYOUjoQQCQ/i4LU8kaToD8ACtYP+Cj5qd2AO36bwbdewxWJ3ArmJ2cr6AvxlL2o0PqnCcPGUgkILbfkaCA==}
dependencies:
atomic-sleep: 1.0.0
@@ -9922,33 +5459,6 @@ packages:
engines: {node: '>=0.10.0'}
dev: true
- /source-map-resolve@0.5.3:
- resolution: {integrity: sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==}
- deprecated: See https://github.com/lydell/source-map-resolve#deprecated
- dependencies:
- atob: 2.1.2
- decode-uri-component: 0.2.2
- resolve-url: 0.2.1
- source-map-url: 0.4.1
- urix: 0.1.0
- dev: true
-
- /source-map-support@0.5.21:
- resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==}
- dependencies:
- buffer-from: 1.1.2
- source-map: 0.6.1
-
- /source-map-url@0.4.1:
- resolution: {integrity: sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw==}
- deprecated: See https://github.com/lydell/source-map-url#deprecated
- dev: true
-
- /source-map@0.5.7:
- resolution: {integrity: sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==}
- engines: {node: '>=0.10.0'}
- dev: true
-
/source-map@0.6.1:
resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==}
engines: {node: '>=0.10.0'}
@@ -9957,85 +5467,47 @@ packages:
resolution: {integrity: sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==}
dependencies:
spdx-expression-parse: 3.0.1
- spdx-license-ids: 3.0.15
+ spdx-license-ids: 3.0.17
dev: true
- /spdx-exceptions@2.3.0:
- resolution: {integrity: sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==}
+ /spdx-exceptions@2.4.0:
+ resolution: {integrity: sha512-hcjppoJ68fhxA/cjbN4T8N6uCUejN8yFw69ttpqtBeCbF3u13n7mb31NB9jKwGTTWWnt9IbRA/mf1FprYS8wfw==}
dev: true
/spdx-expression-parse@3.0.1:
resolution: {integrity: sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==}
dependencies:
- spdx-exceptions: 2.3.0
- spdx-license-ids: 3.0.15
- dev: true
-
- /spdx-license-ids@3.0.15:
- resolution: {integrity: sha512-lpT8hSQp9jAKp9mhtBU4Xjon8LPGBvLIuBiSVhMEtmLecTh2mO0tlqrAMp47tBXzMr13NJMQ2lf7RpQGLJ3HsQ==}
- dev: true
-
- /spdy-transport@3.0.0:
- resolution: {integrity: sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==}
- dependencies:
- debug: 4.3.4
- detect-node: 2.1.0
- hpack.js: 2.1.6
- obuf: 1.1.2
- readable-stream: 3.6.2
- wbuf: 1.7.3
- transitivePeerDependencies:
- - supports-color
- dev: true
-
- /spdy@4.0.2:
- resolution: {integrity: sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==}
- engines: {node: '>=6.0.0'}
- dependencies:
- debug: 4.3.4
- handle-thing: 2.0.1
- http-deceiver: 1.2.7
- select-hose: 2.0.0
- spdy-transport: 3.0.0
- transitivePeerDependencies:
- - supports-color
+ spdx-exceptions: 2.4.0
+ spdx-license-ids: 3.0.17
dev: true
- /split-lines@2.1.0:
- resolution: {integrity: sha512-8dv+1zKgTpfTkOy8XZLFyWrfxO0NV/bj/3EaQ+hBrBxGv2DwiroljPjU8NlCr+59nLnsVm9WYT7lXKwe4TC6bw==}
- engines: {node: '>=6'}
+ /spdx-license-ids@3.0.17:
+ resolution: {integrity: sha512-sh8PWc/ftMqAAdFiBu6Fy6JUOYjqDJBJvIhpfDMyHrr0Rbp5liZqd4TjtQ/RgfLjKFZb+LMx5hpml5qOWy0qvg==}
dev: true
- /split-string@3.1.0:
- resolution: {integrity: sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==}
- engines: {node: '>=0.10.0'}
- dependencies:
- extend-shallow: 3.0.2
- dev: true
+ /split-lines@3.0.0:
+ resolution: {integrity: sha512-d0TpRBL/VfKDXsk8JxPF7zgF5pCUDdBMSlEL36xBgVeaX448t+yGXcJaikUyzkoKOJ0l6KpMfygzJU9naIuivw==}
+ engines: {node: '>=12'}
/split2@4.2.0:
resolution: {integrity: sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==}
engines: {node: '>= 10.x'}
- /sprintf-js@1.0.3:
- resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==}
- dev: true
-
- /sqlite3@5.1.6:
- resolution: {integrity: sha512-olYkWoKFVNSSSQNvxVUfjiVbz3YtBwTJj+mfV5zpHmqW3sELx2Cf4QCdirMelhM5Zh+KDVaKgQHqCxrqiWHybw==}
+ /sqlite3@5.1.7:
+ resolution: {integrity: sha512-GGIyOiFaG+TUra3JIfkI/zGP8yZYLPQ0pl1bH+ODjiX57sPhrLU5sQJn1y9bDKZUFYkX1crlrPfSYt0BKKdkog==}
requiresBuild: true
peerDependenciesMeta:
node-gyp:
optional: true
dependencies:
- '@mapbox/node-pre-gyp': 1.0.11
- node-addon-api: 4.3.0
+ bindings: 1.5.0
+ node-addon-api: 7.1.0
+ prebuild-install: 7.1.1
tar: 6.2.0
optionalDependencies:
node-gyp: 8.4.1
transitivePeerDependencies:
- bluebird
- - encoding
- supports-color
dev: false
@@ -10053,29 +5525,11 @@ packages:
dev: false
optional: true
- /stackframe@1.3.4:
- resolution: {integrity: sha512-oeVtt7eWQS+Na6F//S4kJ2K2VbRlS9D43mAlMyVpVWovy9o+jfgH8O9agzANzaiLjclA0oYzUXEM4PurhSUChw==}
- dev: true
-
/stacktracey@2.1.8:
resolution: {integrity: sha512-Kpij9riA+UNg7TnphqjH7/CzctQ/owJGNbFkfEeve4Z4uxT5+JapVLFXcsurIfN34gnTWZNJ/f7NMG0E8JDzTw==}
dependencies:
as-table: 1.0.55
get-source: 2.0.12
- dev: true
-
- /static-extend@0.1.2:
- resolution: {integrity: sha512-72E9+uLc27Mt718pMHt9VMNiAL4LMsmDbBva8mxWUCkT07fSzEGMYUCk0XWY6lp0j6RBAG4cJ3mWuZv2OE3s0g==}
- engines: {node: '>=0.10.0'}
- dependencies:
- define-property: 0.2.5
- object-copy: 0.1.0
- dev: true
-
- /statuses@1.5.0:
- resolution: {integrity: sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==}
- engines: {node: '>= 0.6'}
- dev: true
/statuses@2.0.1:
resolution: {integrity: sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==}
@@ -10089,53 +5543,55 @@ packages:
is-fullwidth-code-point: 3.0.0
strip-ansi: 6.0.1
+ /string-width@7.1.0:
+ resolution: {integrity: sha512-SEIJCWiX7Kg4c129n48aDRwLbFb2LJmXXFrWBG4NGaRtMQ3myKPKbwrD1BKqQn74oCoNMBVrfDEr5M9YxCsrkw==}
+ engines: {node: '>=18'}
+ dependencies:
+ emoji-regex: 10.3.0
+ get-east-asian-width: 1.2.0
+ strip-ansi: 7.1.0
+
/string.prototype.trim@1.2.8:
resolution: {integrity: sha512-lfjY4HcixfQXOfaqCvcBuOIapyaroTXhbkfJN3gcB1OtyupngWK4sEET9Knd0cXd28kTUqu/kHoV4HKSJdnjiQ==}
engines: {node: '>= 0.4'}
dependencies:
- call-bind: 1.0.2
+ call-bind: 1.0.5
define-properties: 1.2.1
- es-abstract: 1.22.2
+ es-abstract: 1.22.3
dev: true
/string.prototype.trimend@1.0.7:
resolution: {integrity: sha512-Ni79DqeB72ZFq1uH/L6zJ+DKZTkOtPIHovb3YZHQViE+HDouuU4mBrLOLDn5Dde3RF8qw5qVETEjhu9locMLvA==}
dependencies:
- call-bind: 1.0.2
+ call-bind: 1.0.5
define-properties: 1.2.1
- es-abstract: 1.22.2
+ es-abstract: 1.22.3
dev: true
/string.prototype.trimstart@1.0.7:
resolution: {integrity: sha512-NGhtDFu3jCEm7B4Fy0DpLewdJQOZcQ0rGbwQ/+stjnrp2i+rlKeCvos9hOIeCmqwratM47OBxY7uFZzjxHXmrg==}
dependencies:
- call-bind: 1.0.2
+ call-bind: 1.0.5
define-properties: 1.2.1
- es-abstract: 1.22.2
+ es-abstract: 1.22.3
dev: true
/string_decoder@1.1.1:
resolution: {integrity: sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==}
dependencies:
safe-buffer: 5.1.2
+ dev: false
/string_decoder@1.3.0:
resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==}
dependencies:
safe-buffer: 5.2.1
- /stringify-attributes@2.0.0:
- resolution: {integrity: sha512-wrVfRV6sCCB6wr3gx8OgKsp/9dSWWbKr8ifLfOxEcd/BBoa8d5pAf4BZb/jQW1JZnoZImjvUdxdo3ikYHZmYiw==}
- engines: {node: '>=8'}
- dependencies:
- escape-goat: 2.1.1
-
- /strip-ansi@3.0.1:
- resolution: {integrity: sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==}
- engines: {node: '>=0.10.0'}
+ /stringify-attributes@4.0.0:
+ resolution: {integrity: sha512-6Hq3K153wTTfhEHb4V/viuqmb0DRn08JCrRnmqc4Q/tmoNuvd4DEyqkiiJXtvVz8ZSUhlCQr7zCpCVTgrelesg==}
+ engines: {node: '>=14.16'}
dependencies:
- ansi-regex: 2.1.1
- dev: true
+ escape-goat: 4.0.0
/strip-ansi@6.0.1:
resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==}
@@ -10143,25 +5599,20 @@ packages:
dependencies:
ansi-regex: 5.0.1
+ /strip-ansi@7.1.0:
+ resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==}
+ engines: {node: '>=12'}
+ dependencies:
+ ansi-regex: 6.0.1
+
/strip-bom@3.0.0:
resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==}
engines: {node: '>=4'}
dev: true
- /strip-bom@4.0.0:
- resolution: {integrity: sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==}
- engines: {node: '>=8'}
- dev: true
-
- /strip-final-newline@2.0.0:
- resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==}
- engines: {node: '>=6'}
- dev: true
-
/strip-final-newline@3.0.0:
resolution: {integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==}
engines: {node: '>=12'}
- dev: true
/strip-indent@3.0.0:
resolution: {integrity: sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==}
@@ -10173,61 +5624,19 @@ packages:
/strip-json-comments@2.0.1:
resolution: {integrity: sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==}
engines: {node: '>=0.10.0'}
- dev: true
+ dev: false
/strip-json-comments@3.1.1:
resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==}
engines: {node: '>=8'}
-
- /strtok3@6.3.0:
- resolution: {integrity: sha512-fZtbhtvI9I48xDSywd/somNqgUHl2L2cstmXCCif0itOf96jeW18MBSyrLuNicYQVkvpOxkZtkzujiTJ9LW5Jw==}
- engines: {node: '>=10'}
- dependencies:
- '@tokenizer/token': 0.3.0
- peek-readable: 4.1.0
-
- /style-loader@3.3.3(webpack@5.88.2):
- resolution: {integrity: sha512-53BiGLXAcll9maCYtZi2RCQZKa8NQQai5C4horqKyRmHj9H7QmcUyucrH+4KW/gBQbXM2AsB0axoEcFZPlfPcw==}
- engines: {node: '>= 12.13.0'}
- peerDependencies:
- webpack: ^5.0.0
- dependencies:
- webpack: 5.88.2(webpack-cli@5.1.4)
- dev: true
-
- /stylehacks@6.0.0(postcss@8.4.31):
- resolution: {integrity: sha512-+UT589qhHPwz6mTlCLSt/vMNTJx8dopeJlZAlBMJPWA3ORqu6wmQY7FBXf+qD+FsqoBJODyqNxOUP3jdntFRdw==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.2.15
- dependencies:
- browserslist: 4.22.1
- postcss: 8.4.31
- postcss-selector-parser: 6.0.13
dev: true
- /superagent@8.1.2:
- resolution: {integrity: sha512-6WTxW1EB6yCxV5VFOIPQruWGHqc3yI7hEmZK6h+pyk69Lk/Ut7rLUY6W/ONF2MjBuGjvmMiIpsrVJ2vjrHlslA==}
- engines: {node: '>=6.4.0 <13 || >=14'}
+ /strtok3@7.0.0:
+ resolution: {integrity: sha512-pQ+V+nYQdC5H3Q7qBZAz/MO6lwGhoC2gOAjuouGf/VO0m7vQRh8QNMl2Uf6SwAtzZ9bOw3UIeBukEGNJl5dtXQ==}
+ engines: {node: '>=14.16'}
dependencies:
- component-emitter: 1.3.0
- cookiejar: 2.1.4
- debug: 4.3.4
- fast-safe-stringify: 2.1.1
- form-data: 4.0.0
- formidable: 2.1.2
- methods: 1.1.2
- mime: 2.6.0
- qs: 6.11.2
- semver: 7.5.4
- transitivePeerDependencies:
- - supports-color
- dev: true
-
- /supports-color@2.0.0:
- resolution: {integrity: sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==}
- engines: {node: '>=0.8.0'}
- dev: true
+ '@tokenizer/token': 0.3.0
+ peek-readable: 5.0.0
/supports-color@5.5.0:
resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==}
@@ -10241,71 +5650,30 @@ packages:
engines: {node: '>=8'}
dependencies:
has-flag: 4.0.0
- dev: true
-
- /supports-color@8.1.1:
- resolution: {integrity: sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==}
- engines: {node: '>=10'}
- dependencies:
- has-flag: 4.0.0
- /supports-hyperlinks@2.3.0:
- resolution: {integrity: sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA==}
- engines: {node: '>=8'}
- dependencies:
- has-flag: 4.0.0
- supports-color: 7.2.0
- dev: true
+ /supports-color@9.4.0:
+ resolution: {integrity: sha512-VL+lNrEoIXww1coLPOmiEmK/0sGigko5COxI09KzHc2VJXJsQ37UaQ+8quuxjDeA7+KnLGTWRyOXSLLR2Wb4jw==}
+ engines: {node: '>=12'}
/supports-preserve-symlinks-flag@1.0.0:
resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==}
engines: {node: '>= 0.4'}
- /svgo@3.0.2:
- resolution: {integrity: sha512-Z706C1U2pb1+JGP48fbazf3KxHrWOsLme6Rv7imFBn5EnuanDW1GPaA/P1/dvObE670JDePC3mnj0k0B7P0jjQ==}
- engines: {node: '>=14.0.0'}
- hasBin: true
- dependencies:
- '@trysound/sax': 0.2.0
- commander: 7.2.0
- css-select: 5.1.0
- css-tree: 2.3.1
- csso: 5.0.5
- picocolors: 1.0.0
- dev: true
-
- /swagger-parser@10.0.3(openapi-types@12.1.3):
- resolution: {integrity: sha512-nF7oMeL4KypldrQhac8RyHerJeGPD1p2xDh900GPvc+Nk7nWP6jX2FcC7WmkinMoAmoO774+AFXcWsW8gMWEIg==}
- engines: {node: '>=10'}
- dependencies:
- '@apidevtools/swagger-parser': 10.0.3(openapi-types@12.1.3)
- transitivePeerDependencies:
- - openapi-types
- dev: true
-
- /swagger-schema-official@2.0.0-bab6bed:
- resolution: {integrity: sha512-rCC0NWGKr/IJhtRuPq/t37qvZHI/mH4I4sxflVM+qgVe5Z2uOCivzWaVbuioJaB61kvm5UvB7b49E+oBY0M8jA==}
- dev: true
-
- /sync-rpc@1.3.6:
- resolution: {integrity: sha512-J8jTXuZzRlvU7HemDgHi3pGnh/rkoqR/OZSjhTyyZrEkkYQbk7Z33AXp37mkPfPpfdOuj7Ex3H/TJM1z48uPQw==}
+ /synckit@0.6.2:
+ resolution: {integrity: sha512-Vhf+bUa//YSTYKseDiiEuQmhGCoIF3CVBhunm3r/DQnYiGT4JssmnKQc44BIyOZRK2pKjXXAgbhfmbeoC9CJpA==}
+ engines: {node: '>=12.20'}
dependencies:
- get-port: 3.2.0
+ tslib: 2.6.2
dev: true
- /synckit@0.8.5:
- resolution: {integrity: sha512-L1dapNV6vu2s/4Sputv8xGsCdAVlb5nRDMFU/E27D44l5U6cw1g0dGd45uLc+OXjNMmF4ntiMdCimzcjFKQI8Q==}
+ /synckit@0.8.8:
+ resolution: {integrity: sha512-HwOKAP7Wc5aRGYdKH+dw0PRRpbO841v2DENBtjnR5HFWoiNByAl7vrx3p0G/rCyYXQsrxqtX48TImFtPcIHSpQ==}
engines: {node: ^14.18.0 || >=16.0.0}
dependencies:
- '@pkgr/utils': 2.4.2
+ '@pkgr/core': 0.1.1
tslib: 2.6.2
dev: true
- /tapable@2.2.1:
- resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==}
- engines: {node: '>=6'}
- dev: true
-
/tar-fs@1.16.3:
resolution: {integrity: sha512-NvCeXpYx7OsmOh8zIOP/ebG55zZmxLE0etfWRbWok+q2Qo8x/vOR/IJT1taADXPe+jsiu9axDb3X4B+iIgNlKw==}
dependencies:
@@ -10315,6 +5683,15 @@ packages:
tar-stream: 1.6.2
dev: false
+ /tar-fs@2.1.1:
+ resolution: {integrity: sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==}
+ dependencies:
+ chownr: 1.1.4
+ mkdirp-classic: 0.5.3
+ pump: 3.0.0
+ tar-stream: 2.2.0
+ dev: false
+
/tar-stream@1.6.2:
resolution: {integrity: sha512-rzS0heiNf8Xn7/mpdSVVSMAWAoy9bfb1WOTYC78Z0UQKeKa/CWS8FOq0lKGNa8DWKAn9gxjCvMLYc5PGXYlK2A==}
engines: {node: '>= 0.8.0'}
@@ -10328,6 +5705,17 @@ packages:
xtend: 4.0.2
dev: false
+ /tar-stream@2.2.0:
+ resolution: {integrity: sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==}
+ engines: {node: '>=6'}
+ dependencies:
+ bl: 4.1.0
+ end-of-stream: 1.4.4
+ fs-constants: 1.0.0
+ inherits: 2.0.4
+ readable-stream: 3.6.2
+ dev: false
+
/tar@6.2.0:
resolution: {integrity: sha512-/Wo7DcT0u5HUV486xg675HtjNd3BXZ6xDbzsCUZPt5iw8bTQ63bP0Raut3mvro9u+CUyq7YQd8Cx55fsZXxqLQ==}
engines: {node: '>=10'}
@@ -10338,7 +5726,6 @@ packages:
minizlib: 2.1.2
mkdirp: 1.0.4
yallist: 4.0.0
- dev: false
/targz@1.0.1:
resolution: {integrity: sha512-6q4tP9U55mZnRuMTBqnqc3nwYQY3kv+QthCFZuMk+Tn1qYUnMPmL/JZ/mzgXINzFpSqfU+242IFmFU9VPvqaQw==}
@@ -10351,139 +5738,61 @@ packages:
engines: {node: '>=8.0.0'}
dev: false
- /term-size@2.2.1:
- resolution: {integrity: sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg==}
- engines: {node: '>=8'}
-
- /terser-webpack-plugin@5.3.9(webpack@5.88.2):
- resolution: {integrity: sha512-ZuXsqE07EcggTWQjXUj+Aot/OMcD0bMKGgF63f7UxYcu5/AJF53aIpK1YoP5xR9l6s/Hy2b+t1AM0bLNPRuhwA==}
- engines: {node: '>= 10.13.0'}
- peerDependencies:
- '@swc/core': '*'
- esbuild: '*'
- uglify-js: '*'
- webpack: ^5.1.0
- peerDependenciesMeta:
- '@swc/core':
- optional: true
- esbuild:
- optional: true
- uglify-js:
- optional: true
- dependencies:
- '@jridgewell/trace-mapping': 0.3.19
- jest-worker: 27.5.1
- schema-utils: 3.3.0
- serialize-javascript: 6.0.1
- terser: 5.20.0
- webpack: 5.88.2(webpack-cli@5.1.4)
- dev: true
-
- /terser@5.20.0:
- resolution: {integrity: sha512-e56ETryaQDyebBwJIWYB2TT6f2EZ0fL0sW/JRXNMN26zZdKi2u/E/5my5lG6jNxym6qsrVXfFRmOdV42zlAgLQ==}
+ /tempura@0.4.0:
+ resolution: {integrity: sha512-ghCAK7t3Yuy40NUA/pmS1aDY8M5MfZT4+S465S8YvwwDdgk3jLm/5BGwtMG/rMICDYY8T7Owe1qm91ArBOKd6w==}
engines: {node: '>=10'}
- hasBin: true
- dependencies:
- '@jridgewell/source-map': 0.3.5
- acorn: 8.10.0
- commander: 2.20.3
- source-map-support: 0.5.21
- dev: true
+
+ /terminal-size@4.0.0:
+ resolution: {integrity: sha512-rcdty1xZ2/BkWa4ANjWRp4JGpda2quksXIHgn5TMjNBPZfwzJIgR68DKfSYiTL+CZWowDX/sbOo5ME/FRURvYQ==}
+ engines: {node: '>=18'}
/text-table@0.2.0:
resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==}
dev: true
- /thunky@1.1.0:
- resolution: {integrity: sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==}
- dev: true
+ /thread-stream@2.4.1:
+ resolution: {integrity: sha512-d/Ex2iWd1whipbT681JmTINKw0ZwOUBZm7+Gjs64DHuX34mmw8vJL2bFAaNacaW72zYiTJxSHi5abUuOi5nsfg==}
+ dependencies:
+ real-require: 0.2.0
/tildify@2.0.0:
resolution: {integrity: sha512-Cc+OraorugtXNfs50hU9KS369rFXCfgGLpfCfvlc+Ud5u6VWmUQsOAa9HbTvheQdYnrdJqqv1e5oIqXppMYnSw==}
engines: {node: '>=8'}
dev: false
- /time-span@4.0.0:
- resolution: {integrity: sha512-MyqZCTGLDZ77u4k+jqg4UlrzPTPZ49NDlaekU6uuFaJLzPIN1woaRXCbGeqOfxwc3Y37ZROGAJ614Rdv7Olt+g==}
- engines: {node: '>=10'}
- dependencies:
- convert-hrtime: 3.0.0
- dev: true
-
- /titleize@3.0.0:
- resolution: {integrity: sha512-KxVu8EYHDPBdUYdKZdKtU2aj2XfEx9AfjXxE/Aj0vT06w2icA09Vus1rh6eSu1y01akYg6BjIK/hxyLJINoMLQ==}
+ /time-span@5.1.0:
+ resolution: {integrity: sha512-75voc/9G4rDIJleOo4jPvN4/YC4GRZrY8yy1uU4lwrB3XEQbWve8zXoO5No4eFrGcTAMYyoY67p8jRQdtA1HbA==}
engines: {node: '>=12'}
- dev: true
+ dependencies:
+ convert-hrtime: 5.0.0
/tmp-cache@1.1.0:
resolution: {integrity: sha512-j040fkL/x+XAZQ9K3bKGEPwgYhOZNBQLa3NXEADUiuno9C+3N2JJA4bVPDREixp604G3/vTXWA3DIPpA9lu1RQ==}
engines: {node: '>=6'}
- /tmp@0.2.1:
- resolution: {integrity: sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==}
- engines: {node: '>=8.17.0'}
- dependencies:
- rimraf: 3.0.2
- dev: true
-
/to-buffer@1.1.1:
resolution: {integrity: sha512-lx9B5iv7msuFYE3dytT+KE5tap+rNYw+K4jVkb9R/asAb+pbBSM17jtunHplhBe6RRJdZx3Pn2Jph24O32mOVg==}
dev: false
- /to-fast-properties@2.0.0:
- resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==}
- engines: {node: '>=4'}
- dev: true
-
- /to-object-path@0.3.0:
- resolution: {integrity: sha512-9mWHdnGRuh3onocaHzukyvCZhzvr6tiflAy/JRFXcJX0TjgfWA9pk9t8CMbzmBE4Jfw58pXbkngtBtqYxzNEyg==}
- engines: {node: '>=0.10.0'}
- dependencies:
- kind-of: 3.2.2
- dev: true
-
- /to-regex-range@2.1.1:
- resolution: {integrity: sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg==}
- engines: {node: '>=0.10.0'}
- dependencies:
- is-number: 3.0.0
- repeat-string: 1.6.1
- dev: true
-
/to-regex-range@5.0.1:
resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==}
engines: {node: '>=8.0'}
dependencies:
is-number: 7.0.0
- /to-regex@3.0.2:
- resolution: {integrity: sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==}
- engines: {node: '>=0.10.0'}
- dependencies:
- define-property: 2.0.2
- extend-shallow: 3.0.2
- regex-not: 1.0.2
- safe-regex: 1.1.0
- dev: true
-
/toidentifier@1.0.1:
resolution: {integrity: sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==}
engines: {node: '>=0.6'}
- /token-types@4.2.1:
- resolution: {integrity: sha512-6udB24Q737UD/SDsKAHI9FCRP7Bqc9D/MQUV02ORQg5iskjtLJlZJNdN4kKtcdtwCeWIwIHDGaUsTsCCAa8sFQ==}
- engines: {node: '>=10'}
+ /token-types@5.0.1:
+ resolution: {integrity: sha512-Y2fmSnZjQdDb9W4w4r1tswlMHylzWIeOKpx0aZH9BgGtACHhrk3OkT52AzwcuqTRBZtvvnTjDBh8eynMulu8Vg==}
+ engines: {node: '>=14.16'}
dependencies:
'@tokenizer/token': 0.3.0
ieee754: 1.2.1
/tr46@0.0.3:
resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==}
- dev: false
-
- /traverse@0.6.7:
- resolution: {integrity: sha512-/y956gpUo9ZNCb99YjxG7OaslxZWHfCHAUUfshwqOXmxUIvqLjVO581BT+gM59+QV9tFe6/CGG53tsA1Y7RSdg==}
- dev: true
/truncate-utf8-bytes@1.0.2:
resolution: {integrity: sha512-95Pu1QXQvruGEhv62XCMO3Mm90GscOCClvrIUwCM0PYOXK3kaF3l3sIHxx71ThJfcbM2O5Au6SO3AWCSEfW4mQ==}
@@ -10494,13 +5803,13 @@ packages:
/truncatise@0.0.8:
resolution: {integrity: sha512-cXzueh9pzBCsLzhToB4X4gZCb3KYkrsAcBAX97JnazE74HOl3cpBJYEV7nabHeG/6/WXCU5Yujlde/WPBUwnsg==}
- /ts-api-utils@1.0.3(typescript@5.1.6):
- resolution: {integrity: sha512-wNMeqtMz5NtwpT/UZGY5alT+VoKdSsOOP/kqHFcUW1P/VRhH2wJ48+DN2WwUliNbQ976ETwDL0Ifd2VVvgonvg==}
- engines: {node: '>=16.13.0'}
+ /ts-api-utils@1.2.1(typescript@5.3.3):
+ resolution: {integrity: sha512-RIYA36cJn2WiH9Hy77hdF9r7oEwxAtB/TS9/S4Qd90Ap4z5FSiin5zEiTL44OII1Y3IIlEvxwxFUVgrHSZ/UpA==}
+ engines: {node: '>=16'}
peerDependencies:
typescript: '>=4.2.0'
dependencies:
- typescript: 5.1.6
+ typescript: 5.3.3
dev: true
/ts-morph@16.0.0:
@@ -10510,8 +5819,46 @@ packages:
code-block-writer: 11.0.3
dev: false
- /tsconfig-paths@3.14.2:
- resolution: {integrity: sha512-o/9iXgCYc5L/JxCHPe3Hvh8Q/2xm5Z+p18PESBU6Ff33695QnCHBEjcytY2q19ua7Mbl/DavtBOLq+oG0RCL+g==}
+ /ts-morph@21.0.1:
+ resolution: {integrity: sha512-dbDtVdEAncKctzrVZ+Nr7kHpHkv+0JDJb2MjjpBaj8bFeCkePU9rHfMklmhuLFnpeq/EJZk2IhStY6NzqgjOkg==}
+ dependencies:
+ '@ts-morph/common': 0.22.0
+ code-block-writer: 12.0.0
+
+ /ts-node@10.9.2(@swc/core@1.4.0)(@types/node@20.11.17)(typescript@5.3.3):
+ resolution: {integrity: sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==}
+ hasBin: true
+ peerDependencies:
+ '@swc/core': '>=1.2.50'
+ '@swc/wasm': '>=1.2.50'
+ '@types/node': '*'
+ typescript: '>=2.7'
+ peerDependenciesMeta:
+ '@swc/core':
+ optional: true
+ '@swc/wasm':
+ optional: true
+ dependencies:
+ '@cspotcode/source-map-support': 0.8.1
+ '@swc/core': 1.4.0
+ '@tsconfig/node10': 1.0.9
+ '@tsconfig/node12': 1.0.11
+ '@tsconfig/node14': 1.0.3
+ '@tsconfig/node16': 1.0.4
+ '@types/node': 20.11.17
+ acorn: 8.11.3
+ acorn-walk: 8.3.2
+ arg: 4.1.3
+ create-require: 1.1.1
+ diff: 4.0.2
+ make-error: 1.3.6
+ typescript: 5.3.3
+ v8-compile-cache-lib: 3.0.1
+ yn: 3.1.1
+ dev: true
+
+ /tsconfig-paths@3.15.0:
+ resolution: {integrity: sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==}
dependencies:
'@types/json5': 0.0.29
json5: 1.0.2
@@ -10519,35 +5866,20 @@ packages:
strip-bom: 3.0.0
dev: true
- /tslib@1.14.1:
- resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==}
- dev: true
-
/tslib@2.6.2:
resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==}
+ dev: true
/tsscmp@1.0.6:
resolution: {integrity: sha512-LxhtAkPDTkVCMQjt2h6eBVY28KCjikZqZfMcC15YBeNjkgUpdCfBu5HoiOTDu86v6smE8yOjyEktJ8hlbANHQA==}
engines: {node: '>=0.6.x'}
- dev: false
- /tsse@2.1.0:
- resolution: {integrity: sha512-rYyp1CO0VcKCIoAlMKAaLEb/1v5arucsRWSc+kkz9k2/GQN7rVMUH5Dmc7l3ZuiJGZ7jwEDO9Z0Qv6LkAqCdDA==}
- engines: {node: '>=4'}
+ /tunnel-agent@0.6.0:
+ resolution: {integrity: sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==}
dependencies:
safe-buffer: 5.2.1
dev: false
- /tsutils@3.21.0(typescript@5.1.6):
- resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==}
- engines: {node: '>= 6'}
- peerDependencies:
- typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta'
- dependencies:
- tslib: 1.14.1
- typescript: 5.1.6
- dev: true
-
/type-check@0.4.0:
resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==}
engines: {node: '>= 0.8.0'}
@@ -10555,20 +5887,11 @@ packages:
prelude-ls: 1.2.1
dev: true
- /type-detect@4.0.8:
- resolution: {integrity: sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==}
- engines: {node: '>=4'}
- dev: true
-
/type-fest@0.20.2:
resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==}
engines: {node: '>=10'}
dev: true
- /type-fest@0.21.3:
- resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==}
- engines: {node: '>=10'}
-
/type-fest@0.6.0:
resolution: {integrity: sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==}
engines: {node: '>=8'}
@@ -10579,10 +5902,13 @@ packages:
engines: {node: '>=8'}
dev: true
+ /type-fest@2.19.0:
+ resolution: {integrity: sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==}
+ engines: {node: '>=12.20'}
+
/type-fest@3.13.1:
resolution: {integrity: sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==}
engines: {node: '>=14.16'}
- dev: true
/type-is@1.6.18:
resolution: {integrity: sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==}
@@ -10595,8 +5921,8 @@ packages:
resolution: {integrity: sha512-Y8KTSIglk9OZEr8zywiIHG/kmQ7KWyjseXs1CbSo8vC42w7hg2HgYTxSWwP0+is7bWDc1H+Fo026CpHFwm8tkw==}
engines: {node: '>= 0.4'}
dependencies:
- call-bind: 1.0.2
- get-intrinsic: 1.2.1
+ call-bind: 1.0.5
+ get-intrinsic: 1.2.2
is-typed-array: 1.1.12
dev: true
@@ -10604,7 +5930,7 @@ packages:
resolution: {integrity: sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA==}
engines: {node: '>= 0.4'}
dependencies:
- call-bind: 1.0.2
+ call-bind: 1.0.5
for-each: 0.3.3
has-proto: 1.0.1
is-typed-array: 1.1.12
@@ -10615,7 +5941,7 @@ packages:
engines: {node: '>= 0.4'}
dependencies:
available-typed-arrays: 1.0.5
- call-bind: 1.0.2
+ call-bind: 1.0.5
for-each: 0.3.3
has-proto: 1.0.1
is-typed-array: 1.1.12
@@ -10624,16 +5950,15 @@ packages:
/typed-array-length@1.0.4:
resolution: {integrity: sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==}
dependencies:
- call-bind: 1.0.2
+ call-bind: 1.0.5
for-each: 0.3.3
is-typed-array: 1.1.12
dev: true
- /typescript@5.1.6:
- resolution: {integrity: sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA==}
+ /typescript@5.3.3:
+ resolution: {integrity: sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==}
engines: {node: '>=14.17'}
hasBin: true
- dev: true
/uid-safe@2.1.5:
resolution: {integrity: sha512-KPHm4VL5dDXKz01UuEd88Df+KzynaohSL9fBh096KWAxSKZQDI2uBrVqtvRM4rwrIrRRKsdLNML/lnaaVSRioA==}
@@ -10644,44 +5969,14 @@ packages:
/unbox-primitive@1.0.2:
resolution: {integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==}
dependencies:
- call-bind: 1.0.2
+ call-bind: 1.0.5
has-bigints: 1.0.2
has-symbols: 1.0.3
which-boxed-primitive: 1.0.2
dev: true
- /unicode-canonical-property-names-ecmascript@2.0.0:
- resolution: {integrity: sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==}
- engines: {node: '>=4'}
- dev: true
-
- /unicode-match-property-ecmascript@2.0.0:
- resolution: {integrity: sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==}
- engines: {node: '>=4'}
- dependencies:
- unicode-canonical-property-names-ecmascript: 2.0.0
- unicode-property-aliases-ecmascript: 2.1.0
- dev: true
-
- /unicode-match-property-value-ecmascript@2.1.0:
- resolution: {integrity: sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==}
- engines: {node: '>=4'}
- dev: true
-
- /unicode-property-aliases-ecmascript@2.1.0:
- resolution: {integrity: sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==}
- engines: {node: '>=4'}
- dev: true
-
- /union-value@1.0.1:
- resolution: {integrity: sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==}
- engines: {node: '>=0.10.0'}
- dependencies:
- arr-union: 3.1.0
- get-value: 2.0.6
- is-extendable: 0.1.1
- set-value: 2.0.1
- dev: true
+ /undici-types@5.26.5:
+ resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==}
/unique-filename@1.1.1:
resolution: {integrity: sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==}
@@ -10699,76 +5994,32 @@ packages:
dev: false
optional: true
- /universalify@0.1.2:
- resolution: {integrity: sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==}
- engines: {node: '>= 4.0.0'}
- dev: true
-
- /universalify@2.0.0:
- resolution: {integrity: sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==}
+ /universalify@2.0.1:
+ resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==}
engines: {node: '>= 10.0.0'}
+ dev: false
/unpipe@1.0.0:
resolution: {integrity: sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==}
engines: {node: '>= 0.8'}
- /unset-value@1.0.0:
- resolution: {integrity: sha512-PcA2tsuGSF9cnySLHTLSh2qrQiJ70mn+r+Glzxv2TWZblxsxCC52BDlZoPCsz7STd9pN7EZetkWZBAvk4cgZdQ==}
- engines: {node: '>=0.10.0'}
- dependencies:
- has-value: 0.3.1
- isobject: 3.0.1
- dev: true
-
- /untildify@4.0.0:
- resolution: {integrity: sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==}
- engines: {node: '>=8'}
- dev: true
-
- /update-browserslist-db@1.0.13(browserslist@4.22.1):
+ /update-browserslist-db@1.0.13(browserslist@4.22.3):
resolution: {integrity: sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==}
hasBin: true
peerDependencies:
browserslist: '>= 4.21.0'
dependencies:
- browserslist: 4.22.1
- escalade: 3.1.1
+ browserslist: 4.22.3
+ escalade: 3.1.2
picocolors: 1.0.0
dev: true
- /upper-case-first@2.0.2:
- resolution: {integrity: sha512-514ppYHBaKwfJRK/pNC6c/OxfGa0obSnAl106u97Ed0I625Nin96KAjttZF6ZL3e1XLtphxnqrOi9iWgm+u+bg==}
- dependencies:
- tslib: 2.6.2
-
- /upper-case@2.0.2:
- resolution: {integrity: sha512-KgdgDGJt2TpuwBUIjgG6lzw2GWFRCW9Qkfkiv0DxqHHLYJHmtmdUIKcZd8rHgFSjopVTlw6ggzCm1b8MFQwikg==}
- dependencies:
- tslib: 2.6.2
-
/uri-js@4.4.1:
resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==}
dependencies:
punycode: 2.3.0
dev: true
- /urix@0.1.0:
- resolution: {integrity: sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg==}
- deprecated: Please see https://github.com/lydell/urix#deprecated
- dev: true
-
- /url@0.10.3:
- resolution: {integrity: sha512-hzSUW2q06EqL1gKM/a+obYHLIO6ct2hwPuviqTTOcfFVc61UbfJ2Q32+uGL/HCPxKqrdGB5QUwIe7UqlDgwsOQ==}
- dependencies:
- punycode: 1.3.2
- querystring: 0.2.0
- dev: false
-
- /use@3.1.1:
- resolution: {integrity: sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==}
- engines: {node: '>=0.10.0'}
- dev: true
-
/utf8-byte-length@1.0.4:
resolution: {integrity: sha512-4+wkEYLBbWxqTahEsWrhxepcoVOJ+1z5PGIjPZxRkytcdSUaNjIjBM7Xn8E+pdSuV7SzvWovBFA54FO0JSoqhA==}
dev: false
@@ -10776,46 +6027,17 @@ packages:
/util-deprecate@1.0.2:
resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==}
- /util@0.12.5:
- resolution: {integrity: sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==}
- dependencies:
- inherits: 2.0.4
- is-arguments: 1.1.1
- is-generator-function: 1.0.10
- is-typed-array: 1.1.12
- which-typed-array: 1.1.11
- dev: false
-
- /utila@0.4.0:
- resolution: {integrity: sha512-Z0DbgELS9/L/75wZbro8xAnT50pBVFQZ+hUEueGDU5FN51YSCYM+jdxsfCiHjwNP/4LCDD0i/graKpeBnOXKRA==}
- dev: true
-
- /utils-merge@1.0.1:
- resolution: {integrity: sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==}
- engines: {node: '>= 0.4.0'}
- dev: true
-
/uuid-random@1.3.2:
resolution: {integrity: sha512-UOzej0Le/UgkbWEO8flm+0y+G+ljUon1QWTEZOq1rnMAsxo2+SckbiZdKzAHHlVh6gJqI1TjC/xwgR50MuCrBQ==}
dev: false
- /uuid@8.0.0:
- resolution: {integrity: sha512-jOXGuXZAWdsTH7eZLtyXMqUb9EcWMGZNbL9YcGBJl4MH4nrxHmZJhEHvyLFrkxo+28uLb/NYRcStH48fnD0Vzw==}
+ /uuid@9.0.1:
+ resolution: {integrity: sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==}
hasBin: true
dev: false
- /uuid@8.3.2:
- resolution: {integrity: sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==}
- hasBin: true
- dev: true
-
- /uuid@9.0.0:
- resolution: {integrity: sha512-MXcSTerfPa4uqyzStbRoTgt5XIe3x5+42+q1sDuy3R5MDk66URdLMOZe5aPX/SQd+kuYAh0FdP/pO28IkQyTeg==}
- hasBin: true
- dev: false
-
- /valid-url@1.0.9:
- resolution: {integrity: sha512-QQDsV8OnSf5Uc30CKSwG9lnhMPe6exHtTXLRYX8uMwKENy640pU+2BgBL0LRbDh/eYRahNCS7aewCx0wf3NYVA==}
+ /v8-compile-cache-lib@3.0.1:
+ resolution: {integrity: sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==}
dev: true
/validate-npm-package-license@3.0.4:
@@ -10825,12 +6047,6 @@ packages:
spdx-expression-parse: 3.0.1
dev: true
- /validate-npm-package-name@3.0.0:
- resolution: {integrity: sha512-M6w37eVCMMouJ9V/sdPGnC5H4uDr73/+xdq0FBLO3TFFX1+7wiUY6Es328NN+y43tmY+doUdN9g9J21vqB7iLw==}
- dependencies:
- builtins: 1.0.3
- dev: true
-
/validator@13.11.0:
resolution: {integrity: sha512-Ii+sehpSfZy+At5nPdnyMhx78fEoPDkR2XW/zimHEL3MyGJQOCQ7WeP20jPYRz7ZCpcKLB21NxuXHF3bxjStBQ==}
engines: {node: '>= 0.10'}
@@ -10839,209 +6055,59 @@ packages:
resolution: {integrity: sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==}
engines: {node: '>= 0.8'}
- /watchpack@2.4.0:
- resolution: {integrity: sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==}
- engines: {node: '>=10.13.0'}
- dependencies:
- glob-to-regexp: 0.4.1
- graceful-fs: 4.2.11
- dev: true
-
- /wbuf@1.7.3:
- resolution: {integrity: sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==}
- dependencies:
- minimalistic-assert: 1.0.1
- dev: true
-
- /wcwidth@1.0.1:
- resolution: {integrity: sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==}
+ /vite-plugin-restart@0.4.0(vite@5.1.1):
+ resolution: {integrity: sha512-SXeyKQAzRFmEmEyGP2DjaTbx22D1K5MapyNiAP7Xa14UyFgNSDjZ86bfjWksA0pqn+bZyxnVLJpCiqDuG+tOcg==}
+ peerDependencies:
+ vite: ^2.9.0 || ^3.0.0 || ^4.0.0 || ^5.0.0
dependencies:
- defaults: 1.0.4
+ micromatch: 4.0.5
+ vite: 5.1.1(@types/node@20.11.17)
dev: true
- /webidl-conversions@3.0.1:
- resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==}
- dev: false
-
- /webpack-cli@5.1.4(webpack@5.88.2):
- resolution: {integrity: sha512-pIDJHIEI9LR0yxHXQ+Qh95k2EvXpWzZ5l+d+jIo+RdSm9MiHfzazIxwwni/p7+x4eJZuvG1AJwgC4TNQ7NRgsg==}
- engines: {node: '>=14.15.0'}
+ /vite@5.1.1(@types/node@20.11.17):
+ resolution: {integrity: sha512-wclpAgY3F1tR7t9LL5CcHC41YPkQIpKUGeIuT8MdNwNZr6OqOTLs7JX5vIHAtzqLWXts0T+GDrh9pN2arneKqg==}
+ engines: {node: ^18.0.0 || >=20.0.0}
hasBin: true
peerDependencies:
- '@webpack-cli/generators': '*'
- webpack: 5.x.x
- webpack-bundle-analyzer: '*'
- webpack-dev-server: '*'
+ '@types/node': ^18.0.0 || >=20.0.0
+ less: '*'
+ lightningcss: ^1.21.0
+ sass: '*'
+ stylus: '*'
+ sugarss: '*'
+ terser: ^5.4.0
peerDependenciesMeta:
- '@webpack-cli/generators':
+ '@types/node':
optional: true
- webpack-bundle-analyzer:
+ less:
optional: true
- webpack-dev-server:
+ lightningcss:
optional: true
- dependencies:
- '@discoveryjs/json-ext': 0.5.7
- '@webpack-cli/configtest': 2.1.1(webpack-cli@5.1.4)(webpack@5.88.2)
- '@webpack-cli/info': 2.0.2(webpack-cli@5.1.4)(webpack@5.88.2)
- '@webpack-cli/serve': 2.0.5(webpack-cli@5.1.4)(webpack@5.88.2)
- colorette: 2.0.20
- commander: 10.0.1
- cross-spawn: 7.0.3
- envinfo: 7.10.0
- fastest-levenshtein: 1.0.16
- import-local: 3.1.0
- interpret: 3.1.1
- rechoir: 0.8.0
- webpack: 5.88.2(webpack-cli@5.1.4)
- webpack-merge: 5.9.0
- dev: true
-
- /webpack-dev-middleware@5.3.3(webpack@5.88.2):
- resolution: {integrity: sha512-hj5CYrY0bZLB+eTO+x/j67Pkrquiy7kWepMHmUMoPsmcUaeEnQJqFzHJOyxgWlq746/wUuA64p9ta34Kyb01pA==}
- engines: {node: '>= 12.13.0'}
- peerDependencies:
- webpack: ^4.0.0 || ^5.0.0
- dependencies:
- colorette: 2.0.20
- memfs: 3.5.3
- mime-types: 2.1.35
- range-parser: 1.2.1
- schema-utils: 4.2.0
- webpack: 5.88.2(webpack-cli@5.1.4)
- dev: true
-
- /webpack-dev-server@4.15.1(webpack-cli@5.1.4)(webpack@5.88.2):
- resolution: {integrity: sha512-5hbAst3h3C3L8w6W4P96L5vaV0PxSmJhxZvWKYIdgxOQm8pNZ5dEOmmSLBVpP85ReeyRt6AS1QJNyo/oFFPeVA==}
- engines: {node: '>= 12.13.0'}
- hasBin: true
- peerDependencies:
- webpack: ^4.37.0 || ^5.0.0
- webpack-cli: '*'
- peerDependenciesMeta:
- webpack:
+ sass:
optional: true
- webpack-cli:
+ stylus:
optional: true
- dependencies:
- '@types/bonjour': 3.5.11
- '@types/connect-history-api-fallback': 1.5.1
- '@types/express': 4.17.18
- '@types/serve-index': 1.9.2
- '@types/serve-static': 1.15.3
- '@types/sockjs': 0.3.34
- '@types/ws': 8.5.6
- ansi-html-community: 0.0.8
- bonjour-service: 1.1.1
- chokidar: 3.5.3
- colorette: 2.0.20
- compression: 1.7.4
- connect-history-api-fallback: 2.0.0
- default-gateway: 6.0.3
- express: 4.18.2
- graceful-fs: 4.2.11
- html-entities: 2.4.0
- http-proxy-middleware: 2.0.6(@types/express@4.17.18)
- ipaddr.js: 2.1.0
- launch-editor: 2.6.0
- open: 8.4.2
- p-retry: 4.6.2
- rimraf: 3.0.2
- schema-utils: 4.2.0
- selfsigned: 2.1.1
- serve-index: 1.9.1
- sockjs: 0.3.24
- spdy: 4.0.2
- webpack: 5.88.2(webpack-cli@5.1.4)
- webpack-cli: 5.1.4(webpack@5.88.2)
- webpack-dev-middleware: 5.3.3(webpack@5.88.2)
- ws: 8.14.2
- transitivePeerDependencies:
- - bufferutil
- - debug
- - supports-color
- - utf-8-validate
- dev: true
-
- /webpack-merge@4.2.2:
- resolution: {integrity: sha512-TUE1UGoTX2Cd42j3krGYqObZbOD+xF7u28WB7tfUordytSjbWTIjK/8V0amkBfTYN4/pB/GIDlJZZ657BGG19g==}
- dependencies:
- lodash: 4.17.21
- dev: true
-
- /webpack-merge@5.9.0:
- resolution: {integrity: sha512-6NbRQw4+Sy50vYNTw7EyOn41OZItPiXB8GNv3INSoe3PSFaHJEz3SHTrYVaRm2LilNGnFUzh0FAwqPEmU/CwDg==}
- engines: {node: '>=10.0.0'}
- dependencies:
- clone-deep: 4.0.1
- wildcard: 2.0.1
- dev: true
-
- /webpack-sources@3.2.3:
- resolution: {integrity: sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==}
- engines: {node: '>=10.13.0'}
- dev: true
-
- /webpack@5.88.2(webpack-cli@5.1.4):
- resolution: {integrity: sha512-JmcgNZ1iKj+aiR0OvTYtWQqJwq37Pf683dY9bVORwVbUrDhLhdn/PlO2sHsFHPkj7sHNQF3JwaAkp49V+Sq1tQ==}
- engines: {node: '>=10.13.0'}
- hasBin: true
- peerDependencies:
- webpack-cli: '*'
- peerDependenciesMeta:
- webpack-cli:
+ sugarss:
+ optional: true
+ terser:
optional: true
dependencies:
- '@types/eslint-scope': 3.7.5
- '@types/estree': 1.0.2
- '@webassemblyjs/ast': 1.11.6
- '@webassemblyjs/wasm-edit': 1.11.6
- '@webassemblyjs/wasm-parser': 1.11.6
- acorn: 8.10.0
- acorn-import-assertions: 1.9.0(acorn@8.10.0)
- browserslist: 4.22.1
- chrome-trace-event: 1.0.3
- enhanced-resolve: 5.15.0
- es-module-lexer: 1.3.1
- eslint-scope: 5.1.1
- events: 3.3.0
- glob-to-regexp: 0.4.1
- graceful-fs: 4.2.11
- json-parse-even-better-errors: 2.3.1
- loader-runner: 4.3.0
- mime-types: 2.1.35
- neo-async: 2.6.2
- schema-utils: 3.3.0
- tapable: 2.2.1
- terser-webpack-plugin: 5.3.9(webpack@5.88.2)
- watchpack: 2.4.0
- webpack-cli: 5.1.4(webpack@5.88.2)
- webpack-sources: 3.2.3
- transitivePeerDependencies:
- - '@swc/core'
- - esbuild
- - uglify-js
- dev: true
-
- /websocket-driver@0.7.4:
- resolution: {integrity: sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==}
- engines: {node: '>=0.8.0'}
- dependencies:
- http-parser-js: 0.5.8
- safe-buffer: 5.2.1
- websocket-extensions: 0.1.4
+ '@types/node': 20.11.17
+ esbuild: 0.19.12
+ postcss: 8.4.35
+ rollup: 4.10.0
+ optionalDependencies:
+ fsevents: 2.3.3
dev: true
- /websocket-extensions@0.1.4:
- resolution: {integrity: sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==}
- engines: {node: '>=0.8.0'}
- dev: true
+ /webidl-conversions@3.0.1:
+ resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==}
/whatwg-url@5.0.0:
resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==}
dependencies:
tr46: 0.0.3
webidl-conversions: 3.0.1
- dev: false
/which-boxed-primitive@1.0.2:
resolution: {integrity: sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==}
@@ -11053,15 +6119,16 @@ packages:
is-symbol: 1.0.4
dev: true
- /which-typed-array@1.1.11:
- resolution: {integrity: sha512-qe9UWWpkeG5yzZ0tNYxDmd7vo58HDBc39mZ0xWWpolAGADdFOzkfamWLDxkOWcvHQKVmdTyQdLD4NOfjLWTKew==}
+ /which-typed-array@1.1.13:
+ resolution: {integrity: sha512-P5Nra0qjSncduVPEAr7xhoF5guty49ArDTwzJ/yNuPIbZppyRxFQsRCWrocxIY+CnMVG+qfbU2FmDKyvSGClow==}
engines: {node: '>= 0.4'}
dependencies:
available-typed-arrays: 1.0.5
- call-bind: 1.0.2
+ call-bind: 1.0.5
for-each: 0.3.3
gopd: 1.0.1
has-tostringtag: 1.0.0
+ dev: true
/which@2.0.2:
resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==}
@@ -11074,77 +6141,36 @@ packages:
resolution: {integrity: sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==}
dependencies:
string-width: 4.2.3
- dev: false
-
- /wildcard@2.0.1:
- resolution: {integrity: sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ==}
- dev: true
/wordwrap@1.0.0:
resolution: {integrity: sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==}
- dev: true
- /wrap-ansi@6.2.0:
- resolution: {integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==}
- engines: {node: '>=8'}
+ /wrap-ansi@9.0.0:
+ resolution: {integrity: sha512-G8ura3S+3Z2G+mkgNRq8dqaFZAuxfsxpBB8OCTGRTCtp+l/v9nbFNmCUP1BZMts3G1142MsZfn6eeUKrr4PD1Q==}
+ engines: {node: '>=18'}
dependencies:
- ansi-styles: 4.3.0
- string-width: 4.2.3
- strip-ansi: 6.0.1
+ ansi-styles: 6.2.1
+ string-width: 7.1.0
+ strip-ansi: 7.1.0
/wrappy@1.0.2:
resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==}
- /ws@8.14.2:
- resolution: {integrity: sha512-wEBG1ftX4jcglPxgFCMJmZ2PLtSbJ2Peg6TmpJFTbe9GZYOQCDPdMYu/Tm0/bGZkw8paZnJY45J4K2PZrLYq8g==}
- engines: {node: '>=10.0.0'}
- peerDependencies:
- bufferutil: ^4.0.1
- utf-8-validate: '>=5.0.2'
- peerDependenciesMeta:
- bufferutil:
- optional: true
- utf-8-validate:
- optional: true
- dev: true
-
- /xml2js@0.5.0:
- resolution: {integrity: sha512-drPFnkQJik/O+uPKpqSgr22mpuFHqKdbS835iAQrUC73L2F5WkboIRd63ai/2Yg6I1jzifPFKH2NTK+cfglkIA==}
- engines: {node: '>=4.0.0'}
- dependencies:
- sax: 1.2.1
- xmlbuilder: 11.0.1
- dev: false
-
- /xmlbuilder@11.0.1:
- resolution: {integrity: sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==}
- engines: {node: '>=4.0'}
- dev: false
-
/xtend@4.0.2:
resolution: {integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==}
engines: {node: '>=0.4'}
dev: false
- /yallist@2.1.2:
- resolution: {integrity: sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==}
- dev: true
-
- /yallist@3.1.1:
- resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==}
- dev: true
-
/yallist@4.0.0:
resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==}
- /yaml@2.3.2:
- resolution: {integrity: sha512-N/lyzTPaJasoDmfV7YTrYCI0G/3ivm/9wdG0aHuheKowWQwGTsK0Eoiw6utmzAnI6pkJa0DUVygvp3spqqEKXg==}
- engines: {node: '>= 14'}
- dev: true
-
/yargs-parser@21.1.1:
resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==}
engines: {node: '>=12'}
+
+ /yn@3.1.1:
+ resolution: {integrity: sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==}
+ engines: {node: '>=6'}
dev: true
/yocto-queue@0.1.0:
@@ -11152,40 +6178,30 @@ packages:
engines: {node: '>=10'}
dev: true
- /youch-terminal@2.2.2:
- resolution: {integrity: sha512-JfVAsD0r88+vWVz+Im6bMk+c7gErDp1lq6Z1Na5LAyPZTwhB3VgO6HUQsm83I217mRFSuwVwEpnvwkK/TDTNhQ==}
+ /yocto-queue@1.0.0:
+ resolution: {integrity: sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==}
+ engines: {node: '>=12.20'}
+
+ /youch-terminal@2.2.3:
+ resolution: {integrity: sha512-/PE77ZwG072tXBvF47S9RL9/G80u86icZ5QwyjblyM67L4n/T5qQeM3Xrecbu8kkDDr/9T/PTj/X+6G/OSRQug==}
dependencies:
kleur: 4.1.5
string-width: 4.2.3
wordwrap: 1.0.0
- dev: true
- /youch@3.2.3:
- resolution: {integrity: sha512-ZBcWz/uzZaQVdCvfV4uk616Bbpf2ee+F/AvuKDR5EwX/Y4v06xWdtMluqTD7+KlZdM93lLm9gMZYo0sKBS0pgw==}
+ /youch@3.3.3:
+ resolution: {integrity: sha512-qSFXUk3UZBLfggAW3dJKg0BMblG5biqSF8M34E06o5CSsZtH92u9Hqmj2RzGiHDi64fhe83+4tENFP2DB6t6ZA==}
dependencies:
cookie: 0.5.0
mustache: 4.2.0
stacktracey: 2.1.8
- dev: true
-
- /z-schema@5.0.5:
- resolution: {integrity: sha512-D7eujBWkLa3p2sIpJA0d1pr7es+a7m0vFAnZLlCEKq/Ij2k0MLi9Br2UPxoxdYystm5K1yeBGzub0FlYUEWj2Q==}
- engines: {node: '>=8.0.0'}
- hasBin: true
- dependencies:
- lodash.get: 4.4.2
- lodash.isequal: 4.5.0
- validator: 13.11.0
- optionalDependencies:
- commander: 9.5.0
- dev: true
github.com/SpecialAro/adonis5-jwt/34941c10adcf89583a40767552b994ea499b92e3:
resolution: {tarball: https://codeload.github.com/SpecialAro/adonis5-jwt/tar.gz/34941c10adcf89583a40767552b994ea499b92e3}
name: adonis5-jwt
version: 1.1.7
dependencies:
- jose: 4.14.6
+ jose: 4.15.4
ts-morph: 16.0.0
- uuid: 9.0.0
+ uuid: 9.0.1
dev: false
diff --git a/providers/AppProvider.ts b/providers/AppProvider.ts
index 8d64412b..c84c0e61 100644
--- a/providers/AppProvider.ts
+++ b/providers/AppProvider.ts
@@ -1,7 +1,7 @@
-import { ApplicationContract } from '@ioc:Adonis/Core/Application';
+import { ApplicationService } from '@adonisjs/core/types'
export default class AppProvider {
- constructor(protected app: ApplicationContract) {}
+ constructor(protected app: ApplicationService) {}
public register() {
// Register your own bindings
diff --git a/providers/LegacyHashDriver.ts b/providers/LegacyHashDriver.ts
index 22f9de10..eb2a2635 100644
--- a/providers/LegacyHashDriver.ts
+++ b/providers/LegacyHashDriver.ts
@@ -1,5 +1,6 @@
-import bcrypt from 'bcrypt';
-import { HashDriverContract } from '@ioc:Adonis/Core/Hash';
+import bcrypt from 'bcrypt'
+import { HashDriverContract } from '@adonisjs/core/hash'
+
/**
* Implementation of custom bcrypt driver
*/
@@ -8,12 +9,12 @@ export class LegacyHashDriver implements HashDriverContract {
* Hash value
*/
public async make(value: string) {
- return bcrypt.hash(value, 10);
+ return bcrypt.hash(value, 10)
}
/**
* Verify value
*/
public async verify(hashedValue: string, plainValue: string) {
- return bcrypt.compare(plainValue, hashedValue);
+ return bcrypt.compare(plainValue, hashedValue)
}
}
diff --git a/providers/LegacyHasherProvider.ts b/providers/LegacyHasherProvider.ts
index 05b2d27c..a4a25d97 100644
--- a/providers/LegacyHasherProvider.ts
+++ b/providers/LegacyHasherProvider.ts
@@ -1,14 +1,14 @@
-import { ApplicationContract } from '@ioc:Adonis/Core/Application';
-import { LegacyHashDriver } from './LegacyHashDriver';
+import { LegacyHashDriver } from './LegacyHashDriver.js'
+import { ApplicationService } from '@adonisjs/core/types'
export default class LegacyHasherProvider {
- constructor(protected app: ApplicationContract) {}
+ constructor(protected app: ApplicationService) {}
public async boot() {
- const Hash = this.app.container.use('Adonis/Core/Hash');
+ const Hash = this.app.container.use('Adonis/Core/Hash')
Hash.extend('legacy', () => {
- return new LegacyHashDriver();
- });
+ return new LegacyHashDriver()
+ })
}
}
diff --git a/public/js/new.js b/public/js/new.js
index 62c2e4bb..593258e9 100644
--- a/public/js/new.js
+++ b/public/js/new.js
@@ -1,24 +1,24 @@
/* eslint-env browser */
-const elDrop = document.querySelector('#dropzone');
-const submitBtn = document.querySelector('#submitbutton');
-const fileInput = document.querySelector('#files');
+const elDrop = document.querySelector('#dropzone')
+const submitBtn = document.querySelector('#submitbutton')
+const fileInput = document.querySelector('#files')
-elDrop.addEventListener('dragover', event => {
- event.preventDefault();
-});
+elDrop.addEventListener('dragover', (event) => {
+ event.preventDefault()
+})
-elDrop.addEventListener('drop', async event => {
- event.preventDefault();
+elDrop.addEventListener('drop', async (event) => {
+ event.preventDefault()
- submitBtn.disabled = true;
+ submitBtn.disabled = true
- fileInput.files = event.dataTransfer.files;
+ fileInput.files = event.dataTransfer.files
- elDrop.textContent = `✓ ${fileInput.files.length} files selected`;
- elDrop.style.height = 'inherit';
+ elDrop.textContent = `✓ ${fileInput.files.length} files selected`
+ elDrop.style.height = 'inherit'
- submitBtn.disabled = false;
-});
+ submitBtn.disabled = false
+})
elDrop.addEventListener('click', () => {
- fileInput.click();
-});
+ fileInput.click()
+})
diff --git a/public/js/transfer.js b/public/js/transfer.js
index b4ba14cf..4bf46fa4 100644
--- a/public/js/transfer.js
+++ b/public/js/transfer.js
@@ -1,15 +1,15 @@
/* eslint-env browser */
-const submitBtn = document.querySelector('#submit');
-const fileInput = document.querySelector('#file');
-const fileOutput = document.querySelector('#fileoutput');
+const submitBtn = document.querySelector('#submit')
+const fileInput = document.querySelector('#file')
+const fileOutput = document.querySelector('#fileoutput')
fileInput.addEventListener('change', () => {
- const reader = new FileReader();
+ const reader = new FileReader()
reader.addEventListener('load', () => {
- const text = reader.result;
- fileOutput.value = text;
- submitBtn.disabled = false;
- });
+ const text = reader.result
+ fileOutput.value = text
+ submitBtn.disabled = false
+ })
// eslint-disable-next-line unicorn/prefer-blob-reading-methods
- reader.readAsText(fileInput.files[0]);
-});
+ reader.readAsText(fileInput.files[0])
+})
diff --git a/server.ts b/server.ts
deleted file mode 100644
index f3346361..00000000
--- a/server.ts
+++ /dev/null
@@ -1,19 +0,0 @@
-/*
-|--------------------------------------------------------------------------
-| AdonisJs Server
-|--------------------------------------------------------------------------
-|
-| The contents in this file is meant to bootstrap the AdonisJs application
-| and start the HTTP server to accept incoming connections. You must avoid
-| making this file dirty and instead make use of `lifecycle hooks` provided
-| by AdonisJs service providers for custom code.
-|
-*/
-
-import 'reflect-metadata';
-import sourceMapSupport from 'source-map-support';
-import { Ignitor } from '@adonisjs/core/build/standalone';
-
-sourceMapSupport.install({ handleUncaughtExceptions: false });
-
-new Ignitor(__dirname).httpServer().start();
diff --git a/env.ts b/start/env.ts
similarity index 87%
rename from env.ts
rename to start/env.ts
index 1f163b04..3e1702e3 100644
--- a/env.ts
+++ b/start/env.ts
@@ -11,10 +11,9 @@
| and hence do not rename or move this file to a different location.
|
*/
+import { Env } from '@adonisjs/core/env'
-import Env from '@ioc:Adonis/Core/Env';
-
-export default Env.rules({
+export default await Env.create(new URL('../', import.meta.url), {
HOST: Env.schema.string({ format: 'host' }),
PORT: Env.schema.number(),
@@ -22,4 +21,4 @@ export default Env.rules({
APP_NAME: Env.schema.string(),
NODE_ENV: Env.schema.enum(['development', 'production', 'test'] as const),
-});
+})
diff --git a/start/events.ts b/start/events.ts
index 11e63e57..faedc299 100644
--- a/start/events.ts
+++ b/start/events.ts
@@ -1,6 +1,6 @@
-import Config from '@ioc:Adonis/Core/Config';
-import Event from '@ioc:Adonis/Core/Event';
-import Mail from '@ioc:Adonis/Addons/Mail';
+import { Config } from '@adonisjs/core/config'
+import emitter from '@adonisjs/core/services/emitter'
+import mail from '@adonisjs/mail/services/main'
/*
|--------------------------------------------------------------------------
@@ -11,11 +11,11 @@ import Mail from '@ioc:Adonis/Addons/Mail';
| boot.
|
*/
-Event.on('forgot::password', async ({ user, token }) => {
+emitter.on('forgot::password', async ({ user, token }) => {
try {
// eslint-disable-next-line no-console
- console.log('Sending message');
- await Mail.send(message => {
+ console.log('Sending message')
+ await mail.send((message) => {
message
.subject('[Ferdium] Forgot Password')
.to(user.email)
@@ -24,10 +24,10 @@ Event.on('forgot::password', async ({ user, token }) => {
appUrl: Config.get('app.url'),
username: user.username,
token,
- });
- });
+ })
+ })
} catch (error) {
// eslint-disable-next-line no-console
- console.log(`Couldn't send mail: ${error}`);
+ console.log(`Couldn't send mail: ${error}`)
}
-});
+})
diff --git a/start/kernel.ts b/start/kernel.ts
index 1c5c92bb..99a08202 100644
--- a/start/kernel.ts
+++ b/start/kernel.ts
@@ -9,7 +9,7 @@
|
*/
-import Server from '@ioc:Adonis/Core/Server';
+import { server } from '@adonisjs/core/services/server'
/*
|--------------------------------------------------------------------------
@@ -20,10 +20,10 @@ import Server from '@ioc:Adonis/Core/Server';
| are defined for every HTTP requests.
|
*/
-Server.middleware.register([
+server.middleware.register([
() => import('@ioc:Adonis/Core/BodyParser'),
() => import('@ioc:Adonis/Addons/Shield'),
-]);
+])
/*
|--------------------------------------------------------------------------
@@ -41,9 +41,9 @@ Server.middleware.register([
| Route.get('dashboard', 'UserController.dashboard').middleware('auth')
|
*/
-Server.middleware.registerNamed({
+server.middleware.registerNamed({
auth: () => import('App/Middleware/Auth'),
dashboard: () => import('App/Middleware/Dashboard'),
guest: () => import('App/Middleware/AllowGuestOnly'),
shield: () => import('@ioc:Adonis/Addons/Shield'),
-});
+})
diff --git a/start/routes.ts b/start/routes.ts
index 75cef72f..7c629096 100644
--- a/start/routes.ts
+++ b/start/routes.ts
@@ -18,5 +18,5 @@
|
*/
-import './routes/api';
-import './routes/web';
+import './routes/api.js'
+import './routes/web.js'
diff --git a/start/routes/api.ts b/start/routes/api.ts
index 78282f04..8992154b 100644
--- a/start/routes/api.ts
+++ b/start/routes/api.ts
@@ -1,51 +1,47 @@
// As this is currently a rebuild of the initial API we it is grouped in /v2/
-import Route from '@ioc:Adonis/Core/Route';
+import router from '@adonisjs/core/services/router'
+const UserController = () => import('#controllers/Http/UserController')
+const ServiceController = () => import('#controllers/Http/ServiceController')
+const RecipeController = () => import('#controllers/Http/RecipeController')
-Route.group(() => {
- // User authentification
- Route.post('auth/signup', 'UserController.signup').middleware('guest');
- Route.post('auth/login', 'UserController.login').middleware('guest');
+router
+ .group(() => {
+ // User authentification
+ router.post('auth/signup', [UserController, 'signup']).middleware('guest')
+ router.post('auth/login', [UserController, 'login']).middleware('guest')
- // User info
- Route.get('me', 'UserController.me').middleware('auth:jwt');
- Route.put('me', 'UserController.updateMe').middleware('auth:jwt');
- Route.get('me/newtoken', 'UserController.newToken').middleware('auth:jwt');
+ // User info
+ router.get('me', [UserController, 'me']).middleware('auth:jwt')
+ router.put('me', [UserController, 'updateMe']).middleware('auth:jwt')
+ router.get('me/newtoken', [UserController, 'newToken']).middleware('auth:jwt')
- // // Service info
- Route.post('service', 'ServiceController.create').middleware('auth:jwt');
- Route.put('service/reorder', 'ServiceController.reorder').middleware(
- 'auth:jwt',
- );
- Route.put('service/:id', 'ServiceController.edit').middleware('auth:jwt');
- Route.delete('service/:id', 'ServiceController.delete').middleware(
- 'auth:jwt',
- );
- Route.get('me/services', 'ServiceController.list').middleware('auth:jwt');
- Route.get('recipe', 'ServiceController.list').middleware('auth:jwt');
- Route.get('icon/:id', 'ServiceController.icon');
+ // // Service info
+ router.post('service', [ServiceController, 'create']).middleware('auth:jwt')
+ router.put('service/reorder', [ServiceController, 'reorder']).middleware('auth:jwt')
+ router.put('service/:id', [ServiceController, 'edit']).middleware('auth:jwt')
+ router.delete('service/:id', [ServiceController, 'delete']).middleware('auth:jwt')
+ router.get('me/services', [ServiceController, 'list']).middleware('auth:jwt')
+ router.get('recipe', [ServiceController, 'list']).middleware('auth:jwt')
+ router.get('icon/:id', [ServiceController, 'icon'])
- // Recipe store
- Route.get('recipes', 'RecipeController.list');
- Route.get('recipes/search', 'RecipeController.search');
- Route.get('recipes/popular', 'RecipeController.popularRecipes');
- Route.get('recipes/download/:recipe', 'RecipeController.download');
- Route.post('recipes/update', 'RecipeController.update');
+ // Recipe store
+ router.get('recipes', [RecipeController, 'list'])
+ router.get('recipes/search', [RecipeController, 'search'])
+ router.get('recipes/popular', [RecipeController, 'popularRecipes'])
+ router.get('recipes/download/:recipe', [RecipeController, 'download'])
+ router.post('recipes/update', [RecipeController, 'update'])
- // // Workspaces
- Route.put('workspace/:id', 'WorkspaceController.edit').middleware('auth:jwt');
- Route.delete('workspace/:id', 'WorkspaceController.delete').middleware(
- 'auth:jwt',
- );
- Route.post('workspace', 'WorkspaceController.create').middleware('auth:jwt');
- Route.get('workspace', 'WorkspaceController.list').middleware('auth:jwt');
+ // // Workspaces
+ router.put('workspace/:id', 'WorkspaceController.edit').middleware('auth:jwt')
+ router.delete('workspace/:id', 'WorkspaceController.delete').middleware('auth:jwt')
+ router.post('workspace', 'WorkspaceController.create').middleware('auth:jwt')
+ router.get('workspace', 'WorkspaceController.list').middleware('auth:jwt')
- // Static responses
- Route.get('features/:mode?', 'Api/Static/FeaturesController.show');
- Route.get('services', 'Api/Static/EmptyController.show');
- Route.get('news', 'Api/Static/EmptyController.show');
- Route.get(
- 'announcements/:version',
- 'Api/Static/AnnouncementsController.show',
- );
-}).prefix('/v1');
+ // Static responses
+ router.get('features/:mode?', 'Api/Static/FeaturesController.show')
+ router.get('services', 'Api/Static/EmptyController.show')
+ router.get('news', 'Api/Static/EmptyController.show')
+ router.get('announcements/:version', 'Api/Static/AnnouncementsController.show')
+ })
+ .prefix('/v1')
diff --git a/start/routes/web.ts b/start/routes/web.ts
index 308abec6..fd12bf25 100644
--- a/start/routes/web.ts
+++ b/start/routes/web.ts
@@ -1,54 +1,62 @@
-import Route from '@ioc:Adonis/Core/Route';
+import router from '@adonisjs/core/services/router'
// Health check
-Route.get('health', 'HealthController.index');
+router.get('health', 'HealthController.index')
// Legal documents
-Route.get('terms', ({ response }) => response.redirect('/terms.html'));
-Route.get('privacy', ({ response }) => response.redirect('/privacy.html'));
+router.get('terms', ({ response }) => response.redirect('/terms.html'))
+router.get('privacy', ({ response }) => response.redirect('/privacy.html'))
// Index
-Route.get('/', ({ view }) => view.render('others/index'));
-
-Route.group(() => {
- Route.group(() => {
- // Guest troutes
- Route.group(() => {
- Route.get('login', 'Dashboard/LoginController.show');
- Route.post('login', 'Dashboard/LoginController.login').as('login');
-
- // Reset password
- Route.get('forgot', 'Dashboard/ForgotPasswordController.show');
- Route.post('forgot', 'Dashboard/ForgotPasswordController.forgotPassword');
-
- Route.get('reset', 'Dashboard/ResetPasswordController.show');
- Route.post('reset', 'Dashboard/ResetPasswordController.resetPassword');
- }).middleware(['dashboard', 'guest']);
-
- // Authenticated routes
- Route.group(() => {
- Route.get('account', 'Dashboard/AccountController.show');
- Route.post('account', 'Dashboard/AccountController.store');
-
- Route.get('data', 'Dashboard/DataController.show');
- Route.get('export', 'Dashboard/ExportController.show');
-
- Route.get('transfer', 'Dashboard/TransferController.show');
- Route.post('transfer', 'Dashboard/TransferController.import');
-
- Route.get('delete', 'Dashboard/DeleteController.show');
- Route.post('delete', 'Dashboard/DeleteController.delete');
-
- Route.get('logout', 'Dashboard/LogOutController.logout');
-
- Route.get('*', ({ response }) => response.redirect('/user/account'));
- }).middleware(['dashboard', 'auth:web']);
- }).prefix('user');
-
- // Franz/Ferdi account import
- Route.get('import', ({ view }) => view.render('others/import'));
- Route.post('import', 'UserController.import');
-
- // 404 handler
- Route.get('/*', ({ response }) => response.redirect('/'));
-}).middleware(['dashboard']);
+router.get('/', ({ view }) => view.render('others/index'))
+
+router
+ .group(() => {
+ router
+ .group(() => {
+ // Guest troutes
+ router
+ .group(() => {
+ router.get('login', 'Dashboard/LoginController.show')
+ router.post('login', 'Dashboard/LoginController.login').as('login')
+
+ // Reset password
+ router.get('forgot', 'Dashboard/ForgotPasswordController.show')
+ router.post('forgot', 'Dashboard/ForgotPasswordController.forgotPassword')
+
+ router.get('reset', 'Dashboard/ResetPasswordController.show')
+ router.post('reset', 'Dashboard/ResetPasswordController.resetPassword')
+ })
+ .middleware(['dashboard', 'guest'])
+
+ // Authenticated routes
+ router
+ .group(() => {
+ router.get('account', 'Dashboard/AccountController.show')
+ router.post('account', 'Dashboard/AccountController.store')
+
+ router.get('data', 'Dashboard/DataController.show')
+ router.get('export', 'Dashboard/ExportController.show')
+
+ router.get('transfer', 'Dashboard/TransferController.show')
+ router.post('transfer', 'Dashboard/TransferController.import')
+
+ router.get('delete', 'Dashboard/DeleteController.show')
+ router.post('delete', 'Dashboard/DeleteController.delete')
+
+ router.get('logout', 'Dashboard/LogOutController.logout')
+
+ router.get('*', ({ response }) => response.redirect('/user/account'))
+ })
+ .middleware(['dashboard', 'auth:web'])
+ })
+ .prefix('user')
+
+ // Franz/Ferdi account import
+ router.get('import', ({ view }) => view.render('others/import'))
+ router.post('import', 'UserController.import')
+
+ // 404 handler
+ router.get('/*', ({ response }) => response.redirect('/'))
+ })
+ .middleware(['dashboard'])
diff --git a/test.ts b/test.ts
deleted file mode 100644
index 65f1348c..00000000
--- a/test.ts
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
-|--------------------------------------------------------------------------
-| Tests
-|--------------------------------------------------------------------------
-|
-| The contents in this file boots the AdonisJS application and configures
-| the Japa tests runner.
-|
-| For the most part you will never edit this file. The configuration
-| for the tests can be controlled via ".adonisrc.json" and
-| "tests/bootstrap.ts" files.
-|
-*/
-
-import 'reflect-metadata';
-import sourceMapSupport from 'source-map-support';
-import { Ignitor } from '@adonisjs/core/build/standalone';
-import {
- configure,
- processCliArgs,
- run,
- RunnerHooksHandler,
-} from '@japa/runner';
-
-process.env.NODE_ENV = 'test';
-
-sourceMapSupport.install({ handleUncaughtExceptions: false });
-
-const kernel = new Ignitor(__dirname).kernel('test');
-
-kernel
- .boot()
- .then(() => import('./tests/bootstrap'))
- .then(({ runnerHooks, ...config }) => {
- const app: RunnerHooksHandler[] = [() => kernel.start()];
-
- configure({
- ...kernel.application.rcFile.tests,
- ...processCliArgs(process.argv.slice(2)),
- ...config,
-
- importer: filePath => import(filePath),
- setup: [...app, ...runnerHooks.setup],
- teardown: runnerHooks.teardown,
- cwd: kernel.application.appRoot,
- });
-
- run();
- });
diff --git a/tests/bootstrap.ts b/tests/bootstrap.ts
index efd1d1f2..1c6bea1c 100644
--- a/tests/bootstrap.ts
+++ b/tests/bootstrap.ts
@@ -5,15 +5,10 @@
* file.
*/
-import type { Config } from '@japa/runner';
-import TestUtils from '@ioc:Adonis/Core/TestUtils';
-import {
- assert,
- runFailedTests,
- specReporter,
- apiClient,
-} from '@japa/preset-adonis';
-import { fakeCsrfField } from './utils';
+import type { Config } from '@japa/runner'
+import TestUtils from '@ioc:Adonis/Core/TestUtils'
+import { assert, runFailedTests, specReporter, apiClient } from '@japa/preset-adonis'
+import { fakeCsrfField } from './utils.js'
/*
|--------------------------------------------------------------------------
@@ -26,11 +21,7 @@ import { fakeCsrfField } from './utils';
| Feel free to remove existing plugins or add more.
|
*/
-export const plugins: Config['plugins'] = [
- assert(),
- runFailedTests(),
- apiClient(),
-];
+export const plugins: Config['plugins'] = [assert(), runFailedTests(), apiClient()]
/*
|--------------------------------------------------------------------------
@@ -42,7 +33,7 @@ export const plugins: Config['plugins'] = [
| of tests on the terminal.
|
*/
-export const reporters: Config['reporters'] = [specReporter()];
+export const reporters: Config['reporters'] = [specReporter()]
/*
|--------------------------------------------------------------------------
@@ -63,7 +54,7 @@ export const runnerHooks: Required> = {
() => fakeCsrfField(),
],
teardown: [],
-};
+}
/*
|--------------------------------------------------------------------------
@@ -76,8 +67,8 @@ export const runnerHooks: Required> = {
| You can use this method to configure suites. For example: Only start
| the HTTP server when it is a functional suite.
*/
-export const configureSuite: Config['configureSuite'] = suite => {
+export const configureSuite: Config['configureSuite'] = (suite) => {
if (suite.name === 'functional') {
- suite.setup(() => TestUtils.httpServer().start());
+ suite.setup(() => TestUtils.httpServer().start())
}
-};
+}
diff --git a/tests/config.ts b/tests/config.ts
index 8cd35110..f40284eb 100644
--- a/tests/config.ts
+++ b/tests/config.ts
@@ -1 +1 @@
-export const apiVersion = 'v1';
+export const apiVersion = 'v1'
diff --git a/tests/functional/api/static/announcements.spec.ts b/tests/functional/api/static/announcements.spec.ts
index ac933fee..45881ec9 100644
--- a/tests/functional/api/static/announcements.spec.ts
+++ b/tests/functional/api/static/announcements.spec.ts
@@ -1,22 +1,20 @@
-import { test } from '@japa/runner';
-import { apiVersion } from '../../../config';
+import { test } from '@japa/runner'
+import { apiVersion } from '../../../config.js'
test.group('API / Static / News', () => {
- test('returns a 404 response when the requested versions does not exist', async ({
- client,
- }) => {
- const response = await client.get(`/${apiVersion}/announcements/illegal`);
+ test('returns a 404 response when the requested versions does not exist', async ({ client }) => {
+ const response = await client.get(`/${apiVersion}/announcements/illegal`)
- response.assertStatus(404);
- response.assertTextIncludes('No announcement found.');
- });
+ response.assertStatus(404)
+ response.assertTextIncludes('No announcement found.')
+ })
test('returns a 200 response with default version file when specifying version as input', async ({
client,
}) => {
- const response = await client.get(`/${apiVersion}/announcements/version`);
+ const response = await client.get(`/${apiVersion}/announcements/version`)
- response.assertStatus(200);
+ response.assertStatus(200)
response.assertBody({
main: {
headline: 'Example Announcement',
@@ -50,6 +48,6 @@ test.group('API / Static / News', () => {
},
},
},
- });
- });
-});
+ })
+ })
+})
diff --git a/tests/functional/api/static/features.spec.ts b/tests/functional/api/static/features.spec.ts
index 1050fcf2..c31e25f7 100644
--- a/tests/functional/api/static/features.spec.ts
+++ b/tests/functional/api/static/features.spec.ts
@@ -1,5 +1,5 @@
-import { test } from '@japa/runner';
-import { apiVersion } from '../../../config';
+import { test } from '@japa/runner'
+import { apiVersion } from '../../../config.js'
const defaultResponse = {
isServiceProxyEnabled: true,
@@ -8,22 +8,22 @@ const defaultResponse = {
isSettingsWSEnabled: false,
isMagicBarEnabled: true,
isTodosEnabled: true,
-};
+}
test.group('API / Static / Features', () => {
test('returns a 200 response with empty array', async ({ client }) => {
- const response = await client.get(`/${apiVersion}/features`);
+ const response = await client.get(`/${apiVersion}/features`)
- response.assertStatus(200);
- response.assertBody(defaultResponse);
- });
+ response.assertStatus(200)
+ response.assertBody(defaultResponse)
+ })
test('returns a 200 response with expected object when calling with :mode', async ({
client,
}) => {
- const response = await client.get(`/${apiVersion}/features/random`);
+ const response = await client.get(`/${apiVersion}/features/random`)
- response.assertStatus(200);
- response.assertBody(defaultResponse);
- });
-});
+ response.assertStatus(200)
+ response.assertBody(defaultResponse)
+ })
+})
diff --git a/tests/functional/api/static/news.spec.ts b/tests/functional/api/static/news.spec.ts
index 8f3818f7..71b5797c 100644
--- a/tests/functional/api/static/news.spec.ts
+++ b/tests/functional/api/static/news.spec.ts
@@ -1,11 +1,11 @@
-import { test } from '@japa/runner';
-import { apiVersion } from '../../../config';
+import { test } from '@japa/runner'
+import { apiVersion } from '../../../config.js'
test.group('API / Static / News', () => {
test('returns a 200 response with empty array', async ({ client }) => {
- const response = await client.get(`/${apiVersion}/news`);
+ const response = await client.get(`/${apiVersion}/news`)
- response.assertStatus(200);
- response.assertBody([]);
- });
-});
+ response.assertStatus(200)
+ response.assertBody([])
+ })
+})
diff --git a/tests/functional/api/static/services.spec.ts b/tests/functional/api/static/services.spec.ts
index 55eef37f..595b8dc6 100644
--- a/tests/functional/api/static/services.spec.ts
+++ b/tests/functional/api/static/services.spec.ts
@@ -1,11 +1,11 @@
-import { test } from '@japa/runner';
-import { apiVersion } from '../../../config';
+import { test } from '@japa/runner'
+import { apiVersion } from '../../../config.js'
test.group('API / Static / Services', () => {
test('returns a 200 response with empty array', async ({ client }) => {
- const response = await client.get(`/${apiVersion}/services`);
+ const response = await client.get(`/${apiVersion}/services`)
- response.assertStatus(200);
- response.assertBody([]);
- });
-});
+ response.assertStatus(200)
+ response.assertBody([])
+ })
+})
diff --git a/tests/functional/dashboard/account.spec.ts b/tests/functional/dashboard/account.spec.ts
index bee9d6a9..25de22c9 100644
--- a/tests/functional/dashboard/account.spec.ts
+++ b/tests/functional/dashboard/account.spec.ts
@@ -1,124 +1,109 @@
-import { test } from '@japa/runner';
-import User from 'App/Models/User';
-import UserFactory from 'Database/factories/UserFactory';
+import { test } from '@japa/runner'
+import User from '#app/Models/User'
+import UserFactory from '#database/factories/UserFactory'
test.group('Dashboard / Account page', () => {
- test('redirects to /user/login when accessing /user/account as guest', async ({
- client,
- }) => {
- const response = await client.get('/user/account');
+ test('redirects to /user/login when accessing /user/account as guest', async ({ client }) => {
+ const response = await client.get('/user/account')
- response.assertRedirectsTo('/user/login'); // Check if it redirects to the expected URL
- });
+ response.assertRedirectsTo('/user/login') // Check if it redirects to the expected URL
+ })
- test('returns a 200 opening the account route while logged in', async ({
- client,
- }) => {
- const user = await UserFactory.create();
- const response = await client.get('/user/account').loginAs(user);
+ test('returns a 200 opening the account route while logged in', async ({ client }) => {
+ const user = await UserFactory.create()
+ const response = await client.get('/user/account').loginAs(user)
- response.assertStatus(200);
- response.assertTextIncludes('Your Ferdium account');
+ response.assertStatus(200)
+ response.assertTextIncludes('Your Ferdium account')
- response.assertTextIncludes(user.email);
- response.assertTextIncludes(user.username);
- response.assertTextIncludes(user.lastname);
- });
+ response.assertTextIncludes(user.email)
+ response.assertTextIncludes(user.username)
+ response.assertTextIncludes(user.lastname)
+ })
- test('returns a validation error for all fields when missing', async ({
- client,
- }) => {
- const user = await UserFactory.create();
- const response = await client.post('/user/account').loginAs(user);
+ test('returns a validation error for all fields when missing', async ({ client }) => {
+ const user = await UserFactory.create()
+ const response = await client.post('/user/account').loginAs(user)
response.assertTextIncludes(
- 'value="required validation failed,required validation failed" placeholder="E-Mail"',
- );
+ 'value="required validation failed,required validation failed" placeholder="E-Mail"'
+ )
response.assertTextIncludes(
- 'value="required validation failed,required validation failed" placeholder="Name"',
- );
+ 'value="required validation failed,required validation failed" placeholder="Name"'
+ )
response.assertTextIncludes(
- 'value="required validation failed,required validation failed" placeholder="Last Name"',
- );
- });
+ 'value="required validation failed,required validation failed" placeholder="Last Name"'
+ )
+ })
test('returns a validation error for username when there is another user with same username', async ({
client,
}) => {
- const user = await UserFactory.create();
- const existingUser = await UserFactory.create();
+ const user = await UserFactory.create()
+ const existingUser = await UserFactory.create()
const response = await client.post('/user/account').loginAs(user).form({
username: existingUser.username,
email: user.email,
lastname: user.lastname,
- });
+ })
- response.assertTextIncludes(
- 'value="unique validation failure" placeholder="Name"',
- );
- });
+ response.assertTextIncludes('value="unique validation failure" placeholder="Name"')
+ })
test('returns a validation error for email when there is another user with same email', async ({
client,
}) => {
- const user = await UserFactory.create();
- const existingUser = await UserFactory.create();
+ const user = await UserFactory.create()
+ const existingUser = await UserFactory.create()
const response = await client.post('/user/account').loginAs(user).form({
username: user.username,
email: existingUser.email,
lastname: user.lastname,
- });
+ })
- response.assertTextIncludes(
- 'value="unique validation failure" placeholder="E-Mail"',
- );
- });
+ response.assertTextIncludes('value="unique validation failure" placeholder="E-Mail"')
+ })
- test('updates user data and ensures the data is persisted', async ({
- client,
- assert,
- }) => {
- const user = await UserFactory.create();
+ test('updates user data and ensures the data is persisted', async ({ client, assert }) => {
+ const user = await UserFactory.create()
const response = await client.post('/user/account').loginAs(user).form({
username: 'edited-username',
email: 'edited-email',
lastname: 'edited-lastname',
- });
+ })
- response.assertStatus(200);
+ response.assertStatus(200)
// Ensure updated data is displayed on account page
- response.assertTextIncludes('edited-username');
- response.assertTextIncludes('edited-email');
- response.assertTextIncludes('edited-lastname');
+ response.assertTextIncludes('edited-username')
+ response.assertTextIncludes('edited-email')
+ response.assertTextIncludes('edited-lastname')
// Ensure updated data is persisted in database
- const updatedUser = await User.findBy('id', user.id);
- assert.equal(updatedUser?.username, 'edited-username');
- assert.equal(updatedUser?.email, 'edited-email');
- assert.equal(updatedUser?.lastname, 'edited-lastname');
- });
-
- test('updates user password and ensures the user can still login', async ({
- client,
- }) => {
- const user = await UserFactory.create();
+ const updatedUser = await User.findBy('id', user.id)
+ assert.equal(updatedUser?.username, 'edited-username')
+ assert.equal(updatedUser?.email, 'edited-email')
+ assert.equal(updatedUser?.lastname, 'edited-lastname')
+ })
+
+ test('updates user password and ensures the user can still login', async ({ client }) => {
+ const user = await UserFactory.create()
const response = await client.post('/user/account').loginAs(user).form({
username: user.username,
email: user.email,
lastname: user.lastname,
password: 'modified-password-account-page',
- });
+ })
- response.assertStatus(200);
+ response.assertStatus(200)
const loginResponse = await client.post('/user/login').fields({
mail: user.email,
password: 'modified-password-account-page',
- });
+ })
- loginResponse.assertRedirectsTo('/user/account');
- });
-});
+ loginResponse.assertRedirectsTo('/user/account')
+ })
+})
diff --git a/tests/functional/dashboard/data.spec.ts b/tests/functional/dashboard/data.spec.ts
index 1a0e7adb..150229a9 100644
--- a/tests/functional/dashboard/data.spec.ts
+++ b/tests/functional/dashboard/data.spec.ts
@@ -1,31 +1,25 @@
-import { test } from '@japa/runner';
-import UserFactory from 'Database/factories/UserFactory';
+import { test } from '@japa/runner'
+import UserFactory from '#database/factories/UserFactory'
test.group('Dashboard / Data page', () => {
- test('redirects to /user/login when accessing /user/data as guest', async ({
- client,
- }) => {
- const response = await client.get('/user/data');
+ test('redirects to /user/login when accessing /user/data as guest', async ({ client }) => {
+ const response = await client.get('/user/data')
- response.assertRedirectsTo('/user/login'); // Check if it redirects to the expected URL
- });
+ response.assertRedirectsTo('/user/login') // Check if it redirects to the expected URL
+ })
test('ensure the correct data is shown on the page', async ({ client }) => {
- const user = await UserFactory.create();
- const response = await client.get('/user/data').loginAs(user);
+ const user = await UserFactory.create()
+ const response = await client.get('/user/data').loginAs(user)
- response.assertStatus(200);
- response.assertTextIncludes(user.email);
- response.assertTextIncludes(user.username);
- response.assertTextIncludes(user.lastname);
- response.assertTextIncludes(
- user.created_at.toFormat('yyyy-MM-dd HH:mm:ss'),
- );
- response.assertTextIncludes(
- user.updated_at.toFormat('yyyy-MM-dd HH:mm:ss'),
- );
- });
+ response.assertStatus(200)
+ response.assertTextIncludes(user.email)
+ response.assertTextIncludes(user.username)
+ response.assertTextIncludes(user.lastname)
+ response.assertTextIncludes(user.created_at.toFormat('yyyy-MM-dd HH:mm:ss'))
+ response.assertTextIncludes(user.updated_at.toFormat('yyyy-MM-dd HH:mm:ss'))
+ })
// TODO: Add test to include services.
// TODO: Add test to include workspaces.
-});
+})
diff --git a/tests/functional/dashboard/delete.spec.ts b/tests/functional/dashboard/delete.spec.ts
index ae3f0e6f..9bb9f6a3 100644
--- a/tests/functional/dashboard/delete.spec.ts
+++ b/tests/functional/dashboard/delete.spec.ts
@@ -1,37 +1,30 @@
-import { test } from '@japa/runner';
-import User from 'App/Models/User';
-import UserFactory from 'Database/factories/UserFactory';
+import { test } from '@japa/runner'
+import User from '#app/Models/User'
+import UserFactory from '#database/factories/UserFactory'
test.group('Dashboard / Delete account page', () => {
- test('redirects to /user/login when accessing /user/delete as guest', async ({
- client,
- }) => {
- const response = await client.get('/user/delete');
+ test('redirects to /user/login when accessing /user/delete as guest', async ({ client }) => {
+ const response = await client.get('/user/delete')
- response.assertRedirectsTo('/user/login'); // Check if it redirects to the expected URL
- });
+ response.assertRedirectsTo('/user/login') // Check if it redirects to the expected URL
+ })
- test('returns a 200 opening the delete route while logged in', async ({
- client,
- }) => {
- const user = await UserFactory.create();
- const response = await client.get('/user/delete').loginAs(user);
+ test('returns a 200 opening the delete route while logged in', async ({ client }) => {
+ const user = await UserFactory.create()
+ const response = await client.get('/user/delete').loginAs(user)
- response.assertStatus(200);
- response.assertTextIncludes('Delete your account');
- });
+ response.assertStatus(200)
+ response.assertTextIncludes('Delete your account')
+ })
- test('returns a 200 opening the delete route while logged in', async ({
- client,
- assert,
- }) => {
- const user = await UserFactory.create();
- const response = await client.post('/user/delete').loginAs(user);
+ test('returns a 200 opening the delete route while logged in', async ({ client, assert }) => {
+ const user = await UserFactory.create()
+ const response = await client.post('/user/delete').loginAs(user)
- response.assertRedirectsTo('/user/login');
+ response.assertRedirectsTo('/user/login')
// This asserts the session is deleted as well
- response.assertSessionMissing('auth_web');
+ response.assertSessionMissing('auth_web')
- assert.isNull(await User.find(user.id));
- });
-});
+ assert.isNull(await User.find(user.id))
+ })
+})
diff --git a/tests/functional/dashboard/disabled-dashboard.spec.ts b/tests/functional/dashboard/disabled-dashboard.spec.ts
index cc9052c4..fd9600f0 100644
--- a/tests/functional/dashboard/disabled-dashboard.spec.ts
+++ b/tests/functional/dashboard/disabled-dashboard.spec.ts
@@ -1,71 +1,63 @@
-import { test } from '@japa/runner';
-import Config from '@ioc:Adonis/Core/Config';
+import { test } from '@japa/runner'
+import Config from '@ioc:Adonis/Core/Config'
const disabledDashboardMessage =
- 'The user dashboard is disabled on this server\n\nIf you are the server owner, please set IS_DASHBOARD_ENABLED to true to enable the dashboard.';
+ 'The user dashboard is disabled on this server\n\nIf you are the server owner, please set IS_DASHBOARD_ENABLED to true to enable the dashboard.'
-test.group('Dashboard / Disabled dashboard', group => {
+test.group('Dashboard / Disabled dashboard', (group) => {
group.setup(() => {
- Config.set('dashboard.enabled', false);
- });
+ Config.set('dashboard.enabled', false)
+ })
group.teardown(() => {
- Config.set('dashboard.enabled', true);
- });
+ Config.set('dashboard.enabled', true)
+ })
test('Login page returns disabled dashboard message', async ({ client }) => {
- const response = await client.get('/user/login');
+ const response = await client.get('/user/login')
- response.assertTextIncludes(disabledDashboardMessage);
- });
+ response.assertTextIncludes(disabledDashboardMessage)
+ })
- test('Forgot password page returns disabled dashboard message', async ({
- client,
- }) => {
- const response = await client.get('/user/forgot');
+ test('Forgot password page returns disabled dashboard message', async ({ client }) => {
+ const response = await client.get('/user/forgot')
- response.assertTextIncludes(disabledDashboardMessage);
- });
+ response.assertTextIncludes(disabledDashboardMessage)
+ })
- test('Reset password page returns disabled dashboard message', async ({
- client,
- }) => {
- const response = await client.get('/user/reset');
+ test('Reset password page returns disabled dashboard message', async ({ client }) => {
+ const response = await client.get('/user/reset')
- response.assertTextIncludes(disabledDashboardMessage);
- });
+ response.assertTextIncludes(disabledDashboardMessage)
+ })
- test('Account page returns disabled dashboard message', async ({
- client,
- }) => {
- const response = await client.get('/user/account');
+ test('Account page returns disabled dashboard message', async ({ client }) => {
+ const response = await client.get('/user/account')
- response.assertTextIncludes(disabledDashboardMessage);
- });
+ response.assertTextIncludes(disabledDashboardMessage)
+ })
test('Data page returns disabled dashboard message', async ({ client }) => {
- const response = await client.get('/user/data');
+ const response = await client.get('/user/data')
- response.assertTextIncludes(disabledDashboardMessage);
- });
+ response.assertTextIncludes(disabledDashboardMessage)
+ })
test('Export page returns disabled dashboard message', async ({ client }) => {
- const response = await client.get('/user/export');
+ const response = await client.get('/user/export')
- response.assertTextIncludes(disabledDashboardMessage);
- });
+ response.assertTextIncludes(disabledDashboardMessage)
+ })
- test('Transfer page returns disabled dashboard message', async ({
- client,
- }) => {
- const response = await client.get('/user/transfer');
+ test('Transfer page returns disabled dashboard message', async ({ client }) => {
+ const response = await client.get('/user/transfer')
- response.assertTextIncludes(disabledDashboardMessage);
- });
+ response.assertTextIncludes(disabledDashboardMessage)
+ })
test('Logout page returns disabled dashboard message', async ({ client }) => {
- const response = await client.get('/user/logout');
+ const response = await client.get('/user/logout')
- response.assertTextIncludes(disabledDashboardMessage);
- });
-});
+ response.assertTextIncludes(disabledDashboardMessage)
+ })
+})
diff --git a/tests/functional/dashboard/export.spec.ts b/tests/functional/dashboard/export.spec.ts
index 42506226..f85673e3 100644
--- a/tests/functional/dashboard/export.spec.ts
+++ b/tests/functional/dashboard/export.spec.ts
@@ -1,61 +1,50 @@
-import { test } from '@japa/runner';
-import UserFactory from 'Database/factories/UserFactory';
+import { test } from '@japa/runner'
+import UserFactory from '#database/factories/UserFactory'
test.group('Dashboard / Export page', () => {
- test('redirects to /user/login when accessing /user/transfer as guest', async ({
- client,
- }) => {
- const response = await client.get('/user/transfer');
+ test('redirects to /user/login when accessing /user/transfer as guest', async ({ client }) => {
+ const response = await client.get('/user/transfer')
- response.assertRedirectsTo('/user/login'); // Check if it redirects to the expected URL
- });
+ response.assertRedirectsTo('/user/login') // Check if it redirects to the expected URL
+ })
- test('returns a correct export with user data', async ({
- assert,
- client,
- }) => {
- const user = await UserFactory.create();
- const response = await client.get('/user/export').loginAs(user);
+ test('returns a correct export with user data', async ({ assert, client }) => {
+ const user = await UserFactory.create()
+ const response = await client.get('/user/export').loginAs(user)
- response.assertStatus(200);
- const exportData = JSON.parse(response.text());
+ response.assertStatus(200)
+ const exportData = JSON.parse(response.text())
- assert.equal(exportData.username, user.username);
- assert.equal(exportData.lastname, user.lastname);
- assert.equal(exportData.mail, user.email);
- });
+ assert.equal(exportData.username, user.username)
+ assert.equal(exportData.lastname, user.lastname)
+ assert.equal(exportData.mail, user.email)
+ })
// TODO: We can improve this test by hard checking the export data
- test('returns a correct export with service data', async ({
- assert,
- client,
- }) => {
- const user = await UserFactory.with('services', 5).create();
- const response = await client.get('/user/export').loginAs(user);
-
- response.assertStatus(200);
- const exportData = JSON.parse(response.text());
-
- assert.equal(exportData.username, user.username);
- assert.equal(exportData.lastname, user.lastname);
- assert.equal(exportData.mail, user.email);
- assert.equal(exportData.services.length, user.services.length);
- });
+ test('returns a correct export with service data', async ({ assert, client }) => {
+ const user = await UserFactory.with('services', 5).create()
+ const response = await client.get('/user/export').loginAs(user)
+
+ response.assertStatus(200)
+ const exportData = JSON.parse(response.text())
+
+ assert.equal(exportData.username, user.username)
+ assert.equal(exportData.lastname, user.lastname)
+ assert.equal(exportData.mail, user.email)
+ assert.equal(exportData.services.length, user.services.length)
+ })
// TODO: We can improve this test by hard checking the export data
- test('returns a correct export with workspace data', async ({
- assert,
- client,
- }) => {
- const user = await UserFactory.with('workspaces', 5).create();
- const response = await client.get('/user/export').loginAs(user);
-
- response.assertStatus(200);
- const exportData = JSON.parse(response.text());
-
- assert.equal(exportData.username, user.username);
- assert.equal(exportData.lastname, user.lastname);
- assert.equal(exportData.mail, user.email);
- assert.equal(exportData.workspaces.length, user.workspaces.length);
- });
-});
+ test('returns a correct export with workspace data', async ({ assert, client }) => {
+ const user = await UserFactory.with('workspaces', 5).create()
+ const response = await client.get('/user/export').loginAs(user)
+
+ response.assertStatus(200)
+ const exportData = JSON.parse(response.text())
+
+ assert.equal(exportData.username, user.username)
+ assert.equal(exportData.lastname, user.lastname)
+ assert.equal(exportData.mail, user.email)
+ assert.equal(exportData.workspaces.length, user.workspaces.length)
+ })
+})
diff --git a/tests/functional/dashboard/forgot-password.spec.ts b/tests/functional/dashboard/forgot-password.spec.ts
index 9dcec5ac..7c356c8d 100644
--- a/tests/functional/dashboard/forgot-password.spec.ts
+++ b/tests/functional/dashboard/forgot-password.spec.ts
@@ -1,70 +1,66 @@
-import { test } from '@japa/runner';
-import Event from '@ioc:Adonis/Core/Event';
-import UserFactory from 'Database/factories/UserFactory';
+import { test } from '@japa/runner'
+import emitter from '@adonisjs/core/services/emitter'
+import UserFactory from '#database/factories/UserFactory'
test.group('Dashboard / Forgot password page', () => {
- test('returns a 200 opening the forgot password route', async ({
- client,
- }) => {
- const response = await client.get('/user/forgot');
+ test('returns a 200 opening the forgot password route', async ({ client }) => {
+ const response = await client.get('/user/forgot')
- response.assertStatus(200);
- response.assertTextIncludes('Forgot Password?');
- });
+ response.assertStatus(200)
+ response.assertTextIncludes('Forgot Password?')
+ })
test('returns `Please enter a valid email address` when providing invalid email', async ({
client,
}) => {
const response = await client.post('/user/forgot').fields({
mail: 'invalid',
- });
+ })
- response.assertStatus(200);
- response.assertTextIncludes('Please enter a valid email address');
- });
+ response.assertStatus(200)
+ response.assertTextIncludes('Please enter a valid email address')
+ })
test('returns `email send when exists` without forgot:password event', async ({
client,
assert,
}) => {
- const emitter = Event.fake();
+ const emitterService = emitter.fake()
const response = await client.post('/user/forgot').fields({
mail: 'test@ferdium.org',
- });
+ })
- response.assertStatus(200);
+ response.assertStatus(200)
response.assertTextIncludes(
- 'If your provided E-Mail address is linked to an account, we have just sent an E-Mail to that address.',
- );
+ 'If your provided E-Mail address is linked to an account, we have just sent an E-Mail to that address.'
+ )
- assert.isFalse(emitter.exists('forgot:password'));
- });
+ assert.isFalse(emitterService.exists('forgot:password'))
+ })
test('returns `email send when exists` and trigger forgot:password event', async ({
client,
assert,
}) => {
- const emitter = Event.fake();
+ const emitterService = emitter.fake()
const user = await UserFactory.merge({
email: 'test+forgot_password@ferdium.org',
- }).create();
+ }).create()
const response = await client.post('/user/forgot').fields({
mail: 'test+forgot_password@ferdium.org',
- });
+ })
- response.assertStatus(200);
+ response.assertStatus(200)
response.assertTextIncludes(
- 'If your provided E-Mail address is linked to an account, we have just sent an E-Mail to that address.',
- );
+ 'If your provided E-Mail address is linked to an account, we have just sent an E-Mail to that address.'
+ )
assert.isTrue(
- emitter.exists(
- event =>
- event.name === 'forgot:password' &&
- event.data.user.email === user.email,
- ),
- );
- });
-});
+ emitterService.exists(
+ (event) => event.name === 'forgot:password' && event.data.user.email === user.email
+ )
+ )
+ })
+})
diff --git a/tests/functional/dashboard/import-stubs/services-workspaces.json b/tests/functional/dashboard/import-stubs/services-workspaces.json
index 139b32c0..d1ad0dd6 100644
--- a/tests/functional/dashboard/import-stubs/services-workspaces.json
+++ b/tests/functional/dashboard/import-stubs/services-workspaces.json
@@ -44,10 +44,7 @@
{
"name": "workspace2",
"order": 0,
- "services": [
- "d6901fff-ec44-4251-93de-d7103ed9c44b",
- "79769de5-a998-4af1-b7d0-89956a15b0ed"
- ],
+ "services": ["d6901fff-ec44-4251-93de-d7103ed9c44b", "79769de5-a998-4af1-b7d0-89956a15b0ed"],
"data": "{\"name\":\"workspace2\"}"
},
{
diff --git a/tests/functional/dashboard/login.spec.ts b/tests/functional/dashboard/login.spec.ts
index adae66a6..cf482cd1 100644
--- a/tests/functional/dashboard/login.spec.ts
+++ b/tests/functional/dashboard/login.spec.ts
@@ -1,65 +1,57 @@
-import { test } from '@japa/runner';
-import UserFactory from 'Database/factories/UserFactory';
+import { test } from '@japa/runner'
+import UserFactory from '#database/factories/UserFactory'
test.group('Dashboard / Login page', () => {
test('returns a 200 opening the login route', async ({ client }) => {
- const response = await client.get('/user/login');
+ const response = await client.get('/user/login')
- response.assertStatus(200);
- });
+ response.assertStatus(200)
+ })
- test('returns `invalid mail or password` when validation fails', async ({
- client,
- }) => {
+ test('returns `invalid mail or password` when validation fails', async ({ client }) => {
const response = await client.post('/user/login').fields({
mail: 'invalid',
password: 'invalid',
- });
+ })
- response.assertRedirectsTo('/user/login');
- response.assertTextIncludes('Invalid mail or password');
- });
+ response.assertRedirectsTo('/user/login')
+ response.assertTextIncludes('Invalid mail or password')
+ })
- test('returns `invalid mail or password` when account is not found', async ({
- client,
- }) => {
+ test('returns `invalid mail or password` when account is not found', async ({ client }) => {
const response = await client.post('/user/login').fields({
mail: 'test+notexistingpassword@ferdium.org',
password: 'notexistingpassword',
- });
+ })
- response.assertRedirectsTo('/user/login');
- response.assertTextIncludes('Invalid mail or password');
- });
+ response.assertRedirectsTo('/user/login')
+ response.assertTextIncludes('Invalid mail or password')
+ })
- test('returns `invalid mail or password` when password is not valid', async ({
- client,
- }) => {
+ test('returns `invalid mail or password` when password is not valid', async ({ client }) => {
await UserFactory.merge({
email: 'test@ferdium.org',
- }).create();
+ }).create()
const response = await client.post('/user/login').fields({
mail: 'test+invalid_password@ferdium.org',
password: 'invalid_password',
- });
+ })
- response.assertRedirectsTo('/user/login');
- response.assertTextIncludes('Invalid mail or password');
- });
+ response.assertRedirectsTo('/user/login')
+ response.assertTextIncludes('Invalid mail or password')
+ })
- test('redirects to account page when user is able to login', async ({
- client,
- }) => {
+ test('redirects to account page when user is able to login', async ({ client }) => {
await UserFactory.merge({
email: 'test+password@ferdium.org',
- }).create();
+ }).create()
const response = await client.post('/user/login').fields({
mail: 'test+password@ferdium.org',
password: 'password',
- });
+ })
- response.assertRedirectsTo('/user/account');
- });
-});
+ response.assertRedirectsTo('/user/account')
+ })
+})
diff --git a/tests/functional/dashboard/logout.spec.ts b/tests/functional/dashboard/logout.spec.ts
index a45ee72c..ad117dac 100644
--- a/tests/functional/dashboard/logout.spec.ts
+++ b/tests/functional/dashboard/logout.spec.ts
@@ -1,21 +1,19 @@
-import { test } from '@japa/runner';
-import UserFactory from 'Database/factories/UserFactory';
+import { test } from '@japa/runner'
+import UserFactory from '#database/factories/UserFactory'
test.group('Dashboard / Log out page', () => {
- test('redirects to /user/login when accessing /user/logout as guest', async ({
- client,
- }) => {
- const response = await client.get('/user/logout');
+ test('redirects to /user/login when accessing /user/logout as guest', async ({ client }) => {
+ const response = await client.get('/user/logout')
- response.assertRedirectsTo('/user/login'); // Check if it redirects to the expected URL
- });
+ response.assertRedirectsTo('/user/login') // Check if it redirects to the expected URL
+ })
test('logs the user out when opening the page', async ({ client }) => {
- const user = await UserFactory.create();
- const response = await client.get('/user/logout').loginAs(user);
+ const user = await UserFactory.create()
+ const response = await client.get('/user/logout').loginAs(user)
- response.assertRedirectsTo('/user/login');
+ response.assertRedirectsTo('/user/login')
// This asserts the session is deleted as well
- response.assertSessionMissing('auth_web');
- });
-});
+ response.assertSessionMissing('auth_web')
+ })
+})
diff --git a/tests/functional/dashboard/reset-password.spec.ts b/tests/functional/dashboard/reset-password.spec.ts
index e4884820..88836651 100644
--- a/tests/functional/dashboard/reset-password.spec.ts
+++ b/tests/functional/dashboard/reset-password.spec.ts
@@ -1,26 +1,22 @@
-import { test } from '@japa/runner';
-import Token from 'App/Models/Token';
-import UserFactory from 'Database/factories/UserFactory';
-import TokenFactory from 'Database/factories/TokenFactory';
+import { test } from '@japa/runner'
+import Token from '#app/Models/Token'
+import UserFactory from '#database/factories/UserFactory'
+import TokenFactory from '#database/factories/TokenFactory'
test.group('Dashboard / Reset password page', () => {
- test('returns a `Invalid token` message when opening without a token', async ({
- client,
- }) => {
- const response = await client.get('/user/reset');
+ test('returns a `Invalid token` message when opening without a token', async ({ client }) => {
+ const response = await client.get('/user/reset')
- response.assertStatus(200);
- response.assertTextIncludes('Invalid token');
- });
+ response.assertStatus(200)
+ response.assertTextIncludes('Invalid token')
+ })
test('displays the form when a token is provided', async ({ client }) => {
- const response = await client.get(
- '/user/reset?token=randomtokenbutitworks',
- );
+ const response = await client.get('/user/reset?token=randomtokenbutitworks')
- response.assertStatus(200);
- response.assertTextIncludes('Reset Your Password');
- });
+ response.assertStatus(200)
+ response.assertTextIncludes('Reset Your Password')
+ })
test('returns `passwords do not match` message when passwords do not match', async ({
client,
@@ -29,22 +25,20 @@ test.group('Dashboard / Reset password page', () => {
token: 'randomnotworkingtoken',
password: 'password',
password_confirmation: 'not_matching',
- });
+ })
- response.assertTextIncludes('Passwords do not match');
- });
+ response.assertTextIncludes('Passwords do not match')
+ })
- test('returns `Cannot reset your password` when token does not exist', async ({
- client,
- }) => {
+ test('returns `Cannot reset your password` when token does not exist', async ({ client }) => {
const response = await client.post('/user/reset').fields({
token: 'randomnotworkingtoken',
password: 'password',
password_confirmation: 'password',
- });
+ })
- response.assertTextIncludes('Cannot reset your password');
- });
+ response.assertTextIncludes('Cannot reset your password')
+ })
test('returns `Cannot reset your password` when token is older than 24 hours', async ({
client,
@@ -54,41 +48,39 @@ test.group('Dashboard / Reset password page', () => {
user_id: (await UserFactory.create()).id,
})
.apply('old_token')
- .create();
+ .create()
const response = await client.post('/user/reset').fields({
token: token.token,
password: 'password',
password_confirmation: 'password',
- });
+ })
- response.assertTextIncludes('Cannot reset your password');
- });
+ response.assertTextIncludes('Cannot reset your password')
+ })
- test('returns `Cannot reset your password` when token is revoked', async ({
- client,
- }) => {
+ test('returns `Cannot reset your password` when token is revoked', async ({ client }) => {
const token = await TokenFactory.merge({
// eslint-disable-next-line unicorn/no-await-expression-member
user_id: (await UserFactory.create()).id,
})
.apply('revoked')
- .create();
+ .create()
const response = await client.post('/user/reset').fields({
token: token.token,
password: 'password',
password_confirmation: 'password',
- });
+ })
- response.assertTextIncludes('Cannot reset your password');
- });
+ response.assertTextIncludes('Cannot reset your password')
+ })
test('correctly resets password and deletes token and able to login with new password', async ({
client,
assert,
}) => {
- const userEmail = 'working-reset-password-login@ferdium.org';
+ const userEmail = 'working-reset-password-login@ferdium.org'
const token = await TokenFactory.merge({
user_id:
(
@@ -98,25 +90,25 @@ test.group('Dashboard / Reset password page', () => {
// prettier-ignore
// eslint-disable-next-line unicorn/no-await-expression-member
).id,
- }).create();
+ }).create()
const response = await client.post('/user/reset').fields({
token: token.token,
password: 'new_password',
password_confirmation: 'new_password',
- });
+ })
// Assert response is as expected
- response.assertTextIncludes('Successfully reset your password');
+ response.assertTextIncludes('Successfully reset your password')
// Token should be deleted from database
- assert.isNull(await Token.query().where('token', token.token).first());
+ assert.isNull(await Token.query().where('token', token.token).first())
const loginResponse = await client.post('/user/login').fields({
mail: userEmail,
password: 'new_password',
- });
+ })
- loginResponse.assertRedirectsTo('/user/account');
- });
-});
+ loginResponse.assertRedirectsTo('/user/account')
+ })
+})
diff --git a/tests/functional/dashboard/transfer.spec.ts b/tests/functional/dashboard/transfer.spec.ts
index e40fca27..41a6709f 100644
--- a/tests/functional/dashboard/transfer.spec.ts
+++ b/tests/functional/dashboard/transfer.spec.ts
@@ -1,80 +1,59 @@
-import { test } from '@japa/runner';
-import { readFileSync } from 'node:fs';
-import UserFactory from 'Database/factories/UserFactory';
+import { test } from '@japa/runner'
+import { readFileSync } from 'node:fs'
+import UserFactory from '#database/factories/UserFactory'
test.group('Dashboard / Transfer page', () => {
- test('redirects to /user/login when accessing /user/transfer as guest', async ({
- client,
- }) => {
- const response = await client.get('/user/transfer');
+ test('redirects to /user/login when accessing /user/transfer as guest', async ({ client }) => {
+ const response = await client.get('/user/transfer')
- response.assertRedirectsTo('/user/login'); // Check if it redirects to the expected URL
- });
+ response.assertRedirectsTo('/user/login') // Check if it redirects to the expected URL
+ })
- test('returns a 200 opening the transfer route while being logged in', async ({
- client,
- }) => {
- const user = await UserFactory.create();
- const response = await client.get('/user/transfer').loginAs(user);
+ test('returns a 200 opening the transfer route while being logged in', async ({ client }) => {
+ const user = await UserFactory.create()
+ const response = await client.get('/user/transfer').loginAs(user)
- response.assertStatus(200);
- });
+ response.assertStatus(200)
+ })
- test('returns a validation error when not uploading a file', async ({
- client,
- }) => {
- const user = await UserFactory.create();
- const response = await client.post('/user/transfer').loginAs(user);
+ test('returns a validation error when not uploading a file', async ({ client }) => {
+ const user = await UserFactory.create()
+ const response = await client.post('/user/transfer').loginAs(user)
- response.assertTextIncludes('Invalid Ferdium account file');
- });
+ response.assertTextIncludes('Invalid Ferdium account file')
+ })
- test('returns a validation error when trying to use anything but json', async ({
- client,
- }) => {
- const user = await UserFactory.create();
+ test('returns a validation error when trying to use anything but json', async ({ client }) => {
+ const user = await UserFactory.create()
const response = await client
.post('/user/transfer')
.loginAs(user)
- .field(
- 'file',
- readFileSync('tests/functional/dashboard/import-stubs/random-file.txt'),
- );
+ .field('file', readFileSync('tests/functional/dashboard/import-stubs/random-file.txt'))
- response.assertTextIncludes('Invalid Ferdium account file');
- });
+ response.assertTextIncludes('Invalid Ferdium account file')
+ })
- test('returns a validation error when trying to use anything valid json', async ({
- client,
- }) => {
- const user = await UserFactory.create();
+ test('returns a validation error when trying to use anything valid json', async ({ client }) => {
+ const user = await UserFactory.create()
const response = await client
.post('/user/transfer')
.loginAs(user)
- .field(
- 'file',
- readFileSync('tests/functional/dashboard/import-stubs/invalid.json'),
- );
+ .field('file', readFileSync('tests/functional/dashboard/import-stubs/invalid.json'))
- response.assertTextIncludes('Invalid Ferdium account file');
- });
+ response.assertTextIncludes('Invalid Ferdium account file')
+ })
test('returns a validation error when trying to use a json file with no ferdium structure', async ({
client,
}) => {
- const user = await UserFactory.create();
+ const user = await UserFactory.create()
const response = await client
.post('/user/transfer')
.loginAs(user)
- .field(
- 'file',
- readFileSync(
- 'tests/functional/dashboard/import-stubs/valid-no-data.json',
- ),
- );
+ .field('file', readFileSync('tests/functional/dashboard/import-stubs/valid-no-data.json'))
- response.assertTextIncludes('Invalid Ferdium account file');
- });
+ response.assertTextIncludes('Invalid Ferdium account file')
+ })
test('correctly transfers data from json/ferdi-data and ferdium-data file with only workspaces', async ({
client,
@@ -85,76 +64,62 @@ test.group('Dashboard / Transfer page', () => {
'workspaces-only.json',
'workspaces-only.ferdi-data',
'workspaces-only.ferdium-data',
- ];
+ ]
for (const file of files) {
// eslint-disable-next-line no-await-in-loop
- const user = await UserFactory.create();
+ const user = await UserFactory.create()
// eslint-disable-next-line no-await-in-loop
const response = await client
.post('/user/transfer')
.loginAs(user)
- .field(
- 'file',
- readFileSync(`tests/functional/dashboard/import-stubs/${file}`),
- );
-
- response.assertTextIncludes(
- 'Your account has been imported, you can now login as usual!',
- );
+ .field('file', readFileSync(`tests/functional/dashboard/import-stubs/${file}`))
+
+ response.assertTextIncludes('Your account has been imported, you can now login as usual!')
// eslint-disable-next-line no-await-in-loop
- await user.refresh();
+ await user.refresh()
// eslint-disable-next-line no-await-in-loop
- const workspacesForUser = await user.related('workspaces').query();
- assert.equal(workspacesForUser.length, 3, file);
+ const workspacesForUser = await user.related('workspaces').query()
+ assert.equal(workspacesForUser.length, 3, file)
// ensure not JSON encoded twice
for (const workspace of workspacesForUser) {
- assert.isNull(workspace.data.match(/\\"/), file);
+ assert.isNull(workspace.data.match(/\\"/), file)
}
}
- });
+ })
test('correctly transfers data from json/ferdi-data and ferdium-data file with only services', async ({
client,
assert,
}) => {
// Repeat for all 3 file extension
- const files = [
- 'services-only.json',
- 'services-only.ferdi-data',
- 'services-only.ferdium-data',
- ];
+ const files = ['services-only.json', 'services-only.ferdi-data', 'services-only.ferdium-data']
for (const file of files) {
// eslint-disable-next-line no-await-in-loop
- const user = await UserFactory.create();
+ const user = await UserFactory.create()
// eslint-disable-next-line no-await-in-loop
const response = await client
.post('/user/transfer')
.loginAs(user)
- .field(
- 'file',
- readFileSync(`tests/functional/dashboard/import-stubs/${file}`),
- );
-
- response.assertTextIncludes(
- 'Your account has been imported, you can now login as usual!',
- );
+ .field('file', readFileSync(`tests/functional/dashboard/import-stubs/${file}`))
+
+ response.assertTextIncludes('Your account has been imported, you can now login as usual!')
// eslint-disable-next-line no-await-in-loop
- await user.refresh();
+ await user.refresh()
// eslint-disable-next-line no-await-in-loop
- const servicesForUser = await user.related('services').query();
- assert.equal(servicesForUser.length, 3, file);
+ const servicesForUser = await user.related('services').query()
+ assert.equal(servicesForUser.length, 3, file)
// ensure not JSON encoded twice
for (const service of servicesForUser) {
- assert.isNull(service.settings.match(/\\"/), file);
+ assert.isNull(service.settings.match(/\\"/), file)
}
}
- });
+ })
test('correctly transfers data from json/ferdi-data and ferdium-data file with workspaces and services', async ({
client,
@@ -165,72 +130,57 @@ test.group('Dashboard / Transfer page', () => {
'services-workspaces.json',
'services-workspaces.ferdi-data',
'services-workspaces.ferdium-data',
- ];
+ ]
for (const file of files) {
// eslint-disable-next-line no-await-in-loop
- const user = await UserFactory.create();
+ const user = await UserFactory.create()
// eslint-disable-next-line no-await-in-loop
const response = await client
.post('/user/transfer')
.loginAs(user)
- .field(
- 'file',
- readFileSync(`tests/functional/dashboard/import-stubs/${file}`),
- );
-
- response.assertTextIncludes(
- 'Your account has been imported, you can now login as usual!',
- );
+ .field('file', readFileSync(`tests/functional/dashboard/import-stubs/${file}`))
+
+ response.assertTextIncludes('Your account has been imported, you can now login as usual!')
// eslint-disable-next-line no-await-in-loop
- await user.refresh();
+ await user.refresh()
// eslint-disable-next-line no-await-in-loop
- const servicesForUser = await user.related('services').query();
+ const servicesForUser = await user.related('services').query()
// eslint-disable-next-line no-await-in-loop
- const workspacesForUser = await user.related('workspaces').query();
- assert.equal(servicesForUser.length, 3, file);
- assert.equal(workspacesForUser.length, 3, file);
+ const workspacesForUser = await user.related('workspaces').query()
+ assert.equal(servicesForUser.length, 3, file)
+ assert.equal(workspacesForUser.length, 3, file)
- const firstServiceUuid = servicesForUser.find(
- s => s.name === 'random-service-1',
- )?.serviceId;
+ const firstServiceUuid = servicesForUser.find((s) => s.name === 'random-service-1')?.serviceId
const secondServiceUuid = servicesForUser.find(
- s => s.name === 'random-service-2',
- )?.serviceId;
- const thirdServiceUUid = servicesForUser.find(
- s => s.name === 'random-service-3',
- )?.serviceId;
+ (s) => s.name === 'random-service-2'
+ )?.serviceId
+ const thirdServiceUUid = servicesForUser.find((s) => s.name === 'random-service-3')?.serviceId
// Assert the first workspace to not have any services
- const firstWorkspace = workspacesForUser.find(
- w => w.name === 'workspace1',
- );
+ const firstWorkspace = workspacesForUser.find((w) => w.name === 'workspace1')
if (firstWorkspace?.services) {
- assert.empty(JSON.parse(firstWorkspace.services), file);
+ assert.empty(JSON.parse(firstWorkspace.services), file)
}
- const secondWorkspace = workspacesForUser.find(
- w => w.name === 'workspace2',
- );
+ const secondWorkspace = workspacesForUser.find((w) => w.name === 'workspace2')
if (secondWorkspace?.services) {
assert.deepEqual(
JSON.parse(secondWorkspace.services),
[firstServiceUuid, secondServiceUuid],
- file,
- );
+ file
+ )
}
- const thirdWorkspace = workspacesForUser.find(
- w => w.name === 'workspace3',
- );
+ const thirdWorkspace = workspacesForUser.find((w) => w.name === 'workspace3')
if (thirdWorkspace?.services) {
assert.deepEqual(
JSON.parse(thirdWorkspace.services),
[firstServiceUuid, secondServiceUuid, thirdServiceUUid],
- file,
- );
+ file
+ )
}
}
- });
-});
+ })
+})
diff --git a/tests/functional/health.spec.ts b/tests/functional/health.spec.ts
index 2f7e074b..50bf46c4 100644
--- a/tests/functional/health.spec.ts
+++ b/tests/functional/health.spec.ts
@@ -1,13 +1,13 @@
-import { test } from '@japa/runner';
+import { test } from '@japa/runner'
test.group('health page', () => {
test('returns a 200 response', async ({ client }) => {
- const response = await client.get('/health');
+ const response = await client.get('/health')
- response.assertStatus(200);
+ response.assertStatus(200)
response.assertBodyContains({
api: 'success',
db: 'success',
- });
- });
-});
+ })
+ })
+})
diff --git a/tests/functional/static-pages/home.spec.ts b/tests/functional/static-pages/home.spec.ts
index 5054e053..20d02db0 100644
--- a/tests/functional/static-pages/home.spec.ts
+++ b/tests/functional/static-pages/home.spec.ts
@@ -1,10 +1,10 @@
-import { test } from '@japa/runner';
+import { test } from '@japa/runner'
test.group('home page', () => {
test('returns a 200 response', async ({ client }) => {
- const response = await client.get('/');
+ const response = await client.get('/')
- response.assertStatus(200);
- response.assertTextIncludes('Go to account dashboard');
- });
-});
+ response.assertStatus(200)
+ response.assertTextIncludes('Go to account dashboard')
+ })
+})
diff --git a/tests/functional/static-pages/privacy.spec.ts b/tests/functional/static-pages/privacy.spec.ts
index f1d5bec3..b79f5809 100644
--- a/tests/functional/static-pages/privacy.spec.ts
+++ b/tests/functional/static-pages/privacy.spec.ts
@@ -1,10 +1,10 @@
-import { test } from '@japa/runner';
+import { test } from '@japa/runner'
test.group('privacy page', () => {
test('returns a 200 response', async ({ client }) => {
- const response = await client.get('/privacy');
+ const response = await client.get('/privacy')
- response.assertStatus(200);
- response.assertTextIncludes('PRIVACY POLICY');
- });
-});
+ response.assertStatus(200)
+ response.assertTextIncludes('PRIVACY POLICY')
+ })
+})
diff --git a/tests/functional/static-pages/terms.spec.ts b/tests/functional/static-pages/terms.spec.ts
index de990e41..9c222577 100644
--- a/tests/functional/static-pages/terms.spec.ts
+++ b/tests/functional/static-pages/terms.spec.ts
@@ -1,10 +1,10 @@
-import { test } from '@japa/runner';
+import { test } from '@japa/runner'
test.group('terms page', () => {
test('returns a 200 response', async ({ client }) => {
- const response = await client.get('/terms');
+ const response = await client.get('/terms')
- response.assertStatus(200);
- response.assertTextIncludes('Terms of Service');
- });
-});
+ response.assertStatus(200)
+ response.assertTextIncludes('Terms of Service')
+ })
+})
diff --git a/tests/utils.ts b/tests/utils.ts
index 14460b9e..b60b8670 100644
--- a/tests/utils.ts
+++ b/tests/utils.ts
@@ -1,6 +1,6 @@
-import View from '@ioc:Adonis/Core/View';
+import edge from 'edge.js'
export function fakeCsrfField(): void {
// Create fake csrField function in the view
- View.global('csrfField', () => '');
+ edge.global('csrfField', () => '')
}
diff --git a/tsconfig.json b/tsconfig.json
index aee7acd0..54d4a5e8 100644
--- a/tsconfig.json
+++ b/tsconfig.json
@@ -1,5 +1,5 @@
{
- "extends": "./node_modules/adonis-preset-ts/tsconfig.json",
+ "extends": "@adonisjs/tsconfig/tsconfig.app.json",
"include": ["**/*"],
"exclude": ["node_modules", "build", "recipes"],
"compilerOptions": {
@@ -8,25 +8,21 @@
"strict": true,
"incremental": true,
"paths": {
- "App/*": ["./app/*"],
- "Config/*": ["./config/*"],
- "Contracts/*": ["./contracts/*"],
- "Database/*": ["./database/*"]
+ "#controllers/*": ["./app/controllers/*.js"],
+ "#exceptions/*": ["./app/exceptions/*.js"],
+ "#models/*": ["./app/models/*.js"],
+ "#services/*": ["./app/services/*.js"],
+ "#listeners/*": ["./app/listeners/*.js"],
+ "#events/*": ["./app/events/*.js"],
+ "#middleware/*": ["./app/middleware/*.js"],
+ "#validators/*": ["./app/validators/*.js"],
+ "#start/*": ["./start/*.js"],
+ "#config/*": ["./config/*.js"],
+ "#app/*": ["./app/*.js"],
+ "#database/*": ["./database/*.js"],
+ "#types/*": ["./types/*.js"]
},
- "types": [
- "@adonisjs/core",
- "@adonisjs/repl",
- "@japa/preset-adonis/build/adonis-typings",
- "@adonisjs/view",
- "@adonisjs/lucid",
- "@adonisjs/auth",
- "@adonisjs/shield",
- "@adonisjs/session",
- "@adonisjs/mail",
- "fs-extra",
- "adonis5-jwt"
- ],
- "sourceMap": true,
+ "types": ["fs-extra", "adonis5-jwt"],
"noFallthroughCasesInSwitch": true,
"resolveJsonModule": true,
"forceConsistentCasingInFileNames": true,
diff --git a/contracts/auth.ts b/types/auth.ts
similarity index 82%
rename from contracts/auth.ts
rename to types/auth.ts
index 1625116f..9761ea56 100644
--- a/contracts/auth.ts
+++ b/types/auth.ts
@@ -5,8 +5,8 @@
* file.
*/
-import User from 'App/Models/User';
-import { JWTGuardConfig, JWTGuardContract } from '@ioc:Adonis/Addons/Jwt';
+import User from '#app/Models/User'
+import { JWTGuardConfig, JWTGuardContract } from '@ioc:Adonis/Addons/Jwt'
declare module '@ioc:Adonis/Addons/Auth' {
/*
@@ -35,9 +35,9 @@ declare module '@ioc:Adonis/Addons/Auth' {
|
*/
user: {
- implementation: LucidProviderContract;
- config: LucidProviderConfig;
- };
+ implementation: LucidProviderContract
+ config: LucidProviderConfig
+ }
}
/*
@@ -66,9 +66,9 @@ declare module '@ioc:Adonis/Addons/Auth' {
|
*/
web: {
- implementation: SessionGuardContract<'user', 'web'>;
- config: SessionGuardConfig<'user'>;
- };
+ implementation: SessionGuardContract<'user', 'web'>
+ config: SessionGuardConfig<'user'>
+ }
/*
|--------------------------------------------------------------------------
| OAT Guard
@@ -79,9 +79,9 @@ declare module '@ioc:Adonis/Addons/Auth' {
|
*/
api: {
- implementation: OATGuardContract<'user', 'api'>;
- config: OATGuardConfig<'user'>;
- };
+ implementation: OATGuardContract<'user', 'api'>
+ config: OATGuardConfig<'user'>
+ }
/*
|--------------------------------------------------------------------------
| Basic Auth Guard
@@ -92,12 +92,12 @@ declare module '@ioc:Adonis/Addons/Auth' {
|
*/
basic: {
- implementation: BasicAuthGuardContract<'user', 'basic'>;
- config: BasicAuthGuardConfig<'user'>;
- };
+ implementation: BasicAuthGuardContract<'user', 'basic'>
+ config: BasicAuthGuardConfig<'user'>
+ }
jwt: {
- implementation: JWTGuardContract<'user', 'api'>;
- config: JWTGuardConfig<'user'>;
- };
+ implementation: JWTGuardContract<'user', 'api'>
+ config: JWTGuardConfig<'user'>
+ }
}
}
diff --git a/contracts/drive.ts b/types/drive.ts
similarity index 87%
rename from contracts/drive.ts
rename to types/drive.ts
index 47b70f3b..0ad668e4 100644
--- a/contracts/drive.ts
+++ b/types/drive.ts
@@ -5,8 +5,8 @@
* file.
*/
-import { InferDisksFromConfig } from '@adonisjs/core/build/config';
-import driveConfig from '../config/drive';
+import { InferDisksFromConfig } from '@adonisjs/core/build/config'
+import driveConfig from '../config/drive.js'
declare module '@ioc:Adonis/Core/Drive' {
interface DisksList extends InferDisksFromConfig {}
diff --git a/contracts/events.ts b/types/events.ts
similarity index 89%
rename from contracts/events.ts
rename to types/events.ts
index 541bdc22..91be5b47 100644
--- a/contracts/events.ts
+++ b/types/events.ts
@@ -5,7 +5,7 @@
* file.
*/
-import User from 'App/Models/User';
+import User from '#app/Models/User'
declare module '@ioc:Adonis/Core/Event' {
/*
@@ -28,6 +28,6 @@ declare module '@ioc:Adonis/Core/Event' {
|
*/
interface EventsList {
- 'forgot:password': { user: User; token: string };
+ 'forgot:password': { user: User; token: string }
}
}
diff --git a/contracts/tests.ts b/types/tests.ts
similarity index 93%
rename from contracts/tests.ts
rename to types/tests.ts
index fec995d4..9be30fc1 100644
--- a/contracts/tests.ts
+++ b/types/tests.ts
@@ -5,7 +5,7 @@
* file.
*/
-import '@japa/runner';
+import '@japa/runner'
declare module '@japa/runner' {
interface TestContext {
diff --git a/vite.config.ts b/vite.config.ts
new file mode 100644
index 00000000..fb09564a
--- /dev/null
+++ b/vite.config.ts
@@ -0,0 +1,19 @@
+import { defineConfig } from 'vite'
+import adonisjs from '@adonisjs/vite/client'
+
+export default defineConfig({
+ plugins: [
+ adonisjs({
+ /**
+ * Entrypoints of your application. Each entrypoint will
+ * result in a separate bundle.
+ */
+ entrypoints: ['resources/js/app.js'],
+
+ /**
+ * Paths to watch and reload the browser on file change
+ */
+ reload: ['resources/views/**/*.edge'],
+ }),
+ ],
+})
diff --git a/webpack.config.js b/webpack.config.js
deleted file mode 100644
index 9743941e..00000000
--- a/webpack.config.js
+++ /dev/null
@@ -1,213 +0,0 @@
-const { join } = require('node:path');
-const Encore = require('@symfony/webpack-encore');
-
-/*
-|--------------------------------------------------------------------------
-| Encore runtime environment
-|--------------------------------------------------------------------------
-*/
-if (!Encore.isRuntimeEnvironmentConfigured()) {
- Encore.configureRuntimeEnvironment(process.env.NODE_ENV || 'dev');
-}
-
-/*
-|--------------------------------------------------------------------------
-| Output path
-|--------------------------------------------------------------------------
-|
-| The output path for writing the compiled files. It should always
-| be inside the public directory, so that AdonisJS can serve it.
-|
-*/
-Encore.setOutputPath('./public/assets');
-
-/*
-|--------------------------------------------------------------------------
-| Public URI
-|--------------------------------------------------------------------------
-|
-| The public URI to access the static files. It should always be
-| relative from the "public" directory.
-|
-*/
-Encore.setPublicPath('/assets');
-
-/*
-|--------------------------------------------------------------------------
-| Entrypoints
-|--------------------------------------------------------------------------
-|
-| Entrypoints are script files that boots your frontend application. Ideally
-| a single entrypoint is used by majority of applications. However, feel
-| free to add more (if required).
-|
-| Also, make sure to read the docs on "Assets bundler" to learn more about
-| entrypoints.
-|
-*/
-Encore.addEntry('app', './resources/js/app.js');
-
-/*
-|--------------------------------------------------------------------------
-| Copy assets
-|--------------------------------------------------------------------------
-|
-| Since the edge templates are not part of the Webpack compile lifecycle, any
-| images referenced by it will not be processed by Webpack automatically. Hence
-| we must copy them manually.
-|
-*/
-// Encore.copyFiles({
-// from: './resources/images',
-// to: 'images/[path][name].[hash:8].[ext]',
-// })
-
-/*
-|--------------------------------------------------------------------------
-| Split shared code
-|--------------------------------------------------------------------------
-|
-| Instead of bundling duplicate code in all the bundles, generate a separate
-| bundle for the shared code.
-|
-| https://symfony.com/doc/current/frontend/encore/split-chunks.html
-| https://webpack.js.org/plugins/split-chunks-plugin/
-|
-*/
-// Encore.splitEntryChunks()
-
-/*
-|--------------------------------------------------------------------------
-| Isolated entrypoints
-|--------------------------------------------------------------------------
-|
-| Treat each entry point and its dependencies as its own isolated module.
-|
-*/
-Encore.disableSingleRuntimeChunk();
-
-/*
-|--------------------------------------------------------------------------
-| Cleanup output folder
-|--------------------------------------------------------------------------
-|
-| It is always nice to cleanup the build output before creating a build. It
-| will ensure that all unused files from the previous build are removed.
-|
-*/
-Encore.cleanupOutputBeforeBuild();
-/*
-|--------------------------------------------------------------------------
-| Source maps
-|--------------------------------------------------------------------------
-|
-| Enable source maps in production
-|
-*/
-Encore.enableSourceMaps(!Encore.isProduction());
-
-/*
-|--------------------------------------------------------------------------
-| Assets versioning
-|--------------------------------------------------------------------------
-|
-| Enable assets versioning to leverage lifetime browser and CDN cache
-|
-*/
-Encore.enableVersioning(Encore.isProduction());
-
-/*
-|--------------------------------------------------------------------------
-| Configure dev server
-|--------------------------------------------------------------------------
-|
-| Here we configure the dev server to enable live reloading for edge templates.
-| Remember edge templates are not processed by Webpack and hence we need
-| to watch them explicitly and livereload the browser.
-|
-*/
-Encore.configureDevServerOptions(options => {
- /**
- * Normalize "options.static" property to an array
- */
- if (!options.static) {
- options.static = [];
- } else if (!Array.isArray(options.static)) {
- options.static = [options.static];
- }
-
- /**
- * Enable live reload and add views directory
- */
- options.liveReload = true;
- options.static.push({
- directory: join(__dirname, './resources/views'),
- watch: true,
- });
-});
-
-/*
-|--------------------------------------------------------------------------
-| CSS precompilers support
-|--------------------------------------------------------------------------
-|
-| Uncomment one of the following lines of code to enable support for your
-| favorite CSS precompiler
-|
-*/
-// Encore.enableSassLoader()
-// Encore.enableLessLoader()
-// Encore.enableStylusLoader()
-
-/*
-|--------------------------------------------------------------------------
-| CSS loaders
-|--------------------------------------------------------------------------
-|
-| Uncomment one of the following line of code to enable support for
-| PostCSS or CSS.
-|
-*/
-// Encore.enablePostCssLoader()
-// Encore.configureCssLoader(() => {})
-
-/*
-|--------------------------------------------------------------------------
-| Enable Vue loader
-|--------------------------------------------------------------------------
-|
-| Uncomment the following lines of code to enable support for vue. Also make
-| sure to install the required dependencies.
-|
-*/
-// Encore.enableVueLoader(() => {}, {
-// version: 3,
-// runtimeCompilerBuild: false,
-// useJsx: false
-// })
-
-/*
-|--------------------------------------------------------------------------
-| Configure logging
-|--------------------------------------------------------------------------
-|
-| To keep the terminal clean from unnecessary info statements , we only
-| log warnings and errors. If you want all the logs, you can change
-| the level to "info".
-|
-*/
-const config = Encore.getWebpackConfig();
-config.infrastructureLogging = {
- level: 'warn',
-};
-config.stats = 'errors-warnings';
-
-/*
-|--------------------------------------------------------------------------
-| Export config
-|--------------------------------------------------------------------------
-|
-| Export config for webpack to do its job
-|
-*/
-module.exports = config;