diff --git a/.docker/Dockerfile-development b/.docker/Dockerfile-development new file mode 100644 index 00000000..fac8f2fa --- /dev/null +++ b/.docker/Dockerfile-development @@ -0,0 +1,34 @@ +# Base image node ---------------------------------------- +FROM node:18-alpine as base + +# System dependencies +RUN apk add --no-cache sqlite make python3 gcc g++ \ + && npm install -g pnpm@8 turbo + +USER node +WORKDIR /src + +RUN pnpm config set store-dir .pnpm-store && pnpm config set node-linker hoisted + +# Friday builder image ----------------------------------- +FROM base as builder + +HEALTHCHECK --interval=1s --retries=3600 \ + CMD test -f ./task_finished.txt || exit 1 + +# Start container +CMD pnpm install && turbo build && touch task_finished.txt && sleep 4s + +# Friday server image ------------------------------------- +FROM base as server + +# Start container +EXPOSE 3001 +CMD pnpm start:dev + +# Friday front image ------------------------------------- +FROM base as front + +# Start container +EXPOSE 3001 +CMD pnpm start:dev diff --git a/.docker/Dockerfile-production b/.docker/Dockerfile-production new file mode 100644 index 00000000..0c67a7c4 --- /dev/null +++ b/.docker/Dockerfile-production @@ -0,0 +1,62 @@ +# base image node ---------------------------------------- +FROM node:18-alpine as base + +# System dependencies +RUN apk add --no-cache curl + +WORKDIR /src + +CMD npm run start:prod + +# builder ------------------------------------------------ +FROM base as builder + +# System dependencies +RUN apk add --no-cache sqlite make + +# Builder dependencies +RUN npm install -g pnpm@8 turbo + +WORKDIR /usr/src + +COPY ../pnpm-lock.yaml ./ +COPY ../*.npmrc ./ + +COPY ../ ./ + +RUN pnpm fetch \ + && pnpm install -r \ + && turbo build + +# Friday front ------------------------------------------- +FROM base as front + +# Front dependencies +RUN npm install -g http-server + +# Add friday core +COPY --from=builder /usr/src/apps/front/dist ./dist + +COPY ../apps/front/package.json ./ + +ENV NODE_ENV production + +# Export listening port +EXPOSE 1444 + +# Friday back ------------------------------------------ +FROM base as server + +# Server dependencies +RUN npm install mqtt sqlite3 ssh2 +RUN npm install -g cross-env + +# Add friday core +COPY --from=builder /usr/src/apps/server/dist ./dist + +COPY ../apps/server/package.json ./ + +ENV NODE_ENV production + +# Export listening port +EXPOSE 1443 \ No newline at end of file diff --git a/.docker/docker-compose.dev.yml b/.docker/docker-compose.dev.yml new file mode 100644 index 00000000..3abc19d5 --- /dev/null +++ b/.docker/docker-compose.dev.yml @@ -0,0 +1,80 @@ +version: "3.9" + +services: + builder: + container_name: builder-dev + image: fridayai/friday-builder:dev + build: + context: ../ + dockerfile: ./.docker/Dockerfile-development + target: builder + restart: on-failure + volumes: + - ../.pnpm-store:/src/.pnpm-store + - ../apps:/src/apps + - ../packages:/src/packages + - ../package.json:/src/package.json + - ../pnpm-lock.yaml:/src/pnpm-lock.yaml + - ../pnpm-workspace.yaml:/src/pnpm-workspace.yaml + - ../node_modules:/src/node_modules + + server: + container_name: server-dev + image: fridayai/friday-server:dev + build: + context: ../ + dockerfile: ./.docker/Dockerfile-development + target: server + depends_on: + builder: + condition: service_healthy + ports: + - "3000:3000" + environment: + - NODE_ENV=development + - MQTT_HOST=host.docker.internal + volumes: + - ../.pnpm-store:/src/.pnpm-store + - ../apps/server:/src/apps/server + - ../packages:/src/packages + - ../package.json:/src/package.json + - ../pnpm-lock.yaml:/src/pnpm-lock.yaml + - ../pnpm-workspace.yaml:/src/pnpm-workspace.yaml + - ../node_modules:/src/node_modules + + front: + container_name: front-dev + image: fridayai/friday-front:dev + build: + context: ../ + dockerfile: ./.docker/Dockerfile-development + target: front + depends_on: + builder: + condition: service_healthy + ports: + - "3001:3001" + environment: + - NODE_ENV=development + volumes: + - ../.pnpm-store:/src/.pnpm-store + - ../apps/front:/src/apps/front + - ../packages:/src/packages + - ../package.json:/src/package.json + - ../pnpm-lock.yaml:/src/pnpm-lock.yaml + - ../pnpm-workspace.yaml:/src/pnpm-workspace.yaml + - ../node_modules:/src/node_modules + + broker: + container_name: broker-dev + image: eclipse-mosquitto:latest + restart: always + ports: + - "1883:1883" + - "9001:9001" + volumes: + - ../.docker/mosquitto/config/mosquitto.conf:/mosquitto/config/mosquitto.conf + - ../.docker/mosquitto/data:/mosquitto/data + environment: + - TZ=Europe/Paris + user: 1000:1000 diff --git a/.docker/docker-compose.prod.yml b/.docker/docker-compose.prod.yml new file mode 100644 index 00000000..13f6518b --- /dev/null +++ b/.docker/docker-compose.prod.yml @@ -0,0 +1,51 @@ +version: "3.9" + +services: + server: + container_name: friday-server + image: fridayai/friday-server:latest + build: + context: ../ + dockerfile: ./.docker/Dockerfile-production + target: server + ports: + - "1443:1443" + environment: + - NODE_ENV=production + - MQTT_HOST=host.docker.internal + + front: + container_name: friday-front + image: fridayai/friday-front:latest + build: + context: ../ + dockerfile: ./.docker/Dockerfile-production + target: front + depends_on: + - server + ports: + - "1444:1444" + environment: + - NODE_ENV=production + + broker: + container_name: friday-broker + image: eclipse-mosquitto:latest + restart: always + ports: + - "1883:1883" + - "9001:9001" + volumes: + - ../.docker/mosquitto/config/mosquitto.conf:/mosquitto/config/mosquitto.conf + - ../.docker/mosquitto/data:/mosquitto/data + environment: + - TZ=Europe/Paris + user: 1000:1000 + + watchtower: + container_name: friday-watchtower + image: containrrr/watchtower + restart: always + volumes: + - /var/run/docker.sock:/var/run/docker.sock + command: --cleanup diff --git a/docker/mosquitto/config/mosquitto.conf b/.docker/mosquitto/config/mosquitto.conf similarity index 100% rename from docker/mosquitto/config/mosquitto.conf rename to .docker/mosquitto/config/mosquitto.conf diff --git a/.dockerignore b/.dockerignore index ac333d22..bb0fc61a 100644 --- a/.dockerignore +++ b/.dockerignore @@ -20,3 +20,8 @@ node.d.ts .git docker .github +.pnpm-store +node_modules +lib +dist +.turbo \ No newline at end of file diff --git a/.env b/.env deleted file mode 100644 index accd09a0..00000000 --- a/.env +++ /dev/null @@ -1 +0,0 @@ -COMPOSE_CONVERT_WINDOWS_PATHS=1 diff --git a/.eslintrc.js b/.eslintrc.js new file mode 100644 index 00000000..ad3e9444 --- /dev/null +++ b/.eslintrc.js @@ -0,0 +1,10 @@ +// This configuration only applies to the package manager root. +/** @type {import("eslint").Linter.Config} */ +module.exports = { + ignorePatterns: ["apps/**", "packages/**"], + extends: ["@friday-ai/tools/eslint/base.js"], + parser: "@typescript-eslint/parser", + parserOptions: { + project: true, + }, +}; diff --git a/.github/actions/prepare-env/action.yml b/.github/actions/prepare-env/action.yml index 2dd0839a..14d35db3 100644 --- a/.github/actions/prepare-env/action.yml +++ b/.github/actions/prepare-env/action.yml @@ -5,7 +5,7 @@ author: "MathieuAndrade" inputs: node-version: description: Version of Node to use - default: 18.x + default: 20.x pnpm-version: description: Version of pnpm to use @@ -27,12 +27,12 @@ runs: using: composite steps: - name: 📦 Setup pnpm - uses: pnpm/action-setup@v2 + uses: pnpm/action-setup@v3 with: version: ${{ inputs.pnpm-version }} - name: 📦 Setup Node - uses: actions/setup-node@v3 + uses: actions/setup-node@v4 with: node-version: ${{ inputs.node-version }} cache: pnpm @@ -41,12 +41,20 @@ runs: run: pnpm install -r --frozen-lockfile --strict-peer-dependencies shell: bash + - name: Cache turbo build setup + uses: actions/cache@v4 + with: + path: .turbo + key: ${{ runner.os }}-turbo-${{ github.sha }} + restore-keys: | + ${{ runner.os }}-turbo- + - name: 📦 Build if: ${{ inputs.build == 'true' }} run: | if echo ${{ inputs.build-only-packages }} then - pnpm -r --filter "./packages/*" build + pnpm build:packages else ${{ inputs.build-command }} fi diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index a560e002..45e70ec3 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -52,7 +52,8 @@ jobs: files: ./apps/server/test-results.xml - name: ⬆️ Upload coverage to Codecov - uses: codecov/codecov-action@v2 + uses: codecov/codecov-action@v4 if: always() with: directory: ./apps/server/ + token: ${{ secrets.CODECOV_TOKEN }} diff --git a/.gitignore b/.gitignore index 95c912db..e9825752 100644 --- a/.gitignore +++ b/.gitignore @@ -1,55 +1,54 @@ -# Logs -logs -*.log -npm-debug.log* - -# Runtime data -pids -*.pid -*.seed -*.pid.lock - -# Directory for instrumented libs generated by jscoverage/JSCover -lib-cov - -# Coverage directory used by tools like istanbul -coverage - -# nyc test coverage -.nyc_output - -# Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files) -.grunt - -# node-waf configuration -.lock-wscript +# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. -# Compiled binary addons (http://nodejs.org/api/addons.html) -build - -# Dependency directories +# Dependencies node_modules -jspm_packages +.pnp +.pnp.js .pnpm-store -# Optional npm cache directory +# Optional cache directory .npm - -# Optional eslint cache .eslintcache +.turbo + +# Local env files +.env +.env.local +.env.development.local +.env.development +.env.test.local +.env.production.local +.env.production +.env.staging + +# Testing +coverage +.nyc_output +stats.html -# Optional REPL history -.node_repl_history +# Turbo +.turbo -# Output of 'npm pack' -*.tgz +# Vercel +.vercel -# Yarn Integrity file -.yarn-integrity +# Build Outputs +.next/ +out/ +build +dist +lib +vite.config.*.mjs +*.lcov + +# Debug +npm-debug.log* +yarn-debug.log* +yarn-error.log* -# Build files -dist/ -lib/ +# Misc +.DS_Store +*.pem # IDE folder .idea @@ -58,4 +57,7 @@ lib/ package-lock.json # Docker folder -/docker/mosquitto/data/ +/.docker/mosquitto/data/ + +# Local databases files +*.db \ No newline at end of file diff --git a/.npmrc b/.npmrc index 3e775efb..a15e17d9 100644 --- a/.npmrc +++ b/.npmrc @@ -1 +1,2 @@ auto-install-peers=true +store-dir=.pnpm-store \ No newline at end of file diff --git a/Makefile b/Makefile index 9e530b58..ebbc2499 100644 --- a/Makefile +++ b/Makefile @@ -4,9 +4,7 @@ build: build --no-cache prod: - @docker-compose -f docker-compose.yml \ - -f docker-compose.prod.yml \ - up -d --remove-orphans + @docker-compose -f .docker/docker-compose.prod.yml up -d --remove-orphans dev: @docker compose -f docker-compose.yml \ diff --git a/apps/front/.env.development b/apps/front/.env.development deleted file mode 100644 index 3cd977e5..00000000 --- a/apps/front/.env.development +++ /dev/null @@ -1,2 +0,0 @@ -NODE_ENV=development -VITE_SERVER_PORT=3000 diff --git a/apps/front/.env.staging b/apps/front/.env.staging deleted file mode 100644 index e3cdb023..00000000 --- a/apps/front/.env.staging +++ /dev/null @@ -1,2 +0,0 @@ -NODE_ENV=production -VITE_DEMO_MODE=true diff --git a/apps/front/.eslintrc.cjs b/apps/front/.eslintrc.cjs new file mode 100644 index 00000000..b8075b4b --- /dev/null +++ b/apps/front/.eslintrc.cjs @@ -0,0 +1,11 @@ +const config = require("@friday-ai/tools/eslint/react-internal"); + +/** @type {import("eslint").Linter.Config} */ +module.exports = { + ...config, + root: true, + parser: "@typescript-eslint/parser", + parserOptions: { + project: "./tsconfig.json", + }, +}; diff --git a/apps/front/.eslintrc.js b/apps/front/.eslintrc.js deleted file mode 100644 index 7e4da5ea..00000000 --- a/apps/front/.eslintrc.js +++ /dev/null @@ -1,3 +0,0 @@ -module.exports = { - extends: ['../../packages/tools/eslint/eslint.config.front.js'], -}; diff --git a/apps/front/.gitignore b/apps/front/.gitignore deleted file mode 100644 index 62eff5db..00000000 --- a/apps/front/.gitignore +++ /dev/null @@ -1,6 +0,0 @@ -node_modules -.DS_Store -dist -dist-ssr -*.local -stats.html diff --git a/apps/front/package.json b/apps/front/package.json index 5a959f37..6c605d57 100644 --- a/apps/front/package.json +++ b/apps/front/package.json @@ -6,24 +6,22 @@ "type": "module", "scripts": { "start": "per-env", - "start:prod": "cross-env NODE_ENV=production http-server dist -p 1444 -g", - "start:dev": "cross-env NODE_ENV=development vite --host --force", - "start:demo": "cross-env NODE_ENV=production tsc && vite build --mode staging && http-server dist", + "start:prod": "http-server dist -p 1444 -g", + "start:dev": "cross-env CHOKIDAR_USEPOLLING=true NODE_ENV=development VITE_SERVER_PORT=3000 vite --host --force", "build": "cross-env NODE_ENV=production tsc && vite build --mode production", - "preview": "pnpm build && vite preview --host", - "preview:https": "cross-env HTTPS=true pnpm run preview", + "build:front": "cross-env NODE_ENV=production tsc && vite build --mode production", "format": "prettier --write src/**/*.{js,jsx,ts,tsx}", "lint": "eslint --ext .js,.jsx,.ts,.tsx ./src", "lint:fix": "eslint --ext .js,.jsx,.ts,.tsx --fix ./src" }, - "prettier": "../../packages/tools/prettier.config.js", + "prettier": "@friday-ai/tools/configs/prettier.config.js", "dependencies": { "@ebay/nice-modal-react": "^1.2.13", "@emotion/react": "^11.11.3", "@emotion/styled": "^11.11.0", - "@friday-ai/shared": "workspace:*", "@mui/icons-material": "^5.15.3", "@mui/material": "^5.15.3", + "@friday-ai/shared": "workspace:*", "@tanstack/react-query": "^5.17.8", "@visx/event": "^3.3.0", "@visx/group": "^3.3.0", @@ -64,7 +62,8 @@ "prettier": "^3.1.1", "rollup-plugin-visualizer": "^5.12.0", "typescript": "^5.3.3", - "vite": "^5.0.11", + "vite": "^5.0.12", + "vite-plugin-node-polyfills": "^0.21.0", "vite-plugin-pwa": "^0.17.4", "vite-plugin-svgr": "^4.2.0", "workbox-window": "^7.0.0" diff --git a/apps/front/src/components/App/AnimationContainer.tsx b/apps/front/src/components/App/AnimationContainer.tsx index 85a31395..7446213e 100644 --- a/apps/front/src/components/App/AnimationContainer.tsx +++ b/apps/front/src/components/App/AnimationContainer.tsx @@ -1,5 +1,4 @@ import { AnimatePresence, m, MotionStyle } from 'framer-motion'; -import React from 'react'; interface AnimationContainerProps { children: React.ReactNode; diff --git a/apps/front/src/components/App/AnimationLayout.tsx b/apps/front/src/components/App/AnimationLayout.tsx index 7144d591..822a78cf 100644 --- a/apps/front/src/components/App/AnimationLayout.tsx +++ b/apps/front/src/components/App/AnimationLayout.tsx @@ -1,5 +1,4 @@ import { m } from 'framer-motion'; -import React from 'react'; import { useLocation } from 'react-router-dom'; const pageVariants = { diff --git a/apps/front/src/components/App/DashboardLayout.tsx b/apps/front/src/components/App/DashboardLayout.tsx index a9a9695e..003940b0 100644 --- a/apps/front/src/components/App/DashboardLayout.tsx +++ b/apps/front/src/components/App/DashboardLayout.tsx @@ -1,6 +1,5 @@ import Container from '@mui/material/Container'; import Paper from '@mui/material/Paper'; -import React from 'react'; import { Outlet } from 'react-router-dom'; import AppBar from '../AppBar/AppBar'; diff --git a/apps/front/src/components/AppBar/AccountMenu.tsx b/apps/front/src/components/AppBar/AccountMenu.tsx index f21e45a4..42036dbb 100644 --- a/apps/front/src/components/AppBar/AccountMenu.tsx +++ b/apps/front/src/components/AppBar/AccountMenu.tsx @@ -7,7 +7,6 @@ import Divider from '@mui/material/Divider'; import ListItemIcon from '@mui/material/ListItemIcon'; import MenuItem from '@mui/material/MenuItem'; -import React from 'react'; import { useTranslation } from 'react-i18next'; import { Link } from 'react-router-dom'; diff --git a/apps/front/src/components/AppBar/AppBar.tsx b/apps/front/src/components/AppBar/AppBar.tsx index 4c2ac9a4..b33d5a3c 100644 --- a/apps/front/src/components/AppBar/AppBar.tsx +++ b/apps/front/src/components/AppBar/AppBar.tsx @@ -13,8 +13,6 @@ import Typography from '@mui/material/Typography'; import { useTheme } from '@mui/material/styles'; -import React from 'react'; - import { useTranslation } from 'react-i18next'; import { Link } from 'react-router-dom'; diff --git a/apps/front/src/components/Charts/Pie.tsx b/apps/front/src/components/Charts/Pie.tsx index f9b48bc8..8482358a 100644 --- a/apps/front/src/components/Charts/Pie.tsx +++ b/apps/front/src/components/Charts/Pie.tsx @@ -1,4 +1,4 @@ -import React, { useState } from 'react'; +import { useState } from 'react'; import { localPoint } from '@visx/event'; import { Group } from '@visx/group'; diff --git a/apps/front/src/components/Countdown/Countdown.tsx b/apps/front/src/components/Countdown/Countdown.tsx index a0e32b42..73f6d790 100644 --- a/apps/front/src/components/Countdown/Countdown.tsx +++ b/apps/front/src/components/Countdown/Countdown.tsx @@ -1,4 +1,4 @@ -import React, { useEffect } from 'react'; +import { useEffect } from 'react'; interface CountdownProps { start: boolean; diff --git a/apps/front/src/components/Loader/Loader.tsx b/apps/front/src/components/Loader/Loader.tsx index e4823907..8060b7ce 100644 --- a/apps/front/src/components/Loader/Loader.tsx +++ b/apps/front/src/components/Loader/Loader.tsx @@ -1,6 +1,5 @@ import { useTheme } from '@mui/material/styles'; import { m, Transition } from 'framer-motion'; -import React from 'react'; const transition: Transition = { duration: 4, diff --git a/apps/front/src/components/Loader/LoaderLayout.tsx b/apps/front/src/components/Loader/LoaderLayout.tsx index 78f5a4e9..4fef20af 100644 --- a/apps/front/src/components/Loader/LoaderLayout.tsx +++ b/apps/front/src/components/Loader/LoaderLayout.tsx @@ -1,5 +1,4 @@ import Box from '@mui/material/Box'; -import React from 'react'; import FaviconLoader from './Loader'; diff --git a/apps/front/src/components/Loader/LoaderSuspense.tsx b/apps/front/src/components/Loader/LoaderSuspense.tsx index ec3ba0e0..0b688c26 100644 --- a/apps/front/src/components/Loader/LoaderSuspense.tsx +++ b/apps/front/src/components/Loader/LoaderSuspense.tsx @@ -1,4 +1,4 @@ -import React, { useEffect, useState } from 'react'; +import { useEffect, useState } from 'react'; import AnimationLayout from '../App/AnimationLayout'; import LoaderLayout from './LoaderLayout'; diff --git a/apps/front/src/components/Map/LocationMarker.tsx b/apps/front/src/components/Map/LocationMarker.tsx index 1c4b3466..bc47da50 100644 --- a/apps/front/src/components/Map/LocationMarker.tsx +++ b/apps/front/src/components/Map/LocationMarker.tsx @@ -1,6 +1,7 @@ -import React, { useEffect, useState } from 'react'; +import { useEffect, useState } from 'react'; import { Marker, Popup, useMap } from 'react-leaflet'; +import { LocationEvent } from 'leaflet'; import { DEFAULT_COORDS } from '../../utils/constants'; export default function LocationMarker() { @@ -8,7 +9,7 @@ export default function LocationMarker() { const map = useMap(); useEffect(() => { - map.locate().on('locationfound', (e) => { + map.locate().on('locationfound', (e: LocationEvent) => { setPosition([e.latlng.lat, e.latlng.lng]); map.flyTo(e.latlng, map.getZoom()); }); diff --git a/apps/front/src/components/Map/Map.tsx b/apps/front/src/components/Map/Map.tsx index ec9e4c72..de26218f 100644 --- a/apps/front/src/components/Map/Map.tsx +++ b/apps/front/src/components/Map/Map.tsx @@ -1,4 +1,3 @@ -import React from 'react'; import { MapContainer, Marker as MapMarker, Popup, TileLayer } from 'react-leaflet'; import 'leaflet/dist/leaflet.css'; @@ -16,7 +15,7 @@ interface MapProps { onNewMarker: (latitude: number, longitude: number) => void; } -export default function Map({ markers, onNewMarker }: MapProps) { +export default function CustomMap({ markers, onNewMarker }: MapProps) { const theme = useTheme(); return ( @@ -39,6 +38,6 @@ export default function Map({ markers, onNewMarker }: MapProps) { ); } -Map.defaultProps = { +CustomMap.defaultProps = { markers: [], }; diff --git a/apps/front/src/components/Map/MapEvents.tsx b/apps/front/src/components/Map/MapEvents.tsx index b9be49fa..f2f4f7f5 100644 --- a/apps/front/src/components/Map/MapEvents.tsx +++ b/apps/front/src/components/Map/MapEvents.tsx @@ -1,5 +1,6 @@ import { useMapEvents } from 'react-leaflet'; +import { LeafletMouseEvent } from 'leaflet'; import { round } from '../../utils/number'; interface MapEventsProps { @@ -8,7 +9,7 @@ interface MapEventsProps { export default function MapEvents({ onClick }: MapEventsProps) { useMapEvents({ - click: (e) => { + click: (e: LeafletMouseEvent) => { onClick(round(e.latlng.lat, 5), round(e.latlng.lng, 5)); }, }); diff --git a/apps/front/src/components/Menu/Menu.tsx b/apps/front/src/components/Menu/Menu.tsx index 4035b575..84c28298 100644 --- a/apps/front/src/components/Menu/Menu.tsx +++ b/apps/front/src/components/Menu/Menu.tsx @@ -4,7 +4,7 @@ import MuiMenu from '@mui/material/Menu'; import { SxProps, Theme } from '@mui/material/styles'; import Tooltip from '@mui/material/Tooltip'; -import React, { useState } from 'react'; +import { useState } from 'react'; interface MenuProps { id: string; diff --git a/apps/front/src/components/Modal/Confirm.tsx b/apps/front/src/components/Modal/Confirm.tsx index b331182f..b95d3200 100644 --- a/apps/front/src/components/Modal/Confirm.tsx +++ b/apps/front/src/components/Modal/Confirm.tsx @@ -1,5 +1,3 @@ -import React from 'react'; - import Button from '@mui/material/Button'; import Dialog from '@mui/material/Dialog'; import DialogActions from '@mui/material/DialogActions'; diff --git a/apps/front/src/components/Snackbar/Snackbar.tsx b/apps/front/src/components/Snackbar/Snackbar.tsx index bc31feaf..91b7b01b 100644 --- a/apps/front/src/components/Snackbar/Snackbar.tsx +++ b/apps/front/src/components/Snackbar/Snackbar.tsx @@ -1,24 +1,21 @@ -import React from 'react'; - import Alert from '@mui/material/Alert'; import Snackbar from '@mui/material/Snackbar'; import { CustomContentProps, SnackbarContent } from 'notistack'; +import { forwardRef } from 'react'; -const defaultSnackbar = React.forwardRef((props, ref) => { +const defaultSnackbar = forwardRef((props, ref) => { const { id, message } = props; return ( - // eslint-disable-next-line react/jsx-props-no-spreading ); }); -const successSnackbar = React.forwardRef((props, ref) => { +const successSnackbar = forwardRef((props, ref) => { const { id, message } = props; return ( - // eslint-disable-next-line react/jsx-props-no-spreading @@ -29,10 +26,9 @@ const successSnackbar = React.forwardRef((pr ); }); -const errorSnackbar = React.forwardRef((props, ref) => { +const errorSnackbar = forwardRef((props, ref) => { const { id, message } = props; return ( - // eslint-disable-next-line react/jsx-props-no-spreading @@ -43,10 +39,9 @@ const errorSnackbar = React.forwardRef((prop ); }); -const warningSnackbar = React.forwardRef((props, ref) => { +const warningSnackbar = forwardRef((props, ref) => { const { id, message } = props; return ( - // eslint-disable-next-line react/jsx-props-no-spreading @@ -57,10 +52,9 @@ const warningSnackbar = React.forwardRef((pr ); }); -const infoSnackbar = React.forwardRef((props, ref) => { +const infoSnackbar = forwardRef((props, ref) => { const { id, message } = props; return ( - // eslint-disable-next-line react/jsx-props-no-spreading diff --git a/apps/front/src/main.tsx b/apps/front/src/main.tsx index a6042bb4..0cab59a8 100644 --- a/apps/front/src/main.tsx +++ b/apps/front/src/main.tsx @@ -3,7 +3,7 @@ import CssBaseline from '@mui/material/CssBaseline'; import { ThemeProvider } from '@mui/material/styles'; import { QueryClient, QueryClientProvider } from '@tanstack/react-query'; import { LazyMotion, domAnimation } from 'framer-motion'; -import React from 'react'; +import { StrictMode } from 'react'; import { createRoot } from 'react-dom/client'; import { RouterProvider } from 'react-router-dom'; import { registerSW } from 'virtual:pwa-register'; @@ -29,7 +29,7 @@ if (rootContainer !== null) { const root = createRoot(rootContainer); root.render( - + @@ -40,7 +40,7 @@ if (rootContainer !== null) { - + , ); registerSW(); diff --git a/apps/front/src/routes/Dashboard/Dashboard.tsx b/apps/front/src/routes/Dashboard/Dashboard.tsx index c929f79e..db4a723b 100644 --- a/apps/front/src/routes/Dashboard/Dashboard.tsx +++ b/apps/front/src/routes/Dashboard/Dashboard.tsx @@ -1,5 +1,3 @@ -import React from 'react'; - import DashboardLayout from '../../components/App/DashboardLayout'; export default function Dashboard() { diff --git a/apps/front/src/routes/Dashboard/Devices.tsx b/apps/front/src/routes/Dashboard/Devices.tsx index 2f5e70b2..7914e176 100644 --- a/apps/front/src/routes/Dashboard/Devices.tsx +++ b/apps/front/src/routes/Dashboard/Devices.tsx @@ -1,5 +1,3 @@ -import React from 'react'; - export default function Devices() { return
Devices
; } diff --git a/apps/front/src/routes/Dashboard/Satellites/Details.tsx b/apps/front/src/routes/Dashboard/Satellites/Details.tsx index 512ecb98..2c5cffdb 100644 --- a/apps/front/src/routes/Dashboard/Satellites/Details.tsx +++ b/apps/front/src/routes/Dashboard/Satellites/Details.tsx @@ -1,4 +1,4 @@ -import React, { useCallback, useEffect, useState } from 'react'; +import { useCallback, useEffect, useState } from 'react'; import { useParams } from 'react-router-dom'; import FilterListOutlinedIcon from '@mui/icons-material/FilterListOutlined'; diff --git a/apps/front/src/routes/Dashboard/Satellites/Plugins/Install.tsx b/apps/front/src/routes/Dashboard/Satellites/Plugins/Install.tsx index 4eda71e5..10d26a3a 100644 --- a/apps/front/src/routes/Dashboard/Satellites/Plugins/Install.tsx +++ b/apps/front/src/routes/Dashboard/Satellites/Plugins/Install.tsx @@ -1,4 +1,4 @@ -import React, { useCallback, useEffect, useMemo, useState } from 'react'; +import { useCallback, useEffect, useMemo, useState } from 'react'; import { useNavigate, useParams } from 'react-router-dom'; import ArrowBackIosNewOutlinedIcon from '@mui/icons-material/ArrowBackIosNewOutlined'; @@ -56,7 +56,7 @@ export default function Install() { return { id: varId, key, value }; } return variable; - }) + }), ); }; @@ -86,7 +86,7 @@ export default function Install() { }) .catch((_err) => setRepoExisting(2)); }, 500), - [] + [], ); const getIcon = () => { diff --git a/apps/front/src/routes/Dashboard/Satellites/Plugins/PluginList.tsx b/apps/front/src/routes/Dashboard/Satellites/Plugins/PluginList.tsx index ee3f5b5f..f641242d 100644 --- a/apps/front/src/routes/Dashboard/Satellites/Plugins/PluginList.tsx +++ b/apps/front/src/routes/Dashboard/Satellites/Plugins/PluginList.tsx @@ -1,4 +1,4 @@ -import React, { useCallback } from 'react'; +import { useCallback } from 'react'; import DeleteOutlineOutlinedIcon from '@mui/icons-material/DeleteOutlineOutlined'; import MoreVertOutlinedIcon from '@mui/icons-material/MoreVertOutlined'; @@ -46,7 +46,7 @@ export default function PluginList({ plugins, onRemovePlugin }: { plugins: Plugi NiceModal.show(ConfirmDialog, { title: t('dashboard.satellites.areYouSure'), content: `${t('dashboard.satellites.deletePluginMessage')} ${name}.`, - onClose: async (confirm) => { + onClose: async (confirm: boolean) => { if (confirm) { uninstallPlugin .mutateAsync(id) diff --git a/apps/front/src/routes/Dashboard/Satellites/SatelliteCard.tsx b/apps/front/src/routes/Dashboard/Satellites/SatelliteCard.tsx index 1585c681..b5dfa092 100644 --- a/apps/front/src/routes/Dashboard/Satellites/SatelliteCard.tsx +++ b/apps/front/src/routes/Dashboard/Satellites/SatelliteCard.tsx @@ -1,4 +1,3 @@ -import React from 'react'; import { useNavigate } from 'react-router-dom'; import AddCircleOutlineOutlinedIcon from '@mui/icons-material/AddCircleOutlineOutlined'; diff --git a/apps/front/src/routes/Dashboard/Satellites/Satellites.tsx b/apps/front/src/routes/Dashboard/Satellites/Satellites.tsx index 07400c63..ab7940bb 100644 --- a/apps/front/src/routes/Dashboard/Satellites/Satellites.tsx +++ b/apps/front/src/routes/Dashboard/Satellites/Satellites.tsx @@ -1,5 +1,3 @@ -import React from 'react'; - import { Navigate, useLocation } from 'react-router-dom'; import LoaderSuspense from '../../../components/Loader/LoaderSuspense'; @@ -10,14 +8,14 @@ export default function Satellites() { const location = useLocation(); const { isLoading, isSuccess, data } = useGetSatellites(); - if (!isSuccess) { + if (!isSuccess || data === undefined || data[0] === undefined) { return null; } return ( <> - {' '} + ); diff --git a/apps/front/src/routes/Dashboard/Satellites/States.tsx b/apps/front/src/routes/Dashboard/Satellites/States.tsx index 725884f1..a670aacc 100644 --- a/apps/front/src/routes/Dashboard/Satellites/States.tsx +++ b/apps/front/src/routes/Dashboard/Satellites/States.tsx @@ -1,5 +1,3 @@ -import React from 'react'; - import Chip from '@mui/material/Chip'; import { AvailableState } from '@friday-ai/shared'; diff --git a/apps/front/src/routes/Dashboard/Settings/House/House.tsx b/apps/front/src/routes/Dashboard/Settings/House/House.tsx index c403722f..1fe2f09e 100644 --- a/apps/front/src/routes/Dashboard/Settings/House/House.tsx +++ b/apps/front/src/routes/Dashboard/Settings/House/House.tsx @@ -1,4 +1,4 @@ -import React, { useEffect, useState } from 'react'; +import { useEffect, useState } from 'react'; import AddCircleOutlineOutlinedIcon from '@mui/icons-material/AddCircleOutlineOutlined'; import { Divider, IconButton, Stack, Tooltip, Typography } from '@mui/material'; diff --git a/apps/front/src/routes/Dashboard/Settings/House/HouseCard.tsx b/apps/front/src/routes/Dashboard/Settings/House/HouseCard.tsx index 0c323534..da2f2f04 100644 --- a/apps/front/src/routes/Dashboard/Settings/House/HouseCard.tsx +++ b/apps/front/src/routes/Dashboard/Settings/House/HouseCard.tsx @@ -1,5 +1,3 @@ -import React from 'react'; - import DeleteOutlineOutlinedIcon from '@mui/icons-material/DeleteOutlineOutlined'; import EditNoteOutlinedIcon from '@mui/icons-material/EditNoteOutlined'; import GiteOutlinedIcon from '@mui/icons-material/GiteOutlined'; @@ -14,7 +12,7 @@ import useHouse from '../../../../services/api/useHouse'; interface HouseCardProps { house: HouseAttributes | HouseCreationAttributes; selected: boolean; - selectHouse: (id: string) => void; + selectHouse: (_id: string) => void; } export default function HouseCard({ house, selected, selectHouse }: HouseCardProps) { @@ -26,7 +24,7 @@ export default function HouseCard({ house, selected, selectHouse }: HouseCardPro NiceModal.show(Confirm, { title: t('settings.house.areYouSure'), content: `${t('settings.house.deleteMessage')} ${house.name}.`, - onClose: async (confirm) => { + onClose: async (confirm: boolean) => { if (confirm) { await deleteHouse.mutateAsync(house.id); } diff --git a/apps/front/src/routes/Dashboard/Settings/House/HouseDetails.tsx b/apps/front/src/routes/Dashboard/Settings/House/HouseDetails.tsx index 7c8e9e2c..c9bda72d 100644 --- a/apps/front/src/routes/Dashboard/Settings/House/HouseDetails.tsx +++ b/apps/front/src/routes/Dashboard/Settings/House/HouseDetails.tsx @@ -1,4 +1,4 @@ -import React, { useEffect, useState } from 'react'; +import { useEffect, useState } from 'react'; import AddCircleOutlineIcon from '@mui/icons-material/AddCircleOutline'; import SaveOutlinedIcon from '@mui/icons-material/SaveOutlined'; @@ -8,7 +8,7 @@ import { useTranslation } from 'react-i18next'; import { HouseAttributes, HouseCreationAttributes } from '@friday-ai/shared'; import { enqueueSnackbar } from 'notistack'; -import Map from '../../../../components/Map/Map'; +import CustomMap from '../../../../components/Map/Map'; import useHouse from '../../../../services/api/useHouse'; import useRoom from '../../../../services/api/useRoom'; @@ -149,7 +149,7 @@ export default function HouseDetails({ house, selectHouse }: HouseDetailsProps) }} /> - { setHouseCoordinates([latitude, longitude]); diff --git a/apps/front/src/routes/Dashboard/Settings/Session/Session.tsx b/apps/front/src/routes/Dashboard/Settings/Session/Session.tsx index 01717668..f4e5f9f4 100644 --- a/apps/front/src/routes/Dashboard/Settings/Session/Session.tsx +++ b/apps/front/src/routes/Dashboard/Settings/Session/Session.tsx @@ -1,5 +1,3 @@ -import React from 'react'; - import { Box, List, Paper, Stack, Typography } from '@mui/material'; import { useTranslation } from 'react-i18next'; diff --git a/apps/front/src/routes/Dashboard/Settings/Session/SessionItem.tsx b/apps/front/src/routes/Dashboard/Settings/Session/SessionItem.tsx index 4ef64089..b2ce89af 100644 --- a/apps/front/src/routes/Dashboard/Settings/Session/SessionItem.tsx +++ b/apps/front/src/routes/Dashboard/Settings/Session/SessionItem.tsx @@ -1,4 +1,3 @@ -import React from 'react'; import uaParser from 'useragent-parser-js'; import DeleteIcon from '@mui/icons-material/Delete'; diff --git a/apps/front/src/routes/Dashboard/Settings/Settings.tsx b/apps/front/src/routes/Dashboard/Settings/Settings.tsx index 9245ae74..9683d841 100644 --- a/apps/front/src/routes/Dashboard/Settings/Settings.tsx +++ b/apps/front/src/routes/Dashboard/Settings/Settings.tsx @@ -1,5 +1,3 @@ -import React from 'react'; - import AccountCircleIcon from '@mui/icons-material/AccountCircle'; import MapsHomeWorkIcon from '@mui/icons-material/MapsHomeWork'; import PowerSettingsNewIcon from '@mui/icons-material/PowerSettingsNew'; diff --git a/apps/front/src/routes/Dashboard/Settings/System/System.tsx b/apps/front/src/routes/Dashboard/Settings/System/System.tsx index 4b92078e..36c63c31 100644 --- a/apps/front/src/routes/Dashboard/Settings/System/System.tsx +++ b/apps/front/src/routes/Dashboard/Settings/System/System.tsx @@ -1,4 +1,4 @@ -import React, { useState } from 'react'; +import { useState } from 'react'; import { Box, Card, CardContent, Chip, FormControl, InputLabel, MenuItem, Select, Stack, Typography } from '@mui/material'; import { useTranslation } from 'react-i18next'; diff --git a/apps/front/src/routes/Dashboard/Settings/User/User.tsx b/apps/front/src/routes/Dashboard/Settings/User/User.tsx index 82eee14f..aa7c87c9 100644 --- a/apps/front/src/routes/Dashboard/Settings/User/User.tsx +++ b/apps/front/src/routes/Dashboard/Settings/User/User.tsx @@ -1,4 +1,4 @@ -import React, { useEffect, useState } from 'react'; +import { useEffect, useState } from 'react'; import AddCircleOutlineOutlinedIcon from '@mui/icons-material/AddCircleOutlineOutlined'; import { Divider, IconButton, Stack, Tooltip, Typography } from '@mui/material'; diff --git a/apps/front/src/routes/Dashboard/Settings/User/UserCard.tsx b/apps/front/src/routes/Dashboard/Settings/User/UserCard.tsx index 24c38518..dcfd972e 100644 --- a/apps/front/src/routes/Dashboard/Settings/User/UserCard.tsx +++ b/apps/front/src/routes/Dashboard/Settings/User/UserCard.tsx @@ -1,5 +1,3 @@ -import React from 'react'; - import DeleteOutlineOutlinedIcon from '@mui/icons-material/DeleteOutlineOutlined'; import EditNoteOutlinedIcon from '@mui/icons-material/EditNoteOutlined'; import PersonOutlineOutlinedIcon from '@mui/icons-material/PersonOutlineOutlined'; @@ -26,7 +24,7 @@ export default function UserCard({ user, selected, selectUser }: UserCardProps) NiceModal.show(Confirm, { title: t('settings.user.areYouSure'), content: `${t('settings.user.deleteMessage')} ${user.userName}.`, - onClose: async (confirm) => { + onClose: async (confirm: boolean) => { if (confirm) { await deleteUser.mutateAsync(user.id); } diff --git a/apps/front/src/routes/Dashboard/Settings/User/UserDetails.tsx b/apps/front/src/routes/Dashboard/Settings/User/UserDetails.tsx index 3d92a82a..756ac7db 100644 --- a/apps/front/src/routes/Dashboard/Settings/User/UserDetails.tsx +++ b/apps/front/src/routes/Dashboard/Settings/User/UserDetails.tsx @@ -1,4 +1,4 @@ -import React, { useEffect, useState } from 'react'; +import { useEffect, useState } from 'react'; import PersonOutlineOutlinedIcon from '@mui/icons-material/PersonOutlineOutlined'; import SaveOutlinedIcon from '@mui/icons-material/SaveOutlined'; diff --git a/apps/front/src/routes/Errors/ErrorBoundary.tsx b/apps/front/src/routes/Errors/ErrorBoundary.tsx index fc827ae1..be93fbe4 100644 --- a/apps/front/src/routes/Errors/ErrorBoundary.tsx +++ b/apps/front/src/routes/Errors/ErrorBoundary.tsx @@ -1,5 +1,3 @@ -import React from 'react'; - import Box from '@mui/material/Box'; import Typography from '@mui/material/Typography'; import { useTheme } from '@mui/material/styles'; diff --git a/apps/front/src/routes/Errors/NoData.tsx b/apps/front/src/routes/Errors/NoData.tsx index 0741ce67..14aa0551 100644 --- a/apps/front/src/routes/Errors/NoData.tsx +++ b/apps/front/src/routes/Errors/NoData.tsx @@ -3,8 +3,6 @@ import Box from '@mui/material/Box'; import { useTheme } from '@mui/material/styles'; -import React from 'react'; - import { ReactComponent as NoFound } from '../../assets/svg/no_data.svg'; export default function NoData({ title, subtitle }: { title: string; subtitle: string }) { diff --git a/apps/front/src/routes/Errors/NotFound.tsx b/apps/front/src/routes/Errors/NotFound.tsx index 437aed07..fbdc3f11 100644 --- a/apps/front/src/routes/Errors/NotFound.tsx +++ b/apps/front/src/routes/Errors/NotFound.tsx @@ -4,7 +4,6 @@ import Link from '@mui/material/Link'; import { useTheme } from '@mui/material/styles'; -import React from 'react'; import { useTranslation } from 'react-i18next'; import { Link as RouterLink } from 'react-router-dom'; diff --git a/apps/front/src/routes/Errors/ServerDown.tsx b/apps/front/src/routes/Errors/ServerDown.tsx index 2b7e3b7e..5f39fffb 100644 --- a/apps/front/src/routes/Errors/ServerDown.tsx +++ b/apps/front/src/routes/Errors/ServerDown.tsx @@ -3,7 +3,6 @@ import Typography from '@mui/material/Typography'; import { useTheme } from '@mui/material/styles'; -import React from 'react'; import { useTranslation } from 'react-i18next'; import { ReactComponent as ServerError } from '../../assets/svg/server_error.svg'; diff --git a/apps/front/src/routes/Login/Login.tsx b/apps/front/src/routes/Login/Login.tsx index d3d33b8f..134e1c28 100644 --- a/apps/front/src/routes/Login/Login.tsx +++ b/apps/front/src/routes/Login/Login.tsx @@ -14,7 +14,7 @@ import Typography from '@mui/material/Typography'; import { useTheme } from '@mui/material/styles'; -import React, { useState } from 'react'; +import { useState } from 'react'; import { useTranslation } from 'react-i18next'; import { useNavigate } from 'react-router-dom'; @@ -42,7 +42,7 @@ export default function Login() { if (res) { navigate('/dashboard', { replace: true }); } - } catch (err) { + } catch (err: any) { if (err.response.status === 404) { setError(1); } else if (err.response.status === 403) { diff --git a/apps/front/src/routes/Root.tsx b/apps/front/src/routes/Root.tsx index 139a4c9d..1c013840 100644 --- a/apps/front/src/routes/Root.tsx +++ b/apps/front/src/routes/Root.tsx @@ -1,4 +1,4 @@ -import React, { useEffect, useState } from 'react'; +import { useEffect, useState } from 'react'; import { Outlet, useLocation, useNavigate } from 'react-router-dom'; import { SnackbarProvider } from 'notistack'; diff --git a/apps/front/src/routes/Signup/Signup.tsx b/apps/front/src/routes/Signup/Signup.tsx index 3111902a..5e144e4a 100644 --- a/apps/front/src/routes/Signup/Signup.tsx +++ b/apps/front/src/routes/Signup/Signup.tsx @@ -6,7 +6,7 @@ import Stack from '@mui/material/Stack'; import Typography from '@mui/material/Typography'; import { useTheme } from '@mui/material/styles'; -import React, { useEffect, useState } from 'react'; +import { useEffect, useState } from 'react'; import { useTranslation } from 'react-i18next'; import { useNavigate } from 'react-router-dom'; diff --git a/apps/front/src/routes/Signup/Steps/Account.tsx b/apps/front/src/routes/Signup/Steps/Account.tsx index 23fa57e0..9a2d96b1 100644 --- a/apps/front/src/routes/Signup/Steps/Account.tsx +++ b/apps/front/src/routes/Signup/Steps/Account.tsx @@ -12,7 +12,7 @@ import Typography from '@mui/material/Typography'; import { useTheme } from '@mui/material/styles'; import { debounce } from '@mui/material/utils'; -import React, { useMemo, useState } from 'react'; +import { useMemo, useState } from 'react'; import { useTranslation } from 'react-i18next'; import { SignupProps } from '../Signup'; @@ -57,7 +57,7 @@ export default function Account({ activeStep, setActiveStep }: SignupProps) { setError(0); }, 500), - [] + [], ); const checkEmail = useMemo( @@ -79,7 +79,7 @@ export default function Account({ activeStep, setActiveStep }: SignupProps) { setError(0); }, 500), - [] + [], ); const checkPassword = useMemo( @@ -101,7 +101,7 @@ export default function Account({ activeStep, setActiveStep }: SignupProps) { setError(0); }, 500), - [] + [], ); const checkPasswordMatch = useMemo( @@ -117,7 +117,7 @@ export default function Account({ activeStep, setActiveStep }: SignupProps) { setError(0); setStepCompleted(true); }, 500), - [] + [], ); const sendUser = async () => { diff --git a/apps/front/src/routes/Signup/Steps/House.tsx b/apps/front/src/routes/Signup/Steps/House.tsx index 61b97330..83dfb2d2 100644 --- a/apps/front/src/routes/Signup/Steps/House.tsx +++ b/apps/front/src/routes/Signup/Steps/House.tsx @@ -11,10 +11,10 @@ import TextField from '@mui/material/TextField'; import Typography from '@mui/material/Typography'; import { useTheme } from '@mui/material/styles'; -import React, { useState } from 'react'; +import { useState } from 'react'; import { useTranslation } from 'react-i18next'; -import Map from '../../../components/Map/Map'; +import CustomMap from '../../../components/Map/Map'; import { SignupProps } from '../Signup'; @@ -92,7 +92,7 @@ export default function House({ activeStep, setActiveStep }: SignupProps) { - setHouseCoordinates([latitude, longitude])} /> diff --git a/apps/front/src/routes/Signup/Steps/Language.tsx b/apps/front/src/routes/Signup/Steps/Language.tsx index a801122e..7341478c 100644 --- a/apps/front/src/routes/Signup/Steps/Language.tsx +++ b/apps/front/src/routes/Signup/Steps/Language.tsx @@ -6,7 +6,7 @@ import ToggleButtonGroup from '@mui/material/ToggleButtonGroup'; import Typography from '@mui/material/Typography'; import { useTheme } from '@mui/material/styles'; -import React, { useCallback, useEffect, useState } from 'react'; +import { useCallback, useEffect, useState } from 'react'; import { useTranslation } from 'react-i18next'; import { SignupProps } from '../Signup'; @@ -23,7 +23,7 @@ export default function Language({ activeStep, setActiveStep }: SignupProps) { localStorage.setItem('i18nextLng', value || 'en'); i18n.changeLanguage(value || 'en'); }, - [i18n] + [i18n], ); // Set default language diff --git a/apps/front/src/routes/Signup/Steps/Time.tsx b/apps/front/src/routes/Signup/Steps/Time.tsx index 7f841a6a..8aa9243b 100644 --- a/apps/front/src/routes/Signup/Steps/Time.tsx +++ b/apps/front/src/routes/Signup/Steps/Time.tsx @@ -6,7 +6,7 @@ import ToggleButtonGroup from '@mui/material/ToggleButtonGroup'; import Typography from '@mui/material/Typography'; import { useTheme } from '@mui/material/styles'; -import React, { useEffect, useState } from 'react'; +import { useEffect, useState } from 'react'; import { useTranslation } from 'react-i18next'; import { VariableOwner } from '@friday-ai/shared'; diff --git a/apps/front/src/routes/Signup/Steps/Units.tsx b/apps/front/src/routes/Signup/Steps/Units.tsx index 5eb0c3bf..95ee3337 100644 --- a/apps/front/src/routes/Signup/Steps/Units.tsx +++ b/apps/front/src/routes/Signup/Steps/Units.tsx @@ -6,7 +6,7 @@ import ToggleButtonGroup from '@mui/material/ToggleButtonGroup'; import Typography from '@mui/material/Typography'; import { useTheme } from '@mui/material/styles'; -import React, { useEffect, useState } from 'react'; +import { useEffect, useState } from 'react'; import { useTranslation } from 'react-i18next'; import { VariableOwner } from '@friday-ai/shared'; diff --git a/apps/front/src/routes/router.tsx b/apps/front/src/routes/router.tsx index c908f68e..f3190b4e 100644 --- a/apps/front/src/routes/router.tsx +++ b/apps/front/src/routes/router.tsx @@ -1,5 +1,3 @@ -import React from 'react'; - import { Route, createBrowserRouter, createRoutesFromElements } from 'react-router-dom'; import Dashboard from './Dashboard/Dashboard'; @@ -43,8 +41,8 @@ const router: RemixRouter = createBrowserRouter( }> - - ) + , + ), ); export default router; diff --git a/apps/front/src/services/app/request.ts b/apps/front/src/services/app/request.ts index 6d16042c..fa385730 100644 --- a/apps/front/src/services/app/request.ts +++ b/apps/front/src/services/app/request.ts @@ -2,7 +2,7 @@ import axios from 'axios'; export type Methods = 'get' | 'post' | 'patch' | 'delete'; -const port = parseInt(import.meta.env.VITE_SERVER_PORT, 10); +const port = parseInt(import.meta.env.VITE_SERVER_PORT, 10) || 3000; const request = async (method: Methods, url: string, header: string, query = {}, body = {}) => { const { data }: { data: T } = await axios({ diff --git a/apps/front/src/services/app/useWebsocket.ts b/apps/front/src/services/app/useWebsocket.ts index 7c9b8756..3aea3b08 100644 --- a/apps/front/src/services/app/useWebsocket.ts +++ b/apps/front/src/services/app/useWebsocket.ts @@ -2,7 +2,7 @@ import { useCallback, useRef, useState } from 'react'; import { WebsocketMessageTypes, WebsocketPayload } from '@friday-ai/shared'; -const port = parseInt(import.meta.env.VITE_SERVER_PORT, 10); +const port = parseInt(import.meta.env.VITE_SERVER_PORT, 10) || 3000; type Listener = (payload: WebsocketPayload) => void; type Handlers = Record; @@ -29,7 +29,7 @@ const useWebsocket = () => { JSON.stringify({ type: WebsocketMessageTypes.AUTHENTICATION, data: { accessToken, userId }, - }) + }), ); } }; @@ -53,7 +53,7 @@ const useWebsocket = () => { } }; }, - [handlers] + [handlers], ); const on = useCallback( @@ -67,7 +67,7 @@ const useWebsocket = () => { newHandlers[event].push(callback); setHandlers(newHandlers); }, - [handlers, setHandlers] + [handlers, setHandlers], ); const off = useCallback( @@ -79,7 +79,7 @@ const useWebsocket = () => { setHandlers(newHandlers); } }, - [handlers, setHandlers] + [handlers, setHandlers], ); return { connect, on, off, send: ws.current?.send }; diff --git a/apps/front/src/utils/color.ts b/apps/front/src/utils/color.ts index af6e9850..1944c9b6 100644 --- a/apps/front/src/utils/color.ts +++ b/apps/front/src/utils/color.ts @@ -46,9 +46,9 @@ const colorToRGBA = (color: string, alpha: number): string => { // Check if the color is in RGBA format const rgbMatch = color.match(/^rgb\((\d+),\s*(\d+),\s*(\d+)\)$/i); if (rgbMatch) { - const red = parseInt(rgbMatch[1], 10); - const green = parseInt(rgbMatch[2], 10); - const blue = parseInt(rgbMatch[3], 10); + const red = parseInt(rgbMatch[1] || '', 10); + const green = parseInt(rgbMatch[2] || '', 10); + const blue = parseInt(rgbMatch[3] || '', 10); if (red >= 0 && red <= 255 && green >= 0 && green <= 255 && blue >= 0 && blue <= 255) { return `rgba(${red}, ${green}, ${blue}, ${alpha})`; @@ -58,9 +58,9 @@ const colorToRGBA = (color: string, alpha: number): string => { // Check if the color is in HEX format const hexMatch = color.match(/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i); if (hexMatch) { - const red = parseInt(hexMatch[1], 16); - const green = parseInt(hexMatch[2], 16); - const blue = parseInt(hexMatch[3], 16); + const red = parseInt(hexMatch[1] || '', 16); + const green = parseInt(hexMatch[2] || '', 16); + const blue = parseInt(hexMatch[3] || '', 16); if (!Number.isNaN(red) && !Number.isNaN(green) && !Number.isNaN(blue)) { return `rgba(${red}, ${green}, ${blue}, ${alpha})`; @@ -70,9 +70,9 @@ const colorToRGBA = (color: string, alpha: number): string => { // Check if the color is in HSL format const hslMatch = color.match(/^hsl\((\d+),\s*(\d+)%,\s*(\d+)%\)$/i); if (hslMatch) { - const hue = parseInt(hslMatch[1], 10); - const saturation = parseInt(hslMatch[2], 10); - const lightness = parseInt(hslMatch[3], 10); + const hue = parseInt(hslMatch[1] || '', 10); + const saturation = parseInt(hslMatch[2] || '', 10); + const lightness = parseInt(hslMatch[3] || '', 10); if (hue >= 0 && hue <= 360 && saturation >= 0 && saturation <= 100 && lightness >= 0 && lightness <= 100) { const converted = hslToRGB(hue, saturation, lightness); diff --git a/apps/front/src/utils/data.ts b/apps/front/src/utils/data.ts index 4e99b70b..8df7576e 100644 --- a/apps/front/src/utils/data.ts +++ b/apps/front/src/utils/data.ts @@ -46,7 +46,7 @@ const getPluginsStates = (plugins: PluginAttributes[], theme: Theme) => { const data: { key: string; label: string; value: number; color: string }[] = []; Object.keys(statesCount).forEach((key) => { - data.push({ key, label: labels[key], color: colors[key], value: statesCount[key] }); + data.push({ key, label: labels[key]!, color: colors[key]!, value: statesCount[key]! }); }); return data; diff --git a/apps/front/src/vite-env.d.ts b/apps/front/src/vite-env.d.ts index d8161248..b48ee309 100644 --- a/apps/front/src/vite-env.d.ts +++ b/apps/front/src/vite-env.d.ts @@ -1 +1,58 @@ /// + +declare module '*.svg' { + import React = require('react'); + export const ReactComponent: React.FC>; + const src: string; + export default src; +} + +declare module 'useragent-parser-js' { + const ua = { + isMobile: boolean, + isDesktop: boolean, + isTablet: boolean, + isiPad: boolean, + isiPod: boolean, + isiPhone: boolean, + isAndroid: boolean, + isBlackberry: boolean, + isOpera: boolean, + isIE: boolean, + isIECompatibilityMode: boolean, + isSafari: boolean, + isFirefox: boolean, + isWebkit: boolean, + isChrome: boolean, + isKonqueror: boolean, + isOmniWeb: boolean, + isSeaMonkey: boolean, + isFlock: boolean, + isAmaya: boolean, + isEpiphany: boolean, + isWindows: boolean, + isLinux: boolean, + isLinux64: boolean, + isMac: boolean, + isChromeOS: boolean, + isBada: boolean, + isSamsung: boolean, + isRaspberry: boolean, + isBot: boolean, + isCurl: boolean, + isAndroidTablet: boolean, + isWinJs: boolean, + isKindleFire: boolean, + isSilk: boolean, + silkAccelerated: boolean, + browser: string, + version: string, + os: string, + platform: string, + source: string, + }; + + export default { + parse: (userAgent: string) => ua, + }; +} diff --git a/apps/front/tsconfig.json b/apps/front/tsconfig.json index 3a70e814..d4f0364a 100644 --- a/apps/front/tsconfig.json +++ b/apps/front/tsconfig.json @@ -1,9 +1,8 @@ { - "extends": "../../packages/tools/typescript.config.json", + "extends": "@friday-ai/tools/typescript/react-library.json", "compilerOptions": { - "types": ["vite/client", "./node_modules/vite-plugin-pwa/client"], - "lib": ["DOM", "ES2022"], - "module": "es2022" + "types": ["vite/client", "vite-plugin-pwa/client"], + "outDir": "dist" }, "include": ["./src"], "exclude": ["./node_modules"] diff --git a/apps/front/vite.config.ts b/apps/front/vite.config.ts index f0039a32..81f9ce80 100644 --- a/apps/front/vite.config.ts +++ b/apps/front/vite.config.ts @@ -3,10 +3,10 @@ import { visualizer } from 'rollup-plugin-visualizer'; import { defineConfig, PluginOption } from 'vite'; import { VitePWA } from 'vite-plugin-pwa'; import svgr from 'vite-plugin-svgr'; +import { nodePolyfills } from 'vite-plugin-node-polyfills' export default defineConfig({ server: { - https: process.env.HTTPS === 'true', port: Number(process.env.PORT) || 3001, }, optimizeDeps: { @@ -24,6 +24,12 @@ export default defineConfig({ include: '**/*.svg', }), visualizer() as PluginOption, + nodePolyfills({ + exclude: [ + 'process', + ], + protocolImports: true, + }), VitePWA({ registerType: 'autoUpdate', strategies: 'generateSW', diff --git a/apps/server/.eslintrc.js b/apps/server/.eslintrc.js index c2e35565..8ed856f5 100644 --- a/apps/server/.eslintrc.js +++ b/apps/server/.eslintrc.js @@ -1,7 +1,11 @@ +const config = require('@friday-ai/tools/eslint/base'); + +/** @type {import("eslint").Linter.Config} */ module.exports = { - extends: ['../../packages/tools/eslint/eslint.config.server.js'], + ...config, + root: true, + parser: '@typescript-eslint/parser', parserOptions: { - tsconfigRootDir: __dirname, - project: ['./tsconfig.json'], + project: './tsconfig.json', }, }; diff --git a/apps/server/.gitignore b/apps/server/.gitignore deleted file mode 100644 index 41a950f9..00000000 --- a/apps/server/.gitignore +++ /dev/null @@ -1,64 +0,0 @@ -# Logs -logs -*.log -npm-debug.log* - -# Runtime data -pids -*.pid -*.seed -*.pid.lock - -# Directory for instrumented libs generated by jscoverage/JSCover -lib-cov - -# Coverage directory used by tools like istanbul -coverage - -# nyc test coverage -.nyc_output - -# junit test results -test-results.xml - -# Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files) -.grunt - -# node-waf configuration -.lock-wscript - -# Compiled binary addons (http://nodejs.org/api/addons.html) -build - -# Dependency directories -node_modules -jspm_packages - -# Optional npm cache directory -.npm - -# Optional eslint cache -.eslintcache - -# Optional REPL history -.node_repl_history - -# Output of 'npm pack' -*.tgz - -# Yarn Integrity file -.yarn-integrity - -# Database files -friday-test.db -friday-test.db-journal -friday-development.db -friday-development.db-journal -friday.db -friday.db-journal - -# Documentation files -docs - -#Coverage files -*.lcov diff --git a/apps/server/migrations/20200823170803-create-action.ts b/apps/server/migrations/20200823170803-create-action.ts index 94b76874..64ce47d6 100644 --- a/apps/server/migrations/20200823170803-create-action.ts +++ b/apps/server/migrations/20200823170803-create-action.ts @@ -1,7 +1,8 @@ import { QueryInterface } from 'sequelize'; import { DataType } from 'sequelize-typescript'; -module.exports = { +export default { + name: '20200823170803-create-action', up: async ({ context: queryInterface }: { context: QueryInterface }) => { await queryInterface.createTable('action', { id: { diff --git a/apps/server/migrations/20200823170940-create-device.ts b/apps/server/migrations/20200823170940-create-device.ts index 524d8f6f..a453de7f 100644 --- a/apps/server/migrations/20200823170940-create-device.ts +++ b/apps/server/migrations/20200823170940-create-device.ts @@ -1,7 +1,8 @@ import { QueryInterface } from 'sequelize'; import { DataType } from 'sequelize-typescript'; -module.exports = { +export default { + name: '20200823170940-create-device', up: async ({ context: queryInterface }: { context: QueryInterface }) => { await queryInterface.createTable('device', { id: { diff --git a/apps/server/migrations/20200823171020-create-house.ts b/apps/server/migrations/20200823171020-create-house.ts index 48243e3d..4be2e7a7 100644 --- a/apps/server/migrations/20200823171020-create-house.ts +++ b/apps/server/migrations/20200823171020-create-house.ts @@ -1,7 +1,8 @@ import { QueryInterface } from 'sequelize'; import { DataType } from 'sequelize-typescript'; -module.exports = { +export default { + name: '20200823171020-create-house', up: async ({ context: queryInterface }: { context: QueryInterface }) => { await queryInterface.createTable('house', { id: { diff --git a/apps/server/migrations/20200823171132-create-plugin.ts b/apps/server/migrations/20200823171132-create-plugin.ts index c7eb0bdf..b68d47f9 100644 --- a/apps/server/migrations/20200823171132-create-plugin.ts +++ b/apps/server/migrations/20200823171132-create-plugin.ts @@ -1,7 +1,8 @@ import { QueryInterface } from 'sequelize'; import { DataType } from 'sequelize-typescript'; -module.exports = { +export default { + name: '20200823171132-create-plugin', up: async ({ context: queryInterface }: { context: QueryInterface }) => { await queryInterface.createTable('plugin', { id: { @@ -16,7 +17,6 @@ module.exports = { type: DataType.STRING, }, name: { - unique: true, allowNull: false, type: DataType.STRING, }, @@ -32,12 +32,6 @@ module.exports = { allowNull: false, type: DataType.JSON, }, - unite: { - type: DataType.STRING, - }, - value: { - type: DataType.STRING, - }, satelliteId: { allowNull: false, type: DataType.UUID, diff --git a/apps/server/migrations/20200823171225-create-room.ts b/apps/server/migrations/20200823171225-create-room.ts index 2f789b73..69b429be 100644 --- a/apps/server/migrations/20200823171225-create-room.ts +++ b/apps/server/migrations/20200823171225-create-room.ts @@ -1,7 +1,8 @@ import { QueryInterface } from 'sequelize'; import { DataType } from 'sequelize-typescript'; -module.exports = { +export default { + name: '20200823171225-create-room', up: async ({ context: queryInterface }: { context: QueryInterface }) => { await queryInterface.createTable('room', { id: { diff --git a/apps/server/migrations/20200823171346-create-satellite.ts b/apps/server/migrations/20200823171346-create-satellite.ts index b1e272f1..6007fdb4 100644 --- a/apps/server/migrations/20200823171346-create-satellite.ts +++ b/apps/server/migrations/20200823171346-create-satellite.ts @@ -1,7 +1,8 @@ import { QueryInterface } from 'sequelize'; import { DataType } from 'sequelize-typescript'; -module.exports = { +export default { + name: '20200823171346-create-satellite', up: async ({ context: queryInterface }: { context: QueryInterface }) => { await queryInterface.createTable('satellite', { id: { diff --git a/apps/server/migrations/20200823171455-create-scene.ts b/apps/server/migrations/20200823171455-create-scene.ts index feb99fb4..70fc8413 100644 --- a/apps/server/migrations/20200823171455-create-scene.ts +++ b/apps/server/migrations/20200823171455-create-scene.ts @@ -1,7 +1,8 @@ import { QueryInterface } from 'sequelize'; import { DataType } from 'sequelize-typescript'; -module.exports = { +export default { + name: '20200823171455-create-scene', up: async ({ context: queryInterface }: { context: QueryInterface }) => { await queryInterface.createTable('scene', { id: { diff --git a/apps/server/migrations/20200823171612-create-script.ts b/apps/server/migrations/20200823171612-create-script.ts index 1134441d..29c5e21f 100644 --- a/apps/server/migrations/20200823171612-create-script.ts +++ b/apps/server/migrations/20200823171612-create-script.ts @@ -1,7 +1,8 @@ import { QueryInterface } from 'sequelize'; import { DataType } from 'sequelize-typescript'; -module.exports = { +export default { + name: '20200823171612-create-script', up: async ({ context: queryInterface }: { context: QueryInterface }) => { await queryInterface.createTable('script', { id: { diff --git a/apps/server/migrations/20200823171723-create-session.ts b/apps/server/migrations/20200823171723-create-session.ts index 4482e67f..f3751a6e 100644 --- a/apps/server/migrations/20200823171723-create-session.ts +++ b/apps/server/migrations/20200823171723-create-session.ts @@ -1,7 +1,8 @@ import { QueryInterface } from 'sequelize'; import { DataType } from 'sequelize-typescript'; -module.exports = { +export default { + name: '20200823171723-create-session', up: async ({ context: queryInterface }: { context: QueryInterface }) => { await queryInterface.createTable('session', { id: { diff --git a/apps/server/migrations/20200823171832-create-state.ts b/apps/server/migrations/20200823171832-create-state.ts index b1d35338..8b0fdb71 100644 --- a/apps/server/migrations/20200823171832-create-state.ts +++ b/apps/server/migrations/20200823171832-create-state.ts @@ -1,7 +1,8 @@ import { QueryInterface } from 'sequelize'; import { DataType } from 'sequelize-typescript'; -module.exports = { +export default { + name: '20200823171832-create-state', up: async ({ context: queryInterface }: { context: QueryInterface }) => { await queryInterface.createTable('state', { id: { diff --git a/apps/server/migrations/20200823171918-create-trigger.ts b/apps/server/migrations/20200823171918-create-trigger.ts index f2652972..9159cc82 100644 --- a/apps/server/migrations/20200823171918-create-trigger.ts +++ b/apps/server/migrations/20200823171918-create-trigger.ts @@ -1,7 +1,8 @@ import { QueryInterface } from 'sequelize'; import { DataType } from 'sequelize-typescript'; -module.exports = { +export default { + name: '20200823171918-create-trigger', up: async ({ context: queryInterface }: { context: QueryInterface }) => { await queryInterface.createTable('trigger', { id: { diff --git a/apps/server/migrations/20200823172042-create-user.ts b/apps/server/migrations/20200823172042-create-user.ts index f9d32acb..6d640805 100644 --- a/apps/server/migrations/20200823172042-create-user.ts +++ b/apps/server/migrations/20200823172042-create-user.ts @@ -1,7 +1,8 @@ import { QueryInterface } from 'sequelize'; import { DataType } from 'sequelize-typescript'; -module.exports = { +export default { + name: '20200823172042-create-user', up: async ({ context: queryInterface }: { context: QueryInterface }) => { await queryInterface.createTable('user', { id: { diff --git a/apps/server/migrations/20200823172203-create-variable.ts b/apps/server/migrations/20200823172203-create-variable.ts index 399cd5c1..8009bdc8 100644 --- a/apps/server/migrations/20200823172203-create-variable.ts +++ b/apps/server/migrations/20200823172203-create-variable.ts @@ -1,7 +1,8 @@ import { QueryInterface } from 'sequelize'; import { DataType } from 'sequelize-typescript'; -module.exports = { +export default { + name: '20200823172203-create-variable', up: async ({ context: queryInterface }: { context: QueryInterface }) => { await queryInterface.createTable('variable', { id: { diff --git a/apps/server/migrations/20220711073422-create-device-capability.ts b/apps/server/migrations/20220711073422-create-device-capability.ts index 13647c0e..be6ad1e5 100644 --- a/apps/server/migrations/20220711073422-create-device-capability.ts +++ b/apps/server/migrations/20220711073422-create-device-capability.ts @@ -1,7 +1,8 @@ import { QueryInterface } from 'sequelize'; import { DataType } from 'sequelize-typescript'; -module.exports = { +export default { + name: '20220711073422-create-device-capability', up: async ({ context: queryInterface }: { context: QueryInterface }) => { await queryInterface.createTable('device_capability', { id: { diff --git a/apps/server/migrations/20220711073435-create-device-capability-settings.ts b/apps/server/migrations/20220711073435-create-device-capability-settings.ts index ddfe07b6..a1f0f495 100644 --- a/apps/server/migrations/20220711073435-create-device-capability-settings.ts +++ b/apps/server/migrations/20220711073435-create-device-capability-settings.ts @@ -1,7 +1,8 @@ import { QueryInterface } from 'sequelize'; import { DataType } from 'sequelize-typescript'; -module.exports = { +export default { + name: '20220711073435-create-device-capability-settings', up: async ({ context: queryInterface }: { context: QueryInterface }) => { await queryInterface.createTable('device_capability_settings', { id: { diff --git a/apps/server/migrations/20220711073505-create-device-capability-state.ts b/apps/server/migrations/20220711073505-create-device-capability-state.ts index a3bf8ec5..cd2586bd 100644 --- a/apps/server/migrations/20220711073505-create-device-capability-state.ts +++ b/apps/server/migrations/20220711073505-create-device-capability-state.ts @@ -1,7 +1,8 @@ import { QueryInterface } from 'sequelize'; import { DataType } from 'sequelize-typescript'; -module.exports = { +export default { + name: '20220711073505-create-device-capability-state', up: async ({ context: queryInterface }: { context: QueryInterface }) => { await queryInterface.createTable('device_capability_state', { id: { diff --git a/apps/server/migrations/index.ts b/apps/server/migrations/index.ts new file mode 100644 index 00000000..ed63e34a --- /dev/null +++ b/apps/server/migrations/index.ts @@ -0,0 +1,37 @@ +import action1 from './20200823170803-create-action'; +import device1 from './20200823170940-create-device'; +import house1 from './20200823171020-create-house'; +import plugin1 from './20200823171132-create-plugin'; +import room1 from './20200823171225-create-room'; +import satellite1 from './20200823171346-create-satellite'; +import scene1 from './20200823171455-create-scene'; +import script1 from './20200823171612-create-script'; +import session1 from './20200823171723-create-session'; +import state1 from './20200823171832-create-state'; +import trigger1 from './20200823171918-create-trigger'; +import user1 from './20200823172042-create-user'; +import variable1 from './20200823172203-create-variable'; +import deviceCapability1 from './20220711073422-create-device-capability'; +import deviceCapabilitySettings1 from './20220711073435-create-device-capability-settings'; +import deviceCapabilityState1 from './20220711073505-create-device-capability-state'; + +const migrations = [ + action1, + device1, + house1, + plugin1, + room1, + satellite1, + scene1, + script1, + session1, + state1, + trigger1, + user1, + variable1, + deviceCapability1, + deviceCapabilitySettings1, + deviceCapabilityState1, +]; + +export default migrations; diff --git a/apps/server/package.json b/apps/server/package.json index f90190a3..81e868e3 100644 --- a/apps/server/package.json +++ b/apps/server/package.json @@ -2,14 +2,20 @@ "name": "friday-server", "version": "1.0.0", "description": "", - "main": "dist/src/server.js", + "license": "MIT", + "repository": { + "type": "git", + "url": "git+https://github.com/friday-ai/friday.git" + }, "scripts": { "start": "per-env", - "start:prod": "cross-env NODE_ENV=production SERVER_PORT=1443 node ./dist/src/server.js", - "start:dev": "cross-env NODE_ENV=development nodemon ./src/server.ts", - "build": "tsc -p .", - "test": "cross-env NODE_ENV=test MQTT_PORT=1884 mocha --recursive -r ts-node/register ./test/setup.ts ./test/**/*.test.ts -exit", - "test:junit": "cross-env NODE_ENV=test MQTT_PORT=1884 mocha --reporter ./test/utils/junit-spec-reporter.js --reporter-options mochaFile=./test-results.xml --recursive -r ts-node/register ./test/setup.ts ./test/**/*.test.ts -exit", + "start:prod": "cross-env NODE_ENV=production SERVER_PORT=1443 node ./dist/server.js", + "start:dev": "cross-env NODE_ENV=development tsx watch src/server.ts", + "build": "tsup", + "build:server": "tsup", + "test": "cross-env NODE_ENV=test MQTT_PORT=1884 mocha --recursive -r tsx ./test/setup.ts ./test/**/*.test.ts -exit", + "test:server": "cross-env NODE_ENV=test MQTT_PORT=1884 mocha --recursive -r tsx ./test/setup.ts ./test/**/*.test.ts -exit", + "test:junit": "cross-env NODE_ENV=test MQTT_PORT=1884 mocha --reporter ./test/utils/junit-spec-reporter.js --reporter-options mochaFile=./test-results.xml --recursive -r tsx ./test/setup.ts ./test/**/*.test.ts -exit", "coverage": "nyc pnpm test && nyc report --reporter=text-lcov > coverage.lcov", "coverage:junit": "nyc pnpm test:junit && nyc report --reporter=text-lcov > coverage.lcov", "lint": "eslint --ext .js,.jsx,.ts,.tsx ./", @@ -18,13 +24,7 @@ "generate-doc:core": "typedoc --out docs/core/ ./src/core/", "generate-doc:rest": "apidoc-markdown -i src/api/routes/ -o docs/rest/ -t gitbook" }, - "license": "MIT", - "repository": { - "type": "git", - "url": "git+https://github.com/friday-ai/friday.git" - }, - "prettier": "../../packages/tools/prettier.config.js", - "nodemonConfig": "../../packages/tools/nodemon.config.js", + "prettier": "@friday-ai/tools/configs/prettier.config.js", "nyc": { "exclude": [ "src/api/routes/router.ts", @@ -41,13 +41,9 @@ "@friday-ai/docker": "workspace:*", "@friday-ai/logger": "workspace:*", "@friday-ai/shared": "workspace:*", - "@types/bcrypt": "^5.0.2", "@types/bluebird": "^3.5.42", "@types/compression": "^1.7.5", - "@types/dockerode": "^3.3.23", "@types/express": "^4.17.21", - "@types/fs-extra": "^11.0.4", - "@types/glob": "^8.1.0", "@types/jsonwebtoken": "^9.0.5", "@types/node": "^20.10.7", "@types/node-schedule": "^2.1.5", @@ -55,20 +51,15 @@ "@types/umzug": "^2.3.7", "@types/uuid": "^9.0.7", "@types/ws": "^8.5.10", - "bcrypt": "^5.1.1", "bluebird": "^3.7.2", "compression": "^1.7.4", "cors": "^2.8.5", "cross-env": "^7.0.3", - "dockerode": "^4.0.2", "express": "^4.18.2", "express-rate-limit": "^7.1.5", - "fs-extra": "^11.2.0", - "glob": "^10.3.10", "helmet": "^7.1.0", "jsonwebtoken": "^9.0.2", "mqtt": "^5.3.4", - "mqtt-packet": "^9.0.0", "node-schedule": "^2.1.1", "reflect-metadata": "^0.2.1", "role-acl": "^4.5.4", @@ -86,6 +77,7 @@ "@types/chai-like": "^1.1.3", "@types/chai-things": "0.0.38", "@types/cors": "^2.8.17", + "@types/dockerode": "^3.3.24", "@types/mocha": "^10.0.6", "@types/sinon": "^17.0.2", "@types/supertest": "^6.0.2", @@ -96,6 +88,7 @@ "chai-as-promised": "^7.1.1", "chai-like": "^1.1.1", "chai-things": "^0.2.0", + "dockerode": "^4.0.2", "eslint": "^8.56.0", "eslint-config-airbnb-base-typescript-prettier": "^5.1.0", "eslint-import-resolver-typescript": "^3.6.1", @@ -103,12 +96,12 @@ "eslint-plugin-tsdoc": "^0.2.17", "mocha": "^10.2.0", "mocha-junit-reporter": "^2.2.1", - "nodemon": "^3.0.2", "nyc": "^15.1.0", "prettier": "^3.1.1", "sinon": "^17.0.1", "supertest": "^6.3.3", - "ts-node": "^10.9.2", + "tsup": "^8.0.2", + "tsx": "^4.7.1", "typedoc": "^0.25.6", "typedoc-plugin-external-module-map": "^2.0.1", "typedoc-plugin-markdown": "^3.17.1" diff --git a/apps/server/src/api/app.ts b/apps/server/src/api/app.ts index f0c2e3b1..729d7596 100644 --- a/apps/server/src/api/app.ts +++ b/apps/server/src/api/app.ts @@ -65,7 +65,7 @@ export default class Server { this.server = http.createServer(app); // initialize the WebSocket server instance - const wss = new WebSocket.Server({ server: this.server }); + const wss = new WebSocket.WebSocketServer({ server: this.server }); this.websocketServer = new WebsocketServer(wss, this.friday); // start WebSocket server diff --git a/apps/server/src/api/middlewares/aclMiddleware.ts b/apps/server/src/api/middlewares/aclMiddleware.ts index 81d6959b..9982ba24 100644 --- a/apps/server/src/api/middlewares/aclMiddleware.ts +++ b/apps/server/src/api/middlewares/aclMiddleware.ts @@ -1,7 +1,7 @@ import { NextFunction, Request, Response } from 'express'; import { AccessControl } from 'role-acl'; -import httpError, { Error403 } from '../../utils/httpError'; import grants from '../../config/acl'; +import httpError, { Error403 } from '../../utils/httpError'; const ac = new AccessControl(grants); diff --git a/apps/server/src/api/middlewares/errorMiddleware.ts b/apps/server/src/api/middlewares/errorMiddleware.ts index 714b3cc5..2c16eff3 100644 --- a/apps/server/src/api/middlewares/errorMiddleware.ts +++ b/apps/server/src/api/middlewares/errorMiddleware.ts @@ -1,7 +1,8 @@ import { NextFunction, Request, Response } from 'express'; import httpError from '../../utils/httpError'; +import { ErrorType } from '../../utils/interfaces'; export default (error: Error, _req: Request, res: Response, _next: NextFunction) => { - const responseError = httpError(error); + const responseError = httpError(error as ErrorType); res.status(responseError.status).send(responseError); }; diff --git a/apps/server/src/api/mqtt/handlers/index.ts b/apps/server/src/api/mqtt/handlers/index.ts new file mode 100644 index 00000000..74f19263 --- /dev/null +++ b/apps/server/src/api/mqtt/handlers/index.ts @@ -0,0 +1,28 @@ +import Friday from '../../../core/friday'; +import { KVArr } from '../../../utils/interfaces'; + +import DeviceDestroy from './device/destroy'; +import DeviceRegister from './device/register'; +import PluginsDiscoverme from './plugin/discoverme'; +import PluginsHeartbeat from './plugin/heartbeat'; +import PluginsInit from './plugin/init'; +import SatelliteDiscoverme from './satellite/discoverme'; +import SatelliteHeartbeat from './satellite/heartbeat'; +import SatelliteInit from './satellite/init'; +import StateSet from './state/set'; + +export type handlerFnType = (friday: Friday, payload: never) => Promise; + +const handlers: KVArr = { + 'device/destroy': DeviceDestroy, + 'device/register': DeviceRegister, + 'plugin/discorverme': PluginsDiscoverme, + 'plugin/heartbeat': PluginsHeartbeat, + 'plugin/init': PluginsInit, + 'satellite/discorverme': SatelliteDiscoverme, + 'satellite/heartbeat': SatelliteHeartbeat, + 'satellite/init': SatelliteInit, + 'state/set': StateSet, +}; + +export default handlers; diff --git a/apps/server/src/api/mqtt/index.ts b/apps/server/src/api/mqtt/index.ts index 81692f00..88df4499 100644 --- a/apps/server/src/api/mqtt/index.ts +++ b/apps/server/src/api/mqtt/index.ts @@ -1,15 +1,12 @@ -/* eslint-disable @typescript-eslint/no-var-requires */ -/* eslint-disable global-require,import/no-dynamic-require */ import logger from '@friday-ai/logger'; import { MqttOptions } from '@friday-ai/shared'; -import { glob as Glob } from 'glob'; import mqtt, { connect } from 'mqtt'; import { EventsType, TopicHeaderSub, TopicToSubscribe as Topics } from '../../config/constants'; import Friday from '../../core/friday'; import handleMessage from './mqtt.handleMessage'; import sendMessage from './mqtt.sendMessage'; -// const env = process.env.NODE_ENV || 'production'; +import MqttHandlers, { handlerFnType } from './handlers'; const defaultMqttOptions: MqttOptions = { port: 1883, @@ -26,18 +23,18 @@ export default class MqttServer { public friday: Friday; public MqttClient!: mqtt.MqttClient; public sendMessage = sendMessage; - public handlers: Record null> = {}; + public handlers: Record = {}; public handleMessage = handleMessage; public retryTimes = 0; + public retryInterval: NodeJS.Timeout | null = null; constructor(friday: Friday) { this.friday = friday; this.friday.event.on(EventsType.MQTT_PUBLISH, (event) => this.sendMessage(event)); this.friday.event.on(EventsType.MQTT_PUBLISH_ALL, (event) => this.sendMessage(event, { sendAll: true })); - Glob.sync('**/*.{js,ts}', { cwd: `${__dirname}/handlers/` }).forEach((filename) => { - const topic = filename.replace(/.js|.ts/gi, ''); - this.handlers[topic] = require(`./handlers/${filename}`).default; + Object.keys(MqttHandlers).forEach((topic) => { + this.handlers[topic] = MqttHandlers[topic]; }); } @@ -60,11 +57,17 @@ export default class MqttServer { this.MqttClient.on('message', (topic, message) => { this.handleMessage(topic, message.toString()); }); + + clearInterval(this.retryInterval!); + this.retryInterval = null; }); this.MqttClient.on('error', (_error) => { logger.warning('Error while connecting to MQTT, trying reconnection'); this.retryTimes += 1; + }); + + this.retryInterval = setInterval(() => { // TODO: Send warning to front if (this.retryTimes >= 5) { this.stop(); diff --git a/apps/server/src/api/mqtt/mqtt.handleMessage.ts b/apps/server/src/api/mqtt/mqtt.handleMessage.ts index 0720dcc8..0209a361 100644 --- a/apps/server/src/api/mqtt/mqtt.handleMessage.ts +++ b/apps/server/src/api/mqtt/mqtt.handleMessage.ts @@ -1,8 +1,8 @@ import logger from '@friday-ai/logger'; import { TopicHeaderSub, TopicToSubscribe as Topics } from '../../config/constants'; -import MqttServer from './index'; import error from '../../utils/decorators/error'; +import MqttServer from './index'; export default function handleMessage(this: MqttServer, topic: string, message: string) { try { @@ -10,7 +10,13 @@ export default function handleMessage(this: MqttServer, topic: string, message: if (Object.values(Topics).includes(finalTopic)) { logger.info(`Received message on topic ${topic} (${message})`); - this.handlers[finalTopic](this.friday, JSON.parse(message)); + + const handler = this.handlers[finalTopic]; + if (handler) { + handler(this.friday, JSON.parse(message) as never); + } else { + logger.info(`Topic ${topic} unknown`); + } } } catch (e) { throw error({ diff --git a/apps/server/src/api/routes/router.ts b/apps/server/src/api/routes/router.ts index 7e6c39c8..2e42a174 100644 --- a/apps/server/src/api/routes/router.ts +++ b/apps/server/src/api/routes/router.ts @@ -1,15 +1,14 @@ -/* eslint-disable @typescript-eslint/no-var-requires */ -/* eslint-disable import/no-dynamic-require */ -/* eslint-disable global-require */ -import { globSync } from 'glob'; +import { RequestHandler, Router } from 'express'; import 'reflect-metadata'; -import { Router } from 'express'; + +import Friday from '../../core/friday'; import { RouteDefinition } from '../../utils/decorators/route'; -import rateLimitMiddleware from '../middlewares/rateLimitMiddleware'; +import aclMiddleware from '../middlewares/aclMiddleware'; import asyncMiddleware from '../middlewares/asyncMiddleware'; import authMiddleware from '../middlewares/authMiddleware'; -import Friday from '../../core/friday'; -import aclMiddleware from '../middlewares/aclMiddleware'; +import rateLimitMiddleware from '../middlewares/rateLimitMiddleware'; + +import routersV1 from './v1/index'; const env = process.env.NODE_ENV || 'production'; @@ -24,12 +23,7 @@ const env = process.env.NODE_ENV || 'production'; export default function router(friday: Friday): Router { const routerObject = Router(); - const routers = globSync('**/*.{js,ts}', { cwd: `${__dirname}/` }) - .map((filename) => require(`./${filename}`).default) - .filter((routerClass) => routerClass !== undefined) - .filter((routerClass) => Reflect.hasOwnMetadata('prefix', routerClass)); - - routers.forEach((RouterClass) => { + routersV1.forEach((RouterClass) => { const instance = new RouterClass(friday); const prefix = Reflect.getMetadata('prefix', RouterClass); const routes = Reflect.getMetadata('routes', RouterClass); @@ -47,9 +41,12 @@ export default function router(friday: Friday): Router { if (route.rateLimit && env === 'production') { routerParams.push(rateLimitMiddleware); } + + const handler = instance[route.methodName as keyof typeof instance] as RequestHandler; + // add the controller at the end of the array // wrapped on async middleware - routerParams.push(asyncMiddleware(instance[route.methodName])); + routerParams.push(asyncMiddleware(handler)); routerObject[route.requestMethod](`/api${prefix}${route.path}`, ...routerParams); }); diff --git a/apps/server/src/api/routes/v1/action.ts b/apps/server/src/api/routes/v1/action.ts index 1ca6b8a3..34919273 100644 --- a/apps/server/src/api/routes/v1/action.ts +++ b/apps/server/src/api/routes/v1/action.ts @@ -1,5 +1,5 @@ import { Request, Response } from 'express'; -import { FridayRouter, Get, Patch, Post, Delete } from '../../../utils/decorators/route'; +import { Delete, FridayRouter, Get, Patch, Post } from '../../../utils/decorators/route'; import Friday from '../../../core/friday'; @@ -16,7 +16,7 @@ import Friday from '../../../core/friday'; */ @FridayRouter('/v1/action') export default class ActionRouter { - readonly friday: Friday; + private readonly friday: Friday; constructor(friday: Friday) { this.friday = friday; diff --git a/apps/server/src/api/routes/v1/capability.ts b/apps/server/src/api/routes/v1/capability.ts index 3a3eb3de..4eb0359f 100644 --- a/apps/server/src/api/routes/v1/capability.ts +++ b/apps/server/src/api/routes/v1/capability.ts @@ -8,7 +8,7 @@ import Friday from '../../../core/friday'; */ @FridayRouter('/v1/capability') export default class ActionRouter { - readonly friday: Friday; + private readonly friday: Friday; constructor(friday: Friday) { this.friday = friday; diff --git a/apps/server/src/api/routes/v1/device.ts b/apps/server/src/api/routes/v1/device.ts index 75aeb301..0db57cd4 100644 --- a/apps/server/src/api/routes/v1/device.ts +++ b/apps/server/src/api/routes/v1/device.ts @@ -16,7 +16,7 @@ import Friday from '../../../core/friday'; */ @FridayRouter('/v1/device') export default class DeviceRouter { - readonly friday: Friday; + private readonly friday: Friday; constructor(friday: Friday) { this.friday = friday; diff --git a/apps/server/src/api/routes/v1/house.ts b/apps/server/src/api/routes/v1/house.ts index 92ac886b..0dbaf33b 100644 --- a/apps/server/src/api/routes/v1/house.ts +++ b/apps/server/src/api/routes/v1/house.ts @@ -11,7 +11,7 @@ import Friday from '../../../core/friday'; */ @FridayRouter('/v1/house') export default class HouseRouter { - readonly friday: Friday; + private readonly friday: Friday; constructor(friday: Friday) { this.friday = friday; diff --git a/apps/server/src/api/routes/v1/index.ts b/apps/server/src/api/routes/v1/index.ts new file mode 100644 index 00000000..54164450 --- /dev/null +++ b/apps/server/src/api/routes/v1/index.ts @@ -0,0 +1,35 @@ +import ActionRouterV1 from './action'; +import CapabilityRouterV1 from './capability'; +import DeviceRouterV1 from './device'; +import HouseRouterV1 from './house'; +import PluginRouterV1 from './plugin'; +import RoomRouterV1 from './room'; +import SatelliteRouterV1 from './satellite'; +import SceneRouterV1 from './scene'; +import ScriptRouterV1 from './script'; +import SessionRouterV1 from './session'; +import StateRouterV1 from './state'; +import SystemRouterV1 from './system'; +import TriggerRouterV1 from './trigger'; +import UserRouterV1 from './user'; +import VariableRouterV1 from './variable'; + +const routers = [ + ActionRouterV1, + CapabilityRouterV1, + DeviceRouterV1, + HouseRouterV1, + PluginRouterV1, + RoomRouterV1, + SatelliteRouterV1, + SceneRouterV1, + ScriptRouterV1, + SessionRouterV1, + StateRouterV1, + SystemRouterV1, + TriggerRouterV1, + UserRouterV1, + VariableRouterV1, +]; + +export default routers; diff --git a/apps/server/src/api/routes/v1/plugin.ts b/apps/server/src/api/routes/v1/plugin.ts index 1326a430..3e92b87d 100644 --- a/apps/server/src/api/routes/v1/plugin.ts +++ b/apps/server/src/api/routes/v1/plugin.ts @@ -13,7 +13,7 @@ import { Delete, FridayRouter, Get, Patch, Post } from '../../../utils/decorator */ @FridayRouter('/v1/plugin') export default class PluginRouter { - readonly friday: Friday; + private readonly friday: Friday; constructor(friday: Friday) { this.friday = friday; diff --git a/apps/server/src/api/routes/v1/room.ts b/apps/server/src/api/routes/v1/room.ts index 08420fde..25969e33 100644 --- a/apps/server/src/api/routes/v1/room.ts +++ b/apps/server/src/api/routes/v1/room.ts @@ -10,7 +10,7 @@ import Friday from '../../../core/friday'; */ @FridayRouter('/v1/room') export default class RoomRouter { - readonly friday: Friday; + private readonly friday: Friday; constructor(friday: Friday) { this.friday = friday; diff --git a/apps/server/src/api/routes/v1/satellite.ts b/apps/server/src/api/routes/v1/satellite.ts index 0ceb1b0d..88c77434 100644 --- a/apps/server/src/api/routes/v1/satellite.ts +++ b/apps/server/src/api/routes/v1/satellite.ts @@ -11,7 +11,7 @@ import { Delete, FridayRouter, Get, Patch, Post } from '../../../utils/decorator */ @FridayRouter('/v1/satellite') export default class SatelliteRouter { - readonly friday: Friday; + private readonly friday: Friday; constructor(friday: Friday) { this.friday = friday; diff --git a/apps/server/src/api/routes/v1/scene.ts b/apps/server/src/api/routes/v1/scene.ts index 03281ab1..8501653c 100644 --- a/apps/server/src/api/routes/v1/scene.ts +++ b/apps/server/src/api/routes/v1/scene.ts @@ -11,7 +11,7 @@ import Friday from '../../../core/friday'; */ @FridayRouter('/v1/scene') export default class SceneRouter { - readonly friday: Friday; + private readonly friday: Friday; constructor(friday: Friday) { this.friday = friday; diff --git a/apps/server/src/api/routes/v1/script.ts b/apps/server/src/api/routes/v1/script.ts index 35dc189d..5454acb7 100644 --- a/apps/server/src/api/routes/v1/script.ts +++ b/apps/server/src/api/routes/v1/script.ts @@ -10,7 +10,7 @@ import Friday from '../../../core/friday'; */ @FridayRouter('/v1/script') export default class ScriptRouter { - readonly friday: Friday; + private readonly friday: Friday; constructor(friday: Friday) { this.friday = friday; diff --git a/apps/server/src/api/routes/v1/session.ts b/apps/server/src/api/routes/v1/session.ts index 40e8c028..3c506da4 100644 --- a/apps/server/src/api/routes/v1/session.ts +++ b/apps/server/src/api/routes/v1/session.ts @@ -7,7 +7,7 @@ import Friday from '../../../core/friday'; */ @FridayRouter('/v1/session') export default class SessionRouter { - readonly friday: Friday; + private readonly friday: Friday; constructor(friday: Friday) { this.friday = friday; diff --git a/apps/server/src/api/routes/v1/state.ts b/apps/server/src/api/routes/v1/state.ts index 3594284c..f5cea790 100644 --- a/apps/server/src/api/routes/v1/state.ts +++ b/apps/server/src/api/routes/v1/state.ts @@ -11,7 +11,7 @@ import Friday from '../../../core/friday'; */ @FridayRouter('/v1/state') export default class StateRouter { - readonly friday: Friday; + private readonly friday: Friday; constructor(friday: Friday) { this.friday = friday; diff --git a/apps/server/src/api/routes/v1/system.ts b/apps/server/src/api/routes/v1/system.ts index a56ec7a7..62e93ef6 100644 --- a/apps/server/src/api/routes/v1/system.ts +++ b/apps/server/src/api/routes/v1/system.ts @@ -10,7 +10,7 @@ import { encrypt } from '../../../utils/keyring'; */ @FridayRouter('/v1/system') export default class SystemRouter { - readonly friday: Friday; + private readonly friday: Friday; constructor(friday: Friday) { this.friday = friday; diff --git a/apps/server/src/api/routes/v1/trigger.ts b/apps/server/src/api/routes/v1/trigger.ts index e47b4690..6b971b19 100644 --- a/apps/server/src/api/routes/v1/trigger.ts +++ b/apps/server/src/api/routes/v1/trigger.ts @@ -12,7 +12,7 @@ import Friday from '../../../core/friday'; */ @FridayRouter('/v1/trigger') export default class TriggerRouter { - readonly friday: Friday; + private readonly friday: Friday; constructor(friday: Friday) { this.friday = friday; diff --git a/apps/server/src/api/routes/v1/user.ts b/apps/server/src/api/routes/v1/user.ts index 43f1e93f..6186100f 100644 --- a/apps/server/src/api/routes/v1/user.ts +++ b/apps/server/src/api/routes/v1/user.ts @@ -16,7 +16,7 @@ import { FridayMode } from '../../../config/constants'; */ @FridayRouter('/v1/user') export default class UserRouter { - readonly friday: Friday; + private readonly friday: Friday; constructor(friday: Friday) { this.friday = friday; diff --git a/apps/server/src/api/routes/v1/variable.ts b/apps/server/src/api/routes/v1/variable.ts index c1487996..d00b3140 100644 --- a/apps/server/src/api/routes/v1/variable.ts +++ b/apps/server/src/api/routes/v1/variable.ts @@ -12,7 +12,7 @@ import Friday from '../../../core/friday'; */ @FridayRouter('/v1/variable') export default class VariableRouter { - readonly friday: Friday; + private readonly friday: Friday; constructor(friday: Friday) { this.friday = friday; diff --git a/apps/server/src/config/database.ts b/apps/server/src/config/database.ts index a2dd581f..7b65b0bd 100644 --- a/apps/server/src/config/database.ts +++ b/apps/server/src/config/database.ts @@ -1,8 +1,10 @@ import { Sequelize } from 'sequelize-typescript'; import { SequelizeStorage, Umzug } from 'umzug'; -import path from 'path'; import { KVArr } from '../utils/interfaces'; +import migrations from '../../migrations'; +import { modelsArr } from '../models'; + const env = process.env.NODE_ENV || 'production'; const DATABASE_NAME: KVArr = { @@ -20,14 +22,12 @@ const database = new Sequelize({ }, logging: false, storage: DATABASE_NAME[env], - models: [path.join(__dirname, '../models')], + models: modelsArr, }); // Migrations const umzug = new Umzug({ - migrations: { - glob: path.join(__dirname, '../../migrations/*.ts'), - }, + migrations: [...migrations], context: database.getQueryInterface(), storage: new SequelizeStorage({ sequelize: database }), logger: console, @@ -43,7 +43,11 @@ const init = async () => { }; const closeConnection = async () => { - await database.close(); + if (env === 'test') { + return null; + } + + return database.close(); }; -export { database, umzug, init, closeConnection }; +export { closeConnection, database, init, umzug }; diff --git a/apps/server/src/core/device/capabilities/index.ts b/apps/server/src/core/device/capabilities/index.ts new file mode 100644 index 00000000..3890c550 --- /dev/null +++ b/apps/server/src/core/device/capabilities/index.ts @@ -0,0 +1,21 @@ +import * as brightness from './brightness'; +import * as energyConsumption from './energyConsumption'; +import * as hue from './hue'; +import * as luminosity from './luminosity'; +import * as motion from './motion'; +import * as onOff from './onOff'; +import * as openClose from './openClose'; +import * as temperatureHumidity from './temperatureHumidity'; + +const capabilities = { + brightness, + energyConsumption, + hue, + luminosity, + motion, + onOff, + openClose, + temperatureHumidity, +}; + +export default capabilities; diff --git a/apps/server/src/core/device/device.ts b/apps/server/src/core/device/device.ts index 0621de2a..7225fd30 100644 --- a/apps/server/src/core/device/device.ts +++ b/apps/server/src/core/device/device.ts @@ -1,33 +1,29 @@ -/* eslint-disable import/no-dynamic-require */ -/* eslint-disable global-require */ -/* eslint-disable @typescript-eslint/no-var-requires */ - -import { +import type { + DcstCreationAttributes, DeviceAttributes, - DeviceCommand, - DevicesActions, - DeviceCreationAttributes, DeviceCapabilityRegisterAttributes, - DcstCreationAttributes, DeviceCapabilitySettingsSchema, + DeviceCommand, + DeviceCreationAttributes, DeviceRegisterAttributes, - DeviceCreationKeys, } from '@friday-ai/shared'; -import { globSync } from 'glob'; +import { DeviceCreationKeys, DevicesActions } from '@friday-ai/shared'; -import BaseModel from '../../utils/database/model.base'; import DeviceModel from '../../models/device'; -import EventClass from '../../utils/event'; +import BaseModel from '../../utils/database/model.base'; import { Catch } from '../../utils/decorators/error'; +import EventClass from '../../utils/event'; -import register from './device.register'; import exec from './device.exec'; -import setCapability from './device.setCapability'; import getCapabilityById from './device.getCapabilityById'; +import register from './device.register'; +import setCapability from './device.setCapability'; import setCapabilitySettings from './device.setCapabilitySettings'; import setCapabilityState from './device.setCapabilityState'; +import capabilities from './capabilities'; + /** * Device */ @@ -38,12 +34,14 @@ export default class Device extends BaseModel { - const manager = require(`./capabilities/${filename}`); + Object.values(capabilities).forEach((capability) => { + Object.keys(capability.options).forEach((key) => { + capability.options[key].actions.forEach((action: DevicesActions) => { + // Dynamically create type of capability + type capabilityType = Omit; + const fn = capability[key as keyof capabilityType] as (...args: unknown[]) => void; - Object.keys(manager.options).forEach((key) => { - manager.options[key].actions.forEach((action: DevicesActions) => { - this.event.on(action, (e) => manager[key].bind(this)(e)); + this.event.on(action, (e) => fn.bind(this)(e)); }); }); }); diff --git a/apps/server/src/core/friday.ts b/apps/server/src/core/friday.ts index 146773f9..cf979cb3 100644 --- a/apps/server/src/core/friday.ts +++ b/apps/server/src/core/friday.ts @@ -1,6 +1,6 @@ import Docker from '@friday-ai/docker'; - import logger from '@friday-ai/logger'; + import * as database from '../config/database'; import Action from './action/action'; import Device from './device/device'; @@ -63,6 +63,8 @@ export default class Friday { async start() { try { await database.init(); + await database.umzug.up(); + this.masterId = await this.system.start(); // If masterId is empty, is because master satellite not initialized diff --git a/apps/server/src/core/house/house.ts b/apps/server/src/core/house/house.ts index b9b2da30..d0c19d27 100644 --- a/apps/server/src/core/house/house.ts +++ b/apps/server/src/core/house/house.ts @@ -1,8 +1,9 @@ -import { HouseAttributes, HouseCreationAttributes, AvailableState, StateOwner, HouseCreationKeys } from '@friday-ai/shared'; -import BaseModel from '../../utils/database/model.base'; +import type { HouseAttributes, HouseCreationAttributes } from '@friday-ai/shared'; +import { AvailableState, HouseCreationKeys, StateOwner } from '@friday-ai/shared'; import HouseModel from '../../models/house'; -import StateClass from '../state/state'; +import BaseModel from '../../utils/database/model.base'; import { Catch } from '../../utils/decorators/error'; +import StateClass from '../state/state'; /** * House diff --git a/apps/server/src/core/plugin/plugin.ts b/apps/server/src/core/plugin/plugin.ts index 180964ed..100fe77a 100644 --- a/apps/server/src/core/plugin/plugin.ts +++ b/apps/server/src/core/plugin/plugin.ts @@ -1,5 +1,6 @@ import DockerClass from '@friday-ai/docker'; -import { PluginAttributes, PluginCreationAttributes, PluginCreationKeys, PluginInstallAttributes } from '@friday-ai/shared'; +import type { PluginAttributes, PluginCreationAttributes, PluginInstallAttributes } from '@friday-ai/shared'; +import { PluginCreationKeys } from '@friday-ai/shared'; import PluginModel from '../../models/plugin'; import BaseModel from '../../utils/database/model.base'; @@ -7,12 +8,12 @@ import { Catch } from '../../utils/decorators/error'; import EventClass from '../../utils/event'; import StateClass from '../state/state'; -import uninstall from './plugin.uninstall'; +import checkState from './plugin.checkState'; import heartbeat from './plugin.heartbeat'; import install from './plugin.install'; -import stop from './plugin.stop'; import restart from './plugin.restart'; -import checkState from './plugin.checkState'; +import stop from './plugin.stop'; +import uninstall from './plugin.uninstall'; /** * Plugin diff --git a/apps/server/src/core/room/room.ts b/apps/server/src/core/room/room.ts index c6b496f3..f4d41abf 100644 --- a/apps/server/src/core/room/room.ts +++ b/apps/server/src/core/room/room.ts @@ -1,8 +1,9 @@ -import { RoomAttributes, RoomCreationAttributes, AvailableState, StateOwner, RoomsCreationKeys } from '@friday-ai/shared'; -import BaseModel from '../../utils/database/model.base'; +import type { RoomAttributes, RoomCreationAttributes } from '@friday-ai/shared'; +import { AvailableState, RoomsCreationKeys, StateOwner } from '@friday-ai/shared'; import RoomModel from '../../models/room'; -import StateClass from '../state/state'; +import BaseModel from '../../utils/database/model.base'; import { Catch } from '../../utils/decorators/error'; +import StateClass from '../state/state'; /** * Room diff --git a/apps/server/src/core/satellite/satellite.ts b/apps/server/src/core/satellite/satellite.ts index f9d40f97..ab7f9a7d 100644 --- a/apps/server/src/core/satellite/satellite.ts +++ b/apps/server/src/core/satellite/satellite.ts @@ -1,14 +1,15 @@ -import { SatelliteAttributes, SatelliteCreationAttributes, AvailableState, StateOwner, SatelliteCreationKeys } from '@friday-ai/shared'; import logger from '@friday-ai/logger'; -import BaseModel from '../../utils/database/model.base'; +import type { SatelliteAttributes, SatelliteCreationAttributes } from '@friday-ai/shared'; +import { AvailableState, SatelliteCreationKeys, StateOwner } from '@friday-ai/shared'; import SatelliteModel from '../../models/satellite'; +import BaseModel from '../../utils/database/model.base'; import { Catch } from '../../utils/decorators/error'; -import StateClass from '../state/state'; import PluginClass from '../plugin/plugin'; +import StateClass from '../state/state'; import heartbeat from './satellite.heartbeat'; -import stopAllPlugins from './satellite.stopAllPlugins'; import restartAllPlugins from './satellite.restartAllPlugins'; +import stopAllPlugins from './satellite.stopAllPlugins'; /** * Satellite diff --git a/apps/server/src/core/session/session.ts b/apps/server/src/core/session/session.ts index 6ee27d21..fc8c5394 100644 --- a/apps/server/src/core/session/session.ts +++ b/apps/server/src/core/session/session.ts @@ -1,9 +1,9 @@ -import { SessionAttributes, SessionCredentials } from '@friday-ai/shared'; +import type { SessionAttributes, SessionCredentials } from '@friday-ai/shared'; import SessionModel from '../../models/session'; import { PartialModel } from '../../utils/database/model.partial'; import { Catch } from '../../utils/decorators/error'; -import { GetOptions } from '../../utils/interfaces'; +import type { GetOptions } from '../../utils/interfaces'; import create from './session.create'; import getAccessToken from './session.getAccessToken'; import revoke from './session.revoke'; diff --git a/apps/server/src/core/state/state.ts b/apps/server/src/core/state/state.ts index 2d9768c0..6ff0120f 100644 --- a/apps/server/src/core/state/state.ts +++ b/apps/server/src/core/state/state.ts @@ -1,12 +1,12 @@ -import { StateCreationAttributes } from '@friday-ai/shared'; -import EventClass from '../../utils/event'; -import VariableClass from '../variable/variable'; +import type { StateCreationAttributes } from '@friday-ai/shared'; import { EventsType } from '../../config/constants'; import { Catch } from '../../utils/decorators/error'; +import EventClass from '../../utils/event'; +import VariableClass from '../variable/variable'; -import set from './state.set'; import getByOwner from './state.getByOwner'; import purge from './state.purge'; +import set from './state.set'; /** * State diff --git a/apps/server/src/core/user/user.ts b/apps/server/src/core/user/user.ts index 3a0f64bf..7861de94 100644 --- a/apps/server/src/core/user/user.ts +++ b/apps/server/src/core/user/user.ts @@ -1,6 +1,7 @@ -import { UserAttributes, UserCreationAttributes, AvailableState, StateOwner, UserCreationKeys } from '@friday-ai/shared'; -import BaseModel from '../../utils/database/model.base'; +import type { UserAttributes, UserCreationAttributes } from '@friday-ai/shared'; +import { AvailableState, StateOwner, UserCreationKeys } from '@friday-ai/shared'; import UserModel from '../../models/user'; +import BaseModel from '../../utils/database/model.base'; import { Catch } from '../../utils/decorators/error'; import StateClass from '../state/state'; diff --git a/apps/server/src/models/action.ts b/apps/server/src/models/action.ts index 41588620..9e8a9a0f 100644 --- a/apps/server/src/models/action.ts +++ b/apps/server/src/models/action.ts @@ -41,31 +41,31 @@ export default class Action extends Model Device, { diff --git a/apps/server/src/models/house.ts b/apps/server/src/models/house.ts index f4d43e8f..ae4bbcb5 100644 --- a/apps/server/src/models/house.ts +++ b/apps/server/src/models/house.ts @@ -50,21 +50,21 @@ export default class House extends Model Room, { diff --git a/apps/server/src/models/index.ts b/apps/server/src/models/index.ts new file mode 100644 index 00000000..2c997904 --- /dev/null +++ b/apps/server/src/models/index.ts @@ -0,0 +1,59 @@ +import { ModelCtor } from 'sequelize-typescript'; +import { KVArr } from '../utils/interfaces'; + +import Action from './action'; +import Device from './device'; +import DeviceCapability from './device_capability'; +import DeviceCapabilitySettings from './device_capability_settings'; +import DeviceCapabilityState from './device_capability_state'; +import House from './house'; +import Plugin from './plugin'; +import Room from './room'; +import Satellite from './satellite'; +import Scene from './scene'; +import Script from './script'; +import Session from './session'; +import State from './state'; +import Trigger from './trigger'; +import User from './user'; +import Variable from './variable'; + +const modelsArr = [ + Action, + DeviceCapabilitySettings, + DeviceCapabilityState, + DeviceCapability, + Device, + House, + Plugin, + Room, + Satellite, + Scene, + Script, + Session, + State, + Trigger, + User, + Variable, +]; + +const modelsObj: KVArr = { + action: Action, + device_capability: DeviceCapability, + device_capability_settings: DeviceCapabilitySettings, + device_capability_state: DeviceCapabilityState, + device: Device, + house: House, + plugin: Plugin, + room: Room, + satellite: Satellite, + scene: Scene, + script: Script, + session: Session, + state: State, + trigger: Trigger, + user: User, + variable: Variable, +}; + +export { modelsArr, modelsObj }; diff --git a/apps/server/src/models/plugin.ts b/apps/server/src/models/plugin.ts index db348daa..e77c01aa 100644 --- a/apps/server/src/models/plugin.ts +++ b/apps/server/src/models/plugin.ts @@ -20,12 +20,12 @@ import { } from 'sequelize-typescript'; import { PluginAttributes, PluginCreationAttributes } from '@friday-ai/shared'; +import { isOwnerExisting } from '../utils/database/validation'; +import { DatabaseValidationError } from '../utils/decorators/error'; +import Device from './device'; import Satellite from './satellite'; import State from './state'; import Variable from './variable'; -import Device from './device'; -import { isOwnerExisting } from '../utils/database/validation'; -import { DatabaseValidationError } from '../utils/decorators/error'; /** * Plugin model @@ -65,31 +65,31 @@ export default class Plugin extends Model Satellite, { diff --git a/apps/server/src/models/room.ts b/apps/server/src/models/room.ts index f28447c3..34c13984 100644 --- a/apps/server/src/models/room.ts +++ b/apps/server/src/models/room.ts @@ -18,11 +18,11 @@ import { } from 'sequelize-typescript'; import { RoomAttributes, RoomCreationAttributes } from '@friday-ai/shared'; +import { isOwnerExisting } from '../utils/database/validation'; +import Device from './device'; import House from './house'; import Satellite from './satellite'; -import Device from './device'; import State from './state'; -import { isOwnerExisting } from '../utils/database/validation'; /** * Room model @@ -62,13 +62,13 @@ export default class Room extends Model @PrimaryKey @Unique @Default(DataType.UUIDV4) - @Column({ type: DataType.UUIDV4 }) + @Column(DataType.UUIDV4) id!: string; @AllowNull(false) @Unique @NotEmpty - @Column + @Column(DataType.STRING) name!: string; @AllowNull(false) diff --git a/apps/server/src/models/satellite.ts b/apps/server/src/models/satellite.ts index 8c30d3b8..c916a2de 100644 --- a/apps/server/src/models/satellite.ts +++ b/apps/server/src/models/satellite.ts @@ -71,13 +71,13 @@ export default class Satellite extends Model Room, { diff --git a/apps/server/src/models/scene.ts b/apps/server/src/models/scene.ts index bcb7b9bd..7df63068 100644 --- a/apps/server/src/models/scene.ts +++ b/apps/server/src/models/scene.ts @@ -17,9 +17,9 @@ import { } from 'sequelize-typescript'; import { SceneAttributes, SceneCreationAttributes } from '@friday-ai/shared'; -import Trigger from './trigger'; -import Action from './action'; import { isOwnerExisting } from '../utils/database/validation'; +import Action from './action'; +import Trigger from './trigger'; /** * Scene model @@ -51,17 +51,17 @@ export default class Scene extends Model { diff --git a/apps/server/src/models/script.ts b/apps/server/src/models/script.ts index bcd56dc2..10615cbc 100644 --- a/apps/server/src/models/script.ts +++ b/apps/server/src/models/script.ts @@ -18,17 +18,17 @@ export default class Script extends Model User, { diff --git a/apps/server/src/models/trigger.ts b/apps/server/src/models/trigger.ts index 8c195d67..0014b35f 100644 --- a/apps/server/src/models/trigger.ts +++ b/apps/server/src/models/trigger.ts @@ -14,7 +14,7 @@ import { Unique, } from 'sequelize-typescript'; -import { TriggerAttributes, AvailableConditions, TriggerCreationAttributes } from '@friday-ai/shared'; +import { AvailableConditions, TriggerAttributes, TriggerCreationAttributes } from '@friday-ai/shared'; import Scene from './scene'; /** @@ -39,21 +39,21 @@ export default class Trigger extends Model @PrimaryKey @Unique @Default(DataType.UUIDV4) - @Column({ type: DataType.UUIDV4 }) + @Column(DataType.UUIDV4) id!: string; @AllowNull(false) @NotEmpty - @Column + @Column(DataType.STRING) userName!: string; @AllowNull(false) @Unique @IsEmail @NotEmpty - @Column + @Column(DataType.STRING) email!: string; @AllowNull(false) @Length({ min: 10 }) @NotEmpty - @Column + @Column(DataType.STRING) password!: string; @AllowNull(true) - @Column + @Column(DataType.STRING) theme!: string; @AllowNull(false) @Default(UserRole.HABITANT) - @Column + @Column(DataType.ENUM(...Object.values(UserRole))) role!: UserRole; @AllowNull(false) @Default(AvailableLanguages.EN) - @Column + @Column(DataType.ENUM(...Object.values(AvailableLanguages))) language!: AvailableLanguages; @HasMany(() => Variable, { diff --git a/apps/server/src/models/variable.ts b/apps/server/src/models/variable.ts index c70c1f72..8b5e2440 100644 --- a/apps/server/src/models/variable.ts +++ b/apps/server/src/models/variable.ts @@ -14,11 +14,11 @@ import { Unique, } from 'sequelize-typescript'; -import { VariableAttributes, VariableOwner, VariableCreationAttributes } from '@friday-ai/shared'; -import User from './user'; +import { VariableAttributes, VariableCreationAttributes, VariableOwner } from '@friday-ai/shared'; +import { isOwnerExisting } from '../utils/database/validation'; import Plugin from './plugin'; import Satellite from './satellite'; -import { isOwnerExisting } from '../utils/database/validation'; +import User from './user'; /** * Variable model @@ -36,18 +36,18 @@ export default class Variable extends Model User, { diff --git a/apps/server/src/utils/database/model.partial.ts b/apps/server/src/utils/database/model.partial.ts index 06839f57..b89b5533 100644 --- a/apps/server/src/utils/database/model.partial.ts +++ b/apps/server/src/utils/database/model.partial.ts @@ -1,7 +1,7 @@ -import { WhereOptions } from 'sequelize'; +import type { WhereOptions } from 'sequelize'; import { Model, ModelCtor } from 'sequelize-typescript'; import { Catch, NotFoundError } from '../decorators/error'; -import { GetOptions } from '../interfaces'; +import type { GetOptions } from '../interfaces'; const DEFAULT_OPTIONS: GetOptions = { scope: '', diff --git a/apps/server/src/utils/database/validation.ts b/apps/server/src/utils/database/validation.ts index ec861089..33065e48 100644 --- a/apps/server/src/utils/database/validation.ts +++ b/apps/server/src/utils/database/validation.ts @@ -1,12 +1,9 @@ -/* eslint-disable @typescript-eslint/no-var-requires */ -/* eslint-disable import/no-dynamic-require */ -/* eslint-disable global-require */ /* eslint-disable import/prefer-default-export */ import promise from 'bluebird'; -import { join } from 'path'; import { NotFoundError } from '../decorators/error'; -const MODELS_PATH = join(__filename, '../../../models'); +import { modelsObj } from '../../models/index'; + const callLater = () => new Promise((resolve) => { setTimeout(resolve, 10); @@ -18,7 +15,7 @@ const callLater = () => * @param {Array} owners */ export const isOwnerExisting = async (id: string, owners: Array): Promise => { - const models = owners.map((file) => require(join(MODELS_PATH, file)).default); + const models = owners.map((file) => modelsObj[file]); const result: Array = []; await promise.mapSeries(models, (model) => callLater().then(async () => result.push(await model.findByPk(id)))); diff --git a/apps/server/src/utils/password.ts b/apps/server/src/utils/password.ts index a30351dd..2e5025fc 100644 --- a/apps/server/src/utils/password.ts +++ b/apps/server/src/utils/password.ts @@ -1,13 +1,15 @@ -import bcrypt from 'bcrypt'; +import { pbkdf2Sync, randomBytes } from 'crypto'; -const SALT_ROUNDS = 10; - -function hash(password: string): Promise { - return bcrypt.hash(password, SALT_ROUNDS); +function hash(password: string): string { + const salt = randomBytes(16).toString('hex'); + const passwordHash = pbkdf2Sync(password, salt, 10000, 512, 'sha512').toString('hex'); + return `${passwordHash}.${salt}`; } -function compare(password: string, passwordHash: string): Promise { - return bcrypt.compare(password, passwordHash); +function compare(password: string, passwordHash: string): boolean { + const [hashedPassword, salt] = passwordHash.split('.'); + const newHash = pbkdf2Sync(password, salt, 10000, 512, 'sha512').toString('hex'); + return newHash === hashedPassword; } -export { hash, compare }; +export { compare, hash }; diff --git a/apps/server/test/core/system/system.shutdown.test.ts b/apps/server/test/core/system/system.shutdown.test.ts index b393105c..610f2464 100644 --- a/apps/server/test/core/system/system.shutdown.test.ts +++ b/apps/server/test/core/system/system.shutdown.test.ts @@ -14,9 +14,6 @@ import Event from '../../../src/utils/event'; import Scheduler from '../../../src/utils/scheduler'; describe('System.shutdown', () => { - const databaseStub = database; - databaseStub.closeConnection = sinon.stub(); - const event = Event; const variable = new Variable(); const state = new State(event, variable); diff --git a/apps/server/test/utils/mqttBroker.ts b/apps/server/test/utils/mqttBroker.ts index e2c251c8..2eaab34a 100644 --- a/apps/server/test/utils/mqttBroker.ts +++ b/apps/server/test/utils/mqttBroker.ts @@ -1,7 +1,7 @@ -import net from 'net'; +import Aedes, { Client, Connection } from 'aedes'; import events from 'events'; -import Aedes, { Connection, Client } from 'aedes'; import { IncomingMessage } from 'http'; +import net from 'net'; const mqttPort = parseInt(process.env.MQTT_PORT || '1884', 10); diff --git a/apps/server/tsconfig.json b/apps/server/tsconfig.json index 6facfee8..4763ee3b 100644 --- a/apps/server/tsconfig.json +++ b/apps/server/tsconfig.json @@ -1,11 +1,5 @@ { - "extends": "../../packages/tools/typescript.config.json", - "compilerOptions": { - "outDir": "./dist", - "noEmit": false, - "declaration": false, - "declarationMap": false - }, - "include": ["src/**/*", "src/models/*", "seeders/*", "migrations/*", "test/**/*", ".eslintrc.js"], - "exclude": ["node_modules"] + "extends": "@friday-ai/tools/typescript/base.json", + "include": ["src", "test", "seeders", "migrations"], + "exclude": ["node_modules", "dist", "./tsup.config.js"] } diff --git a/apps/server/tsup.config.ts b/apps/server/tsup.config.ts new file mode 100644 index 00000000..42bcb7e3 --- /dev/null +++ b/apps/server/tsup.config.ts @@ -0,0 +1,14 @@ +/* eslint-disable import/prefer-default-export */ +import type { Options } from 'tsup'; +import { dependencies } from './package.json'; + +export const tsup: Options = { + entryPoints: ['src/server.ts'], + bundle: true, + minify: true, + clean: true, + skipNodeModulesBundle: false, + platform: 'node', + noExternal: Object.keys(dependencies), + external: ['pg-hstore', 'aws-sdk', 'nock', 'mock-aws-s3', 'cpu-features'], +}; diff --git a/docker-compose.dev.yml b/docker-compose.dev.yml deleted file mode 100644 index adac8479..00000000 --- a/docker-compose.dev.yml +++ /dev/null @@ -1,28 +0,0 @@ -version: '3.4' - -services: - friday-back: - build: - dockerfile: ./docker/Dockerfile-development - target: front-end - user: "1000:1000" - ports: - - "3001:3001" - volumes: - # Base - - ./package.json:/src/package.json - - ./pnpm-workspace.yaml:/src/pnpm-workspace.yaml - - ./pnpm-lock.yaml:/src/pnpm-lock.yaml - - ./apps/server:/src/apps/server - - ./packages:/src/packages - friday-front: - user: "1000:1000" - ports: - - "3000:3000" - volumes: - # Base - - ./package.json:/src/package.json - - ./pnpm-workspace.yaml:/src/pnpm-workspace.yaml - - ./pnpm-lock.yaml:/src/pnpm-lock.yaml - - ./apps/front:/src/apps/front - - ./packages:/src/packages diff --git a/docker-compose.prod.yml b/docker-compose.prod.yml deleted file mode 100644 index da715f92..00000000 --- a/docker-compose.prod.yml +++ /dev/null @@ -1,40 +0,0 @@ -version: '3.4' - -services: - friday-back: - labels: - "autoheal": "true" - image: fridayai/friday-back:latest - build: - dockerfile: ./docker/Dockerfile-production - target: back-end - ports: - - "1443:1443" - environment: - - NODE_ENV=production - friday-front: - labels: - "autoheal": "true" - image: fridayai/friday-front:latest - build: - dockerfile: ./docker/Dockerfile-production - target: front-end - ports: - - "1444:1444" - environment: - - NODE_ENV=production - autoheal: - container_name: Friday-ai-autoheal - image: willfarrell/autoheal - restart: always - volumes: - - '/var/run/docker.sock:/var/run/docker.sock' - environment: - - AUTOHEAL_INTERVAL=10 - watchtower: - container_name: Friday-ai-watchtower - image: containrrr/watchtower - restart: always - volumes: - - /var/run/docker.sock:/var/run/docker.sock - command: --cleanup diff --git a/docker-compose.yml b/docker-compose.yml deleted file mode 100644 index b44e6ad6..00000000 --- a/docker-compose.yml +++ /dev/null @@ -1,36 +0,0 @@ -version: '3.4' - -services: - friday-back: - container_name: Friday-ai-back - image: fridayai/friday-back:dev - build: - context: ./ - dockerfile: ./docker/Dockerfile-development - target: back-end - environment: - - NODE_ENV=development - - MQTT_HOST=host.docker.internal - friday-front: - container_name: Friday-ai-front - image: fridayai/friday-front:dev - build: - context: ./ - depends_on: - - friday-back - environment: - - NODE_ENV=development - - MQTT_HOST=host.docker.internal - broker: - container_name: Friday-ai-broker - image: eclipse-mosquitto:latest - restart: always - ports: - - "1883:1883" - - "9001:9001" - volumes: - - ./docker/mosquitto/config/mosquitto.conf:/mosquitto/config/mosquitto.conf - - ./docker/mosquitto/data:/mosquitto/data - environment: - - TZ=Europe/Paris - user: 1000:1000 diff --git a/docker/Dockerfile-development b/docker/Dockerfile-development deleted file mode 100644 index 22eb7ab4..00000000 --- a/docker/Dockerfile-development +++ /dev/null @@ -1,33 +0,0 @@ -FROM node:lts-alpine as base - -# System dependencies -RUN apk add --no-cache sqlite make python3 gcc g++ \ - && npm install -g pnpm@8 - -USER node -# Add friday core -WORKDIR /src - -ENV NODE_ENV development - -FROM base as back-end - -# Ping friday to check heartbeat -HEALTHCHECK --interval=50s --retries=12 \ - CMD curl --fail "http://localhost:3000" || exit 1 - -# Export listening port -EXPOSE 3000 - -CMD pnpm install:dev && pnpm start:dev - -FROM base as front-end - -# Ping friday to check heartbeat -HEALTHCHECK --interval=50s --retries=12 \ - CMD curl --fail "http://localhost:3001" || exit 1 - -# Export listening port -EXPOSE 3001 - -CMD pnpm install:dev && pnpm start:dev diff --git a/docker/Dockerfile-production b/docker/Dockerfile-production deleted file mode 100644 index 0aed3cc3..00000000 --- a/docker/Dockerfile-production +++ /dev/null @@ -1,64 +0,0 @@ -# base image node ---------------------------------------- -FROM node:lts-alpine as base - -# System dependencies -RUN npm install -g pnpm@8 http-server cross-env \ - && apk add --no-cache sqlite make curl - -WORKDIR /src - -COPY ../package.json . - -CMD pnpm start:prod - -# builder ------------------------------------------------ -FROM base as builder - -WORKDIR /usr/src - -COPY ../pnpm-lock.yaml ./ -COPY ../*.npmrc ./ - - -COPY ../ ./ - -RUN pnpm fetch \ - && pnpm install -r \ - && pnpm --filter "./packages/*" build \ - && pnpm build \ - && pnpm --filter "./apps/server" --prod deploy pruned-server - -# Friday front ------------------------------------------- -FROM base as front-end - -# Add friday core -COPY --from=builder /usr/src/apps/front/dist ./apps/front/dist - -COPY ../apps/front/package.json ./apps/front/ - -ENV NODE_ENV production - -# Ping friday to check heartbeat -HEALTHCHECK --interval=10s --retries=5 \ - CMD curl --fail "http://localhost:1444" || exit 1 - -# Export listening port -EXPOSE 1444 - -# Friday back ------------------------------------------ -FROM base as back-end - -# Add friday core -COPY --from=builder /usr/src/apps/server/dist ./apps/server/dist -COPY --from=builder /usr/src/pruned-server/node_modules ./apps/server/node_modules - -COPY ../apps/server/package.json ./apps/server/ - -ENV NODE_ENV production - -# Ping friday to check heartbeat @todo : change url for heartbeat url -HEALTHCHECK --interval=10s --retries=5 \ - CMD curl --fail "http://localhost:1443/api/v1/user/count" || exit 1 - -# Export listening port -EXPOSE 1443 diff --git a/docker/config/avahi.sh b/docker/config/avahi.sh deleted file mode 100755 index 3ab7fca6..00000000 --- a/docker/config/avahi.sh +++ /dev/null @@ -1,87 +0,0 @@ -#!/bin/bash - -NSS_MDNS=$(dpkg -s libnss-mdns | grep Version: \ - | cut -d: -f2 | cut -d- -f1 | tr -d ' ') - -if [ "${NSS_MDNS}" != '0.10' ]; then - # After nss-mdns >0.10 we need to reconfigure the allowed hosts to support - # multiple sub-domain resolution - cat > /etc/mdns.allow < "/etc/supervisor/conf.d/${CNAME}.conf" < = { [K in keyof T]: Constructor }; */ export function AllOf(...BaseClasses: Constructors): Constructor> { const [First, ...Others] = BaseClasses; - const ret = class AllOf extends First {}; + const ret = class AllOf extends First! {}; for (const base of Others) { applyMixin(ret, base); } diff --git a/packages/shared/tsconfig.json b/packages/shared/tsconfig.json index 6beca379..72e370a0 100644 --- a/packages/shared/tsconfig.json +++ b/packages/shared/tsconfig.json @@ -1,8 +1,5 @@ { - "extends": "../tools/typescript.config.json", - "include": ["src/**/*", ".eslintrc.js"], - "compilerOptions": { - "noEmit": false - }, - "exclude": ["node_modules"] + "extends": "@friday-ai/tools/typescript/base.json", + "include": ["src"], + "exclude": ["node_modules", "lib"] } diff --git a/packages/shared/tsup.config.ts b/packages/shared/tsup.config.ts new file mode 100644 index 00000000..149bbe59 --- /dev/null +++ b/packages/shared/tsup.config.ts @@ -0,0 +1,13 @@ +/* eslint-disable import/prefer-default-export */ +import type { Options } from 'tsup'; + +export const tsup: Options = { + entryPoints: ['src/index.ts'], + bundle: true, + minify: true, + clean: true, + dts: true, + skipNodeModulesBundle: false, + format: ['cjs', 'esm'], + outDir: 'lib', +}; diff --git a/packages/tools/.eslintrc.js b/packages/tools/.eslintrc.js deleted file mode 100644 index f053ebf7..00000000 --- a/packages/tools/.eslintrc.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = {}; diff --git a/packages/tools/README.md b/packages/tools/README.md new file mode 100644 index 00000000..27da5202 --- /dev/null +++ b/packages/tools/README.md @@ -0,0 +1,3 @@ +# `@friday-ai/tools` + +Collection of internal configurations. diff --git a/packages/tools/prettier.config.js b/packages/tools/configs/prettier.config.js similarity index 100% rename from packages/tools/prettier.config.js rename to packages/tools/configs/prettier.config.js diff --git a/packages/tools/eslint/base.js b/packages/tools/eslint/base.js new file mode 100644 index 00000000..7bdf9838 --- /dev/null +++ b/packages/tools/eslint/base.js @@ -0,0 +1,164 @@ +const { resolve } = require("node:path"); + +const project = resolve(process.cwd(), "tsconfig.json"); + +/** @type {import("eslint").Linter.Config} */ +module.exports = { + parser: "@typescript-eslint/parser", + extends: [ + "eslint:recommended", + "prettier", + "eslint-config-turbo", + "airbnb-base-typescript-prettier", + ], + plugins: [ + "only-warn", + "@typescript-eslint/eslint-plugin", + "eslint-plugin-tsdoc", + "import", + ], + globals: { + document: false, + navigator: false, + window: false, + describe: true, + it: true, + should: true, + beforeEach: true, + afterEach: true, + before: true, + after: true, + }, + env: { + node: true, + }, + settings: { + "import/resolver": { + typescript: { + project, + }, + }, + }, + ignorePatterns: [ + ".*.js", + "**.d.ts", + "node_modules/", + "dist/", + "lib/", + "tsup.config.ts", + ], + overrides: [ + { + files: ["*.js?(x)", "*.ts?(x)"], + }, + ], + rules: { + "@typescript-eslint/no-unused-vars": [ + 2, + { args: "all", argsIgnorePattern: "^_" }, + ], + "import/no-cycle": 0, + "class-methods-use-this": 0, + semi: 0, // this cause a conflict with typescript rules + "@typescript-eslint/semi": ["error", "always"], + quotes: [ + "error", + "single", + { + avoidEscape: true, + allowTemplateLiterals: true, + }, + ], + camelcase: [ + "error", + { + properties: "never", + }, + ], + "tsdoc/syntax": 0, // this is ignored for the moment due to lack of flexibility. See issue: https://github.com/microsoft/tsdoc/issues/220 + "arrow-spacing": [ + "error", + { + before: true, + after: true, + }, + ], + "no-mixed-spaces-and-tabs": "error", + "no-eval": "error", + "block-spacing": ["error", "always"], + "comma-spacing": [ + "error", + { + before: false, + after: true, + }, + ], + curly: ["error", "all"], + "no-unused-expressions": [ + "error", + { + allowShortCircuit: true, + allowTernary: true, + allowTaggedTemplates: true, + }, + ], + "no-unused-vars": [ + "error", + { + vars: "all", + args: "none", + ignoreRestSiblings: true, + }, + ], + "import/no-extraneous-dependencies": [ + "error", + { + devDependencies: [ + "test.{js,jsx,ts,tsx}", + "test-*.{js,jsx,ts,tsx}", + "**/test/**/*.{js,jsx,ts,tsx}", + ], + }, + ], + "import/no-import-module-exports": [ + "error", + { exceptions: ["**/migrations/*.{js,ts}"] }, + ], + "max-len": [ + "error", + 135, + 2, + { + ignoreUrls: true, + ignoreComments: false, + ignoreRegExpLiterals: true, + ignoreStrings: true, + ignoreTemplateLiterals: true, + }, + ], + "brace-style": [ + "error", + "1tbs", + { + allowSingleLine: false, + }, + ], + "func-call-spacing": ["error", "never"], + "no-param-reassign": [ + "error", + { + props: false, + }, + ], + "lines-between-class-members": "off", + "@typescript-eslint/lines-between-class-members": [ + "error", + "always", + { + exceptAfterOverload: true, + exceptAfterSingleLine: true, + }, + ], + "import/no-unresolved": "error", + }, +}; diff --git a/packages/tools/eslint/eslint.config.base.js b/packages/tools/eslint/eslint.config.base.js deleted file mode 100644 index 4799f64e..00000000 --- a/packages/tools/eslint/eslint.config.base.js +++ /dev/null @@ -1,17 +0,0 @@ -module.exports = { - parser: '@typescript-eslint/parser', - extends: ['airbnb-base-typescript-prettier'], - plugins: ['@typescript-eslint/eslint-plugin', 'eslint-plugin-tsdoc', 'import'], - globals: { - document: false, - navigator: false, - window: false, - describe: true, - it: true, - should: true, - beforeEach: true, - afterEach: true, - before: true, - after: true, - }, -}; diff --git a/packages/tools/eslint/eslint.config.front.js b/packages/tools/eslint/eslint.config.front.js deleted file mode 100644 index 0d7c6fd2..00000000 --- a/packages/tools/eslint/eslint.config.front.js +++ /dev/null @@ -1,22 +0,0 @@ -module.exports = { - extends: ['./eslint.config.base.js'], - plugins: ["react", "jsx-a11y"], - rules: { - '@typescript-eslint/no-unused-vars': [2, { args: 'all', argsIgnorePattern: '^_' }], - 'import/no-cycle': 0, - 'import/no-extraneous-dependencies': [ - 'error', - { - devDependencies: ['**/*.test.{js,ts}', '**/*.config.{js,ts}'], - }, - ], - 'jsx-a11y/label-has-associated-control': [ - 2, - { - assert: 'either', // either check for `htmlFor` or `nesting` - }, - ], - 'no-param-reassign': ['error', { props: false }], - 'import/no-unresolved': ['error', { ignore: ['^virtual:'] }], - }, -}; diff --git a/packages/tools/eslint/eslint.config.server.js b/packages/tools/eslint/eslint.config.server.js deleted file mode 100644 index f9655414..00000000 --- a/packages/tools/eslint/eslint.config.server.js +++ /dev/null @@ -1,115 +0,0 @@ -module.exports = { - extends: ['./eslint.config.base.js'], - env: { - node: true, - }, - rules: { - '@typescript-eslint/no-unused-vars': [2, { args: 'all', argsIgnorePattern: '^_' }], - 'import/no-cycle': 0, - 'class-methods-use-this': 0, - semi: 0, // this cause a conflict with typescript rules - '@typescript-eslint/semi': ['error', 'always'], - quotes: [ - 'error', - 'single', - { - avoidEscape: true, - allowTemplateLiterals: true, - }, - ], - camelcase: [ - 'error', - { - properties: 'never', - }, - ], - 'tsdoc/syntax': 0, // this is ignored for the moment due to lack of flexibility. See issue: https://github.com/microsoft/tsdoc/issues/220 - 'arrow-spacing': [ - 'error', - { - before: true, - after: true, - }, - ], - 'no-mixed-spaces-and-tabs': 'error', - 'no-eval': 'error', - 'block-spacing': ['error', 'always'], - 'comma-spacing': [ - 'error', - { - before: false, - after: true, - }, - ], - curly: ['error', 'all'], - 'no-unused-expressions': [ - 'error', - { - allowShortCircuit: true, - allowTernary: true, - allowTaggedTemplates: true, - }, - ], - 'no-unused-vars': [ - 'error', - { - vars: 'all', - args: 'none', - ignoreRestSiblings: true, - }, - ], - 'import/no-extraneous-dependencies': [ - 'error', - { - devDependencies: ['test.{js,jsx,ts,tsx}', 'test-*.{js,jsx,ts,tsx}', '**/test/**/*.{js,jsx,ts,tsx}'], - }, - ], - 'import/no-import-module-exports': ['error', { exceptions: ['**/migrations/*.{js,ts}'] }], - 'max-len': [ - 'error', - 135, - 2, - { - ignoreUrls: true, - ignoreComments: false, - ignoreRegExpLiterals: true, - ignoreStrings: true, - ignoreTemplateLiterals: true, - }, - ], - 'brace-style': [ - 'error', - '1tbs', - { - allowSingleLine: false, - }, - ], - 'func-call-spacing': ['error', 'never'], - 'no-param-reassign': [ - 'error', - { - props: false, - }, - ], - 'lines-between-class-members': 'off', - '@typescript-eslint/lines-between-class-members': [ - 'error', - 'always', - { - exceptAfterOverload: true, - exceptAfterSingleLine: true, - }, - ], - 'import/no-unresolved': 'error', - }, - settings: { - 'import/parsers': { - '@typescript-eslint/parser': ['.ts', '.tsx'], - }, - 'import/resolver': { - typescript: { - project: ['packages/*/tsconfig.json', 'apps/server/tsconfig.json'], - }, - }, - }, -}; diff --git a/packages/tools/eslint/react-internal.js b/packages/tools/eslint/react-internal.js new file mode 100644 index 00000000..11cb384c --- /dev/null +++ b/packages/tools/eslint/react-internal.js @@ -0,0 +1,50 @@ +const { resolve } = require("node:path"); + +const project = resolve(process.cwd(), "tsconfig.json"); + +/** @type {import("eslint").Linter.Config} */ +module.exports = { + extends: ["eslint:recommended", "prettier", "eslint-config-turbo"], + plugins: ["only-warn", "jsx-a11y", "@typescript-eslint/eslint-plugin"], + globals: { + React: true, + JSX: true, + }, + env: { + browser: true, + }, + settings: { + "import/resolver": { + typescript: { + project, + }, + }, + }, + ignorePatterns: [".*.js", "*.d.ts", "node_modules/", "dist/", "lib/"], + overrides: [ + // Force ESLint to detect .tsx files + { files: ["*.js?(x)", "*.ts?(x)"] }, + ], + rules: { + "no-undef": "off", + "jsx-a11y/label-has-associated-control": [ + 2, + { + assert: "either", // either check for `htmlFor` or `nesting` + }, + ], + "no-param-reassign": ["error", { props: false }], + "@typescript-eslint/no-unused-vars": [ + 2, + { args: "all", argsIgnorePattern: "^_" }, + ], + "no-unused-vars": [ + "error", + { + vars: "all", + args: "none", + ignoreRestSiblings: true, + }, + ], + }, +}; diff --git a/packages/tools/nodemon.config.js b/packages/tools/nodemon.config.js deleted file mode 100644 index 0874f1f7..00000000 --- a/packages/tools/nodemon.config.js +++ /dev/null @@ -1,4 +0,0 @@ -module.exports = { - watch: ['./src', './test'], - ext: '.js, .ts', -}; diff --git a/packages/tools/package.json b/packages/tools/package.json index 00b9ad73..52857cc4 100644 --- a/packages/tools/package.json +++ b/packages/tools/package.json @@ -1,23 +1,29 @@ { - "name": "@friday/tools", - "version": "1.0.0", - "description": "Friday: Tools (Eslint, Prettier)", - "keywords": [], - "author": "Mathieu Andrade", - "license": "MIT", + "name": "@friday-ai/tools", + "version": "0.0.0", + "files": [ + "eslint/base.js", + "eslint/react-internal.js", + "typescript/base.json", + "typescript/react-library.json", + "config/prettier.config.js" + ], "peerDependencies": { - "typescript": "*" + "@types/node": "^20.11.16", + "typescript": "^5.3.3" }, "devDependencies": { - "@typescript-eslint/eslint-plugin": "^6.18.0", - "@typescript-eslint/parser": "^6.18.0", + "@typescript-eslint/eslint-plugin": "^6.17.0", + "@typescript-eslint/parser": "^6.17.0", "eslint": "^8.56.0", "eslint-config-airbnb-base-typescript-prettier": "^5.1.0", + "eslint-config-prettier": "^9.1.0", + "eslint-config-turbo": "^1.11.3", "eslint-import-resolver-typescript": "^3.6.1", "eslint-plugin-import": "^2.29.1", "eslint-plugin-jsx-a11y": "^6.8.0", - "eslint-plugin-react": "^7.33.2", + "eslint-plugin-only-warn": "^1.1.0", "eslint-plugin-tsdoc": "^0.2.17", - "prettier": "^3.1.1" + "prettier": "^3.2.5" } } diff --git a/packages/tools/typescript.config.json b/packages/tools/typescript.config.json deleted file mode 100644 index 5ae880a0..00000000 --- a/packages/tools/typescript.config.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "$schema": "https://json.schemastore.org/tsconfig", - "display": "Default", - "compilerOptions": { - "target": "es6", - "module": "CommonJS", - "moduleResolution": "node", - "outDir": "dist", - "jsx": "react", - "sourceMap": true, - "allowJs": false, - "noImplicitAny": true, - "composite": false, - "declaration": true, - "declarationMap": true, - "noImplicitReturns": true, - "forceConsistentCasingInFileNames": true, - "skipLibCheck": true, - "esModuleInterop": true, - "inlineSources": false, - "allowSyntheticDefaultImports": true, - "noUnusedParameters": true, - "strict": true, - "resolveJsonModule": true, - "isolatedModules": true, - "preserveWatchOutput": true, - "noEmit": true, - "noUnusedLocals": true, - "experimentalDecorators": true, - "emitDecoratorMetadata": true, - "useUnknownInCatchVariables": false - }, - "ts-node": { - "files": true - } -} diff --git a/packages/tools/typescript/base.json b/packages/tools/typescript/base.json new file mode 100644 index 00000000..cd5ac951 --- /dev/null +++ b/packages/tools/typescript/base.json @@ -0,0 +1,27 @@ +{ + "$schema": "https://json.schemastore.org/tsconfig", + "display": "Default", + "compilerOptions": { + "declaration": false, + "declarationMap": false, + "esModuleInterop": true, + "incremental": false, + "isolatedModules": true, + "lib": ["ESNext", "DOM", "DOM.Iterable"], + "module": "NodeNext", + "moduleDetection": "force", + "moduleResolution": "NodeNext", + "noUncheckedIndexedAccess": false, + "resolveJsonModule": true, + "skipLibCheck": true, + "strict": true, + "allowJs": false, + "noEmit": false, + "target": "ESNext", + "experimentalDecorators": true, + "emitDecoratorMetadata": true, + "useDefineForClassFields": false, + "useUnknownInCatchVariables": false, + "allowSyntheticDefaultImports": true + } +} diff --git a/packages/tools/typescript/react-library.json b/packages/tools/typescript/react-library.json new file mode 100644 index 00000000..a12ab3ed --- /dev/null +++ b/packages/tools/typescript/react-library.json @@ -0,0 +1,10 @@ +{ + "$schema": "https://json.schemastore.org/tsconfig", + "display": "React Library", + "extends": "./base.json", + "compilerOptions": { + "jsx": "react-jsx", + "module": "ESNext", + "moduleResolution": "Bundler" + } +} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index f4b339cd..ce05f0da 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -6,7 +6,14 @@ settings: importers: - .: {} + .: + devDependencies: + '@friday-ai/tools': + specifier: workspace:^ + version: link:packages/tools + turbo: + specifier: ^1.12.2 + version: 1.12.4 apps/front: dependencies: @@ -15,22 +22,22 @@ importers: version: 1.2.13(react-dom@18.2.0)(react@18.2.0) '@emotion/react': specifier: ^11.11.3 - version: 11.11.3(@types/react@18.2.47)(react@18.2.0) + version: 11.11.4(@types/react@18.2.60)(react@18.2.0) '@emotion/styled': specifier: ^11.11.0 - version: 11.11.0(@emotion/react@11.11.3)(@types/react@18.2.47)(react@18.2.0) + version: 11.11.0(@emotion/react@11.11.4)(@types/react@18.2.60)(react@18.2.0) '@friday-ai/shared': specifier: workspace:* version: link:../../packages/shared '@mui/icons-material': specifier: ^5.15.3 - version: 5.15.3(@mui/material@5.15.3)(@types/react@18.2.47)(react@18.2.0) + version: 5.15.11(@mui/material@5.15.11)(@types/react@18.2.60)(react@18.2.0) '@mui/material': specifier: ^5.15.3 - version: 5.15.3(@emotion/react@11.11.3)(@emotion/styled@11.11.0)(@types/react@18.2.47)(react-dom@18.2.0)(react@18.2.0) + version: 5.15.11(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@types/react@18.2.60)(react-dom@18.2.0)(react@18.2.0) '@tanstack/react-query': specifier: ^5.17.8 - version: 5.17.8(react@18.2.0) + version: 5.24.1(react@18.2.0) '@visx/event': specifier: ^3.3.0 version: 3.3.0 @@ -54,22 +61,22 @@ importers: version: 3.3.0(react-dom@18.2.0)(react@18.2.0) axios: specifier: ^1.6.5 - version: 1.6.5 + version: 1.6.7 cross-env: specifier: ^7.0.3 version: 7.0.3 date-fns: specifier: ^3.1.0 - version: 3.1.0 + version: 3.3.1 framer-motion: specifier: ^10.17.9 - version: 10.17.9(react-dom@18.2.0)(react@18.2.0) + version: 10.18.0(react-dom@18.2.0)(react@18.2.0) http-server: specifier: ^14.1.1 version: 14.1.1 i18next: specifier: ^23.7.16 - version: 23.7.16 + version: 23.10.0 i18next-browser-languagedetector: specifier: ^7.2.0 version: 7.2.0 @@ -87,13 +94,13 @@ importers: version: 18.2.0(react@18.2.0) react-i18next: specifier: ^14.0.0 - version: 14.0.0(i18next@23.7.16)(react-dom@18.2.0)(react@18.2.0) + version: 14.0.5(i18next@23.10.0)(react-dom@18.2.0)(react@18.2.0) react-leaflet: specifier: ^4.2.1 version: 4.2.1(leaflet@1.9.4)(react-dom@18.2.0)(react@18.2.0) react-router-dom: specifier: ^6.21.1 - version: 6.21.1(react-dom@18.2.0)(react@18.2.0) + version: 6.22.2(react-dom@18.2.0)(react@18.2.0) use-between: specifier: ^1.3.5 version: 1.3.5(react@18.2.0) @@ -106,37 +113,37 @@ importers: version: 1.9.8 '@types/react': specifier: ^18.2.47 - version: 18.2.47 + version: 18.2.60 '@types/react-dom': specifier: ^18.2.18 - version: 18.2.18 + version: 18.2.19 '@types/react-router-dom': specifier: ^5.3.3 version: 5.3.3 '@typescript-eslint/eslint-plugin': specifier: ^6.18.0 - version: 6.18.0(@typescript-eslint/parser@6.18.0)(eslint@8.56.0)(typescript@5.3.3) + version: 6.21.0(@typescript-eslint/parser@6.21.0)(eslint@8.57.0)(typescript@5.3.3) '@typescript-eslint/parser': specifier: ^6.18.0 - version: 6.18.0(eslint@8.56.0)(typescript@5.3.3) + version: 6.21.0(eslint@8.57.0)(typescript@5.3.3) '@vitejs/plugin-react': specifier: ^4.2.1 - version: 4.2.1(vite@5.0.11) + version: 4.2.1(vite@5.1.4) eslint: specifier: ^8.56.0 - version: 8.56.0 + version: 8.57.0 eslint-config-airbnb-base-typescript-prettier: specifier: ^5.1.0 version: 5.1.0(eslint-import-resolver-typescript@3.6.1) eslint-plugin-import: specifier: ^2.29.1 - version: 2.29.1(@typescript-eslint/parser@6.18.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.56.0) + version: 2.29.1(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0) eslint-plugin-tsdoc: specifier: ^0.2.17 version: 0.2.17 prettier: specifier: ^3.1.1 - version: 3.1.1 + version: 3.2.5 rollup-plugin-visualizer: specifier: ^5.12.0 version: 5.12.0(rollup@2.79.1) @@ -144,14 +151,17 @@ importers: specifier: ^5.3.3 version: 5.3.3 vite: - specifier: ^5.0.11 - version: 5.0.11 + specifier: ^5.0.12 + version: 5.1.4 + vite-plugin-node-polyfills: + specifier: ^0.21.0 + version: 0.21.0(rollup@2.79.1)(vite@5.1.4) vite-plugin-pwa: specifier: ^0.17.4 - version: 0.17.4(vite@5.0.11)(workbox-build@7.0.0)(workbox-window@7.0.0) + version: 0.17.5(vite@5.1.4)(workbox-build@7.0.0)(workbox-window@7.0.0) vite-plugin-svgr: specifier: ^4.2.0 - version: 4.2.0(rollup@2.79.1)(typescript@5.3.3)(vite@5.0.11) + version: 4.2.0(rollup@2.79.1)(typescript@5.3.3)(vite@5.1.4) workbox-window: specifier: ^7.0.0 version: 7.0.0 @@ -170,51 +180,36 @@ importers: '@friday-ai/shared': specifier: workspace:* version: link:../../packages/shared - '@types/bcrypt': - specifier: ^5.0.2 - version: 5.0.2 '@types/bluebird': specifier: ^3.5.42 version: 3.5.42 '@types/compression': specifier: ^1.7.5 version: 1.7.5 - '@types/dockerode': - specifier: ^3.3.23 - version: 3.3.23 '@types/express': specifier: ^4.17.21 version: 4.17.21 - '@types/fs-extra': - specifier: ^11.0.4 - version: 11.0.4 - '@types/glob': - specifier: ^8.1.0 - version: 8.1.0 '@types/jsonwebtoken': specifier: ^9.0.5 - version: 9.0.5 + version: 9.0.6 '@types/node': specifier: ^20.10.7 - version: 20.10.7 + version: 20.11.22 '@types/node-schedule': specifier: ^2.1.5 - version: 2.1.5 + version: 2.1.6 '@types/sequelize': specifier: ^4.28.19 - version: 4.28.19 + version: 4.28.20 '@types/umzug': specifier: ^2.3.7 version: 2.3.7 '@types/uuid': specifier: ^9.0.7 - version: 9.0.7 + version: 9.0.8 '@types/ws': specifier: ^8.5.10 version: 8.5.10 - bcrypt: - specifier: ^5.1.1 - version: 5.1.1 bluebird: specifier: ^3.7.2 version: 3.7.2 @@ -227,21 +222,12 @@ importers: cross-env: specifier: ^7.0.3 version: 7.0.3 - dockerode: - specifier: ^4.0.2 - version: 4.0.2 express: specifier: ^4.18.2 version: 4.18.2 express-rate-limit: specifier: ^7.1.5 version: 7.1.5(express@4.18.2) - fs-extra: - specifier: ^11.2.0 - version: 11.2.0 - glob: - specifier: ^10.3.10 - version: 10.3.10 helmet: specifier: ^7.1.0 version: 7.1.0 @@ -250,10 +236,7 @@ importers: version: 9.0.2 mqtt: specifier: ^5.3.4 - version: 5.3.4 - mqtt-packet: - specifier: ^9.0.0 - version: 9.0.0 + version: 5.3.6 node-schedule: specifier: ^2.1.1 version: 2.1.1 @@ -265,10 +248,10 @@ importers: version: 4.5.4 sequelize: specifier: ^6.35.2 - version: 6.35.2(sqlite3@5.1.7) + version: 6.37.1(sqlite3@5.1.7) sequelize-typescript: specifier: ^2.1.6 - version: 2.1.6(@types/node@20.10.7)(@types/validator@13.11.7)(reflect-metadata@0.2.1)(sequelize@6.35.2) + version: 2.1.6(@types/node@20.11.22)(@types/validator@13.11.9)(reflect-metadata@0.2.1)(sequelize@6.37.1) sqlite3: specifier: ^5.1.7 version: 5.1.7(bluebird@3.7.2) @@ -277,7 +260,7 @@ importers: version: 5.3.3 umzug: specifier: ^3.5.0 - version: 3.5.0 + version: 3.7.0(@types/node@20.11.22) ws: specifier: ^8.16.0 version: 8.16.0 @@ -287,7 +270,7 @@ importers: version: 1.0.5 '@types/chai': specifier: ^4.3.11 - version: 4.3.11 + version: 4.3.12 '@types/chai-as-promised': specifier: ^7.1.8 version: 7.1.8 @@ -300,96 +283,102 @@ importers: '@types/cors': specifier: ^2.8.17 version: 2.8.17 + '@types/dockerode': + specifier: ^3.3.24 + version: 3.3.24 '@types/mocha': specifier: ^10.0.6 version: 10.0.6 '@types/sinon': specifier: ^17.0.2 - version: 17.0.2 + version: 17.0.3 '@types/supertest': specifier: ^6.0.2 version: 6.0.2 '@typescript-eslint/eslint-plugin': specifier: ^6.18.0 - version: 6.18.0(@typescript-eslint/parser@6.18.0)(eslint@8.56.0)(typescript@5.3.3) + version: 6.21.0(@typescript-eslint/parser@6.21.0)(eslint@8.57.0)(typescript@5.3.3) '@typescript-eslint/parser': specifier: ^6.18.0 - version: 6.18.0(eslint@8.56.0)(typescript@5.3.3) + version: 6.21.0(eslint@8.57.0)(typescript@5.3.3) aedes: specifier: ^0.50.1 version: 0.50.1 chai: specifier: ^4.4.0 - version: 4.4.0 + version: 4.4.1 chai-as-promised: specifier: ^7.1.1 - version: 7.1.1(chai@4.4.0) + version: 7.1.1(chai@4.4.1) chai-like: specifier: ^1.1.1 - version: 1.1.1(chai@4.4.0) + version: 1.1.1(chai@4.4.1) chai-things: specifier: ^0.2.0 version: 0.2.0 + dockerode: + specifier: ^4.0.2 + version: 4.0.2 eslint: specifier: ^8.56.0 - version: 8.56.0 + version: 8.57.0 eslint-config-airbnb-base-typescript-prettier: specifier: ^5.1.0 version: 5.1.0(eslint-import-resolver-typescript@3.6.1) eslint-import-resolver-typescript: specifier: ^3.6.1 - version: 3.6.1(@typescript-eslint/parser@6.18.0)(eslint-plugin-import@2.29.1)(eslint@8.56.0) + version: 3.6.1(@typescript-eslint/parser@6.21.0)(eslint-plugin-import@2.29.1)(eslint@8.57.0) eslint-plugin-import: specifier: ^2.29.1 - version: 2.29.1(@typescript-eslint/parser@6.18.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.56.0) + version: 2.29.1(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0) eslint-plugin-tsdoc: specifier: ^0.2.17 version: 0.2.17 mocha: specifier: ^10.2.0 - version: 10.2.0 + version: 10.3.0 mocha-junit-reporter: specifier: ^2.2.1 - version: 2.2.1(mocha@10.2.0) - nodemon: - specifier: ^3.0.2 - version: 3.0.2 + version: 2.2.1(mocha@10.3.0) nyc: specifier: ^15.1.0 version: 15.1.0 prettier: specifier: ^3.1.1 - version: 3.1.1 + version: 3.2.5 sinon: specifier: ^17.0.1 version: 17.0.1 supertest: specifier: ^6.3.3 - version: 6.3.3 - ts-node: - specifier: ^10.9.2 - version: 10.9.2(@types/node@20.10.7)(typescript@5.3.3) + version: 6.3.4 + tsup: + specifier: ^8.0.2 + version: 8.0.2(typescript@5.3.3) + tsx: + specifier: ^4.7.1 + version: 4.7.1 typedoc: specifier: ^0.25.6 - version: 0.25.6(typescript@5.3.3) + version: 0.25.9(typescript@5.3.3) typedoc-plugin-external-module-map: specifier: ^2.0.1 - version: 2.0.1(typedoc@0.25.6) + version: 2.0.1(typedoc@0.25.9) typedoc-plugin-markdown: specifier: ^3.17.1 - version: 3.17.1(typedoc@0.25.6) + version: 3.17.1(typedoc@0.25.9) packages/docker: dependencies: '@friday-ai/logger': - specifier: workspace:* + specifier: workspace:^ version: link:../logger '@types/dockerode': specifier: ^3.3.23 - version: 3.3.23 + version: 3.3.24 '@types/node': - specifier: '*' - version: 20.10.6 + specifier: ^20.11.16 + version: 20.11.22 '@types/stream-to-promise': specifier: ^2.2.4 version: 2.2.4 @@ -400,12 +389,15 @@ importers: specifier: ^3.0.0 version: 3.0.0 typescript: - specifier: '*' + specifier: ^5.3.3 version: 5.3.3 devDependencies: + '@friday-ai/tools': + specifier: workspace:^ + version: link:../tools '@types/chai': - specifier: ^4.3.11 - version: 4.3.11 + specifier: ^4.3.12 + version: 4.3.12 '@types/chai-as-promised': specifier: ^7.1.8 version: 7.1.8 @@ -413,170 +405,122 @@ importers: specifier: ^1.1.3 version: 1.1.3 '@types/chai-things': - specifier: 0.0.38 + specifier: ^0.0.38 version: 0.0.38 '@types/mocha': specifier: ^10.0.6 version: 10.0.6 '@types/sinon': - specifier: ^17.0.2 - version: 17.0.2 - '@typescript-eslint/eslint-plugin': - specifier: ^6.18.0 - version: 6.18.0(@typescript-eslint/parser@6.18.0)(eslint@8.56.0)(typescript@5.3.3) - '@typescript-eslint/parser': - specifier: ^6.18.0 - version: 6.18.0(eslint@8.56.0)(typescript@5.3.3) + specifier: ^17.0.3 + version: 17.0.3 chai: - specifier: ^4.4.0 - version: 4.4.0 + specifier: ^4.4.1 + version: 4.4.1 chai-as-promised: specifier: ^7.1.1 - version: 7.1.1(chai@4.4.0) + version: 7.1.1(chai@4.4.1) chai-like: specifier: ^1.1.1 - version: 1.1.1(chai@4.4.0) + version: 1.1.1(chai@4.4.1) chai-things: specifier: ^0.2.0 version: 0.2.0 cross-env: specifier: ^7.0.3 version: 7.0.3 - eslint: - specifier: ^8.56.0 - version: 8.56.0 - eslint-config-airbnb-base-typescript-prettier: - specifier: ^5.1.0 - version: 5.1.0(eslint-import-resolver-typescript@3.6.1) - eslint-import-resolver-typescript: - specifier: ^3.6.1 - version: 3.6.1(@typescript-eslint/parser@6.18.0)(eslint-plugin-import@2.29.1)(eslint@8.56.0) - eslint-plugin-import: - specifier: ^2.29.1 - version: 2.29.1(@typescript-eslint/parser@6.18.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.56.0) - eslint-plugin-tsdoc: - specifier: ^0.2.17 - version: 0.2.17 mocha: specifier: ^10.2.0 - version: 10.2.0 - prettier: - specifier: ^3.1.1 - version: 3.1.1 + version: 10.3.0 sinon: specifier: ^17.0.1 version: 17.0.1 - ts-node: - specifier: ^10.9.2 - version: 10.9.2(@types/node@20.10.6)(typescript@5.3.3) + tsup: + specifier: ^8.0.2 + version: 8.0.2(ts-node@10.9.2)(typescript@5.3.3) + tsx: + specifier: ^4.7.1 + version: 4.7.1 packages/logger: dependencies: '@types/node': - specifier: '*' - version: 18.11.18 + specifier: ^20.11.17 + version: 20.11.22 console-stamp: specifier: ^3.1.2 version: 3.1.2 typescript: - specifier: '*' + specifier: ^5.3.3 version: 5.3.3 devDependencies: - '@typescript-eslint/eslint-plugin': - specifier: ^6.18.0 - version: 6.18.0(@typescript-eslint/parser@6.18.0)(eslint@8.56.0)(typescript@5.3.3) - '@typescript-eslint/parser': - specifier: ^6.18.0 - version: 6.18.0(eslint@8.56.0)(typescript@5.3.3) - eslint: - specifier: ^8.56.0 - version: 8.56.0 - eslint-config-airbnb-base-typescript-prettier: - specifier: ^5.1.0 - version: 5.1.0(eslint-import-resolver-typescript@3.6.1) - eslint-import-resolver-typescript: - specifier: ^3.6.1 - version: 3.6.1(@typescript-eslint/parser@6.18.0)(eslint-plugin-import@2.29.1)(eslint@8.56.0) - eslint-plugin-import: - specifier: ^2.29.1 - version: 2.29.1(@typescript-eslint/parser@6.18.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.56.0) - eslint-plugin-tsdoc: - specifier: ^0.2.17 - version: 0.2.17 - prettier: - specifier: ^3.1.1 - version: 3.1.1 + '@friday-ai/tools': + specifier: workspace:^ + version: link:../tools + tsup: + specifier: ^8.0.2 + version: 8.0.2(ts-node@10.9.2)(typescript@5.3.3) packages/shared: dependencies: + '@types/node': + specifier: ^20.11.16 + version: 20.11.22 typescript: - specifier: '*' - version: 5.1.6 + specifier: ^5.3.3 + version: 5.3.3 devDependencies: - '@types/node': - specifier: ^20.10.6 - version: 20.10.6 - '@typescript-eslint/eslint-plugin': - specifier: ^6.18.0 - version: 6.18.0(@typescript-eslint/parser@6.18.0)(eslint@8.56.0)(typescript@5.1.6) - '@typescript-eslint/parser': - specifier: ^6.18.0 - version: 6.18.0(eslint@8.56.0)(typescript@5.1.6) - eslint: - specifier: ^8.56.0 - version: 8.56.0 - eslint-config-airbnb-base-typescript-prettier: - specifier: ^5.1.0 - version: 5.1.0(eslint-import-resolver-typescript@3.6.1) - eslint-import-resolver-typescript: - specifier: ^3.6.1 - version: 3.6.1(@typescript-eslint/parser@6.18.0)(eslint-plugin-import@2.29.1)(eslint@8.56.0) - eslint-plugin-import: - specifier: ^2.29.1 - version: 2.29.1(@typescript-eslint/parser@6.18.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.56.0) - eslint-plugin-tsdoc: - specifier: ^0.2.17 - version: 0.2.17 - prettier: - specifier: ^3.1.1 - version: 3.1.1 + '@friday-ai/tools': + specifier: workspace:^ + version: link:../tools + tsup: + specifier: ^8.0.2 + version: 8.0.2(ts-node@10.9.2)(typescript@5.3.3) packages/tools: dependencies: + '@types/node': + specifier: ^20.11.16 + version: 20.11.22 typescript: - specifier: '*' + specifier: ^5.3.3 version: 5.3.3 devDependencies: '@typescript-eslint/eslint-plugin': - specifier: ^6.18.0 - version: 6.18.0(@typescript-eslint/parser@6.18.0)(eslint@8.56.0)(typescript@5.3.3) + specifier: ^6.17.0 + version: 6.21.0(@typescript-eslint/parser@6.21.0)(eslint@8.57.0)(typescript@5.3.3) '@typescript-eslint/parser': - specifier: ^6.18.0 - version: 6.18.0(eslint@8.56.0)(typescript@5.3.3) + specifier: ^6.17.0 + version: 6.21.0(eslint@8.57.0)(typescript@5.3.3) eslint: specifier: ^8.56.0 - version: 8.56.0 + version: 8.57.0 eslint-config-airbnb-base-typescript-prettier: specifier: ^5.1.0 version: 5.1.0(eslint-import-resolver-typescript@3.6.1) + eslint-config-prettier: + specifier: ^9.1.0 + version: 9.1.0(eslint@8.57.0) + eslint-config-turbo: + specifier: ^1.11.3 + version: 1.12.4(eslint@8.57.0) eslint-import-resolver-typescript: specifier: ^3.6.1 - version: 3.6.1(@typescript-eslint/parser@6.18.0)(eslint-plugin-import@2.29.1)(eslint@8.56.0) + version: 3.6.1(@typescript-eslint/parser@6.21.0)(eslint-plugin-import@2.29.1)(eslint@8.57.0) eslint-plugin-import: specifier: ^2.29.1 - version: 2.29.1(@typescript-eslint/parser@6.18.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.56.0) + version: 2.29.1(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0) eslint-plugin-jsx-a11y: specifier: ^6.8.0 - version: 6.8.0(eslint@8.56.0) - eslint-plugin-react: - specifier: ^7.33.2 - version: 7.33.2(eslint@8.56.0) + version: 6.8.0(eslint@8.57.0) + eslint-plugin-only-warn: + specifier: ^1.1.0 + version: 1.1.0 eslint-plugin-tsdoc: specifier: ^0.2.17 version: 0.2.17 prettier: - specifier: ^3.1.1 - version: 3.1.1 + specifier: ^3.2.5 + version: 3.2.5 packages: @@ -589,8 +533,8 @@ packages: resolution: {integrity: sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==} engines: {node: '>=6.0.0'} dependencies: - '@jridgewell/gen-mapping': 0.3.3 - '@jridgewell/trace-mapping': 0.3.20 + '@jridgewell/gen-mapping': 0.3.4 + '@jridgewell/trace-mapping': 0.3.23 dev: true /@apideck/better-ajv-errors@0.3.6(ajv@8.12.0): @@ -610,7 +554,7 @@ packages: requiresBuild: true dependencies: '@aws-crypto/util': 3.0.0 - '@aws-sdk/types': 3.485.0 + '@aws-sdk/types': 3.523.0 tslib: 1.14.1 dev: false optional: true @@ -631,8 +575,8 @@ packages: '@aws-crypto/sha256-js': 3.0.0 '@aws-crypto/supports-web-crypto': 3.0.0 '@aws-crypto/util': 3.0.0 - '@aws-sdk/types': 3.485.0 - '@aws-sdk/util-locate-window': 3.465.0 + '@aws-sdk/types': 3.523.0 + '@aws-sdk/util-locate-window': 3.495.0 '@aws-sdk/util-utf8-browser': 3.259.0 tslib: 1.14.1 dev: false @@ -643,7 +587,7 @@ packages: requiresBuild: true dependencies: '@aws-crypto/util': 3.0.0 - '@aws-sdk/types': 3.485.0 + '@aws-sdk/types': 3.523.0 tslib: 1.14.1 dev: false optional: true @@ -660,472 +604,492 @@ packages: resolution: {integrity: sha512-2OJlpeJpCR48CC8r+uKVChzs9Iungj9wkZrl8Z041DWEWvyIHILYKCPNzJghKsivj+S3mLo6BVc7mBNzdxA46w==} requiresBuild: true dependencies: - '@aws-sdk/types': 3.485.0 + '@aws-sdk/types': 3.523.0 '@aws-sdk/util-utf8-browser': 3.259.0 tslib: 1.14.1 dev: false optional: true - /@aws-sdk/client-cognito-identity@3.485.0: - resolution: {integrity: sha512-1SYhvRu/dNqQ5HcIgm7wIpyn1FsthbgG04o6QyVAnfOxmawFt4nqCEtNCwsmlX7o1ZCTYY+qNrozb7XZy+GKSQ==} + /@aws-sdk/client-cognito-identity@3.523.0: + resolution: {integrity: sha512-Jdyaf6HPGF9cnaB+M/8t90YmiXIyZPJSmQJa7oL33ZvDZeqJWsSxvJVoVvqaz6VaEWg8l716ooDADXswg9hIEA==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: '@aws-crypto/sha256-browser': 3.0.0 '@aws-crypto/sha256-js': 3.0.0 - '@aws-sdk/client-sts': 3.485.0 - '@aws-sdk/core': 3.485.0 - '@aws-sdk/credential-provider-node': 3.485.0 - '@aws-sdk/middleware-host-header': 3.485.0 - '@aws-sdk/middleware-logger': 3.485.0 - '@aws-sdk/middleware-recursion-detection': 3.485.0 - '@aws-sdk/middleware-signing': 3.485.0 - '@aws-sdk/middleware-user-agent': 3.485.0 - '@aws-sdk/region-config-resolver': 3.485.0 - '@aws-sdk/types': 3.485.0 - '@aws-sdk/util-endpoints': 3.485.0 - '@aws-sdk/util-user-agent-browser': 3.485.0 - '@aws-sdk/util-user-agent-node': 3.485.0 - '@smithy/config-resolver': 2.0.23 - '@smithy/core': 1.2.2 - '@smithy/fetch-http-handler': 2.3.2 - '@smithy/hash-node': 2.0.18 - '@smithy/invalid-dependency': 2.0.16 - '@smithy/middleware-content-length': 2.0.18 - '@smithy/middleware-endpoint': 2.3.0 - '@smithy/middleware-retry': 2.0.26 - '@smithy/middleware-serde': 2.0.16 - '@smithy/middleware-stack': 2.0.10 - '@smithy/node-config-provider': 2.1.9 - '@smithy/node-http-handler': 2.2.2 - '@smithy/protocol-http': 3.0.12 - '@smithy/smithy-client': 2.2.1 - '@smithy/types': 2.8.0 - '@smithy/url-parser': 2.0.16 - '@smithy/util-base64': 2.0.1 - '@smithy/util-body-length-browser': 2.0.1 - '@smithy/util-body-length-node': 2.1.0 - '@smithy/util-defaults-mode-browser': 2.0.24 - '@smithy/util-defaults-mode-node': 2.0.32 - '@smithy/util-endpoints': 1.0.8 - '@smithy/util-retry': 2.0.9 - '@smithy/util-utf8': 2.0.2 + '@aws-sdk/client-sts': 3.523.0(@aws-sdk/credential-provider-node@3.523.0) + '@aws-sdk/core': 3.523.0 + '@aws-sdk/credential-provider-node': 3.523.0 + '@aws-sdk/middleware-host-header': 3.523.0 + '@aws-sdk/middleware-logger': 3.523.0 + '@aws-sdk/middleware-recursion-detection': 3.523.0 + '@aws-sdk/middleware-user-agent': 3.523.0 + '@aws-sdk/region-config-resolver': 3.523.0 + '@aws-sdk/types': 3.523.0 + '@aws-sdk/util-endpoints': 3.523.0 + '@aws-sdk/util-user-agent-browser': 3.523.0 + '@aws-sdk/util-user-agent-node': 3.523.0 + '@smithy/config-resolver': 2.1.4 + '@smithy/core': 1.3.5 + '@smithy/fetch-http-handler': 2.4.3 + '@smithy/hash-node': 2.1.3 + '@smithy/invalid-dependency': 2.1.3 + '@smithy/middleware-content-length': 2.1.3 + '@smithy/middleware-endpoint': 2.4.4 + '@smithy/middleware-retry': 2.1.4 + '@smithy/middleware-serde': 2.1.3 + '@smithy/middleware-stack': 2.1.3 + '@smithy/node-config-provider': 2.2.4 + '@smithy/node-http-handler': 2.4.1 + '@smithy/protocol-http': 3.2.1 + '@smithy/smithy-client': 2.4.2 + '@smithy/types': 2.10.1 + '@smithy/url-parser': 2.1.3 + '@smithy/util-base64': 2.1.1 + '@smithy/util-body-length-browser': 2.1.1 + '@smithy/util-body-length-node': 2.2.1 + '@smithy/util-defaults-mode-browser': 2.1.4 + '@smithy/util-defaults-mode-node': 2.2.3 + '@smithy/util-endpoints': 1.1.4 + '@smithy/util-middleware': 2.1.3 + '@smithy/util-retry': 2.1.3 + '@smithy/util-utf8': 2.1.1 tslib: 2.6.2 transitivePeerDependencies: - aws-crt dev: false optional: true - /@aws-sdk/client-sso@3.485.0: - resolution: {integrity: sha512-apN2bEn0PZs0jD4jAfvwO3dlWqw9YIQJ6TAudM1bd3S5vzWqlBBcLfQpK6taHoQaI+WqgUWXLuOf7gRFbGXKPg==} + /@aws-sdk/client-sso-oidc@3.523.0(@aws-sdk/credential-provider-node@3.523.0): + resolution: {integrity: sha512-OktkdiuJ5DtYgNrJlo53Tf7pJ+UWfOt7V7or0ije6MysLP18GwlTkbg2UE4EUtfOxt/baXxHMlExB1vmRtlATw==} engines: {node: '>=14.0.0'} requiresBuild: true + peerDependencies: + '@aws-sdk/credential-provider-node': ^3.523.0 dependencies: '@aws-crypto/sha256-browser': 3.0.0 '@aws-crypto/sha256-js': 3.0.0 - '@aws-sdk/core': 3.485.0 - '@aws-sdk/middleware-host-header': 3.485.0 - '@aws-sdk/middleware-logger': 3.485.0 - '@aws-sdk/middleware-recursion-detection': 3.485.0 - '@aws-sdk/middleware-user-agent': 3.485.0 - '@aws-sdk/region-config-resolver': 3.485.0 - '@aws-sdk/types': 3.485.0 - '@aws-sdk/util-endpoints': 3.485.0 - '@aws-sdk/util-user-agent-browser': 3.485.0 - '@aws-sdk/util-user-agent-node': 3.485.0 - '@smithy/config-resolver': 2.0.23 - '@smithy/core': 1.2.2 - '@smithy/fetch-http-handler': 2.3.2 - '@smithy/hash-node': 2.0.18 - '@smithy/invalid-dependency': 2.0.16 - '@smithy/middleware-content-length': 2.0.18 - '@smithy/middleware-endpoint': 2.3.0 - '@smithy/middleware-retry': 2.0.26 - '@smithy/middleware-serde': 2.0.16 - '@smithy/middleware-stack': 2.0.10 - '@smithy/node-config-provider': 2.1.9 - '@smithy/node-http-handler': 2.2.2 - '@smithy/protocol-http': 3.0.12 - '@smithy/smithy-client': 2.2.1 - '@smithy/types': 2.8.0 - '@smithy/url-parser': 2.0.16 - '@smithy/util-base64': 2.0.1 - '@smithy/util-body-length-browser': 2.0.1 - '@smithy/util-body-length-node': 2.1.0 - '@smithy/util-defaults-mode-browser': 2.0.24 - '@smithy/util-defaults-mode-node': 2.0.32 - '@smithy/util-endpoints': 1.0.8 - '@smithy/util-retry': 2.0.9 - '@smithy/util-utf8': 2.0.2 + '@aws-sdk/client-sts': 3.523.0(@aws-sdk/credential-provider-node@3.523.0) + '@aws-sdk/core': 3.523.0 + '@aws-sdk/credential-provider-node': 3.523.0 + '@aws-sdk/middleware-host-header': 3.523.0 + '@aws-sdk/middleware-logger': 3.523.0 + '@aws-sdk/middleware-recursion-detection': 3.523.0 + '@aws-sdk/middleware-user-agent': 3.523.0 + '@aws-sdk/region-config-resolver': 3.523.0 + '@aws-sdk/types': 3.523.0 + '@aws-sdk/util-endpoints': 3.523.0 + '@aws-sdk/util-user-agent-browser': 3.523.0 + '@aws-sdk/util-user-agent-node': 3.523.0 + '@smithy/config-resolver': 2.1.4 + '@smithy/core': 1.3.5 + '@smithy/fetch-http-handler': 2.4.3 + '@smithy/hash-node': 2.1.3 + '@smithy/invalid-dependency': 2.1.3 + '@smithy/middleware-content-length': 2.1.3 + '@smithy/middleware-endpoint': 2.4.4 + '@smithy/middleware-retry': 2.1.4 + '@smithy/middleware-serde': 2.1.3 + '@smithy/middleware-stack': 2.1.3 + '@smithy/node-config-provider': 2.2.4 + '@smithy/node-http-handler': 2.4.1 + '@smithy/protocol-http': 3.2.1 + '@smithy/smithy-client': 2.4.2 + '@smithy/types': 2.10.1 + '@smithy/url-parser': 2.1.3 + '@smithy/util-base64': 2.1.1 + '@smithy/util-body-length-browser': 2.1.1 + '@smithy/util-body-length-node': 2.2.1 + '@smithy/util-defaults-mode-browser': 2.1.4 + '@smithy/util-defaults-mode-node': 2.2.3 + '@smithy/util-endpoints': 1.1.4 + '@smithy/util-middleware': 2.1.3 + '@smithy/util-retry': 2.1.3 + '@smithy/util-utf8': 2.1.1 tslib: 2.6.2 transitivePeerDependencies: - aws-crt dev: false optional: true - /@aws-sdk/client-sts@3.485.0: - resolution: {integrity: sha512-PI4q36kVF0fpIPZyeQhrwwJZ6SRkOGvU3rX5Qn4b5UY5X+Ct1aLhqSX8/OB372UZIcnh6eSvERu8POHleDO7Jw==} + /@aws-sdk/client-sso@3.523.0: + resolution: {integrity: sha512-vob/Tk9bIr6VIyzScBWsKpP92ACI6/aOXBL2BITgvRWl5Umqi1jXFtfssj/N2UJHM4CBMRwxIJ33InfN0gPxZw==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: '@aws-crypto/sha256-browser': 3.0.0 '@aws-crypto/sha256-js': 3.0.0 - '@aws-sdk/core': 3.485.0 - '@aws-sdk/credential-provider-node': 3.485.0 - '@aws-sdk/middleware-host-header': 3.485.0 - '@aws-sdk/middleware-logger': 3.485.0 - '@aws-sdk/middleware-recursion-detection': 3.485.0 - '@aws-sdk/middleware-user-agent': 3.485.0 - '@aws-sdk/region-config-resolver': 3.485.0 - '@aws-sdk/types': 3.485.0 - '@aws-sdk/util-endpoints': 3.485.0 - '@aws-sdk/util-user-agent-browser': 3.485.0 - '@aws-sdk/util-user-agent-node': 3.485.0 - '@smithy/config-resolver': 2.0.23 - '@smithy/core': 1.2.2 - '@smithy/fetch-http-handler': 2.3.2 - '@smithy/hash-node': 2.0.18 - '@smithy/invalid-dependency': 2.0.16 - '@smithy/middleware-content-length': 2.0.18 - '@smithy/middleware-endpoint': 2.3.0 - '@smithy/middleware-retry': 2.0.26 - '@smithy/middleware-serde': 2.0.16 - '@smithy/middleware-stack': 2.0.10 - '@smithy/node-config-provider': 2.1.9 - '@smithy/node-http-handler': 2.2.2 - '@smithy/protocol-http': 3.0.12 - '@smithy/smithy-client': 2.2.1 - '@smithy/types': 2.8.0 - '@smithy/url-parser': 2.0.16 - '@smithy/util-base64': 2.0.1 - '@smithy/util-body-length-browser': 2.0.1 - '@smithy/util-body-length-node': 2.1.0 - '@smithy/util-defaults-mode-browser': 2.0.24 - '@smithy/util-defaults-mode-node': 2.0.32 - '@smithy/util-endpoints': 1.0.8 - '@smithy/util-middleware': 2.0.9 - '@smithy/util-retry': 2.0.9 - '@smithy/util-utf8': 2.0.2 - fast-xml-parser: 4.2.5 + '@aws-sdk/core': 3.523.0 + '@aws-sdk/middleware-host-header': 3.523.0 + '@aws-sdk/middleware-logger': 3.523.0 + '@aws-sdk/middleware-recursion-detection': 3.523.0 + '@aws-sdk/middleware-user-agent': 3.523.0 + '@aws-sdk/region-config-resolver': 3.523.0 + '@aws-sdk/types': 3.523.0 + '@aws-sdk/util-endpoints': 3.523.0 + '@aws-sdk/util-user-agent-browser': 3.523.0 + '@aws-sdk/util-user-agent-node': 3.523.0 + '@smithy/config-resolver': 2.1.4 + '@smithy/core': 1.3.5 + '@smithy/fetch-http-handler': 2.4.3 + '@smithy/hash-node': 2.1.3 + '@smithy/invalid-dependency': 2.1.3 + '@smithy/middleware-content-length': 2.1.3 + '@smithy/middleware-endpoint': 2.4.4 + '@smithy/middleware-retry': 2.1.4 + '@smithy/middleware-serde': 2.1.3 + '@smithy/middleware-stack': 2.1.3 + '@smithy/node-config-provider': 2.2.4 + '@smithy/node-http-handler': 2.4.1 + '@smithy/protocol-http': 3.2.1 + '@smithy/smithy-client': 2.4.2 + '@smithy/types': 2.10.1 + '@smithy/url-parser': 2.1.3 + '@smithy/util-base64': 2.1.1 + '@smithy/util-body-length-browser': 2.1.1 + '@smithy/util-body-length-node': 2.2.1 + '@smithy/util-defaults-mode-browser': 2.1.4 + '@smithy/util-defaults-mode-node': 2.2.3 + '@smithy/util-endpoints': 1.1.4 + '@smithy/util-middleware': 2.1.3 + '@smithy/util-retry': 2.1.3 + '@smithy/util-utf8': 2.1.1 tslib: 2.6.2 transitivePeerDependencies: - aws-crt dev: false optional: true - /@aws-sdk/core@3.485.0: - resolution: {integrity: sha512-Yvi80DQcbjkYCft471ClE3HuetuNVqntCs6eFOomDcrJaqdOFrXv2kJAxky84MRA/xb7bGlDGAPbTuj1ICputg==} + /@aws-sdk/client-sts@3.523.0(@aws-sdk/credential-provider-node@3.523.0): + resolution: {integrity: sha512-ggAkL8szaJkqD8oOsS68URJ9XMDbLA/INO/NPZJqv9BhmftecJvfy43uUVWGNs6n4YXNzfF0Y+zQ3DT0fZkv9g==} engines: {node: '>=14.0.0'} requiresBuild: true + peerDependencies: + '@aws-sdk/credential-provider-node': ^3.523.0 dependencies: - '@smithy/core': 1.2.2 - '@smithy/protocol-http': 3.0.12 - '@smithy/signature-v4': 2.0.19 - '@smithy/smithy-client': 2.2.1 - '@smithy/types': 2.8.0 + '@aws-crypto/sha256-browser': 3.0.0 + '@aws-crypto/sha256-js': 3.0.0 + '@aws-sdk/core': 3.523.0 + '@aws-sdk/credential-provider-node': 3.523.0 + '@aws-sdk/middleware-host-header': 3.523.0 + '@aws-sdk/middleware-logger': 3.523.0 + '@aws-sdk/middleware-recursion-detection': 3.523.0 + '@aws-sdk/middleware-user-agent': 3.523.0 + '@aws-sdk/region-config-resolver': 3.523.0 + '@aws-sdk/types': 3.523.0 + '@aws-sdk/util-endpoints': 3.523.0 + '@aws-sdk/util-user-agent-browser': 3.523.0 + '@aws-sdk/util-user-agent-node': 3.523.0 + '@smithy/config-resolver': 2.1.4 + '@smithy/core': 1.3.5 + '@smithy/fetch-http-handler': 2.4.3 + '@smithy/hash-node': 2.1.3 + '@smithy/invalid-dependency': 2.1.3 + '@smithy/middleware-content-length': 2.1.3 + '@smithy/middleware-endpoint': 2.4.4 + '@smithy/middleware-retry': 2.1.4 + '@smithy/middleware-serde': 2.1.3 + '@smithy/middleware-stack': 2.1.3 + '@smithy/node-config-provider': 2.2.4 + '@smithy/node-http-handler': 2.4.1 + '@smithy/protocol-http': 3.2.1 + '@smithy/smithy-client': 2.4.2 + '@smithy/types': 2.10.1 + '@smithy/url-parser': 2.1.3 + '@smithy/util-base64': 2.1.1 + '@smithy/util-body-length-browser': 2.1.1 + '@smithy/util-body-length-node': 2.2.1 + '@smithy/util-defaults-mode-browser': 2.1.4 + '@smithy/util-defaults-mode-node': 2.2.3 + '@smithy/util-endpoints': 1.1.4 + '@smithy/util-middleware': 2.1.3 + '@smithy/util-retry': 2.1.3 + '@smithy/util-utf8': 2.1.1 + fast-xml-parser: 4.2.5 tslib: 2.6.2 + transitivePeerDependencies: + - aws-crt dev: false optional: true - /@aws-sdk/credential-provider-cognito-identity@3.485.0: - resolution: {integrity: sha512-XIy5h1AcDiY3V286X7KrLA5HAxLfzLGrUGBPFY+GTJGYetDhlJwFz12q6BOkIfeAhUbT2Umb4ptujX9eqpZJHQ==} + /@aws-sdk/core@3.523.0: + resolution: {integrity: sha512-JHa3ngEWkTzZ2YTn6EavcADC8gv6zZU4U9WBAleClh6ioXH0kGMBawZje3y0F0mKyLTfLhFqFUlCV5sngI/Qcw==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: - '@aws-sdk/client-cognito-identity': 3.485.0 - '@aws-sdk/types': 3.485.0 - '@smithy/property-provider': 2.0.17 - '@smithy/types': 2.8.0 + '@smithy/core': 1.3.5 + '@smithy/protocol-http': 3.2.1 + '@smithy/signature-v4': 2.1.3 + '@smithy/smithy-client': 2.4.2 + '@smithy/types': 2.10.1 tslib: 2.6.2 - transitivePeerDependencies: - - aws-crt dev: false optional: true - /@aws-sdk/credential-provider-env@3.485.0: - resolution: {integrity: sha512-3XkFgwVU1XOB33dV7t9BKJ/ptdl2iS+0dxE7ecq8aqT2/gsfKmLCae1G17P8WmdD3z0kMDTvnqM2aWgUnSOkmg==} + /@aws-sdk/credential-provider-cognito-identity@3.523.0: + resolution: {integrity: sha512-HmVtNZdo0JKBkJB00Az11ST5uPMeoIVNKdmOxcmPpdbVV+9OJK3IrlNmXAgoqmltke/KZEcdxOzd8ApQo8kx2Q==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: - '@aws-sdk/types': 3.485.0 - '@smithy/property-provider': 2.0.17 - '@smithy/types': 2.8.0 + '@aws-sdk/client-cognito-identity': 3.523.0 + '@aws-sdk/types': 3.523.0 + '@smithy/property-provider': 2.1.3 + '@smithy/types': 2.10.1 tslib: 2.6.2 + transitivePeerDependencies: + - aws-crt dev: false optional: true - /@aws-sdk/credential-provider-http@3.485.0: - resolution: {integrity: sha512-2/2Y3Z7cpKf8vbQ+FzoBPxRyb0hGJZB1YrnH7hptVi5gSVe1NiwV5ZtsDnv4cwUfOBqEu97nMXw5IrRO26S0DA==} + /@aws-sdk/credential-provider-env@3.523.0: + resolution: {integrity: sha512-Y6DWdH6/OuMDoNKVzZlNeBc6f1Yjk1lYMjANKpIhMbkRCvLJw/PYZKOZa8WpXbTYdgg9XLjKybnLIb3ww3uuzA==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: - '@aws-sdk/types': 3.485.0 - '@smithy/fetch-http-handler': 2.3.2 - '@smithy/node-http-handler': 2.2.2 - '@smithy/property-provider': 2.0.17 - '@smithy/protocol-http': 3.0.12 - '@smithy/smithy-client': 2.2.1 - '@smithy/types': 2.8.0 - '@smithy/util-stream': 2.0.24 + '@aws-sdk/types': 3.523.0 + '@smithy/property-provider': 2.1.3 + '@smithy/types': 2.10.1 tslib: 2.6.2 dev: false optional: true - /@aws-sdk/credential-provider-ini@3.485.0: - resolution: {integrity: sha512-cFYF/Bdw7EnT4viSxYpNIv3IBkri/Yb+JpQXl8uDq7bfVJfAN5qZmK07vRkg08xL6TC4F41wshhMSAucGdTwIw==} + /@aws-sdk/credential-provider-http@3.523.0: + resolution: {integrity: sha512-6YUtePbn3UFpY9qfVwHFWIVnFvVS5vsbGxxkTO02swvZBvVG4sdG0Xj0AbotUNQNY9QTCN7WkhwIrd50rfDQ9Q==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: - '@aws-sdk/credential-provider-env': 3.485.0 - '@aws-sdk/credential-provider-process': 3.485.0 - '@aws-sdk/credential-provider-sso': 3.485.0 - '@aws-sdk/credential-provider-web-identity': 3.485.0 - '@aws-sdk/types': 3.485.0 - '@smithy/credential-provider-imds': 2.1.5 - '@smithy/property-provider': 2.0.17 - '@smithy/shared-ini-file-loader': 2.2.8 - '@smithy/types': 2.8.0 + '@aws-sdk/types': 3.523.0 + '@smithy/fetch-http-handler': 2.4.3 + '@smithy/node-http-handler': 2.4.1 + '@smithy/property-provider': 2.1.3 + '@smithy/protocol-http': 3.2.1 + '@smithy/smithy-client': 2.4.2 + '@smithy/types': 2.10.1 + '@smithy/util-stream': 2.1.3 tslib: 2.6.2 - transitivePeerDependencies: - - aws-crt dev: false optional: true - /@aws-sdk/credential-provider-node@3.485.0: - resolution: {integrity: sha512-2DwzO2azkSzngifKDT61W/DL0tSzewuaFHiLJWdfc8Et3mdAQJ9x3KAj8u7XFpjIcGNqk7FiKjN+zeGUuNiEhA==} + /@aws-sdk/credential-provider-ini@3.523.0(@aws-sdk/credential-provider-node@3.523.0): + resolution: {integrity: sha512-dRch5Ts67FFRZY5r9DpiC3PM6BVHv1tRcy1b26hoqfFkxP9xYH3dsTSPBog1azIqaJa2GcXqEvKCqhghFTt4Xg==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: - '@aws-sdk/credential-provider-env': 3.485.0 - '@aws-sdk/credential-provider-ini': 3.485.0 - '@aws-sdk/credential-provider-process': 3.485.0 - '@aws-sdk/credential-provider-sso': 3.485.0 - '@aws-sdk/credential-provider-web-identity': 3.485.0 - '@aws-sdk/types': 3.485.0 - '@smithy/credential-provider-imds': 2.1.5 - '@smithy/property-provider': 2.0.17 - '@smithy/shared-ini-file-loader': 2.2.8 - '@smithy/types': 2.8.0 + '@aws-sdk/client-sts': 3.523.0(@aws-sdk/credential-provider-node@3.523.0) + '@aws-sdk/credential-provider-env': 3.523.0 + '@aws-sdk/credential-provider-process': 3.523.0 + '@aws-sdk/credential-provider-sso': 3.523.0(@aws-sdk/credential-provider-node@3.523.0) + '@aws-sdk/credential-provider-web-identity': 3.523.0(@aws-sdk/credential-provider-node@3.523.0) + '@aws-sdk/types': 3.523.0 + '@smithy/credential-provider-imds': 2.2.4 + '@smithy/property-provider': 2.1.3 + '@smithy/shared-ini-file-loader': 2.3.4 + '@smithy/types': 2.10.1 tslib: 2.6.2 transitivePeerDependencies: + - '@aws-sdk/credential-provider-node' - aws-crt dev: false optional: true - /@aws-sdk/credential-provider-process@3.485.0: - resolution: {integrity: sha512-X9qS6ZO/rDKYDgWqD1YmSX7sAUUHax9HbXlgGiTTdtfhZvQh1ZmnH6wiPu5WNliafHZFtZT2W07kgrDLPld/Ug==} + /@aws-sdk/credential-provider-node@3.523.0: + resolution: {integrity: sha512-0aW5ylA8pZmvv/8qA/+iel4acEyzSlHRiaHYL3L0qu9SSoe2a92+RHjrxKl6+Sb55eA2mRfQjaN8oOa5xiYyKA==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: - '@aws-sdk/types': 3.485.0 - '@smithy/property-provider': 2.0.17 - '@smithy/shared-ini-file-loader': 2.2.8 - '@smithy/types': 2.8.0 + '@aws-sdk/credential-provider-env': 3.523.0 + '@aws-sdk/credential-provider-http': 3.523.0 + '@aws-sdk/credential-provider-ini': 3.523.0(@aws-sdk/credential-provider-node@3.523.0) + '@aws-sdk/credential-provider-process': 3.523.0 + '@aws-sdk/credential-provider-sso': 3.523.0(@aws-sdk/credential-provider-node@3.523.0) + '@aws-sdk/credential-provider-web-identity': 3.523.0(@aws-sdk/credential-provider-node@3.523.0) + '@aws-sdk/types': 3.523.0 + '@smithy/credential-provider-imds': 2.2.4 + '@smithy/property-provider': 2.1.3 + '@smithy/shared-ini-file-loader': 2.3.4 + '@smithy/types': 2.10.1 tslib: 2.6.2 + transitivePeerDependencies: + - aws-crt dev: false optional: true - /@aws-sdk/credential-provider-sso@3.485.0: - resolution: {integrity: sha512-l0oC8GTrWh+LFQQfSmG1Jai1PX7Mhj9arb/CaS1/tmeZE0hgIXW++tvljYs/Dds4LGXUlaWG+P7BrObf6OyIXA==} + /@aws-sdk/credential-provider-process@3.523.0: + resolution: {integrity: sha512-f0LP9KlFmMvPWdKeUKYlZ6FkQAECUeZMmISsv6NKtvPCI9e4O4cLTeR09telwDK8P0HrgcRuZfXM7E30m8re0Q==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: - '@aws-sdk/client-sso': 3.485.0 - '@aws-sdk/token-providers': 3.485.0 - '@aws-sdk/types': 3.485.0 - '@smithy/property-provider': 2.0.17 - '@smithy/shared-ini-file-loader': 2.2.8 - '@smithy/types': 2.8.0 + '@aws-sdk/types': 3.523.0 + '@smithy/property-provider': 2.1.3 + '@smithy/shared-ini-file-loader': 2.3.4 + '@smithy/types': 2.10.1 tslib: 2.6.2 - transitivePeerDependencies: - - aws-crt dev: false optional: true - /@aws-sdk/credential-provider-web-identity@3.485.0: - resolution: {integrity: sha512-WpBFZFE0iXtnibH5POMEKITj/hR0YV5l2n9p8BEvKjdJ63s3Xke1RN20ZdIyKDaRDwj8adnKDgNPEnAKdS4kLw==} + /@aws-sdk/credential-provider-sso@3.523.0(@aws-sdk/credential-provider-node@3.523.0): + resolution: {integrity: sha512-/VfOJuI8ImV//W4gr+yieF/4shzWAzWYeaaNu7hv161C5YW7/OoCygwRVHSnF4KKeUGQZomZWwml5zHZ57f8xQ==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: - '@aws-sdk/types': 3.485.0 - '@smithy/property-provider': 2.0.17 - '@smithy/types': 2.8.0 + '@aws-sdk/client-sso': 3.523.0 + '@aws-sdk/token-providers': 3.523.0(@aws-sdk/credential-provider-node@3.523.0) + '@aws-sdk/types': 3.523.0 + '@smithy/property-provider': 2.1.3 + '@smithy/shared-ini-file-loader': 2.3.4 + '@smithy/types': 2.10.1 tslib: 2.6.2 + transitivePeerDependencies: + - '@aws-sdk/credential-provider-node' + - aws-crt dev: false optional: true - /@aws-sdk/credential-providers@3.485.0: - resolution: {integrity: sha512-SpGEmiVr+C9Dtc5tZFfFYXSNxbl1jShLlyZPWERHBn4QwGvdXcgPB96I0yvUuitBKrM0winHsCWH7CR/z24kmg==} + /@aws-sdk/credential-provider-web-identity@3.523.0(@aws-sdk/credential-provider-node@3.523.0): + resolution: {integrity: sha512-EyBwVoTNZrhLRIHly3JnLzy86deT2hHGoxSCrT3+cVcF1Pq3FPp6n9fUkHd6Yel+wFrjpXCRggLddPvajUoXtQ==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: - '@aws-sdk/client-cognito-identity': 3.485.0 - '@aws-sdk/client-sso': 3.485.0 - '@aws-sdk/client-sts': 3.485.0 - '@aws-sdk/credential-provider-cognito-identity': 3.485.0 - '@aws-sdk/credential-provider-env': 3.485.0 - '@aws-sdk/credential-provider-http': 3.485.0 - '@aws-sdk/credential-provider-ini': 3.485.0 - '@aws-sdk/credential-provider-node': 3.485.0 - '@aws-sdk/credential-provider-process': 3.485.0 - '@aws-sdk/credential-provider-sso': 3.485.0 - '@aws-sdk/credential-provider-web-identity': 3.485.0 - '@aws-sdk/types': 3.485.0 - '@smithy/credential-provider-imds': 2.1.5 - '@smithy/property-provider': 2.0.17 - '@smithy/types': 2.8.0 + '@aws-sdk/client-sts': 3.523.0(@aws-sdk/credential-provider-node@3.523.0) + '@aws-sdk/types': 3.523.0 + '@smithy/property-provider': 2.1.3 + '@smithy/types': 2.10.1 tslib: 2.6.2 transitivePeerDependencies: + - '@aws-sdk/credential-provider-node' - aws-crt dev: false optional: true - /@aws-sdk/middleware-host-header@3.485.0: - resolution: {integrity: sha512-1mAUX9dQNGo2RIKseVj7SI/D5abQJQ/Os8hQ0NyVAyyVYF+Yjx5PphKgfhM5yoBwuwZUl6q71XPYEGNx7be6SA==} + /@aws-sdk/credential-providers@3.523.0: + resolution: {integrity: sha512-A6uIcr4CuIq6+HTcho8soRmwDzXLVX2cs4U/WbHNOiD9rbLs/3kc4c/kkuGsMcq/pFm2dULxav0YuKyOAi3DEA==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: - '@aws-sdk/types': 3.485.0 - '@smithy/protocol-http': 3.0.12 - '@smithy/types': 2.8.0 + '@aws-sdk/client-cognito-identity': 3.523.0 + '@aws-sdk/client-sso': 3.523.0 + '@aws-sdk/client-sts': 3.523.0(@aws-sdk/credential-provider-node@3.523.0) + '@aws-sdk/credential-provider-cognito-identity': 3.523.0 + '@aws-sdk/credential-provider-env': 3.523.0 + '@aws-sdk/credential-provider-http': 3.523.0 + '@aws-sdk/credential-provider-ini': 3.523.0(@aws-sdk/credential-provider-node@3.523.0) + '@aws-sdk/credential-provider-node': 3.523.0 + '@aws-sdk/credential-provider-process': 3.523.0 + '@aws-sdk/credential-provider-sso': 3.523.0(@aws-sdk/credential-provider-node@3.523.0) + '@aws-sdk/credential-provider-web-identity': 3.523.0(@aws-sdk/credential-provider-node@3.523.0) + '@aws-sdk/types': 3.523.0 + '@smithy/credential-provider-imds': 2.2.4 + '@smithy/property-provider': 2.1.3 + '@smithy/types': 2.10.1 tslib: 2.6.2 + transitivePeerDependencies: + - aws-crt dev: false optional: true - /@aws-sdk/middleware-logger@3.485.0: - resolution: {integrity: sha512-O8IgJ0LHi5wTs5GlpI7nqmmSSagkVdd1shpGgQWY2h0kMSCII8CJZHBG97dlFFpGTvx5EDlhPNek7rl/6F4dRw==} + /@aws-sdk/middleware-host-header@3.523.0: + resolution: {integrity: sha512-4g3q7Ta9sdD9TMUuohBAkbx/e3I/juTqfKi7TPgP+8jxcYX72MOsgemAMHuP6CX27eyj4dpvjH+w4SIVDiDSmg==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: - '@aws-sdk/types': 3.485.0 - '@smithy/types': 2.8.0 + '@aws-sdk/types': 3.523.0 + '@smithy/protocol-http': 3.2.1 + '@smithy/types': 2.10.1 tslib: 2.6.2 dev: false optional: true - /@aws-sdk/middleware-recursion-detection@3.485.0: - resolution: {integrity: sha512-ZeVNATGNFcqkWDut3luVszROTUzkU5u+rJpB/xmeMoenlDAjPRiHt/ca3WkI5wAnIJ1VSNGpD2sOFLMCH+EWag==} + /@aws-sdk/middleware-logger@3.523.0: + resolution: {integrity: sha512-PeDNJNhfiaZx54LBaLTXzUaJ9LXFwDFFIksipjqjvxMafnoVcQwKbkoPUWLe5ytT4nnL1LogD3s55mERFUsnwg==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: - '@aws-sdk/types': 3.485.0 - '@smithy/protocol-http': 3.0.12 - '@smithy/types': 2.8.0 + '@aws-sdk/types': 3.523.0 + '@smithy/types': 2.10.1 tslib: 2.6.2 dev: false optional: true - /@aws-sdk/middleware-signing@3.485.0: - resolution: {integrity: sha512-41xzT2p1sOibhsLkdE5rwPJkNbBtKD8Gp36/ySfu0KE415wfXKacElSVxAaBw39/j7iSWDYqqybeEYbAzk+3GQ==} + /@aws-sdk/middleware-recursion-detection@3.523.0: + resolution: {integrity: sha512-nZ3Vt7ehfSDYnrcg/aAfjjvpdE+61B3Zk68i6/hSUIegT3IH9H1vSW67NDKVp+50hcEfzWwM2HMPXxlzuyFyrw==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: - '@aws-sdk/types': 3.485.0 - '@smithy/property-provider': 2.0.17 - '@smithy/protocol-http': 3.0.12 - '@smithy/signature-v4': 2.0.19 - '@smithy/types': 2.8.0 - '@smithy/util-middleware': 2.0.9 + '@aws-sdk/types': 3.523.0 + '@smithy/protocol-http': 3.2.1 + '@smithy/types': 2.10.1 tslib: 2.6.2 dev: false optional: true - /@aws-sdk/middleware-user-agent@3.485.0: - resolution: {integrity: sha512-CddCVOn+OPQ0CcchketIg+WF6v+MDLAf3GOYTR2htUxxIm7HABuRd6R3kvQ5Jny9CV8gMt22G1UZITsFexSJlQ==} + /@aws-sdk/middleware-user-agent@3.523.0: + resolution: {integrity: sha512-5OoKkmAPNaxLgJuS65gByW1QknGvvXdqzrIMXLsm9LjbsphTOscyvT439qk3Jf08TL4Zlw2x+pZMG7dZYuMAhQ==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: - '@aws-sdk/types': 3.485.0 - '@aws-sdk/util-endpoints': 3.485.0 - '@smithy/protocol-http': 3.0.12 - '@smithy/types': 2.8.0 + '@aws-sdk/types': 3.523.0 + '@aws-sdk/util-endpoints': 3.523.0 + '@smithy/protocol-http': 3.2.1 + '@smithy/types': 2.10.1 tslib: 2.6.2 dev: false optional: true - /@aws-sdk/region-config-resolver@3.485.0: - resolution: {integrity: sha512-2FB2EQ0sIE+YgFqGtkE1lDIMIL6nYe6MkOHBwBM7bommadKIrbbr2L22bPZGs3ReTsxiJabjzxbuCAVhrpHmhg==} + /@aws-sdk/region-config-resolver@3.523.0: + resolution: {integrity: sha512-IypIAecBc8b4jM0uVBEj90NYaIsc0vuLdSFyH4LPO7is4rQUet4CkkD+S036NvDdcdxBsQ4hJZBmWrqiizMHhQ==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: - '@smithy/node-config-provider': 2.1.9 - '@smithy/types': 2.8.0 - '@smithy/util-config-provider': 2.1.0 - '@smithy/util-middleware': 2.0.9 + '@aws-sdk/types': 3.523.0 + '@smithy/node-config-provider': 2.2.4 + '@smithy/types': 2.10.1 + '@smithy/util-config-provider': 2.2.1 + '@smithy/util-middleware': 2.1.3 tslib: 2.6.2 dev: false optional: true - /@aws-sdk/token-providers@3.485.0: - resolution: {integrity: sha512-kOXA1WKIVIFNRqHL8ynVZ3hCKLsgnEmGr2iDR6agDNw5fYIlCO/6N2xR6QdGcLTvUUbwOlz4OvKLUQnWMKAnnA==} + /@aws-sdk/token-providers@3.523.0(@aws-sdk/credential-provider-node@3.523.0): + resolution: {integrity: sha512-m3sPEnLuGV3JY9A8ytcz90SogVtjxEyIxUDFeswxY4C5wP/36yOq3ivenRu07dH+QIJnBhsQdjnHwJfrIetG6g==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: - '@aws-crypto/sha256-browser': 3.0.0 - '@aws-crypto/sha256-js': 3.0.0 - '@aws-sdk/middleware-host-header': 3.485.0 - '@aws-sdk/middleware-logger': 3.485.0 - '@aws-sdk/middleware-recursion-detection': 3.485.0 - '@aws-sdk/middleware-user-agent': 3.485.0 - '@aws-sdk/region-config-resolver': 3.485.0 - '@aws-sdk/types': 3.485.0 - '@aws-sdk/util-endpoints': 3.485.0 - '@aws-sdk/util-user-agent-browser': 3.485.0 - '@aws-sdk/util-user-agent-node': 3.485.0 - '@smithy/config-resolver': 2.0.23 - '@smithy/fetch-http-handler': 2.3.2 - '@smithy/hash-node': 2.0.18 - '@smithy/invalid-dependency': 2.0.16 - '@smithy/middleware-content-length': 2.0.18 - '@smithy/middleware-endpoint': 2.3.0 - '@smithy/middleware-retry': 2.0.26 - '@smithy/middleware-serde': 2.0.16 - '@smithy/middleware-stack': 2.0.10 - '@smithy/node-config-provider': 2.1.9 - '@smithy/node-http-handler': 2.2.2 - '@smithy/property-provider': 2.0.17 - '@smithy/protocol-http': 3.0.12 - '@smithy/shared-ini-file-loader': 2.2.8 - '@smithy/smithy-client': 2.2.1 - '@smithy/types': 2.8.0 - '@smithy/url-parser': 2.0.16 - '@smithy/util-base64': 2.0.1 - '@smithy/util-body-length-browser': 2.0.1 - '@smithy/util-body-length-node': 2.1.0 - '@smithy/util-defaults-mode-browser': 2.0.24 - '@smithy/util-defaults-mode-node': 2.0.32 - '@smithy/util-endpoints': 1.0.8 - '@smithy/util-retry': 2.0.9 - '@smithy/util-utf8': 2.0.2 + '@aws-sdk/client-sso-oidc': 3.523.0(@aws-sdk/credential-provider-node@3.523.0) + '@aws-sdk/types': 3.523.0 + '@smithy/property-provider': 2.1.3 + '@smithy/shared-ini-file-loader': 2.3.4 + '@smithy/types': 2.10.1 tslib: 2.6.2 transitivePeerDependencies: + - '@aws-sdk/credential-provider-node' - aws-crt dev: false optional: true - /@aws-sdk/types@3.485.0: - resolution: {integrity: sha512-+QW32YQdvZRDOwrAQPo/qCyXoSjgXB6RwJwCwkd8ebJXRXw6tmGKIHaZqYHt/LtBymvnaBgBBADNa4+qFvlOFw==} + /@aws-sdk/types@3.523.0: + resolution: {integrity: sha512-AqGIu4u+SxPiUuNBp2acCVcq80KDUFjxe6e3cMTvKWTzCbrVk1AXv0dAaJnCmdkWIha6zJDWxpIk/aL4EGhZ9A==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: - '@smithy/types': 2.8.0 + '@smithy/types': 2.10.1 tslib: 2.6.2 dev: false optional: true - /@aws-sdk/util-endpoints@3.485.0: - resolution: {integrity: sha512-dTd642F7nJisApF8YjniqQ6U59CP/DCtar11fXf1nG9YNBCBsNNVw5ZfZb5nSNzaIdy27mQioWTCV18JEj1mxg==} + /@aws-sdk/util-endpoints@3.523.0: + resolution: {integrity: sha512-f4qe4AdafjAZoVGoVt69Jb2rXCgo306OOobSJ/f4bhQ0zgAjGELKJATNRRe0J7P28+ffmSxeuYwM3r4gDkD/QA==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: - '@aws-sdk/types': 3.485.0 - '@smithy/util-endpoints': 1.0.8 + '@aws-sdk/types': 3.523.0 + '@smithy/types': 2.10.1 + '@smithy/util-endpoints': 1.1.4 tslib: 2.6.2 dev: false optional: true - /@aws-sdk/util-locate-window@3.465.0: - resolution: {integrity: sha512-f+QNcWGswredzC1ExNAB/QzODlxwaTdXkNT5cvke2RLX8SFU5pYk6h4uCtWC0vWPELzOfMfloBrJefBzlarhsw==} + /@aws-sdk/util-locate-window@3.495.0: + resolution: {integrity: sha512-MfaPXT0kLX2tQaR90saBT9fWQq2DHqSSJRzW+MZWsmF+y5LGCOhO22ac/2o6TKSQm7h0HRc2GaADqYYYor62yg==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: @@ -1133,19 +1097,19 @@ packages: dev: false optional: true - /@aws-sdk/util-user-agent-browser@3.485.0: - resolution: {integrity: sha512-QliWbjg0uOhGTcWgWTKPMY0SBi07g253DjwrCINT1auqDrdQPxa10xozpZExBYjAK2KuhYDNUzni127ae6MHOw==} + /@aws-sdk/util-user-agent-browser@3.523.0: + resolution: {integrity: sha512-6ZRNdGHX6+HQFqTbIA5+i8RWzxFyxsZv8D3soRfpdyWIKkzhSz8IyRKXRciwKBJDaC7OX2jzGE90wxRQft27nA==} requiresBuild: true dependencies: - '@aws-sdk/types': 3.485.0 - '@smithy/types': 2.8.0 + '@aws-sdk/types': 3.523.0 + '@smithy/types': 2.10.1 bowser: 2.11.0 tslib: 2.6.2 dev: false optional: true - /@aws-sdk/util-user-agent-node@3.485.0: - resolution: {integrity: sha512-QF+aQ9jnDlPUlFBxBRqOylPf86xQuD3aEPpOErR+50qJawVvKa94uiAFdvtI9jv6hnRZmuFsTj2rsyytnbAYBA==} + /@aws-sdk/util-user-agent-node@3.523.0: + resolution: {integrity: sha512-tW7vliJ77EsE8J1bzFpDYCiUyrw2NTcem+J5ddiWD4HA/xNQUyX0CMOXMBZCBA31xLTIchyz0LkZHlDsmB9LUw==} engines: {node: '>=14.0.0'} requiresBuild: true peerDependencies: @@ -1154,9 +1118,9 @@ packages: aws-crt: optional: true dependencies: - '@aws-sdk/types': 3.485.0 - '@smithy/node-config-provider': 2.1.9 - '@smithy/types': 2.8.0 + '@aws-sdk/types': 3.523.0 + '@smithy/node-config-provider': 2.2.4 + '@smithy/types': 2.10.1 tslib: 2.6.2 dev: false optional: true @@ -1181,22 +1145,22 @@ packages: engines: {node: '>=6.9.0'} dev: true - /@babel/core@7.23.7: - resolution: {integrity: sha512-+UpDgowcmqe36d4NwqvKsyPMlOLNGMsfMmQ5WGCu+siCe3t3dfe9njrzGfdN4qq+bcNUt0+Vw6haRxBOycs4dw==} + /@babel/core@7.24.0: + resolution: {integrity: sha512-fQfkg0Gjkza3nf0c7/w6Xf34BW4YvzNfACRLmmb7XRLa6XHdR+K9AlJlxneFfWYf6uhOzuzZVTjF/8KfndZANw==} engines: {node: '>=6.9.0'} dependencies: '@ampproject/remapping': 2.2.1 '@babel/code-frame': 7.23.5 '@babel/generator': 7.23.6 '@babel/helper-compilation-targets': 7.23.6 - '@babel/helper-module-transforms': 7.23.3(@babel/core@7.23.7) - '@babel/helpers': 7.23.7 - '@babel/parser': 7.23.6 - '@babel/template': 7.22.15 - '@babel/traverse': 7.23.7 - '@babel/types': 7.23.6 + '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.0) + '@babel/helpers': 7.24.0 + '@babel/parser': 7.24.0 + '@babel/template': 7.24.0 + '@babel/traverse': 7.24.0 + '@babel/types': 7.24.0 convert-source-map: 2.0.0 - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4(supports-color@8.1.1) gensync: 1.0.0-beta.2 json5: 2.2.3 semver: 6.3.1 @@ -1208,9 +1172,9 @@ packages: resolution: {integrity: sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.23.6 - '@jridgewell/gen-mapping': 0.3.3 - '@jridgewell/trace-mapping': 0.3.20 + '@babel/types': 7.24.0 + '@jridgewell/gen-mapping': 0.3.4 + '@jridgewell/trace-mapping': 0.3.23 jsesc: 2.5.2 dev: true @@ -1218,14 +1182,14 @@ packages: resolution: {integrity: sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.23.6 + '@babel/types': 7.24.0 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.6 + '@babel/types': 7.24.0 dev: true /@babel/helper-compilation-targets@7.23.6: @@ -1234,49 +1198,49 @@ packages: dependencies: '@babel/compat-data': 7.23.5 '@babel/helper-validator-option': 7.23.5 - browserslist: 4.22.2 + browserslist: 4.23.0 lru-cache: 5.1.1 semver: 6.3.1 dev: true - /@babel/helper-create-class-features-plugin@7.23.7(@babel/core@7.23.7): - resolution: {integrity: sha512-xCoqR/8+BoNnXOY7RVSgv6X+o7pmT5q1d+gGcRlXYkI+9B31glE4jeejhKVpA04O1AtzOt7OSQ6VYKP5FcRl9g==} + /@babel/helper-create-class-features-plugin@7.24.0(@babel/core@7.24.0): + resolution: {integrity: sha512-QAH+vfvts51BCsNZ2PhY6HAggnlS6omLLFTsIpeqZk/MmJ6cW7tgz5yRv0fMJThcr6FmbMrENh1RgrWPTYA76g==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.23.7 + '@babel/core': 7.24.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.7) + '@babel/helper-replace-supers': 7.22.20(@babel/core@7.24.0) '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 '@babel/helper-split-export-declaration': 7.22.6 semver: 6.3.1 dev: true - /@babel/helper-create-regexp-features-plugin@7.22.15(@babel/core@7.23.7): + /@babel/helper-create-regexp-features-plugin@7.22.15(@babel/core@7.24.0): resolution: {integrity: sha512-29FkPLFjn4TPEa3RE7GpW+qbE8tlsu3jntNYNfcGsc49LphF1PQIiD+vMZ1z1xVOKt+93khA9tc2JBs3kBjA7w==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.23.7 + '@babel/core': 7.24.0 '@babel/helper-annotate-as-pure': 7.22.5 regexpu-core: 5.3.2 semver: 6.3.1 dev: true - /@babel/helper-define-polyfill-provider@0.4.4(@babel/core@7.23.7): - resolution: {integrity: sha512-QcJMILQCu2jm5TFPGA3lCpJJTeEP+mqeXooG/NZbg/h5FTFi6V0+99ahlRsW8/kRLyb24LZVCCiclDedhLKcBA==} + /@babel/helper-define-polyfill-provider@0.5.0(@babel/core@7.24.0): + resolution: {integrity: sha512-NovQquuQLAQ5HuyjCz7WQP9MjRj7dx++yspwiyUiGl9ZyadHRSql1HZh5ogRd8W8w6YM6EQ/NTB8rgjLt5W65Q==} peerDependencies: '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 dependencies: - '@babel/core': 7.23.7 + '@babel/core': 7.24.0 '@babel/helper-compilation-targets': 7.23.6 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.0 debug: 4.3.4(supports-color@5.5.0) lodash.debounce: 4.0.8 resolve: 1.22.8 @@ -1293,37 +1257,37 @@ packages: resolution: {integrity: sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==} engines: {node: '>=6.9.0'} dependencies: - '@babel/template': 7.22.15 - '@babel/types': 7.23.6 + '@babel/template': 7.24.0 + '@babel/types': 7.24.0 dev: true /@babel/helper-hoist-variables@7.22.5: resolution: {integrity: sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.23.6 + '@babel/types': 7.24.0 dev: 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.6 + '@babel/types': 7.24.0 dev: 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.6 + '@babel/types': 7.24.0 - /@babel/helper-module-transforms@7.23.3(@babel/core@7.23.7): + /@babel/helper-module-transforms@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.23.7 + '@babel/core': 7.24.0 '@babel/helper-environment-visitor': 7.22.20 '@babel/helper-module-imports': 7.22.15 '@babel/helper-simple-access': 7.22.5 @@ -1335,33 +1299,33 @@ packages: resolution: {integrity: sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.23.6 + '@babel/types': 7.24.0 dev: true - /@babel/helper-plugin-utils@7.22.5: - resolution: {integrity: sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==} + /@babel/helper-plugin-utils@7.24.0: + resolution: {integrity: sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==} engines: {node: '>=6.9.0'} dev: true - /@babel/helper-remap-async-to-generator@7.22.20(@babel/core@7.23.7): + /@babel/helper-remap-async-to-generator@7.22.20(@babel/core@7.24.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.7 + '@babel/core': 7.24.0 '@babel/helper-annotate-as-pure': 7.22.5 '@babel/helper-environment-visitor': 7.22.20 '@babel/helper-wrap-function': 7.22.20 dev: true - /@babel/helper-replace-supers@7.22.20(@babel/core@7.23.7): + /@babel/helper-replace-supers@7.22.20(@babel/core@7.24.0): resolution: {integrity: sha512-qsW0In3dbwQUbK8kejJ4R7IHVGwHJlV6lpG6UA7a9hSa2YEiAib+N1T2kr6PEeUT+Fl7najmSOS6SmAwCHK6Tw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.23.7 + '@babel/core': 7.24.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 @@ -1371,21 +1335,21 @@ packages: resolution: {integrity: sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.23.6 + '@babel/types': 7.24.0 dev: 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.6 + '@babel/types': 7.24.0 dev: 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.6 + '@babel/types': 7.24.0 dev: true /@babel/helper-string-parser@7.23.4: @@ -1406,17 +1370,17 @@ packages: engines: {node: '>=6.9.0'} dependencies: '@babel/helper-function-name': 7.23.0 - '@babel/template': 7.22.15 - '@babel/types': 7.23.6 + '@babel/template': 7.24.0 + '@babel/types': 7.24.0 dev: true - /@babel/helpers@7.23.7: - resolution: {integrity: sha512-6AMnjCoC8wjqBzDHkuqpa7jAKwvMo4dC+lr/TFBz+ucfulO1XMpDnwWPGBNwClOKZ8h6xn5N81W/R5OrcKtCbQ==} + /@babel/helpers@7.24.0: + resolution: {integrity: sha512-ulDZdc0Aj5uLc5nETsa7EPx2L7rM0YJM8r7ck7U73AXi7qOV44IHHRAYZHY6iU1rr3C5N4NtTmMRUJP6kwCWeA==} engines: {node: '>=6.9.0'} dependencies: - '@babel/template': 7.22.15 - '@babel/traverse': 7.23.7 - '@babel/types': 7.23.6 + '@babel/template': 7.24.0 + '@babel/traverse': 7.24.0 + '@babel/types': 7.24.0 transitivePeerDependencies: - supports-color dev: true @@ -1429,877 +1393,876 @@ packages: chalk: 2.4.2 js-tokens: 4.0.0 - /@babel/parser@7.23.6: - resolution: {integrity: sha512-Z2uID7YJ7oNvAI20O9X0bblw7Qqs8Q2hFy0R9tAfnfLkp5MW0UH9eUvnDSnFwKZ0AvgS1ucqR4KzvVHgnke1VQ==} + /@babel/parser@7.24.0: + resolution: {integrity: sha512-QuP/FxEAzMSjXygs8v4N9dvdXzEHN4W1oF3PxuWAtPo08UdM17u89RDMgjLn/mlc56iM0HlLmVkO/wgR+rDgHg==} engines: {node: '>=6.0.0'} hasBin: true dependencies: - '@babel/types': 7.23.6 + '@babel/types': 7.24.0 dev: true - /@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.23.3(@babel/core@7.23.7): + /@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-iRkKcCqb7iGnq9+3G6rZ+Ciz5VywC4XNRHe57lKM+jOeYAoR0lVqdeeDRfh0tQcTfw/+vBhHn926FmQhLtlFLQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.23.3(@babel/core@7.23.7): + /@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-WwlxbfMNdVEpQjZmK5mhm7oSwD3dS6eU+Iwsi4Knl9wAletWem7kaRsGOG+8UEbRyqxY4SS5zvtfXwX+jMxUwQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.13.0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 - '@babel/plugin-transform-optional-chaining': 7.23.4(@babel/core@7.23.7) + '@babel/plugin-transform-optional-chaining': 7.23.4(@babel/core@7.24.0) dev: true - /@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.23.7(@babel/core@7.23.7): + /@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.23.7(@babel/core@7.24.0): resolution: {integrity: sha512-LlRT7HgaifEpQA1ZgLVOIJZZFVPWN5iReq/7/JixwBtwcoeVGDBD53ZV28rrsLYOZs1Y/EHhA8N/Z6aazHR8cw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.23.7 + '@babel/core': 7.24.0 '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2(@babel/core@7.23.7): + /@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2(@babel/core@7.24.0): resolution: {integrity: sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 + '@babel/core': 7.24.0 dev: true - /@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.23.7): + /@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.24.0): resolution: {integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.23.7): + /@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.24.0): resolution: {integrity: sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-syntax-class-static-block@7.14.5(@babel/core@7.23.7): + /@babel/plugin-syntax-class-static-block@7.14.5(@babel/core@7.24.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.7 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-syntax-dynamic-import@7.8.3(@babel/core@7.23.7): + /@babel/plugin-syntax-dynamic-import@7.8.3(@babel/core@7.24.0): resolution: {integrity: sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-syntax-export-namespace-from@7.8.3(@babel/core@7.23.7): + /@babel/plugin-syntax-export-namespace-from@7.8.3(@babel/core@7.24.0): resolution: {integrity: sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-syntax-import-assertions@7.23.3(@babel/core@7.23.7): + /@babel/plugin-syntax-import-assertions@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-lPgDSU+SJLK3xmFDTV2ZRQAiM7UuUjGidwBywFavObCiZc1BeAAcMtHJKUya92hPHO+at63JJPLygilZard8jw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-syntax-import-attributes@7.23.3(@babel/core@7.23.7): + /@babel/plugin-syntax-import-attributes@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-pawnE0P9g10xgoP7yKr6CK63K2FMsTE+FZidZO/1PwRdzmAPVs+HS1mAURUsgaoxammTJvULUdIkEK0gOcU2tA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.23.7): + /@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.24.0): resolution: {integrity: sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.23.7): + /@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.24.0): resolution: {integrity: sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.23.7): + /@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.24.0): resolution: {integrity: sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.23.7): + /@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.24.0): resolution: {integrity: sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.23.7): + /@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.24.0): resolution: {integrity: sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.23.7): + /@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.24.0): resolution: {integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.23.7): + /@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.24.0): resolution: {integrity: sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.23.7): + /@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.24.0): resolution: {integrity: sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-syntax-private-property-in-object@7.14.5(@babel/core@7.23.7): + /@babel/plugin-syntax-private-property-in-object@7.14.5(@babel/core@7.24.0): resolution: {integrity: sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.23.7): + /@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.24.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.7 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.23.7): + /@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.24.0): resolution: {integrity: sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.7) - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.0) + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-arrow-functions@7.23.3(@babel/core@7.23.7): + /@babel/plugin-transform-arrow-functions@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-NzQcQrzaQPkaEwoTm4Mhyl8jI1huEL/WWIEvudjTCMJ9aBZNpsJbMASx7EQECtQQPS/DcnFpo0FIh3LvEO9cxQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-async-generator-functions@7.23.7(@babel/core@7.23.7): - resolution: {integrity: sha512-PdxEpL71bJp1byMG0va5gwQcXHxuEYC/BgI/e88mGTtohbZN28O5Yit0Plkkm/dBzCF/BxmbNcses1RH1T+urA==} + /@babel/plugin-transform-async-generator-functions@7.23.9(@babel/core@7.24.0): + resolution: {integrity: sha512-8Q3veQEDGe14dTYuwagbRtwxQDnytyg1JFu4/HwEMETeofocrB0U0ejBJIXoeG/t2oXZ8kzCyI0ZZfbT80VFNQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 + '@babel/core': 7.24.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.7) - '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.23.7) + '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.24.0) + '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.24.0) dev: true - /@babel/plugin-transform-async-to-generator@7.23.3(@babel/core@7.23.7): + /@babel/plugin-transform-async-to-generator@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-A7LFsKi4U4fomjqXJlZg/u0ft/n8/7n7lpffUP/ZULx/DtV9SGlNKZolHH6PE8Xl1ngCc0M11OaeZptXVkfKSw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 + '@babel/core': 7.24.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.7) + '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.24.0) dev: true - /@babel/plugin-transform-block-scoped-functions@7.23.3(@babel/core@7.23.7): + /@babel/plugin-transform-block-scoped-functions@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-vI+0sIaPIO6CNuM9Kk5VmXcMVRiOpDh7w2zZt9GXzmE/9KD70CUEVhvPR/etAeNK/FAEkhxQtXOzVF3EuRL41A==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-block-scoping@7.23.4(@babel/core@7.23.7): + /@babel/plugin-transform-block-scoping@7.23.4(@babel/core@7.24.0): resolution: {integrity: sha512-0QqbP6B6HOh7/8iNR4CQU2Th/bbRtBp4KS9vcaZd1fZ0wSh5Fyssg0UCIHwxh+ka+pNDREbVLQnHCMHKZfPwfw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-class-properties@7.23.3(@babel/core@7.23.7): + /@babel/plugin-transform-class-properties@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-uM+AN8yCIjDPccsKGlw271xjJtGii+xQIF/uMPS8H15L12jZTsLfF4o5vNO7d/oUguOyfdikHGc/yi9ge4SGIg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-create-class-features-plugin': 7.23.7(@babel/core@7.23.7) - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-create-class-features-plugin': 7.24.0(@babel/core@7.24.0) + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-class-static-block@7.23.4(@babel/core@7.23.7): + /@babel/plugin-transform-class-static-block@7.23.4(@babel/core@7.24.0): resolution: {integrity: sha512-nsWu/1M+ggti1SOALj3hfx5FXzAY06fwPJsUZD4/A5e1bWi46VUIWtD+kOX6/IdhXGsXBWllLFDSnqSCdUNydQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.12.0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-create-class-features-plugin': 7.23.7(@babel/core@7.23.7) - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.23.7) + '@babel/core': 7.24.0 + '@babel/helper-create-class-features-plugin': 7.24.0(@babel/core@7.24.0) + '@babel/helper-plugin-utils': 7.24.0 + '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.24.0) dev: true - /@babel/plugin-transform-classes@7.23.5(@babel/core@7.23.7): - resolution: {integrity: sha512-jvOTR4nicqYC9yzOHIhXG5emiFEOpappSJAl73SDSEDcybD+Puuze8Tnpb9p9qEyYup24tq891gkaygIFvWDqg==} + /@babel/plugin-transform-classes@7.23.8(@babel/core@7.24.0): + resolution: {integrity: sha512-yAYslGsY1bX6Knmg46RjiCiNSwJKv2IUC8qOdYKqMMr0491SXFhcHqOdRDeCRohOOIzwN/90C6mQ9qAKgrP7dg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 + '@babel/core': 7.24.0 '@babel/helper-annotate-as-pure': 7.22.5 '@babel/helper-compilation-targets': 7.23.6 '@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.7) + '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-replace-supers': 7.22.20(@babel/core@7.24.0) '@babel/helper-split-export-declaration': 7.22.6 globals: 11.12.0 dev: true - /@babel/plugin-transform-computed-properties@7.23.3(@babel/core@7.23.7): + /@babel/plugin-transform-computed-properties@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-dTj83UVTLw/+nbiHqQSFdwO9CbTtwq1DsDqm3CUEtDrZNET5rT5E6bIdTlOftDTDLMYxvxHNEYO4B9SLl8SLZw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/template': 7.22.15 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/template': 7.24.0 dev: true - /@babel/plugin-transform-destructuring@7.23.3(@babel/core@7.23.7): + /@babel/plugin-transform-destructuring@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-n225npDqjDIr967cMScVKHXJs7rout1q+tt50inyBCPkyZ8KxeI6d+GIbSBTT/w/9WdlWDOej3V9HE5Lgk57gw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-dotall-regex@7.23.3(@babel/core@7.23.7): + /@babel/plugin-transform-dotall-regex@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-vgnFYDHAKzFaTVp+mneDsIEbnJ2Np/9ng9iviHw3P/KVcgONxpNULEW/51Z/BaFojG2GI2GwwXck5uV1+1NOYQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.7) - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.0) + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-duplicate-keys@7.23.3(@babel/core@7.23.7): + /@babel/plugin-transform-duplicate-keys@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-RrqQ+BQmU3Oyav3J+7/myfvRCq7Tbz+kKLLshUmMwNlDHExbGL7ARhajvoBJEvc+fCguPPu887N+3RRXBVKZUA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-dynamic-import@7.23.4(@babel/core@7.23.7): + /@babel/plugin-transform-dynamic-import@7.23.4(@babel/core@7.24.0): resolution: {integrity: sha512-V6jIbLhdJK86MaLh4Jpghi8ho5fGzt3imHOBu/x0jlBaPYqDoWz4RDXjmMOfnh+JWNaQleEAByZLV0QzBT4YQQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.23.7) + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.24.0) dev: true - /@babel/plugin-transform-exponentiation-operator@7.23.3(@babel/core@7.23.7): + /@babel/plugin-transform-exponentiation-operator@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-5fhCsl1odX96u7ILKHBj4/Y8vipoqwsJMh4csSA8qFfxrZDEA4Ssku2DyNvMJSmZNOEBT750LfFPbtrnTP90BQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 + '@babel/core': 7.24.0 '@babel/helper-builder-binary-assignment-operator-visitor': 7.22.15 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-export-namespace-from@7.23.4(@babel/core@7.23.7): + /@babel/plugin-transform-export-namespace-from@7.23.4(@babel/core@7.24.0): resolution: {integrity: sha512-GzuSBcKkx62dGzZI1WVgTWvkkz84FZO5TC5T8dl/Tht/rAla6Dg/Mz9Yhypg+ezVACf/rgDuQt3kbWEv7LdUDQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.23.7) + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.24.0) dev: true - /@babel/plugin-transform-for-of@7.23.6(@babel/core@7.23.7): + /@babel/plugin-transform-for-of@7.23.6(@babel/core@7.24.0): resolution: {integrity: sha512-aYH4ytZ0qSuBbpfhuofbg/e96oQ7U2w1Aw/UQmKT+1l39uEhUPoFS3fHevDc1G0OvewyDudfMKY1OulczHzWIw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 dev: true - /@babel/plugin-transform-function-name@7.23.3(@babel/core@7.23.7): + /@babel/plugin-transform-function-name@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-I1QXp1LxIvt8yLaib49dRW5Okt7Q4oaxao6tFVKS/anCdEOMtYwWVKoiOA1p34GOWIZjUK0E+zCp7+l1pfQyiw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 + '@babel/core': 7.24.0 '@babel/helper-compilation-targets': 7.23.6 '@babel/helper-function-name': 7.23.0 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-json-strings@7.23.4(@babel/core@7.23.7): + /@babel/plugin-transform-json-strings@7.23.4(@babel/core@7.24.0): resolution: {integrity: sha512-81nTOqM1dMwZ/aRXQ59zVubN9wHGqk6UtqRK+/q+ciXmRy8fSolhGVvG09HHRGo4l6fr/c4ZhXUQH0uFW7PZbg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.23.7) + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.24.0) dev: true - /@babel/plugin-transform-literals@7.23.3(@babel/core@7.23.7): + /@babel/plugin-transform-literals@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-wZ0PIXRxnwZvl9AYpqNUxpZ5BiTGrYt7kueGQ+N5FiQ7RCOD4cm8iShd6S6ggfVIWaJf2EMk8eRzAh52RfP4rQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-logical-assignment-operators@7.23.4(@babel/core@7.23.7): + /@babel/plugin-transform-logical-assignment-operators@7.23.4(@babel/core@7.24.0): resolution: {integrity: sha512-Mc/ALf1rmZTP4JKKEhUwiORU+vcfarFVLfcFiolKUo6sewoxSEgl36ak5t+4WamRsNr6nzjZXQjM35WsU+9vbg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.23.7) + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.24.0) dev: true - /@babel/plugin-transform-member-expression-literals@7.23.3(@babel/core@7.23.7): + /@babel/plugin-transform-member-expression-literals@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-sC3LdDBDi5x96LA+Ytekz2ZPk8i/Ck+DEuDbRAll5rknJ5XRTSaPKEYwomLcs1AA8wg9b3KjIQRsnApj+q51Ag==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-modules-amd@7.23.3(@babel/core@7.23.7): + /@babel/plugin-transform-modules-amd@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-vJYQGxeKM4t8hYCKVBlZX/gtIY2I7mRGFNcm85sgXGMTBcoV3QdVtdpbcWEbzbfUIUZKwvgFT82mRvaQIebZzw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-module-transforms': 7.23.3(@babel/core@7.23.7) - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.0) + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-modules-commonjs@7.23.3(@babel/core@7.23.7): + /@babel/plugin-transform-modules-commonjs@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-aVS0F65LKsdNOtcz6FRCpE4OgsP2OFnW46qNxNIX9h3wuzaNcSQsJysuMwqSibC98HPrf2vCgtxKNwS0DAlgcA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-module-transforms': 7.23.3(@babel/core@7.23.7) - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.0) + '@babel/helper-plugin-utils': 7.24.0 '@babel/helper-simple-access': 7.22.5 dev: true - /@babel/plugin-transform-modules-systemjs@7.23.3(@babel/core@7.23.7): - resolution: {integrity: sha512-ZxyKGTkF9xT9YJuKQRo19ewf3pXpopuYQd8cDXqNzc3mUNbOME0RKMoZxviQk74hwzfQsEe66dE92MaZbdHKNQ==} + /@babel/plugin-transform-modules-systemjs@7.23.9(@babel/core@7.24.0): + resolution: {integrity: sha512-KDlPRM6sLo4o1FkiSlXoAa8edLXFsKKIda779fbLrvmeuc3itnjCtaO6RrtoaANsIJANj+Vk1zqbZIMhkCAHVw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 + '@babel/core': 7.24.0 '@babel/helper-hoist-variables': 7.22.5 - '@babel/helper-module-transforms': 7.23.3(@babel/core@7.23.7) - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.0) + '@babel/helper-plugin-utils': 7.24.0 '@babel/helper-validator-identifier': 7.22.20 dev: true - /@babel/plugin-transform-modules-umd@7.23.3(@babel/core@7.23.7): + /@babel/plugin-transform-modules-umd@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-zHsy9iXX2nIsCBFPud3jKn1IRPWg3Ing1qOZgeKV39m1ZgIdpJqvlWVeiHBZC6ITRG0MfskhYe9cLgntfSFPIg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-module-transforms': 7.23.3(@babel/core@7.23.7) - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.0) + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-named-capturing-groups-regex@7.22.5(@babel/core@7.23.7): + /@babel/plugin-transform-named-capturing-groups-regex@7.22.5(@babel/core@7.24.0): resolution: {integrity: sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.7) - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.0) + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-new-target@7.23.3(@babel/core@7.23.7): + /@babel/plugin-transform-new-target@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-YJ3xKqtJMAT5/TIZnpAR3I+K+WaDowYbN3xyxI8zxx/Gsypwf9B9h0VB+1Nh6ACAAPRS5NSRje0uVv5i79HYGQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-nullish-coalescing-operator@7.23.4(@babel/core@7.23.7): + /@babel/plugin-transform-nullish-coalescing-operator@7.23.4(@babel/core@7.24.0): resolution: {integrity: sha512-jHE9EVVqHKAQx+VePv5LLGHjmHSJR76vawFPTdlxR/LVJPfOEGxREQwQfjuZEOPTwG92X3LINSh3M40Rv4zpVA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.23.7) + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.24.0) dev: true - /@babel/plugin-transform-numeric-separator@7.23.4(@babel/core@7.23.7): + /@babel/plugin-transform-numeric-separator@7.23.4(@babel/core@7.24.0): resolution: {integrity: sha512-mps6auzgwjRrwKEZA05cOwuDc9FAzoyFS4ZsG/8F43bTLf/TgkJg7QXOrPO1JO599iA3qgK9MXdMGOEC8O1h6Q==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.23.7) + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.24.0) dev: true - /@babel/plugin-transform-object-rest-spread@7.23.4(@babel/core@7.23.7): - resolution: {integrity: sha512-9x9K1YyeQVw0iOXJlIzwm8ltobIIv7j2iLyP2jIhEbqPRQ7ScNgwQufU2I0Gq11VjyG4gI4yMXt2VFags+1N3g==} + /@babel/plugin-transform-object-rest-spread@7.24.0(@babel/core@7.24.0): + resolution: {integrity: sha512-y/yKMm7buHpFFXfxVFS4Vk1ToRJDilIa6fKRioB9Vjichv58TDGXTvqV0dN7plobAmTW5eSEGXDngE+Mm+uO+w==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: '@babel/compat-data': 7.23.5 - '@babel/core': 7.23.7 + '@babel/core': 7.24.0 '@babel/helper-compilation-targets': 7.23.6 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.23.7) - '@babel/plugin-transform-parameters': 7.23.3(@babel/core@7.23.7) + '@babel/helper-plugin-utils': 7.24.0 + '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.24.0) + '@babel/plugin-transform-parameters': 7.23.3(@babel/core@7.24.0) dev: true - /@babel/plugin-transform-object-super@7.23.3(@babel/core@7.23.7): + /@babel/plugin-transform-object-super@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-BwQ8q0x2JG+3lxCVFohg+KbQM7plfpBwThdW9A6TMtWwLsbDA01Ek2Zb/AgDN39BiZsExm4qrXxjk+P1/fzGrA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-replace-supers': 7.22.20(@babel/core@7.23.7) + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/helper-replace-supers': 7.22.20(@babel/core@7.24.0) dev: true - /@babel/plugin-transform-optional-catch-binding@7.23.4(@babel/core@7.23.7): + /@babel/plugin-transform-optional-catch-binding@7.23.4(@babel/core@7.24.0): resolution: {integrity: sha512-XIq8t0rJPHf6Wvmbn9nFxU6ao4c7WhghTR5WyV8SrJfUFzyxhCm4nhC+iAp3HFhbAKLfYpgzhJ6t4XCtVwqO5A==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.23.7) + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.24.0) dev: true - /@babel/plugin-transform-optional-chaining@7.23.4(@babel/core@7.23.7): + /@babel/plugin-transform-optional-chaining@7.23.4(@babel/core@7.24.0): resolution: {integrity: sha512-ZU8y5zWOfjM5vZ+asjgAPwDaBjJzgufjES89Rs4Lpq63O300R/kOz30WCLo6BxxX6QVEilwSlpClnG5cZaikTA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 - '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.23.7) + '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.24.0) dev: true - /@babel/plugin-transform-parameters@7.23.3(@babel/core@7.23.7): + /@babel/plugin-transform-parameters@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-09lMt6UsUb3/34BbECKVbVwrT9bO6lILWln237z7sLaWnMsTi7Yc9fhX5DLpkJzAGfaReXI22wP41SZmnAA3Vw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-private-methods@7.23.3(@babel/core@7.23.7): + /@babel/plugin-transform-private-methods@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-UzqRcRtWsDMTLrRWFvUBDwmw06tCQH9Rl1uAjfh6ijMSmGYQ+fpdB+cnqRC8EMh5tuuxSv0/TejGL+7vyj+50g==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-create-class-features-plugin': 7.23.7(@babel/core@7.23.7) - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-create-class-features-plugin': 7.24.0(@babel/core@7.24.0) + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-private-property-in-object@7.23.4(@babel/core@7.23.7): + /@babel/plugin-transform-private-property-in-object@7.23.4(@babel/core@7.24.0): resolution: {integrity: sha512-9G3K1YqTq3F4Vt88Djx1UZ79PDyj+yKRnUy7cZGSMe+a7jkwD259uKKuUzQlPkGam7R+8RJwh5z4xO27fA1o2A==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 + '@babel/core': 7.24.0 '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-create-class-features-plugin': 7.23.7(@babel/core@7.23.7) - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.23.7) + '@babel/helper-create-class-features-plugin': 7.24.0(@babel/core@7.24.0) + '@babel/helper-plugin-utils': 7.24.0 + '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.24.0) dev: true - /@babel/plugin-transform-property-literals@7.23.3(@babel/core@7.23.7): + /@babel/plugin-transform-property-literals@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-jR3Jn3y7cZp4oEWPFAlRsSWjxKe4PZILGBSd4nis1TsC5qeSpb+nrtihJuDhNI7QHiVbUaiXa0X2RZY3/TI6Nw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-react-jsx-self@7.23.3(@babel/core@7.23.7): + /@babel/plugin-transform-react-jsx-self@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-qXRvbeKDSfwnlJnanVRp0SfuWE5DQhwQr5xtLBzp56Wabyo+4CMosF6Kfp+eOD/4FYpql64XVJ2W0pVLlJZxOQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-react-jsx-source@7.23.3(@babel/core@7.23.7): + /@babel/plugin-transform-react-jsx-source@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-91RS0MDnAWDNvGC6Wio5XYkyWI39FMFO+JK9+4AlgaTH+yWwVTsw7/sn6LK0lH7c5F+TFkpv/3LfCJ1Ydwof/g==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-regenerator@7.23.3(@babel/core@7.23.7): + /@babel/plugin-transform-regenerator@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-KP+75h0KghBMcVpuKisx3XTu9Ncut8Q8TuvGO4IhY+9D5DFEckQefOuIsB/gQ2tG71lCke4NMrtIPS8pOj18BQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 regenerator-transform: 0.15.2 dev: true - /@babel/plugin-transform-reserved-words@7.23.3(@babel/core@7.23.7): + /@babel/plugin-transform-reserved-words@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-QnNTazY54YqgGxwIexMZva9gqbPa15t/x9VS+0fsEFWplwVpXYZivtgl43Z1vMpc1bdPP2PP8siFeVcnFvA3Cg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-shorthand-properties@7.23.3(@babel/core@7.23.7): + /@babel/plugin-transform-shorthand-properties@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-ED2fgqZLmexWiN+YNFX26fx4gh5qHDhn1O2gvEhreLW2iI63Sqm4llRLCXALKrCnbN4Jy0VcMQZl/SAzqug/jg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-spread@7.23.3(@babel/core@7.23.7): + /@babel/plugin-transform-spread@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-VvfVYlrlBVu+77xVTOAoxQ6mZbnIq5FM0aGBSFEcIh03qHf+zNqA4DC/3XMUozTg7bZV3e3mZQ0i13VB6v5yUg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 dev: true - /@babel/plugin-transform-sticky-regex@7.23.3(@babel/core@7.23.7): + /@babel/plugin-transform-sticky-regex@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-HZOyN9g+rtvnOU3Yh7kSxXrKbzgrm5X4GncPY1QOquu7epga5MxKHVpYu2hvQnry/H+JjckSYRb93iNfsioAGg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-template-literals@7.23.3(@babel/core@7.23.7): + /@babel/plugin-transform-template-literals@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-Flok06AYNp7GV2oJPZZcP9vZdszev6vPBkHLwxwSpaIqx75wn6mUd3UFWsSsA0l8nXAKkyCmL/sR02m8RYGeHg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-typeof-symbol@7.23.3(@babel/core@7.23.7): + /@babel/plugin-transform-typeof-symbol@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-4t15ViVnaFdrPC74be1gXBSMzXk3B4Us9lP7uLRQHTFpV5Dvt33pn+2MyyNxmN3VTTm3oTrZVMUmuw3oBnQ2oQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-unicode-escapes@7.23.3(@babel/core@7.23.7): + /@babel/plugin-transform-unicode-escapes@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-OMCUx/bU6ChE3r4+ZdylEqAjaQgHAgipgW8nsCfu5pGqDcFytVd91AwRvUJSBZDz0exPGgnjoqhgRYLRjFZc9Q==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-unicode-property-regex@7.23.3(@babel/core@7.23.7): + /@babel/plugin-transform-unicode-property-regex@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-KcLIm+pDZkWZQAFJ9pdfmh89EwVfmNovFBcXko8szpBeF8z68kWIPeKlmSOkT9BXJxs2C0uk+5LxoxIv62MROA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.7) - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.0) + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-unicode-regex@7.23.3(@babel/core@7.23.7): + /@babel/plugin-transform-unicode-regex@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-wMHpNA4x2cIA32b/ci3AfwNgheiva2W0WUKWTK7vBHBhDKfPsc5cFGNWm69WBqpwd86u1qwZ9PWevKqm1A3yAw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.7) - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.0) + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/plugin-transform-unicode-sets-regex@7.23.3(@babel/core@7.23.7): + /@babel/plugin-transform-unicode-sets-regex@7.23.3(@babel/core@7.24.0): resolution: {integrity: sha512-W7lliA/v9bNR83Qc3q1ip9CQMZ09CcHDbHfbLRDNuAhn1Mvkr1ZNF7hPmztMQvtTGVLJ9m8IZqWsTkXOml8dbw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.7) - '@babel/helper-plugin-utils': 7.22.5 + '@babel/core': 7.24.0 + '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.0) + '@babel/helper-plugin-utils': 7.24.0 dev: true - /@babel/preset-env@7.23.7(@babel/core@7.23.7): - resolution: {integrity: sha512-SY27X/GtTz/L4UryMNJ6p4fH4nsgWbz84y9FE0bQeWJP6O5BhgVCt53CotQKHCOeXJel8VyhlhujhlltKms/CA==} + /@babel/preset-env@7.24.0(@babel/core@7.24.0): + resolution: {integrity: sha512-ZxPEzV9IgvGn73iK0E6VB9/95Nd7aMFpbE0l8KQFDG70cOV9IxRP7Y2FUPmlK0v6ImlLqYX50iuZ3ZTVhOF2lA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: '@babel/compat-data': 7.23.5 - '@babel/core': 7.23.7 + '@babel/core': 7.24.0 '@babel/helper-compilation-targets': 7.23.6 - '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-plugin-utils': 7.24.0 '@babel/helper-validator-option': 7.23.5 - '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly': 7.23.7(@babel/core@7.23.7) - '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.23.7) - '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.23.7) - '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.23.7) - '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.23.7) - '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.23.7) - '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.23.7) - '@babel/plugin-syntax-import-assertions': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-syntax-import-attributes': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.23.7) - '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.23.7) - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.23.7) - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.23.7) - '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.23.7) - '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.23.7) - '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.23.7) - '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.23.7) - '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.23.7) - '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.23.7) - '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.23.7) - '@babel/plugin-transform-arrow-functions': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-async-generator-functions': 7.23.7(@babel/core@7.23.7) - '@babel/plugin-transform-async-to-generator': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-block-scoped-functions': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-block-scoping': 7.23.4(@babel/core@7.23.7) - '@babel/plugin-transform-class-properties': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-class-static-block': 7.23.4(@babel/core@7.23.7) - '@babel/plugin-transform-classes': 7.23.5(@babel/core@7.23.7) - '@babel/plugin-transform-computed-properties': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-destructuring': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-dotall-regex': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-duplicate-keys': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-dynamic-import': 7.23.4(@babel/core@7.23.7) - '@babel/plugin-transform-exponentiation-operator': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-export-namespace-from': 7.23.4(@babel/core@7.23.7) - '@babel/plugin-transform-for-of': 7.23.6(@babel/core@7.23.7) - '@babel/plugin-transform-function-name': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-json-strings': 7.23.4(@babel/core@7.23.7) - '@babel/plugin-transform-literals': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-logical-assignment-operators': 7.23.4(@babel/core@7.23.7) - '@babel/plugin-transform-member-expression-literals': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-modules-amd': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-modules-commonjs': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-modules-systemjs': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-modules-umd': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-named-capturing-groups-regex': 7.22.5(@babel/core@7.23.7) - '@babel/plugin-transform-new-target': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-nullish-coalescing-operator': 7.23.4(@babel/core@7.23.7) - '@babel/plugin-transform-numeric-separator': 7.23.4(@babel/core@7.23.7) - '@babel/plugin-transform-object-rest-spread': 7.23.4(@babel/core@7.23.7) - '@babel/plugin-transform-object-super': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-optional-catch-binding': 7.23.4(@babel/core@7.23.7) - '@babel/plugin-transform-optional-chaining': 7.23.4(@babel/core@7.23.7) - '@babel/plugin-transform-parameters': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-private-methods': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-private-property-in-object': 7.23.4(@babel/core@7.23.7) - '@babel/plugin-transform-property-literals': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-regenerator': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-reserved-words': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-shorthand-properties': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-spread': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-sticky-regex': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-template-literals': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-typeof-symbol': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-unicode-escapes': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-unicode-property-regex': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-unicode-regex': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-unicode-sets-regex': 7.23.3(@babel/core@7.23.7) - '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.23.7) - babel-plugin-polyfill-corejs2: 0.4.7(@babel/core@7.23.7) - babel-plugin-polyfill-corejs3: 0.8.7(@babel/core@7.23.7) - babel-plugin-polyfill-regenerator: 0.5.4(@babel/core@7.23.7) - core-js-compat: 3.35.0 + '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly': 7.23.7(@babel/core@7.24.0) + '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.24.0) + '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.24.0) + '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.24.0) + '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.24.0) + '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.24.0) + '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.24.0) + '@babel/plugin-syntax-import-assertions': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-syntax-import-attributes': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.24.0) + '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.24.0) + '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.24.0) + '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.24.0) + '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.24.0) + '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.24.0) + '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.24.0) + '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.24.0) + '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.24.0) + '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.24.0) + '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.24.0) + '@babel/plugin-transform-arrow-functions': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-async-generator-functions': 7.23.9(@babel/core@7.24.0) + '@babel/plugin-transform-async-to-generator': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-block-scoped-functions': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-block-scoping': 7.23.4(@babel/core@7.24.0) + '@babel/plugin-transform-class-properties': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-class-static-block': 7.23.4(@babel/core@7.24.0) + '@babel/plugin-transform-classes': 7.23.8(@babel/core@7.24.0) + '@babel/plugin-transform-computed-properties': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-destructuring': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-dotall-regex': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-duplicate-keys': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-dynamic-import': 7.23.4(@babel/core@7.24.0) + '@babel/plugin-transform-exponentiation-operator': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-export-namespace-from': 7.23.4(@babel/core@7.24.0) + '@babel/plugin-transform-for-of': 7.23.6(@babel/core@7.24.0) + '@babel/plugin-transform-function-name': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-json-strings': 7.23.4(@babel/core@7.24.0) + '@babel/plugin-transform-literals': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-logical-assignment-operators': 7.23.4(@babel/core@7.24.0) + '@babel/plugin-transform-member-expression-literals': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-modules-amd': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-modules-commonjs': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-modules-systemjs': 7.23.9(@babel/core@7.24.0) + '@babel/plugin-transform-modules-umd': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-named-capturing-groups-regex': 7.22.5(@babel/core@7.24.0) + '@babel/plugin-transform-new-target': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-nullish-coalescing-operator': 7.23.4(@babel/core@7.24.0) + '@babel/plugin-transform-numeric-separator': 7.23.4(@babel/core@7.24.0) + '@babel/plugin-transform-object-rest-spread': 7.24.0(@babel/core@7.24.0) + '@babel/plugin-transform-object-super': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-optional-catch-binding': 7.23.4(@babel/core@7.24.0) + '@babel/plugin-transform-optional-chaining': 7.23.4(@babel/core@7.24.0) + '@babel/plugin-transform-parameters': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-private-methods': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-private-property-in-object': 7.23.4(@babel/core@7.24.0) + '@babel/plugin-transform-property-literals': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-regenerator': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-reserved-words': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-shorthand-properties': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-spread': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-sticky-regex': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-template-literals': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-typeof-symbol': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-unicode-escapes': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-unicode-property-regex': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-unicode-regex': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-unicode-sets-regex': 7.23.3(@babel/core@7.24.0) + '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.24.0) + babel-plugin-polyfill-corejs2: 0.4.8(@babel/core@7.24.0) + babel-plugin-polyfill-corejs3: 0.9.0(@babel/core@7.24.0) + babel-plugin-polyfill-regenerator: 0.5.5(@babel/core@7.24.0) + core-js-compat: 3.36.0 semver: 6.3.1 transitivePeerDependencies: - supports-color dev: true - /@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.23.7): + /@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.24.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 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/types': 7.23.6 + '@babel/core': 7.24.0 + '@babel/helper-plugin-utils': 7.24.0 + '@babel/types': 7.24.0 esutils: 2.0.3 dev: true @@ -2307,23 +2270,23 @@ packages: resolution: {integrity: sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==} dev: true - /@babel/runtime@7.23.7: - resolution: {integrity: sha512-w06OXVOFso7LcbzMiDGt+3X7Rh7Ho8MmgPoWU3rarH+8upf+wSU/grlGbWzQyr3DkdN6ZeuMFjpdwW0Q+HxobA==} + /@babel/runtime@7.24.0: + resolution: {integrity: sha512-Chk32uHMg6TnQdvw2e9IlqPpFX/6NLuK0Ys2PqLb7/gL5uFn9mXvK715FGLlOLQrcO4qIkNHkvPGktzzXexsFw==} engines: {node: '>=6.9.0'} dependencies: regenerator-runtime: 0.14.1 - /@babel/template@7.22.15: - resolution: {integrity: sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==} + /@babel/template@7.24.0: + resolution: {integrity: sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==} engines: {node: '>=6.9.0'} dependencies: '@babel/code-frame': 7.23.5 - '@babel/parser': 7.23.6 - '@babel/types': 7.23.6 + '@babel/parser': 7.24.0 + '@babel/types': 7.24.0 dev: true - /@babel/traverse@7.23.7: - resolution: {integrity: sha512-tY3mM8rH9jM0YHFGyfC0/xf+SB5eKUu7HPj7/k3fpi9dAlsMc5YbQvDi0Sh2QTPXqMhyaAtzAr807TIyfQrmyg==} + /@babel/traverse@7.24.0: + resolution: {integrity: sha512-HfuJlI8qq3dEDmNU5ChzzpZRWq+oxCZQyMzIMEqLho+AQnhMnKQUzH6ydo3RBl/YjPCuk68Y6s0Gx0AeyULiWw==} engines: {node: '>=6.9.0'} dependencies: '@babel/code-frame': 7.23.5 @@ -2332,16 +2295,16 @@ packages: '@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.6 - '@babel/types': 7.23.6 - debug: 4.3.4(supports-color@5.5.0) + '@babel/parser': 7.24.0 + '@babel/types': 7.24.0 + debug: 4.3.4(supports-color@8.1.1) globals: 11.12.0 transitivePeerDependencies: - supports-color dev: true - /@babel/types@7.23.6: - resolution: {integrity: sha512-+uarb83brBzPKN38NX1MkB6vb6+mwvR6amUulqAE7ccQw1pEl+bCia9TbdG1lsnFP7lZySvUn37CHyXQdfTwzg==} + /@babel/types@7.24.0: + resolution: {integrity: sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==} engines: {node: '>=6.9.0'} dependencies: '@babel/helper-string-parser': 7.23.4 @@ -2350,7 +2313,6 @@ packages: /@balena/dockerignore@1.0.2: resolution: {integrity: sha512-wMue2Sy4GAVTk6Ic4tJVcnfdau+gx2EnG7S+uAEe+TWJFqE4YoWN4/H8MSLj4eYJKxGg26lZwboEniNiNwZQ6Q==} - dev: false /@colors/colors@1.6.0: resolution: {integrity: sha512-Ir+AOibqzrIsL6ajt3Rz3LskB7OiMVHqltZmspbW/TJuTVuyOMirVqAkjfY6JISiLHgyNqicAC8AyHHGzNd/dA==} @@ -2386,7 +2348,7 @@ packages: resolution: {integrity: sha512-m4HEDZleaaCH+XgDDsPF15Ht6wTLsgDTeR3WYj9Q/k76JtWhrJjcP4+/XlG8LGT/Rol9qUfOIztXeA84ATpqPQ==} dependencies: '@babel/helper-module-imports': 7.22.15 - '@babel/runtime': 7.23.7 + '@babel/runtime': 7.24.0 '@emotion/hash': 0.9.1 '@emotion/memoize': 0.8.1 '@emotion/serialize': 1.1.3 @@ -2420,8 +2382,8 @@ packages: dev: false optional: true - /@emotion/is-prop-valid@1.2.1: - resolution: {integrity: sha512-61Mf7Ufx4aDxx1xlDeOm8aFFigGHE4z+0sKCa+IHCeZKiyP9RLD0Mmx7m8b9/Cf37f7NAvQOOJAbQQGVr5uERw==} + /@emotion/is-prop-valid@1.2.2: + resolution: {integrity: sha512-uNsoYd37AFmaCdXlg6EYD1KaPOaRWRByMCYzbKUX4+hhMfrxdVSelShywL4JVaAeM/eHUOSprYBQls+/neX3pw==} dependencies: '@emotion/memoize': 0.8.1 dev: false @@ -2436,8 +2398,8 @@ packages: resolution: {integrity: sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA==} dev: false - /@emotion/react@11.11.3(@types/react@18.2.47)(react@18.2.0): - resolution: {integrity: sha512-Cnn0kuq4DoONOMcnoVsTOR8E+AdnKFf//6kUWc4LCdnxj31pZWn7rIULd6Y7/Js1PiPHzn7SKCM9vB/jBni8eA==} + /@emotion/react@11.11.4(@types/react@18.2.60)(react@18.2.0): + resolution: {integrity: sha512-t8AjMlF0gHpvvxk5mAtCqR4vmxiGHCeJBaQO6gncUSdklELOgtwjerNY2yuJNfwnc6vi16U/+uMF+afIawJ9iw==} peerDependencies: '@types/react': '*' react: '>=16.8.0' @@ -2445,14 +2407,14 @@ packages: '@types/react': optional: true dependencies: - '@babel/runtime': 7.23.7 + '@babel/runtime': 7.24.0 '@emotion/babel-plugin': 11.11.0 '@emotion/cache': 11.11.0 '@emotion/serialize': 1.1.3 '@emotion/use-insertion-effect-with-fallbacks': 1.0.1(react@18.2.0) '@emotion/utils': 1.2.1 '@emotion/weak-memoize': 0.3.1 - '@types/react': 18.2.47 + '@types/react': 18.2.60 hoist-non-react-statics: 3.3.2 react: 18.2.0 dev: false @@ -2471,7 +2433,7 @@ packages: resolution: {integrity: sha512-0QBtGvaqtWi+nx6doRwDdBIzhNdZrXUppvTM4dtZZWEGTXL/XE/yJxLMGlDT1Gt+UHH5IX1n+jkXyytE/av7OA==} dev: false - /@emotion/styled@11.11.0(@emotion/react@11.11.3)(@types/react@18.2.47)(react@18.2.0): + /@emotion/styled@11.11.0(@emotion/react@11.11.4)(@types/react@18.2.60)(react@18.2.0): resolution: {integrity: sha512-hM5Nnvu9P3midq5aaXj4I+lnSfNi7Pmd4EWk1fOZ3pxookaQTNew6bp4JaCBYM4HVFZF9g7UjJmsUmC2JlxOng==} peerDependencies: '@emotion/react': ^11.0.0-rc.0 @@ -2481,14 +2443,14 @@ packages: '@types/react': optional: true dependencies: - '@babel/runtime': 7.23.7 + '@babel/runtime': 7.24.0 '@emotion/babel-plugin': 11.11.0 - '@emotion/is-prop-valid': 1.2.1 - '@emotion/react': 11.11.3(@types/react@18.2.47)(react@18.2.0) + '@emotion/is-prop-valid': 1.2.2 + '@emotion/react': 11.11.4(@types/react@18.2.60)(react@18.2.0) '@emotion/serialize': 1.1.3 '@emotion/use-insertion-effect-with-fallbacks': 1.0.1(react@18.2.0) '@emotion/utils': 1.2.1 - '@types/react': 18.2.47 + '@types/react': 18.2.60 react: 18.2.0 dev: false @@ -2512,8 +2474,8 @@ packages: resolution: {integrity: sha512-EsBwpc7hBUJWAsNPBmJy4hxWx12v6bshQsldrVmjxJoc3isbxhOrF2IcCpaXxfvq03NwkI7sbsOLXbYuqF/8Ww==} dev: false - /@esbuild/aix-ppc64@0.19.11: - resolution: {integrity: sha512-FnzU0LyE3ySQk7UntJO4+qIiQgI7KoODnZg5xzXIrFJlKd2P2gwHsHY4927xj9y5PJmJSzULiUCWmv7iWnNa7g==} + /@esbuild/aix-ppc64@0.19.12: + resolution: {integrity: sha512-bmoCYyWdEL3wDQIVbcyzRyeKLgk2WtWLTWz1ZIAZF/EGbNOwSA6ew3PftJ1PqMiOOGu0OyFMzG53L0zqIpPeNA==} engines: {node: '>=12'} cpu: [ppc64] os: [aix] @@ -2521,8 +2483,8 @@ packages: dev: true optional: true - /@esbuild/android-arm64@0.19.11: - resolution: {integrity: sha512-aiu7K/5JnLj//KOnOfEZ0D90obUkRzDMyqd/wNAUQ34m4YUPVhRZpnqKV9uqDGxT7cToSDnIHsGooyIczu9T+Q==} + /@esbuild/android-arm64@0.19.12: + resolution: {integrity: sha512-P0UVNGIienjZv3f5zq0DP3Nt2IE/3plFzuaS96vihvD0Hd6H/q4WXUGpCxD/E8YrSXfNyRPbpTq+T8ZQioSuPA==} engines: {node: '>=12'} cpu: [arm64] os: [android] @@ -2530,8 +2492,8 @@ packages: dev: true optional: true - /@esbuild/android-arm@0.19.11: - resolution: {integrity: sha512-5OVapq0ClabvKvQ58Bws8+wkLCV+Rxg7tUVbo9xu034Nm536QTII4YzhaFriQ7rMrorfnFKUsArD2lqKbFY4vw==} + /@esbuild/android-arm@0.19.12: + resolution: {integrity: sha512-qg/Lj1mu3CdQlDEEiWrlC4eaPZ1KztwGJ9B6J+/6G+/4ewxJg7gqj8eVYWvao1bXrqGiW2rsBZFSX3q2lcW05w==} engines: {node: '>=12'} cpu: [arm] os: [android] @@ -2539,8 +2501,8 @@ packages: dev: true optional: true - /@esbuild/android-x64@0.19.11: - resolution: {integrity: sha512-eccxjlfGw43WYoY9QgB82SgGgDbibcqyDTlk3l3C0jOVHKxrjdc9CTwDUQd0vkvYg5um0OH+GpxYvp39r+IPOg==} + /@esbuild/android-x64@0.19.12: + resolution: {integrity: sha512-3k7ZoUW6Q6YqhdhIaq/WZ7HwBpnFBlW905Fa4s4qWJyiNOgT1dOqDiVAQFwBH7gBRZr17gLrlFCRzF6jFh7Kew==} engines: {node: '>=12'} cpu: [x64] os: [android] @@ -2548,8 +2510,8 @@ packages: dev: true optional: true - /@esbuild/darwin-arm64@0.19.11: - resolution: {integrity: sha512-ETp87DRWuSt9KdDVkqSoKoLFHYTrkyz2+65fj9nfXsaV3bMhTCjtQfw3y+um88vGRKRiF7erPrh/ZuIdLUIVxQ==} + /@esbuild/darwin-arm64@0.19.12: + resolution: {integrity: sha512-B6IeSgZgtEzGC42jsI+YYu9Z3HKRxp8ZT3cqhvliEHovq8HSX2YX8lNocDn79gCKJXOSaEot9MVYky7AKjCs8g==} engines: {node: '>=12'} cpu: [arm64] os: [darwin] @@ -2557,8 +2519,8 @@ packages: dev: true optional: true - /@esbuild/darwin-x64@0.19.11: - resolution: {integrity: sha512-fkFUiS6IUK9WYUO/+22omwetaSNl5/A8giXvQlcinLIjVkxwTLSktbF5f/kJMftM2MJp9+fXqZ5ezS7+SALp4g==} + /@esbuild/darwin-x64@0.19.12: + resolution: {integrity: sha512-hKoVkKzFiToTgn+41qGhsUJXFlIjxI/jSYeZf3ugemDYZldIXIxhvwN6erJGlX4t5h417iFuheZ7l+YVn05N3A==} engines: {node: '>=12'} cpu: [x64] os: [darwin] @@ -2566,8 +2528,8 @@ packages: dev: true optional: true - /@esbuild/freebsd-arm64@0.19.11: - resolution: {integrity: sha512-lhoSp5K6bxKRNdXUtHoNc5HhbXVCS8V0iZmDvyWvYq9S5WSfTIHU2UGjcGt7UeS6iEYp9eeymIl5mJBn0yiuxA==} + /@esbuild/freebsd-arm64@0.19.12: + resolution: {integrity: sha512-4aRvFIXmwAcDBw9AueDQ2YnGmz5L6obe5kmPT8Vd+/+x/JMVKCgdcRwH6APrbpNXsPz+K653Qg8HB/oXvXVukA==} engines: {node: '>=12'} cpu: [arm64] os: [freebsd] @@ -2575,8 +2537,8 @@ packages: dev: true optional: true - /@esbuild/freebsd-x64@0.19.11: - resolution: {integrity: sha512-JkUqn44AffGXitVI6/AbQdoYAq0TEullFdqcMY/PCUZ36xJ9ZJRtQabzMA+Vi7r78+25ZIBosLTOKnUXBSi1Kw==} + /@esbuild/freebsd-x64@0.19.12: + resolution: {integrity: sha512-EYoXZ4d8xtBoVN7CEwWY2IN4ho76xjYXqSXMNccFSx2lgqOG/1TBPW0yPx1bJZk94qu3tX0fycJeeQsKovA8gg==} engines: {node: '>=12'} cpu: [x64] os: [freebsd] @@ -2584,8 +2546,8 @@ packages: dev: true optional: true - /@esbuild/linux-arm64@0.19.11: - resolution: {integrity: sha512-LneLg3ypEeveBSMuoa0kwMpCGmpu8XQUh+mL8XXwoYZ6Be2qBnVtcDI5azSvh7vioMDhoJFZzp9GWp9IWpYoUg==} + /@esbuild/linux-arm64@0.19.12: + resolution: {integrity: sha512-EoTjyYyLuVPfdPLsGVVVC8a0p1BFFvtpQDB/YLEhaXyf/5bczaGeN15QkR+O4S5LeJ92Tqotve7i1jn35qwvdA==} engines: {node: '>=12'} cpu: [arm64] os: [linux] @@ -2593,8 +2555,8 @@ packages: dev: true optional: true - /@esbuild/linux-arm@0.19.11: - resolution: {integrity: sha512-3CRkr9+vCV2XJbjwgzjPtO8T0SZUmRZla+UL1jw+XqHZPkPgZiyWvbDvl9rqAN8Zl7qJF0O/9ycMtjU67HN9/Q==} + /@esbuild/linux-arm@0.19.12: + resolution: {integrity: sha512-J5jPms//KhSNv+LO1S1TX1UWp1ucM6N6XuL6ITdKWElCu8wXP72l9MM0zDTzzeikVyqFE6U8YAV9/tFyj0ti+w==} engines: {node: '>=12'} cpu: [arm] os: [linux] @@ -2602,8 +2564,8 @@ packages: dev: true optional: true - /@esbuild/linux-ia32@0.19.11: - resolution: {integrity: sha512-caHy++CsD8Bgq2V5CodbJjFPEiDPq8JJmBdeyZ8GWVQMjRD0sU548nNdwPNvKjVpamYYVL40AORekgfIubwHoA==} + /@esbuild/linux-ia32@0.19.12: + resolution: {integrity: sha512-Thsa42rrP1+UIGaWz47uydHSBOgTUnwBwNq59khgIwktK6x60Hivfbux9iNR0eHCHzOLjLMLfUMLCypBkZXMHA==} engines: {node: '>=12'} cpu: [ia32] os: [linux] @@ -2611,8 +2573,8 @@ packages: dev: true optional: true - /@esbuild/linux-loong64@0.19.11: - resolution: {integrity: sha512-ppZSSLVpPrwHccvC6nQVZaSHlFsvCQyjnvirnVjbKSHuE5N24Yl8F3UwYUUR1UEPaFObGD2tSvVKbvR+uT1Nrg==} + /@esbuild/linux-loong64@0.19.12: + resolution: {integrity: sha512-LiXdXA0s3IqRRjm6rV6XaWATScKAXjI4R4LoDlvO7+yQqFdlr1Bax62sRwkVvRIrwXxvtYEHHI4dm50jAXkuAA==} engines: {node: '>=12'} cpu: [loong64] os: [linux] @@ -2620,8 +2582,8 @@ packages: dev: true optional: true - /@esbuild/linux-mips64el@0.19.11: - resolution: {integrity: sha512-B5x9j0OgjG+v1dF2DkH34lr+7Gmv0kzX6/V0afF41FkPMMqaQ77pH7CrhWeR22aEeHKaeZVtZ6yFwlxOKPVFyg==} + /@esbuild/linux-mips64el@0.19.12: + resolution: {integrity: sha512-fEnAuj5VGTanfJ07ff0gOA6IPsvrVHLVb6Lyd1g2/ed67oU1eFzL0r9WL7ZzscD+/N6i3dWumGE1Un4f7Amf+w==} engines: {node: '>=12'} cpu: [mips64el] os: [linux] @@ -2629,8 +2591,8 @@ packages: dev: true optional: true - /@esbuild/linux-ppc64@0.19.11: - resolution: {integrity: sha512-MHrZYLeCG8vXblMetWyttkdVRjQlQUb/oMgBNurVEnhj4YWOr4G5lmBfZjHYQHHN0g6yDmCAQRR8MUHldvvRDA==} + /@esbuild/linux-ppc64@0.19.12: + resolution: {integrity: sha512-nYJA2/QPimDQOh1rKWedNOe3Gfc8PabU7HT3iXWtNUbRzXS9+vgB0Fjaqr//XNbd82mCxHzik2qotuI89cfixg==} engines: {node: '>=12'} cpu: [ppc64] os: [linux] @@ -2638,8 +2600,8 @@ packages: dev: true optional: true - /@esbuild/linux-riscv64@0.19.11: - resolution: {integrity: sha512-f3DY++t94uVg141dozDu4CCUkYW+09rWtaWfnb3bqe4w5NqmZd6nPVBm+qbz7WaHZCoqXqHz5p6CM6qv3qnSSQ==} + /@esbuild/linux-riscv64@0.19.12: + resolution: {integrity: sha512-2MueBrlPQCw5dVJJpQdUYgeqIzDQgw3QtiAHUC4RBz9FXPrskyyU3VI1hw7C0BSKB9OduwSJ79FTCqtGMWqJHg==} engines: {node: '>=12'} cpu: [riscv64] os: [linux] @@ -2647,8 +2609,8 @@ packages: dev: true optional: true - /@esbuild/linux-s390x@0.19.11: - resolution: {integrity: sha512-A5xdUoyWJHMMlcSMcPGVLzYzpcY8QP1RtYzX5/bS4dvjBGVxdhuiYyFwp7z74ocV7WDc0n1harxmpq2ePOjI0Q==} + /@esbuild/linux-s390x@0.19.12: + resolution: {integrity: sha512-+Pil1Nv3Umes4m3AZKqA2anfhJiVmNCYkPchwFJNEJN5QxmTs1uzyy4TvmDrCRNT2ApwSari7ZIgrPeUx4UZDg==} engines: {node: '>=12'} cpu: [s390x] os: [linux] @@ -2656,8 +2618,8 @@ packages: dev: true optional: true - /@esbuild/linux-x64@0.19.11: - resolution: {integrity: sha512-grbyMlVCvJSfxFQUndw5mCtWs5LO1gUlwP4CDi4iJBbVpZcqLVT29FxgGuBJGSzyOxotFG4LoO5X+M1350zmPA==} + /@esbuild/linux-x64@0.19.12: + resolution: {integrity: sha512-B71g1QpxfwBvNrfyJdVDexenDIt1CiDN1TIXLbhOw0KhJzE78KIFGX6OJ9MrtC0oOqMWf+0xop4qEU8JrJTwCg==} engines: {node: '>=12'} cpu: [x64] os: [linux] @@ -2665,8 +2627,8 @@ packages: dev: true optional: true - /@esbuild/netbsd-x64@0.19.11: - resolution: {integrity: sha512-13jvrQZJc3P230OhU8xgwUnDeuC/9egsjTkXN49b3GcS5BKvJqZn86aGM8W9pd14Kd+u7HuFBMVtrNGhh6fHEQ==} + /@esbuild/netbsd-x64@0.19.12: + resolution: {integrity: sha512-3ltjQ7n1owJgFbuC61Oj++XhtzmymoCihNFgT84UAmJnxJfm4sYCiSLTXZtE00VWYpPMYc+ZQmB6xbSdVh0JWA==} engines: {node: '>=12'} cpu: [x64] os: [netbsd] @@ -2674,8 +2636,8 @@ packages: dev: true optional: true - /@esbuild/openbsd-x64@0.19.11: - resolution: {integrity: sha512-ysyOGZuTp6SNKPE11INDUeFVVQFrhcNDVUgSQVDzqsqX38DjhPEPATpid04LCoUr2WXhQTEZ8ct/EgJCUDpyNw==} + /@esbuild/openbsd-x64@0.19.12: + resolution: {integrity: sha512-RbrfTB9SWsr0kWmb9srfF+L933uMDdu9BIzdA7os2t0TXhCRjrQyCeOt6wVxr79CKD4c+p+YhCj31HBkYcXebw==} engines: {node: '>=12'} cpu: [x64] os: [openbsd] @@ -2683,8 +2645,8 @@ packages: dev: true optional: true - /@esbuild/sunos-x64@0.19.11: - resolution: {integrity: sha512-Hf+Sad9nVwvtxy4DXCZQqLpgmRTQqyFyhT3bZ4F2XlJCjxGmRFF0Shwn9rzhOYRB61w9VMXUkxlBy56dk9JJiQ==} + /@esbuild/sunos-x64@0.19.12: + resolution: {integrity: sha512-HKjJwRrW8uWtCQnQOz9qcU3mUZhTUQvi56Q8DPTLLB+DawoiQdjsYq+j+D3s9I8VFtDr+F9CjgXKKC4ss89IeA==} engines: {node: '>=12'} cpu: [x64] os: [sunos] @@ -2692,8 +2654,8 @@ packages: dev: true optional: true - /@esbuild/win32-arm64@0.19.11: - resolution: {integrity: sha512-0P58Sbi0LctOMOQbpEOvOL44Ne0sqbS0XWHMvvrg6NE5jQ1xguCSSw9jQeUk2lfrXYsKDdOe6K+oZiwKPilYPQ==} + /@esbuild/win32-arm64@0.19.12: + resolution: {integrity: sha512-URgtR1dJnmGvX864pn1B2YUYNzjmXkuJOIqG2HdU62MVS4EHpU2946OZoTMnRUHklGtJdJZ33QfzdjGACXhn1A==} engines: {node: '>=12'} cpu: [arm64] os: [win32] @@ -2701,8 +2663,8 @@ packages: dev: true optional: true - /@esbuild/win32-ia32@0.19.11: - resolution: {integrity: sha512-6YOrWS+sDJDmshdBIQU+Uoyh7pQKrdykdefC1avn76ss5c+RN6gut3LZA4E2cH5xUEp5/cA0+YxRaVtRAb0xBg==} + /@esbuild/win32-ia32@0.19.12: + resolution: {integrity: sha512-+ZOE6pUkMOJfmxmBZElNOx72NKpIa/HFOMGzu8fqzQJ5kgf6aTGrcJaFsNiVMH4JKpMipyK+7k0n2UXN7a8YKQ==} engines: {node: '>=12'} cpu: [ia32] os: [win32] @@ -2710,8 +2672,8 @@ packages: dev: true optional: true - /@esbuild/win32-x64@0.19.11: - resolution: {integrity: sha512-vfkhltrjCAb603XaFhqhAF4LGDi2M4OrCRrFusyQ+iTLQ/o60QQXxc9cZC/FFpihBI9N1Grn6SMKVJ4KP7Fuiw==} + /@esbuild/win32-x64@0.19.12: + resolution: {integrity: sha512-T1QyPSDCyMXaO3pzBkF96E8xMkiRYbUEZADd29SyPGabqxMViNoii+NcK7eWJAEoU6RZyEm5lVSIjTmcdoB9HA==} engines: {node: '>=12'} cpu: [x64] os: [win32] @@ -2719,13 +2681,13 @@ packages: dev: true optional: true - /@eslint-community/eslint-utils@4.4.0(eslint@8.56.0): + /@eslint-community/eslint-utils@4.4.0(eslint@8.57.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: - eslint: 8.56.0 + eslint: 8.57.0 eslint-visitor-keys: 3.4.3 dev: true @@ -2739,10 +2701,10 @@ packages: engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: ajv: 6.12.6 - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4 espree: 9.6.1 globals: 13.24.0 - ignore: 5.3.0 + ignore: 5.3.1 import-fresh: 3.3.0 js-yaml: 4.1.0 minimatch: 3.1.2 @@ -2756,10 +2718,10 @@ packages: engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: ajv: 6.12.6 - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4 espree: 9.6.1 globals: 13.24.0 - ignore: 5.3.0 + ignore: 5.3.1 import-fresh: 3.3.0 js-yaml: 4.1.0 minimatch: 3.1.2 @@ -2768,45 +2730,37 @@ packages: - supports-color dev: true - /@eslint/js@8.56.0: - resolution: {integrity: sha512-gMsVel9D7f2HLkBma9VbtzZRehRogVRfbr++f06nL2vnCGCNlzOD+/MUov/F4p8myyAHspEhVobgjpX64q5m6A==} + /@eslint/js@8.57.0: + resolution: {integrity: sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dev: true - /@floating-ui/core@1.5.3(react@18.2.0): - resolution: {integrity: sha512-O0WKDOo0yhJuugCx6trZQj5jVJ9yR0ystG2JaNAemYUWce+pmM6WUEFIibnWyEJKdrDxhm75NoSRME35FNaM/Q==} + /@floating-ui/core@1.6.0: + resolution: {integrity: sha512-PcF++MykgmTj3CIyOQbKA/hDzOAiqI3mhuoN44WRCopIs1sgoDoU4oty4Jtqaj/y3oDU6fnVSm4QG0a3t5i0+g==} dependencies: - '@floating-ui/utils': 0.2.0(react@18.2.0) - transitivePeerDependencies: - - react + '@floating-ui/utils': 0.2.1 dev: false - /@floating-ui/dom@1.5.4(react@18.2.0): - resolution: {integrity: sha512-jByEsHIY+eEdCjnTVu+E3ephzTOzkQ8hgUfGwos+bg7NlH33Zc5uO+QHz1mrQUOgIKKDD1RtS201P9NvAfq3XQ==} + /@floating-ui/dom@1.6.3: + resolution: {integrity: sha512-RnDthu3mzPlQ31Ss/BTwQ1zjzIhr3lk1gZB1OC56h/1vEtaXkESrOqL5fQVMfXpwGtRwX+YsZBdyHtJMQnkArw==} dependencies: - '@floating-ui/core': 1.5.3(react@18.2.0) - '@floating-ui/utils': 0.2.0(react@18.2.0) - transitivePeerDependencies: - - react + '@floating-ui/core': 1.6.0 + '@floating-ui/utils': 0.2.1 dev: false - /@floating-ui/react-dom@2.0.5(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-UsBK30Bg+s6+nsgblXtZmwHhgS2vmbuQK22qgt2pTQM6M3X6H1+cQcLXqgRY3ihVLcZJE6IvqDQozhsnIVqK/Q==} + /@floating-ui/react-dom@2.0.8(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-HOdqOt3R3OGeTKidaLvJKcgg75S6tibQ3Tif4eyd91QnIJWr0NLvoXFpJA/j8HqkFSL68GDca9AuyWEHlhyClw==} peerDependencies: react: '>=16.8.0' react-dom: '>=16.8.0' dependencies: - '@floating-ui/dom': 1.5.4(react@18.2.0) + '@floating-ui/dom': 1.6.3 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) dev: false - /@floating-ui/utils@0.2.0(react@18.2.0): - resolution: {integrity: sha512-T4jNeM6dMzXONGkSjk7+O+eFQTVbw7KHi5OYuvFaBer3Wcrmpwi6fHKcT/FdSf7boWC7H9eXTyYTFZOQdJ1AMA==} - peerDependencies: - react: '>=16.8.0' - dependencies: - react: 18.2.0 + /@floating-ui/utils@0.2.1: + resolution: {integrity: sha512-9TANp6GPoMtYzQdt54kfAyMmz1+osLlXdg2ENroU7zzrtflTLrrC/lgrIfaSe+Wu0b89GKccT7vxXA0MoAIO+Q==} dev: false /@fnando/keyring@0.4.0: @@ -2819,12 +2773,12 @@ packages: dev: false optional: true - /@humanwhocodes/config-array@0.11.13: - resolution: {integrity: sha512-JSBDMiDKSzQVngfRjOdFXgFfklaXI4K9nLF49Auh21lmBWRLIK3+xTErTWD4KU54pb6coM6ESE7Awz/FNU3zgQ==} + /@humanwhocodes/config-array@0.11.14: + resolution: {integrity: sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==} engines: {node: '>=10.10.0'} dependencies: - '@humanwhocodes/object-schema': 2.0.1 - debug: 4.3.4(supports-color@5.5.0) + '@humanwhocodes/object-schema': 2.0.2 + debug: 4.3.4 minimatch: 3.1.2 transitivePeerDependencies: - supports-color @@ -2835,7 +2789,7 @@ packages: engines: {node: '>=10.10.0'} dependencies: '@humanwhocodes/object-schema': 1.2.1 - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4 minimatch: 3.1.2 transitivePeerDependencies: - supports-color @@ -2850,8 +2804,8 @@ packages: resolution: {integrity: sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==} dev: true - /@humanwhocodes/object-schema@2.0.1: - resolution: {integrity: sha512-dvuCeX5fC9dXgJn9t+X5atfmgQAzUOWqS1254Gh0m6i8wKd10ebXkfNKiRK+1GWi/yTvvLDHpoxLr0xxxeslWw==} + /@humanwhocodes/object-schema@2.0.2: + resolution: {integrity: sha512-6EwiSjwWYP7pTckG6I5eyFANjPhmPjUX9JRLUSfNPC7FX7zK9gyZAfUEaECL6ALTpGX5AjnBq3C9XmVWPitNpw==} dev: true /@hutson/parse-repository-url@3.0.2: @@ -2869,7 +2823,7 @@ packages: strip-ansi-cjs: /strip-ansi@6.0.1 wrap-ansi: 8.1.0 wrap-ansi-cjs: /wrap-ansi@7.0.0 - dev: false + dev: true /@istanbuljs/load-nyc-config@1.1.0: resolution: {integrity: sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==} @@ -2887,17 +2841,17 @@ packages: engines: {node: '>=8'} dev: true - /@jridgewell/gen-mapping@0.3.3: - resolution: {integrity: sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==} + /@jridgewell/gen-mapping@0.3.4: + resolution: {integrity: sha512-Oud2QPM5dHviZNn4y/WhhYKSXksv+1xLEIsNrAbGcFzUN3ubqWRFT5gwPchNc5NuzILOU4tPBDTZ4VwhL8Y7cw==} engines: {node: '>=6.0.0'} dependencies: '@jridgewell/set-array': 1.1.2 '@jridgewell/sourcemap-codec': 1.4.15 - '@jridgewell/trace-mapping': 0.3.20 + '@jridgewell/trace-mapping': 0.3.23 dev: true - /@jridgewell/resolve-uri@3.1.1: - resolution: {integrity: sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==} + /@jridgewell/resolve-uri@3.1.2: + resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} engines: {node: '>=6.0.0'} dev: true @@ -2909,46 +2863,28 @@ packages: /@jridgewell/source-map@0.3.5: resolution: {integrity: sha512-UTYAUj/wviwdsMfzoSJspJxbkH5o1snzwX0//0ENX1u/55kkZZkcTZP6u9bwKGkv+dkk9at4m1Cpt0uY80kcpQ==} dependencies: - '@jridgewell/gen-mapping': 0.3.3 - '@jridgewell/trace-mapping': 0.3.20 + '@jridgewell/gen-mapping': 0.3.4 + '@jridgewell/trace-mapping': 0.3.23 dev: true /@jridgewell/sourcemap-codec@1.4.15: resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==} dev: true - /@jridgewell/trace-mapping@0.3.20: - resolution: {integrity: sha512-R8LcPeWZol2zR8mmH3JeKQ6QRCFb7XgUhV9ZlGhHLGyg4wpPiPZNQOOWhFZhxKw8u//yTbNGI42Bx/3paXEQ+Q==} + /@jridgewell/trace-mapping@0.3.23: + resolution: {integrity: sha512-9/4foRoUKp8s96tSkh8DlAAc5A0Ty8vLXld+l9gjKKY6ckwI8G15f0hskGmuLZu78ZlGa1vtsfOa+lnB4vG6Jg==} dependencies: - '@jridgewell/resolve-uri': 3.1.1 + '@jridgewell/resolve-uri': 3.1.2 '@jridgewell/sourcemap-codec': 1.4.15 dev: true /@jridgewell/trace-mapping@0.3.9: resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==} dependencies: - '@jridgewell/resolve-uri': 3.1.1 + '@jridgewell/resolve-uri': 3.1.2 '@jridgewell/sourcemap-codec': 1.4.15 dev: true - /@mapbox/node-pre-gyp@1.0.11: - resolution: {integrity: sha512-Yhlar6v9WQgUp/He7BdgzOz8lqMQ8sU+jkCq7Wx8Myc5YFJLbEe7lgui/V7G1qB1DJykHSGwreceSaD60Y0PUQ==} - hasBin: true - 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 - /@mathieu_andrade/apidoc-markdown@1.0.5: resolution: {integrity: sha512-oWFOIxbpnWah/sa7zuPgJwcqIOAy2QY2EoUvCYJrfeimh9UPgVnT2c/sXWJEa5asgbkcH7cDCQ6GDCoqUjkF7w==} hasBin: true @@ -2976,16 +2912,16 @@ packages: resolution: {integrity: sha512-9b8mPpKrfeGRuhFH5iO1iwCLeIIsV6+H1sRfxbkoGXIyQE2BTsPd9zqSqQJ+pv5sJ/hT5M1zvOFL02MnEezFug==} dev: true - /@mongodb-js/saslprep@1.1.1: - resolution: {integrity: sha512-t7c5K033joZZMspnHg/gWPE4kandgc2OxE74aYOtGKfgB9VPuVJPix0H6fhmm2erj5PBJ21mqcx34lpIGtUCsQ==} + /@mongodb-js/saslprep@1.1.4: + resolution: {integrity: sha512-8zJ8N1x51xo9hwPh6AWnKdLGEC5N3lDa6kms1YHmFBoRhTpJR6HG8wWk0td1MVCu9cD4YBrvjZEtd5Obw0Fbnw==} requiresBuild: true dependencies: sparse-bitfield: 3.0.3 dev: false optional: true - /@mui/base@5.0.0-beta.30(@types/react@18.2.47)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-dc38W4W3K42atE9nSaOeoJ7/x9wGIfawdwC/UmMxMLlZ1iSsITQ8dQJaTATCbn98YvYPINK/EH541YA5enQIPQ==} + /@mui/base@5.0.0-beta.37(@types/react@18.2.60)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-/o3anbb+DeCng8jNsd3704XtmmLDZju1Fo8R2o7ugrVtPQ/QpcqddwKNzKPZwa0J5T8YNW3ZVuHyQgbTnQLisQ==} engines: {node: '>=12.0.0'} peerDependencies: '@types/react': ^17.0.0 || ^18.0.0 @@ -2995,24 +2931,24 @@ packages: '@types/react': optional: true dependencies: - '@babel/runtime': 7.23.7 - '@floating-ui/react-dom': 2.0.5(react-dom@18.2.0)(react@18.2.0) - '@mui/types': 7.2.12(@types/react@18.2.47) - '@mui/utils': 5.15.3(@types/react@18.2.47)(react@18.2.0) + '@babel/runtime': 7.24.0 + '@floating-ui/react-dom': 2.0.8(react-dom@18.2.0)(react@18.2.0) + '@mui/types': 7.2.13(@types/react@18.2.60) + '@mui/utils': 5.15.11(@types/react@18.2.60)(react@18.2.0) '@popperjs/core': 2.11.8 - '@types/react': 18.2.47 + '@types/react': 18.2.60 clsx: 2.1.0 prop-types: 15.8.1 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) dev: false - /@mui/core-downloads-tracker@5.15.3: - resolution: {integrity: sha512-sWeihiVyxdJjpLkp8SHkTy9kt2M/o11M60G1MzwljGL2BXdM3Ktzqv5QaQHdi00y7Y1ulvtI3GOSxP2xU8mQJw==} + /@mui/core-downloads-tracker@5.15.11: + resolution: {integrity: sha512-JVrJ9Jo4gyU707ujnRzmE8ABBWpXd6FwL9GYULmwZRtfPg89ggXs/S3MStQkpJ1JRWfdLL6S5syXmgQGq5EDAw==} dev: false - /@mui/icons-material@5.15.3(@mui/material@5.15.3)(@types/react@18.2.47)(react@18.2.0): - resolution: {integrity: sha512-7LEs8AnO2Se/XYH+CcJndRsGAE+M8KAExiiQHf0V11poqmPVGcbbY82Ry2IUYf9+rOilCVnWI18ErghZ625BPQ==} + /@mui/icons-material@5.15.11(@mui/material@5.15.11)(@types/react@18.2.60)(react@18.2.0): + resolution: {integrity: sha512-R5ZoQqnKpd+5Ew7mBygTFLxgYsQHPhgR3TDXSgIHYIjGzYuyPLmGLSdcPUoMdi6kxiYqHlpPj4NJxlbaFD0UHA==} engines: {node: '>=12.0.0'} peerDependencies: '@mui/material': ^5.0.0 @@ -3022,14 +2958,14 @@ packages: '@types/react': optional: true dependencies: - '@babel/runtime': 7.23.7 - '@mui/material': 5.15.3(@emotion/react@11.11.3)(@emotion/styled@11.11.0)(@types/react@18.2.47)(react-dom@18.2.0)(react@18.2.0) - '@types/react': 18.2.47 + '@babel/runtime': 7.24.0 + '@mui/material': 5.15.11(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@types/react@18.2.60)(react-dom@18.2.0)(react@18.2.0) + '@types/react': 18.2.60 react: 18.2.0 dev: false - /@mui/material@5.15.3(@emotion/react@11.11.3)(@emotion/styled@11.11.0)(@types/react@18.2.47)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-DODBBMouyq1B5f3YkEWL9vO8pGCxuEGqtfpltF6peMJzz/78tJFyLQsDas9MNLC/8AdFu2BQdkK7wox5UBPTAA==} + /@mui/material@5.15.11(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@types/react@18.2.60)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-FA3eEuEZaDaxgN3CgfXezMWbCZ4VCeU/sv0F0/PK5n42qIgsPVD6q+j71qS7/62sp6wRFMHtDMpXRlN+tT/7NA==} engines: {node: '>=12.0.0'} peerDependencies: '@emotion/react': ^11.5.0 @@ -3045,15 +2981,15 @@ packages: '@types/react': optional: true dependencies: - '@babel/runtime': 7.23.7 - '@emotion/react': 11.11.3(@types/react@18.2.47)(react@18.2.0) - '@emotion/styled': 11.11.0(@emotion/react@11.11.3)(@types/react@18.2.47)(react@18.2.0) - '@mui/base': 5.0.0-beta.30(@types/react@18.2.47)(react-dom@18.2.0)(react@18.2.0) - '@mui/core-downloads-tracker': 5.15.3 - '@mui/system': 5.15.3(@emotion/react@11.11.3)(@emotion/styled@11.11.0)(@types/react@18.2.47)(react@18.2.0) - '@mui/types': 7.2.12(@types/react@18.2.47) - '@mui/utils': 5.15.3(@types/react@18.2.47)(react@18.2.0) - '@types/react': 18.2.47 + '@babel/runtime': 7.24.0 + '@emotion/react': 11.11.4(@types/react@18.2.60)(react@18.2.0) + '@emotion/styled': 11.11.0(@emotion/react@11.11.4)(@types/react@18.2.60)(react@18.2.0) + '@mui/base': 5.0.0-beta.37(@types/react@18.2.60)(react-dom@18.2.0)(react@18.2.0) + '@mui/core-downloads-tracker': 5.15.11 + '@mui/system': 5.15.11(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@types/react@18.2.60)(react@18.2.0) + '@mui/types': 7.2.13(@types/react@18.2.60) + '@mui/utils': 5.15.11(@types/react@18.2.60)(react@18.2.0) + '@types/react': 18.2.60 '@types/react-transition-group': 4.4.10 clsx: 2.1.0 csstype: 3.1.3 @@ -3064,8 +3000,8 @@ packages: react-transition-group: 4.4.5(react-dom@18.2.0)(react@18.2.0) dev: false - /@mui/private-theming@5.15.3(@types/react@18.2.47)(react@18.2.0): - resolution: {integrity: sha512-Q79MhVMmywC1l5bMsMZq5PsIudr1MNPJnx9/EqdMP0vpz5iNvFpnLmxsD7d8/hqTWgFAljI+LH3jX8MxlZH9Gw==} + /@mui/private-theming@5.15.11(@types/react@18.2.60)(react@18.2.0): + resolution: {integrity: sha512-jY/696SnSxSzO1u86Thym7ky5T9CgfidU3NFJjguldqK4f3Z5S97amZ6nffg8gTD0HBjY9scB+4ekqDEUmxZOA==} engines: {node: '>=12.0.0'} peerDependencies: '@types/react': ^17.0.0 || ^18.0.0 @@ -3074,15 +3010,15 @@ packages: '@types/react': optional: true dependencies: - '@babel/runtime': 7.23.7 - '@mui/utils': 5.15.3(@types/react@18.2.47)(react@18.2.0) - '@types/react': 18.2.47 + '@babel/runtime': 7.24.0 + '@mui/utils': 5.15.11(@types/react@18.2.60)(react@18.2.0) + '@types/react': 18.2.60 prop-types: 15.8.1 react: 18.2.0 dev: false - /@mui/styled-engine@5.15.3(@emotion/react@11.11.3)(@emotion/styled@11.11.0)(react@18.2.0): - resolution: {integrity: sha512-+d5XZCTeemOO/vBfWGEeHgTm8fjU1Psdgm+xAw+uegycO2EnoA/EfGSaG5UwZ6g3b66y48Mkxi35AggShMr88w==} + /@mui/styled-engine@5.15.11(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(react@18.2.0): + resolution: {integrity: sha512-So21AhAngqo07ces4S/JpX5UaMU2RHXpEA6hNzI6IQjd/1usMPxpgK8wkGgTe3JKmC2KDmH8cvoycq5H3Ii7/w==} engines: {node: '>=12.0.0'} peerDependencies: '@emotion/react': ^11.4.1 @@ -3094,17 +3030,17 @@ packages: '@emotion/styled': optional: true dependencies: - '@babel/runtime': 7.23.7 + '@babel/runtime': 7.24.0 '@emotion/cache': 11.11.0 - '@emotion/react': 11.11.3(@types/react@18.2.47)(react@18.2.0) - '@emotion/styled': 11.11.0(@emotion/react@11.11.3)(@types/react@18.2.47)(react@18.2.0) + '@emotion/react': 11.11.4(@types/react@18.2.60)(react@18.2.0) + '@emotion/styled': 11.11.0(@emotion/react@11.11.4)(@types/react@18.2.60)(react@18.2.0) csstype: 3.1.3 prop-types: 15.8.1 react: 18.2.0 dev: false - /@mui/system@5.15.3(@emotion/react@11.11.3)(@emotion/styled@11.11.0)(@types/react@18.2.47)(react@18.2.0): - resolution: {integrity: sha512-ewVU4eRgo4VfNMGpO61cKlfWmH7l9s6rA8EknRzuMX3DbSLfmtW2WJJg6qPwragvpPIir0Pp/AdWVSDhyNy5Tw==} + /@mui/system@5.15.11(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@types/react@18.2.60)(react@18.2.0): + resolution: {integrity: sha512-9j35suLFq+MgJo5ktVSHPbkjDLRMBCV17NMBdEQurh6oWyGnLM4uhU4QGZZQ75o0vuhjJghOCA1jkO3+79wKsA==} engines: {node: '>=12.0.0'} peerDependencies: '@emotion/react': ^11.5.0 @@ -3119,33 +3055,33 @@ packages: '@types/react': optional: true dependencies: - '@babel/runtime': 7.23.7 - '@emotion/react': 11.11.3(@types/react@18.2.47)(react@18.2.0) - '@emotion/styled': 11.11.0(@emotion/react@11.11.3)(@types/react@18.2.47)(react@18.2.0) - '@mui/private-theming': 5.15.3(@types/react@18.2.47)(react@18.2.0) - '@mui/styled-engine': 5.15.3(@emotion/react@11.11.3)(@emotion/styled@11.11.0)(react@18.2.0) - '@mui/types': 7.2.12(@types/react@18.2.47) - '@mui/utils': 5.15.3(@types/react@18.2.47)(react@18.2.0) - '@types/react': 18.2.47 + '@babel/runtime': 7.24.0 + '@emotion/react': 11.11.4(@types/react@18.2.60)(react@18.2.0) + '@emotion/styled': 11.11.0(@emotion/react@11.11.4)(@types/react@18.2.60)(react@18.2.0) + '@mui/private-theming': 5.15.11(@types/react@18.2.60)(react@18.2.0) + '@mui/styled-engine': 5.15.11(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(react@18.2.0) + '@mui/types': 7.2.13(@types/react@18.2.60) + '@mui/utils': 5.15.11(@types/react@18.2.60)(react@18.2.0) + '@types/react': 18.2.60 clsx: 2.1.0 csstype: 3.1.3 prop-types: 15.8.1 react: 18.2.0 dev: false - /@mui/types@7.2.12(@types/react@18.2.47): - resolution: {integrity: sha512-3kaHiNm9khCAo0pVe0RenketDSFoZGAlVZ4zDjB/QNZV0XiCj+sh1zkX0VVhQPgYJDlBEzAag+MHJ1tU3vf0Zw==} + /@mui/types@7.2.13(@types/react@18.2.60): + resolution: {integrity: sha512-qP9OgacN62s+l8rdDhSFRe05HWtLLJ5TGclC9I1+tQngbssu0m2dmFZs+Px53AcOs9fD7TbYd4gc9AXzVqO/+g==} peerDependencies: '@types/react': ^17.0.0 || ^18.0.0 peerDependenciesMeta: '@types/react': optional: true dependencies: - '@types/react': 18.2.47 + '@types/react': 18.2.60 dev: false - /@mui/utils@5.15.3(@types/react@18.2.47)(react@18.2.0): - resolution: {integrity: sha512-mT3LiSt9tZWCdx1pl7q4Q5tNo6gdZbvJel286ZHGuj6LQQXjWNAh8qiF9d+LogvNUI+D7eLkTnj605d1zoazfg==} + /@mui/utils@5.15.11(@types/react@18.2.60)(react@18.2.0): + resolution: {integrity: sha512-D6bwqprUa9Stf8ft0dcMqWyWDKEo7D+6pB1k8WajbqlYIRA8J8Kw9Ra7PSZKKePGBGWO+/xxrX1U8HpG/aXQCw==} engines: {node: '>=12.0.0'} peerDependencies: '@types/react': ^17.0.0 || ^18.0.0 @@ -3154,9 +3090,9 @@ packages: '@types/react': optional: true dependencies: - '@babel/runtime': 7.23.7 + '@babel/runtime': 7.24.0 '@types/prop-types': 15.7.11 - '@types/react': 18.2.47 + '@types/react': 18.2.60 prop-types: 15.8.1 react: 18.2.0 react-is: 18.2.0 @@ -3180,7 +3116,7 @@ packages: engines: {node: '>= 8'} dependencies: '@nodelib/fs.scandir': 2.1.5 - fastq: 1.16.0 + fastq: 1.17.1 dev: true /@npmcli/fs@1.1.1: @@ -3188,7 +3124,7 @@ packages: requiresBuild: true dependencies: '@gar/promisify': 1.1.3 - semver: 7.5.4 + semver: 7.6.0 dev: false optional: true @@ -3207,7 +3143,7 @@ packages: resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} engines: {node: '>=14'} requiresBuild: true - dev: false + dev: true optional: true /@popperjs/core@2.11.8: @@ -3226,12 +3162,12 @@ packages: react-dom: 18.2.0(react@18.2.0) dev: false - /@remix-run/router@1.14.1: - resolution: {integrity: sha512-Qg4DMQsfPNAs88rb2xkdk03N3bjK4jgX5fR24eHCTR9q6PrhZQZ4UJBPzCHJkIpTRN1UKxx2DzjZmnC+7Lj0Ow==} + /@remix-run/router@1.15.2: + resolution: {integrity: sha512-+Rnav+CaoTE5QJc4Jcwh5toUpnVLKYbpU6Ys0zqbakqbaLQHeglLVHPfxOiQqdNmUy5C2lXz5dwC6tQNX2JW2Q==} engines: {node: '>=14.0.0'} dev: false - /@rollup/plugin-babel@5.3.1(@babel/core@7.23.7)(rollup@2.79.1): + /@rollup/plugin-babel@5.3.1(@babel/core@7.24.0)(rollup@2.79.1): resolution: {integrity: sha512-WFfdLWU/xVWKeRQnKmIAQULUI7Il0gZnBIH/ZFO069wYIfPu+8zrfp/KMW0atmELoRDq8FbiP3VCss9MhCut7Q==} engines: {node: '>= 10.0.0'} peerDependencies: @@ -3242,12 +3178,27 @@ packages: '@types/babel__core': optional: true dependencies: - '@babel/core': 7.23.7 + '@babel/core': 7.24.0 '@babel/helper-module-imports': 7.22.15 '@rollup/pluginutils': 3.1.0(rollup@2.79.1) rollup: 2.79.1 dev: true + /@rollup/plugin-inject@5.0.5(rollup@2.79.1): + resolution: {integrity: sha512-2+DEJbNBoPROPkgTDNe8/1YXWcqxbN5DTjASVIOx8HS+pITXushyNiBV56RB08zuptzz8gT3YfkqriTBVycepg==} + engines: {node: '>=14.0.0'} + peerDependencies: + rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 + peerDependenciesMeta: + rollup: + optional: true + dependencies: + '@rollup/pluginutils': 5.1.0(rollup@2.79.1) + estree-walker: 2.0.2 + magic-string: 0.30.7 + rollup: 2.79.1 + dev: true + /@rollup/plugin-node-resolve@11.2.1(rollup@2.79.1): resolution: {integrity: sha512-yc2n43jcqVyGE2sqV5/YCmocy9ArjVAP/BeXyTtADTBBX6V0e5UMqwO8CdQ0kzjb6zu5P1qMzsScCMRvE9OlVg==} engines: {node: '>= 10.0.0'} @@ -3300,117 +3251,149 @@ packages: rollup: 2.79.1 dev: true - /@rollup/rollup-android-arm-eabi@4.9.4: - resolution: {integrity: sha512-ub/SN3yWqIv5CWiAZPHVS1DloyZsJbtXmX4HxUTIpS0BHm9pW5iYBo2mIZi+hE3AeiTzHz33blwSnhdUo+9NpA==} + /@rollup/rollup-android-arm-eabi@4.12.0: + resolution: {integrity: sha512-+ac02NL/2TCKRrJu2wffk1kZ+RyqxVUlbjSagNgPm94frxtr+XDL12E5Ll1enWskLrtrZ2r8L3wED1orIibV/w==} cpu: [arm] os: [android] requiresBuild: true dev: true optional: true - /@rollup/rollup-android-arm64@4.9.4: - resolution: {integrity: sha512-ehcBrOR5XTl0W0t2WxfTyHCR/3Cq2jfb+I4W+Ch8Y9b5G+vbAecVv0Fx/J1QKktOrgUYsIKxWAKgIpvw56IFNA==} + /@rollup/rollup-android-arm64@4.12.0: + resolution: {integrity: sha512-OBqcX2BMe6nvjQ0Nyp7cC90cnumt8PXmO7Dp3gfAju/6YwG0Tj74z1vKrfRz7qAv23nBcYM8BCbhrsWqO7PzQQ==} cpu: [arm64] os: [android] requiresBuild: true dev: true optional: true - /@rollup/rollup-darwin-arm64@4.9.4: - resolution: {integrity: sha512-1fzh1lWExwSTWy8vJPnNbNM02WZDS8AW3McEOb7wW+nPChLKf3WG2aG7fhaUmfX5FKw9zhsF5+MBwArGyNM7NA==} + /@rollup/rollup-darwin-arm64@4.12.0: + resolution: {integrity: sha512-X64tZd8dRE/QTrBIEs63kaOBG0b5GVEd3ccoLtyf6IdXtHdh8h+I56C2yC3PtC9Ucnv0CpNFJLqKFVgCYe0lOQ==} cpu: [arm64] os: [darwin] requiresBuild: true dev: true optional: true - /@rollup/rollup-darwin-x64@4.9.4: - resolution: {integrity: sha512-Gc6cukkF38RcYQ6uPdiXi70JB0f29CwcQ7+r4QpfNpQFVHXRd0DfWFidoGxjSx1DwOETM97JPz1RXL5ISSB0pA==} + /@rollup/rollup-darwin-x64@4.12.0: + resolution: {integrity: sha512-cc71KUZoVbUJmGP2cOuiZ9HSOP14AzBAThn3OU+9LcA1+IUqswJyR1cAJj3Mg55HbjZP6OLAIscbQsQLrpgTOg==} cpu: [x64] os: [darwin] requiresBuild: true dev: true optional: true - /@rollup/rollup-linux-arm-gnueabihf@4.9.4: - resolution: {integrity: sha512-g21RTeFzoTl8GxosHbnQZ0/JkuFIB13C3T7Y0HtKzOXmoHhewLbVTFBQZu+z5m9STH6FZ7L/oPgU4Nm5ErN2fw==} + /@rollup/rollup-linux-arm-gnueabihf@4.12.0: + resolution: {integrity: sha512-a6w/Y3hyyO6GlpKL2xJ4IOh/7d+APaqLYdMf86xnczU3nurFTaVN9s9jOXQg97BE4nYm/7Ga51rjec5nfRdrvA==} cpu: [arm] os: [linux] requiresBuild: true dev: true optional: true - /@rollup/rollup-linux-arm64-gnu@4.9.4: - resolution: {integrity: sha512-TVYVWD/SYwWzGGnbfTkrNpdE4HON46orgMNHCivlXmlsSGQOx/OHHYiQcMIOx38/GWgwr/po2LBn7wypkWw/Mg==} + /@rollup/rollup-linux-arm64-gnu@4.12.0: + resolution: {integrity: sha512-0fZBq27b+D7Ar5CQMofVN8sggOVhEtzFUwOwPppQt0k+VR+7UHMZZY4y+64WJ06XOhBTKXtQB/Sv0NwQMXyNAA==} cpu: [arm64] os: [linux] requiresBuild: true dev: true optional: true - /@rollup/rollup-linux-arm64-musl@4.9.4: - resolution: {integrity: sha512-XcKvuendwizYYhFxpvQ3xVpzje2HHImzg33wL9zvxtj77HvPStbSGI9czrdbfrf8DGMcNNReH9pVZv8qejAQ5A==} + /@rollup/rollup-linux-arm64-musl@4.12.0: + resolution: {integrity: sha512-eTvzUS3hhhlgeAv6bfigekzWZjaEX9xP9HhxB0Dvrdbkk5w/b+1Sxct2ZuDxNJKzsRStSq1EaEkVSEe7A7ipgQ==} cpu: [arm64] os: [linux] requiresBuild: true dev: true optional: true - /@rollup/rollup-linux-riscv64-gnu@4.9.4: - resolution: {integrity: sha512-LFHS/8Q+I9YA0yVETyjonMJ3UA+DczeBd/MqNEzsGSTdNvSJa1OJZcSH8GiXLvcizgp9AlHs2walqRcqzjOi3A==} + /@rollup/rollup-linux-riscv64-gnu@4.12.0: + resolution: {integrity: sha512-ix+qAB9qmrCRiaO71VFfY8rkiAZJL8zQRXveS27HS+pKdjwUfEhqo2+YF2oI+H/22Xsiski+qqwIBxVewLK7sw==} cpu: [riscv64] os: [linux] requiresBuild: true dev: true optional: true - /@rollup/rollup-linux-x64-gnu@4.9.4: - resolution: {integrity: sha512-dIYgo+j1+yfy81i0YVU5KnQrIJZE8ERomx17ReU4GREjGtDW4X+nvkBak2xAUpyqLs4eleDSj3RrV72fQos7zw==} + /@rollup/rollup-linux-x64-gnu@4.12.0: + resolution: {integrity: sha512-TenQhZVOtw/3qKOPa7d+QgkeM6xY0LtwzR8OplmyL5LrgTWIXpTQg2Q2ycBf8jm+SFW2Wt/DTn1gf7nFp3ssVA==} cpu: [x64] os: [linux] requiresBuild: true dev: true optional: true - /@rollup/rollup-linux-x64-musl@4.9.4: - resolution: {integrity: sha512-RoaYxjdHQ5TPjaPrLsfKqR3pakMr3JGqZ+jZM0zP2IkDtsGa4CqYaWSfQmZVgFUCgLrTnzX+cnHS3nfl+kB6ZQ==} + /@rollup/rollup-linux-x64-musl@4.12.0: + resolution: {integrity: sha512-LfFdRhNnW0zdMvdCb5FNuWlls2WbbSridJvxOvYWgSBOYZtgBfW9UGNJG//rwMqTX1xQE9BAodvMH9tAusKDUw==} cpu: [x64] os: [linux] requiresBuild: true dev: true optional: true - /@rollup/rollup-win32-arm64-msvc@4.9.4: - resolution: {integrity: sha512-T8Q3XHV+Jjf5e49B4EAaLKV74BbX7/qYBRQ8Wop/+TyyU0k+vSjiLVSHNWdVd1goMjZcbhDmYZUYW5RFqkBNHQ==} + /@rollup/rollup-win32-arm64-msvc@4.12.0: + resolution: {integrity: sha512-JPDxovheWNp6d7AHCgsUlkuCKvtu3RB55iNEkaQcf0ttsDU/JZF+iQnYcQJSk/7PtT4mjjVG8N1kpwnI9SLYaw==} cpu: [arm64] os: [win32] requiresBuild: true dev: true optional: true - /@rollup/rollup-win32-ia32-msvc@4.9.4: - resolution: {integrity: sha512-z+JQ7JirDUHAsMecVydnBPWLwJjbppU+7LZjffGf+Jvrxq+dVjIE7By163Sc9DKc3ADSU50qPVw0KonBS+a+HQ==} + /@rollup/rollup-win32-ia32-msvc@4.12.0: + resolution: {integrity: sha512-fjtuvMWRGJn1oZacG8IPnzIV6GF2/XG+h71FKn76OYFqySXInJtseAqdprVTDTyqPxQOG9Exak5/E9Z3+EJ8ZA==} cpu: [ia32] os: [win32] requiresBuild: true dev: true optional: true - /@rollup/rollup-win32-x64-msvc@4.9.4: - resolution: {integrity: sha512-LfdGXCV9rdEify1oxlN9eamvDSjv9md9ZVMAbNHA87xqIfFCxImxan9qZ8+Un54iK2nnqPlbnSi4R54ONtbWBw==} + /@rollup/rollup-win32-x64-msvc@4.12.0: + resolution: {integrity: sha512-ZYmr5mS2wd4Dew/JjT0Fqi2NPB/ZhZ2VvPp7SmvPZb4Y1CG/LRcS6tcRo2cYU7zLK5A7cdbhWnnWmUjoI4qapg==} cpu: [x64] os: [win32] requiresBuild: true dev: true optional: true - /@rushstack/ts-command-line@4.17.1: - resolution: {integrity: sha512-2jweO1O57BYP5qdBGl6apJLB+aRIn5ccIRTPDyULh0KMwVzFqWtw6IZWt1qtUoZD/pD2RNkIOosH6Cq45rIYeg==} + /@rushstack/node-core-library@4.0.2(@types/node@20.11.22): + resolution: {integrity: sha512-hyES82QVpkfQMeBMteQUnrhASL/KHPhd7iJ8euduwNJG4mu2GSOKybf0rOEjOm1Wz7CwJEUm9y0yD7jg2C1bfg==} + peerDependencies: + '@types/node': '*' + peerDependenciesMeta: + '@types/node': + optional: true + dependencies: + '@types/node': 20.11.22 + fs-extra: 7.0.1 + import-lazy: 4.0.0 + jju: 1.4.0 + resolve: 1.22.8 + semver: 7.5.4 + z-schema: 5.0.5 + dev: false + + /@rushstack/terminal@0.10.0(@types/node@20.11.22): + resolution: {integrity: sha512-UbELbXnUdc7EKwfH2sb8ChqNgapUOdqcCIdQP4NGxBpTZV2sQyeekuK3zmfQSa/MN+/7b4kBogl2wq0vpkpYGw==} + peerDependencies: + '@types/node': '*' + peerDependenciesMeta: + '@types/node': + optional: true + dependencies: + '@rushstack/node-core-library': 4.0.2(@types/node@20.11.22) + '@types/node': 20.11.22 + supports-color: 8.1.1 + dev: false + + /@rushstack/ts-command-line@4.18.0(@types/node@20.11.22): + resolution: {integrity: sha512-iq8+NCtnOhz4BR4hwmFCRzULmFd8hSbDqJWbdGG44t/fXMRsK3Drft1fiDkxWGPuD3V1x3RDYdXxAfJqKU3XpQ==} dependencies: + '@rushstack/terminal': 0.10.0(@types/node@20.11.22) '@types/argparse': 1.0.38 argparse: 1.0.10 - colors: 1.2.5 string-argv: 0.3.2 + transitivePeerDependencies: + - '@types/node' dev: false /@sinonjs/commons@2.0.0: @@ -3419,22 +3402,16 @@ packages: type-detect: 4.0.8 dev: true - /@sinonjs/commons@3.0.0: - resolution: {integrity: sha512-jXBtWAF4vmdNmZgD5FoKsVLv3rPgDnLgPbU84LIJ3otV44vJlDRokVng5v8NFJdCf/da9legHcKaRuZs4L7faA==} + /@sinonjs/commons@3.0.1: + resolution: {integrity: sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==} dependencies: type-detect: 4.0.8 dev: true - /@sinonjs/fake-timers@10.3.0: - resolution: {integrity: sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==} - dependencies: - '@sinonjs/commons': 3.0.0 - dev: true - /@sinonjs/fake-timers@11.2.2: resolution: {integrity: sha512-G2piCSxQ7oWOxwGSAyFHfPIsyeJGXYtc6mFbnFA+kRXkiEnTl8c/8jul2S329iFBnDI9HGoeWWAZvuvOkZccgw==} dependencies: - '@sinonjs/commons': 3.0.0 + '@sinonjs/commons': 3.0.1 dev: true /@sinonjs/samsam@8.0.0: @@ -3449,104 +3426,104 @@ packages: resolution: {integrity: sha512-sXXKG+uL9IrKqViTtao2Ws6dy0znu9sOaP1di/jKGW1M6VssO8vlpXCQcpZ+jisQ1tTFAC5Jo/EOzFbggBagFQ==} dev: true - /@smithy/abort-controller@2.0.16: - resolution: {integrity: sha512-4foO7738k8kM9flMHu3VLabqu7nPgvIj8TB909S0CnKx0YZz/dcDH3pZ/4JHdatfxlZdKF1JWOYCw9+v3HVVsw==} + /@smithy/abort-controller@2.1.3: + resolution: {integrity: sha512-c2aYH2Wu1RVE3rLlVgg2kQOBJGM0WbjReQi5DnPTm2Zb7F0gk7J2aeQeaX2u/lQZoHl6gv8Oac7mt9alU3+f4A==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: - '@smithy/types': 2.8.0 + '@smithy/types': 2.10.1 tslib: 2.6.2 dev: false optional: true - /@smithy/config-resolver@2.0.23: - resolution: {integrity: sha512-XakUqgtP2YY8Mi+Nlif5BiqJgWdvfxJafSpOSQeCOMizu+PUhE4fBQSy6xFcR+eInrwVadaABNxoJyGUMn15ew==} + /@smithy/config-resolver@2.1.4: + resolution: {integrity: sha512-AW2WUZmBAzgO3V3ovKtsUbI3aBNMeQKFDumoqkNxaVDWF/xfnxAWqBKDr/NuG7c06N2Rm4xeZLPiJH/d+na0HA==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: - '@smithy/node-config-provider': 2.1.9 - '@smithy/types': 2.8.0 - '@smithy/util-config-provider': 2.1.0 - '@smithy/util-middleware': 2.0.9 + '@smithy/node-config-provider': 2.2.4 + '@smithy/types': 2.10.1 + '@smithy/util-config-provider': 2.2.1 + '@smithy/util-middleware': 2.1.3 tslib: 2.6.2 dev: false optional: true - /@smithy/core@1.2.2: - resolution: {integrity: sha512-uLjrskLT+mWb0emTR5QaiAIxVEU7ndpptDaVDrTwwhD+RjvHhjIiGQ3YL5jKk1a5VSDQUA2RGkXvJ6XKRcz6Dg==} + /@smithy/core@1.3.5: + resolution: {integrity: sha512-Rrc+e2Jj6Gu7Xbn0jvrzZlSiP2CZocIOfZ9aNUA82+1sa6GBnxqL9+iZ9EKHeD9aqD1nU8EK4+oN2EiFpSv7Yw==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: - '@smithy/middleware-endpoint': 2.3.0 - '@smithy/middleware-retry': 2.0.26 - '@smithy/middleware-serde': 2.0.16 - '@smithy/protocol-http': 3.0.12 - '@smithy/smithy-client': 2.2.1 - '@smithy/types': 2.8.0 - '@smithy/util-middleware': 2.0.9 + '@smithy/middleware-endpoint': 2.4.4 + '@smithy/middleware-retry': 2.1.4 + '@smithy/middleware-serde': 2.1.3 + '@smithy/protocol-http': 3.2.1 + '@smithy/smithy-client': 2.4.2 + '@smithy/types': 2.10.1 + '@smithy/util-middleware': 2.1.3 tslib: 2.6.2 dev: false optional: true - /@smithy/credential-provider-imds@2.1.5: - resolution: {integrity: sha512-VfvE6Wg1MUWwpTZFBnUD7zxvPhLY8jlHCzu6bCjlIYoWgXCDzZAML76IlZUEf45nib3rjehnFgg0s1rgsuN/bg==} + /@smithy/credential-provider-imds@2.2.4: + resolution: {integrity: sha512-DdatjmBZQnhGe1FhI8gO98f7NmvQFSDiZTwC3WMvLTCKQUY+Y1SVkhJqIuLu50Eb7pTheoXQmK+hKYUgpUWsNA==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: - '@smithy/node-config-provider': 2.1.9 - '@smithy/property-provider': 2.0.17 - '@smithy/types': 2.8.0 - '@smithy/url-parser': 2.0.16 + '@smithy/node-config-provider': 2.2.4 + '@smithy/property-provider': 2.1.3 + '@smithy/types': 2.10.1 + '@smithy/url-parser': 2.1.3 tslib: 2.6.2 dev: false optional: true - /@smithy/eventstream-codec@2.0.16: - resolution: {integrity: sha512-umYh5pdCE9GHgiMAH49zu9wXWZKNHHdKPm/lK22WYISTjqu29SepmpWNmPiBLy/yUu4HFEGJHIFrDWhbDlApaw==} + /@smithy/eventstream-codec@2.1.3: + resolution: {integrity: sha512-rGlCVuwSDv6qfKH4/lRxFjcZQnIE0LZ3D4lkMHg7ZSltK9rA74r0VuGSvWVQ4N/d70VZPaniFhp4Z14QYZsa+A==} requiresBuild: true dependencies: '@aws-crypto/crc32': 3.0.0 - '@smithy/types': 2.8.0 - '@smithy/util-hex-encoding': 2.0.0 + '@smithy/types': 2.10.1 + '@smithy/util-hex-encoding': 2.1.1 tslib: 2.6.2 dev: false optional: true - /@smithy/fetch-http-handler@2.3.2: - resolution: {integrity: sha512-O9R/OlnAOTsnysuSDjt0v2q6DcSvCz5cCFC/CFAWWcLyBwJDeFyGTCTszgpQTb19+Fi8uRwZE5/3ziAQBFeDMQ==} + /@smithy/fetch-http-handler@2.4.3: + resolution: {integrity: sha512-Fn/KYJFo6L5I4YPG8WQb2hOmExgRmNpVH5IK2zU3JKrY5FKW7y9ar5e0BexiIC9DhSKqKX+HeWq/Y18fq7Dkpw==} requiresBuild: true dependencies: - '@smithy/protocol-http': 3.0.12 - '@smithy/querystring-builder': 2.0.16 - '@smithy/types': 2.8.0 - '@smithy/util-base64': 2.0.1 + '@smithy/protocol-http': 3.2.1 + '@smithy/querystring-builder': 2.1.3 + '@smithy/types': 2.10.1 + '@smithy/util-base64': 2.1.1 tslib: 2.6.2 dev: false optional: true - /@smithy/hash-node@2.0.18: - resolution: {integrity: sha512-gN2JFvAgnZCyDN9rJgcejfpK0uPPJrSortVVVVWsru9whS7eQey6+gj2eM5ln2i6rHNntIXzal1Fm9XOPuoaKA==} + /@smithy/hash-node@2.1.3: + resolution: {integrity: sha512-FsAPCUj7VNJIdHbSxMd5uiZiF20G2zdSDgrgrDrHqIs/VMxK85Vqk5kMVNNDMCZmMezp6UKnac0B4nAyx7HJ9g==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: - '@smithy/types': 2.8.0 - '@smithy/util-buffer-from': 2.0.0 - '@smithy/util-utf8': 2.0.2 + '@smithy/types': 2.10.1 + '@smithy/util-buffer-from': 2.1.1 + '@smithy/util-utf8': 2.1.1 tslib: 2.6.2 dev: false optional: true - /@smithy/invalid-dependency@2.0.16: - resolution: {integrity: sha512-apEHakT/kmpNo1VFHP4W/cjfeP9U0x5qvfsLJubgp7UM/gq4qYp0GbqdE7QhsjUaYvEnrftRqs7+YrtWreV0wA==} + /@smithy/invalid-dependency@2.1.3: + resolution: {integrity: sha512-wkra7d/G4CbngV4xsjYyAYOvdAhahQje/WymuQdVEnXFExJopEu7fbL5AEAlBPgWHXwu94VnCSG00gVzRfExyg==} requiresBuild: true dependencies: - '@smithy/types': 2.8.0 + '@smithy/types': 2.10.1 tslib: 2.6.2 dev: false optional: true - /@smithy/is-array-buffer@2.0.0: - resolution: {integrity: sha512-z3PjFjMyZNI98JFRJi/U0nGoLWMSJlDjAW4QUX2WNZLas5C0CmVV6LJ01JI0k90l7FvpmixjWxPFmENSClQ7ug==} + /@smithy/is-array-buffer@2.1.1: + resolution: {integrity: sha512-xozSQrcUinPpNPNPds4S7z/FakDTh1MZWtRP/2vQtYB/u3HYrX2UXuZs+VhaKBd6Vc7g2XPr2ZtwGBNDN6fNKQ==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: @@ -3554,186 +3531,186 @@ packages: dev: false optional: true - /@smithy/middleware-content-length@2.0.18: - resolution: {integrity: sha512-ZJ9uKPTfxYheTKSKYB+GCvcj+izw9WGzRLhjn8n254q0jWLojUzn7Vw0l4R/Gq7Wdpf/qmk/ptD+6CCXHNVCaw==} + /@smithy/middleware-content-length@2.1.3: + resolution: {integrity: sha512-aJduhkC+dcXxdnv5ZpM3uMmtGmVFKx412R1gbeykS5HXDmRU6oSsyy2SoHENCkfOGKAQOjVE2WVqDJibC0d21g==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: - '@smithy/protocol-http': 3.0.12 - '@smithy/types': 2.8.0 + '@smithy/protocol-http': 3.2.1 + '@smithy/types': 2.10.1 tslib: 2.6.2 dev: false optional: true - /@smithy/middleware-endpoint@2.3.0: - resolution: {integrity: sha512-VsOAG2YQ8ykjSmKO+CIXdJBIWFo6AAvG6Iw95BakBTqk66/4BI7XyqLevoNSq/lZ6NgZv24sLmrcIN+fLDWBCg==} + /@smithy/middleware-endpoint@2.4.4: + resolution: {integrity: sha512-4yjHyHK2Jul4JUDBo2sTsWY9UshYUnXeb/TAK/MTaPEb8XQvDmpwSFnfIRDU45RY1a6iC9LCnmJNg/yHyfxqkw==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: - '@smithy/middleware-serde': 2.0.16 - '@smithy/node-config-provider': 2.1.9 - '@smithy/shared-ini-file-loader': 2.2.8 - '@smithy/types': 2.8.0 - '@smithy/url-parser': 2.0.16 - '@smithy/util-middleware': 2.0.9 + '@smithy/middleware-serde': 2.1.3 + '@smithy/node-config-provider': 2.2.4 + '@smithy/shared-ini-file-loader': 2.3.4 + '@smithy/types': 2.10.1 + '@smithy/url-parser': 2.1.3 + '@smithy/util-middleware': 2.1.3 tslib: 2.6.2 dev: false optional: true - /@smithy/middleware-retry@2.0.26: - resolution: {integrity: sha512-Qzpxo0U5jfNiq9iD38U3e2bheXwvTEX4eue9xruIvEgh+UKq6dKuGqcB66oBDV7TD/mfoJi9Q/VmaiqwWbEp7A==} + /@smithy/middleware-retry@2.1.4: + resolution: {integrity: sha512-Cyolv9YckZTPli1EkkaS39UklonxMd08VskiuMhURDjC0HHa/AD6aK/YoD21CHv9s0QLg0WMLvk9YeLTKkXaFQ==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: - '@smithy/node-config-provider': 2.1.9 - '@smithy/protocol-http': 3.0.12 - '@smithy/service-error-classification': 2.0.9 - '@smithy/smithy-client': 2.2.1 - '@smithy/types': 2.8.0 - '@smithy/util-middleware': 2.0.9 - '@smithy/util-retry': 2.0.9 + '@smithy/node-config-provider': 2.2.4 + '@smithy/protocol-http': 3.2.1 + '@smithy/service-error-classification': 2.1.3 + '@smithy/smithy-client': 2.4.2 + '@smithy/types': 2.10.1 + '@smithy/util-middleware': 2.1.3 + '@smithy/util-retry': 2.1.3 tslib: 2.6.2 uuid: 8.3.2 dev: false optional: true - /@smithy/middleware-serde@2.0.16: - resolution: {integrity: sha512-5EAd4t30pcc4M8TSSGq7q/x5IKrxfXR5+SrU4bgxNy7RPHQo2PSWBUco9C+D9Tfqp/JZvprRpK42dnupZafk2g==} + /@smithy/middleware-serde@2.1.3: + resolution: {integrity: sha512-s76LId+TwASrHhUa9QS4k/zeXDUAuNuddKklQzRgumbzge5BftVXHXIqL4wQxKGLocPwfgAOXWx+HdWhQk9hTg==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: - '@smithy/types': 2.8.0 + '@smithy/types': 2.10.1 tslib: 2.6.2 dev: false optional: true - /@smithy/middleware-stack@2.0.10: - resolution: {integrity: sha512-I2rbxctNq9FAPPEcuA1ntZxkTKOPQFy7YBPOaD/MLg1zCvzv21CoNxR0py6J8ZVC35l4qE4nhxB0f7TF5/+Ldw==} + /@smithy/middleware-stack@2.1.3: + resolution: {integrity: sha512-opMFufVQgvBSld/b7mD7OOEBxF6STyraVr1xel1j0abVILM8ALJvRoFbqSWHGmaDlRGIiV9Q5cGbWi0sdiEaLQ==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: - '@smithy/types': 2.8.0 + '@smithy/types': 2.10.1 tslib: 2.6.2 dev: false optional: true - /@smithy/node-config-provider@2.1.9: - resolution: {integrity: sha512-tUyW/9xrRy+s7RXkmQhgYkAPMpTIF8izK4orhHjNFEKR3QZiOCbWB546Y8iB/Fpbm3O9+q0Af9rpywLKJOwtaQ==} + /@smithy/node-config-provider@2.2.4: + resolution: {integrity: sha512-nqazHCp8r4KHSFhRQ+T0VEkeqvA0U+RhehBSr1gunUuNW3X7j0uDrWBxB2gE9eutzy6kE3Y7L+Dov/UXT871vg==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: - '@smithy/property-provider': 2.0.17 - '@smithy/shared-ini-file-loader': 2.2.8 - '@smithy/types': 2.8.0 + '@smithy/property-provider': 2.1.3 + '@smithy/shared-ini-file-loader': 2.3.4 + '@smithy/types': 2.10.1 tslib: 2.6.2 dev: false optional: true - /@smithy/node-http-handler@2.2.2: - resolution: {integrity: sha512-XO58TO/Eul/IBQKFKaaBtXJi0ItEQQCT+NI4IiKHCY/4KtqaUT6y/wC1EvDqlA9cP7Dyjdj7FdPs4DyynH3u7g==} + /@smithy/node-http-handler@2.4.1: + resolution: {integrity: sha512-HCkb94soYhJMxPCa61wGKgmeKpJ3Gftx1XD6bcWEB2wMV1L9/SkQu/6/ysKBnbOzWRE01FGzwrTxucHypZ8rdg==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: - '@smithy/abort-controller': 2.0.16 - '@smithy/protocol-http': 3.0.12 - '@smithy/querystring-builder': 2.0.16 - '@smithy/types': 2.8.0 + '@smithy/abort-controller': 2.1.3 + '@smithy/protocol-http': 3.2.1 + '@smithy/querystring-builder': 2.1.3 + '@smithy/types': 2.10.1 tslib: 2.6.2 dev: false optional: true - /@smithy/property-provider@2.0.17: - resolution: {integrity: sha512-+VkeZbVu7qtQ2DjI48Qwaf9fPOr3gZIwxQpuLJgRRSkWsdSvmaTCxI3gzRFKePB63Ts9r4yjn4HkxSCSkdWmcQ==} + /@smithy/property-provider@2.1.3: + resolution: {integrity: sha512-bMz3se+ySKWNrgm7eIiQMa2HO/0fl2D0HvLAdg9pTMcpgp4SqOAh6bz7Ik6y7uQqSrk4rLjIKgbQ6yzYgGehCQ==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: - '@smithy/types': 2.8.0 + '@smithy/types': 2.10.1 tslib: 2.6.2 dev: false optional: true - /@smithy/protocol-http@3.0.12: - resolution: {integrity: sha512-Xz4iaqLiaBfbQpB9Hgi3VcZYbP7xRDXYhd8XWChh4v94uw7qwmvlxdU5yxzfm6ACJM66phHrTbS5TVvj5uQ72w==} + /@smithy/protocol-http@3.2.1: + resolution: {integrity: sha512-KLrQkEw4yJCeAmAH7hctE8g9KwA7+H2nSJwxgwIxchbp/L0B5exTdOQi9D5HinPLlothoervGmhpYKelZ6AxIA==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: - '@smithy/types': 2.8.0 + '@smithy/types': 2.10.1 tslib: 2.6.2 dev: false optional: true - /@smithy/querystring-builder@2.0.16: - resolution: {integrity: sha512-Q/GsJT0C0mijXMRs7YhZLLCP5FcuC4797lYjKQkME5CZohnLC4bEhylAd2QcD3gbMKNjCw8+T2I27WKiV/wToA==} + /@smithy/querystring-builder@2.1.3: + resolution: {integrity: sha512-kFD3PnNqKELe6m9GRHQw/ftFFSZpnSeQD4qvgDB6BQN6hREHELSosVFUMPN4M3MDKN2jAwk35vXHLoDrNfKu0A==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: - '@smithy/types': 2.8.0 - '@smithy/util-uri-escape': 2.0.0 + '@smithy/types': 2.10.1 + '@smithy/util-uri-escape': 2.1.1 tslib: 2.6.2 dev: false optional: true - /@smithy/querystring-parser@2.0.16: - resolution: {integrity: sha512-c4ueAuL6BDYKWpkubjrQthZKoC3L5kql5O++ovekNxiexRXTlLIVlCR4q3KziOktLIw66EU9SQljPXd/oN6Okg==} + /@smithy/querystring-parser@2.1.3: + resolution: {integrity: sha512-3+CWJoAqcBMR+yvz6D+Fc5VdoGFtfenW6wqSWATWajrRMGVwJGPT3Vy2eb2bnMktJc4HU4bpjeovFa566P3knQ==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: - '@smithy/types': 2.8.0 + '@smithy/types': 2.10.1 tslib: 2.6.2 dev: false optional: true - /@smithy/service-error-classification@2.0.9: - resolution: {integrity: sha512-0K+8GvtwI7VkGmmInPydM2XZyBfIqLIbfR7mDQ+oPiz8mIinuHbV6sxOLdvX1Jv/myk7XTK9orgt3tuEpBu/zg==} + /@smithy/service-error-classification@2.1.3: + resolution: {integrity: sha512-iUrpSsem97bbXHHT/v3s7vaq8IIeMo6P6cXdeYHrx0wOJpMeBGQF7CB0mbJSiTm3//iq3L55JiEm8rA7CTVI8A==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: - '@smithy/types': 2.8.0 + '@smithy/types': 2.10.1 dev: false optional: true - /@smithy/shared-ini-file-loader@2.2.8: - resolution: {integrity: sha512-E62byatbwSWrtq9RJ7xN40tqrRKDGrEL4EluyNpaIDvfvet06a/QC58oHw2FgVaEgkj0tXZPjZaKrhPfpoU0qw==} + /@smithy/shared-ini-file-loader@2.3.4: + resolution: {integrity: sha512-CiZmPg9GeDKbKmJGEFvJBsJcFnh0AQRzOtQAzj1XEa8N/0/uSN/v1LYzgO7ry8hhO8+9KB7+DhSW0weqBra4Aw==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: - '@smithy/types': 2.8.0 + '@smithy/types': 2.10.1 tslib: 2.6.2 dev: false optional: true - /@smithy/signature-v4@2.0.19: - resolution: {integrity: sha512-nwc3JihdM+kcJjtORv/n7qRHN2Kfh7S2RJI2qr8pz9UcY5TD8rSCRGQ0g81HgyS3jZ5X9U/L4p014P3FonBPhg==} + /@smithy/signature-v4@2.1.3: + resolution: {integrity: sha512-Jq4iPPdCmJojZTsPePn4r1ULShh6ONkokLuxp1Lnk4Sq7r7rJp4HlA1LbPBq4bD64TIzQezIpr1X+eh5NYkNxw==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: - '@smithy/eventstream-codec': 2.0.16 - '@smithy/is-array-buffer': 2.0.0 - '@smithy/types': 2.8.0 - '@smithy/util-hex-encoding': 2.0.0 - '@smithy/util-middleware': 2.0.9 - '@smithy/util-uri-escape': 2.0.0 - '@smithy/util-utf8': 2.0.2 + '@smithy/eventstream-codec': 2.1.3 + '@smithy/is-array-buffer': 2.1.1 + '@smithy/types': 2.10.1 + '@smithy/util-hex-encoding': 2.1.1 + '@smithy/util-middleware': 2.1.3 + '@smithy/util-uri-escape': 2.1.1 + '@smithy/util-utf8': 2.1.1 tslib: 2.6.2 dev: false optional: true - /@smithy/smithy-client@2.2.1: - resolution: {integrity: sha512-SpD7FLK92XV2fon2hMotaNDa2w5VAy5/uVjP9WFmjGSgWM8pTPVkHcDl1yFs5Z8LYbij0FSz+DbCBK6i+uXXUA==} + /@smithy/smithy-client@2.4.2: + resolution: {integrity: sha512-ntAFYN51zu3N3mCd95YFcFi/8rmvm//uX+HnK24CRbI6k5Rjackn0JhgKz5zOx/tbNvOpgQIwhSX+1EvEsBLbA==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: - '@smithy/middleware-endpoint': 2.3.0 - '@smithy/middleware-stack': 2.0.10 - '@smithy/protocol-http': 3.0.12 - '@smithy/types': 2.8.0 - '@smithy/util-stream': 2.0.24 + '@smithy/middleware-endpoint': 2.4.4 + '@smithy/middleware-stack': 2.1.3 + '@smithy/protocol-http': 3.2.1 + '@smithy/types': 2.10.1 + '@smithy/util-stream': 2.1.3 tslib: 2.6.2 dev: false optional: true - /@smithy/types@2.8.0: - resolution: {integrity: sha512-h9sz24cFgt/W1Re22OlhQKmUZkNh244ApgRsUDYinqF8R+QgcsBIX344u2j61TPshsTz3CvL6HYU1DnQdsSrHA==} + /@smithy/types@2.10.1: + resolution: {integrity: sha512-hjQO+4ru4cQ58FluQvKKiyMsFg0A6iRpGm2kqdH8fniyNd2WyanoOsYJfMX/IFLuLxEoW6gnRkNZy1y6fUUhtA==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: @@ -3741,36 +3718,36 @@ packages: dev: false optional: true - /@smithy/url-parser@2.0.16: - resolution: {integrity: sha512-Wfz5WqAoRT91TjRy1JeLR0fXtkIXHGsMbgzKFTx7E68SrZ55TB8xoG+vm11Ru4gheFTMXjAjwAxv1jQdC+pAQA==} + /@smithy/url-parser@2.1.3: + resolution: {integrity: sha512-X1NRA4WzK/ihgyzTpeGvI9Wn45y8HmqF4AZ/FazwAv8V203Ex+4lXqcYI70naX9ETqbqKVzFk88W6WJJzCggTQ==} requiresBuild: true dependencies: - '@smithy/querystring-parser': 2.0.16 - '@smithy/types': 2.8.0 + '@smithy/querystring-parser': 2.1.3 + '@smithy/types': 2.10.1 tslib: 2.6.2 dev: false optional: true - /@smithy/util-base64@2.0.1: - resolution: {integrity: sha512-DlI6XFYDMsIVN+GH9JtcRp3j02JEVuWIn/QOZisVzpIAprdsxGveFed0bjbMRCqmIFe8uetn5rxzNrBtIGrPIQ==} + /@smithy/util-base64@2.1.1: + resolution: {integrity: sha512-UfHVpY7qfF/MrgndI5PexSKVTxSZIdz9InghTFa49QOvuu9I52zLPLUHXvHpNuMb1iD2vmc6R+zbv/bdMipR/g==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: - '@smithy/util-buffer-from': 2.0.0 + '@smithy/util-buffer-from': 2.1.1 tslib: 2.6.2 dev: false optional: true - /@smithy/util-body-length-browser@2.0.1: - resolution: {integrity: sha512-NXYp3ttgUlwkaug4bjBzJ5+yIbUbUx8VsSLuHZROQpoik+gRkIBeEG9MPVYfvPNpuXb/puqodeeUXcKFe7BLOQ==} + /@smithy/util-body-length-browser@2.1.1: + resolution: {integrity: sha512-ekOGBLvs1VS2d1zM2ER4JEeBWAvIOUKeaFch29UjjJsxmZ/f0L3K3x0dEETgh3Q9bkZNHgT+rkdl/J/VUqSRag==} requiresBuild: true dependencies: tslib: 2.6.2 dev: false optional: true - /@smithy/util-body-length-node@2.1.0: - resolution: {integrity: sha512-/li0/kj/y3fQ3vyzn36NTLGmUwAICb7Jbe/CsWCktW363gh1MOcpEcSO3mJ344Gv2dqz8YJCLQpb6hju/0qOWw==} + /@smithy/util-body-length-node@2.2.1: + resolution: {integrity: sha512-/ggJG+ta3IDtpNVq4ktmEUtOkH1LW64RHB5B0hcr5ZaWBmo96UX2cIOVbjCqqDickTXqBWZ4ZO0APuaPrD7Abg==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: @@ -3778,18 +3755,18 @@ packages: dev: false optional: true - /@smithy/util-buffer-from@2.0.0: - resolution: {integrity: sha512-/YNnLoHsR+4W4Vf2wL5lGv0ksg8Bmk3GEGxn2vEQt52AQaPSCuaO5PM5VM7lP1K9qHRKHwrPGktqVoAHKWHxzw==} + /@smithy/util-buffer-from@2.1.1: + resolution: {integrity: sha512-clhNjbyfqIv9Md2Mg6FffGVrJxw7bgK7s3Iax36xnfVj6cg0fUG7I4RH0XgXJF8bxi+saY5HR21g2UPKSxVCXg==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: - '@smithy/is-array-buffer': 2.0.0 + '@smithy/is-array-buffer': 2.1.1 tslib: 2.6.2 dev: false optional: true - /@smithy/util-config-provider@2.1.0: - resolution: {integrity: sha512-S6V0JvvhQgFSGLcJeT1CBsaTR03MM8qTuxMH9WPCCddlSo2W0V5jIHimHtIQALMLEDPGQ0ROSRr/dU0O+mxiQg==} + /@smithy/util-config-provider@2.2.1: + resolution: {integrity: sha512-50VL/tx9oYYcjJn/qKqNy7sCtpD0+s8XEBamIFo4mFFTclKMNp+rsnymD796uybjiIquB7VCB/DeafduL0y2kw==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: @@ -3797,47 +3774,47 @@ packages: dev: false optional: true - /@smithy/util-defaults-mode-browser@2.0.24: - resolution: {integrity: sha512-TsP5mBuLgO2C21+laNG2nHYZEyUdkbGURv2tHvSuQQxLz952MegX95uwdxOY2jR2H4GoKuVRfdJq7w4eIjGYeg==} + /@smithy/util-defaults-mode-browser@2.1.4: + resolution: {integrity: sha512-J6XAVY+/g7jf03QMnvqPyU+8jqGrrtXoKWFVOS+n1sz0Lg8HjHJ1ANqaDN+KTTKZRZlvG8nU5ZrJOUL6VdwgcQ==} engines: {node: '>= 10.0.0'} requiresBuild: true dependencies: - '@smithy/property-provider': 2.0.17 - '@smithy/smithy-client': 2.2.1 - '@smithy/types': 2.8.0 + '@smithy/property-provider': 2.1.3 + '@smithy/smithy-client': 2.4.2 + '@smithy/types': 2.10.1 bowser: 2.11.0 tslib: 2.6.2 dev: false optional: true - /@smithy/util-defaults-mode-node@2.0.32: - resolution: {integrity: sha512-d0S33dXA2cq1NyorVMroMrEtqKMr3MlyLITcfTBf9pXiigYiPMOtbSI7czHIfDbuVuM89Cg0urAgpt73QV9mPQ==} + /@smithy/util-defaults-mode-node@2.2.3: + resolution: {integrity: sha512-ttUISrv1uVOjTlDa3nznX33f0pthoUlP+4grhTvOzcLhzArx8qHB94/untGACOG3nlf8vU20nI2iWImfzoLkYA==} engines: {node: '>= 10.0.0'} requiresBuild: true dependencies: - '@smithy/config-resolver': 2.0.23 - '@smithy/credential-provider-imds': 2.1.5 - '@smithy/node-config-provider': 2.1.9 - '@smithy/property-provider': 2.0.17 - '@smithy/smithy-client': 2.2.1 - '@smithy/types': 2.8.0 + '@smithy/config-resolver': 2.1.4 + '@smithy/credential-provider-imds': 2.2.4 + '@smithy/node-config-provider': 2.2.4 + '@smithy/property-provider': 2.1.3 + '@smithy/smithy-client': 2.4.2 + '@smithy/types': 2.10.1 tslib: 2.6.2 dev: false optional: true - /@smithy/util-endpoints@1.0.8: - resolution: {integrity: sha512-l8zVuyZZ61IzZBYp5NWvsAhbaAjYkt0xg9R4xUASkg5SEeTT2meHOJwJHctKMFUXe4QZbn9fR2MaBYjP2119+w==} + /@smithy/util-endpoints@1.1.4: + resolution: {integrity: sha512-/qAeHmK5l4yQ4/bCIJ9p49wDe9rwWtOzhPHblu386fwPNT3pxmodgcs9jDCV52yK9b4rB8o9Sj31P/7Vzka1cg==} engines: {node: '>= 14.0.0'} requiresBuild: true dependencies: - '@smithy/node-config-provider': 2.1.9 - '@smithy/types': 2.8.0 + '@smithy/node-config-provider': 2.2.4 + '@smithy/types': 2.10.1 tslib: 2.6.2 dev: false optional: true - /@smithy/util-hex-encoding@2.0.0: - resolution: {integrity: sha512-c5xY+NUnFqG6d7HFh1IFfrm3mGl29lC+vF+geHv4ToiuJCBmIfzx6IeHLg+OgRdPFKDXIw6pvi+p3CsscaMcMA==} + /@smithy/util-hex-encoding@2.1.1: + resolution: {integrity: sha512-3UNdP2pkYUUBGEXzQI9ODTDK+Tcu1BlCyDBaRHwyxhA+8xLP8agEKQq4MGmpjqb4VQAjq9TwlCQX0kP6XDKYLg==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: @@ -3845,45 +3822,45 @@ packages: dev: false optional: true - /@smithy/util-middleware@2.0.9: - resolution: {integrity: sha512-PnCnBJ07noMX1lMDTEefmxSlusWJUiLfrme++MfK5TD0xz8NYmakgoXy5zkF/16zKGmiwOeKAztWT/Vjk1KRIQ==} + /@smithy/util-middleware@2.1.3: + resolution: {integrity: sha512-/+2fm7AZ2ozl5h8wM++ZP0ovE9/tiUUAHIbCfGfb3Zd3+Dyk17WODPKXBeJ/TnK5U+x743QmA0xHzlSm8I/qhw==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: - '@smithy/types': 2.8.0 + '@smithy/types': 2.10.1 tslib: 2.6.2 dev: false optional: true - /@smithy/util-retry@2.0.9: - resolution: {integrity: sha512-46BFWe9RqB6g7f4mxm3W3HlqknqQQmWHKlhoqSFZuGNuiDU5KqmpebMbvC3tjTlUkqn4xa2Z7s3Hwb0HNs5scw==} + /@smithy/util-retry@2.1.3: + resolution: {integrity: sha512-Kbvd+GEMuozbNUU3B89mb99tbufwREcyx2BOX0X2+qHjq6Gvsah8xSDDgxISDwcOHoDqUWO425F0Uc/QIRhYkg==} engines: {node: '>= 14.0.0'} requiresBuild: true dependencies: - '@smithy/service-error-classification': 2.0.9 - '@smithy/types': 2.8.0 + '@smithy/service-error-classification': 2.1.3 + '@smithy/types': 2.10.1 tslib: 2.6.2 dev: false optional: true - /@smithy/util-stream@2.0.24: - resolution: {integrity: sha512-hRpbcRrOxDriMVmbya+Mv77VZVupxRAsfxVDKS54XuiURhdiwCUXJP0X1iJhHinuUf6n8pBF0MkG9C8VooMnWw==} + /@smithy/util-stream@2.1.3: + resolution: {integrity: sha512-HvpEQbP8raTy9n86ZfXiAkf3ezp1c3qeeO//zGqwZdrfaoOpGKQgF2Sv1IqZp7wjhna7pvczWaGUHjcOPuQwKw==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: - '@smithy/fetch-http-handler': 2.3.2 - '@smithy/node-http-handler': 2.2.2 - '@smithy/types': 2.8.0 - '@smithy/util-base64': 2.0.1 - '@smithy/util-buffer-from': 2.0.0 - '@smithy/util-hex-encoding': 2.0.0 - '@smithy/util-utf8': 2.0.2 + '@smithy/fetch-http-handler': 2.4.3 + '@smithy/node-http-handler': 2.4.1 + '@smithy/types': 2.10.1 + '@smithy/util-base64': 2.1.1 + '@smithy/util-buffer-from': 2.1.1 + '@smithy/util-hex-encoding': 2.1.1 + '@smithy/util-utf8': 2.1.1 tslib: 2.6.2 dev: false optional: true - /@smithy/util-uri-escape@2.0.0: - resolution: {integrity: sha512-ebkxsqinSdEooQduuk9CbKcI+wheijxEb3utGXkCoYQkJnwTnLbH1JXGimJtUkQwNQbsbuYwG2+aFVyZf5TLaw==} + /@smithy/util-uri-escape@2.1.1: + resolution: {integrity: sha512-saVzI1h6iRBUVSqtnlOnc9ssU09ypo7n+shdQ8hBTZno/9rZ3AuRYvoHInV57VF7Qn7B+pFJG7qTzFiHxWlWBw==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: @@ -3891,12 +3868,12 @@ packages: dev: false optional: true - /@smithy/util-utf8@2.0.2: - resolution: {integrity: sha512-qOiVORSPm6Ce4/Yu6hbSgNHABLP2VMv8QOC3tTDNHHlWY19pPyc++fBTbZPtx6egPXi4HQxKDnMxVxpbtX2GoA==} + /@smithy/util-utf8@2.1.1: + resolution: {integrity: sha512-BqTpzYEcUMDwAKr7/mVRUtHDhs6ZoXDi9NypMvMfOr/+u1NW7JgqodPDECiiLboEm6bobcPcECxzjtQh865e9A==} engines: {node: '>=14.0.0'} requiresBuild: true dependencies: - '@smithy/util-buffer-from': 2.0.0 + '@smithy/util-buffer-from': 2.1.1 tslib: 2.6.2 dev: false optional: true @@ -3910,101 +3887,101 @@ packages: string.prototype.matchall: 4.0.10 dev: true - /@svgr/babel-plugin-add-jsx-attribute@8.0.0(@babel/core@7.23.7): + /@svgr/babel-plugin-add-jsx-attribute@8.0.0(@babel/core@7.24.0): resolution: {integrity: sha512-b9MIk7yhdS1pMCZM8VeNfUlSKVRhsHZNMl5O9SfaX0l0t5wjdgu4IDzGB8bpnGBBOjGST3rRFVsaaEtI4W6f7g==} engines: {node: '>=14'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 + '@babel/core': 7.24.0 dev: true - /@svgr/babel-plugin-remove-jsx-attribute@8.0.0(@babel/core@7.23.7): + /@svgr/babel-plugin-remove-jsx-attribute@8.0.0(@babel/core@7.24.0): resolution: {integrity: sha512-BcCkm/STipKvbCl6b7QFrMh/vx00vIP63k2eM66MfHJzPr6O2U0jYEViXkHJWqXqQYjdeA9cuCl5KWmlwjDvbA==} engines: {node: '>=14'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 + '@babel/core': 7.24.0 dev: true - /@svgr/babel-plugin-remove-jsx-empty-expression@8.0.0(@babel/core@7.23.7): + /@svgr/babel-plugin-remove-jsx-empty-expression@8.0.0(@babel/core@7.24.0): resolution: {integrity: sha512-5BcGCBfBxB5+XSDSWnhTThfI9jcO5f0Ai2V24gZpG+wXF14BzwxxdDb4g6trdOux0rhibGs385BeFMSmxtS3uA==} engines: {node: '>=14'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 + '@babel/core': 7.24.0 dev: true - /@svgr/babel-plugin-replace-jsx-attribute-value@8.0.0(@babel/core@7.23.7): + /@svgr/babel-plugin-replace-jsx-attribute-value@8.0.0(@babel/core@7.24.0): resolution: {integrity: sha512-KVQ+PtIjb1BuYT3ht8M5KbzWBhdAjjUPdlMtpuw/VjT8coTrItWX6Qafl9+ji831JaJcu6PJNKCV0bp01lBNzQ==} engines: {node: '>=14'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 + '@babel/core': 7.24.0 dev: true - /@svgr/babel-plugin-svg-dynamic-title@8.0.0(@babel/core@7.23.7): + /@svgr/babel-plugin-svg-dynamic-title@8.0.0(@babel/core@7.24.0): resolution: {integrity: sha512-omNiKqwjNmOQJ2v6ge4SErBbkooV2aAWwaPFs2vUY7p7GhVkzRkJ00kILXQvRhA6miHnNpXv7MRnnSjdRjK8og==} engines: {node: '>=14'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 + '@babel/core': 7.24.0 dev: true - /@svgr/babel-plugin-svg-em-dimensions@8.0.0(@babel/core@7.23.7): + /@svgr/babel-plugin-svg-em-dimensions@8.0.0(@babel/core@7.24.0): resolution: {integrity: sha512-mURHYnu6Iw3UBTbhGwE/vsngtCIbHE43xCRK7kCw4t01xyGqb2Pd+WXekRRoFOBIY29ZoOhUCTEweDMdrjfi9g==} engines: {node: '>=14'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 + '@babel/core': 7.24.0 dev: true - /@svgr/babel-plugin-transform-react-native-svg@8.1.0(@babel/core@7.23.7): + /@svgr/babel-plugin-transform-react-native-svg@8.1.0(@babel/core@7.24.0): resolution: {integrity: sha512-Tx8T58CHo+7nwJ+EhUwx3LfdNSG9R2OKfaIXXs5soiy5HtgoAEkDay9LIimLOcG8dJQH1wPZp/cnAv6S9CrR1Q==} engines: {node: '>=14'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 + '@babel/core': 7.24.0 dev: true - /@svgr/babel-plugin-transform-svg-component@8.0.0(@babel/core@7.23.7): + /@svgr/babel-plugin-transform-svg-component@8.0.0(@babel/core@7.24.0): resolution: {integrity: sha512-DFx8xa3cZXTdb/k3kfPeaixecQLgKh5NVBMwD0AQxOzcZawK4oo1Jh9LbrcACUivsCA7TLG8eeWgrDXjTMhRmw==} engines: {node: '>=12'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 + '@babel/core': 7.24.0 dev: true - /@svgr/babel-preset@8.1.0(@babel/core@7.23.7): + /@svgr/babel-preset@8.1.0(@babel/core@7.24.0): resolution: {integrity: sha512-7EYDbHE7MxHpv4sxvnVPngw5fuR6pw79SkcrILHJ/iMpuKySNCl5W1qcwPEpU+LgyRXOaAFgH0KhwD18wwg6ug==} engines: {node: '>=14'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.23.7 - '@svgr/babel-plugin-add-jsx-attribute': 8.0.0(@babel/core@7.23.7) - '@svgr/babel-plugin-remove-jsx-attribute': 8.0.0(@babel/core@7.23.7) - '@svgr/babel-plugin-remove-jsx-empty-expression': 8.0.0(@babel/core@7.23.7) - '@svgr/babel-plugin-replace-jsx-attribute-value': 8.0.0(@babel/core@7.23.7) - '@svgr/babel-plugin-svg-dynamic-title': 8.0.0(@babel/core@7.23.7) - '@svgr/babel-plugin-svg-em-dimensions': 8.0.0(@babel/core@7.23.7) - '@svgr/babel-plugin-transform-react-native-svg': 8.1.0(@babel/core@7.23.7) - '@svgr/babel-plugin-transform-svg-component': 8.0.0(@babel/core@7.23.7) + '@babel/core': 7.24.0 + '@svgr/babel-plugin-add-jsx-attribute': 8.0.0(@babel/core@7.24.0) + '@svgr/babel-plugin-remove-jsx-attribute': 8.0.0(@babel/core@7.24.0) + '@svgr/babel-plugin-remove-jsx-empty-expression': 8.0.0(@babel/core@7.24.0) + '@svgr/babel-plugin-replace-jsx-attribute-value': 8.0.0(@babel/core@7.24.0) + '@svgr/babel-plugin-svg-dynamic-title': 8.0.0(@babel/core@7.24.0) + '@svgr/babel-plugin-svg-em-dimensions': 8.0.0(@babel/core@7.24.0) + '@svgr/babel-plugin-transform-react-native-svg': 8.1.0(@babel/core@7.24.0) + '@svgr/babel-plugin-transform-svg-component': 8.0.0(@babel/core@7.24.0) dev: true /@svgr/core@8.1.0(typescript@5.3.3): resolution: {integrity: sha512-8QqtOQT5ACVlmsvKOJNEaWmRPmcojMOzCz4Hs2BGG/toAp/K38LcsMRyLp349glq5AzJbCEeimEoxaX6v/fLrA==} engines: {node: '>=14'} dependencies: - '@babel/core': 7.23.7 - '@svgr/babel-preset': 8.1.0(@babel/core@7.23.7) + '@babel/core': 7.24.0 + '@svgr/babel-preset': 8.1.0(@babel/core@7.24.0) camelcase: 6.3.0 cosmiconfig: 8.3.6(typescript@5.3.3) snake-case: 3.0.4 @@ -4017,7 +3994,7 @@ packages: resolution: {integrity: sha512-EbDKwO9GpfWP4jN9sGdYwPBU0kdomaPIL2Eu4YwmgP+sJeXT+L7bMwJUBnhzfH8Q2qMBqZ4fJwpCyYsAN3mt2Q==} engines: {node: '>=14'} dependencies: - '@babel/types': 7.23.6 + '@babel/types': 7.24.0 entities: 4.5.0 dev: true @@ -4027,8 +4004,8 @@ packages: peerDependencies: '@svgr/core': '*' dependencies: - '@babel/core': 7.23.7 - '@svgr/babel-preset': 8.1.0(@babel/core@7.23.7) + '@babel/core': 7.24.0 + '@svgr/babel-preset': 8.1.0(@babel/core@7.24.0) '@svgr/core': 8.1.0(typescript@5.3.3) '@svgr/hast-util-to-babel-ast': 8.0.0 svg-parser: 2.0.4 @@ -4036,16 +4013,16 @@ packages: - supports-color dev: true - /@tanstack/query-core@5.17.8: - resolution: {integrity: sha512-V4hQv4jmRwbji9wo3F6/JQEjbWLUlv2sE2K5R49girEyok71ksDnVHbQiAvp4+FbovMY8A3IbP3cH3jqAUe/BQ==} + /@tanstack/query-core@5.24.1: + resolution: {integrity: sha512-DZ6Nx9p7BhjkG50ayJ+MKPgff+lMeol7QYXkvuU5jr2ryW/4ok5eanaS9W5eooA4xN0A/GPHdLGOZGzArgf5Cg==} dev: false - /@tanstack/react-query@5.17.8(react@18.2.0): - resolution: {integrity: sha512-J+QMBoQiAZglwVB/bEgmf9IczLPg0YwFaqmn4aTW72ZYkUYyBU9dj6OMQk3RzmD9RzUz2m7pPBCkcT0Z1i0acg==} + /@tanstack/react-query@5.24.1(react@18.2.0): + resolution: {integrity: sha512-4+09JEdO4d6+Gc8Y/g2M/MuxDK5IY0QV8+2wL2304wPKJgJ54cBbULd3nciJ5uvh/as8rrxx6s0mtIwpRuGd1g==} peerDependencies: react: ^18.0.0 dependencies: - '@tanstack/query-core': 5.17.8 + '@tanstack/query-core': 5.24.1 react: 18.2.0 dev: false @@ -4056,8 +4033,8 @@ packages: dev: false optional: true - /@tsconfig/node10@1.0.9: - resolution: {integrity: sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==} + /@tsconfig/node10@1.0.10: + resolution: {integrity: sha512-PiaIWIoPvO6qm6t114ropMCagj6YAF24j9OkCA2mJDXFnlionEwhsBCJ8yek4aib575BI3OkART/90WsgHgLWw==} dev: true /@tsconfig/node12@1.0.11: @@ -4079,8 +4056,8 @@ packages: /@types/babel__core@7.20.5: resolution: {integrity: sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==} dependencies: - '@babel/parser': 7.23.6 - '@babel/types': 7.23.6 + '@babel/parser': 7.24.0 + '@babel/types': 7.24.0 '@types/babel__generator': 7.6.8 '@types/babel__template': 7.4.4 '@types/babel__traverse': 7.20.5 @@ -4089,28 +4066,22 @@ packages: /@types/babel__generator@7.6.8: resolution: {integrity: sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==} dependencies: - '@babel/types': 7.23.6 + '@babel/types': 7.24.0 dev: true /@types/babel__template@7.4.4: resolution: {integrity: sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==} dependencies: - '@babel/parser': 7.23.6 - '@babel/types': 7.23.6 + '@babel/parser': 7.24.0 + '@babel/types': 7.24.0 dev: true /@types/babel__traverse@7.20.5: resolution: {integrity: sha512-WXCyOcRtH37HAUkpXhUduaxdm82b4GSlyTqajXviN4EfiuPgNYR109xMCKvpl6zPIpua0DGlMEDCq+g8EdoheQ==} dependencies: - '@babel/types': 7.23.6 + '@babel/types': 7.24.0 dev: true - /@types/bcrypt@5.0.2: - resolution: {integrity: sha512-6atioO8Y75fNcbmj0G7UjI9lXN2pQ/IGJ2FWT4a/btd0Lk9lQalHLKhkgKVZ3r+spnmWUKfbMi1GEe9wyHQfNQ==} - dependencies: - '@types/node': 20.10.7 - dev: false - /@types/bluebird@3.5.42: resolution: {integrity: sha512-Jhy+MWRlro6UjVi578V/4ZGNfeCOcNCp0YaFNIUGFKlImowqwb1O/22wDVk3FDGMLqxdpOV3qQHD5fPEH4hK6A==} dev: false @@ -4119,29 +4090,29 @@ packages: resolution: {integrity: sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==} dependencies: '@types/connect': 3.4.38 - '@types/node': 20.10.7 + '@types/node': 20.11.22 dev: false /@types/chai-as-promised@7.1.8: resolution: {integrity: sha512-ThlRVIJhr69FLlh6IctTXFkmhtP3NpMZ2QGq69StYLyKZFp/HOp1VdKZj7RvfNWYYcJ1xlbLGLLWj1UvP5u/Gw==} dependencies: - '@types/chai': 4.3.11 + '@types/chai': 4.3.12 dev: true /@types/chai-like@1.1.3: resolution: {integrity: sha512-AEGBQz8wcPhvytKR5EP3HiQrmUeg6HP/ZgNnGWnLaQA4fyZ7kDS1/wbSBLN4CBTMobK4wM2SpksVWzTXWQ8r3w==} dependencies: - '@types/chai': 4.3.11 + '@types/chai': 4.3.12 dev: true /@types/chai-things@0.0.38: resolution: {integrity: sha512-4ViP0it+nzZwnxxc5AuORyEWqAi1R1ZL7OLQmaMs8Mh6n6Zzf3YqEU9rt1DDnsFfLhjxWEBfVAUq9RwP4b0S/Q==} dependencies: - '@types/chai': 4.3.11 + '@types/chai': 4.3.12 dev: true - /@types/chai@4.3.11: - resolution: {integrity: sha512-qQR1dr2rGIHYlJulmr8Ioq3De0Le9E4MJ5AiaeAETJJpndT1uUNHsGFK3L/UIu+rbkQSdj8J/w2bCsBZc/Y5fQ==} + /@types/chai@4.3.12: + resolution: {integrity: sha512-zNKDHG/1yxm8Il6uCCVsm+dRdEsJlFoDu73X17y09bId6UwoYww+vFBsAcRzl8knM1sab3Dp1VRikFQwDOtDDw==} dev: true /@types/compression@1.7.5: @@ -4153,13 +4124,13 @@ packages: /@types/connect@3.4.38: resolution: {integrity: sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==} dependencies: - '@types/node': 20.10.7 + '@types/node': 20.11.22 dev: false /@types/continuation-local-storage@3.2.7: resolution: {integrity: sha512-Q7dPOymVpRG5Zpz90/o26+OAqOG2Sw+FED7uQmTrJNCF/JAPTylclZofMxZKd6W7g1BDPmT9/C/jX0ZcSNTQwQ==} dependencies: - '@types/node': 20.10.7 + '@types/node': 20.11.22 dev: false /@types/cookiejar@2.1.5: @@ -4169,7 +4140,7 @@ packages: /@types/cors@2.8.17: resolution: {integrity: sha512-8CGDvrBj1zgo2qE+oS3pOCyYNqCPryMWY2bGfwA0dcfopWGgxs+78df0Rs3rc9THP4JkOhLsAa+15VdpAqkcUA==} dependencies: - '@types/node': 20.10.7 + '@types/node': 20.11.22 dev: true /@types/d3-array@3.0.3: @@ -4191,7 +4162,7 @@ packages: /@types/d3-geo@3.1.0: resolution: {integrity: sha512-856sckF0oP/diXtS4jNsiQw/UuK5fQG8l/a9VVLeSouf1/PPbBE1i1W852zVwKwYCBkFJJB7nCFTbk6UMEXBOQ==} dependencies: - '@types/geojson': 7946.0.13 + '@types/geojson': 7946.0.14 dev: false /@types/d3-interpolate@3.0.1: @@ -4233,16 +4204,14 @@ packages: /@types/docker-modem@3.0.6: resolution: {integrity: sha512-yKpAGEuKRSS8wwx0joknWxsmLha78wNMe9R2S3UNsVOkZded8UqOrV8KoeDXoXsjndxwyF3eIhyClGbO1SEhEg==} dependencies: - '@types/node': 20.10.7 - '@types/ssh2': 1.11.18 - dev: false + '@types/node': 20.11.22 + '@types/ssh2': 1.11.19 - /@types/dockerode@3.3.23: - resolution: {integrity: sha512-Lz5J+NFgZS4cEVhquwjIGH4oQwlVn2h7LXD3boitujBnzOE5o7s9H8hchEjoDK2SlRsJTogdKnQeiJgPPKLIEw==} + /@types/dockerode@3.3.24: + resolution: {integrity: sha512-679y69OYusf7Fr2HtdjXPUF6hnHxSA9K4EsuagsMuPno/XpJHjXxCOy2I5YL8POnWbzjsQAi0pyKIYM9HSpQog==} dependencies: '@types/docker-modem': 3.0.6 - '@types/node': 20.10.7 - dev: false + '@types/node': 20.11.22 /@types/estree@0.0.39: resolution: {integrity: sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==} @@ -4252,11 +4221,11 @@ packages: resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==} dev: true - /@types/express-serve-static-core@4.17.41: - resolution: {integrity: sha512-OaJ7XLaelTgrvlZD8/aa0vvvxZdUmlCn6MtWeB7TkiKW70BQLc9XEPpDLPdbo52ZhXUCrznlWdCHWxJWtdyajA==} + /@types/express-serve-static-core@4.17.43: + resolution: {integrity: sha512-oaYtiBirUOPQGSWNGPWnzyAFJ0BP3cwvN4oWZQY+zUBwpVIGsKUkpBpSztp74drYcjavs7SKFZ4DX1V2QeN8rg==} dependencies: - '@types/node': 20.10.7 - '@types/qs': 6.9.11 + '@types/node': 20.11.22 + '@types/qs': 6.9.12 '@types/range-parser': 1.2.7 '@types/send': 0.17.4 dev: false @@ -4265,27 +4234,13 @@ packages: resolution: {integrity: sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==} dependencies: '@types/body-parser': 1.19.5 - '@types/express-serve-static-core': 4.17.41 - '@types/qs': 6.9.11 + '@types/express-serve-static-core': 4.17.43 + '@types/qs': 6.9.12 '@types/serve-static': 1.15.5 dev: false - /@types/fs-extra@11.0.4: - resolution: {integrity: sha512-yTbItCNreRooED33qjunPthRcSjERP1r4MqCZc7wv0u2sUkzTFp45tgUfS5+r7FrZPdmCCNflLhVSP/o+SemsQ==} - dependencies: - '@types/jsonfile': 6.1.4 - '@types/node': 20.10.7 - dev: false - - /@types/geojson@7946.0.13: - resolution: {integrity: sha512-bmrNrgKMOhM3WsafmbGmC+6dsF2Z308vLFsQ3a/bT8X8Sv5clVYpPars/UPq+sAaJP+5OoLAYgwbkS5QEJdLUQ==} - - /@types/glob@8.1.0: - resolution: {integrity: sha512-IO+MJPVhoqz+28h1qLAcBEH2+xHMK6MTyHJc7MTnnYb6wsoLR29POVGJ7LycmVXIqyy/4/2ShP5sUwTXuOwb/w==} - dependencies: - '@types/minimatch': 5.1.2 - '@types/node': 20.10.7 - dev: false + /@types/geojson@7946.0.14: + resolution: {integrity: sha512-WCfD5Ht3ZesJUsONdhvm84dmzWOiOzOAqOncN0++w0lBw1o8OuDNJF2McvvCef/yBqb/HYRahp1BYtODFQ8bRg==} /@types/history@4.7.11: resolution: {integrity: sha512-qjDJRrmvBMiTx+jyLxvLfJU7UznFuokDv4f3WRuriHKERccVpFU+8XMQUAbDzoiJCsmexxRExQeMwwCdamSKDA==} @@ -4303,22 +4258,16 @@ packages: resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==} dev: true - /@types/jsonfile@6.1.4: - resolution: {integrity: sha512-D5qGUYwjvnNNextdU59/+fI+spnwtTFmyQP0h+PfIOSkNfpU6AOICUOkm4i0OnSk+NyjdPJrxCDro0sJsWlRpQ==} + /@types/jsonwebtoken@9.0.6: + resolution: {integrity: sha512-/5hndP5dCjloafCXns6SZyESp3Ldq7YjH3zwzwczYnjxIT0Fqzk5ROSYVGfFyczIue7IUEj8hkvLbPoLQ18vQw==} dependencies: - '@types/node': 20.10.7 - dev: false - - /@types/jsonwebtoken@9.0.5: - resolution: {integrity: sha512-VRLSGzik+Unrup6BsouBeHsf4d1hOEgYWTm/7Nmw1sXoN1+tRly/Gy/po3yeahnP4jfnQWWAhQAqcNfH7ngOkA==} - dependencies: - '@types/node': 20.10.7 + '@types/node': 20.11.22 dev: false /@types/leaflet@1.9.8: resolution: {integrity: sha512-EXdsL4EhoUtGm2GC2ZYtXn+Fzc6pluVgagvo2VC1RHWToLGlTRwVYoDpqS/7QXa01rmDyBjJk3Catpf60VMkwg==} dependencies: - '@types/geojson': 7946.0.13 + '@types/geojson': 7946.0.14 dev: true /@types/lodash@4.14.202: @@ -4337,10 +4286,6 @@ packages: resolution: {integrity: sha512-iJt33IQnVRkqeqC7PzBHPTC6fDlRNRW8vjrgqtScAhrmMwe8c4Eo7+fUGTa+XdWrpEgpyKWMYmi2dIwMAYRzPw==} dev: false - /@types/minimatch@5.1.2: - resolution: {integrity: sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==} - dev: false - /@types/minimist@1.2.5: resolution: {integrity: sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==} dev: true @@ -4353,29 +4298,19 @@ packages: resolution: {integrity: sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==} dev: false - /@types/node-schedule@2.1.5: - resolution: {integrity: sha512-bN0MiplDBUxNMmlEi4iykjLYD7+Ze3DEevzliCn8WYuDwYSPj/5XFh8wZw+YXPLpLxiNWlIONYiQ67g/vowSMA==} - dependencies: - '@types/node': 20.10.7 - dev: false - - /@types/node@18.11.18: - resolution: {integrity: sha512-DHQpWGjyQKSHj3ebjFI/wRKcqQcdR+MoFBygntYOZytCqNfkd2ZC4ARDJ2DQqhjH5p85Nnd3jhUJIXrszFX/JA==} - dev: false - - /@types/node@18.19.5: - resolution: {integrity: sha512-22MG6T02Hos2JWfa1o5jsIByn+bc5iOt1IS4xyg6OG68Bu+wMonVZzdrgCw693++rpLE9RUT/Bx15BeDzO0j+g==} + /@types/node-schedule@2.1.6: + resolution: {integrity: sha512-6AlZSUiNTdaVmH5jXYxX9YgmF1zfOlbjUqw0EllTBmZCnN1R5RR/m/u3No1OiWR05bnQ4jM4/+w4FcGvkAtnKQ==} dependencies: - undici-types: 5.26.5 + '@types/node': 20.11.22 dev: false - /@types/node@20.10.6: - resolution: {integrity: sha512-Vac8H+NlRNNlAmDfGUP7b5h/KA+AtWIzuXy0E6OyP8f1tCLYAtPvKRRDJjAPqhpCb0t6U2j7/xqAuLEebW2kiw==} + /@types/node@18.19.20: + resolution: {integrity: sha512-SKXZvI375jkpvAj8o+5U2518XQv76mAsixqfXiVyWyXZbVWQK25RurFovYpVIxVzul0rZoH58V/3SkEnm7s3qA==} dependencies: undici-types: 5.26.5 - /@types/node@20.10.7: - resolution: {integrity: sha512-fRbIKb8C/Y2lXxB5eVMj4IU7xpdox0Lh8bUPEdtLysaylsml1hOOx1+STloRs/B9nf7C6kPRmmg/V7aQW7usNg==} + /@types/node@20.11.22: + resolution: {integrity: sha512-/G+IxWxma6V3E+pqK1tSl2Fo1kl41pK1yeCyDsgkF9WlVAme4j5ISYM2zR11bgLFJGLN5sVK40T4RJNuiZbEjA==} dependencies: undici-types: 5.26.5 @@ -4390,24 +4325,24 @@ packages: /@types/prop-types@15.7.11: resolution: {integrity: sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==} - /@types/qs@6.9.11: - resolution: {integrity: sha512-oGk0gmhnEJK4Yyk+oI7EfXsLayXatCWPHary1MtcmbAifkobT9cM9yutG/hZKIseOU0MqbIwQ/u2nn/Gb+ltuQ==} + /@types/qs@6.9.12: + resolution: {integrity: sha512-bZcOkJ6uWrL0Qb2NAWKa7TBU+mJHPzhx9jjLL1KHF+XpzEcR7EXHvjbHlGtR/IsP1vyPrehuS6XqkmaePy//mg==} dev: false /@types/range-parser@1.2.7: resolution: {integrity: sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==} dev: false - /@types/react-dom@18.2.18: - resolution: {integrity: sha512-TJxDm6OfAX2KJWJdMEVTwWke5Sc/E/RlnPGvGfS0W7+6ocy2xhDVQVh/KvC2Uf7kACs+gDytdusDSdWfWkaNzw==} + /@types/react-dom@18.2.19: + resolution: {integrity: sha512-aZvQL6uUbIJpjZk4U8JZGbau9KDeAwMfmhyWorxgBkqDIEf6ROjRozcmPIicqsUwPUjbkDfHKgGee1Lq65APcA==} dependencies: - '@types/react': 18.2.47 + '@types/react': 18.2.60 /@types/react-router-dom@5.3.3: resolution: {integrity: sha512-kpqnYK4wcdm5UaWI3fLcELopqLrHgLqNsdpHauzlQktfkHL3npOSwtj1Uz9oKBAzs7lFtVkV8j83voAz2D8fhw==} dependencies: '@types/history': 4.7.11 - '@types/react': 18.2.47 + '@types/react': 18.2.60 '@types/react-router': 5.1.20 dev: true @@ -4415,17 +4350,17 @@ packages: resolution: {integrity: sha512-jGjmu/ZqS7FjSH6owMcD5qpq19+1RS9DeVRqfl1FeBMxTDQAGwlMWOcs52NDoXaNKyG3d1cYQFMs9rCrb88o9Q==} dependencies: '@types/history': 4.7.11 - '@types/react': 18.2.47 + '@types/react': 18.2.60 dev: true /@types/react-transition-group@4.4.10: resolution: {integrity: sha512-hT/+s0VQs2ojCX823m60m5f0sL5idt9SO6Tj6Dg+rdphGPIeJbJ6CxvBYkgkGKrYeDjvIpKTR38UzmtHJOGW3Q==} dependencies: - '@types/react': 18.2.47 + '@types/react': 18.2.60 dev: false - /@types/react@18.2.47: - resolution: {integrity: sha512-xquNkkOirwyCgoClNk85BjP+aqnIS+ckAJ8i37gAbDs14jfW/J23f2GItAf33oiUPQnqNMALiFeoM9Y5mbjpVQ==} + /@types/react@18.2.60: + resolution: {integrity: sha512-dfiPj9+k20jJrLGOu9Nf6eqxm2EyJRrq2NvwOFsfbb7sFExZ9WELPs67UImHj3Ayxg8ruTtKtNnbjaF8olPq0A==} dependencies: '@types/prop-types': 15.7.11 '@types/scheduler': 0.16.8 @@ -4434,37 +4369,36 @@ packages: /@types/readable-stream@4.0.10: resolution: {integrity: sha512-AbUKBjcC8SHmImNi4yK2bbjogQlkFSg7shZCcicxPQapniOlajG8GCc39lvXzCWX4lLRRs7DM3VAeSlqmEVZUA==} dependencies: - '@types/node': 20.10.7 + '@types/node': 20.11.22 safe-buffer: 5.1.2 - dev: false /@types/resolve@1.17.1: resolution: {integrity: sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw==} dependencies: - '@types/node': 20.10.7 + '@types/node': 20.11.22 dev: true /@types/scheduler@0.16.8: resolution: {integrity: sha512-WZLiwShhwLRmeV6zH+GkbOFT6Z6VklCItrDioxUnv+u4Ll+8vKeFySoFyK/0ctcRpOmwAicELfmys1sDc/Rw+A==} - /@types/semver@7.5.6: - resolution: {integrity: sha512-dn1l8LaMea/IjDoHNd9J52uBbInB796CDffS6VdIxvqYCPSG0V0DzHp76GpaWnlhg88uYyPbXCDIowa86ybd5A==} + /@types/semver@7.5.8: + resolution: {integrity: sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==} dev: true /@types/send@0.17.4: resolution: {integrity: sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==} dependencies: '@types/mime': 1.3.5 - '@types/node': 20.10.7 + '@types/node': 20.11.22 dev: false - /@types/sequelize@4.28.19: - resolution: {integrity: sha512-GTPL/0gRWyx44+w6HeJ1WHMWik3Bx+8njr7i2LVnRC24R+ocb4EOiJaVtrLEwu55llFRZ5hoYjyRUjrhvESrng==} + /@types/sequelize@4.28.20: + resolution: {integrity: sha512-XaGOKRhdizC87hDgQ0u3btxzbejlF+t6Hhvkek1HyphqCI4y7zVBIVAGmuc4cWJqGpxusZ1RiBToHHnNK/Edlw==} dependencies: '@types/bluebird': 3.5.42 '@types/continuation-local-storage': 3.2.7 '@types/lodash': 4.14.202 - '@types/validator': 13.11.7 + '@types/validator': 13.11.9 dev: false /@types/serve-static@1.15.5: @@ -4472,11 +4406,11 @@ packages: dependencies: '@types/http-errors': 2.0.4 '@types/mime': 3.0.4 - '@types/node': 20.10.7 + '@types/node': 20.11.22 dev: false - /@types/sinon@17.0.2: - resolution: {integrity: sha512-Zt6heIGsdqERkxctIpvN5Pv3edgBrhoeb3yHyxffd4InN0AX2SVNKSrhdDZKGQICVOxWP/q4DyhpfPNMSrpIiA==} + /@types/sinon@17.0.3: + resolution: {integrity: sha512-j3uovdn8ewky9kRBG19bOwaZbexJu/XjtkHyjvUgt4xfPFz18dcORIMqnYh66Fx3Powhcr85NT5+er3+oViapw==} dependencies: '@types/sinonjs__fake-timers': 8.1.5 dev: true @@ -4485,31 +4419,30 @@ packages: resolution: {integrity: sha512-mQkU2jY8jJEF7YHjHvsQO8+3ughTL1mcnn96igfhONmR+fUPSKIkefQYpSe8bsly2Ep7oQbn/6VG5/9/0qcArQ==} dev: true - /@types/ssh2@1.11.18: - resolution: {integrity: sha512-7eH4ppQMFlzvn//zhwD54MWaITR1aSc1oFBye9vb76GZ2Y9PSFYdwVIwOlxRXWs5+1hifntXyt+8a6SUbOD7Hg==} + /@types/ssh2@1.11.19: + resolution: {integrity: sha512-ydbQAqEcdNVy2t1w7dMh6eWMr+iOgtEkqM/3K9RMijMaok/ER7L8GW6PwsOypHCN++M+c8S/UR9SgMqNIFstbA==} dependencies: - '@types/node': 18.19.5 - dev: false + '@types/node': 18.19.20 /@types/stream-to-promise@2.2.4: resolution: {integrity: sha512-7exTEA6d7ueW0rARZyGvNgIdRF5q+dNP0DidK01hXNrY7AdxLzHmnYvCCbaaBHtKKXzLWMw/BMjhftks3fC0UQ==} dependencies: - '@types/node': 20.10.6 + '@types/node': 20.11.22 dev: false - /@types/superagent@8.1.1: - resolution: {integrity: sha512-YQyEXA4PgCl7EVOoSAS3o0fyPFU6erv5mMixztQYe1bqbWmmn8c+IrqoxjQeZe4MgwXikgcaZPiI/DsbmOVlzA==} + /@types/superagent@8.1.4: + resolution: {integrity: sha512-uzSBYwrpal8y2X2Pul5ZSWpzRiDha2FLcquaN95qUPnOjYgm/zQ5LIdqeJpQJTRWNTN+Rhm0aC8H06Ds2rqCYw==} dependencies: '@types/cookiejar': 2.1.5 '@types/methods': 1.1.4 - '@types/node': 20.10.7 + '@types/node': 20.11.22 dev: true /@types/supertest@6.0.2: resolution: {integrity: sha512-137ypx2lk/wTQbW6An6safu9hXmajAifU/s7szAHLN/FeIm5w7yR0Wkl9fdJMRSHwOn4HLAI0DaB2TOORuhPDg==} dependencies: '@types/methods': 1.1.4 - '@types/superagent': 8.1.1 + '@types/superagent': 8.1.4 dev: true /@types/triple-beam@1.3.5: @@ -4523,19 +4456,19 @@ packages: /@types/umzug@2.3.7: resolution: {integrity: sha512-I+SaVXM+e8ciI+DL/EQbqL3Ke8JkdgqSakAyF/fGomMvlWQLKIDKzzyzTnixCmybGn3F4JlLqvANmO4LSKgYTA==} dependencies: - '@types/node': 20.10.7 - '@types/sequelize': 4.28.19 + '@types/node': 20.11.22 + '@types/sequelize': 4.28.20 mongodb: 4.17.2 transitivePeerDependencies: - aws-crt dev: false - /@types/uuid@9.0.7: - resolution: {integrity: sha512-WUtIVRUZ9i5dYXefDEAI7sh9/O7jGvHg7Df/5O/gtH3Yabe5odI3UWopVR1qbPXQtvOxWu3mM4XxlYeZtMWF4g==} + /@types/uuid@9.0.8: + resolution: {integrity: sha512-jg+97EGIcY9AGHJJRaaPVgetKDsrTgbRjQ5Msgjh/DQKEFl0DtyRr/VCOyD1T2R1MNeWPK/u7JoGhlDZnKBAfA==} dev: false - /@types/validator@13.11.7: - resolution: {integrity: sha512-q0JomTsJ2I5Mv7dhHhQLGjMvX0JJm5dyZ1DXQySIUzU1UlwzB8bt+R6+LODUbz0UDIOvEzGc28tk27gBJw2N8Q==} + /@types/validator@13.11.9: + resolution: {integrity: sha512-FCTsikRozryfayPuiI46QzH3fnrOoctTjvOYZkho9BTFLCOZ2rgZJHMOVgCOfttjPJcgOx52EpkY0CMfy87MIw==} dev: false /@types/webidl-conversions@7.0.3: @@ -4545,14 +4478,14 @@ packages: /@types/whatwg-url@8.2.2: resolution: {integrity: sha512-FtQu10RWgn3D9U4aazdwIE2yzphmTJREDqNdODHrbrZmmMqI0vMheC/6NE/J1Yveaj8H+ela+YwWTjq5PGmuhA==} dependencies: - '@types/node': 20.10.7 + '@types/node': 20.11.22 '@types/webidl-conversions': 7.0.3 dev: false /@types/ws@8.5.10: resolution: {integrity: sha512-vmQSUcfalpIq0R9q7uTo2lXs6eGIpt9wtnLdMv9LVpIjCA/+ufZRozlVoVelIYixx1ugCBKDhn89vnsEGOCx9A==} dependencies: - '@types/node': 20.10.7 + '@types/node': 20.11.22 dev: false /@typescript-eslint/eslint-plugin@5.6.0(@typescript-eslint/parser@5.6.0)(eslint@8.4.1)(typescript@4.5.3): @@ -4569,49 +4502,20 @@ packages: '@typescript-eslint/experimental-utils': 5.6.0(eslint@8.4.1)(typescript@4.5.3) '@typescript-eslint/parser': 5.6.0(eslint@8.4.1)(typescript@4.5.3) '@typescript-eslint/scope-manager': 5.6.0 - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4 eslint: 8.4.1 functional-red-black-tree: 1.0.1 - ignore: 5.3.0 + ignore: 5.3.1 regexpp: 3.2.0 - semver: 7.5.4 + semver: 7.6.0 tsutils: 3.21.0(typescript@4.5.3) typescript: 4.5.3 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/eslint-plugin@6.18.0(@typescript-eslint/parser@6.18.0)(eslint@8.56.0)(typescript@5.1.6): - resolution: {integrity: sha512-3lqEvQUdCozi6d1mddWqd+kf8KxmGq2Plzx36BlkjuQe3rSTm/O98cLf0A4uDO+a5N1KD2SeEEl6fW97YHY+6w==} - 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: - '@eslint-community/regexpp': 4.10.0 - '@typescript-eslint/parser': 6.18.0(eslint@8.56.0)(typescript@5.1.6) - '@typescript-eslint/scope-manager': 6.18.0 - '@typescript-eslint/type-utils': 6.18.0(eslint@8.56.0)(typescript@5.1.6) - '@typescript-eslint/utils': 6.18.0(eslint@8.56.0)(typescript@5.1.6) - '@typescript-eslint/visitor-keys': 6.18.0 - debug: 4.3.4(supports-color@5.5.0) - eslint: 8.56.0 - graphemer: 1.4.0 - ignore: 5.3.0 - natural-compare: 1.4.0 - semver: 7.5.4 - ts-api-utils: 1.0.3(typescript@5.1.6) - typescript: 5.1.6 - transitivePeerDependencies: - - supports-color - dev: true - - /@typescript-eslint/eslint-plugin@6.18.0(@typescript-eslint/parser@6.18.0)(eslint@8.56.0)(typescript@5.3.3): - resolution: {integrity: sha512-3lqEvQUdCozi6d1mddWqd+kf8KxmGq2Plzx36BlkjuQe3rSTm/O98cLf0A4uDO+a5N1KD2SeEEl6fW97YHY+6w==} + /@typescript-eslint/eslint-plugin@6.21.0(@typescript-eslint/parser@6.21.0)(eslint@8.57.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 @@ -4622,18 +4526,18 @@ packages: optional: true dependencies: '@eslint-community/regexpp': 4.10.0 - '@typescript-eslint/parser': 6.18.0(eslint@8.56.0)(typescript@5.3.3) - '@typescript-eslint/scope-manager': 6.18.0 - '@typescript-eslint/type-utils': 6.18.0(eslint@8.56.0)(typescript@5.3.3) - '@typescript-eslint/utils': 6.18.0(eslint@8.56.0)(typescript@5.3.3) - '@typescript-eslint/visitor-keys': 6.18.0 - debug: 4.3.4(supports-color@5.5.0) - eslint: 8.56.0 + '@typescript-eslint/parser': 6.21.0(eslint@8.57.0)(typescript@5.3.3) + '@typescript-eslint/scope-manager': 6.21.0 + '@typescript-eslint/type-utils': 6.21.0(eslint@8.57.0)(typescript@5.3.3) + '@typescript-eslint/utils': 6.21.0(eslint@8.57.0)(typescript@5.3.3) + '@typescript-eslint/visitor-keys': 6.21.0 + debug: 4.3.4 + eslint: 8.57.0 graphemer: 1.4.0 - ignore: 5.3.0 + ignore: 5.3.1 natural-compare: 1.4.0 - semver: 7.5.4 - ts-api-utils: 1.0.3(typescript@5.3.3) + semver: 7.6.0 + ts-api-utils: 1.2.1(typescript@5.3.3) typescript: 5.3.3 transitivePeerDependencies: - supports-color @@ -4670,15 +4574,15 @@ packages: '@typescript-eslint/scope-manager': 5.6.0 '@typescript-eslint/types': 5.6.0 '@typescript-eslint/typescript-estree': 5.6.0(typescript@4.5.3) - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4 eslint: 8.4.1 typescript: 4.5.3 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/parser@6.18.0(eslint@8.56.0)(typescript@5.1.6): - resolution: {integrity: sha512-v6uR68SFvqhNQT41frCMCQpsP+5vySy6IdgjlzUWoo7ALCnpaWYcz/Ij2k4L8cEsL0wkvOviCMpjmtRtHNOKzA==} + /@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.3.3): + resolution: {integrity: sha512-tbsV1jPne5CkFQCgPBcDOt30ItF7aJoZL997JSF7MhGQqOeT3svWRYxiqlfA5RUdlHN6Fi+EI9bxqbdyAUZjYQ==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: eslint: ^7.0.0 || ^8.0.0 @@ -4687,33 +4591,12 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/scope-manager': 6.18.0 - '@typescript-eslint/types': 6.18.0 - '@typescript-eslint/typescript-estree': 6.18.0(typescript@5.1.6) - '@typescript-eslint/visitor-keys': 6.18.0 - debug: 4.3.4(supports-color@5.5.0) - eslint: 8.56.0 - typescript: 5.1.6 - transitivePeerDependencies: - - supports-color - dev: true - - /@typescript-eslint/parser@6.18.0(eslint@8.56.0)(typescript@5.3.3): - resolution: {integrity: sha512-v6uR68SFvqhNQT41frCMCQpsP+5vySy6IdgjlzUWoo7ALCnpaWYcz/Ij2k4L8cEsL0wkvOviCMpjmtRtHNOKzA==} - engines: {node: ^16.0.0 || >=18.0.0} - peerDependencies: - eslint: ^7.0.0 || ^8.0.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - dependencies: - '@typescript-eslint/scope-manager': 6.18.0 - '@typescript-eslint/types': 6.18.0 - '@typescript-eslint/typescript-estree': 6.18.0(typescript@5.3.3) - '@typescript-eslint/visitor-keys': 6.18.0 - debug: 4.3.4(supports-color@5.5.0) - eslint: 8.56.0 + '@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.57.0 typescript: 5.3.3 transitivePeerDependencies: - supports-color @@ -4727,36 +4610,16 @@ packages: '@typescript-eslint/visitor-keys': 5.6.0 dev: true - /@typescript-eslint/scope-manager@6.18.0: - resolution: {integrity: sha512-o/UoDT2NgOJ2VfHpfr+KBY2ErWvCySNUIX/X7O9g8Zzt/tXdpfEU43qbNk8LVuWUT2E0ptzTWXh79i74PP0twA==} - engines: {node: ^16.0.0 || >=18.0.0} - dependencies: - '@typescript-eslint/types': 6.18.0 - '@typescript-eslint/visitor-keys': 6.18.0 - dev: true - - /@typescript-eslint/type-utils@6.18.0(eslint@8.56.0)(typescript@5.1.6): - resolution: {integrity: sha512-ZeMtrXnGmTcHciJN1+u2CigWEEXgy1ufoxtWcHORt5kGvpjjIlK9MUhzHm4RM8iVy6dqSaZA/6PVkX6+r+ChjQ==} + /@typescript-eslint/scope-manager@6.21.0: + resolution: {integrity: sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==} engines: {node: ^16.0.0 || >=18.0.0} - peerDependencies: - eslint: ^7.0.0 || ^8.0.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true dependencies: - '@typescript-eslint/typescript-estree': 6.18.0(typescript@5.1.6) - '@typescript-eslint/utils': 6.18.0(eslint@8.56.0)(typescript@5.1.6) - debug: 4.3.4(supports-color@5.5.0) - eslint: 8.56.0 - ts-api-utils: 1.0.3(typescript@5.1.6) - typescript: 5.1.6 - transitivePeerDependencies: - - supports-color + '@typescript-eslint/types': 6.21.0 + '@typescript-eslint/visitor-keys': 6.21.0 dev: true - /@typescript-eslint/type-utils@6.18.0(eslint@8.56.0)(typescript@5.3.3): - resolution: {integrity: sha512-ZeMtrXnGmTcHciJN1+u2CigWEEXgy1ufoxtWcHORt5kGvpjjIlK9MUhzHm4RM8iVy6dqSaZA/6PVkX6+r+ChjQ==} + /@typescript-eslint/type-utils@6.21.0(eslint@8.57.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 @@ -4765,11 +4628,11 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/typescript-estree': 6.18.0(typescript@5.3.3) - '@typescript-eslint/utils': 6.18.0(eslint@8.56.0)(typescript@5.3.3) - debug: 4.3.4(supports-color@5.5.0) - eslint: 8.56.0 - ts-api-utils: 1.0.3(typescript@5.3.3) + '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.3.3) + '@typescript-eslint/utils': 6.21.0(eslint@8.57.0)(typescript@5.3.3) + debug: 4.3.4 + eslint: 8.57.0 + ts-api-utils: 1.2.1(typescript@5.3.3) typescript: 5.3.3 transitivePeerDependencies: - supports-color @@ -4780,8 +4643,8 @@ packages: engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dev: true - /@typescript-eslint/types@6.18.0: - resolution: {integrity: sha512-/RFVIccwkwSdW/1zeMx3hADShWbgBxBnV/qSrex6607isYjj05t36P6LyONgqdUrNLl5TYU8NIKdHUYpFvExkA==} + /@typescript-eslint/types@6.21.0: + resolution: {integrity: sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==} engines: {node: ^16.0.0 || >=18.0.0} dev: true @@ -4796,18 +4659,18 @@ packages: dependencies: '@typescript-eslint/types': 5.6.0 '@typescript-eslint/visitor-keys': 5.6.0 - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4 globby: 11.1.0 is-glob: 4.0.3 - semver: 7.5.4 + semver: 7.6.0 tsutils: 3.21.0(typescript@4.5.3) typescript: 4.5.3 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/typescript-estree@6.18.0(typescript@5.1.6): - resolution: {integrity: sha512-klNvl+Ql4NsBNGB4W9TZ2Od03lm7aGvTbs0wYaFYsplVPhr+oeXjlPZCDI4U9jgJIDK38W1FKhacCFzCC+nbIg==} + /@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: typescript: '*' @@ -4815,74 +4678,33 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/types': 6.18.0 - '@typescript-eslint/visitor-keys': 6.18.0 - debug: 4.3.4(supports-color@5.5.0) + '@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.5.4 - ts-api-utils: 1.0.3(typescript@5.1.6) - typescript: 5.1.6 - transitivePeerDependencies: - - supports-color - dev: true - - /@typescript-eslint/typescript-estree@6.18.0(typescript@5.3.3): - resolution: {integrity: sha512-klNvl+Ql4NsBNGB4W9TZ2Od03lm7aGvTbs0wYaFYsplVPhr+oeXjlPZCDI4U9jgJIDK38W1FKhacCFzCC+nbIg==} - engines: {node: ^16.0.0 || >=18.0.0} - peerDependencies: - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - dependencies: - '@typescript-eslint/types': 6.18.0 - '@typescript-eslint/visitor-keys': 6.18.0 - debug: 4.3.4(supports-color@5.5.0) - globby: 11.1.0 - is-glob: 4.0.3 - minimatch: 9.0.3 - semver: 7.5.4 - ts-api-utils: 1.0.3(typescript@5.3.3) + semver: 7.6.0 + ts-api-utils: 1.2.1(typescript@5.3.3) typescript: 5.3.3 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/utils@6.18.0(eslint@8.56.0)(typescript@5.1.6): - resolution: {integrity: sha512-wiKKCbUeDPGaYEYQh1S580dGxJ/V9HI7K5sbGAVklyf+o5g3O+adnS4UNJajplF4e7z2q0uVBaTdT/yLb4XAVA==} + /@typescript-eslint/utils@6.21.0(eslint@8.57.0)(typescript@5.3.3): + resolution: {integrity: sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: eslint: ^7.0.0 || ^8.0.0 dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.56.0) + '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) '@types/json-schema': 7.0.15 - '@types/semver': 7.5.6 - '@typescript-eslint/scope-manager': 6.18.0 - '@typescript-eslint/types': 6.18.0 - '@typescript-eslint/typescript-estree': 6.18.0(typescript@5.1.6) - eslint: 8.56.0 - semver: 7.5.4 - transitivePeerDependencies: - - supports-color - - typescript - dev: true - - /@typescript-eslint/utils@6.18.0(eslint@8.56.0)(typescript@5.3.3): - resolution: {integrity: sha512-wiKKCbUeDPGaYEYQh1S580dGxJ/V9HI7K5sbGAVklyf+o5g3O+adnS4UNJajplF4e7z2q0uVBaTdT/yLb4XAVA==} - engines: {node: ^16.0.0 || >=18.0.0} - peerDependencies: - eslint: ^7.0.0 || ^8.0.0 - dependencies: - '@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.18.0 - '@typescript-eslint/types': 6.18.0 - '@typescript-eslint/typescript-estree': 6.18.0(typescript@5.3.3) - eslint: 8.56.0 - semver: 7.5.4 + '@types/semver': 7.5.8 + '@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.57.0 + semver: 7.6.0 transitivePeerDependencies: - supports-color - typescript @@ -4896,11 +4718,11 @@ packages: eslint-visitor-keys: 3.4.3 dev: true - /@typescript-eslint/visitor-keys@6.18.0: - resolution: {integrity: sha512-1wetAlSZpewRDb2h9p/Q8kRjdGuqdTAQbkJIOUMLug2LBLG+QOjiWoSj6/3B/hA9/tVTFFdtiKvAYoYnSRW/RA==} + /@typescript-eslint/visitor-keys@6.21.0: + resolution: {integrity: sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==} engines: {node: ^16.0.0 || >=18.0.0} dependencies: - '@typescript-eslint/types': 6.18.0 + '@typescript-eslint/types': 6.21.0 eslint-visitor-keys: 3.4.3 dev: true @@ -4914,8 +4736,8 @@ packages: react: ^16.0.0-0 || ^17.0.0-0 || ^18.0.0-0 react-dom: ^16.0.0-0 || ^17.0.0-0 || ^18.0.0-0 dependencies: - '@types/react': 18.2.47 - '@types/react-dom': 18.2.18 + '@types/react': 18.2.60 + '@types/react-dom': 18.2.19 prop-types: 15.8.1 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) @@ -4931,7 +4753,7 @@ packages: /@visx/event@3.3.0: resolution: {integrity: sha512-fKalbNgNz2ooVOTXhvcOx5IlEQDgVfX66rI7bgZhBxI2/scy+5rWcXJXpwkheRF68SMx9R93SjKW6tmiD0h+jA==} dependencies: - '@types/react': 18.2.47 + '@types/react': 18.2.60 '@visx/point': 3.3.0 dev: false @@ -4940,7 +4762,7 @@ packages: peerDependencies: react: ^16.0.0-0 || ^17.0.0-0 || ^18.0.0-0 dependencies: - '@types/react': 18.2.47 + '@types/react': 18.2.60 classnames: 2.5.1 prop-types: 15.8.1 react: 18.2.0 @@ -4951,7 +4773,7 @@ packages: peerDependencies: react: ^16.3.0-0 || ^17.0.0-0 || ^18.0.0-0 dependencies: - '@types/react': 18.2.47 + '@types/react': 18.2.60 '@visx/group': 3.3.0(react@18.2.0) '@visx/scale': 3.5.0 classnames: 2.5.1 @@ -4969,7 +4791,7 @@ packages: react: ^16.0.0-0 || ^17.0.0-0 || ^18.0.0-0 dependencies: '@types/lodash': 4.14.202 - '@types/react': 18.2.47 + '@types/react': 18.2.60 lodash: 4.17.21 prop-types: 15.8.1 react: 18.2.0 @@ -4989,7 +4811,7 @@ packages: '@types/d3-path': 1.0.11 '@types/d3-shape': 1.3.12 '@types/lodash': 4.14.202 - '@types/react': 18.2.47 + '@types/react': 18.2.60 '@visx/curve': 3.3.0 '@visx/group': 3.3.0(react@18.2.0) '@visx/scale': 3.5.0 @@ -5007,7 +4829,7 @@ packages: react: ^16.8.0-0 || ^17.0.0-0 || ^18.0.0-0 react-dom: ^16.8.0-0 || ^17.0.0-0 || ^18.0.0-0 dependencies: - '@types/react': 18.2.47 + '@types/react': 18.2.60 '@visx/bounds': 3.3.0(react-dom@18.2.0)(react@18.2.0) classnames: 2.5.1 prop-types: 15.8.1 @@ -5040,18 +4862,18 @@ packages: internmap: 2.0.3 dev: false - /@vitejs/plugin-react@4.2.1(vite@5.0.11): + /@vitejs/plugin-react@4.2.1(vite@5.1.4): resolution: {integrity: sha512-oojO9IDc4nCUUi8qIR11KoQm0XFFLIwsRBwHRR4d/88IWghn1y6ckz/bJ8GHDCsYEJee8mDzqtJxh15/cisJNQ==} engines: {node: ^14.18.0 || >=16.0.0} peerDependencies: vite: ^4.2.0 || ^5.0.0 dependencies: - '@babel/core': 7.23.7 - '@babel/plugin-transform-react-jsx-self': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-react-jsx-source': 7.23.3(@babel/core@7.23.7) + '@babel/core': 7.24.0 + '@babel/plugin-transform-react-jsx-self': 7.23.3(@babel/core@7.24.0) + '@babel/plugin-transform-react-jsx-source': 7.23.3(@babel/core@7.24.0) '@types/babel__core': 7.20.5 react-refresh: 0.14.0 - vite: 5.0.11 + vite: 5.1.4 transitivePeerDependencies: - supports-color dev: true @@ -5066,6 +4888,9 @@ packages: /abbrev@1.1.1: resolution: {integrity: sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==} + requiresBuild: true + dev: false + optional: true /abort-controller@3.0.0: resolution: {integrity: sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==} @@ -5089,8 +4914,8 @@ packages: acorn: 8.11.3 dev: true - /acorn-walk@8.3.1: - resolution: {integrity: sha512-TgUZgYvqZprrl7YldZNoa9OciCAyZR+Ejm9eXzKCmjsF5IKp/wgQ7Z/ZpjpGTIUPwrHQIcYeI8qDh4PsEwxMbw==} + /acorn-walk@8.3.2: + resolution: {integrity: sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==} engines: {node: '>=0.4.0'} dev: true @@ -5133,7 +4958,7 @@ packages: fastfall: 1.5.1 fastparallel: 2.4.1 fastseries: 2.0.0 - hyperid: 3.1.1 + hyperid: 3.2.0 mqemitter: 5.0.0 mqtt-packet: 9.0.0 retimer: 3.0.0 @@ -5146,11 +4971,13 @@ packages: /agent-base@6.0.2: resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==} engines: {node: '>= 6.0.0'} + requiresBuild: true dependencies: - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4(supports-color@8.1.1) transitivePeerDependencies: - supports-color dev: false + optional: true /agentkeepalive@4.5.0: resolution: {integrity: sha512-5GG/5IbQQpC9FpkRGsSvZI5QYeSCzlJHdpBQntCsuTOxhKD8lqKhrleg2Yi7yvMIf82Ycmmqln9U8V9qwEiJew==} @@ -5203,7 +5030,7 @@ packages: /ansi-regex@6.0.1: resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==} engines: {node: '>=12'} - dev: false + dev: true /ansi-sequence-parser@1.1.1: resolution: {integrity: sha512-vJXt3yiaUL4UU546s3rPXlsry/RnM730G1+HkpKE012AN0sx1eOrxSu95oKDIonskeLTijMgqWZ3uDEe3NFvyg==} @@ -5224,11 +5051,10 @@ packages: /ansi-styles@6.2.1: resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} engines: {node: '>=12'} - dev: false + dev: true /any-promise@1.3.0: resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==} - dev: false /anymatch@3.1.3: resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} @@ -5259,20 +5085,14 @@ packages: /aproba@2.0.0: resolution: {integrity: sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==} + requiresBuild: true dev: false + optional: true /archy@1.0.0: resolution: {integrity: sha512-Xg+9RwCg/0p32teKdGMPTPnVXKD0w3DfHnFTficozsAgsvq2XenPJq/MYpzzQ/v8zrOyJn6Ds39VA4JIDwFfqw==} dev: true - /are-we-there-yet@2.0.0: - resolution: {integrity: sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==} - engines: {node: '>=10'} - dependencies: - delegates: 1.0.0 - readable-stream: 3.6.2 - dev: false - /are-we-there-yet@3.0.1: resolution: {integrity: sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==} engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} @@ -5302,11 +5122,12 @@ packages: dequal: 2.0.3 dev: true - /array-buffer-byte-length@1.0.0: - resolution: {integrity: sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==} + /array-buffer-byte-length@1.0.1: + resolution: {integrity: sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==} + engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.5 - is-array-buffer: 3.0.2 + call-bind: 1.0.7 + is-array-buffer: 3.0.4 dev: true /array-flatten@1.1.1: @@ -5321,10 +5142,10 @@ packages: resolution: {integrity: sha512-dlcsNBIiWhPkHdOEEKnehA+RNUWDc4UqFtnIXU4uuYDPtA4LDkr7qip2p0VvFAEXNDr0yWZ9PJyIRiGjRLQzwQ==} engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.5 + call-bind: 1.0.7 define-properties: 1.2.1 - es-abstract: 1.22.3 - get-intrinsic: 1.2.2 + es-abstract: 1.22.4 + get-intrinsic: 1.2.4 is-string: 1.0.7 dev: true @@ -5333,58 +5154,60 @@ packages: engines: {node: '>=8'} dev: true - /array.prototype.findlastindex@1.2.3: - resolution: {integrity: sha512-LzLoiOMAxvy+Gd3BAq3B7VeIgPdo+Q8hthvKtXybMvRV0jrXfJM/t8mw7nNlpEcVlVUnCnM2KSX4XU5HmpodOA==} + /array.prototype.filter@1.0.3: + resolution: {integrity: sha512-VizNcj/RGJiUyQBgzwxzE5oHdeuXY5hSbbmKMlphj1cy1Vl7Pn2asCGbSrru6hSQjmCzqTBPVWAF/whmEOVHbw==} engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.5 + call-bind: 1.0.7 define-properties: 1.2.1 - es-abstract: 1.22.3 - es-shim-unscopables: 1.0.2 - get-intrinsic: 1.2.2 + es-abstract: 1.22.4 + es-array-method-boxes-properly: 1.0.0 + is-string: 1.0.7 dev: true - /array.prototype.flat@1.3.2: - resolution: {integrity: sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==} + /array.prototype.findlastindex@1.2.4: + resolution: {integrity: sha512-hzvSHUshSpCflDR1QMUBLHGHP1VIEBegT4pix9H/Z92Xw3ySoy6c2qh7lJWTJnRJ8JCZ9bJNCgTyYaJGcJu6xQ==} engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.5 + call-bind: 1.0.7 define-properties: 1.2.1 - es-abstract: 1.22.3 + es-abstract: 1.22.4 + es-errors: 1.3.0 es-shim-unscopables: 1.0.2 dev: true - /array.prototype.flatmap@1.3.2: - resolution: {integrity: sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==} + /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.5 + call-bind: 1.0.7 define-properties: 1.2.1 - es-abstract: 1.22.3 + es-abstract: 1.22.4 es-shim-unscopables: 1.0.2 dev: true - /array.prototype.tosorted@1.1.2: - resolution: {integrity: sha512-HuQCHOlk1Weat5jzStICBCd83NxiIMwqDg/dHEsoefabn/hJRj5pVdWcPUSpRrwhwxZOsQassMpgN/xRYFBMIg==} + /array.prototype.flatmap@1.3.2: + resolution: {integrity: sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==} + engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.5 + call-bind: 1.0.7 define-properties: 1.2.1 - es-abstract: 1.22.3 + es-abstract: 1.22.4 es-shim-unscopables: 1.0.2 - get-intrinsic: 1.2.2 dev: true - /arraybuffer.prototype.slice@1.0.2: - resolution: {integrity: sha512-yMBKppFur/fbHu9/6USUe03bZ4knMYiwFBcyiaXB8Go0qNehwX6inYPzK9U0NeQvGxKthcmHcaR8P5MStSRBAw==} + /arraybuffer.prototype.slice@1.0.3: + resolution: {integrity: sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==} engines: {node: '>= 0.4'} dependencies: - array-buffer-byte-length: 1.0.0 - call-bind: 1.0.5 + array-buffer-byte-length: 1.0.1 + call-bind: 1.0.7 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 + es-abstract: 1.22.4 + es-errors: 1.3.0 + get-intrinsic: 1.2.4 + is-array-buffer: 3.0.4 + is-shared-array-buffer: 1.0.3 dev: true /arrify@1.0.1: @@ -5396,11 +5219,29 @@ packages: resolution: {integrity: sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==} dev: true + /asn1.js@5.4.1: + resolution: {integrity: sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==} + dependencies: + bn.js: 4.12.0 + inherits: 2.0.4 + minimalistic-assert: 1.0.1 + safer-buffer: 2.1.2 + dev: true + /asn1@0.2.6: resolution: {integrity: sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==} dependencies: safer-buffer: 2.1.2 - dev: false + + /assert@2.1.0: + resolution: {integrity: sha512-eLHpSK/Y4nhMJ07gDaAzoX/XAKS8PSaojml3M0DM4JpV1LAi5JOJ/p6H/XWrl8L+DzVEvVCW1z3vWAaB9oTsQw==} + dependencies: + call-bind: 1.0.7 + is-nan: 1.3.2 + object-is: 1.1.6 + object.assign: 4.1.5 + util: 0.12.5 + dev: true /assertion-error@1.1.0: resolution: {integrity: sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==} @@ -5434,9 +5275,11 @@ packages: engines: {node: '>= 4.0.0'} dev: true - /available-typed-arrays@1.0.5: - resolution: {integrity: sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==} + /available-typed-arrays@1.0.7: + resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==} engines: {node: '>= 0.4'} + dependencies: + possible-typed-array-names: 1.0.0 dev: true /axe-core@4.7.0: @@ -5444,10 +5287,10 @@ packages: engines: {node: '>=4'} dev: true - /axios@1.6.5: - resolution: {integrity: sha512-Ii012v05KEVuUoFWmMW/UQv9aRIc3ZwkWDcM+h5Il8izZCtRVpDUfwpoFf7eOtajT3QiGR4yDUx7lPqHJULgbg==} + /axios@1.6.7: + resolution: {integrity: sha512-/hDJGff6/c7u0hDkvkGxR/oy6CbCs8ziCsC7SqmhjfozqiJGc8Z11wrv9z9lYfY4K8l+H9TpjcMDX0xOZmx+RA==} dependencies: - follow-redirects: 1.15.4 + follow-redirects: 1.15.5 form-data: 4.0.0 proxy-from-env: 1.1.0 transitivePeerDependencies: @@ -5464,43 +5307,43 @@ packages: resolution: {integrity: sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==} engines: {node: '>=10', npm: '>=6'} dependencies: - '@babel/runtime': 7.23.7 + '@babel/runtime': 7.24.0 cosmiconfig: 7.1.0 resolve: 1.22.8 dev: false - /babel-plugin-polyfill-corejs2@0.4.7(@babel/core@7.23.7): - resolution: {integrity: sha512-LidDk/tEGDfuHW2DWh/Hgo4rmnw3cduK6ZkOI1NPFceSK3n/yAGeOsNT7FLnSGHkXj3RHGSEVkN3FsCTY6w2CQ==} + /babel-plugin-polyfill-corejs2@0.4.8(@babel/core@7.24.0): + resolution: {integrity: sha512-OtIuQfafSzpo/LhnJaykc0R/MMnuLSSVjVYy9mHArIZ9qTCSZ6TpWCuEKZYVoN//t8HqBNScHrOtCrIK5IaGLg==} peerDependencies: '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 dependencies: '@babel/compat-data': 7.23.5 - '@babel/core': 7.23.7 - '@babel/helper-define-polyfill-provider': 0.4.4(@babel/core@7.23.7) + '@babel/core': 7.24.0 + '@babel/helper-define-polyfill-provider': 0.5.0(@babel/core@7.24.0) semver: 6.3.1 transitivePeerDependencies: - supports-color dev: true - /babel-plugin-polyfill-corejs3@0.8.7(@babel/core@7.23.7): - resolution: {integrity: sha512-KyDvZYxAzkC0Aj2dAPyDzi2Ym15e5JKZSK+maI7NAwSqofvuFglbSsxE7wUOvTg9oFVnHMzVzBKcqEb4PJgtOA==} + /babel-plugin-polyfill-corejs3@0.9.0(@babel/core@7.24.0): + resolution: {integrity: sha512-7nZPG1uzK2Ymhy/NbaOWTg3uibM2BmGASS4vHS4szRZAIR8R6GwA/xAujpdrXU5iyklrimWnLWU+BLF9suPTqg==} peerDependencies: '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-define-polyfill-provider': 0.4.4(@babel/core@7.23.7) - core-js-compat: 3.35.0 + '@babel/core': 7.24.0 + '@babel/helper-define-polyfill-provider': 0.5.0(@babel/core@7.24.0) + core-js-compat: 3.36.0 transitivePeerDependencies: - supports-color dev: true - /babel-plugin-polyfill-regenerator@0.5.4(@babel/core@7.23.7): - resolution: {integrity: sha512-S/x2iOCvDaCASLYsOOgWOq4bCfKYVqvO/uxjkaYyZ3rVsVE3CeAI/c84NpyuBBymEgNvHgjEot3a9/Z/kXvqsg==} + /babel-plugin-polyfill-regenerator@0.5.5(@babel/core@7.24.0): + resolution: {integrity: sha512-OJGYZlhLqBh2DDHeqAxWB1XIvr49CxiJ2gIt61/PU55CQK4Z58OzMqjDe1zwQdQk+rBYsRc+1rJmdajM3gimHg==} peerDependencies: '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 dependencies: - '@babel/core': 7.23.7 - '@babel/helper-define-polyfill-provider': 0.4.4(@babel/core@7.23.7) + '@babel/core': 7.24.0 + '@babel/helper-define-polyfill-provider': 0.5.0(@babel/core@7.24.0) transitivePeerDependencies: - supports-color dev: true @@ -5522,19 +5365,6 @@ packages: resolution: {integrity: sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==} dependencies: tweetnacl: 0.14.5 - dev: false - - /bcrypt@5.1.1: - resolution: {integrity: sha512-AGBHOG5hPYZ5Xl9KXzU5iKq9516yEmvCKDg3ecP5kX2aB6UqTeXZxk2ELnDgDm6BQSMlLt9rDB4LoSMx0rYwww==} - engines: {node: '>= 10.0.0'} - requiresBuild: true - dependencies: - '@mapbox/node-pre-gyp': 1.0.11 - node-addon-api: 5.1.0 - transitivePeerDependencies: - - encoding - - supports-color - dev: false /binary-extensions@2.2.0: resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==} @@ -5554,9 +5384,10 @@ packages: inherits: 2.0.4 readable-stream: 3.6.2 - /bl@6.0.10: - resolution: {integrity: sha512-F14DFhDZfxtVm2FY0k9kG2lWAwzZkO9+jX3Ytuoy/V0E1/5LBuBzzQHXAjqpxXEDIpmTPZZf5GVIGPQcLxFpaA==} + /bl@6.0.11: + resolution: {integrity: sha512-Ok/NWrEA0mlEEbWzckkZVLq6Nv1m2xZ+i9Jq5hZ9Ph/YEcP5dExqls9wUzpluhQRPzdeT8oZNOXAytta6YN8pQ==} dependencies: + '@types/readable-stream': 4.0.10 buffer: 6.0.3 inherits: 2.0.4 readable-stream: 4.5.2 @@ -5565,6 +5396,14 @@ packages: resolution: {integrity: sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==} dev: false + /bn.js@4.12.0: + resolution: {integrity: sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==} + dev: true + + /bn.js@5.2.1: + resolution: {integrity: sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==} + dev: true + /body-parser@1.20.1: resolution: {integrity: sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==} engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16} @@ -5609,19 +5448,85 @@ packages: fill-range: 7.0.1 dev: true + /brorand@1.1.0: + resolution: {integrity: sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==} + dev: true + + /browser-resolve@2.0.0: + resolution: {integrity: sha512-7sWsQlYL2rGLy2IWm8WL8DCTJvYLc/qlOnsakDac87SOoCd16WLsaAMdCiAqsTNHIe+SXfaqyxyo6THoWqs8WQ==} + dependencies: + resolve: 1.22.8 + dev: true + /browser-stdout@1.3.1: resolution: {integrity: sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==} dev: true - /browserslist@4.22.2: - resolution: {integrity: sha512-0UgcrvQmBDvZHFGdYUehrCNIazki7/lUP3kkoi/r3YB2amZbFM9J43ZRkJTXBUZK4gmx56+Sqk9+Vs9mwZx9+A==} + /browserify-aes@1.2.0: + resolution: {integrity: sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==} + dependencies: + buffer-xor: 1.0.3 + cipher-base: 1.0.4 + create-hash: 1.2.0 + evp_bytestokey: 1.0.3 + inherits: 2.0.4 + safe-buffer: 5.2.1 + dev: true + + /browserify-cipher@1.0.1: + resolution: {integrity: sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==} + dependencies: + browserify-aes: 1.2.0 + browserify-des: 1.0.2 + evp_bytestokey: 1.0.3 + dev: true + + /browserify-des@1.0.2: + resolution: {integrity: sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==} + dependencies: + cipher-base: 1.0.4 + des.js: 1.1.0 + inherits: 2.0.4 + safe-buffer: 5.2.1 + dev: true + + /browserify-rsa@4.1.0: + resolution: {integrity: sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==} + dependencies: + bn.js: 5.2.1 + randombytes: 2.1.0 + dev: true + + /browserify-sign@4.2.2: + resolution: {integrity: sha512-1rudGyeYY42Dk6texmv7c4VcQ0EsvVbLwZkA+AQB7SxvXxmcD93jcHie8bzecJ+ChDlmAm2Qyu0+Ccg5uhZXCg==} + engines: {node: '>= 4'} + dependencies: + bn.js: 5.2.1 + browserify-rsa: 4.1.0 + create-hash: 1.2.0 + create-hmac: 1.1.7 + elliptic: 6.5.4 + inherits: 2.0.4 + parse-asn1: 5.1.6 + readable-stream: 3.6.2 + safe-buffer: 5.2.1 + dev: true + + /browserify-zlib@0.2.0: + resolution: {integrity: sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==} + dependencies: + pako: 1.0.11 + dev: true + + /browserslist@4.23.0: + resolution: {integrity: sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==} engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} hasBin: true dependencies: - caniuse-lite: 1.0.30001574 - electron-to-chromium: 1.4.623 + caniuse-lite: 1.0.30001591 + electron-to-chromium: 1.4.686 node-releases: 2.0.14 - update-browserslist-db: 1.0.13(browserslist@4.22.2) + update-browserslist-db: 1.0.13(browserslist@4.23.0) dev: true /bson@4.7.2: @@ -5638,6 +5543,10 @@ packages: /buffer-from@1.1.2: resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} + /buffer-xor@1.0.3: + resolution: {integrity: sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==} + dev: true + /buffer@5.7.1: resolution: {integrity: sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==} dependencies: @@ -5654,7 +5563,6 @@ packages: resolution: {integrity: sha512-8f9ZJCUXyT1M35Jx7MkBgmBMo3oHTTBIPLiY9xyL0pl3T5RwcPEY8cUHr5LBNfu/fk6c2T4DJZuVM/8ZZT2D2A==} engines: {node: '>=10.0.0'} requiresBuild: true - dev: false optional: true /builtin-modules@3.3.0: @@ -5662,6 +5570,20 @@ packages: engines: {node: '>=6'} dev: true + /builtin-status-codes@3.0.0: + resolution: {integrity: sha512-HpGFw18DgFWlncDfjTa2rcQ4W88O1mC8e8yZ2AvQY5KDaktSTwo+KRf6nHK6FRI5FyRyb/5T6+TSxfP7QyGsmQ==} + dev: true + + /bundle-require@4.0.2(esbuild@0.19.12): + resolution: {integrity: sha512-jwzPOChofl67PSTW2SGubV9HBQAhhR2i6nskiOThauo9dzwDUgOWQScFVaJkjEfYX+UXiD+LEx8EblQMc2wIag==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + peerDependencies: + esbuild: '>=0.17' + dependencies: + esbuild: 0.19.12 + load-tsconfig: 0.2.5 + dev: true + /bytes@3.0.0: resolution: {integrity: sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==} engines: {node: '>= 0.8'} @@ -5672,6 +5594,11 @@ packages: engines: {node: '>= 0.8'} dev: false + /cac@6.7.14: + resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==} + engines: {node: '>=8'} + dev: true + /cacache@15.3.0(bluebird@3.7.2): resolution: {integrity: sha512-VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ==} engines: {node: '>= 10'} @@ -5710,12 +5637,15 @@ packages: write-file-atomic: 3.0.3 dev: true - /call-bind@1.0.5: - resolution: {integrity: sha512-C3nQxfFZxFRVoJoGKKI8y3MOEo129NQ+FgQ08iye+Mk4zNZZGdjfs06bVTr+DBSlA66Q2VEcMki/cUCP4SercQ==} + /call-bind@1.0.7: + resolution: {integrity: sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==} + engines: {node: '>= 0.4'} dependencies: + es-define-property: 1.0.0 + es-errors: 1.3.0 function-bind: 1.1.2 - get-intrinsic: 1.2.2 - set-function-length: 1.1.1 + get-intrinsic: 1.2.4 + set-function-length: 1.2.1 /callsites@3.1.0: resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} @@ -5740,33 +5670,33 @@ packages: engines: {node: '>=10'} dev: true - /caniuse-lite@1.0.30001574: - resolution: {integrity: sha512-BtYEK4r/iHt/txm81KBudCUcTy7t+s9emrIaHqjYurQ10x71zJ5VQ9x1dYPcz/b+pKSp4y/v1xSI67A+LzpNyg==} + /caniuse-lite@1.0.30001591: + resolution: {integrity: sha512-PCzRMei/vXjJyL5mJtzNiUCKP59dm8Apqc3PH8gJkMnMXZGox93RbE76jHsmLwmIo6/3nsYIpJtx0O7u5PqFuQ==} dev: true - /chai-as-promised@7.1.1(chai@4.4.0): + /chai-as-promised@7.1.1(chai@4.4.1): resolution: {integrity: sha512-azL6xMoi+uxu6z4rhWQ1jbdUhOMhis2PvscD/xjLqNMkv3BPPp2JyyuTHOrf9BOosGpNQ11v6BKv/g57RXbiaA==} peerDependencies: chai: '>= 2.1.2 < 5' dependencies: - chai: 4.4.0 + chai: 4.4.1 check-error: 1.0.3 dev: true - /chai-like@1.1.1(chai@4.4.0): + /chai-like@1.1.1(chai@4.4.1): resolution: {integrity: sha512-VKa9z/SnhXhkT1zIjtPACFWSoWsqVoaz1Vg+ecrKo5DCKVlgL30F/pEyEvXPBOVwCgLZcWUleCM/C1okaKdTTA==} peerDependencies: chai: 2 - 4 dependencies: - chai: 4.4.0 + chai: 4.4.1 dev: true /chai-things@0.2.0: resolution: {integrity: sha512-6ns0SU21xdRCoEXVKH3HGbwnsgfVMXQ+sU5V8PI9rfxaITos8lss1vUxbF1FAcJKjfqmmmLVlr/z3sLes00w+A==} dev: true - /chai@4.4.0: - resolution: {integrity: sha512-x9cHNq1uvkCdU+5xTkNh5WtgD4e4yDFCsp9jVc7N7qVeKeftv3gO/ZrviX5d+3ZfxdYnZXZYujjRInu1RogU6A==} + /chai@4.4.1: + resolution: {integrity: sha512-13sOfMv2+DWduEU+/xbun3LScLoqN17nBeTLUsmDfKdoiC1fr0n9PU4guu4AhRcOVFk/sW8LyZWHuhWtQZiF+g==} engines: {node: '>=4'} dependencies: assertion-error: 1.1.0 @@ -5818,15 +5748,36 @@ packages: fsevents: 2.3.3 dev: true + /chokidar@3.6.0: + resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==} + engines: {node: '>= 8.10.0'} + 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 + 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 + /cipher-base@1.0.4: + resolution: {integrity: sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==} + dependencies: + inherits: 2.0.4 + safe-buffer: 5.2.1 + dev: true + /classnames@2.5.1: resolution: {integrity: sha512-saHYOzhIQs6wy2sVxTM6bUDsQO4F50V9RQ22qBpEdCW+I+/Wmke2HOl6lS6dTpdxVhb88/I6+Hs+438c3lfUow==} dev: false @@ -5897,7 +5848,9 @@ packages: /color-support@1.1.3: resolution: {integrity: sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==} hasBin: true + requiresBuild: true dev: false + optional: true /color@3.2.1: resolution: {integrity: sha512-aBl7dZI9ENN6fUGC7mWpMTPNHmWUSNan9tuWN6ahh5ZLNk9baLJOnSMlrQkHcrfFgz2/RigjUVAjdx36VcemKA==} @@ -5906,11 +5859,6 @@ packages: color-string: 1.9.1 dev: true - /colors@1.2.5: - resolution: {integrity: sha512-erNRLao/Y3Fv54qUa0LBB+//Uf3YwMUmdJinN20yMXm9zdKKqH9wt7R9IIVZ+K7ShzfpLV/Zg8+VyrBJYB4lpg==} - engines: {node: '>=0.1.90'} - dev: false - /colorspace@1.1.4: resolution: {integrity: sha512-BgvKJiuVu1igBUF2kEjRCZXol6wiiGbY5ipL/oVPwm0BL9sIpMIzM8IK7vwuxIIzOXMV3Ey5w+vxhm0rR/TN8w==} dependencies: @@ -5928,6 +5876,18 @@ packages: resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==} dev: true + /commander@4.1.1: + resolution: {integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==} + engines: {node: '>= 6'} + dev: true + + /commander@9.5.0: + resolution: {integrity: sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==} + engines: {node: ^12.20.0 || >=14} + requiresBuild: true + dev: false + optional: true + /commist@3.2.0: resolution: {integrity: sha512-4PIMoPniho+LqXmpS5d3NuGYncG6XWlkBSVGiWycL22dd42OYdUGil2CWuzklaJoNxyxUSpO4MKIBU94viWNAw==} dev: false @@ -5990,9 +5950,15 @@ packages: resolution: {integrity: sha512-JsPKdmh8ZkmnHxDk55FZ1TqVLvEQTvoByJZRN9jzI0UjxK/QgAmsphz7PGtqgPieQZ/CQcHWXCR7ATDNhGe+YA==} dev: true + /console-browserify@1.2.0: + resolution: {integrity: sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==} + dev: true + /console-control-strings@1.1.0: resolution: {integrity: sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==} + requiresBuild: true dev: false + optional: true /console-stamp@3.1.2: resolution: {integrity: sha512-ab66x3NxOTxPuq71dI6gXEiw2X6ql4Le5gZz0bm7FW3FSCB00eztra/oQUuCoCGlsyKOxtULnHwphzMrRtzMBg==} @@ -6002,6 +5968,10 @@ packages: dateformat: 4.6.3 dev: false + /constants-browserify@1.0.0: + resolution: {integrity: sha512-xFxOwqIzR/e1k1gLiWEophSCMqXcwVHIH7akf7b/vxcUeGunlj3hvZaaqxwHsTgn+IndtkQJgSztIDWeumWJDQ==} + dev: true + /content-disposition@0.5.4: resolution: {integrity: sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==} engines: {node: '>= 0.6'} @@ -6199,10 +6169,10 @@ packages: resolution: {integrity: sha512-LDx6oHrK+PhzLKJU9j5S7/Y3jM/mUHvD/DeI1WQmJn652iPC5Y4TBzC9l+5OMOXlyTTA+SmVUPm0HQUwpD5Jqw==} dev: true - /core-js-compat@3.35.0: - resolution: {integrity: sha512-5blwFAddknKeNgsjBzilkdQ0+YK8L1PfqPYq40NOYMYFSS38qj+hpTcLLWwpIwA2A5bje/x5jmVn2tzUMg9IVw==} + /core-js-compat@3.36.0: + resolution: {integrity: sha512-iV9Pd/PsgjNWBXeq8XRtWVSgz2tKAfhfvBs7qxYty+RlRd+OCksaWmOnc4JKrTc1cToXL1N0s3l/vwlxPtdElw==} dependencies: - browserslist: 4.22.2 + browserslist: 4.23.0 dev: true /core-util-is@1.0.3: @@ -6256,9 +6226,36 @@ packages: dependencies: buildcheck: 0.0.6 nan: 2.18.0 - dev: false optional: true + /create-ecdh@4.0.4: + resolution: {integrity: sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==} + dependencies: + bn.js: 4.12.0 + elliptic: 6.5.4 + dev: true + + /create-hash@1.2.0: + resolution: {integrity: sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==} + dependencies: + cipher-base: 1.0.4 + inherits: 2.0.4 + md5.js: 1.3.5 + ripemd160: 2.0.2 + sha.js: 2.4.11 + dev: true + + /create-hmac@1.1.7: + resolution: {integrity: sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==} + dependencies: + cipher-base: 1.0.4 + create-hash: 1.2.0 + inherits: 2.0.4 + ripemd160: 2.0.2 + safe-buffer: 5.2.1 + sha.js: 2.4.11 + dev: true + /create-require@1.1.1: resolution: {integrity: sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==} dev: true @@ -6289,6 +6286,22 @@ packages: resolution: {integrity: sha512-mCxBlsHFYh9C+HVpiEacem8FEBnMXgU9gy4zmNC+SXAZNB/1idgp/aulFJ4FgCi7GPEVbfyng092GqL2k2rmow==} dev: true + /crypto-browserify@3.12.0: + resolution: {integrity: sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==} + dependencies: + browserify-cipher: 1.0.1 + browserify-sign: 4.2.2 + create-ecdh: 4.0.4 + create-hash: 1.2.0 + create-hmac: 1.1.7 + diffie-hellman: 5.0.3 + inherits: 2.0.4 + pbkdf2: 3.1.2 + public-encrypt: 4.0.3 + randombytes: 2.1.0 + randomfill: 1.0.4 + dev: true + /crypto-random-string@2.0.0: resolution: {integrity: sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==} engines: {node: '>=8'} @@ -6313,7 +6326,7 @@ packages: resolution: {integrity: sha512-IMLNldruDQScrcfT+MWnazhHbDJhcRJyOEBAJfwQnHle1RPh6WDuLvxNArUju2VSMSUuKlY5BGHRJ2cYyoFLQQ==} engines: {node: '>=12'} dependencies: - delaunator: 5.0.0 + delaunator: 5.0.1 dev: false /d3-format@3.1.0: @@ -6379,8 +6392,8 @@ packages: engines: {node: '>=8'} dev: true - /date-fns@3.1.0: - resolution: {integrity: sha512-ZO7yefXV/wCWzd3I9haCHmfzlfA3i1a2HHO7ZXjtJrRjXt8FULKJ2Vl8wji3XYF4dQ0ZJ/tokXDZeYlFvgms9Q==} + /date-fns@3.3.1: + resolution: {integrity: sha512-y8e109LYGgoQDveiEBD3DYXKba1jWf5BA8YU1FL5Tvm0BTdEfy54WLCwnuYWZNnzzvALy/QQ4Hov+Q9RVRv+Zw==} dev: false /dateformat@3.0.3: @@ -6415,6 +6428,18 @@ packages: dependencies: ms: 2.1.3 + /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 + dev: true + /debug@4.3.4(supports-color@5.5.0): resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} engines: {node: '>=6.0'} @@ -6426,6 +6451,7 @@ packages: dependencies: ms: 2.1.2 supports-color: 5.5.0 + dev: true /debug@4.3.4(supports-color@8.1.1): resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} @@ -6438,7 +6464,6 @@ packages: dependencies: ms: 2.1.2 supports-color: 8.1.1 - dev: true /decamelize-keys@1.1.1: resolution: {integrity: sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==} @@ -6493,13 +6518,13 @@ packages: strip-bom: 4.0.0 dev: true - /define-data-property@1.1.1: - resolution: {integrity: sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ==} + /define-data-property@1.1.4: + resolution: {integrity: sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==} engines: {node: '>= 0.4'} dependencies: - get-intrinsic: 1.2.2 + es-define-property: 1.0.0 + es-errors: 1.3.0 gopd: 1.0.1 - has-property-descriptors: 1.0.1 /define-lazy-prop@2.0.0: resolution: {integrity: sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==} @@ -6510,13 +6535,13 @@ packages: resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==} engines: {node: '>= 0.4'} dependencies: - define-data-property: 1.1.1 - has-property-descriptors: 1.0.1 + define-data-property: 1.1.4 + has-property-descriptors: 1.0.2 object-keys: 1.1.1 dev: true - /delaunator@5.0.0: - resolution: {integrity: sha512-AyLvtyJdbv/U1GkiS6gUUzclRoAY4Gs75qkMygJJhU75LW4DNuSF2RMzpxs9jw9Oz1BobHjTdkG3zdP55VxAqw==} + /delaunator@5.0.1: + resolution: {integrity: sha512-8nvh+XBe96aCESrGOqMp/84b13H9cdKbG5P2ejQCh4d4sK9RL4371qou9drQjMhvnPmhWl5hnmqbEE0fXr9Xnw==} dependencies: robust-predicates: 3.0.2 dev: false @@ -6527,7 +6552,9 @@ packages: /delegates@1.0.0: resolution: {integrity: sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==} + requiresBuild: true dev: false + optional: true /depd@2.0.0: resolution: {integrity: sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==} @@ -6539,6 +6566,13 @@ packages: engines: {node: '>=6'} dev: true + /des.js@1.1.0: + resolution: {integrity: sha512-r17GxjhUCjSRy8aiJpr8/UadFIzMzJGexI3Nmz4ADi9LYSFx4gTBp80+NaX/YsXWWLhpZ7v/v/ubEc/bCNfKwg==} + dependencies: + inherits: 2.0.4 + minimalistic-assert: 1.0.1 + dev: true + /destroy@1.2.0: resolution: {integrity: sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==} engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16} @@ -6576,11 +6610,19 @@ packages: engines: {node: '>=0.3.1'} dev: true - /diff@5.1.0: - resolution: {integrity: sha512-D+mk+qE8VC/PAUrlAU34N+VfXev0ghe5ywmpqrawphmVZc1bEfn56uo9qpyGp1p4xpzOHkSW4ztBd6L7Xx4ACw==} + /diff@5.2.0: + resolution: {integrity: sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==} engines: {node: '>=0.3.1'} dev: true + /diffie-hellman@5.0.3: + resolution: {integrity: sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==} + dependencies: + bn.js: 4.12.0 + miller-rabin: 4.0.1 + randombytes: 2.1.0 + dev: true + /dir-glob@3.0.1: resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} engines: {node: '>=8'} @@ -6592,13 +6634,12 @@ packages: resolution: {integrity: sha512-89zhop5YVhcPEt5FpUFGr3cDyceGhq/F9J+ZndQ4KfqNvfbJpPMfgeixFgUj5OjCYAboElqODxY5Z1EBsSa6sg==} engines: {node: '>= 8.0'} dependencies: - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4(supports-color@8.1.1) readable-stream: 3.6.2 split-ca: 1.0.1 ssh2: 1.15.0 transitivePeerDependencies: - supports-color - dev: false /dockerode@4.0.2: resolution: {integrity: sha512-9wM1BVpVMFr2Pw3eJNXrYYt6DT9k0xMcsSCjtPvyQ+xa1iPg/Mo3T/gUcwI0B2cczqCeCYRPF8yFYDwtFXT0+w==} @@ -6609,7 +6650,6 @@ packages: tar-fs: 2.0.1 transitivePeerDependencies: - supports-color - dev: false /doctrine@2.1.0: resolution: {integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==} @@ -6628,10 +6668,15 @@ packages: /dom-helpers@5.2.1: resolution: {integrity: sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==} dependencies: - '@babel/runtime': 7.23.7 + '@babel/runtime': 7.24.0 csstype: 3.1.3 dev: false + /domain-browser@4.23.0: + resolution: {integrity: sha512-ArzcM/II1wCCujdCNyQjXrAFwS4mrLh4C7DZWlaI8mdh7h3BfKdNd3bKXITfl2PT9FtfQqaGvhi1vPRQPimjGA==} + engines: {node: '>=10'} + dev: true + /dot-case@3.0.4: resolution: {integrity: sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==} dependencies: @@ -6646,6 +6691,11 @@ packages: is-obj: 2.0.0 dev: true + /dotenv@16.0.3: + resolution: {integrity: sha512-7GO6HghkA5fYG9TYnNxi14/7K9f5occMlp3zXAuSxn7CKCxt9xbNWG7yF8hTCSUchlfWSe3uLmlPfigevRItzQ==} + engines: {node: '>=12'} + dev: true + /dotgitignore@2.1.0: resolution: {integrity: sha512-sCm11ak2oY6DglEPpCB8TixLjWAxd3kJTs6UIcSasNYxXdFPV+YKlye92c8H4kKFqV5qYMIh7d+cYecEg0dIkA==} engines: {node: '>=6'} @@ -6660,7 +6710,7 @@ packages: /eastasianwidth@0.2.0: resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} - dev: false + dev: true /ecdsa-sig-formatter@1.0.11: resolution: {integrity: sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ==} @@ -6680,8 +6730,20 @@ packages: jake: 10.8.7 dev: true - /electron-to-chromium@1.4.623: - resolution: {integrity: sha512-lKoz10iCYlP1WtRYdh5MvocQPWVRoI7ysp6qf18bmeBgR8abE6+I2CsfyNKztRDZvhdWc+krKT6wS7Neg8sw3A==} + /electron-to-chromium@1.4.686: + resolution: {integrity: sha512-3avY1B+vUzNxEgkBDpKOP8WarvUAEwpRaiCL0He5OKWEFxzaOFiq4WoZEZe7qh0ReS7DiWoHMnYoQCKxNZNzSg==} + dev: true + + /elliptic@6.5.4: + resolution: {integrity: sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==} + dependencies: + bn.js: 4.12.0 + brorand: 1.1.0 + hash.js: 1.1.7 + hmac-drbg: 1.0.1 + inherits: 2.0.4 + minimalistic-assert: 1.0.1 + minimalistic-crypto-utils: 1.0.1 dev: true /emittery@0.13.1: @@ -6694,6 +6756,7 @@ packages: /emoji-regex@9.2.2: resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} + dev: true /enabled@2.0.0: resolution: {integrity: sha512-AKrN98kuwOzMIdAizXGI86UFBoo26CL21UM763y1h/GMSJ4/OHU9k2YlsmBpyScFo/wbLzWQJBMCW4+IO3/+OQ==} @@ -6717,8 +6780,8 @@ packages: dependencies: once: 1.4.0 - /enhanced-resolve@5.15.0: - resolution: {integrity: sha512-LXYT42KJ7lpIKECr2mAXIaMldcNCh/7E0KBKOu4KSfkHmP+mZmSs+8V5gBAqisWBy0OO4W5Oyys0GO1Y8KtdKg==} + /enhanced-resolve@5.15.1: + resolution: {integrity: sha512-3d3JRbwsCLJsYgvb6NuWEG44jjPSOMuS73L/6+7BZuoKm3W+qXnSoIYVHi8dG7Qcg4inAY4jbzkZ7MnskePeDg==} engines: {node: '>=10.13.0'} dependencies: graceful-fs: 4.2.11 @@ -6760,83 +6823,101 @@ packages: dependencies: is-arrayish: 0.2.1 - /es-abstract@1.22.3: - resolution: {integrity: sha512-eiiY8HQeYfYH2Con2berK+To6GrK2RxbPawDkGq4UiCQQfZHb6wX9qQqkbpPqaxQFcl8d9QzZqo0tGE0VcrdwA==} + /es-abstract@1.22.4: + resolution: {integrity: sha512-vZYJlk2u6qHYxBOTjAeg7qUxHdNfih64Uu2J8QqWgXZ2cri0ZpJAkzDUK/q593+mvKwlxyaxr6F1Q+3LKoQRgg==} 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.5 - es-set-tostringtag: 2.0.2 + array-buffer-byte-length: 1.0.1 + arraybuffer.prototype.slice: 1.0.3 + available-typed-arrays: 1.0.7 + call-bind: 1.0.7 + es-define-property: 1.0.0 + es-errors: 1.3.0 + es-set-tostringtag: 2.0.3 es-to-primitive: 1.2.1 function.prototype.name: 1.1.6 - get-intrinsic: 1.2.2 - get-symbol-description: 1.0.0 + get-intrinsic: 1.2.4 + get-symbol-description: 1.0.2 globalthis: 1.0.3 gopd: 1.0.1 - has-property-descriptors: 1.0.1 - has-proto: 1.0.1 + has-property-descriptors: 1.0.2 + has-proto: 1.0.3 has-symbols: 1.0.3 - hasown: 2.0.0 - internal-slot: 1.0.6 - is-array-buffer: 3.0.2 + hasown: 2.0.1 + internal-slot: 1.0.7 + is-array-buffer: 3.0.4 is-callable: 1.2.7 - is-negative-zero: 2.0.2 + is-negative-zero: 2.0.3 is-regex: 1.1.4 - is-shared-array-buffer: 1.0.2 + is-shared-array-buffer: 1.0.3 is-string: 1.0.7 - is-typed-array: 1.1.12 + is-typed-array: 1.1.13 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.0.1 - safe-regex-test: 1.0.0 + regexp.prototype.flags: 1.5.2 + safe-array-concat: 1.1.0 + safe-regex-test: 1.0.3 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 + typed-array-buffer: 1.0.2 + typed-array-byte-length: 1.0.1 + typed-array-byte-offset: 1.0.2 + typed-array-length: 1.0.5 unbox-primitive: 1.0.2 - which-typed-array: 1.1.13 + which-typed-array: 1.1.14 + dev: true + + /es-array-method-boxes-properly@1.0.0: + resolution: {integrity: sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA==} dev: true - /es-iterator-helpers@1.0.15: - resolution: {integrity: sha512-GhoY8uYqd6iwUl2kgjTm4CZAf6oo5mHK7BPqx3rKgx893YSsy0LGHV6gfqqQvZt/8xM8xeOnfXBCfqclMKkJ5g==} + /es-define-property@1.0.0: + resolution: {integrity: sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==} + engines: {node: '>= 0.4'} + dependencies: + get-intrinsic: 1.2.4 + + /es-errors@1.3.0: + resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==} + engines: {node: '>= 0.4'} + + /es-iterator-helpers@1.0.17: + resolution: {integrity: sha512-lh7BsUqelv4KUbR5a/ZTaGGIMLCjPGPqJ6q+Oq24YP0RdyptX1uzm4vvaqzk7Zx3bpl/76YLTTDj9L7uYQ92oQ==} + engines: {node: '>= 0.4'} dependencies: asynciterator.prototype: 1.0.0 - call-bind: 1.0.5 + call-bind: 1.0.7 define-properties: 1.2.1 - es-abstract: 1.22.3 - es-set-tostringtag: 2.0.2 + es-abstract: 1.22.4 + es-errors: 1.3.0 + es-set-tostringtag: 2.0.3 function-bind: 1.1.2 - get-intrinsic: 1.2.2 + get-intrinsic: 1.2.4 globalthis: 1.0.3 - has-property-descriptors: 1.0.1 - has-proto: 1.0.1 + has-property-descriptors: 1.0.2 + has-proto: 1.0.3 has-symbols: 1.0.3 - internal-slot: 1.0.6 + internal-slot: 1.0.7 iterator.prototype: 1.1.2 - safe-array-concat: 1.0.1 + safe-array-concat: 1.1.0 dev: true - /es-set-tostringtag@2.0.2: - resolution: {integrity: sha512-BuDyupZt65P9D2D2vA/zqcI3G5xRsklm5N3xCwuiy+/vKy8i0ifdsQP1sLgO4tZDSCaQUSnmC48khknGMV3D2Q==} + /es-set-tostringtag@2.0.3: + resolution: {integrity: sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==} engines: {node: '>= 0.4'} dependencies: - get-intrinsic: 1.2.2 - has-tostringtag: 1.0.0 - hasown: 2.0.0 + get-intrinsic: 1.2.4 + has-tostringtag: 1.0.2 + hasown: 2.0.1 dev: true /es-shim-unscopables@1.0.2: resolution: {integrity: sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==} dependencies: - hasown: 2.0.0 + hasown: 2.0.1 dev: true /es-to-primitive@1.2.1: @@ -6852,39 +6933,39 @@ packages: resolution: {integrity: sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==} dev: true - /esbuild@0.19.11: - resolution: {integrity: sha512-HJ96Hev2hX/6i5cDVwcqiJBBtuo9+FeIJOtZ9W1kA5M6AMJRHUZlpYZ1/SbEwtO0ioNAW8rUooVpC/WehY2SfA==} + /esbuild@0.19.12: + resolution: {integrity: sha512-aARqgq8roFBj054KvQr5f1sFu0D65G+miZRCuJyJ0G13Zwx7vRar5Zhn2tkQNzIXcBrNVsv/8stehpj+GAjgbg==} engines: {node: '>=12'} hasBin: true requiresBuild: true optionalDependencies: - '@esbuild/aix-ppc64': 0.19.11 - '@esbuild/android-arm': 0.19.11 - '@esbuild/android-arm64': 0.19.11 - '@esbuild/android-x64': 0.19.11 - '@esbuild/darwin-arm64': 0.19.11 - '@esbuild/darwin-x64': 0.19.11 - '@esbuild/freebsd-arm64': 0.19.11 - '@esbuild/freebsd-x64': 0.19.11 - '@esbuild/linux-arm': 0.19.11 - '@esbuild/linux-arm64': 0.19.11 - '@esbuild/linux-ia32': 0.19.11 - '@esbuild/linux-loong64': 0.19.11 - '@esbuild/linux-mips64el': 0.19.11 - '@esbuild/linux-ppc64': 0.19.11 - '@esbuild/linux-riscv64': 0.19.11 - '@esbuild/linux-s390x': 0.19.11 - '@esbuild/linux-x64': 0.19.11 - '@esbuild/netbsd-x64': 0.19.11 - '@esbuild/openbsd-x64': 0.19.11 - '@esbuild/sunos-x64': 0.19.11 - '@esbuild/win32-arm64': 0.19.11 - '@esbuild/win32-ia32': 0.19.11 - '@esbuild/win32-x64': 0.19.11 - dev: true - - /escalade@3.1.1: - resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} + '@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'} dev: true @@ -6945,6 +7026,24 @@ packages: get-stdin: 6.0.0 dev: true + /eslint-config-prettier@9.1.0(eslint@8.57.0): + resolution: {integrity: sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==} + hasBin: true + peerDependencies: + eslint: '>=7.0.0' + dependencies: + eslint: 8.57.0 + dev: true + + /eslint-config-turbo@1.12.4(eslint@8.57.0): + resolution: {integrity: sha512-5hqEaV6PNmAYLL4RTmq74OcCt8pgzOLnfDVPG/7PUXpQ0Mpz0gr926oCSFukywKKXjdum3VHD84S7Z9A/DqTAw==} + peerDependencies: + eslint: '>6.6.0' + dependencies: + eslint: 8.57.0 + eslint-plugin-turbo: 1.12.4(eslint@8.57.0) + dev: true + /eslint-import-resolver-node@0.3.9: resolution: {integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==} dependencies: @@ -6955,18 +7054,18 @@ packages: - supports-color dev: true - /eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@6.18.0)(eslint-plugin-import@2.29.1)(eslint@8.56.0): + /eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@6.21.0)(eslint-plugin-import@2.29.1)(eslint@8.57.0): resolution: {integrity: sha512-xgdptdoi5W3niYeuQxKmzVDTATvLYqhpwmykwsh7f6HIOStGWEIL9iqZgQDF9u9OEzrRwR8no5q2VT+bjAujTg==} engines: {node: ^14.18.0 || >=16.0.0} peerDependencies: eslint: '*' eslint-plugin-import: '*' dependencies: - debug: 4.3.4(supports-color@5.5.0) - enhanced-resolve: 5.15.0 - eslint: 8.56.0 - eslint-module-utils: 2.8.0(@typescript-eslint/parser@6.18.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.56.0) - eslint-plugin-import: 2.29.1(@typescript-eslint/parser@6.18.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.56.0) + debug: 4.3.4 + enhanced-resolve: 5.15.1 + eslint: 8.57.0 + eslint-module-utils: 2.8.1(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0) + eslint-plugin-import: 2.29.1(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0) fast-glob: 3.3.2 get-tsconfig: 4.7.2 is-core-module: 2.13.1 @@ -6978,8 +7077,8 @@ packages: - supports-color dev: true - /eslint-module-utils@2.8.0(@typescript-eslint/parser@5.6.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.4.1): - resolution: {integrity: sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==} + /eslint-module-utils@2.8.1(@typescript-eslint/parser@5.6.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.4.1): + resolution: {integrity: sha512-rXDXR3h7cs7dy9RNpUlQf80nX31XWJEyGq1tRMo+6GsO5VmTe4UTwtmonAD4ZkAsrfMVDA2wlGJ3790Ys+D49Q==} engines: {node: '>=4'} peerDependencies: '@typescript-eslint/parser': '*' @@ -7003,13 +7102,13 @@ packages: debug: 3.2.7 eslint: 8.4.1 eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@6.18.0)(eslint-plugin-import@2.29.1)(eslint@8.56.0) + eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@6.21.0)(eslint-plugin-import@2.29.1)(eslint@8.57.0) transitivePeerDependencies: - supports-color dev: true - /eslint-module-utils@2.8.0(@typescript-eslint/parser@6.18.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.56.0): - resolution: {integrity: sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==} + /eslint-module-utils@2.8.1(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0): + resolution: {integrity: sha512-rXDXR3h7cs7dy9RNpUlQf80nX31XWJEyGq1tRMo+6GsO5VmTe4UTwtmonAD4ZkAsrfMVDA2wlGJ3790Ys+D49Q==} engines: {node: '>=4'} peerDependencies: '@typescript-eslint/parser': '*' @@ -7029,33 +7128,62 @@ packages: eslint-import-resolver-webpack: optional: true dependencies: - '@typescript-eslint/parser': 6.18.0(eslint@8.56.0)(typescript@5.3.3) + '@typescript-eslint/parser': 6.21.0(eslint@8.57.0)(typescript@5.3.3) debug: 3.2.7 - eslint: 8.56.0 + eslint: 8.57.0 eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@6.18.0)(eslint-plugin-import@2.29.1)(eslint@8.56.0) + eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@6.21.0)(eslint-plugin-import@2.29.1)(eslint@8.57.0) transitivePeerDependencies: - supports-color dev: true - /eslint-plugin-import@2.25.3(@typescript-eslint/parser@5.6.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.4.1): - resolution: {integrity: sha512-RzAVbby+72IB3iOEL8clzPLzL3wpDrlwjsTBAQXgyp5SeTqqY+0bFubwuo+y/HLhNZcXV4XqTBO4LGsfyHIDXg==} + /eslint-module-utils@2.8.1(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0): + resolution: {integrity: sha512-rXDXR3h7cs7dy9RNpUlQf80nX31XWJEyGq1tRMo+6GsO5VmTe4UTwtmonAD4ZkAsrfMVDA2wlGJ3790Ys+D49Q==} engines: {node: '>=4'} peerDependencies: '@typescript-eslint/parser': '*' - eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 + eslint: '*' + eslint-import-resolver-node: '*' + eslint-import-resolver-typescript: '*' + eslint-import-resolver-webpack: '*' peerDependenciesMeta: '@typescript-eslint/parser': optional: true - dependencies: - '@typescript-eslint/parser': 5.6.0(eslint@8.4.1)(typescript@4.5.3) - array-includes: 3.1.7 - array.prototype.flat: 1.3.2 - debug: 2.6.9 - doctrine: 2.1.0 + 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.21.0(eslint@8.57.0)(typescript@5.3.3) + debug: 3.2.7 + eslint: 8.57.0 + eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@6.21.0)(eslint-plugin-import@2.29.1)(eslint@8.57.0) + transitivePeerDependencies: + - supports-color + dev: true + + /eslint-plugin-import@2.25.3(@typescript-eslint/parser@5.6.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.4.1): + resolution: {integrity: sha512-RzAVbby+72IB3iOEL8clzPLzL3wpDrlwjsTBAQXgyp5SeTqqY+0bFubwuo+y/HLhNZcXV4XqTBO4LGsfyHIDXg==} + 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': 5.6.0(eslint@8.4.1)(typescript@4.5.3) + array-includes: 3.1.7 + array.prototype.flat: 1.3.2 + debug: 2.6.9 + doctrine: 2.1.0 eslint: 8.4.1 eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.8.0(@typescript-eslint/parser@5.6.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.4.1) + eslint-module-utils: 2.8.1(@typescript-eslint/parser@5.6.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.4.1) has: 1.0.4 is-core-module: 2.13.1 is-glob: 4.0.3 @@ -7069,7 +7197,7 @@ packages: - supports-color dev: true - /eslint-plugin-import@2.29.1(@typescript-eslint/parser@6.18.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.56.0): + /eslint-plugin-import@2.29.1(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0): resolution: {integrity: sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==} engines: {node: '>=4'} peerDependencies: @@ -7079,22 +7207,22 @@ packages: '@typescript-eslint/parser': optional: true dependencies: - '@typescript-eslint/parser': 6.18.0(eslint@8.56.0)(typescript@5.3.3) + '@typescript-eslint/parser': 6.21.0(eslint@8.57.0)(typescript@5.3.3) array-includes: 3.1.7 - array.prototype.findlastindex: 1.2.3 + array.prototype.findlastindex: 1.2.4 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: 8.57.0 eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.8.0(@typescript-eslint/parser@6.18.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.56.0) - hasown: 2.0.0 + eslint-module-utils: 2.8.1(@typescript-eslint/parser@6.21.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0) + hasown: 2.0.1 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.groupby: 1.0.2 object.values: 1.1.7 semver: 6.3.1 tsconfig-paths: 3.15.0 @@ -7104,13 +7232,13 @@ packages: - supports-color dev: true - /eslint-plugin-jsx-a11y@6.8.0(eslint@8.56.0): + /eslint-plugin-jsx-a11y@6.8.0(eslint@8.57.0): resolution: {integrity: sha512-Hdh937BS3KdwwbBaKd5+PLCOmYY6U4f2h9Z2ktwtNKvIdIEu137rjYbcb9ApSbVJfWxANNuiKTD/9tOKjK9qOA==} engines: {node: '>=4.0'} peerDependencies: eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 dependencies: - '@babel/runtime': 7.23.7 + '@babel/runtime': 7.24.0 aria-query: 5.3.0 array-includes: 3.1.7 array.prototype.flatmap: 1.3.2 @@ -7119,9 +7247,9 @@ packages: axobject-query: 3.2.1 damerau-levenshtein: 1.0.8 emoji-regex: 9.2.2 - es-iterator-helpers: 1.0.15 - eslint: 8.56.0 - hasown: 2.0.0 + es-iterator-helpers: 1.0.17 + eslint: 8.57.0 + hasown: 2.0.1 jsx-ast-utils: 3.3.5 language-tags: 1.0.9 minimatch: 3.1.2 @@ -7129,6 +7257,11 @@ packages: object.fromentries: 2.0.7 dev: true + /eslint-plugin-only-warn@1.1.0: + resolution: {integrity: sha512-2tktqUAT+Q3hCAU0iSf4xAN1k9zOpjK5WO8104mB0rT/dGhOa09582HN5HlbxNbPRZ0THV7nLGvzugcNOSjzfA==} + engines: {node: '>=6'} + dev: true + /eslint-plugin-prettier@3.1.4(eslint@8.4.1)(prettier@2.1.2): resolution: {integrity: sha512-jZDa8z76klRqo+TdGDTFJSavwbnWK2ZpqGKNZ+VvweMW516pDUMmQ2koXvxEE4JhzNvTv+radye/bWGBmA6jmg==} engines: {node: '>=6.0.0'} @@ -7141,31 +7274,6 @@ packages: prettier-linter-helpers: 1.0.0 dev: true - /eslint-plugin-react@7.33.2(eslint@8.56.0): - resolution: {integrity: sha512-73QQMKALArI8/7xGLNI/3LylrEYrlKZSb5C9+q3OtOewTnMQi5cT+aE9E41sLCmli3I9PGGmD1yiZydyo4FEPw==} - engines: {node: '>=4'} - peerDependencies: - eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 - dependencies: - array-includes: 3.1.7 - array.prototype.flatmap: 1.3.2 - array.prototype.tosorted: 1.1.2 - doctrine: 2.1.0 - es-iterator-helpers: 1.0.15 - eslint: 8.56.0 - estraverse: 5.3.0 - jsx-ast-utils: 3.3.5 - minimatch: 3.1.2 - object.entries: 1.1.7 - object.fromentries: 2.0.7 - object.hasown: 1.1.3 - object.values: 1.1.7 - prop-types: 15.8.1 - resolve: 2.0.0-next.5 - semver: 6.3.1 - string.prototype.matchall: 4.0.10 - dev: true - /eslint-plugin-tsdoc@0.2.17: resolution: {integrity: sha512-xRmVi7Zx44lOBuYqG8vzTXuL6IdGOeF9nHX17bjJ8+VE6fsxpdGem0/SBTmAwgYMKYB1WBkqRJVQ+n8GK041pA==} dependencies: @@ -7173,6 +7281,15 @@ packages: '@microsoft/tsdoc-config': 0.16.2 dev: true + /eslint-plugin-turbo@1.12.4(eslint@8.57.0): + resolution: {integrity: sha512-3AGmXvH7E4i/XTWqBrcgu+G7YKZJV/8FrEn79kTd50ilNsv+U3nS2IlcCrQB6Xm2m9avGD9cadLzKDR1/UF2+g==} + peerDependencies: + eslint: '>6.6.0' + dependencies: + dotenv: 16.0.3 + eslint: 8.57.0 + dev: true + /eslint-scope@5.1.1: resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==} engines: {node: '>=8.0.0'} @@ -7219,7 +7336,7 @@ packages: ajv: 6.12.6 chalk: 4.1.2 cross-spawn: 7.0.3 - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4 doctrine: 3.0.0 enquirer: 2.4.1 escape-string-regexp: 4.0.0 @@ -7247,7 +7364,7 @@ packages: optionator: 0.9.3 progress: 2.0.3 regexpp: 3.2.0 - semver: 7.5.4 + semver: 7.6.0 strip-ansi: 6.0.1 strip-json-comments: 3.1.1 text-table: 0.2.0 @@ -7256,23 +7373,23 @@ packages: - supports-color dev: true - /eslint@8.56.0: - resolution: {integrity: sha512-Go19xM6T9puCOWntie1/P997aXxFsOi37JIHRWI514Hc6ZnaHGKY9xFhrU65RT6CcBEzZoGG1e6Nq+DT04ZtZQ==} + /eslint@8.57.0: + resolution: {integrity: sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==} 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/eslint-utils': 4.4.0(eslint@8.57.0) '@eslint-community/regexpp': 4.10.0 '@eslint/eslintrc': 2.1.4 - '@eslint/js': 8.56.0 - '@humanwhocodes/config-array': 0.11.13 + '@eslint/js': 8.57.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(supports-color@5.5.0) + debug: 4.3.4 doctrine: 3.0.0 escape-string-regexp: 4.0.0 eslint-scope: 7.2.2 @@ -7286,7 +7403,7 @@ packages: glob-parent: 6.0.2 globals: 13.24.0 graphemer: 1.4.0 - ignore: 5.3.0 + ignore: 5.3.1 imurmurhash: 0.1.4 is-glob: 4.0.3 is-path-inside: 3.0.3 @@ -7372,6 +7489,28 @@ packages: resolution: {integrity: sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==} engines: {node: '>=0.8.x'} + /evp_bytestokey@1.0.3: + resolution: {integrity: sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==} + dependencies: + md5.js: 1.3.5 + safe-buffer: 5.2.1 + dev: true + + /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 + /expand-template@2.0.3: resolution: {integrity: sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==} engines: {node: '>=6'} @@ -7456,11 +7595,11 @@ packages: resolution: {integrity: sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==} dev: true - /fast-unique-numbers@8.0.12: - resolution: {integrity: sha512-Z4AJueNDnuC/sLxeQqrHP4zgqcBIeQQLbQ0hEx1a7m6Wf7ERrdAyR7CkGfoEFWm9Qla7dpLt0eWPyiO18gqj0A==} - engines: {node: '>=16.1.0'} + /fast-unique-numbers@9.0.0: + resolution: {integrity: sha512-lgIjiflW23W7qgagregmo5FFzM+m4/dWaDUVneRi2AV7o2k5npggeEX7srSKlYfJU9fKXvQV2Gzk3272fJT65w==} + engines: {node: '>=18.2.0'} dependencies: - '@babel/runtime': 7.23.7 + '@babel/runtime': 7.24.0 tslib: 2.6.2 dev: false @@ -7487,8 +7626,8 @@ packages: xtend: 4.0.2 dev: true - /fastq@1.16.0: - resolution: {integrity: sha512-ifCoaXsDrsdkWTtiNJX5uzHDsrck5TzfKKDcuFFTIrrc/BS076qgEIfoIy1VeZqViznfKiysPYTh/QeHtnIsYA==} + /fastq@1.17.1: + resolution: {integrity: sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==} dependencies: reusify: 1.0.4 dev: true @@ -7594,7 +7733,7 @@ packages: resolution: {integrity: sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==} engines: {node: ^10.12.0 || >=12.0.0} dependencies: - flatted: 3.2.9 + flatted: 3.3.1 keyv: 4.5.4 rimraf: 3.0.2 dev: true @@ -7604,16 +7743,16 @@ packages: hasBin: true dev: true - /flatted@3.2.9: - resolution: {integrity: sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==} + /flatted@3.3.1: + resolution: {integrity: sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==} dev: true /fn.name@1.1.0: resolution: {integrity: sha512-GRnmB5gPyJpAhTQdSZTSp9uaPSvl09KoYcMQtsB9rQoOmzs9dH6ffeccH+Z+cv6P68Hu5bC6JjRh4Ah/mHSNRw==} dev: true - /follow-redirects@1.15.4: - resolution: {integrity: sha512-Cr4D/5wlrb0z9dgERpUL3LrmPKVDsETIJhaCMeDfuFYcqa5bldGV6wBsAN6X/vxlXQtFBMrXdXxdL8CbDTGniw==} + /follow-redirects@1.15.5: + resolution: {integrity: sha512-vSFWUON1B+yAw1VN4xMfxgn5fTUiaOzAJCKBwIIgT/+7CuGy9+r+5gITvP62j3RmaD5Ph65UaERdOSRGUzZtgw==} engines: {node: '>=4.0'} peerDependencies: debug: '*' @@ -7642,7 +7781,7 @@ packages: dependencies: cross-spawn: 7.0.3 signal-exit: 4.1.0 - dev: false + dev: true /form-data@4.0.0: resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==} @@ -7666,8 +7805,8 @@ packages: engines: {node: '>= 0.6'} dev: false - /framer-motion@10.17.9(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-z2NpP8r+XuALoPA7ZVZHm/OoTnwkQNJFBu91sC86o/FYvJ4x7ar3eQnixgwYWFK7kEqOtQ6whtNM37tn1KrOOA==} + /framer-motion@10.18.0(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-oGlDh1Q1XqYPksuTD/usb0I70hq95OUzmL9+6Zd+Hs4XV0oaISBa/UUMSjYiq6m8EUF32132mOJ8xVZS+I0S6w==} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 @@ -7695,15 +7834,14 @@ packages: /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'} + /fs-extra@7.0.1: + resolution: {integrity: sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==} + engines: {node: '>=6 <7 || >=8'} dependencies: graceful-fs: 4.2.11 - jsonfile: 6.1.0 - universalify: 2.0.1 + jsonfile: 4.0.0 + universalify: 0.1.2 dev: false /fs-extra@8.1.0: @@ -7750,9 +7888,9 @@ packages: resolution: {integrity: sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==} engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.5 + call-bind: 1.0.7 define-properties: 1.2.1 - es-abstract: 1.22.3 + es-abstract: 1.22.4 functions-have-names: 1.2.3 dev: true @@ -7764,21 +7902,6 @@ packages: 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} @@ -7809,13 +7932,15 @@ packages: resolution: {integrity: sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==} dev: true - /get-intrinsic@1.2.2: - resolution: {integrity: sha512-0gSo4ml/0j98Y3lngkFEot/zhiCeWsbYIlZ+uZOVgzLyLaUw7wxUL+nCTP0XJvJg1AXulJRI3UJi8GsbDuxdGA==} + /get-intrinsic@1.2.4: + resolution: {integrity: sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==} + engines: {node: '>= 0.4'} dependencies: + es-errors: 1.3.0 function-bind: 1.1.2 - has-proto: 1.0.1 + has-proto: 1.0.3 has-symbols: 1.0.3 - hasown: 2.0.0 + hasown: 2.0.1 /get-own-enumerable-property-symbols@3.0.2: resolution: {integrity: sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==} @@ -7842,12 +7967,18 @@ packages: engines: {node: '>=4'} dev: true - /get-symbol-description@1.0.0: - resolution: {integrity: sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==} + /get-stream@6.0.1: + resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} + engines: {node: '>=10'} + dev: true + + /get-symbol-description@1.0.2: + resolution: {integrity: sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==} engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.5 - get-intrinsic: 1.2.2 + call-bind: 1.0.7 + es-errors: 1.3.0 + get-intrinsic: 1.2.4 dev: true /get-tsconfig@4.7.2: @@ -7919,7 +8050,7 @@ packages: minimatch: 9.0.3 minipass: 7.0.4 path-scurry: 1.10.1 - dev: false + dev: true /glob@7.2.0: resolution: {integrity: sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==} @@ -7930,6 +8061,7 @@ packages: minimatch: 3.1.2 once: 1.4.0 path-is-absolute: 1.0.1 + dev: false /glob@7.2.3: resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} @@ -7950,7 +8082,6 @@ packages: inherits: 2.0.4 minimatch: 5.1.6 once: 1.4.0 - dev: false /globals@11.12.0: resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} @@ -7978,13 +8109,13 @@ packages: array-union: 2.1.0 dir-glob: 3.0.1 fast-glob: 3.3.2 - ignore: 5.3.0 + ignore: 5.3.1 merge2: 1.4.1 slash: 3.0.0 dev: true - /goober@2.1.13(csstype@3.1.3): - resolution: {integrity: sha512-jFj3BQeleOoy7t93E9rZ2de+ScC4lQICLwiAQmKMg9F6roKGaLSHoCDYKkWlSafg138jejvq/mTdvmnwDQgqoQ==} + /goober@2.1.14(csstype@3.1.3): + resolution: {integrity: sha512-4UpC0NdGyAFqLNPnhCT2iHpza2q+RAY3GV85a/mRPdzyPQMsj0KmMMuetdIkzWRbJ+Hgau1EZztq8ImmiMGhsg==} peerDependencies: csstype: ^3.0.10 dependencies: @@ -7994,7 +8125,7 @@ packages: /gopd@1.0.1: resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==} dependencies: - get-intrinsic: 1.2.2 + get-intrinsic: 1.2.4 /graceful-fs@4.2.11: resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} @@ -8033,21 +8164,21 @@ packages: resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} engines: {node: '>=8'} - /has-property-descriptors@1.0.1: - resolution: {integrity: sha512-VsX8eaIewvas0xnvinAe9bw4WfIeODpGYikiWYLH+dma0Jw6KHYqWiWfhQlgOVK8D6PvjubK5Uc4P0iIhIcNVg==} + /has-property-descriptors@1.0.2: + resolution: {integrity: sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==} dependencies: - get-intrinsic: 1.2.2 + es-define-property: 1.0.0 - /has-proto@1.0.1: - resolution: {integrity: sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==} + /has-proto@1.0.3: + resolution: {integrity: sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==} 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==} + /has-tostringtag@1.0.2: + resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==} engines: {node: '>= 0.4'} dependencies: has-symbols: 1.0.3 @@ -8055,13 +8186,31 @@ packages: /has-unicode@2.0.1: resolution: {integrity: sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==} + requiresBuild: true dev: false + optional: true /has@1.0.4: resolution: {integrity: sha512-qdSAmqLF6209RFj4VVItywPMbm3vWylknmB3nvNiUIs72xAimcM8nVYxYr7ncvZq5qzk9MKIZR8ijqD/1QuYjQ==} engines: {node: '>= 0.4.0'} dev: true + /hash-base@3.1.0: + resolution: {integrity: sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==} + engines: {node: '>=4'} + dependencies: + inherits: 2.0.4 + readable-stream: 3.6.2 + safe-buffer: 5.2.1 + dev: true + + /hash.js@1.1.7: + resolution: {integrity: sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==} + dependencies: + inherits: 2.0.4 + minimalistic-assert: 1.0.1 + dev: true + /hasha@5.2.2: resolution: {integrity: sha512-Hrp5vIK/xr5SkeN2onO32H0MgNZ0f17HRNH39WfL0SYUNOTZ5Lz1TJ8Pajo/87dYGEFlLMm7mIc/k/s6Bvz9HQ==} engines: {node: '>=8'} @@ -8070,8 +8219,8 @@ packages: type-fest: 0.8.1 dev: true - /hasown@2.0.0: - resolution: {integrity: sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==} + /hasown@2.0.1: + resolution: {integrity: sha512-1/th4MHjnwncwXsIW6QMzlvYL9kG5e/CpVvLRZe4XPa8TOUNbCELqmvhDmnkNsAjwaG4+I8gJJL0JBvTTLO9qA==} engines: {node: '>= 0.4'} dependencies: function-bind: 1.1.2 @@ -8085,11 +8234,8 @@ packages: engines: {node: '>=16.0.0'} dev: false - /help-me@4.2.0: - resolution: {integrity: sha512-TAOnTB8Tz5Dw8penUuzHVrKNKlCIbwwbHnXraNJxPwf8LRtE2HlM84RYuezMFcwOJmoYOCWVDyJ8TQGxn9PgxA==} - dependencies: - glob: 8.1.0 - readable-stream: 3.6.2 + /help-me@5.0.0: + resolution: {integrity: sha512-7xgomUX6ADmcYzFik0HzAxh/73YlKR9bmFzf51CZwR+b6YtzU2m0u49hQCqV6SvlqIqsaxovfwdvbnsw3b/zpg==} dev: false /hexoid@1.0.0: @@ -8097,6 +8243,14 @@ packages: engines: {node: '>=8'} dev: true + /hmac-drbg@1.0.1: + resolution: {integrity: sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==} + dependencies: + hash.js: 1.1.7 + minimalistic-assert: 1.0.1 + minimalistic-crypto-utils: 1.0.1 + dev: true + /hoist-non-react-statics@3.3.2: resolution: {integrity: sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==} dependencies: @@ -8155,7 +8309,7 @@ packages: dependencies: '@tootallnate/once': 1.1.2 agent-base: 6.0.2 - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4(supports-color@8.1.1) transitivePeerDependencies: - supports-color dev: false @@ -8166,7 +8320,7 @@ packages: engines: {node: '>=8.0.0'} dependencies: eventemitter3: 4.0.7 - follow-redirects: 1.15.4 + follow-redirects: 1.15.5 requires-port: 1.0.0 transitivePeerDependencies: - debug @@ -8195,15 +8349,26 @@ packages: - supports-color dev: false + /https-browserify@1.0.0: + resolution: {integrity: sha512-J+FkSdyD+0mA0N+81tMotaRMfSL9SGi+xpD3T6YApKsc3bGSXJlfXri3VyFOeYkfLRQisDk1W+jIFFKBeUBbBg==} + dev: true + /https-proxy-agent@5.0.1: resolution: {integrity: sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==} engines: {node: '>= 6'} + requiresBuild: true dependencies: agent-base: 6.0.2 - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4(supports-color@8.1.1) transitivePeerDependencies: - supports-color dev: false + optional: true + + /human-signals@2.1.0: + resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==} + engines: {node: '>=10.17.0'} + dev: true /humanize-ms@1.2.1: resolution: {integrity: sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==} @@ -8213,9 +8378,10 @@ packages: dev: false optional: true - /hyperid@3.1.1: - resolution: {integrity: sha512-RveV33kIksycSf7HLkq1sHB5wW0OwuX8ot8MYnY++gaaPXGFfKpBncHrAWxdpuEeRlazUMGWefwP1w6o6GaumA==} + /hyperid@3.2.0: + resolution: {integrity: sha512-PdTtDo+Rmza9nEhTunaDSUKwbC69TIzLEpZUwiB6f+0oqmY0UPfhyHCPt6K1NQ4WFv5yJBTG5vELztVWP+nEVQ==} dependencies: + buffer: 5.7.1 uuid: 8.3.2 uuid-parse: 1.1.0 dev: true @@ -8223,13 +8389,13 @@ packages: /i18next-browser-languagedetector@7.2.0: resolution: {integrity: sha512-U00DbDtFIYD3wkWsr2aVGfXGAj2TgnELzOX9qv8bT0aJtvPV9CRO77h+vgmHFBMe7LAxdwvT/7VkCWGya6L3tA==} dependencies: - '@babel/runtime': 7.23.7 + '@babel/runtime': 7.24.0 dev: false - /i18next@23.7.16: - resolution: {integrity: sha512-SrqFkMn9W6Wb43ZJ9qrO6U2U4S80RsFMA7VYFSqp7oc7RllQOYDCdRfsse6A7Cq/V8MnpxKvJCYgM8++27n4Fw==} + /i18next@23.10.0: + resolution: {integrity: sha512-/TgHOqsa7/9abUKJjdPeydoyDc0oTi/7u9F8lMSj6ufg4cbC1Oj3f/Jja7zj7WRIhEQKB7Q4eN6y68I9RDxxGQ==} dependencies: - '@babel/runtime': 7.23.7 + '@babel/runtime': 7.24.0 dev: false /iconv-lite@0.4.24: @@ -8249,6 +8415,7 @@ packages: /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 @@ -8260,17 +8427,13 @@ packages: /ieee754@1.2.1: resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==} - /ignore-by-default@1.0.1: - resolution: {integrity: sha512-Ius2VYcGNk7T90CppJqcIkS5ooHUZyIQK+ClZfMfMNFEF9VSE73Fq+906u/CWu92x4gzZMWOwfFYckPObzdEbA==} - dev: true - /ignore@4.0.6: resolution: {integrity: sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==} engines: {node: '>= 4'} dev: true - /ignore@5.3.0: - resolution: {integrity: sha512-g7dmpshy+gD7mh88OC9NwSGTKoc3kyLAZQRU1mt53Aw/vnvfXnbC+F/7F7QoYVKbV+KNvJx8wArewKy1vXMtlg==} + /ignore@5.3.1: + resolution: {integrity: sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==} engines: {node: '>= 4'} dev: true @@ -8281,6 +8444,11 @@ packages: parent-module: 1.0.1 resolve-from: 4.0.0 + /import-lazy@4.0.0: + resolution: {integrity: sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw==} + engines: {node: '>=8'} + dev: false + /imurmurhash@0.1.4: resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} engines: {node: '>=0.8.19'} @@ -8312,13 +8480,13 @@ packages: /ini@1.3.8: resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==} - /internal-slot@1.0.6: - resolution: {integrity: sha512-Xj6dv+PsbtwyPpEflsejS+oIZxmMlV44zAhG479uYu89MsjcYOhCFnNyKrkJrihbsiasQyY0afoCl/9BLR65bg==} + /internal-slot@1.0.7: + resolution: {integrity: sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==} engines: {node: '>= 0.4'} dependencies: - get-intrinsic: 1.2.2 - hasown: 2.0.0 - side-channel: 1.0.4 + es-errors: 1.3.0 + hasown: 2.0.1 + side-channel: 1.0.5 dev: true /internmap@2.0.3: @@ -8326,8 +8494,12 @@ packages: engines: {node: '>=12'} dev: false - /ip@2.0.0: - resolution: {integrity: sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==} + /ip-address@9.0.5: + resolution: {integrity: sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g==} + engines: {node: '>= 12'} + dependencies: + jsbn: 1.1.0 + sprintf-js: 1.1.3 dev: false /ipaddr.js@1.9.1: @@ -8335,12 +8507,20 @@ packages: engines: {node: '>= 0.10'} dev: false - /is-array-buffer@3.0.2: - resolution: {integrity: sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==} + /is-arguments@1.1.1: + resolution: {integrity: sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.7 + has-tostringtag: 1.0.2 + dev: true + + /is-array-buffer@3.0.4: + resolution: {integrity: sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==} + engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.5 - get-intrinsic: 1.2.2 - is-typed-array: 1.1.12 + call-bind: 1.0.7 + get-intrinsic: 1.2.4 dev: true /is-arrayish@0.2.1: @@ -8354,7 +8534,7 @@ packages: resolution: {integrity: sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==} engines: {node: '>= 0.4'} dependencies: - has-tostringtag: 1.0.0 + has-tostringtag: 1.0.2 dev: true /is-bigint@1.0.4: @@ -8374,8 +8554,8 @@ packages: resolution: {integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==} engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.5 - has-tostringtag: 1.0.0 + call-bind: 1.0.7 + has-tostringtag: 1.0.2 dev: true /is-buffer@1.1.6: @@ -8390,13 +8570,13 @@ packages: /is-core-module@2.13.1: resolution: {integrity: sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==} dependencies: - hasown: 2.0.0 + hasown: 2.0.1 /is-date-object@1.0.5: resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==} engines: {node: '>= 0.4'} dependencies: - has-tostringtag: 1.0.0 + has-tostringtag: 1.0.2 dev: true /is-docker@2.2.1: @@ -8413,7 +8593,7 @@ packages: /is-finalizationregistry@1.0.2: resolution: {integrity: sha512-0by5vtUJs8iFQb5TYUHHPudOR+qXYIMKtiUzvLIZITZUjknFmziyBJuLhVRc+Ds0dREFlskDNJKYIdIzu/9pfw==} dependencies: - call-bind: 1.0.5 + call-bind: 1.0.7 dev: true /is-fullwidth-code-point@3.0.0: @@ -8424,7 +8604,7 @@ packages: resolution: {integrity: sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==} engines: {node: '>= 0.4'} dependencies: - has-tostringtag: 1.0.0 + has-tostringtag: 1.0.2 dev: true /is-glob@4.0.3: @@ -8440,16 +8620,25 @@ packages: dev: false optional: true - /is-map@2.0.2: - resolution: {integrity: sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==} + /is-map@2.0.3: + resolution: {integrity: sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==} + engines: {node: '>= 0.4'} dev: true /is-module@1.0.0: resolution: {integrity: sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==} dev: true - /is-negative-zero@2.0.2: - resolution: {integrity: sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==} + /is-nan@1.3.2: + resolution: {integrity: sha512-E+zBKpQ2t6MEo1VsonYmluk9NxGrbzpeeLC2xIViuO2EjU2xsXsBPwTr3Ykv9l08UYEVEdWeRZNouaZqF6RN0w==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.7 + define-properties: 1.2.1 + dev: true + + /is-negative-zero@2.0.3: + resolution: {integrity: sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==} engines: {node: '>= 0.4'} dev: true @@ -8457,7 +8646,7 @@ packages: resolution: {integrity: sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==} engines: {node: '>= 0.4'} dependencies: - has-tostringtag: 1.0.0 + has-tostringtag: 1.0.2 dev: true /is-number@7.0.0: @@ -8494,8 +8683,8 @@ packages: resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==} engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.5 - has-tostringtag: 1.0.0 + call-bind: 1.0.7 + has-tostringtag: 1.0.2 dev: true /is-regexp@1.0.0: @@ -8503,14 +8692,16 @@ packages: engines: {node: '>=0.10.0'} dev: true - /is-set@2.0.2: - resolution: {integrity: sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==} + /is-set@2.0.3: + resolution: {integrity: sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==} + engines: {node: '>= 0.4'} dev: true - /is-shared-array-buffer@1.0.2: - resolution: {integrity: sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==} + /is-shared-array-buffer@1.0.3: + resolution: {integrity: sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==} + engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.5 + call-bind: 1.0.7 dev: true /is-stream@2.0.1: @@ -8522,7 +8713,7 @@ packages: resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==} engines: {node: '>= 0.4'} dependencies: - has-tostringtag: 1.0.0 + has-tostringtag: 1.0.2 dev: true /is-symbol@1.0.4: @@ -8539,11 +8730,11 @@ packages: text-extensions: 1.9.0 dev: true - /is-typed-array@1.1.12: - resolution: {integrity: sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg==} + /is-typed-array@1.1.13: + resolution: {integrity: sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==} engines: {node: '>= 0.4'} dependencies: - which-typed-array: 1.1.13 + which-typed-array: 1.1.14 dev: true /is-typedarray@1.0.0: @@ -8555,21 +8746,23 @@ packages: engines: {node: '>=10'} dev: true - /is-weakmap@2.0.1: - resolution: {integrity: sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==} + /is-weakmap@2.0.2: + resolution: {integrity: sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==} + engines: {node: '>= 0.4'} dev: true /is-weakref@1.0.2: resolution: {integrity: sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==} dependencies: - call-bind: 1.0.5 + call-bind: 1.0.7 dev: true - /is-weakset@2.0.2: - resolution: {integrity: sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==} + /is-weakset@2.0.3: + resolution: {integrity: sha512-LvIm3/KWzS9oRFHugab7d+M/GcBXuXX5xZkzPmN+NxihdQlZUQ4dWuSV1xR/sq6upL1TJEDrfBgRepHFdBtSNQ==} + engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.5 - get-intrinsic: 1.2.2 + call-bind: 1.0.7 + get-intrinsic: 1.2.4 dev: true /is-windows@1.0.2: @@ -8584,10 +8777,6 @@ packages: is-docker: 2.2.1 dev: true - /isarray@0.0.1: - resolution: {integrity: sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==} - dev: true - /isarray@1.0.0: resolution: {integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==} dev: true @@ -8599,6 +8788,11 @@ packages: /isexe@2.0.0: resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} + /isomorphic-timers-promises@1.0.1: + resolution: {integrity: sha512-u4sej9B1LPSxTGKB/HiuzvEQnXH0ECYkSVQU39koSwmFAxhlEAFl9RdTvLv4TOTQUgBS5O3O5fwUxk6byBZ+IQ==} + engines: {node: '>=10'} + dev: true + /istanbul-lib-coverage@3.2.2: resolution: {integrity: sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==} engines: {node: '>=8'} @@ -8615,7 +8809,7 @@ packages: resolution: {integrity: sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ==} engines: {node: '>=8'} dependencies: - '@babel/core': 7.23.7 + '@babel/core': 7.24.0 '@istanbuljs/schema': 0.1.3 istanbul-lib-coverage: 3.2.2 semver: 6.3.1 @@ -8648,15 +8842,15 @@ packages: resolution: {integrity: sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==} engines: {node: '>=10'} dependencies: - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4(supports-color@8.1.1) istanbul-lib-coverage: 3.2.2 source-map: 0.6.1 transitivePeerDependencies: - supports-color dev: true - /istanbul-reports@3.1.6: - resolution: {integrity: sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg==} + /istanbul-reports@3.1.7: + resolution: {integrity: sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==} engines: {node: '>=8'} dependencies: html-escaper: 2.0.2 @@ -8667,10 +8861,10 @@ packages: resolution: {integrity: sha512-DR33HMMr8EzwuRL8Y9D3u2BMj8+RqSE850jfGu59kS7tbmPLzGkZmVSfyCFSDxuZiEY6Rzt3T2NA/qU+NwVj1w==} dependencies: define-properties: 1.2.1 - get-intrinsic: 1.2.2 + get-intrinsic: 1.2.4 has-symbols: 1.0.3 - reflect.getprototypeof: 1.0.4 - set-function-name: 2.0.1 + reflect.getprototypeof: 1.0.5 + set-function-name: 2.0.2 dev: true /jackspeak@2.3.6: @@ -8680,7 +8874,7 @@ packages: '@isaacs/cliui': 8.0.2 optionalDependencies: '@pkgjs/parseargs': 0.11.0 - dev: false + dev: true /jake@10.8.7: resolution: {integrity: sha512-ZDi3aP+fG/LchyBzUM804VjddnwfSfsdeYkwt8NcbKRvo4rFkjhs456iLFn3k2ZUWvNe4i48WACDbza8fhq2+w==} @@ -8697,13 +8891,17 @@ packages: resolution: {integrity: sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==} engines: {node: '>= 10.13.0'} dependencies: - '@types/node': 20.10.7 + '@types/node': 20.11.22 merge-stream: 2.0.0 supports-color: 7.2.0 dev: true /jju@1.4.0: resolution: {integrity: sha512-8wb9Yw966OSxApiCt0K3yNJL8pnNeIv+OEq2YMidz4FKP6nonSRoOXc80iXY4JaN2FC11B9qsNmDsm+ZOfMROA==} + + /joycon@3.1.1: + resolution: {integrity: sha512-34wB/Y7MW7bzjKRjUKTa46I2Z7eV62Rkhva+KkopW7Qvv/OSWBqvkSY7vusOPrNuZcUG3tApvdVgNB8POj3SPw==} + engines: {node: '>=10'} dev: true /js-sdsl@4.3.0: @@ -8728,6 +8926,10 @@ packages: argparse: 2.0.1 dev: true + /jsbn@1.1.0: + resolution: {integrity: sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==} + dev: false + /jsesc@0.5.0: resolution: {integrity: sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==} hasBin: true @@ -8783,15 +8985,14 @@ packages: hasBin: true dev: true - /jsonc-parser@3.2.0: - resolution: {integrity: sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==} + /jsonc-parser@3.2.1: + resolution: {integrity: sha512-AilxAyFOAcK5wA1+LeaySVBrHsGQvUFCDWXKpZjzaL0PqW+xfBOttn8GNtWKFWqneyMZj41MWF9Kl6iPWLwgOA==} 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==} @@ -8799,6 +9000,7 @@ packages: universalify: 2.0.1 optionalDependencies: graceful-fs: 4.2.11 + dev: true /jsonparse@1.3.1: resolution: {integrity: sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==} @@ -8828,7 +9030,7 @@ packages: lodash.isstring: 4.0.1 lodash.once: 4.1.1 ms: 2.1.3 - semver: 7.5.4 + semver: 7.6.0 dev: false /jsx-ast-utils@3.3.5: @@ -8841,8 +9043,8 @@ packages: object.values: 1.1.7 dev: true - /just-extend@4.2.1: - resolution: {integrity: sha512-g3UB796vUFIY90VIv/WX3L2c8CS2MdWUww3CNrYmqza1Fg0DURc2K/O4YrnklBdQarSJ/y8JnJYDGc+1iumQjg==} + /just-extend@6.2.0: + resolution: {integrity: sha512-cYofQu2Xpom82S6qD778jBDpwvvy39s1l/hrYij2u9AMdQcGRpaBu6kY4mVhuno5kJVi1DAz4aiphA2WI1/OAw==} dev: true /jwa@1.4.1: @@ -8909,6 +9111,11 @@ packages: type-check: 0.4.0 dev: true + /lilconfig@3.1.1: + resolution: {integrity: sha512-O18pf7nyvHTckunPWCV1XUNXU1piu01y2b7ATJ0ppkUkk8ocqVWBrYjJBCwHDjD/ZWcfyrA0P4gKhzWGi5EINQ==} + engines: {node: '>=14'} + dev: true + /lines-and-columns@1.2.4: resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} @@ -8928,6 +9135,11 @@ packages: strip-bom: 3.0.0 dev: true + /load-tsconfig@0.2.5: + resolution: {integrity: sha512-IXO6OCs9yg8tMKzfPZ1YmheJbZCiEsnBdcB03l0OcfK9prKnJb96siuHCr5Fl37/yo9DnKU+TLpxzTUspw9shg==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dev: true + /locate-path@2.0.0: resolution: {integrity: sha512-NCI2kiDkyR7VeEKm27Kda/iQHyKJe1Bu0FlTbYp3CqJu+9IFe9bLyAjMxf5ZDDbEg+iMPzB5zYyUTSm8wVTKmA==} engines: {node: '>=4'} @@ -8971,7 +9183,6 @@ packages: /lodash.get@4.4.2: resolution: {integrity: sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==} - dev: true /lodash.includes@4.3.0: resolution: {integrity: sha512-W3Bx6mdkRTGtlJISOvVD/lbqjTlPPUDTMnlXZFnVwi9NKJ6tiAk6LVdlhZMm17VZisqhKcgzpO5Wz91PCt5b0w==} @@ -8981,6 +9192,10 @@ packages: resolution: {integrity: sha512-Bz5mupy2SVbPHURB98VAcw+aHh4vRV5IPNhILUCsOzRmsTmSQ17jIuqopAentWoehktxGd9e/hbIXq980/1QJg==} dev: false + /lodash.isequal@4.5.0: + resolution: {integrity: sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==} + dev: false + /lodash.isinteger@4.0.4: resolution: {integrity: sha512-DBwtEWN2caHQ9/imiNeEA5ys1JoRtRfY3d7V9wkqtbycnAmTvRRmbHKDV4a0EYc678/dia0jrte4tjYwVBaZUA==} dev: false @@ -9045,6 +9260,7 @@ packages: hasBin: true dependencies: js-tokens: 4.0.0 + dev: false /loupe@2.3.7: resolution: {integrity: sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==} @@ -9058,10 +9274,9 @@ packages: tslib: 2.6.2 dev: true - /lru-cache@10.1.0: - resolution: {integrity: sha512-/1clY/ui8CzjKFyjdvwPWJUYKiFVXG2I2cY0ssG7h4+hwk+XOIX7ZSG9Q7TW8TW3Kp3BUSqgFWBLgL4PJ+Blag==} + /lru-cache@10.2.0: + resolution: {integrity: sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==} engines: {node: 14 || >=16.14} - dev: false /lru-cache@5.1.1: resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} @@ -9090,17 +9305,25 @@ packages: sourcemap-codec: 1.4.8 dev: true + /magic-string@0.30.7: + resolution: {integrity: sha512-8vBuFF/I/+OSLRmdf2wwFCJCz+nSn0m6DPvGH1fS/KiQoSaR+sETbov0eIk9KhEKy8CYqIkIAnbohxT/4H0kuA==} + engines: {node: '>=12'} + dependencies: + '@jridgewell/sourcemap-codec': 1.4.15 + dev: true + /make-dir@3.1.0: resolution: {integrity: sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==} engines: {node: '>=8'} dependencies: semver: 6.3.1 + dev: true /make-dir@4.0.0: resolution: {integrity: sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==} engines: {node: '>=10'} dependencies: - semver: 7.5.4 + semver: 7.6.0 dev: true /make-error@1.3.6: @@ -9168,6 +9391,14 @@ packages: escape-string-regexp: 1.0.5 dev: false + /md5.js@1.3.5: + resolution: {integrity: sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==} + dependencies: + hash-base: 3.1.0 + inherits: 2.0.4 + safe-buffer: 5.2.1 + dev: true + /md5@2.3.0: resolution: {integrity: sha512-T1GITYmFaKuO91vxyoQMFETst+O71VUPEU3ze5GNzDm0OWdP8v1ziTaAEPUr/3kLsY3Sftgz242A1SetQiDL7g==} dependencies: @@ -9233,6 +9464,14 @@ packages: picomatch: 2.3.1 dev: true + /miller-rabin@4.0.1: + resolution: {integrity: sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==} + hasBin: true + dependencies: + bn.js: 4.12.0 + brorand: 1.1.0 + dev: true + /mime-db@1.52.0: resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} engines: {node: '>= 0.6'} @@ -9255,6 +9494,11 @@ packages: hasBin: true dev: true + /mimic-fn@2.1.0: + resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} + engines: {node: '>=6'} + dev: true + /mimic-response@3.1.0: resolution: {integrity: sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==} engines: {node: '>=10'} @@ -9265,6 +9509,14 @@ packages: engines: {node: '>=4'} dev: true + /minimalistic-assert@1.0.1: + resolution: {integrity: sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==} + dev: true + + /minimalistic-crypto-utils@1.0.1: + resolution: {integrity: sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==} + dev: true + /minimatch@3.1.2: resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} dependencies: @@ -9288,6 +9540,7 @@ packages: engines: {node: '>=16 || 14 >=14.17'} dependencies: brace-expansion: 2.0.1 + dev: true /minimist-options@4.1.0: resolution: {integrity: sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==} @@ -9365,7 +9618,7 @@ packages: /minipass@7.0.4: resolution: {integrity: sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==} engines: {node: '>=16 || 14 >=14.17'} - dev: false + dev: true /minizlib@2.1.2: resolution: {integrity: sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==} @@ -9377,7 +9630,6 @@ packages: /mkdirp-classic@0.5.3: resolution: {integrity: sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==} - dev: false /mkdirp@0.5.6: resolution: {integrity: sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==} @@ -9398,23 +9650,23 @@ packages: hasBin: true dev: true - /mocha-junit-reporter@2.2.1(mocha@10.2.0): + /mocha-junit-reporter@2.2.1(mocha@10.3.0): resolution: {integrity: sha512-iDn2tlKHn8Vh8o4nCzcUVW4q7iXp7cC4EB78N0cDHIobLymyHNwe0XG8HEHHjc3hJlXm0Vy6zcrxaIhnI2fWmw==} peerDependencies: mocha: '>=2.2.5' dependencies: - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4(supports-color@8.1.1) md5: 2.3.0 mkdirp: 3.0.1 - mocha: 10.2.0 + mocha: 10.3.0 strip-ansi: 6.0.1 xml: 1.0.1 transitivePeerDependencies: - supports-color dev: true - /mocha@10.2.0: - resolution: {integrity: sha512-IDY7fl/BecMwFHzoqF2sg/SHHANeBoMMXFlS9r0OXKDssYE1M5O43wUY/9BVPeIvfH2zmEbBfseqN9gBQZzXkg==} + /mocha@10.3.0: + resolution: {integrity: sha512-uF2XJs+7xSLsrmIvn37i/wnc91nw7XjOQB8ccyx5aEgdnohr7n+rEiZP23WkCYHjilR6+EboEnbq/ZQDz4LSbg==} engines: {node: '>= 14.0.0'} hasBin: true dependencies: @@ -9425,13 +9677,12 @@ packages: diff: 5.0.0 escape-string-regexp: 4.0.0 find-up: 5.0.0 - glob: 7.2.0 + glob: 8.1.0 he: 1.2.0 js-yaml: 4.1.0 log-symbols: 4.1.0 minimatch: 5.0.1 ms: 2.1.3 - nanoid: 3.3.3 serialize-javascript: 6.0.0 strip-json-comments: 3.1.1 supports-color: 8.1.1 @@ -9446,8 +9697,8 @@ packages: engines: {node: '>=0.10.0'} dev: true - /moment-timezone@0.5.44: - resolution: {integrity: sha512-nv3YpzI/8lkQn0U6RkLd+f0W/zy/JnoR5/EyPz/dNkPTBjA2jNLCVxaiQ8QpeLymhSZvX0wCL5s27NQWdOPwAw==} + /moment-timezone@0.5.45: + resolution: {integrity: sha512-HIWmqA86KcmCAhnMAN0wuDOARV/525R2+lOLotuGFzn4HO+FH+/645z2wx0Dt3iDv6/p61SIvKnDstISainhLQ==} dependencies: moment: 2.30.1 dev: false @@ -9469,10 +9720,10 @@ packages: dependencies: bson: 4.7.2 mongodb-connection-string-url: 2.6.0 - socks: 2.7.1 + socks: 2.8.1 optionalDependencies: - '@aws-sdk/credential-providers': 3.485.0 - '@mongodb-js/saslprep': 1.1.1 + '@aws-sdk/credential-providers': 3.523.0 + '@mongodb-js/saslprep': 1.1.4 transitivePeerDependencies: - aws-crt dev: false @@ -9489,7 +9740,7 @@ packages: resolution: {integrity: sha512-FFZbcZ2omsf4c5TxEQfcX9hI+JzDpDKPT46OmeIBpVA7+t32ey25UNqlqNXTmeZOr5BLsSIERpQQLsFWJS94SQ==} dependencies: bl: 4.1.0 - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4(supports-color@8.1.1) process-nextick-args: 2.0.1 transitivePeerDependencies: - supports-color @@ -9498,14 +9749,14 @@ packages: /mqtt-packet@9.0.0: resolution: {integrity: sha512-8v+HkX+fwbodsWAZIZTI074XIoxVBOmPeggQuDFCGg1SqNcC+uoRMWu7J6QlJPqIUIJXmjNYYHxBBLr1Y/Df4w==} dependencies: - bl: 6.0.10 - debug: 4.3.4(supports-color@5.5.0) + bl: 6.0.11 + debug: 4.3.4(supports-color@8.1.1) process-nextick-args: 2.0.1 transitivePeerDependencies: - supports-color - /mqtt@5.3.4: - resolution: {integrity: sha512-nyhr2bnFtyiv68jV3yfR6eQtGcGs/jr2l3ETKXYc0amttsasXa1KgvETHRNRjfeDt/yc68IqoEjFzKkHpoQUPQ==} + /mqtt@5.3.6: + resolution: {integrity: sha512-3XeyCdHRFf3zZdUUBt/pqprKPtUABc8O4ZGPGs2QPO4sPNTnJels8U2UtBtMt09QCgpUmw8gLTLy2R7verR7kQ==} engines: {node: '>=16.0.0'} hasBin: true dependencies: @@ -9513,17 +9764,17 @@ packages: '@types/ws': 8.5.10 commist: 3.2.0 concat-stream: 2.0.0 - debug: 4.3.4(supports-color@5.5.0) - help-me: 4.2.0 - lru-cache: 10.1.0 + debug: 4.3.4(supports-color@8.1.1) + help-me: 5.0.0 + lru-cache: 10.2.0 minimist: 1.2.8 mqtt-packet: 9.0.0 number-allocator: 1.0.14 readable-stream: 4.5.2 reinterval: 1.1.0 - rfdc: 1.3.0 + rfdc: 1.3.1 split2: 4.2.0 - worker-timers: 7.0.80 + worker-timers: 7.1.2 ws: 8.16.0 transitivePeerDependencies: - bufferutil @@ -9540,18 +9791,19 @@ packages: /ms@2.1.3: resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} + /mz@2.7.0: + resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==} + dependencies: + any-promise: 1.3.0 + object-assign: 4.1.1 + thenify-all: 1.6.0 + dev: true + /nan@2.18.0: resolution: {integrity: sha512-W7tfG7vMOGtD30sHoZSSc/JVYiyDPEyQVso/Zz+/uQd0B0L46gtC+pHha5FFMRpil6fm/AoEcRWyOVi4+E/f8w==} requiresBuild: true - dev: false optional: true - /nanoid@3.3.3: - resolution: {integrity: sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w==} - engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} - hasBin: true - dev: true - /nanoid@3.3.7: resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==} engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} @@ -9575,14 +9827,14 @@ packages: resolution: {integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==} dev: true - /nise@5.1.5: - resolution: {integrity: sha512-VJuPIfUFaXNRzETTQEEItTOP8Y171ijr+JLq42wHes3DiryR8vT+1TXQW/Rx8JNUhyYYWyIvjXTU6dOhJcs9Nw==} + /nise@5.1.9: + resolution: {integrity: sha512-qOnoujW4SV6e40dYxJOb3uvuoPHtmLzIk4TFo+j0jPJoC+5Z9xja5qH5JZobEPsa8+YYphMrOSwnrshEhG2qww==} dependencies: - '@sinonjs/commons': 2.0.0 - '@sinonjs/fake-timers': 10.3.0 + '@sinonjs/commons': 3.0.1 + '@sinonjs/fake-timers': 11.2.2 '@sinonjs/text-encoding': 0.7.2 - just-extend: 4.2.1 - path-to-regexp: 1.8.0 + just-extend: 6.2.0 + path-to-regexp: 6.2.1 dev: true /no-case@3.0.4: @@ -9592,31 +9844,16 @@ packages: tslib: 2.6.2 dev: true - /node-abi@3.54.0: - resolution: {integrity: sha512-p7eGEiQil0YUV3ItH4/tBb781L5impVmmx2E9FRKF7d18XXzp4PGT2tdYMFY6wQqgxD0IwNZOiSJ0/K0fSi/OA==} + /node-abi@3.56.0: + resolution: {integrity: sha512-fZjdhDOeRcaS+rcpve7XuwHBmktS1nS1gzgghwKUQQ8nTy2FdSDr6ZT8k6YhvlJeHmmQMYiT/IH9hfco5zeW2Q==} engines: {node: '>=10'} dependencies: - semver: 7.5.4 - dev: false - - /node-addon-api@5.1.0: - resolution: {integrity: sha512-eh0GgfEkpnoWDq+VY8OyvYhFEzBk6jIYbRKdIlyTiAXIVJ8PyBaKb0rp7oDtoddbdoHWhq8wwr+XZ81F1rpNdA==} - dev: false - - /node-addon-api@7.0.0: - resolution: {integrity: sha512-vgbBJTS4m5/KkE16t5Ly0WW9hz46swAstv0hYYwMtbG7AznRhNyfLRe8HZAiWIpcHzoO7HxhLuBQj9rJ/Ho0ZA==} + semver: 7.6.0 dev: false - /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 + /node-addon-api@7.1.0: + resolution: {integrity: sha512-mNcltoe1R8o7STTegSOHdnJNN7s5EUvhoS7ShnTHDyOSd+8H+UdWODq6qSv67PjC8Zc5JRT8+oLAMCr0SIXw7g==} + engines: {node: ^16 || ^18 || >= 20} dev: false /node-gyp@8.4.1(bluebird@3.7.2): @@ -9632,7 +9869,7 @@ packages: nopt: 5.0.0 npmlog: 6.0.2 rimraf: 3.0.2 - semver: 7.5.4 + semver: 7.6.0 tar: 6.2.0 which: 2.0.2 transitivePeerDependencies: @@ -9661,37 +9898,48 @@ packages: sorted-array-functions: 1.3.0 dev: false - /nodemon@3.0.2: - resolution: {integrity: sha512-9qIN2LNTrEzpOPBaWHTm4Asy1LxXLSickZStAQ4IZe7zsoIpD/A7LWxhZV3t4Zu352uBcqVnRsDXSMR2Sc3lTA==} + /node-stdlib-browser@1.2.0: + resolution: {integrity: sha512-VSjFxUhRhkyed8AtLwSCkMrJRfQ3e2lGtG3sP6FEgaLKBBbxM/dLfjRe1+iLhjvyLFW3tBQ8+c0pcOtXGbAZJg==} engines: {node: '>=10'} - hasBin: true - dependencies: - chokidar: 3.5.3 - debug: 4.3.4(supports-color@5.5.0) - ignore-by-default: 1.0.1 - minimatch: 3.1.2 - pstree.remy: 1.1.8 - semver: 7.5.4 - simple-update-notifier: 2.0.0 - supports-color: 5.5.0 - touch: 3.1.0 - undefsafe: 2.0.5 - dev: true - - /nopt@1.0.10: - resolution: {integrity: sha512-NWmpvLSqUrgrAC9HCuxEvb+PSloHpqVu+FqcO4eeF2h5qYRhA7ev6KvelyQAKtegUbC6RypJnlEOhd8vloNKYg==} - hasBin: true dependencies: - abbrev: 1.1.1 + assert: 2.1.0 + browser-resolve: 2.0.0 + browserify-zlib: 0.2.0 + buffer: 5.7.1 + console-browserify: 1.2.0 + constants-browserify: 1.0.0 + create-require: 1.1.1 + crypto-browserify: 3.12.0 + domain-browser: 4.23.0 + events: 3.3.0 + https-browserify: 1.0.0 + isomorphic-timers-promises: 1.0.1 + os-browserify: 0.3.0 + path-browserify: 1.0.1 + pkg-dir: 5.0.0 + process: 0.11.10 + punycode: 1.4.1 + querystring-es3: 0.2.1 + readable-stream: 3.6.2 + stream-browserify: 3.0.0 + stream-http: 3.2.0 + string_decoder: 1.3.0 + timers-browserify: 2.0.12 + tty-browserify: 0.0.1 + url: 0.11.3 + util: 0.12.5 + vm-browserify: 1.1.2 dev: true /nopt@5.0.0: resolution: {integrity: sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==} engines: {node: '>=6'} hasBin: true + requiresBuild: true dependencies: abbrev: 1.1.1 dev: false + optional: true /normalize-package-data@2.5.0: resolution: {integrity: sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==} @@ -9708,7 +9956,7 @@ packages: dependencies: hosted-git-info: 4.1.0 is-core-module: 2.13.1 - semver: 7.5.4 + semver: 7.6.0 validate-npm-package-license: 3.0.4 dev: true @@ -9729,21 +9977,19 @@ packages: react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 dependencies: clsx: 1.2.1 - goober: 2.1.13(csstype@3.1.3) + goober: 2.1.14(csstype@3.1.3) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) transitivePeerDependencies: - csstype dev: false - /npmlog@5.0.1: - resolution: {integrity: sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==} + /npm-run-path@4.0.1: + resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==} + engines: {node: '>=8'} 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 + path-key: 3.1.1 + dev: true /npmlog@6.0.2: resolution: {integrity: sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==} @@ -9760,7 +10006,7 @@ packages: /number-allocator@1.0.14: resolution: {integrity: sha512-OrL44UTVAvkKdOdRQZIJpLkAdjXGTRda052sN4sO77bKEzYYqWKMBjQvrJFzqygI99gL6Z4u2xctPW1tB8ErvA==} dependencies: - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4(supports-color@8.1.1) js-sdsl: 4.3.0 transitivePeerDependencies: - supports-color @@ -9787,7 +10033,7 @@ packages: istanbul-lib-processinfo: 2.0.3 istanbul-lib-report: 3.0.1 istanbul-lib-source-maps: 4.0.1 - istanbul-reports: 3.1.6 + istanbul-reports: 3.1.7 make-dir: 3.1.0 node-preload: 0.2.1 p-map: 3.0.0 @@ -9809,6 +10055,14 @@ packages: /object-inspect@1.13.1: resolution: {integrity: sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==} + /object-is@1.1.6: + resolution: {integrity: sha512-F8cZ+KfGlSGi09lJT7/Nd6KJZ9ygtvYC0/UYYLI9nmQKLMnydpB9yvbv9K1uSkEu7FU9vYPmVwLg328tX+ot3Q==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.7 + define-properties: 1.2.1 + dev: true + /object-keys@1.1.1: resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} engines: {node: '>= 0.4'} @@ -9818,7 +10072,7 @@ packages: resolution: {integrity: sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==} engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.5 + call-bind: 1.0.7 define-properties: 1.2.1 has-symbols: 1.0.3 object-keys: 1.1.1 @@ -9828,43 +10082,37 @@ packages: resolution: {integrity: sha512-jCBs/0plmPsOnrKAfFQXRG2NFjlhZgjjcBLSmTnEhU8U6vVTsVe8ANeQJCHTl3gSsI4J+0emOoCgoKlmQPMgmA==} engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.5 + call-bind: 1.0.7 define-properties: 1.2.1 - es-abstract: 1.22.3 + es-abstract: 1.22.4 dev: true /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 - - /object.groupby@1.0.1: - resolution: {integrity: sha512-HqaQtqLnp/8Bn4GL16cj+CUYbnpe1bh0TtEaWvybszDG4tgxCJuRpV8VGuvNaI1fAnI4lUJzDG55MXcOH4JZcQ==} - dependencies: - call-bind: 1.0.5 + call-bind: 1.0.7 define-properties: 1.2.1 - es-abstract: 1.22.3 - get-intrinsic: 1.2.2 + es-abstract: 1.22.4 dev: true - /object.hasown@1.1.3: - resolution: {integrity: sha512-fFI4VcYpRHvSLXxP7yiZOMAd331cPfd2p7PFDVbgUsYOfCT3tICVqXWngbjr4m49OvsBwUBQ6O2uQoJvy3RexA==} + /object.groupby@1.0.2: + resolution: {integrity: sha512-bzBq58S+x+uo0VjurFT0UktpKHOZmv4/xePiOA1nbB9pMqpGK7rUPNgf+1YC+7mE+0HzhTMqNUuCqvKhj6FnBw==} dependencies: + array.prototype.filter: 1.0.3 + call-bind: 1.0.7 define-properties: 1.2.1 - es-abstract: 1.22.3 + es-abstract: 1.22.4 + es-errors: 1.3.0 dev: true /object.values@1.1.7: resolution: {integrity: sha512-aU6xnDFYT3x17e/f0IiiwlGPTy2jzMySGfUB4fq6z7CV8l85CWHDk5ErhyhpfDHhrOMwGFhSQkhMGHaIotA6Ng==} engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.5 + call-bind: 1.0.7 define-properties: 1.2.1 - es-abstract: 1.22.3 + es-abstract: 1.22.4 dev: true /on-finished@2.4.1: @@ -9890,6 +10138,13 @@ packages: fn.name: 1.1.0 dev: true + /onetime@5.1.2: + resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==} + engines: {node: '>=6'} + dependencies: + mimic-fn: 2.1.0 + dev: true + /open@8.4.2: resolution: {integrity: sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==} engines: {node: '>=12'} @@ -9916,6 +10171,10 @@ packages: type-check: 0.4.0 dev: true + /os-browserify@0.3.0: + resolution: {integrity: sha512-gjcpUc3clBf9+210TRaDWbf+rZZZEshZ+DlXMRCeAjp0xhTrnQsKHypIy1J3d5hKdUzj69t708EHtU8P6bUn0A==} + dev: true + /p-limit@1.3.0: resolution: {integrity: sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==} engines: {node: '>=4'} @@ -10001,12 +10260,26 @@ packages: release-zalgo: 1.0.0 dev: true + /pako@1.0.11: + resolution: {integrity: sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==} + dev: true + /parent-module@1.0.1: resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} engines: {node: '>=6'} dependencies: callsites: 3.1.0 + /parse-asn1@5.1.6: + resolution: {integrity: sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==} + dependencies: + asn1.js: 5.4.1 + browserify-aes: 1.2.0 + evp_bytestokey: 1.0.3 + pbkdf2: 3.1.2 + safe-buffer: 5.2.1 + dev: true + /parse-json@4.0.0: resolution: {integrity: sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==} engines: {node: '>=4'} @@ -10029,6 +10302,10 @@ packages: engines: {node: '>= 0.8'} dev: false + /path-browserify@1.0.1: + resolution: {integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==} + dev: true + /path-exists@3.0.0: resolution: {integrity: sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==} engines: {node: '>=4'} @@ -10054,18 +10331,16 @@ packages: resolution: {integrity: sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==} engines: {node: '>=16 || 14 >=14.17'} dependencies: - lru-cache: 10.1.0 + lru-cache: 10.2.0 minipass: 7.0.4 - dev: false + dev: true /path-to-regexp@0.1.7: resolution: {integrity: sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==} dev: false - /path-to-regexp@1.8.0: - resolution: {integrity: sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==} - dependencies: - isarray: 0.0.1 + /path-to-regexp@6.2.1: + resolution: {integrity: sha512-JLyh7xT1kizaEvcaXOQwOc2/Yhw6KZOvPf1S8401UyLk86CU79LN3vl7ztXGm/pZ+YjoyAJ4rxmHwbkBXJX+yw==} dev: true /path-type@3.0.0: @@ -10083,6 +10358,17 @@ packages: resolution: {integrity: sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==} dev: true + /pbkdf2@3.1.2: + resolution: {integrity: sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==} + engines: {node: '>=0.12'} + dependencies: + create-hash: 1.2.0 + create-hmac: 1.1.7 + ripemd160: 2.0.2 + safe-buffer: 5.2.1 + sha.js: 2.4.11 + dev: true + /pg-connection-string@2.6.2: resolution: {integrity: sha512-ch6OwaeaPYcova4kKZ15sbJ2hKb/VP48ZD2gE7i1J+L4MspCtBMAx8nMgz7bksc7IojCIIWuEhHibSMFH8m8oA==} dev: false @@ -10106,6 +10392,11 @@ packages: engines: {node: '>=4'} dev: true + /pirates@4.0.6: + resolution: {integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==} + engines: {node: '>= 6'} + dev: true + /pkg-dir@4.2.0: resolution: {integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==} engines: {node: '>=8'} @@ -10113,6 +10404,13 @@ packages: find-up: 4.1.0 dev: true + /pkg-dir@5.0.0: + resolution: {integrity: sha512-NPE8TDbzl/3YQYY7CSS228s3g2ollTFnc+Qi3tqmqJp9Vg2ovUpixcJEo2HJScN2Ez+kEaal6y70c0ehqJBJeA==} + engines: {node: '>=10'} + dependencies: + find-up: 5.0.0 + dev: true + /pony-cause@2.1.10: resolution: {integrity: sha512-3IKLNXclQgkU++2fSi93sQ6BznFuxSLB11HdvZQ6JW/spahf/P1pAHBQEahr20rs0htZW0UDkM1HmA+nZkXKsw==} engines: {node: '>=12.0.0'} @@ -10129,8 +10427,46 @@ packages: - supports-color dev: false - /postcss@8.4.33: - resolution: {integrity: sha512-Kkpbhhdjw2qQs2O2DGX+8m5OVqEcbB9HRBvuYM9pgrjEFUg30A9LmXNlTAUj4S9kgtGyrMbTzVjH7E+s5Re2yg==} + /possible-typed-array-names@1.0.0: + resolution: {integrity: sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==} + engines: {node: '>= 0.4'} + dev: true + + /postcss-load-config@4.0.2: + resolution: {integrity: sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==} + engines: {node: '>= 14'} + peerDependencies: + postcss: '>=8.0.9' + ts-node: '>=9.0.0' + peerDependenciesMeta: + postcss: + optional: true + ts-node: + optional: true + dependencies: + lilconfig: 3.1.1 + yaml: 2.4.0 + dev: true + + /postcss-load-config@4.0.2(ts-node@10.9.2): + resolution: {integrity: sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==} + engines: {node: '>= 14'} + peerDependencies: + postcss: '>=8.0.9' + ts-node: '>=9.0.0' + peerDependenciesMeta: + postcss: + optional: true + ts-node: + optional: true + dependencies: + lilconfig: 3.1.1 + ts-node: 10.9.2(@types/node@20.11.22)(typescript@5.3.3) + yaml: 2.4.0 + dev: true + + /postcss@8.4.35: + resolution: {integrity: sha512-u5U8qYpBCpN13BsiEB0CbR1Hhh4Gc0zLFuedrHJKMctHCHAGrMdG0PRM/KErzAL3CU6/eckEtmHNB3x6e3c0vA==} engines: {node: ^10 || ^12 || >=14} dependencies: nanoid: 3.3.7 @@ -10149,7 +10485,7 @@ packages: minimist: 1.2.8 mkdirp-classic: 0.5.3 napi-build-utils: 1.0.2 - node-abi: 3.54.0 + node-abi: 3.56.0 pump: 3.0.0 rc: 1.2.8 simple-get: 4.0.1 @@ -10175,8 +10511,8 @@ packages: hasBin: true dev: true - /prettier@3.1.1: - resolution: {integrity: sha512-22UbSzg8luF4UuZtzgiUOfcGM8s4tjBv6dJRT7j275NXsy2jb4aJa4NNveul5x4eqlF1wuhuR2RElK71RvmVaw==} + /prettier@3.2.5: + resolution: {integrity: sha512-3/GWa9aOC0YeD7LUfvOG2NiDyhOWRvt1k+rcKhOuYnMY24iiCphgneUfJDyFXd6rZCAnuLBv6UeAULtrhT/F4A==} engines: {node: '>=14'} hasBin: true dev: true @@ -10239,6 +10575,7 @@ packages: loose-envify: 1.4.0 object-assign: 4.1.1 react-is: 16.13.1 + dev: false /proxy-addr@2.0.7: resolution: {integrity: sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==} @@ -10252,8 +10589,15 @@ packages: resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==} dev: false - /pstree.remy@1.1.8: - resolution: {integrity: sha512-77DZwxQmxKnu3aR542U+X8FypNzbfJ+C5XQDk3uWjWxn6151aIMGthWYRXTqT1E5oJvg+ljaa2OJi+VfvCOQ8w==} + /public-encrypt@4.0.3: + resolution: {integrity: sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==} + dependencies: + bn.js: 4.12.0 + browserify-rsa: 4.1.0 + create-hash: 1.2.0 + parse-asn1: 5.1.6 + randombytes: 2.1.0 + safe-buffer: 5.2.1 dev: true /pump@3.0.0: @@ -10261,7 +10605,10 @@ packages: dependencies: end-of-stream: 1.4.4 once: 1.4.0 - dev: false + + /punycode@1.4.1: + resolution: {integrity: sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==} + dev: true /punycode@2.3.1: resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} @@ -10281,14 +10628,19 @@ packages: resolution: {integrity: sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==} engines: {node: '>=0.6'} dependencies: - side-channel: 1.0.4 + side-channel: 1.0.5 dev: false /qs@6.11.2: resolution: {integrity: sha512-tDNIz22aBzCDxLtVH++VnTfzxlfeK5CbqohpSqpJgj1Wg/cQbStNAz3NuqCs5vV+pjBsK4x4pN9HlVh7rcYRiA==} engines: {node: '>=0.6'} dependencies: - side-channel: 1.0.4 + side-channel: 1.0.5 + + /querystring-es3@0.2.1: + resolution: {integrity: sha512-773xhDQnZBMFobEiztv8LIl70ch5MSF/jUQVlhwFyBILqq96anmoctVIYz+ZRp0qbCKATTn6ev02M3r7Ga5vqA==} + engines: {node: '>=0.4.x'} + dev: true /queue-microtask@1.2.3: resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} @@ -10305,6 +10657,13 @@ packages: safe-buffer: 5.2.1 dev: true + /randomfill@1.0.4: + resolution: {integrity: sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==} + dependencies: + randombytes: 2.1.0 + safe-buffer: 5.2.1 + dev: true + /range-parser@1.2.1: resolution: {integrity: sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==} engines: {node: '>= 0.6'} @@ -10340,8 +10699,8 @@ packages: scheduler: 0.23.0 dev: false - /react-i18next@14.0.0(i18next@23.7.16)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-OCrS8rHNAmnr8ggGRDxjakzihrMW7HCbsplduTm3EuuQ6fyvWGT41ksZpqbduYoqJurBmEsEVZ1pILSUWkHZng==} + /react-i18next@14.0.5(i18next@23.10.0)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-5+bQSeEtgJrMBABBL5lO7jPdSNAbeAZ+MlFWDw//7FnVacuVu3l9EeWFzBQvZsKy+cihkbThWOAThEdH8YjGEw==} peerDependencies: i18next: '>= 23.2.3' react: '>= 16.8.0' @@ -10353,15 +10712,16 @@ packages: react-native: optional: true dependencies: - '@babel/runtime': 7.23.7 + '@babel/runtime': 7.24.0 html-parse-stringify: 3.0.1 - i18next: 23.7.16 + i18next: 23.10.0 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) dev: false /react-is@16.13.1: resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} + dev: false /react-is@18.2.0: resolution: {integrity: sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==} @@ -10385,26 +10745,26 @@ packages: engines: {node: '>=0.10.0'} dev: true - /react-router-dom@6.21.1(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-QCNrtjtDPwHDO+AO21MJd7yIcr41UetYt5jzaB9Y1UYaPTCnVuJq6S748g1dE11OQlCFIQg+RtAA1SEZIyiBeA==} + /react-router-dom@6.22.2(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-WgqxD2qySEIBPZ3w0sHH+PUAiamDeszls9tzqMPBDA1YYVucTBXLU7+gtRfcSnhe92A3glPnvSxK2dhNoAVOIQ==} engines: {node: '>=14.0.0'} peerDependencies: react: '>=16.8' react-dom: '>=16.8' dependencies: - '@remix-run/router': 1.14.1 + '@remix-run/router': 1.15.2 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) - react-router: 6.21.1(react@18.2.0) + react-router: 6.22.2(react@18.2.0) dev: false - /react-router@6.21.1(react@18.2.0): - resolution: {integrity: sha512-W0l13YlMTm1YrpVIOpjCADJqEUpz1vm+CMo47RuFX4Ftegwm6KOYsL5G3eiE52jnJpKvzm6uB/vTKTPKM8dmkA==} + /react-router@6.22.2(react@18.2.0): + resolution: {integrity: sha512-YD3Dzprzpcq+tBMHBS822tCjnWD3iIZbTeSXMY9LPSG541EfoBGyZ3bS25KEnaZjLcmQpw2AVLkFyfgXY8uvcw==} engines: {node: '>=14.0.0'} peerDependencies: react: '>=16.8' dependencies: - '@remix-run/router': 1.14.1 + '@remix-run/router': 1.15.2 react: 18.2.0 dev: false @@ -10414,7 +10774,7 @@ packages: react: '>=16.6.0' react-dom: '>=16.6.0' dependencies: - '@babel/runtime': 7.23.7 + '@babel/runtime': 7.24.0 dom-helpers: 5.2.1 loose-envify: 1.4.0 prop-types: 15.8.1 @@ -10525,14 +10885,15 @@ packages: resolution: {integrity: sha512-i5lLI6iw9AU3Uu4szRNPPEkomnkjRTaVt9hy/bn5g/oSzekBSMeLZblcjP74AW0vBabqERLLIrz+gR8QYR54Tw==} dev: false - /reflect.getprototypeof@1.0.4: - resolution: {integrity: sha512-ECkTw8TmJwW60lOTR+ZkODISW6RQ8+2CL3COqtiJKLd6MmB45hN51HprHFziKLGkAuTGQhBb91V8cy+KHlaCjw==} + /reflect.getprototypeof@1.0.5: + resolution: {integrity: sha512-62wgfC8dJWrmxv44CA36pLDnP6KKl3Vhxb7PL+8+qrrFMMoJij4vgiMP8zV4O8+CBMXY1mHxI5fITGHXFHVmQQ==} engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.5 + call-bind: 1.0.7 define-properties: 1.2.1 - es-abstract: 1.22.3 - get-intrinsic: 1.2.2 + es-abstract: 1.22.4 + es-errors: 1.3.0 + get-intrinsic: 1.2.4 globalthis: 1.0.3 which-builtin-type: 1.1.3 dev: true @@ -10554,16 +10915,17 @@ packages: /regenerator-transform@0.15.2: resolution: {integrity: sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==} dependencies: - '@babel/runtime': 7.23.7 + '@babel/runtime': 7.24.0 dev: true - /regexp.prototype.flags@1.5.1: - resolution: {integrity: sha512-sy6TXMN+hnP/wMy+ISxg3krXx7BAtWVO4UouuCN/ziM9UEne0euamVNafDfvC83bRNr95y0V5iijeDQFUNpvrg==} + /regexp.prototype.flags@1.5.2: + resolution: {integrity: sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw==} engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.5 + call-bind: 1.0.7 define-properties: 1.2.1 - set-function-name: 2.0.1 + es-errors: 1.3.0 + set-function-name: 2.0.2 dev: true /regexpp@3.2.0: @@ -10647,15 +11009,6 @@ packages: path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 - /resolve@2.0.0-next.5: - resolution: {integrity: sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==} - hasBin: true - dependencies: - is-core-module: 2.13.1 - path-parse: 1.0.7 - supports-preserve-symlinks-flag: 1.0.0 - dev: true - /retimer@3.0.0: resolution: {integrity: sha512-WKE0j11Pa0ZJI5YIk0nflGI7SQsfl2ljihVy7ogh7DeQSeYAUi0ubZ/yEueGtDfUPk6GH5LRw1hBdLq4IwUBWA==} dev: true @@ -10676,8 +11029,8 @@ packages: engines: {iojs: '>=1.0.0', node: '>=0.10.0'} dev: true - /rfdc@1.3.0: - resolution: {integrity: sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==} + /rfdc@1.3.1: + resolution: {integrity: sha512-r5a3l5HzYlIC68TpmYKlxWjmOP6wiPJ1vWv2HeLhNsRZMrCkxeqxiHlQ21oXmQ4F3SiryXBHhAD7JZqvOJjFmg==} dev: false /rimraf@3.0.2: @@ -10686,6 +11039,13 @@ packages: dependencies: glob: 7.2.3 + /ripemd160@2.0.2: + resolution: {integrity: sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==} + dependencies: + hash-base: 3.1.0 + inherits: 2.0.4 + dev: true + /robust-predicates@3.0.2: resolution: {integrity: sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==} dev: false @@ -10710,7 +11070,7 @@ packages: jest-worker: 26.6.2 rollup: 2.79.1 serialize-javascript: 4.0.0 - terser: 5.26.0 + terser: 5.28.1 dev: true /rollup-plugin-visualizer@5.12.0(rollup@2.79.1): @@ -10738,26 +11098,26 @@ packages: fsevents: 2.3.3 dev: true - /rollup@4.9.4: - resolution: {integrity: sha512-2ztU7pY/lrQyXSCnnoU4ICjT/tCG9cdH3/G25ERqE3Lst6vl2BCM5hL2Nw+sslAvAf+ccKsAq1SkKQALyqhR7g==} + /rollup@4.12.0: + resolution: {integrity: sha512-wz66wn4t1OHIJw3+XU7mJJQV/2NAfw5OAk6G6Hoo3zcvz/XOfQ52Vgi+AN4Uxoxi0KBBwk2g8zPrTDA4btSB/Q==} engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true dependencies: '@types/estree': 1.0.5 optionalDependencies: - '@rollup/rollup-android-arm-eabi': 4.9.4 - '@rollup/rollup-android-arm64': 4.9.4 - '@rollup/rollup-darwin-arm64': 4.9.4 - '@rollup/rollup-darwin-x64': 4.9.4 - '@rollup/rollup-linux-arm-gnueabihf': 4.9.4 - '@rollup/rollup-linux-arm64-gnu': 4.9.4 - '@rollup/rollup-linux-arm64-musl': 4.9.4 - '@rollup/rollup-linux-riscv64-gnu': 4.9.4 - '@rollup/rollup-linux-x64-gnu': 4.9.4 - '@rollup/rollup-linux-x64-musl': 4.9.4 - '@rollup/rollup-win32-arm64-msvc': 4.9.4 - '@rollup/rollup-win32-ia32-msvc': 4.9.4 - '@rollup/rollup-win32-x64-msvc': 4.9.4 + '@rollup/rollup-android-arm-eabi': 4.12.0 + '@rollup/rollup-android-arm64': 4.12.0 + '@rollup/rollup-darwin-arm64': 4.12.0 + '@rollup/rollup-darwin-x64': 4.12.0 + '@rollup/rollup-linux-arm-gnueabihf': 4.12.0 + '@rollup/rollup-linux-arm64-gnu': 4.12.0 + '@rollup/rollup-linux-arm64-musl': 4.12.0 + '@rollup/rollup-linux-riscv64-gnu': 4.12.0 + '@rollup/rollup-linux-x64-gnu': 4.12.0 + '@rollup/rollup-linux-x64-musl': 4.12.0 + '@rollup/rollup-win32-arm64-msvc': 4.12.0 + '@rollup/rollup-win32-ia32-msvc': 4.12.0 + '@rollup/rollup-win32-x64-msvc': 4.12.0 fsevents: 2.3.3 dev: true @@ -10767,12 +11127,12 @@ packages: queue-microtask: 1.2.3 dev: true - /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.5 - get-intrinsic: 1.2.2 + call-bind: 1.0.7 + get-intrinsic: 1.2.4 has-symbols: 1.0.3 isarray: 2.0.5 dev: true @@ -10783,11 +11143,12 @@ packages: /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.3: + resolution: {integrity: sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==} + engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.5 - get-intrinsic: 1.2.2 + call-bind: 1.0.7 + es-errors: 1.3.0 is-regex: 1.1.4 dev: true @@ -10817,6 +11178,7 @@ packages: /semver@6.3.1: resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} hasBin: true + dev: true /semver@7.5.4: resolution: {integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==} @@ -10824,6 +11186,14 @@ packages: hasBin: true dependencies: lru-cache: 6.0.0 + dev: false + + /semver@7.6.0: + resolution: {integrity: sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==} + engines: {node: '>=10'} + hasBin: true + dependencies: + lru-cache: 6.0.0 /send@0.18.0: resolution: {integrity: sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==} @@ -10851,7 +11221,7 @@ packages: engines: {node: '>= 10.0.0'} dev: false - /sequelize-typescript@2.1.6(@types/node@20.10.7)(@types/validator@13.11.7)(reflect-metadata@0.2.1)(sequelize@6.35.2): + /sequelize-typescript@2.1.6(@types/node@20.11.22)(@types/validator@13.11.9)(reflect-metadata@0.2.1)(sequelize@6.37.1): resolution: {integrity: sha512-Vc2N++3en346RsbGjL3h7tgAl2Y7V+2liYTAOZ8XL0KTw3ahFHsyAUzOwct51n+g70I1TOUDgs06Oh6+XGcFkQ==} engines: {node: '>=10.0.0'} peerDependencies: @@ -10860,15 +11230,15 @@ packages: reflect-metadata: '*' sequelize: '>=6.20.1' dependencies: - '@types/node': 20.10.7 - '@types/validator': 13.11.7 + '@types/node': 20.11.22 + '@types/validator': 13.11.9 glob: 7.2.0 reflect-metadata: 0.2.1 - sequelize: 6.35.2(sqlite3@5.1.7) + sequelize: 6.37.1(sqlite3@5.1.7) dev: false - /sequelize@6.35.2(sqlite3@5.1.7): - resolution: {integrity: sha512-EdzLaw2kK4/aOnWQ7ed/qh3B6/g+1DvmeXr66RwbcqSm/+QRS9X0LDI5INBibsy4eNJHWIRPo3+QK0zL+IPBHg==} + /sequelize@6.37.1(sqlite3@5.1.7): + resolution: {integrity: sha512-vIKKzQ9dGp2aBOxQRD1FmUYViuQiKXSJ8yah8TsaBx4U3BokJt+Y2A0qz2C4pj08uX59qpWxRqSLEfRmVOEgQw==} engines: {node: '>=10.0.0'} peerDependencies: ibm_db: '*' @@ -10901,16 +11271,16 @@ packages: optional: true dependencies: '@types/debug': 4.1.12 - '@types/validator': 13.11.7 - debug: 4.3.4(supports-color@5.5.0) + '@types/validator': 13.11.9 + debug: 4.3.4(supports-color@8.1.1) dottie: 2.0.6 inflection: 1.13.4 lodash: 4.17.21 moment: 2.30.1 - moment-timezone: 0.5.44 + moment-timezone: 0.5.45 pg-connection-string: 2.6.2 retry-as-promised: 7.0.4 - semver: 7.5.4 + semver: 7.6.0 sequelize-pool: 7.1.0 sqlite3: 5.1.7(bluebird@3.7.2) toposort-class: 1.0.1 @@ -10948,28 +11318,43 @@ packages: /set-blocking@2.0.0: resolution: {integrity: sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==} - /set-function-length@1.1.1: - resolution: {integrity: sha512-VoaqjbBJKiWtg4yRcKBQ7g7wnGnLV3M8oLvVWwOk2PdYY6PEFegR1vezXR0tw6fZGF9csVakIRjrJiy2veSBFQ==} + /set-function-length@1.2.1: + resolution: {integrity: sha512-j4t6ccc+VsKwYHso+kElc5neZpjtq9EnRICFZtWyBsLojhmeF/ZBd/elqm22WJh/BziDe/SBiOeAt0m2mfLD0g==} engines: {node: '>= 0.4'} dependencies: - define-data-property: 1.1.1 - get-intrinsic: 1.2.2 + define-data-property: 1.1.4 + es-errors: 1.3.0 + function-bind: 1.1.2 + get-intrinsic: 1.2.4 gopd: 1.0.1 - has-property-descriptors: 1.0.1 + has-property-descriptors: 1.0.2 - /set-function-name@2.0.1: - resolution: {integrity: sha512-tMNCiqYVkXIZgc2Hnoy2IvC/f8ezc5koaRFkCjrpWzGpCd3qbZXPzVy9MAZzK1ch/X0jvSkojys3oqJN0qCmdA==} + /set-function-name@2.0.2: + resolution: {integrity: sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==} engines: {node: '>= 0.4'} dependencies: - define-data-property: 1.1.1 + define-data-property: 1.1.4 + es-errors: 1.3.0 functions-have-names: 1.2.3 - has-property-descriptors: 1.0.1 + has-property-descriptors: 1.0.2 + dev: true + + /setimmediate@1.0.5: + resolution: {integrity: sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==} dev: true /setprototypeof@1.2.0: resolution: {integrity: sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==} dev: false + /sha.js@2.4.11: + resolution: {integrity: sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==} + hasBin: true + dependencies: + inherits: 2.0.4 + safe-buffer: 5.2.1 + dev: true + /shebang-command@2.0.0: resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} engines: {node: '>=8'} @@ -10984,16 +11369,18 @@ packages: resolution: {integrity: sha512-dNPAPrxSc87ua2sKJ3H5dQ/6ZaY8RNnaAqK+t0eG7p0Soi2ydiqbGOTaZCqaYvA/uZYfS1LJnemt3Q+mSfcPCg==} dependencies: ansi-sequence-parser: 1.1.1 - jsonc-parser: 3.2.0 + jsonc-parser: 3.2.1 vscode-oniguruma: 1.7.0 vscode-textmate: 8.0.0 dev: true - /side-channel@1.0.4: - resolution: {integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==} + /side-channel@1.0.5: + resolution: {integrity: sha512-QcgiIWV4WV7qWExbN5llt6frQB/lBven9pqliLXfGPB+K9ZYXxDozp0wLkHS24kWCm+6YXH/f0HhnObZnZOBnQ==} + engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.5 - get-intrinsic: 1.2.2 + call-bind: 1.0.7 + es-errors: 1.3.0 + get-intrinsic: 1.2.4 object-inspect: 1.13.1 /signal-exit@3.0.7: @@ -11002,7 +11389,7 @@ packages: /signal-exit@4.1.0: resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} engines: {node: '>=14'} - dev: false + dev: true /simple-concat@1.0.1: resolution: {integrity: sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==} @@ -11022,21 +11409,14 @@ packages: is-arrayish: 0.3.2 dev: true - /simple-update-notifier@2.0.0: - resolution: {integrity: sha512-a2B9Y0KlNXl9u/vsW6sTIu9vGEpfKu2wRV6l1H3XEas/0gUIzGzBoP/IouTcUQbm9JWZLH3COxyn03TYlFax6w==} - engines: {node: '>=10'} - dependencies: - semver: 7.5.4 - dev: true - /sinon@17.0.1: resolution: {integrity: sha512-wmwE19Lie0MLT+ZYNpDymasPHUKTaZHUH/pKEubRXIzySv9Atnlw+BUMGCzWgV7b7wO+Hw6f1TEOr0IUnmU8/g==} dependencies: - '@sinonjs/commons': 3.0.0 + '@sinonjs/commons': 3.0.1 '@sinonjs/fake-timers': 11.2.2 '@sinonjs/samsam': 8.0.0 - diff: 5.1.0 - nise: 5.1.5 + diff: 5.2.0 + nise: 5.1.9 supports-color: 7.2.0 dev: true @@ -11063,18 +11443,18 @@ packages: requiresBuild: true dependencies: agent-base: 6.0.2 - debug: 4.3.4(supports-color@5.5.0) - socks: 2.7.1 + debug: 4.3.4(supports-color@8.1.1) + socks: 2.8.1 transitivePeerDependencies: - supports-color dev: false optional: true - /socks@2.7.1: - resolution: {integrity: sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ==} - engines: {node: '>= 10.13.0', npm: '>= 3.0.0'} + /socks@2.8.1: + resolution: {integrity: sha512-B6w7tkwNid7ToxjZ08rQMT8M9BJAf8DKx8Ft4NivzH0zBUfd6jldGcisJn/RLgxcX3FPNDdNQCUEMMT79b+oCQ==} + engines: {node: '>= 10.0.0', npm: '>= 3.0.0'} dependencies: - ip: 2.0.0 + ip-address: 9.0.5 smart-buffer: 4.2.0 dev: false @@ -11145,27 +11525,26 @@ packages: resolution: {integrity: sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==} dependencies: spdx-expression-parse: 3.0.1 - spdx-license-ids: 3.0.16 + spdx-license-ids: 3.0.17 dev: true - /spdx-exceptions@2.3.0: - resolution: {integrity: sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==} + /spdx-exceptions@2.5.0: + resolution: {integrity: sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==} 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.16 + spdx-exceptions: 2.5.0 + spdx-license-ids: 3.0.17 dev: true - /spdx-license-ids@3.0.16: - resolution: {integrity: sha512-eWN+LnM3GR6gPu35WxNgbGl8rmY1AEmoMDvL/QD6zYmPWgywxWqJWNdLGT+ke8dKNWrcYgYjPpG5gbTfghP8rw==} + /spdx-license-ids@3.0.17: + resolution: {integrity: sha512-sh8PWc/ftMqAAdFiBu6Fy6JUOYjqDJBJvIhpfDMyHrr0Rbp5liZqd4TjtQ/RgfLjKFZb+LMx5hpml5qOWy0qvg==} dev: true /split-ca@1.0.1: resolution: {integrity: sha512-Q5thBSxp5t8WPTTJQS59LrGqOZqOsrhDGDVm8azCqIBjSBd7nd9o2PM+mDulQQkh8h//4U6hFZnc/mul8t5pWQ==} - dev: false /split2@3.2.2: resolution: {integrity: sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg==} @@ -11187,6 +11566,10 @@ packages: /sprintf-js@1.0.3: resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==} + /sprintf-js@1.1.3: + resolution: {integrity: sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==} + dev: false + /sqlite3@5.1.7(bluebird@3.7.2): resolution: {integrity: sha512-GGIyOiFaG+TUra3JIfkI/zGP8yZYLPQ0pl1bH+ODjiX57sPhrLU5sQJn1y9bDKZUFYkX1crlrPfSYt0BKKdkog==} requiresBuild: true @@ -11195,7 +11578,7 @@ packages: optional: true dependencies: bindings: 1.5.0 - node-addon-api: 7.0.0 + node-addon-api: 7.1.0 prebuild-install: 7.1.1 tar: 6.2.0 optionalDependencies: @@ -11215,7 +11598,6 @@ packages: optionalDependencies: cpu-features: 0.0.9 nan: 2.18.0 - dev: false /ssri@8.0.1: resolution: {integrity: sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ==} @@ -11246,7 +11628,7 @@ packages: figures: 3.2.0 find-up: 5.0.0 git-semver-tags: 4.1.1 - semver: 7.5.4 + semver: 7.6.0 stringify-package: 1.0.1 yargs: 16.2.0 dev: true @@ -11256,6 +11638,22 @@ packages: engines: {node: '>= 0.8'} dev: false + /stream-browserify@3.0.0: + resolution: {integrity: sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==} + dependencies: + inherits: 2.0.4 + readable-stream: 3.6.2 + dev: true + + /stream-http@3.2.0: + resolution: {integrity: sha512-Oq1bLqisTyK3TSCXpPbT4sdeYNdmyZJv1LxpEm2vu1ZhK89kSE5YXwZc3cWk0MagGaKriBh9mCFbVGtO+vY29A==} + dependencies: + builtin-status-codes: 3.0.0 + inherits: 2.0.4 + readable-stream: 3.6.2 + xtend: 4.0.2 + dev: true + /stream-to-array@2.3.0: resolution: {integrity: sha512-UsZtOYEn4tWU2RGLOXr/o/xjRBftZRlG3dEWoaHr8j4GuypJ3isitGbVyjQKAuMu+xbiop8q224TjiZWc4XTZA==} dependencies: @@ -11291,45 +11689,45 @@ packages: eastasianwidth: 0.2.0 emoji-regex: 9.2.2 strip-ansi: 7.1.0 - dev: false + dev: true /string.prototype.matchall@4.0.10: resolution: {integrity: sha512-rGXbGmOEosIQi6Qva94HUjgPs9vKW+dkG7Y8Q5O2OYkWL6wFaTRZO8zM4mhP94uX55wgyrXzfS2aGtGzUL7EJQ==} dependencies: - call-bind: 1.0.5 + call-bind: 1.0.7 define-properties: 1.2.1 - es-abstract: 1.22.3 - get-intrinsic: 1.2.2 + es-abstract: 1.22.4 + get-intrinsic: 1.2.4 has-symbols: 1.0.3 - internal-slot: 1.0.6 - regexp.prototype.flags: 1.5.1 - set-function-name: 2.0.1 - side-channel: 1.0.4 + internal-slot: 1.0.7 + regexp.prototype.flags: 1.5.2 + set-function-name: 2.0.2 + side-channel: 1.0.5 dev: true /string.prototype.trim@1.2.8: resolution: {integrity: sha512-lfjY4HcixfQXOfaqCvcBuOIapyaroTXhbkfJN3gcB1OtyupngWK4sEET9Knd0cXd28kTUqu/kHoV4HKSJdnjiQ==} engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.5 + call-bind: 1.0.7 define-properties: 1.2.1 - es-abstract: 1.22.3 + es-abstract: 1.22.4 dev: true /string.prototype.trimend@1.0.7: resolution: {integrity: sha512-Ni79DqeB72ZFq1uH/L6zJ+DKZTkOtPIHovb3YZHQViE+HDouuU4mBrLOLDn5Dde3RF8qw5qVETEjhu9locMLvA==} dependencies: - call-bind: 1.0.5 + call-bind: 1.0.7 define-properties: 1.2.1 - es-abstract: 1.22.3 + es-abstract: 1.22.4 dev: true /string.prototype.trimstart@1.0.7: resolution: {integrity: sha512-NGhtDFu3jCEm7B4Fy0DpLewdJQOZcQ0rGbwQ/+stjnrp2i+rlKeCvos9hOIeCmqwratM47OBxY7uFZzjxHXmrg==} dependencies: - call-bind: 1.0.5 + call-bind: 1.0.7 define-properties: 1.2.1 - es-abstract: 1.22.3 + es-abstract: 1.22.4 dev: true /string_decoder@1.1.1: @@ -11368,7 +11766,7 @@ packages: engines: {node: '>=12'} dependencies: ansi-regex: 6.0.1 - dev: false + dev: true /strip-bom@3.0.0: resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==} @@ -11385,6 +11783,11 @@ packages: engines: {node: '>=10'} dev: true + /strip-final-newline@2.0.0: + resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==} + engines: {node: '>=6'} + dev: true + /strip-indent@3.0.0: resolution: {integrity: sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==} engines: {node: '>=8'} @@ -11412,26 +11815,40 @@ packages: resolution: {integrity: sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw==} dev: false + /sucrase@3.35.0: + resolution: {integrity: sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==} + engines: {node: '>=16 || 14 >=14.17'} + hasBin: true + dependencies: + '@jridgewell/gen-mapping': 0.3.4 + commander: 4.1.1 + glob: 10.3.10 + lines-and-columns: 1.2.4 + mz: 2.7.0 + pirates: 4.0.6 + ts-interface-checker: 0.1.13 + dev: true + /superagent@8.1.2: resolution: {integrity: sha512-6WTxW1EB6yCxV5VFOIPQruWGHqc3yI7hEmZK6h+pyk69Lk/Ut7rLUY6W/ONF2MjBuGjvmMiIpsrVJ2vjrHlslA==} engines: {node: '>=6.4.0 <13 || >=14'} dependencies: component-emitter: 1.3.1 cookiejar: 2.1.4 - debug: 4.3.4(supports-color@5.5.0) + debug: 4.3.4(supports-color@8.1.1) 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 + semver: 7.6.0 transitivePeerDependencies: - supports-color dev: true - /supertest@6.3.3: - resolution: {integrity: sha512-EMCG6G8gDu5qEqRQ3JjjPs6+FYT1a7Hv5ApHvtSghmOFJYtsU5S+pSb6Y2EUeCEY3CmEL3mmQ8YWlPOzQomabA==} + /supertest@6.3.4: + resolution: {integrity: sha512-erY3HFDG0dPnhw4U+udPfrzXa4xhSG+n4rxfRuZWCUvjFWwKl+OxWf/7zk50s84/fAAs7vf5QAb9uRa0cCykxw==} engines: {node: '>=6.4.0'} dependencies: methods: 1.1.2 @@ -11457,7 +11874,6 @@ packages: engines: {node: '>=10'} dependencies: has-flag: 4.0.0 - dev: true /supports-preserve-symlinks-flag@1.0.0: resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} @@ -11479,7 +11895,6 @@ packages: mkdirp-classic: 0.5.3 pump: 3.0.0 tar-stream: 2.2.0 - dev: false /tar-fs@2.1.1: resolution: {integrity: sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==} @@ -11499,7 +11914,6 @@ packages: 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==} @@ -11528,8 +11942,8 @@ packages: unique-string: 2.0.0 dev: true - /terser@5.26.0: - resolution: {integrity: sha512-dytTGoE2oHgbNV9nTzgBEPaqAWvcJNl66VZ0BkJqlvp71IjO8CxdBx/ykCNb47cLnCmCvRZ6ZR0tLkqvZCdVBQ==} + /terser@5.28.1: + resolution: {integrity: sha512-wM+bZp54v/E9eRRGXb5ZFDvinrJIOaTapx3WUokyVGZu5ucVCK55zEgGd5Dl2fSr3jUo5sDiERErUWLY6QPFyA==} engines: {node: '>=10'} hasBin: true dependencies: @@ -11561,6 +11975,19 @@ packages: resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} dev: true + /thenify-all@1.6.0: + resolution: {integrity: sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==} + engines: {node: '>=0.8'} + dependencies: + thenify: 3.3.1 + dev: true + + /thenify@3.3.1: + resolution: {integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==} + dependencies: + any-promise: 1.3.0 + dev: true + /through2@2.0.5: resolution: {integrity: sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==} dependencies: @@ -11578,6 +12005,13 @@ packages: resolution: {integrity: sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==} dev: true + /timers-browserify@2.0.12: + resolution: {integrity: sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ==} + engines: {node: '>=0.6.0'} + dependencies: + setimmediate: 1.0.5 + dev: true + /to-fast-properties@2.0.0: resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==} engines: {node: '>=4'} @@ -11598,17 +12032,6 @@ packages: resolution: {integrity: sha512-OsLcGGbYF3rMjPUf8oKktyvCiUxSbqMMS39m33MAjLTC1DVIH6x3WSt63/M77ihI09+Sdfk1AXvfhCEeUmC7mg==} dev: false - /touch@3.1.0: - resolution: {integrity: sha512-WBx8Uy5TLtOSRtIq+M03/sKDrXCLHxwDcquSP2c43Le03/9serjQBIztjRz6FkJez9D/hleyAXTBGLwwZUw9lA==} - hasBin: true - dependencies: - nopt: 1.0.10 - dev: true - - /tr46@0.0.3: - resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} - dev: false - /tr46@1.0.1: resolution: {integrity: sha512-dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA==} dependencies: @@ -11622,6 +12045,11 @@ packages: punycode: 2.3.1 dev: false + /tree-kill@1.2.2: + resolution: {integrity: sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==} + hasBin: true + dev: true + /trim-newlines@3.0.1: resolution: {integrity: sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==} engines: {node: '>=8'} @@ -11632,56 +12060,20 @@ packages: engines: {node: '>= 14.0.0'} dev: true - /ts-api-utils@1.0.3(typescript@5.1.6): - resolution: {integrity: sha512-wNMeqtMz5NtwpT/UZGY5alT+VoKdSsOOP/kqHFcUW1P/VRhH2wJ48+DN2WwUliNbQ976ETwDL0Ifd2VVvgonvg==} - engines: {node: '>=16.13.0'} - peerDependencies: - typescript: '>=4.2.0' - dependencies: - typescript: 5.1.6 - dev: true - - /ts-api-utils@1.0.3(typescript@5.3.3): - 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.3.3 dev: true - /ts-node@10.9.2(@types/node@20.10.6)(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 - '@tsconfig/node10': 1.0.9 - '@tsconfig/node12': 1.0.11 - '@tsconfig/node14': 1.0.3 - '@tsconfig/node16': 1.0.4 - '@types/node': 20.10.6 - acorn: 8.11.3 - acorn-walk: 8.3.1 - 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 + /ts-interface-checker@0.1.13: + resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==} dev: true - /ts-node@10.9.2(@types/node@20.10.7)(typescript@5.3.3): + /ts-node@10.9.2(@types/node@20.11.22)(typescript@5.3.3): resolution: {integrity: sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==} hasBin: true peerDependencies: @@ -11696,13 +12088,13 @@ packages: optional: true dependencies: '@cspotcode/source-map-support': 0.8.1 - '@tsconfig/node10': 1.0.9 + '@tsconfig/node10': 1.0.10 '@tsconfig/node12': 1.0.11 '@tsconfig/node14': 1.0.3 '@tsconfig/node16': 1.0.4 - '@types/node': 20.10.7 + '@types/node': 20.11.22 acorn: 8.11.3 - acorn-walk: 8.3.1 + acorn-walk: 8.3.2 arg: 4.1.3 create-require: 1.1.1 diff: 4.0.2 @@ -11726,7 +12118,84 @@ packages: /tslib@2.6.2: resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==} - requiresBuild: true + + /tsup@8.0.2(ts-node@10.9.2)(typescript@5.3.3): + resolution: {integrity: sha512-NY8xtQXdH7hDUAZwcQdY/Vzlw9johQsaqf7iwZ6g1DOUlFYQ5/AtVAjTvihhEyeRlGo4dLRVHtrRaL35M1daqQ==} + engines: {node: '>=18'} + hasBin: true + peerDependencies: + '@microsoft/api-extractor': ^7.36.0 + '@swc/core': ^1 + postcss: ^8.4.12 + typescript: '>=4.5.0' + peerDependenciesMeta: + '@microsoft/api-extractor': + optional: true + '@swc/core': + optional: true + postcss: + optional: true + typescript: + optional: true + dependencies: + bundle-require: 4.0.2(esbuild@0.19.12) + cac: 6.7.14 + chokidar: 3.6.0 + debug: 4.3.4(supports-color@5.5.0) + esbuild: 0.19.12 + execa: 5.1.1 + globby: 11.1.0 + joycon: 3.1.1 + postcss-load-config: 4.0.2(ts-node@10.9.2) + resolve-from: 5.0.0 + rollup: 4.12.0 + source-map: 0.8.0-beta.0 + sucrase: 3.35.0 + tree-kill: 1.2.2 + typescript: 5.3.3 + transitivePeerDependencies: + - supports-color + - ts-node + dev: true + + /tsup@8.0.2(typescript@5.3.3): + resolution: {integrity: sha512-NY8xtQXdH7hDUAZwcQdY/Vzlw9johQsaqf7iwZ6g1DOUlFYQ5/AtVAjTvihhEyeRlGo4dLRVHtrRaL35M1daqQ==} + engines: {node: '>=18'} + hasBin: true + peerDependencies: + '@microsoft/api-extractor': ^7.36.0 + '@swc/core': ^1 + postcss: ^8.4.12 + typescript: '>=4.5.0' + peerDependenciesMeta: + '@microsoft/api-extractor': + optional: true + '@swc/core': + optional: true + postcss: + optional: true + typescript: + optional: true + dependencies: + bundle-require: 4.0.2(esbuild@0.19.12) + cac: 6.7.14 + chokidar: 3.6.0 + debug: 4.3.4(supports-color@8.1.1) + esbuild: 0.19.12 + execa: 5.1.1 + globby: 11.1.0 + joycon: 3.1.1 + postcss-load-config: 4.0.2 + resolve-from: 5.0.0 + rollup: 4.12.0 + source-map: 0.8.0-beta.0 + sucrase: 3.35.0 + tree-kill: 1.2.2 + typescript: 5.3.3 + transitivePeerDependencies: + - supports-color + - ts-node + dev: true /tsutils@3.21.0(typescript@4.5.3): resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==} @@ -11738,15 +12207,89 @@ packages: typescript: 4.5.3 dev: true + /tsx@4.7.1: + resolution: {integrity: sha512-8d6VuibXHtlN5E3zFkgY8u4DX7Y3Z27zvvPKVmLon/D4AjuKzarkUBTLDBgj9iTQ0hg5xM7c/mYiRVM+HETf0g==} + engines: {node: '>=18.0.0'} + hasBin: true + dependencies: + esbuild: 0.19.12 + get-tsconfig: 4.7.2 + optionalDependencies: + fsevents: 2.3.3 + dev: true + + /tty-browserify@0.0.1: + resolution: {integrity: sha512-C3TaO7K81YvjCgQH9Q1S3R3P3BtN3RIM8n+OvX4il1K1zgE8ZhI0op7kClgkxtutIE8hQrcrHBXvIheqKUUCxw==} + dev: true + /tunnel-agent@0.6.0: resolution: {integrity: sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==} dependencies: safe-buffer: 5.2.1 dev: false + /turbo-darwin-64@1.12.4: + resolution: {integrity: sha512-dBwFxhp9isTa9RS/fz2gDVk5wWhKQsPQMozYhjM7TT4jTrnYn0ZJMzr7V3B/M/T8QF65TbniW7w1gtgxQgX5Zg==} + cpu: [x64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /turbo-darwin-arm64@1.12.4: + resolution: {integrity: sha512-1Uo5iI6xsJ1j9ObsqxYRsa3W26mEbUe6fnj4rQYV6kDaqYD54oAMJ6hM53q9rB8JvFxwdrUXGp3PwTw9A0qqkA==} + cpu: [arm64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /turbo-linux-64@1.12.4: + resolution: {integrity: sha512-ONg2aSqKP7LAQOg7ysmU5WpEQp4DGNxSlAiR7um+LKtbmC/UxogbR5+T+Uuq6zGuQ5kJyKjWJ4NhtvUswOqBsA==} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /turbo-linux-arm64@1.12.4: + resolution: {integrity: sha512-9FPufkwdgfIKg/9jj87Cdtftw8o36y27/S2vLN7FTR2pp9c0MQiTBOLVYadUr1FlShupddmaMbTkXEhyt9SdrA==} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /turbo-windows-64@1.12.4: + resolution: {integrity: sha512-2mOtxHW5Vjh/5rDVu/aFwsMzI+chs8XcEuJHlY1sYOpEymYTz+u6AXbnzRvwZFMrLKr7J7fQOGl+v96sLKbNdA==} + cpu: [x64] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /turbo-windows-arm64@1.12.4: + resolution: {integrity: sha512-nOY5wae9qnxPOpT1fRuYO0ks6dTwpKMPV6++VkDkamFDLFHUDVM/9kmD2UTeh1yyrKnrZksbb9zmShhmfj1wog==} + cpu: [arm64] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /turbo@1.12.4: + resolution: {integrity: sha512-yUJ7elEUSToiGwFZogXpYKJpQ0BvaMbkEuQECIWtkBLcmWzlMOt6bActsIm29oN83mRU0WbzGt4e8H1KHWedhg==} + hasBin: true + optionalDependencies: + turbo-darwin-64: 1.12.4 + turbo-darwin-arm64: 1.12.4 + turbo-linux-64: 1.12.4 + turbo-linux-arm64: 1.12.4 + turbo-windows-64: 1.12.4 + turbo-windows-arm64: 1.12.4 + dev: true + /tweetnacl@0.14.5: resolution: {integrity: sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==} - dev: false /type-check@0.4.0: resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} @@ -11785,9 +12328,9 @@ packages: engines: {node: '>=8'} dev: true - /type-fest@3.13.1: - resolution: {integrity: sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==} - engines: {node: '>=14.16'} + /type-fest@4.10.3: + resolution: {integrity: sha512-JLXyjizi072smKGGcZiAJDCNweT8J+AuRxmPZ1aG7TERg4ijx9REl8CNhbr36RV4qXqL1gO1FF9HL8OkVmmrsA==} + engines: {node: '>=16'} dev: false /type-is@1.6.18: @@ -11798,42 +12341,48 @@ packages: mime-types: 2.1.35 dev: false - /typed-array-buffer@1.0.0: - resolution: {integrity: sha512-Y8KTSIglk9OZEr8zywiIHG/kmQ7KWyjseXs1CbSo8vC42w7hg2HgYTxSWwP0+is7bWDc1H+Fo026CpHFwm8tkw==} + /typed-array-buffer@1.0.2: + resolution: {integrity: sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==} engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.5 - get-intrinsic: 1.2.2 - is-typed-array: 1.1.12 + call-bind: 1.0.7 + es-errors: 1.3.0 + is-typed-array: 1.1.13 dev: true - /typed-array-byte-length@1.0.0: - resolution: {integrity: sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA==} + /typed-array-byte-length@1.0.1: + resolution: {integrity: sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==} engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.5 + call-bind: 1.0.7 for-each: 0.3.3 - has-proto: 1.0.1 - is-typed-array: 1.1.12 + gopd: 1.0.1 + has-proto: 1.0.3 + is-typed-array: 1.1.13 dev: true - /typed-array-byte-offset@1.0.0: - resolution: {integrity: sha512-RD97prjEt9EL8YgAgpOkf3O4IF9lhJFr9g0htQkm0rchFp/Vx7LW5Q8fSXXub7BXAODyUQohRMyOc3faCPd0hg==} + /typed-array-byte-offset@1.0.2: + resolution: {integrity: sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA==} engines: {node: '>= 0.4'} dependencies: - available-typed-arrays: 1.0.5 - call-bind: 1.0.5 + available-typed-arrays: 1.0.7 + call-bind: 1.0.7 for-each: 0.3.3 - has-proto: 1.0.1 - is-typed-array: 1.1.12 + gopd: 1.0.1 + has-proto: 1.0.3 + is-typed-array: 1.1.13 dev: true - /typed-array-length@1.0.4: - resolution: {integrity: sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==} + /typed-array-length@1.0.5: + resolution: {integrity: sha512-yMi0PlwuznKHxKmcpoOdeLwxBoVPkqZxd7q2FgMkmD3bNwvF5VW0+UlUQ1k1vmktTu4Yu13Q0RIxEP8+B+wloA==} + engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.5 + call-bind: 1.0.7 for-each: 0.3.3 - is-typed-array: 1.1.12 + gopd: 1.0.1 + has-proto: 1.0.3 + is-typed-array: 1.1.13 + possible-typed-array-names: 1.0.0 dev: true /typedarray-to-buffer@3.1.5: @@ -11845,25 +12394,25 @@ packages: /typedarray@0.0.6: resolution: {integrity: sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==} - /typedoc-plugin-external-module-map@2.0.1(typedoc@0.25.6): + /typedoc-plugin-external-module-map@2.0.1(typedoc@0.25.9): resolution: {integrity: sha512-B8GC2SxQdTc7PR7etJ7Ahwv7OJNSB3/S8sfQ46nN8fOgcWw9CqTyl/542ZPemxO2UNRwKgV2vdxttbXV82NIpA==} peerDependencies: typedoc: '>=0.24 <2.0' dependencies: - typedoc: 0.25.6(typescript@5.3.3) + typedoc: 0.25.9(typescript@5.3.3) dev: true - /typedoc-plugin-markdown@3.17.1(typedoc@0.25.6): + /typedoc-plugin-markdown@3.17.1(typedoc@0.25.9): resolution: {integrity: sha512-QzdU3fj0Kzw2XSdoL15ExLASt2WPqD7FbLeaqwT70+XjKyTshBnUlQA5nNREO1C2P8Uen0CDjsBLMsCQ+zd0lw==} peerDependencies: typedoc: '>=0.24.0' dependencies: handlebars: 4.7.8 - typedoc: 0.25.6(typescript@5.3.3) + typedoc: 0.25.9(typescript@5.3.3) dev: true - /typedoc@0.25.6(typescript@5.3.3): - resolution: {integrity: sha512-1rdionQMpOkpA58qfym1J+YD+ukyA1IEIa4VZahQI2ZORez7dhOvEyUotQL/8rSoMBopdzOS+vAIsORpQO4cTA==} + /typedoc@0.25.9(typescript@5.3.3): + resolution: {integrity: sha512-jVoGmfNw848iW0L313+jqHbsknepwDV6F9nzk1H30oWhKXkw65uaENgR6QtTw9a5KqRWEb6nwNd54KxffBJyWw==} engines: {node: '>= 16'} hasBin: true peerDependencies: @@ -11882,11 +12431,6 @@ packages: hasBin: true dev: true - /typescript@5.1.6: - resolution: {integrity: sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA==} - engines: {node: '>=14.17'} - hasBin: true - /typescript@5.3.3: resolution: {integrity: sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==} engines: {node: '>=14.17'} @@ -11904,30 +12448,28 @@ packages: dev: true optional: true - /umzug@3.5.0: - resolution: {integrity: sha512-bL6JjH716l0kg7V2Acrw5UmUgeLxdAZv3drMhKrJCXxEfK/qyM+B5s3ai1BjG1NyEGeXTOkhFIUgkMFo6zqVBg==} + /umzug@3.7.0(@types/node@20.11.22): + resolution: {integrity: sha512-r/L2Zlilgv3SKhmP2nkA9x2Xi1PKtu2K34/i/s7AYJ2mLjEO+IxETJAK7CKf6l3QOvoy5/ChykeX9qt6ykRz6Q==} engines: {node: '>=12'} dependencies: - '@rushstack/ts-command-line': 4.17.1 + '@rushstack/ts-command-line': 4.18.0(@types/node@20.11.22) emittery: 0.13.1 glob: 8.1.0 pony-cause: 2.1.10 - type-fest: 3.13.1 + type-fest: 4.10.3 + transitivePeerDependencies: + - '@types/node' dev: false /unbox-primitive@1.0.2: resolution: {integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==} dependencies: - call-bind: 1.0.5 + call-bind: 1.0.7 has-bigints: 1.0.2 has-symbols: 1.0.3 which-boxed-primitive: 1.0.2 dev: true - /undefsafe@2.0.5: - resolution: {integrity: sha512-WxONCrssBM8TSPRqN5EmsjVrsv4A8X12J4ArBiiayv3DyyG3ZlIg6yysuuSYdZsVz3TKcTg2fd//Ujd4CHV1iA==} - dev: true - /undici-types@5.26.5: resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==} @@ -11987,11 +12529,11 @@ packages: /universalify@0.1.2: resolution: {integrity: sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==} engines: {node: '>= 4.0.0'} - dev: true /universalify@2.0.1: resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==} engines: {node: '>= 10.0.0'} + dev: true /unpipe@1.0.0: resolution: {integrity: sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==} @@ -12003,14 +12545,14 @@ packages: engines: {node: '>=4'} dev: true - /update-browserslist-db@1.0.13(browserslist@4.22.2): + /update-browserslist-db@1.0.13(browserslist@4.23.0): resolution: {integrity: sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==} hasBin: true peerDependencies: browserslist: '>= 4.21.0' dependencies: - browserslist: 4.22.2 - escalade: 3.1.1 + browserslist: 4.23.0 + escalade: 3.1.2 picocolors: 1.0.0 dev: true @@ -12024,6 +12566,13 @@ packages: resolution: {integrity: sha512-jk1+QP6ZJqyOiuEI9AEWQfju/nB2Pw466kbA0LEZljHwKeMgd9WrAEgEGxjPDD2+TNbbb37rTyhEfrCXfuKXnA==} dev: false + /url@0.11.3: + resolution: {integrity: sha512-6hxOLGfZASQK/cijlZnZJTq8OXAkt/3YGfQX45vvMYXpZoo8NdWZcY73K108Jf759lS1Bv/8wXnHDTSz17dSRw==} + dependencies: + punycode: 1.4.1 + qs: 6.11.2 + dev: true + /use-between@1.3.5(react@18.2.0): resolution: {integrity: sha512-IP9eJfszZr0aah/6i/pzaM7n/QgMPwWKJ+mnWqT5O0qFhLnztPbkVC6L7zI6ygeBIMJHfmUGvsw0b28pyrEGSA==} peerDependencies: @@ -12039,6 +12588,16 @@ 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.13 + which-typed-array: 1.1.14 + dev: true + /utils-merge@1.0.1: resolution: {integrity: sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==} engines: {node: '>= 0.4.0'} @@ -12082,8 +12641,20 @@ packages: engines: {node: '>= 0.8'} dev: false - /vite-plugin-pwa@0.17.4(vite@5.0.11)(workbox-build@7.0.0)(workbox-window@7.0.0): - resolution: {integrity: sha512-j9iiyinFOYyof4Zk3Q+DtmYyDVBDAi6PuMGNGq6uGI0pw7E+LNm9e+nQ2ep9obMP/kjdWwzilqUrlfVRj9OobA==} + /vite-plugin-node-polyfills@0.21.0(rollup@2.79.1)(vite@5.1.4): + resolution: {integrity: sha512-Sk4DiKnmxN8E0vhgEhzLudfJQfaT8k4/gJ25xvUPG54KjLJ6HAmDKbr4rzDD/QWEY+Lwg80KE85fGYBQihEPQA==} + peerDependencies: + vite: ^2.0.0 || ^3.0.0 || ^4.0.0 || ^5.0.0 + dependencies: + '@rollup/plugin-inject': 5.0.5(rollup@2.79.1) + node-stdlib-browser: 1.2.0 + vite: 5.1.4 + transitivePeerDependencies: + - rollup + dev: true + + /vite-plugin-pwa@0.17.5(vite@5.1.4)(workbox-build@7.0.0)(workbox-window@7.0.0): + resolution: {integrity: sha512-UxRNPiJBzh4tqU/vc8G2TxmrUTzT6BqvSzhszLk62uKsf+npXdvLxGDz9C675f4BJi6MbD2tPnJhi5txlMzxbQ==} engines: {node: '>=16.0.0'} peerDependencies: vite: ^3.1.0 || ^4.0.0 || ^5.0.0 @@ -12093,14 +12664,14 @@ packages: debug: 4.3.4(supports-color@5.5.0) fast-glob: 3.3.2 pretty-bytes: 6.1.1 - vite: 5.0.11 + vite: 5.1.4 workbox-build: 7.0.0 workbox-window: 7.0.0 transitivePeerDependencies: - supports-color dev: true - /vite-plugin-svgr@4.2.0(rollup@2.79.1)(typescript@5.3.3)(vite@5.0.11): + /vite-plugin-svgr@4.2.0(rollup@2.79.1)(typescript@5.3.3)(vite@5.1.4): resolution: {integrity: sha512-SC7+FfVtNQk7So0XMjrrtLAbEC8qjFPifyD7+fs/E6aaNdVde6umlVVh0QuwDLdOMu7vp5RiGFsB70nj5yo0XA==} peerDependencies: vite: ^2.6.0 || 3 || 4 || 5 @@ -12108,15 +12679,15 @@ packages: '@rollup/pluginutils': 5.1.0(rollup@2.79.1) '@svgr/core': 8.1.0(typescript@5.3.3) '@svgr/plugin-jsx': 8.1.0(@svgr/core@8.1.0) - vite: 5.0.11 + vite: 5.1.4 transitivePeerDependencies: - rollup - supports-color - typescript dev: true - /vite@5.0.11: - resolution: {integrity: sha512-XBMnDjZcNAw/G1gEiskiM1v6yzM4GE5aMGvhWTlHAYYhxb7S3/V1s3m2LDHa8Vh6yIWYYB0iJwsEaS523c4oYA==} + /vite@5.1.4: + resolution: {integrity: sha512-n+MPqzq+d9nMVTKyewqw6kSt+R3CkvF9QAKY8obiQn8g1fwTscKxyfaYnC632HtBXAQGc1Yjomphwn1dtwGAHg==} engines: {node: ^18.0.0 || >=20.0.0} hasBin: true peerDependencies: @@ -12143,13 +12714,17 @@ packages: terser: optional: true dependencies: - esbuild: 0.19.11 - postcss: 8.4.33 - rollup: 4.9.4 + esbuild: 0.19.12 + postcss: 8.4.35 + rollup: 4.12.0 optionalDependencies: fsevents: 2.3.3 dev: true + /vm-browserify@1.1.2: + resolution: {integrity: sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==} + dev: true + /void-elements@3.1.0: resolution: {integrity: sha512-Dhxzh5HZuiHQhbvTW9AMetFfBHDMYpo23Uo9btPXgdYP+3T5S+p+jgNy7spra+veYhBP2dCSgxR/i2Y02h5/6w==} engines: {node: '>=0.10.0'} @@ -12163,10 +12738,6 @@ packages: resolution: {integrity: sha512-AFbieoL7a5LMqcnOF04ji+rpXadgOXnZsxQr//r83kLPr7biP7am3g9zbaZIaBGwBRWeSvoMD4mgPdX3e4NWBg==} dev: true - /webidl-conversions@3.0.1: - resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} - dev: false - /webidl-conversions@4.0.2: resolution: {integrity: sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==} dev: true @@ -12191,13 +12762,6 @@ packages: webidl-conversions: 7.0.0 dev: false - /whatwg-url@5.0.0: - resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==} - dependencies: - tr46: 0.0.3 - webidl-conversions: 3.0.1 - dev: false - /whatwg-url@7.1.0: resolution: {integrity: sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==} dependencies: @@ -12221,7 +12785,7 @@ packages: engines: {node: '>= 0.4'} dependencies: function.prototype.name: 1.1.6 - has-tostringtag: 1.0.0 + has-tostringtag: 1.0.2 is-async-function: 2.0.0 is-date-object: 1.0.5 is-finalizationregistry: 1.0.2 @@ -12230,32 +12794,33 @@ packages: is-weakref: 1.0.2 isarray: 2.0.5 which-boxed-primitive: 1.0.2 - which-collection: 1.0.1 - which-typed-array: 1.1.13 + which-collection: 1.0.2 + which-typed-array: 1.1.14 dev: true - /which-collection@1.0.1: - resolution: {integrity: sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==} + /which-collection@1.0.2: + resolution: {integrity: sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==} + engines: {node: '>= 0.4'} dependencies: - is-map: 2.0.2 - is-set: 2.0.2 - is-weakmap: 2.0.1 - is-weakset: 2.0.2 + is-map: 2.0.3 + is-set: 2.0.3 + is-weakmap: 2.0.2 + is-weakset: 2.0.3 dev: true /which-module@2.0.1: resolution: {integrity: sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==} dev: true - /which-typed-array@1.1.13: - resolution: {integrity: sha512-P5Nra0qjSncduVPEAr7xhoF5guty49ArDTwzJ/yNuPIbZppyRxFQsRCWrocxIY+CnMVG+qfbU2FmDKyvSGClow==} + /which-typed-array@1.1.14: + resolution: {integrity: sha512-VnXFiIW8yNn9kIHN88xvZ4yOWchftKDsRJ8fEPacX/wl1lOvBrhsJ/OeJCXq7B0AaijRuqgzSKalJoPk+D8MPg==} engines: {node: '>= 0.4'} dependencies: - available-typed-arrays: 1.0.5 - call-bind: 1.0.5 + available-typed-arrays: 1.0.7 + call-bind: 1.0.7 for-each: 0.3.3 gopd: 1.0.1 - has-tostringtag: 1.0.0 + has-tostringtag: 1.0.2 dev: true /which@2.0.2: @@ -12267,12 +12832,14 @@ packages: /wide-align@1.1.5: resolution: {integrity: sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==} + requiresBuild: true dependencies: string-width: 4.2.3 dev: false + optional: true - /winston-transport@4.6.0: - resolution: {integrity: sha512-wbBA9PbPAHxKiygo7ub7BYRiKxms0tpfU2ljtWzb3SjRjv5yl6Ozuy/TkXf00HTAt+Uylo3gSkNwzc4ME0wiIg==} + /winston-transport@4.7.0: + resolution: {integrity: sha512-ajBj65K5I7denzer2IYW6+2bNIVqLGDHqDw3Ow8Ohh+vdW+rv4MZ6eiDvHoKhfJFZ2auyN8byXieDDJ96ViONg==} engines: {node: '>= 12.0.0'} dependencies: logform: 2.6.0 @@ -12294,13 +12861,13 @@ packages: safe-stable-stringify: 2.4.3 stack-trace: 0.0.10 triple-beam: 1.4.1 - winston-transport: 4.6.0 + winston-transport: 4.7.0 dev: true /wkx@0.5.0: resolution: {integrity: sha512-Xng/d4Ichh8uN4l0FToV/258EjMGU9MGcA0HV2d9B/ZpZB3lqQm7nkOdZdm5GhKtLLhAE7PiVQwN4eN+2YJJUg==} dependencies: - '@types/node': 20.10.7 + '@types/node': 20.11.22 dev: false /wordwrap@1.0.0: @@ -12325,10 +12892,10 @@ packages: engines: {node: '>=16.0.0'} dependencies: '@apideck/better-ajv-errors': 0.3.6(ajv@8.12.0) - '@babel/core': 7.23.7 - '@babel/preset-env': 7.23.7(@babel/core@7.23.7) - '@babel/runtime': 7.23.7 - '@rollup/plugin-babel': 5.3.1(@babel/core@7.23.7)(rollup@2.79.1) + '@babel/core': 7.24.0 + '@babel/preset-env': 7.24.0(@babel/core@7.24.0) + '@babel/runtime': 7.24.0 + '@rollup/plugin-babel': 5.3.1(@babel/core@7.24.0)(rollup@2.79.1) '@rollup/plugin-node-resolve': 11.2.1(rollup@2.79.1) '@rollup/plugin-replace': 2.4.2(rollup@2.79.1) '@surma/rollup-plugin-off-main-thread': 2.2.3 @@ -12453,29 +13020,29 @@ packages: workbox-core: 7.0.0 dev: true - /worker-timers-broker@6.0.100: - resolution: {integrity: sha512-sXF1NpuT+FlJvONSbdZ6wNB15oNGg/P6PvCZDMHWmI6s7bHEb0zQ7cTnk9k+96/3pd8SpbXFuM0/HcHVc2alDQ==} + /worker-timers-broker@6.1.2: + resolution: {integrity: sha512-slFupigW5vtkGJ1VBCxYPwXFFRmvfioh02bCltBhbMkt3fFnkAbKBCg61pNTetlD0RAsP09mqx/FB0f4UMoHNw==} dependencies: - '@babel/runtime': 7.23.7 - fast-unique-numbers: 8.0.12 + '@babel/runtime': 7.24.0 + fast-unique-numbers: 9.0.0 tslib: 2.6.2 - worker-timers-worker: 7.0.64 + worker-timers-worker: 7.0.66 dev: false - /worker-timers-worker@7.0.64: - resolution: {integrity: sha512-bzBO7rVibSYFKu5NBYfjKBKHujaA/AJzJTuEEqaOGfzcTdJv15raDuGhtDoMjcNPvt3IylfLph6AK92kuifnXA==} + /worker-timers-worker@7.0.66: + resolution: {integrity: sha512-VCLa0H5K9fE2DVI/9r5zDuFrMQIpNL3UD/h4Ui49fIiRBTgv1Sqe0RM12brr83anBsm103aUQkvKvCBL+KpNtg==} dependencies: - '@babel/runtime': 7.23.7 + '@babel/runtime': 7.24.0 tslib: 2.6.2 dev: false - /worker-timers@7.0.80: - resolution: {integrity: sha512-bYSAPNVR0Nrm7hTM3hQOxM3x+D9dXFG6kZ0BBqFyRu0BUGC5+DLLK5Sx281hCaNzOGMNcUMEaoeErx3Yuf7XIw==} + /worker-timers@7.1.2: + resolution: {integrity: sha512-iqhXt5+Mc3u2nHj3G/w/E9pXqhlueniA2NlyelB/MQSHQuuW2fmmZGkveAv6yi4SSZvrpbveBBlqPSZ0MDCLww==} dependencies: - '@babel/runtime': 7.23.7 + '@babel/runtime': 7.24.0 tslib: 2.6.2 - worker-timers-broker: 6.0.100 - worker-timers-worker: 7.0.64 + worker-timers-broker: 6.1.2 + worker-timers-worker: 7.0.66 dev: false /workerpool@6.2.1: @@ -12498,6 +13065,7 @@ packages: ansi-styles: 4.3.0 string-width: 4.2.3 strip-ansi: 6.0.1 + dev: true /wrap-ansi@8.1.0: resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} @@ -12506,7 +13074,7 @@ packages: ansi-styles: 6.2.1 string-width: 5.1.2 strip-ansi: 7.1.0 - dev: false + dev: true /wrappy@1.0.2: resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} @@ -12563,6 +13131,12 @@ packages: engines: {node: '>= 6'} dev: false + /yaml@2.4.0: + resolution: {integrity: sha512-j9iR8g+/t0lArF4V6NE/QCfT+CO7iLqrXAHZbJdo+LfjqP1vR8Fg5bSiaq6Q2lOD1AUEVrEVIgABvBFYojJVYQ==} + engines: {node: '>= 14'} + hasBin: true + dev: true + /yargs-parser@18.1.3: resolution: {integrity: sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==} engines: {node: '>=6'} @@ -12618,7 +13192,7 @@ packages: engines: {node: '>=10'} dependencies: cliui: 7.0.4 - escalade: 3.1.1 + escalade: 3.1.2 get-caller-file: 2.0.5 require-directory: 2.1.1 string-width: 4.2.3 @@ -12631,7 +13205,7 @@ packages: engines: {node: '>=12'} dependencies: cliui: 8.0.1 - escalade: 3.1.1 + escalade: 3.1.2 get-caller-file: 2.0.5 require-directory: 2.1.1 string-width: 4.2.3 @@ -12648,3 +13222,15 @@ packages: resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} engines: {node: '>=10'} 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: false diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index 346d7c1c..3ff5faaa 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -1,3 +1,3 @@ packages: - "apps/*" - - "packages/**" + - "packages/*" diff --git a/tsconfig.json b/tsconfig.json index 0967ef42..19cb4cb7 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1 +1,3 @@ -{} +{ + "extends": "@friday-ai/tools/typescript/base.json" +} diff --git a/turbo.json b/turbo.json new file mode 100644 index 00000000..65c1d51f --- /dev/null +++ b/turbo.json @@ -0,0 +1,48 @@ +{ + "$schema": "https://turbo.build/schema.json", + "globalDependencies": ["**/.env.*local"], + "globalEnv": [ + "NODE_ENV", + "GITHUB_ACTION", + "SERVER_PORT", + "VITE_SERVER_PORT", + "MQTT_HOST", + "MQTT_PORT", + "MQTT_ADDRESS", + "npm_package_version" + ], + "pipeline": { + "start:dev": { + "cache": false, + "persistent": true, + "dependsOn": ["^build:packages"] + }, + "build": { + "outputs": ["lib/**", "dist/**"], + "dependsOn": ["^build"] + }, + "build:packages": { + "outputs": ["lib/**", "dist/**"], + "dependsOn": ["^build:shared", "^build:logger"] + }, + "build:shared": { + "outputs": ["lib/**", "dist/**"] + }, + "build:logger": { + "outputs": ["lib/**", "dist/**"] + }, + "build:server": { + "dependsOn": ["^build:packages"], + "outputs": ["lib/**", "dist/**"] + }, + "build:front": { + "dependsOn": ["^build:shared"], + "outputs": ["lib/**", "dist/**"] + }, + "test:packages": {}, + "test:server": {}, + "coverage:junit": {}, + "test": {}, + "lint": {} + } +}