commit 061e875e85f02c0f4f76a5248531aefb47799d00
parent cd39c5974529f711c654733291a02a28a6fb5285
Author: Yuukin256 <52195426+Yuukin256@users.noreply.github.com>
Date: Sat, 23 Mar 2024 16:40:15 +0900
時間割データ形式の変更&保存方法をハードコードに変更 (#25)
* パッケージのアップデート等
* データ入力・更新機能を削除
* prisma関係を削除
* クラス標準時間割データの型を設計し、データ枠を作成
* 曜日時限時間割データの型を設計し、データ枠を作成・サンプルデータ挿入
* date-fns ライブラリを更新
* 時間割データ取得を実装
* クラス時間割ページのデータ取得を新verに対応、型定義を見直す
* クラス時間割表示内でのデータ更新日時表示機能を削除
* クラス時間割表示ページの各要素を新データ形式に対応
* パッケージアップデート、型修正等
* マイ時間割機能を新しいデータ形式に対応
* 未使用のClassPickerコンポーネントを削除
* Prisma関係で発生していた型エラーを修正
Diffstat:
77 files changed, 2596 insertions(+), 5021 deletions(-)
diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json
@@ -1,6 +1,6 @@
{
"name": "Node.js & TypeScript",
- "image": "mcr.microsoft.com/devcontainers/typescript-node:18-bullseye",
+ "image": "mcr.microsoft.com/devcontainers/typescript-node:20-bullseye",
// Use 'forwardPorts' to make a list of ports inside the container available locally.
// "forwardPorts": [],
diff --git a/.vscode/extensions.json b/.vscode/extensions.json
@@ -3,7 +3,6 @@
"dbaeumer.vscode-eslint",
"esbenp.prettier-vscode",
"editorconfig.editorconfig",
- "styled-components.vscode-styled-components",
- "prisma.prisma"
+ "styled-components.vscode-styled-components"
]
}
diff --git a/.vscode/settings.json b/.vscode/settings.json
@@ -1,11 +1,10 @@
{
"npm.packageManager": "pnpm",
- "eslint.packageManager": "pnpm",
"editor.defaultFormatter": "esbenp.prettier-vscode",
"editor.formatOnPaste": true,
"editor.formatOnSave": true,
"editor.codeActionsOnSave": {
- "source.fixAll.eslint": true
+ "source.fixAll.eslint": "explicit"
},
"[prisma]": {
"editor.defaultFormatter": "Prisma.prisma"
diff --git a/README.md b/README.md
@@ -2,7 +2,7 @@
## 開発方法
-- Node.js LTS をインストール
+- Node.js v20 LTS をインストール
- git リポジトリ を clone
@@ -10,9 +10,6 @@
# パッケージインストール(初回のみ)
pnpm install
-# Prisma client 生成
-pnpm prisma generate
-
# 開発サーバー起動
pnpm dev
```
diff --git a/data/classStandard.ts b/data/classStandard.ts
@@ -0,0 +1,871 @@
+import type { ClassStandardTimetable, GradeClass } from 'common/types';
+
+export const allClassesStandardTimetable: Record<
+ GradeClass,
+ ClassStandardTimetable
+> = {
+ '1-1': {
+ 月1: [],
+ 月2: [],
+ 月3: [],
+ 月4: [],
+ 月5: [],
+ 月6: [],
+ 月7: [],
+ 火1: [],
+ 火2: [],
+ 火3: [],
+ 火4: [],
+ 火5: [],
+ 火6: [],
+ 火7: [],
+ 水1: [],
+ 水2: [],
+ 水3: [],
+ 水4: [],
+ 水5: [],
+ 水6: [],
+ 水7: [],
+ 木1: [],
+ 木2: [],
+ 木3: [],
+ 木4: [],
+ 木5: [],
+ 木6: [],
+ 金1: [],
+ 金2: [],
+ 金3: [],
+ 金4: [],
+ 金5: [],
+ 金6: [],
+ 金7: [],
+ },
+ '1-2': {
+ 月1: [],
+ 月2: [],
+ 月3: [],
+ 月4: [],
+ 月5: [],
+ 月6: [],
+ 月7: [],
+ 火1: [],
+ 火2: [],
+ 火3: [],
+ 火4: [],
+ 火5: [],
+ 火6: [],
+ 火7: [],
+ 水1: [],
+ 水2: [],
+ 水3: [],
+ 水4: [],
+ 水5: [],
+ 水6: [],
+ 水7: [],
+ 木1: [],
+ 木2: [],
+ 木3: [],
+ 木4: [],
+ 木5: [],
+ 木6: [],
+ 金1: [],
+ 金2: [],
+ 金3: [],
+ 金4: [],
+ 金5: [],
+ 金6: [],
+ 金7: [],
+ },
+ '1-3': {
+ 月1: [],
+ 月2: [],
+ 月3: [],
+ 月4: [],
+ 月5: [],
+ 月6: [],
+ 月7: [],
+ 火1: [],
+ 火2: [],
+ 火3: [],
+ 火4: [],
+ 火5: [],
+ 火6: [],
+ 火7: [],
+ 水1: [],
+ 水2: [],
+ 水3: [],
+ 水4: [],
+ 水5: [],
+ 水6: [],
+ 水7: [],
+ 木1: [],
+ 木2: [],
+ 木3: [],
+ 木4: [],
+ 木5: [],
+ 木6: [],
+ 金1: [],
+ 金2: [],
+ 金3: [],
+ 金4: [],
+ 金5: [],
+ 金6: [],
+ 金7: [],
+ },
+ '1-4': {
+ 月1: [],
+ 月2: [],
+ 月3: [],
+ 月4: [],
+ 月5: [],
+ 月6: [],
+ 月7: [],
+ 火1: [],
+ 火2: [],
+ 火3: [],
+ 火4: [],
+ 火5: [],
+ 火6: [],
+ 火7: [],
+ 水1: [],
+ 水2: [],
+ 水3: [],
+ 水4: [],
+ 水5: [],
+ 水6: [],
+ 水7: [],
+ 木1: [],
+ 木2: [],
+ 木3: [],
+ 木4: [],
+ 木5: [],
+ 木6: [],
+ 金1: [],
+ 金2: [],
+ 金3: [],
+ 金4: [],
+ 金5: [],
+ 金6: [],
+ 金7: [],
+ },
+ '1-5': {
+ 月1: [],
+ 月2: [],
+ 月3: [],
+ 月4: [],
+ 月5: [],
+ 月6: [],
+ 月7: [],
+ 火1: [],
+ 火2: [],
+ 火3: [],
+ 火4: [],
+ 火5: [],
+ 火6: [],
+ 火7: [],
+ 水1: [],
+ 水2: [],
+ 水3: [],
+ 水4: [],
+ 水5: [],
+ 水6: [],
+ 水7: [],
+ 木1: [],
+ 木2: [],
+ 木3: [],
+ 木4: [],
+ 木5: [],
+ 木6: [],
+ 金1: [],
+ 金2: [],
+ 金3: [],
+ 金4: [],
+ 金5: [],
+ 金6: [],
+ 金7: [],
+ },
+ '1-6': {
+ 月1: [],
+ 月2: [],
+ 月3: [],
+ 月4: [],
+ 月5: [],
+ 月6: [],
+ 月7: [],
+ 火1: [],
+ 火2: [],
+ 火3: [],
+ 火4: [],
+ 火5: [],
+ 火6: [],
+ 火7: [],
+ 水1: [],
+ 水2: [],
+ 水3: [],
+ 水4: [],
+ 水5: [],
+ 水6: [],
+ 水7: [],
+ 木1: [],
+ 木2: [],
+ 木3: [],
+ 木4: [],
+ 木5: [],
+ 木6: [],
+ 金1: [],
+ 金2: [],
+ 金3: [],
+ 金4: [],
+ 金5: [],
+ 金6: [],
+ 金7: [],
+ },
+ '1-7': {
+ 月1: [],
+ 月2: [],
+ 月3: [],
+ 月4: [],
+ 月5: [],
+ 月6: [],
+ 月7: [],
+ 火1: [],
+ 火2: [],
+ 火3: [],
+ 火4: [],
+ 火5: [],
+ 火6: [],
+ 火7: [],
+ 水1: [],
+ 水2: [],
+ 水3: [],
+ 水4: [],
+ 水5: [],
+ 水6: [],
+ 水7: [],
+ 木1: [],
+ 木2: [],
+ 木3: [],
+ 木4: [],
+ 木5: [],
+ 木6: [],
+ 金1: [],
+ 金2: [],
+ 金3: [],
+ 金4: [],
+ 金5: [],
+ 金6: [],
+ 金7: [],
+ },
+ '1-8': {
+ 月1: [],
+ 月2: [],
+ 月3: [],
+ 月4: [],
+ 月5: [],
+ 月6: [],
+ 月7: [],
+ 火1: [],
+ 火2: [],
+ 火3: [],
+ 火4: [],
+ 火5: [],
+ 火6: [],
+ 火7: [],
+ 水1: [],
+ 水2: [],
+ 水3: [],
+ 水4: [],
+ 水5: [],
+ 水6: [],
+ 水7: [],
+ 木1: [],
+ 木2: [],
+ 木3: [],
+ 木4: [],
+ 木5: [],
+ 木6: [],
+ 金1: [],
+ 金2: [],
+ 金3: [],
+ 金4: [],
+ 金5: [],
+ 金6: [],
+ 金7: [],
+ },
+ '2-1': {
+ 月1: [],
+ 月2: [],
+ 月3: [],
+ 月4: [],
+ 月5: [],
+ 月6: [],
+ 月7: [],
+ 火1: [],
+ 火2: [],
+ 火3: [],
+ 火4: [],
+ 火5: [],
+ 火6: [],
+ 火7: [],
+ 水1: [],
+ 水2: [],
+ 水3: [],
+ 水4: [],
+ 水5: [],
+ 水6: [],
+ 水7: [],
+ 木1: [],
+ 木2: [],
+ 木3: [],
+ 木4: [],
+ 木5: [],
+ 木6: [],
+ 金1: [],
+ 金2: [],
+ 金3: [],
+ 金4: [],
+ 金5: [],
+ 金6: [],
+ 金7: [],
+ },
+ '2-2': {
+ 月1: [],
+ 月2: [],
+ 月3: [],
+ 月4: [],
+ 月5: [],
+ 月6: [],
+ 月7: [],
+ 火1: [],
+ 火2: [],
+ 火3: [],
+ 火4: [],
+ 火5: [],
+ 火6: [],
+ 火7: [],
+ 水1: [],
+ 水2: [],
+ 水3: [],
+ 水4: [],
+ 水5: [],
+ 水6: [],
+ 水7: [],
+ 木1: [],
+ 木2: [],
+ 木3: [],
+ 木4: [],
+ 木5: [],
+ 木6: [],
+ 金1: [],
+ 金2: [],
+ 金3: [],
+ 金4: [],
+ 金5: [],
+ 金6: [],
+ 金7: [],
+ },
+ '2-3': {
+ 月1: [],
+ 月2: [],
+ 月3: [],
+ 月4: [],
+ 月5: [],
+ 月6: [],
+ 月7: [],
+ 火1: [],
+ 火2: [],
+ 火3: [],
+ 火4: [],
+ 火5: [],
+ 火6: [],
+ 火7: [],
+ 水1: [],
+ 水2: [],
+ 水3: [],
+ 水4: [],
+ 水5: [],
+ 水6: [],
+ 水7: [],
+ 木1: [],
+ 木2: [],
+ 木3: [],
+ 木4: [],
+ 木5: [],
+ 木6: [],
+ 金1: [],
+ 金2: [],
+ 金3: [],
+ 金4: [],
+ 金5: [],
+ 金6: [],
+ 金7: [],
+ },
+ '2-4': {
+ 月1: [],
+ 月2: [],
+ 月3: [],
+ 月4: [],
+ 月5: [],
+ 月6: [],
+ 月7: [],
+ 火1: [],
+ 火2: [],
+ 火3: [],
+ 火4: [],
+ 火5: [],
+ 火6: [],
+ 火7: [],
+ 水1: [],
+ 水2: [],
+ 水3: [],
+ 水4: [],
+ 水5: [],
+ 水6: [],
+ 水7: [],
+ 木1: [],
+ 木2: [],
+ 木3: [],
+ 木4: [],
+ 木5: [],
+ 木6: [],
+ 金1: [],
+ 金2: [],
+ 金3: [],
+ 金4: [],
+ 金5: [],
+ 金6: [],
+ 金7: [],
+ },
+ '2-5': {
+ 月1: [],
+ 月2: [],
+ 月3: [],
+ 月4: [],
+ 月5: [],
+ 月6: [],
+ 月7: [],
+ 火1: [],
+ 火2: [],
+ 火3: [],
+ 火4: [],
+ 火5: [],
+ 火6: [],
+ 火7: [],
+ 水1: [],
+ 水2: [],
+ 水3: [],
+ 水4: [],
+ 水5: [],
+ 水6: [],
+ 水7: [],
+ 木1: [],
+ 木2: [],
+ 木3: [],
+ 木4: [],
+ 木5: [],
+ 木6: [],
+ 金1: [],
+ 金2: [],
+ 金3: [],
+ 金4: [],
+ 金5: [],
+ 金6: [],
+ 金7: [],
+ },
+ '2-6': {
+ 月1: [],
+ 月2: [],
+ 月3: [],
+ 月4: [],
+ 月5: [],
+ 月6: [],
+ 月7: [],
+ 火1: [],
+ 火2: [],
+ 火3: [],
+ 火4: [],
+ 火5: [],
+ 火6: [],
+ 火7: [],
+ 水1: [],
+ 水2: [],
+ 水3: [],
+ 水4: [],
+ 水5: [],
+ 水6: [],
+ 水7: [],
+ 木1: [],
+ 木2: [],
+ 木3: [],
+ 木4: [],
+ 木5: [],
+ 木6: [],
+ 金1: [],
+ 金2: [],
+ 金3: [],
+ 金4: [],
+ 金5: [],
+ 金6: [],
+ 金7: [],
+ },
+ '2-7': {
+ 月1: [],
+ 月2: [],
+ 月3: [],
+ 月4: [],
+ 月5: [],
+ 月6: [],
+ 月7: [],
+ 火1: [],
+ 火2: [],
+ 火3: [],
+ 火4: [],
+ 火5: [],
+ 火6: [],
+ 火7: [],
+ 水1: [],
+ 水2: [],
+ 水3: [],
+ 水4: [],
+ 水5: [],
+ 水6: [],
+ 水7: [],
+ 木1: [],
+ 木2: [],
+ 木3: [],
+ 木4: [],
+ 木5: [],
+ 木6: [],
+ 金1: [],
+ 金2: [],
+ 金3: [],
+ 金4: [],
+ 金5: [],
+ 金6: [],
+ 金7: [],
+ },
+ '2-8': {
+ 月1: [],
+ 月2: [],
+ 月3: [],
+ 月4: [],
+ 月5: [],
+ 月6: [],
+ 月7: [],
+ 火1: [],
+ 火2: [],
+ 火3: [],
+ 火4: [],
+ 火5: [],
+ 火6: [],
+ 火7: [],
+ 水1: [],
+ 水2: [],
+ 水3: [],
+ 水4: [],
+ 水5: [],
+ 水6: [],
+ 水7: [],
+ 木1: [],
+ 木2: [],
+ 木3: [],
+ 木4: [],
+ 木5: [],
+ 木6: [],
+ 金1: [],
+ 金2: [],
+ 金3: [],
+ 金4: [],
+ 金5: [],
+ 金6: [],
+ 金7: [],
+ },
+ '3-1': {
+ 月1: [],
+ 月2: [],
+ 月3: [],
+ 月4: [],
+ 月5: [],
+ 月6: [],
+ 月7: [],
+ 火1: [],
+ 火2: [],
+ 火3: [],
+ 火4: [],
+ 火5: [],
+ 火6: [],
+ 火7: [],
+ 水1: [],
+ 水2: [],
+ 水3: [],
+ 水4: [],
+ 水5: [],
+ 水6: [],
+ 水7: [],
+ 木1: [],
+ 木2: [],
+ 木3: [],
+ 木4: [],
+ 木5: [],
+ 木6: [],
+ 金1: [],
+ 金2: [],
+ 金3: [],
+ 金4: [],
+ 金5: [],
+ 金6: [],
+ 金7: [],
+ },
+ '3-2': {
+ 月1: [],
+ 月2: [],
+ 月3: [],
+ 月4: [],
+ 月5: [],
+ 月6: [],
+ 月7: [],
+ 火1: [],
+ 火2: [],
+ 火3: [],
+ 火4: [],
+ 火5: [],
+ 火6: [],
+ 火7: [],
+ 水1: [],
+ 水2: [],
+ 水3: [],
+ 水4: [],
+ 水5: [],
+ 水6: [],
+ 水7: [],
+ 木1: [],
+ 木2: [],
+ 木3: [],
+ 木4: [],
+ 木5: [],
+ 木6: [],
+ 金1: [],
+ 金2: [],
+ 金3: [],
+ 金4: [],
+ 金5: [],
+ 金6: [],
+ 金7: [],
+ },
+ '3-3': {
+ 月1: [],
+ 月2: [],
+ 月3: [],
+ 月4: [],
+ 月5: [],
+ 月6: [],
+ 月7: [],
+ 火1: [],
+ 火2: [],
+ 火3: [],
+ 火4: [],
+ 火5: [],
+ 火6: [],
+ 火7: [],
+ 水1: [],
+ 水2: [],
+ 水3: [],
+ 水4: [],
+ 水5: [],
+ 水6: [],
+ 水7: [],
+ 木1: [],
+ 木2: [],
+ 木3: [],
+ 木4: [],
+ 木5: [],
+ 木6: [],
+ 金1: [],
+ 金2: [],
+ 金3: [],
+ 金4: [],
+ 金5: [],
+ 金6: [],
+ 金7: [],
+ },
+ '3-4': {
+ 月1: [],
+ 月2: [],
+ 月3: [],
+ 月4: [],
+ 月5: [],
+ 月6: [],
+ 月7: [],
+ 火1: [],
+ 火2: [],
+ 火3: [],
+ 火4: [],
+ 火5: [],
+ 火6: [],
+ 火7: [],
+ 水1: [],
+ 水2: [],
+ 水3: [],
+ 水4: [],
+ 水5: [],
+ 水6: [],
+ 水7: [],
+ 木1: [],
+ 木2: [],
+ 木3: [],
+ 木4: [],
+ 木5: [],
+ 木6: [],
+ 金1: [],
+ 金2: [],
+ 金3: [],
+ 金4: [],
+ 金5: [],
+ 金6: [],
+ 金7: [],
+ },
+ '3-5': {
+ 月1: [],
+ 月2: [],
+ 月3: [],
+ 月4: [],
+ 月5: [],
+ 月6: [],
+ 月7: [],
+ 火1: [],
+ 火2: [],
+ 火3: [],
+ 火4: [],
+ 火5: [],
+ 火6: [],
+ 火7: [],
+ 水1: [],
+ 水2: [],
+ 水3: [],
+ 水4: [],
+ 水5: [],
+ 水6: [],
+ 水7: [],
+ 木1: [],
+ 木2: [],
+ 木3: [],
+ 木4: [],
+ 木5: [],
+ 木6: [],
+ 金1: [],
+ 金2: [],
+ 金3: [],
+ 金4: [],
+ 金5: [],
+ 金6: [],
+ 金7: [],
+ },
+ '3-6': {
+ 月1: [],
+ 月2: [],
+ 月3: [],
+ 月4: [],
+ 月5: [],
+ 月6: [],
+ 月7: [],
+ 火1: [],
+ 火2: [],
+ 火3: [],
+ 火4: [],
+ 火5: [],
+ 火6: [],
+ 火7: [],
+ 水1: [],
+ 水2: [],
+ 水3: [],
+ 水4: [],
+ 水5: [],
+ 水6: [],
+ 水7: [],
+ 木1: [],
+ 木2: [],
+ 木3: [],
+ 木4: [],
+ 木5: [],
+ 木6: [],
+ 金1: [],
+ 金2: [],
+ 金3: [],
+ 金4: [],
+ 金5: [],
+ 金6: [],
+ 金7: [],
+ },
+ '3-7': {
+ 月1: [],
+ 月2: [],
+ 月3: [],
+ 月4: [],
+ 月5: [],
+ 月6: [],
+ 月7: [],
+ 火1: [],
+ 火2: [],
+ 火3: [],
+ 火4: [],
+ 火5: [],
+ 火6: [],
+ 火7: [],
+ 水1: [],
+ 水2: [],
+ 水3: [],
+ 水4: [],
+ 水5: [],
+ 水6: [],
+ 水7: [],
+ 木1: [],
+ 木2: [],
+ 木3: [],
+ 木4: [],
+ 木5: [],
+ 木6: [],
+ 金1: [],
+ 金2: [],
+ 金3: [],
+ 金4: [],
+ 金5: [],
+ 金6: [],
+ 金7: [],
+ },
+ '3-8': {
+ 月1: [],
+ 月2: [],
+ 月3: [],
+ 月4: [],
+ 月5: [],
+ 月6: [],
+ 月7: [],
+ 火1: [],
+ 火2: [],
+ 火3: [],
+ 火4: [],
+ 火5: [],
+ 火6: [],
+ 火7: [],
+ 水1: [],
+ 水2: [],
+ 水3: [],
+ 水4: [],
+ 水5: [],
+ 水6: [],
+ 水7: [],
+ 木1: [],
+ 木2: [],
+ 木3: [],
+ 木4: [],
+ 木5: [],
+ 木6: [],
+ 金1: [],
+ 金2: [],
+ 金3: [],
+ 金4: [],
+ 金5: [],
+ 金6: [],
+ 金7: [],
+ },
+};
diff --git a/data/dayPeriodSchedule.ts b/data/dayPeriodSchedule.ts
@@ -0,0 +1,19 @@
+import type { DaySchedulesByGrade } from 'common/types';
+
+// 日付順に並べて入力すること
+export const dayPeriodSchedules: Record<string, DaySchedulesByGrade> = {
+ // '2024-03-22': {
+ // grade1: {
+ // period1: '月1',
+ // period2: '月2',
+ // period3: '月3',
+ // period4: '月4',
+ // period5: '月5',
+ // period6: '月6',
+ // period7: '月7',
+ // event: '終業式',
+ // },
+ // grade2: { period1: '火1', event: '終業式' },
+ // grade3: { period1: '火1', event: '終業式' },
+ // },
+};
diff --git a/next-env.d.ts b/next-env.d.ts
@@ -1,6 +1,5 @@
/// <reference types="next" />
/// <reference types="next/image-types/global" />
-/// <reference types="next/navigation-types/compat/navigation" />
// NOTE: This file should not be edited
// see https://nextjs.org/docs/basic-features/typescript for more information.
diff --git a/package.json b/package.json
@@ -12,31 +12,28 @@
"type-check": "tsc --noEmit",
"format": "prettier --write ."
},
- "prisma": {
- "seed": "tsx prisma/seed.ts"
- },
"dependencies": {
- "@babel/core": "^7.23.7",
+ "@babel/core": "^7.24.3",
"@emotion/cache": "^11.11.0",
- "@emotion/react": "^11.11.3",
+ "@emotion/react": "^11.11.4",
"@emotion/styled": "^11.11.0",
"@hookform/resolvers": "^3.3.4",
"@mantine/hooks": "^6.0.21",
- "@mui/icons-material": "^5.15.4",
+ "@mui/icons-material": "^5.15.14",
"@mui/lab": "5.0.0-alpha.130",
- "@mui/material": "^5.15.4",
- "@mui/system": "^5.15.4",
- "@mui/x-date-pickers": "^6.19.0",
- "@prisma/client": "^5.8.1",
+ "@mui/material": "^5.15.14",
+ "@mui/system": "^5.15.14",
+ "@mui/x-date-pickers": "^6.19.8",
+ "@prisma/client": "^5.11.0",
"@tanstack/react-query": "^4.36.1",
- "@trpc/client": "^10.45.0",
- "@trpc/next": "^10.45.0",
- "@trpc/react-query": "^10.45.0",
- "@trpc/server": "^10.45.0",
+ "@trpc/client": "^10.45.2",
+ "@trpc/next": "^10.45.2",
+ "@trpc/react-query": "^10.45.2",
+ "@trpc/server": "^10.45.2",
"clsx": "^1.2.1",
"csstype": "^3.1.3",
- "date-fns": "^2.30.0",
- "jotai": "^2.6.2",
+ "date-fns": "^3.6.0",
+ "jotai": "^2.7.1",
"lodash": "^4.17.21",
"next": "13.4.1",
"next-pwa": "^5.6.0",
@@ -45,23 +42,23 @@
"react": "^18.2.0",
"react-cookie": "^4.1.1",
"react-dom": "^18.2.0",
- "react-hook-form": "^7.49.3",
+ "react-hook-form": "^7.51.1",
"react-hook-form-mui": "^6.8.0",
"superjson": "^1.13.3",
"swiper": "^8.4.7",
- "usehooks-ts": "^2.9.4",
- "webpack": "^5.89.0",
+ "usehooks-ts": "^2.16.0",
+ "webpack": "^5.90.3",
"zod": "^3.22.4"
},
"devDependencies": {
"@next/eslint-plugin-next": "^13.5.6",
- "@types/lodash": "^4.14.202",
- "@types/node": "^20.11.4",
- "@types/react": "^18.2.48",
- "@types/react-dom": "^18.2.18",
+ "@types/lodash": "^4.17.0",
+ "@types/node": "^20.11.30",
+ "@types/react": "^18.2.67",
+ "@types/react-dom": "^18.2.22",
"@typescript-eslint/eslint-plugin": "^5.62.0",
"@typescript-eslint/parser": "^5.62.0",
- "eslint": "^8.56.0",
+ "eslint": "^8.57.0",
"eslint-config-next": "^13.5.6",
"eslint-config-prettier": "^8.10.0",
"eslint-import-resolver-typescript": "^3.6.1",
@@ -71,9 +68,9 @@
"husky": "^8.0.3",
"lint-staged": "^13.3.0",
"prettier": "^2.8.8",
- "prisma": "^5.8.1",
+ "prisma": "^5.11.0",
"tsx": "^3.14.0",
- "typescript": "^5.3.3"
+ "typescript": "^5.4.2"
},
- "packageManager": "pnpm@8.5.1"
+ "packageManager": "pnpm@8.15.5"
}
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
@@ -1,57 +1,61 @@
lockfileVersion: '6.0'
+settings:
+ autoInstallPeers: true
+ excludeLinksFromLockfile: false
+
dependencies:
'@babel/core':
- specifier: ^7.23.7
- version: 7.23.7
+ specifier: ^7.24.3
+ version: 7.24.3
'@emotion/cache':
specifier: ^11.11.0
version: 11.11.0
'@emotion/react':
- specifier: ^11.11.3
- version: 11.11.3(@types/react@18.2.48)(react@18.2.0)
+ specifier: ^11.11.4
+ version: 11.11.4(@types/react@18.2.67)(react@18.2.0)
'@emotion/styled':
specifier: ^11.11.0
- version: 11.11.0(@emotion/react@11.11.3)(@types/react@18.2.48)(react@18.2.0)
+ version: 11.11.0(@emotion/react@11.11.4)(@types/react@18.2.67)(react@18.2.0)
'@hookform/resolvers':
specifier: ^3.3.4
- version: 3.3.4(react-hook-form@7.49.3)
+ version: 3.3.4(react-hook-form@7.51.1)
'@mantine/hooks':
specifier: ^6.0.21
version: 6.0.21(react@18.2.0)
'@mui/icons-material':
- specifier: ^5.15.4
- version: 5.15.4(@mui/material@5.15.4)(@types/react@18.2.48)(react@18.2.0)
+ specifier: ^5.15.14
+ version: 5.15.14(@mui/material@5.15.14)(@types/react@18.2.67)(react@18.2.0)
'@mui/lab':
specifier: 5.0.0-alpha.130
- version: 5.0.0-alpha.130(@emotion/react@11.11.3)(@emotion/styled@11.11.0)(@mui/material@5.15.4)(@types/react@18.2.48)(react-dom@18.2.0)(react@18.2.0)
+ version: 5.0.0-alpha.130(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@mui/material@5.15.14)(@types/react@18.2.67)(react-dom@18.2.0)(react@18.2.0)
'@mui/material':
- specifier: ^5.15.4
- version: 5.15.4(@emotion/react@11.11.3)(@emotion/styled@11.11.0)(@types/react@18.2.48)(react-dom@18.2.0)(react@18.2.0)
+ specifier: ^5.15.14
+ version: 5.15.14(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@types/react@18.2.67)(react-dom@18.2.0)(react@18.2.0)
'@mui/system':
- specifier: ^5.15.4
- version: 5.15.4(@emotion/react@11.11.3)(@emotion/styled@11.11.0)(@types/react@18.2.48)(react@18.2.0)
+ specifier: ^5.15.14
+ version: 5.15.14(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@types/react@18.2.67)(react@18.2.0)
'@mui/x-date-pickers':
- specifier: ^6.19.0
- version: 6.19.0(@emotion/react@11.11.3)(@emotion/styled@11.11.0)(@mui/material@5.15.4)(@mui/system@5.15.4)(@types/react@18.2.48)(date-fns@2.30.0)(react-dom@18.2.0)(react@18.2.0)
+ specifier: ^6.19.8
+ version: 6.19.8(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@mui/material@5.15.14)(@mui/system@5.15.14)(@types/react@18.2.67)(date-fns@3.6.0)(react-dom@18.2.0)(react@18.2.0)
'@prisma/client':
- specifier: ^5.8.1
- version: 5.8.1(prisma@5.8.1)
+ specifier: ^5.11.0
+ version: 5.11.0(prisma@5.11.0)
'@tanstack/react-query':
specifier: ^4.36.1
version: 4.36.1(react-dom@18.2.0)(react@18.2.0)
'@trpc/client':
- specifier: ^10.45.0
- version: 10.45.0(@trpc/server@10.45.0)
+ specifier: ^10.45.2
+ version: 10.45.2(@trpc/server@10.45.2)
'@trpc/next':
- specifier: ^10.45.0
- version: 10.45.0(@tanstack/react-query@4.36.1)(@trpc/client@10.45.0)(@trpc/react-query@10.45.0)(@trpc/server@10.45.0)(next@13.4.1)(react-dom@18.2.0)(react@18.2.0)
+ specifier: ^10.45.2
+ version: 10.45.2(@tanstack/react-query@4.36.1)(@trpc/client@10.45.2)(@trpc/react-query@10.45.2)(@trpc/server@10.45.2)(next@13.4.1)(react-dom@18.2.0)(react@18.2.0)
'@trpc/react-query':
- specifier: ^10.45.0
- version: 10.45.0(@tanstack/react-query@4.36.1)(@trpc/client@10.45.0)(@trpc/server@10.45.0)(react-dom@18.2.0)(react@18.2.0)
+ specifier: ^10.45.2
+ version: 10.45.2(@tanstack/react-query@4.36.1)(@trpc/client@10.45.2)(@trpc/server@10.45.2)(react-dom@18.2.0)(react@18.2.0)
'@trpc/server':
- specifier: ^10.45.0
- version: 10.45.0
+ specifier: ^10.45.2
+ version: 10.45.2
clsx:
specifier: ^1.2.1
version: 1.2.1
@@ -59,20 +63,20 @@ dependencies:
specifier: ^3.1.3
version: 3.1.3
date-fns:
- specifier: ^2.30.0
- version: 2.30.0
+ specifier: ^3.6.0
+ version: 3.6.0
jotai:
- specifier: ^2.6.2
- version: 2.6.2(@types/react@18.2.48)(react@18.2.0)
+ specifier: ^2.7.1
+ version: 2.7.1(@types/react@18.2.67)(react@18.2.0)
lodash:
specifier: ^4.17.21
version: 4.17.21
next:
specifier: 13.4.1
- version: 13.4.1(@babel/core@7.23.7)(react-dom@18.2.0)(react@18.2.0)
+ version: 13.4.1(@babel/core@7.24.3)(react-dom@18.2.0)(react@18.2.0)
next-pwa:
specifier: ^5.6.0
- version: 5.6.0(@babel/core@7.23.7)(next@13.4.1)(webpack@5.89.0)
+ version: 5.6.0(@babel/core@7.24.3)(next@13.4.1)(webpack@5.90.3)
next-superjson-plugin:
specifier: 0.5.7
version: 0.5.7(next@13.4.1)(superjson@1.13.3)
@@ -89,11 +93,11 @@ dependencies:
specifier: ^18.2.0
version: 18.2.0(react@18.2.0)
react-hook-form:
- specifier: ^7.49.3
- version: 7.49.3(react@18.2.0)
+ specifier: ^7.51.1
+ version: 7.51.1(react@18.2.0)
react-hook-form-mui:
specifier: ^6.8.0
- version: 6.8.0(@mui/icons-material@5.15.4)(@mui/material@5.15.4)(@mui/x-date-pickers@6.19.0)(react-hook-form@7.49.3)(react@18.2.0)
+ version: 6.8.0(@mui/icons-material@5.15.14)(@mui/material@5.15.14)(@mui/x-date-pickers@6.19.8)(react-hook-form@7.51.1)(react@18.2.0)
superjson:
specifier: ^1.13.3
version: 1.13.3
@@ -101,11 +105,11 @@ dependencies:
specifier: ^8.4.7
version: 8.4.7
usehooks-ts:
- specifier: ^2.9.4
- version: 2.9.4(react-dom@18.2.0)(react@18.2.0)
+ specifier: ^2.16.0
+ version: 2.16.0(react@18.2.0)
webpack:
- specifier: ^5.89.0
- version: 5.89.0
+ specifier: ^5.90.3
+ version: 5.90.3
zod:
specifier: ^3.22.4
version: 3.22.4
@@ -115,44 +119,44 @@ devDependencies:
specifier: ^13.5.6
version: 13.5.6
'@types/lodash':
- specifier: ^4.14.202
- version: 4.14.202
+ specifier: ^4.17.0
+ version: 4.17.0
'@types/node':
- specifier: ^20.11.4
- version: 20.11.4
+ specifier: ^20.11.30
+ version: 20.11.30
'@types/react':
- specifier: ^18.2.48
- version: 18.2.48
+ specifier: ^18.2.67
+ version: 18.2.67
'@types/react-dom':
- specifier: ^18.2.18
- version: 18.2.18
+ specifier: ^18.2.22
+ version: 18.2.22
'@typescript-eslint/eslint-plugin':
specifier: ^5.62.0
- version: 5.62.0(@typescript-eslint/parser@5.62.0)(eslint@8.56.0)(typescript@5.3.3)
+ version: 5.62.0(@typescript-eslint/parser@5.62.0)(eslint@8.57.0)(typescript@5.4.2)
'@typescript-eslint/parser':
specifier: ^5.62.0
- version: 5.62.0(eslint@8.56.0)(typescript@5.3.3)
+ version: 5.62.0(eslint@8.57.0)(typescript@5.4.2)
eslint:
- specifier: ^8.56.0
- version: 8.56.0
+ specifier: ^8.57.0
+ version: 8.57.0
eslint-config-next:
specifier: ^13.5.6
- version: 13.5.6(eslint@8.56.0)(typescript@5.3.3)
+ version: 13.5.6(eslint@8.57.0)(typescript@5.4.2)
eslint-config-prettier:
specifier: ^8.10.0
- version: 8.10.0(eslint@8.56.0)
+ version: 8.10.0(eslint@8.57.0)
eslint-import-resolver-typescript:
specifier: ^3.6.1
- version: 3.6.1(@typescript-eslint/parser@5.62.0)(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.56.0)
+ version: 3.6.1(@typescript-eslint/parser@5.62.0)(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.57.0)
eslint-plugin-css-import-order:
specifier: ^1.1.0
- version: 1.1.0(eslint@8.56.0)
+ version: 1.1.0(eslint@8.57.0)
eslint-plugin-import:
specifier: ^2.29.1
- version: 2.29.1(@typescript-eslint/parser@5.62.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.56.0)
+ version: 2.29.1(@typescript-eslint/parser@5.62.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0)
eslint-plugin-unused-imports:
specifier: ^2.0.0
- version: 2.0.0(@typescript-eslint/eslint-plugin@5.62.0)(eslint@8.56.0)
+ version: 2.0.0(@typescript-eslint/eslint-plugin@5.62.0)(eslint@8.57.0)
husky:
specifier: ^8.0.3
version: 8.0.3
@@ -163,14 +167,14 @@ devDependencies:
specifier: ^2.8.8
version: 2.8.8
prisma:
- specifier: ^5.8.1
- version: 5.8.1
+ specifier: ^5.11.0
+ version: 5.11.0
tsx:
specifier: ^3.14.0
version: 3.14.0
typescript:
- specifier: ^5.3.3
- version: 5.3.3
+ specifier: ^5.4.2
+ version: 5.4.2
packages:
@@ -179,12 +183,12 @@ packages:
engines: {node: '>=0.10.0'}
dev: true
- /@ampproject/remapping@2.2.1:
- resolution: {integrity: sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==}
+ /@ampproject/remapping@2.3.0:
+ resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==}
engines: {node: '>=6.0.0'}
dependencies:
- '@jridgewell/gen-mapping': 0.3.3
- '@jridgewell/trace-mapping': 0.3.21
+ '@jridgewell/gen-mapping': 0.3.5
+ '@jridgewell/trace-mapping': 0.3.25
dev: false
/@apideck/better-ajv-errors@0.3.6(ajv@8.12.0):
@@ -199,33 +203,33 @@ packages:
leven: 3.1.0
dev: false
- /@babel/code-frame@7.23.5:
- resolution: {integrity: sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA==}
+ /@babel/code-frame@7.24.2:
+ resolution: {integrity: sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==}
engines: {node: '>=6.9.0'}
dependencies:
- '@babel/highlight': 7.23.4
- chalk: 2.4.2
+ '@babel/highlight': 7.24.2
+ picocolors: 1.0.0
dev: false
- /@babel/compat-data@7.23.5:
- resolution: {integrity: sha512-uU27kfDRlhfKl+w1U6vp16IuvSLtjAxdArVXPa9BvLkrr7CYIsxH5adpHObeAGY/41+syctUWOZ140a2Rvkgjw==}
+ /@babel/compat-data@7.24.1:
+ resolution: {integrity: sha512-Pc65opHDliVpRHuKfzI+gSA4zcgr65O4cl64fFJIWEEh8JoHIHh0Oez1Eo8Arz8zq/JhgKodQaxEwUPRtZylVA==}
engines: {node: '>=6.9.0'}
dev: false
- /@babel/core@7.23.7:
- resolution: {integrity: sha512-+UpDgowcmqe36d4NwqvKsyPMlOLNGMsfMmQ5WGCu+siCe3t3dfe9njrzGfdN4qq+bcNUt0+Vw6haRxBOycs4dw==}
+ /@babel/core@7.24.3:
+ resolution: {integrity: sha512-5FcvN1JHw2sHJChotgx8Ek0lyuh4kCKelgMTTqhYJJtloNvUfpAFMeNQUtdlIaktwrSV9LtCdqwk48wL2wBacQ==}
engines: {node: '>=6.9.0'}
dependencies:
- '@ampproject/remapping': 2.2.1
- '@babel/code-frame': 7.23.5
- '@babel/generator': 7.23.6
+ '@ampproject/remapping': 2.3.0
+ '@babel/code-frame': 7.24.2
+ '@babel/generator': 7.24.1
'@babel/helper-compilation-targets': 7.23.6
- '@babel/helper-module-transforms': 7.23.3(@babel/core@7.23.7)
- '@babel/helpers': 7.23.8
- '@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.3)
+ '@babel/helpers': 7.24.1
+ '@babel/parser': 7.24.1
+ '@babel/template': 7.24.0
+ '@babel/traverse': 7.24.1
+ '@babel/types': 7.24.0
convert-source-map: 2.0.0
debug: 4.3.4
gensync: 1.0.0-beta.2
@@ -235,13 +239,13 @@ packages:
- supports-color
dev: false
- /@babel/generator@7.23.6:
- resolution: {integrity: sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw==}
+ /@babel/generator@7.24.1:
+ resolution: {integrity: sha512-DfCRfZsBcrPEHUfuBMgbJ1Ut01Y/itOs+hY2nFLgqsqXd52/iSiVq5TITtUasIUgm+IIKdY2/1I7auiQOEeC9A==}
engines: {node: '>=6.9.0'}
dependencies:
- '@babel/types': 7.23.6
- '@jridgewell/gen-mapping': 0.3.3
- '@jridgewell/trace-mapping': 0.3.21
+ '@babel/types': 7.24.0
+ '@jridgewell/gen-mapping': 0.3.5
+ '@jridgewell/trace-mapping': 0.3.25
jsesc: 2.5.2
dev: false
@@ -249,65 +253,65 @@ packages:
resolution: {integrity: sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==}
engines: {node: '>=6.9.0'}
dependencies:
- '@babel/types': 7.23.6
+ '@babel/types': 7.24.0
dev: false
/@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: false
/@babel/helper-compilation-targets@7.23.6:
resolution: {integrity: sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==}
engines: {node: '>=6.9.0'}
dependencies:
- '@babel/compat-data': 7.23.5
+ '@babel/compat-data': 7.24.1
'@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: false
- /@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.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-1yJa9dX9g//V6fDebXoEfEsxkZHk3Hcbm+zLhyu6qVgYFLvmTALTeV+jNU9e5RnYtioBrGEOdoI2joMSNQ/+aA==}
engines: {node: '>=6.9.0'}
peerDependencies:
'@babel/core': ^7.0.0
dependencies:
- '@babel/core': 7.23.7
+ '@babel/core': 7.24.3
'@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.24.1(@babel/core@7.24.3)
'@babel/helper-skip-transparent-expression-wrappers': 7.22.5
'@babel/helper-split-export-declaration': 7.22.6
semver: 6.3.1
dev: false
- /@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.3):
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.3
'@babel/helper-annotate-as-pure': 7.22.5
regexpu-core: 5.3.2
semver: 6.3.1
dev: false
- /@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.6.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-o7SDgTJuvx5vLKD6SFvkydkSMBvahDKGiNJzG22IZYXhiqoe9efY7zocICBgzHV4IRg5wdgl2nEL/tulKIEIbA==}
peerDependencies:
'@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0
dependencies:
- '@babel/core': 7.23.7
+ '@babel/core': 7.24.3
'@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
lodash.debounce: 4.0.8
resolve: 1.22.8
@@ -324,40 +328,40 @@ 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: false
/@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: false
/@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: false
- /@babel/helper-module-imports@7.22.15:
- resolution: {integrity: sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==}
+ /@babel/helper-module-imports@7.24.3:
+ resolution: {integrity: sha512-viKb0F9f2s0BCS22QSF308z/+1YWKV/76mwt61NBzS5izMzDPwdq1pTrzf+Li3npBWX9KdQbkeCt1jSAM7lZqg==}
engines: {node: '>=6.9.0'}
dependencies:
- '@babel/types': 7.23.6
+ '@babel/types': 7.24.0
dev: false
- /@babel/helper-module-transforms@7.23.3(@babel/core@7.23.7):
+ /@babel/helper-module-transforms@7.23.3(@babel/core@7.24.3):
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.3
'@babel/helper-environment-visitor': 7.22.20
- '@babel/helper-module-imports': 7.22.15
+ '@babel/helper-module-imports': 7.24.3
'@babel/helper-simple-access': 7.22.5
'@babel/helper-split-export-declaration': 7.22.6
'@babel/helper-validator-identifier': 7.22.20
@@ -367,33 +371,33 @@ packages:
resolution: {integrity: sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==}
engines: {node: '>=6.9.0'}
dependencies:
- '@babel/types': 7.23.6
+ '@babel/types': 7.24.0
dev: false
- /@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: false
- /@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.3):
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.3
'@babel/helper-annotate-as-pure': 7.22.5
'@babel/helper-environment-visitor': 7.22.20
'@babel/helper-wrap-function': 7.22.20
dev: false
- /@babel/helper-replace-supers@7.22.20(@babel/core@7.23.7):
- resolution: {integrity: sha512-qsW0In3dbwQUbK8kejJ4R7IHVGwHJlV6lpG6UA7a9hSa2YEiAib+N1T2kr6PEeUT+Fl7najmSOS6SmAwCHK6Tw==}
+ /@babel/helper-replace-supers@7.24.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-QCR1UqC9BzG5vZl8BMicmZ28RuUBnHhAMddD8yHFHDRH9lLTZ9uUPehX8ctVPT8l0TKblJidqcgUUKGVrePleQ==}
engines: {node: '>=6.9.0'}
peerDependencies:
'@babel/core': ^7.0.0
dependencies:
- '@babel/core': 7.23.7
+ '@babel/core': 7.24.3
'@babel/helper-environment-visitor': 7.22.20
'@babel/helper-member-expression-to-functions': 7.23.0
'@babel/helper-optimise-call-expression': 7.22.5
@@ -403,25 +407,25 @@ 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: false
/@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: false
/@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: false
- /@babel/helper-string-parser@7.23.4:
- resolution: {integrity: sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ==}
+ /@babel/helper-string-parser@7.24.1:
+ resolution: {integrity: sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==}
engines: {node: '>=6.9.0'}
dev: false
@@ -440,880 +444,880 @@ 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: false
- /@babel/helpers@7.23.8:
- resolution: {integrity: sha512-KDqYz4PiOWvDFrdHLPhKtCThtIcKVy6avWD2oG4GEvyQ+XDZwHD4YQd+H2vNMnq2rkdxsDkU82T+Vk8U/WXHRQ==}
+ /@babel/helpers@7.24.1:
+ resolution: {integrity: sha512-BpU09QqEe6ZCHuIHFphEFgvNSrubve1FtyMton26ekZ85gRGi6LrTF7zArARp2YvyFxloeiRmtSCq5sjh1WqIg==}
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.1
+ '@babel/types': 7.24.0
transitivePeerDependencies:
- supports-color
dev: false
- /@babel/highlight@7.23.4:
- resolution: {integrity: sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==}
+ /@babel/highlight@7.24.2:
+ resolution: {integrity: sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==}
engines: {node: '>=6.9.0'}
dependencies:
'@babel/helper-validator-identifier': 7.22.20
chalk: 2.4.2
js-tokens: 4.0.0
+ picocolors: 1.0.0
dev: false
- /@babel/parser@7.23.6:
- resolution: {integrity: sha512-Z2uID7YJ7oNvAI20O9X0bblw7Qqs8Q2hFy0R9tAfnfLkp5MW0UH9eUvnDSnFwKZ0AvgS1ucqR4KzvVHgnke1VQ==}
+ /@babel/parser@7.24.1:
+ resolution: {integrity: sha512-Zo9c7N3xdOIQrNip7Lc9wvRPzlRtovHVE4lkz8WEDr7uYh/GMQhSiIgFxGIArRHYdJE5kxtZjAf8rT0xhdLCzg==}
engines: {node: '>=6.0.0'}
hasBin: true
dependencies:
- '@babel/types': 7.23.6
+ '@babel/types': 7.24.0
dev: false
- /@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.23.3(@babel/core@7.23.7):
- resolution: {integrity: sha512-iRkKcCqb7iGnq9+3G6rZ+Ciz5VywC4XNRHe57lKM+jOeYAoR0lVqdeeDRfh0tQcTfw/+vBhHn926FmQhLtlFLQ==}
+ /@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.24.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-y4HqEnkelJIOQGd+3g1bTeKsA5c6qM7eOn7VggGVbBc0y8MLSKHacwcIE2PplNlQSj0PqS9rrXL/nkPVK+kUNg==}
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.3
+ '@babel/helper-plugin-utils': 7.24.0
dev: false
- /@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.23.3(@babel/core@7.23.7):
- resolution: {integrity: sha512-WwlxbfMNdVEpQjZmK5mhm7oSwD3dS6eU+Iwsi4Knl9wAletWem7kaRsGOG+8UEbRyqxY4SS5zvtfXwX+jMxUwQ==}
+ /@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.24.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-Hj791Ii4ci8HqnaKHAlLNs+zaLXb0EzSDhiAWp5VNlyvCNymYfacs64pxTxbH1znW/NcArSmwpmG9IKE/TUVVQ==}
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.3
+ '@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.24.1(@babel/core@7.24.3)
dev: false
- /@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.23.7(@babel/core@7.23.7):
- resolution: {integrity: sha512-LlRT7HgaifEpQA1ZgLVOIJZZFVPWN5iReq/7/JixwBtwcoeVGDBD53ZV28rrsLYOZs1Y/EHhA8N/Z6aazHR8cw==}
+ /@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.24.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-m9m/fXsXLiHfwdgydIFnpk+7jlVbnvlK5B2EKiPdLUb6WX654ZaaEWJUjk8TftRbZpK0XibovlLWX4KIZhV6jw==}
engines: {node: '>=6.9.0'}
peerDependencies:
'@babel/core': ^7.0.0
dependencies:
- '@babel/core': 7.23.7
+ '@babel/core': 7.24.3
'@babel/helper-environment-visitor': 7.22.20
- '@babel/helper-plugin-utils': 7.22.5
+ '@babel/helper-plugin-utils': 7.24.0
dev: false
- /@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.3):
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.3
dev: false
- /@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.3):
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.3
+ '@babel/helper-plugin-utils': 7.24.0
dev: false
- /@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.3):
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.3
+ '@babel/helper-plugin-utils': 7.24.0
dev: false
- /@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.3):
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.3
+ '@babel/helper-plugin-utils': 7.24.0
dev: false
- /@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.3):
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.3
+ '@babel/helper-plugin-utils': 7.24.0
dev: false
- /@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.3):
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.3
+ '@babel/helper-plugin-utils': 7.24.0
dev: false
- /@babel/plugin-syntax-import-assertions@7.23.3(@babel/core@7.23.7):
- resolution: {integrity: sha512-lPgDSU+SJLK3xmFDTV2ZRQAiM7UuUjGidwBywFavObCiZc1BeAAcMtHJKUya92hPHO+at63JJPLygilZard8jw==}
+ /@babel/plugin-syntax-import-assertions@7.24.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-IuwnI5XnuF189t91XbxmXeCDz3qs6iDRO7GJ++wcfgeXNs/8FmIlKcpDSXNVyuLQxlwvskmI3Ct73wUODkJBlQ==}
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.3
+ '@babel/helper-plugin-utils': 7.24.0
dev: false
- /@babel/plugin-syntax-import-attributes@7.23.3(@babel/core@7.23.7):
- resolution: {integrity: sha512-pawnE0P9g10xgoP7yKr6CK63K2FMsTE+FZidZO/1PwRdzmAPVs+HS1mAURUsgaoxammTJvULUdIkEK0gOcU2tA==}
+ /@babel/plugin-syntax-import-attributes@7.24.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-zhQTMH0X2nVLnb04tz+s7AMuasX8U0FnpE+nHTOhSOINjWMnopoZTxtIKsd45n4GQ/HIZLyfIpoul8e2m0DnRA==}
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.3
+ '@babel/helper-plugin-utils': 7.24.0
dev: false
- /@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.3):
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.3
+ '@babel/helper-plugin-utils': 7.24.0
dev: false
- /@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.3):
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.3
+ '@babel/helper-plugin-utils': 7.24.0
dev: false
- /@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.3):
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.3
+ '@babel/helper-plugin-utils': 7.24.0
dev: false
- /@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.3):
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.3
+ '@babel/helper-plugin-utils': 7.24.0
dev: false
- /@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.3):
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.3
+ '@babel/helper-plugin-utils': 7.24.0
dev: false
- /@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.3):
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.3
+ '@babel/helper-plugin-utils': 7.24.0
dev: false
- /@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.3):
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.3
+ '@babel/helper-plugin-utils': 7.24.0
dev: false
- /@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.3):
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.3
+ '@babel/helper-plugin-utils': 7.24.0
dev: false
- /@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.3):
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.3
+ '@babel/helper-plugin-utils': 7.24.0
dev: false
- /@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.3):
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.3
+ '@babel/helper-plugin-utils': 7.24.0
dev: false
- /@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.3):
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.3
+ '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.3)
+ '@babel/helper-plugin-utils': 7.24.0
dev: false
- /@babel/plugin-transform-arrow-functions@7.23.3(@babel/core@7.23.7):
- resolution: {integrity: sha512-NzQcQrzaQPkaEwoTm4Mhyl8jI1huEL/WWIEvudjTCMJ9aBZNpsJbMASx7EQECtQQPS/DcnFpo0FIh3LvEO9cxQ==}
+ /@babel/plugin-transform-arrow-functions@7.24.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-ngT/3NkRhsaep9ck9uj2Xhv9+xB1zShY3tM3g6om4xxCELwCDN4g4Aq5dRn48+0hasAql7s2hdBOysCfNpr4fw==}
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.3
+ '@babel/helper-plugin-utils': 7.24.0
dev: false
- /@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.24.3(@babel/core@7.24.3):
+ resolution: {integrity: sha512-Qe26CMYVjpQxJ8zxM1340JFNjZaF+ISWpr1Kt/jGo+ZTUzKkfw/pphEWbRCb+lmSM6k/TOgfYLvmbHkUQ0asIg==}
engines: {node: '>=6.9.0'}
peerDependencies:
'@babel/core': ^7.0.0-0
dependencies:
- '@babel/core': 7.23.7
+ '@babel/core': 7.24.3
'@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.3)
+ '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.24.3)
dev: false
- /@babel/plugin-transform-async-to-generator@7.23.3(@babel/core@7.23.7):
- resolution: {integrity: sha512-A7LFsKi4U4fomjqXJlZg/u0ft/n8/7n7lpffUP/ZULx/DtV9SGlNKZolHH6PE8Xl1ngCc0M11OaeZptXVkfKSw==}
+ /@babel/plugin-transform-async-to-generator@7.24.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-AawPptitRXp1y0n4ilKcGbRYWfbbzFWz2NqNu7dacYDtFtz0CMjG64b3LQsb3KIgnf4/obcUL78hfaOS7iCUfw==}
engines: {node: '>=6.9.0'}
peerDependencies:
'@babel/core': ^7.0.0-0
dependencies:
- '@babel/core': 7.23.7
- '@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/core': 7.24.3
+ '@babel/helper-module-imports': 7.24.3
+ '@babel/helper-plugin-utils': 7.24.0
+ '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.24.3)
dev: false
- /@babel/plugin-transform-block-scoped-functions@7.23.3(@babel/core@7.23.7):
- resolution: {integrity: sha512-vI+0sIaPIO6CNuM9Kk5VmXcMVRiOpDh7w2zZt9GXzmE/9KD70CUEVhvPR/etAeNK/FAEkhxQtXOzVF3EuRL41A==}
+ /@babel/plugin-transform-block-scoped-functions@7.24.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-TWWC18OShZutrv9C6mye1xwtam+uNi2bnTOCBUd5sZxyHOiWbU6ztSROofIMrK84uweEZC219POICK/sTYwfgg==}
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.3
+ '@babel/helper-plugin-utils': 7.24.0
dev: false
- /@babel/plugin-transform-block-scoping@7.23.4(@babel/core@7.23.7):
- resolution: {integrity: sha512-0QqbP6B6HOh7/8iNR4CQU2Th/bbRtBp4KS9vcaZd1fZ0wSh5Fyssg0UCIHwxh+ka+pNDREbVLQnHCMHKZfPwfw==}
+ /@babel/plugin-transform-block-scoping@7.24.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-h71T2QQvDgM2SmT29UYU6ozjMlAt7s7CSs5Hvy8f8cf/GM/Z4a2zMfN+fjVGaieeCrXR3EdQl6C4gQG+OgmbKw==}
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.3
+ '@babel/helper-plugin-utils': 7.24.0
dev: false
- /@babel/plugin-transform-class-properties@7.23.3(@babel/core@7.23.7):
- resolution: {integrity: sha512-uM+AN8yCIjDPccsKGlw271xjJtGii+xQIF/uMPS8H15L12jZTsLfF4o5vNO7d/oUguOyfdikHGc/yi9ge4SGIg==}
+ /@babel/plugin-transform-class-properties@7.24.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-OMLCXi0NqvJfORTaPQBwqLXHhb93wkBKZ4aNwMl6WtehO7ar+cmp+89iPEQPqxAnxsOKTaMcs3POz3rKayJ72g==}
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.3
+ '@babel/helper-create-class-features-plugin': 7.24.1(@babel/core@7.24.3)
+ '@babel/helper-plugin-utils': 7.24.0
dev: false
- /@babel/plugin-transform-class-static-block@7.23.4(@babel/core@7.23.7):
- resolution: {integrity: sha512-nsWu/1M+ggti1SOALj3hfx5FXzAY06fwPJsUZD4/A5e1bWi46VUIWtD+kOX6/IdhXGsXBWllLFDSnqSCdUNydQ==}
+ /@babel/plugin-transform-class-static-block@7.24.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-FUHlKCn6J3ERiu8Dv+4eoz7w8+kFLSyeVG4vDAikwADGjUCoHw/JHokyGtr8OR4UjpwPVivyF+h8Q5iv/JmrtA==}
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.3
+ '@babel/helper-create-class-features-plugin': 7.24.1(@babel/core@7.24.3)
+ '@babel/helper-plugin-utils': 7.24.0
+ '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.24.3)
dev: false
- /@babel/plugin-transform-classes@7.23.8(@babel/core@7.23.7):
- resolution: {integrity: sha512-yAYslGsY1bX6Knmg46RjiCiNSwJKv2IUC8qOdYKqMMr0491SXFhcHqOdRDeCRohOOIzwN/90C6mQ9qAKgrP7dg==}
+ /@babel/plugin-transform-classes@7.24.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-ZTIe3W7UejJd3/3R4p7ScyyOoafetUShSf4kCqV0O7F/RiHxVj/wRaRnQlrGwflvcehNA8M42HkAiEDYZu2F1Q==}
engines: {node: '>=6.9.0'}
peerDependencies:
'@babel/core': ^7.0.0-0
dependencies:
- '@babel/core': 7.23.7
+ '@babel/core': 7.24.3
'@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-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.24.1(@babel/core@7.24.3)
'@babel/helper-split-export-declaration': 7.22.6
globals: 11.12.0
dev: false
- /@babel/plugin-transform-computed-properties@7.23.3(@babel/core@7.23.7):
- resolution: {integrity: sha512-dTj83UVTLw/+nbiHqQSFdwO9CbTtwq1DsDqm3CUEtDrZNET5rT5E6bIdTlOftDTDLMYxvxHNEYO4B9SLl8SLZw==}
+ /@babel/plugin-transform-computed-properties@7.24.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-5pJGVIUfJpOS+pAqBQd+QMaTD2vCL/HcePooON6pDpHgRp4gNRmzyHTPIkXntwKsq3ayUFVfJaIKPw2pOkOcTw==}
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.3
+ '@babel/helper-plugin-utils': 7.24.0
+ '@babel/template': 7.24.0
dev: false
- /@babel/plugin-transform-destructuring@7.23.3(@babel/core@7.23.7):
- resolution: {integrity: sha512-n225npDqjDIr967cMScVKHXJs7rout1q+tt50inyBCPkyZ8KxeI6d+GIbSBTT/w/9WdlWDOej3V9HE5Lgk57gw==}
+ /@babel/plugin-transform-destructuring@7.24.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-ow8jciWqNxR3RYbSNVuF4U2Jx130nwnBnhRw6N6h1bOejNkABmcI5X5oz29K4alWX7vf1C+o6gtKXikzRKkVdw==}
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.3
+ '@babel/helper-plugin-utils': 7.24.0
dev: false
- /@babel/plugin-transform-dotall-regex@7.23.3(@babel/core@7.23.7):
- resolution: {integrity: sha512-vgnFYDHAKzFaTVp+mneDsIEbnJ2Np/9ng9iviHw3P/KVcgONxpNULEW/51Z/BaFojG2GI2GwwXck5uV1+1NOYQ==}
+ /@babel/plugin-transform-dotall-regex@7.24.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-p7uUxgSoZwZ2lPNMzUkqCts3xlp8n+o05ikjy7gbtFJSt9gdU88jAmtfmOxHM14noQXBxfgzf2yRWECiNVhTCw==}
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.3
+ '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.3)
+ '@babel/helper-plugin-utils': 7.24.0
dev: false
- /@babel/plugin-transform-duplicate-keys@7.23.3(@babel/core@7.23.7):
- resolution: {integrity: sha512-RrqQ+BQmU3Oyav3J+7/myfvRCq7Tbz+kKLLshUmMwNlDHExbGL7ARhajvoBJEvc+fCguPPu887N+3RRXBVKZUA==}
+ /@babel/plugin-transform-duplicate-keys@7.24.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-msyzuUnvsjsaSaocV6L7ErfNsa5nDWL1XKNnDePLgmz+WdU4w/J8+AxBMrWfi9m4IxfL5sZQKUPQKDQeeAT6lA==}
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.3
+ '@babel/helper-plugin-utils': 7.24.0
dev: false
- /@babel/plugin-transform-dynamic-import@7.23.4(@babel/core@7.23.7):
- resolution: {integrity: sha512-V6jIbLhdJK86MaLh4Jpghi8ho5fGzt3imHOBu/x0jlBaPYqDoWz4RDXjmMOfnh+JWNaQleEAByZLV0QzBT4YQQ==}
+ /@babel/plugin-transform-dynamic-import@7.24.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-av2gdSTyXcJVdI+8aFZsCAtR29xJt0S5tas+Ef8NvBNmD1a+N/3ecMLeMBgfcK+xzsjdLDT6oHt+DFPyeqUbDA==}
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.3
+ '@babel/helper-plugin-utils': 7.24.0
+ '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.24.3)
dev: false
- /@babel/plugin-transform-exponentiation-operator@7.23.3(@babel/core@7.23.7):
- resolution: {integrity: sha512-5fhCsl1odX96u7ILKHBj4/Y8vipoqwsJMh4csSA8qFfxrZDEA4Ssku2DyNvMJSmZNOEBT750LfFPbtrnTP90BQ==}
+ /@babel/plugin-transform-exponentiation-operator@7.24.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-U1yX13dVBSwS23DEAqU+Z/PkwE9/m7QQy8Y9/+Tdb8UWYaGNDYwTLi19wqIAiROr8sXVum9A/rtiH5H0boUcTw==}
engines: {node: '>=6.9.0'}
peerDependencies:
'@babel/core': ^7.0.0-0
dependencies:
- '@babel/core': 7.23.7
+ '@babel/core': 7.24.3
'@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: false
- /@babel/plugin-transform-export-namespace-from@7.23.4(@babel/core@7.23.7):
- resolution: {integrity: sha512-GzuSBcKkx62dGzZI1WVgTWvkkz84FZO5TC5T8dl/Tht/rAla6Dg/Mz9Yhypg+ezVACf/rgDuQt3kbWEv7LdUDQ==}
+ /@babel/plugin-transform-export-namespace-from@7.24.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-Ft38m/KFOyzKw2UaJFkWG9QnHPG/Q/2SkOrRk4pNBPg5IPZ+dOxcmkK5IyuBcxiNPyyYowPGUReyBvrvZs7IlQ==}
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.3
+ '@babel/helper-plugin-utils': 7.24.0
+ '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.24.3)
dev: false
- /@babel/plugin-transform-for-of@7.23.6(@babel/core@7.23.7):
- resolution: {integrity: sha512-aYH4ytZ0qSuBbpfhuofbg/e96oQ7U2w1Aw/UQmKT+1l39uEhUPoFS3fHevDc1G0OvewyDudfMKY1OulczHzWIw==}
+ /@babel/plugin-transform-for-of@7.24.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-OxBdcnF04bpdQdR3i4giHZNZQn7cm8RQKcSwA17wAAqEELo1ZOwp5FFgeptWUQXFyT9kwHo10aqqauYkRZPCAg==}
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.3
+ '@babel/helper-plugin-utils': 7.24.0
'@babel/helper-skip-transparent-expression-wrappers': 7.22.5
dev: false
- /@babel/plugin-transform-function-name@7.23.3(@babel/core@7.23.7):
- resolution: {integrity: sha512-I1QXp1LxIvt8yLaib49dRW5Okt7Q4oaxao6tFVKS/anCdEOMtYwWVKoiOA1p34GOWIZjUK0E+zCp7+l1pfQyiw==}
+ /@babel/plugin-transform-function-name@7.24.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-BXmDZpPlh7jwicKArQASrj8n22/w6iymRnvHYYd2zO30DbE277JO20/7yXJT3QxDPtiQiOxQBbZH4TpivNXIxA==}
engines: {node: '>=6.9.0'}
peerDependencies:
'@babel/core': ^7.0.0-0
dependencies:
- '@babel/core': 7.23.7
+ '@babel/core': 7.24.3
'@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: false
- /@babel/plugin-transform-json-strings@7.23.4(@babel/core@7.23.7):
- resolution: {integrity: sha512-81nTOqM1dMwZ/aRXQ59zVubN9wHGqk6UtqRK+/q+ciXmRy8fSolhGVvG09HHRGo4l6fr/c4ZhXUQH0uFW7PZbg==}
+ /@babel/plugin-transform-json-strings@7.24.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-U7RMFmRvoasscrIFy5xA4gIp8iWnWubnKkKuUGJjsuOH7GfbMkB+XZzeslx2kLdEGdOJDamEmCqOks6e8nv8DQ==}
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.3
+ '@babel/helper-plugin-utils': 7.24.0
+ '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.24.3)
dev: false
- /@babel/plugin-transform-literals@7.23.3(@babel/core@7.23.7):
- resolution: {integrity: sha512-wZ0PIXRxnwZvl9AYpqNUxpZ5BiTGrYt7kueGQ+N5FiQ7RCOD4cm8iShd6S6ggfVIWaJf2EMk8eRzAh52RfP4rQ==}
+ /@babel/plugin-transform-literals@7.24.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-zn9pwz8U7nCqOYIiBaOxoQOtYmMODXTJnkxG4AtX8fPmnCRYWBOHD0qcpwS9e2VDSp1zNJYpdnFMIKb8jmwu6g==}
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.3
+ '@babel/helper-plugin-utils': 7.24.0
dev: false
- /@babel/plugin-transform-logical-assignment-operators@7.23.4(@babel/core@7.23.7):
- resolution: {integrity: sha512-Mc/ALf1rmZTP4JKKEhUwiORU+vcfarFVLfcFiolKUo6sewoxSEgl36ak5t+4WamRsNr6nzjZXQjM35WsU+9vbg==}
+ /@babel/plugin-transform-logical-assignment-operators@7.24.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-OhN6J4Bpz+hIBqItTeWJujDOfNP+unqv/NJgyhlpSqgBTPm37KkMmZV6SYcOj+pnDbdcl1qRGV/ZiIjX9Iy34w==}
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.3
+ '@babel/helper-plugin-utils': 7.24.0
+ '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.24.3)
dev: false
- /@babel/plugin-transform-member-expression-literals@7.23.3(@babel/core@7.23.7):
- resolution: {integrity: sha512-sC3LdDBDi5x96LA+Ytekz2ZPk8i/Ck+DEuDbRAll5rknJ5XRTSaPKEYwomLcs1AA8wg9b3KjIQRsnApj+q51Ag==}
+ /@babel/plugin-transform-member-expression-literals@7.24.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-4ojai0KysTWXzHseJKa1XPNXKRbuUrhkOPY4rEGeR+7ChlJVKxFa3H3Bz+7tWaGKgJAXUWKOGmltN+u9B3+CVg==}
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.3
+ '@babel/helper-plugin-utils': 7.24.0
dev: false
- /@babel/plugin-transform-modules-amd@7.23.3(@babel/core@7.23.7):
- resolution: {integrity: sha512-vJYQGxeKM4t8hYCKVBlZX/gtIY2I7mRGFNcm85sgXGMTBcoV3QdVtdpbcWEbzbfUIUZKwvgFT82mRvaQIebZzw==}
+ /@babel/plugin-transform-modules-amd@7.24.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-lAxNHi4HVtjnHd5Rxg3D5t99Xm6H7b04hUS7EHIXcUl2EV4yl1gWdqZrNzXnSrHveL9qMdbODlLF55mvgjAfaQ==}
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.3
+ '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.3)
+ '@babel/helper-plugin-utils': 7.24.0
dev: false
- /@babel/plugin-transform-modules-commonjs@7.23.3(@babel/core@7.23.7):
- resolution: {integrity: sha512-aVS0F65LKsdNOtcz6FRCpE4OgsP2OFnW46qNxNIX9h3wuzaNcSQsJysuMwqSibC98HPrf2vCgtxKNwS0DAlgcA==}
+ /@babel/plugin-transform-modules-commonjs@7.24.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-szog8fFTUxBfw0b98gEWPaEqF42ZUD/T3bkynW/wtgx2p/XCP55WEsb+VosKceRSd6njipdZvNogqdtI4Q0chw==}
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.3
+ '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.3)
+ '@babel/helper-plugin-utils': 7.24.0
'@babel/helper-simple-access': 7.22.5
dev: false
- /@babel/plugin-transform-modules-systemjs@7.23.3(@babel/core@7.23.7):
- resolution: {integrity: sha512-ZxyKGTkF9xT9YJuKQRo19ewf3pXpopuYQd8cDXqNzc3mUNbOME0RKMoZxviQk74hwzfQsEe66dE92MaZbdHKNQ==}
+ /@babel/plugin-transform-modules-systemjs@7.24.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-mqQ3Zh9vFO1Tpmlt8QPnbwGHzNz3lpNEMxQb1kAemn/erstyqw1r9KeOlOfo3y6xAnFEcOv2tSyrXfmMk+/YZA==}
engines: {node: '>=6.9.0'}
peerDependencies:
'@babel/core': ^7.0.0-0
dependencies:
- '@babel/core': 7.23.7
+ '@babel/core': 7.24.3
'@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.3)
+ '@babel/helper-plugin-utils': 7.24.0
'@babel/helper-validator-identifier': 7.22.20
dev: false
- /@babel/plugin-transform-modules-umd@7.23.3(@babel/core@7.23.7):
- resolution: {integrity: sha512-zHsy9iXX2nIsCBFPud3jKn1IRPWg3Ing1qOZgeKV39m1ZgIdpJqvlWVeiHBZC6ITRG0MfskhYe9cLgntfSFPIg==}
+ /@babel/plugin-transform-modules-umd@7.24.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-tuA3lpPj+5ITfcCluy6nWonSL7RvaG0AOTeAuvXqEKS34lnLzXpDb0dcP6K8jD0zWZFNDVly90AGFJPnm4fOYg==}
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.3
+ '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.3)
+ '@babel/helper-plugin-utils': 7.24.0
dev: false
- /@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.3):
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.3
+ '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.3)
+ '@babel/helper-plugin-utils': 7.24.0
dev: false
- /@babel/plugin-transform-new-target@7.23.3(@babel/core@7.23.7):
- resolution: {integrity: sha512-YJ3xKqtJMAT5/TIZnpAR3I+K+WaDowYbN3xyxI8zxx/Gsypwf9B9h0VB+1Nh6ACAAPRS5NSRje0uVv5i79HYGQ==}
+ /@babel/plugin-transform-new-target@7.24.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-/rurytBM34hYy0HKZQyA0nHbQgQNFm4Q/BOc9Hflxi2X3twRof7NaE5W46j4kQitm7SvACVRXsa6N/tSZxvPug==}
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.3
+ '@babel/helper-plugin-utils': 7.24.0
dev: false
- /@babel/plugin-transform-nullish-coalescing-operator@7.23.4(@babel/core@7.23.7):
- resolution: {integrity: sha512-jHE9EVVqHKAQx+VePv5LLGHjmHSJR76vawFPTdlxR/LVJPfOEGxREQwQfjuZEOPTwG92X3LINSh3M40Rv4zpVA==}
+ /@babel/plugin-transform-nullish-coalescing-operator@7.24.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-iQ+caew8wRrhCikO5DrUYx0mrmdhkaELgFa+7baMcVuhxIkN7oxt06CZ51D65ugIb1UWRQ8oQe+HXAVM6qHFjw==}
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.3
+ '@babel/helper-plugin-utils': 7.24.0
+ '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.24.3)
dev: false
- /@babel/plugin-transform-numeric-separator@7.23.4(@babel/core@7.23.7):
- resolution: {integrity: sha512-mps6auzgwjRrwKEZA05cOwuDc9FAzoyFS4ZsG/8F43bTLf/TgkJg7QXOrPO1JO599iA3qgK9MXdMGOEC8O1h6Q==}
+ /@babel/plugin-transform-numeric-separator@7.24.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-7GAsGlK4cNL2OExJH1DzmDeKnRv/LXq0eLUSvudrehVA5Rgg4bIrqEUW29FbKMBRT0ztSqisv7kjP+XIC4ZMNw==}
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.3
+ '@babel/helper-plugin-utils': 7.24.0
+ '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.24.3)
dev: false
- /@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.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-XjD5f0YqOtebto4HGISLNfiNMTTs6tbkFf2TOqJlYKYmbo+mN9Dnpl4SRoofiziuOWMIyq3sZEUqLo3hLITFEA==}
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.3
'@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.3)
+ '@babel/plugin-transform-parameters': 7.24.1(@babel/core@7.24.3)
dev: false
- /@babel/plugin-transform-object-super@7.23.3(@babel/core@7.23.7):
- resolution: {integrity: sha512-BwQ8q0x2JG+3lxCVFohg+KbQM7plfpBwThdW9A6TMtWwLsbDA01Ek2Zb/AgDN39BiZsExm4qrXxjk+P1/fzGrA==}
+ /@babel/plugin-transform-object-super@7.24.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-oKJqR3TeI5hSLRxudMjFQ9re9fBVUU0GICqM3J1mi8MqlhVr6hC/ZN4ttAyMuQR6EZZIY6h/exe5swqGNNIkWQ==}
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.3
+ '@babel/helper-plugin-utils': 7.24.0
+ '@babel/helper-replace-supers': 7.24.1(@babel/core@7.24.3)
dev: false
- /@babel/plugin-transform-optional-catch-binding@7.23.4(@babel/core@7.23.7):
- resolution: {integrity: sha512-XIq8t0rJPHf6Wvmbn9nFxU6ao4c7WhghTR5WyV8SrJfUFzyxhCm4nhC+iAp3HFhbAKLfYpgzhJ6t4XCtVwqO5A==}
+ /@babel/plugin-transform-optional-catch-binding@7.24.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-oBTH7oURV4Y+3EUrf6cWn1OHio3qG/PVwO5J03iSJmBg6m2EhKjkAu/xuaXaYwWW9miYtvbWv4LNf0AmR43LUA==}
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.3
+ '@babel/helper-plugin-utils': 7.24.0
+ '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.24.3)
dev: false
- /@babel/plugin-transform-optional-chaining@7.23.4(@babel/core@7.23.7):
- resolution: {integrity: sha512-ZU8y5zWOfjM5vZ+asjgAPwDaBjJzgufjES89Rs4Lpq63O300R/kOz30WCLo6BxxX6QVEilwSlpClnG5cZaikTA==}
+ /@babel/plugin-transform-optional-chaining@7.24.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-n03wmDt+987qXwAgcBlnUUivrZBPZ8z1plL0YvgQalLm+ZE5BMhGm94jhxXtA1wzv1Cu2aaOv1BM9vbVttrzSg==}
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.3
+ '@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.3)
dev: false
- /@babel/plugin-transform-parameters@7.23.3(@babel/core@7.23.7):
- resolution: {integrity: sha512-09lMt6UsUb3/34BbECKVbVwrT9bO6lILWln237z7sLaWnMsTi7Yc9fhX5DLpkJzAGfaReXI22wP41SZmnAA3Vw==}
+ /@babel/plugin-transform-parameters@7.24.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-8Jl6V24g+Uw5OGPeWNKrKqXPDw2YDjLc53ojwfMcKwlEoETKU9rU0mHUtcg9JntWI/QYzGAXNWEcVHZ+fR+XXg==}
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.3
+ '@babel/helper-plugin-utils': 7.24.0
dev: false
- /@babel/plugin-transform-private-methods@7.23.3(@babel/core@7.23.7):
- resolution: {integrity: sha512-UzqRcRtWsDMTLrRWFvUBDwmw06tCQH9Rl1uAjfh6ijMSmGYQ+fpdB+cnqRC8EMh5tuuxSv0/TejGL+7vyj+50g==}
+ /@babel/plugin-transform-private-methods@7.24.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-tGvisebwBO5em4PaYNqt4fkw56K2VALsAbAakY0FjTYqJp7gfdrgr7YX76Or8/cpik0W6+tj3rZ0uHU9Oil4tw==}
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.3
+ '@babel/helper-create-class-features-plugin': 7.24.1(@babel/core@7.24.3)
+ '@babel/helper-plugin-utils': 7.24.0
dev: false
- /@babel/plugin-transform-private-property-in-object@7.23.4(@babel/core@7.23.7):
- resolution: {integrity: sha512-9G3K1YqTq3F4Vt88Djx1UZ79PDyj+yKRnUy7cZGSMe+a7jkwD259uKKuUzQlPkGam7R+8RJwh5z4xO27fA1o2A==}
+ /@babel/plugin-transform-private-property-in-object@7.24.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-pTHxDVa0BpUbvAgX3Gat+7cSciXqUcY9j2VZKTbSB6+VQGpNgNO9ailxTGHSXlqOnX1Hcx1Enme2+yv7VqP9bg==}
engines: {node: '>=6.9.0'}
peerDependencies:
'@babel/core': ^7.0.0-0
dependencies:
- '@babel/core': 7.23.7
+ '@babel/core': 7.24.3
'@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.1(@babel/core@7.24.3)
+ '@babel/helper-plugin-utils': 7.24.0
+ '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.24.3)
dev: false
- /@babel/plugin-transform-property-literals@7.23.3(@babel/core@7.23.7):
- resolution: {integrity: sha512-jR3Jn3y7cZp4oEWPFAlRsSWjxKe4PZILGBSd4nis1TsC5qeSpb+nrtihJuDhNI7QHiVbUaiXa0X2RZY3/TI6Nw==}
+ /@babel/plugin-transform-property-literals@7.24.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-LetvD7CrHmEx0G442gOomRr66d7q8HzzGGr4PMHGr+5YIm6++Yke+jxj246rpvsbyhJwCLxcTn6zW1P1BSenqA==}
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.3
+ '@babel/helper-plugin-utils': 7.24.0
dev: false
- /@babel/plugin-transform-regenerator@7.23.3(@babel/core@7.23.7):
- resolution: {integrity: sha512-KP+75h0KghBMcVpuKisx3XTu9Ncut8Q8TuvGO4IhY+9D5DFEckQefOuIsB/gQ2tG71lCke4NMrtIPS8pOj18BQ==}
+ /@babel/plugin-transform-regenerator@7.24.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-sJwZBCzIBE4t+5Q4IGLaaun5ExVMRY0lYwos/jNecjMrVCygCdph3IKv0tkP5Fc87e/1+bebAmEAGBfnRD+cnw==}
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.3
+ '@babel/helper-plugin-utils': 7.24.0
regenerator-transform: 0.15.2
dev: false
- /@babel/plugin-transform-reserved-words@7.23.3(@babel/core@7.23.7):
- resolution: {integrity: sha512-QnNTazY54YqgGxwIexMZva9gqbPa15t/x9VS+0fsEFWplwVpXYZivtgl43Z1vMpc1bdPP2PP8siFeVcnFvA3Cg==}
+ /@babel/plugin-transform-reserved-words@7.24.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-JAclqStUfIwKN15HrsQADFgeZt+wexNQ0uLhuqvqAUFoqPMjEcFCYZBhq0LUdz6dZK/mD+rErhW71fbx8RYElg==}
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.3
+ '@babel/helper-plugin-utils': 7.24.0
dev: false
- /@babel/plugin-transform-shorthand-properties@7.23.3(@babel/core@7.23.7):
- resolution: {integrity: sha512-ED2fgqZLmexWiN+YNFX26fx4gh5qHDhn1O2gvEhreLW2iI63Sqm4llRLCXALKrCnbN4Jy0VcMQZl/SAzqug/jg==}
+ /@babel/plugin-transform-shorthand-properties@7.24.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-LyjVB1nsJ6gTTUKRjRWx9C1s9hE7dLfP/knKdrfeH9UPtAGjYGgxIbFfx7xyLIEWs7Xe1Gnf8EWiUqfjLhInZA==}
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.3
+ '@babel/helper-plugin-utils': 7.24.0
dev: false
- /@babel/plugin-transform-spread@7.23.3(@babel/core@7.23.7):
- resolution: {integrity: sha512-VvfVYlrlBVu+77xVTOAoxQ6mZbnIq5FM0aGBSFEcIh03qHf+zNqA4DC/3XMUozTg7bZV3e3mZQ0i13VB6v5yUg==}
+ /@babel/plugin-transform-spread@7.24.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-KjmcIM+fxgY+KxPVbjelJC6hrH1CgtPmTvdXAfn3/a9CnWGSTY7nH4zm5+cjmWJybdcPSsD0++QssDsjcpe47g==}
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.3
+ '@babel/helper-plugin-utils': 7.24.0
'@babel/helper-skip-transparent-expression-wrappers': 7.22.5
dev: false
- /@babel/plugin-transform-sticky-regex@7.23.3(@babel/core@7.23.7):
- resolution: {integrity: sha512-HZOyN9g+rtvnOU3Yh7kSxXrKbzgrm5X4GncPY1QOquu7epga5MxKHVpYu2hvQnry/H+JjckSYRb93iNfsioAGg==}
+ /@babel/plugin-transform-sticky-regex@7.24.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-9v0f1bRXgPVcPrngOQvLXeGNNVLc8UjMVfebo9ka0WF3/7+aVUHmaJVT3sa0XCzEFioPfPHZiOcYG9qOsH63cw==}
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.3
+ '@babel/helper-plugin-utils': 7.24.0
dev: false
- /@babel/plugin-transform-template-literals@7.23.3(@babel/core@7.23.7):
- resolution: {integrity: sha512-Flok06AYNp7GV2oJPZZcP9vZdszev6vPBkHLwxwSpaIqx75wn6mUd3UFWsSsA0l8nXAKkyCmL/sR02m8RYGeHg==}
+ /@babel/plugin-transform-template-literals@7.24.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-WRkhROsNzriarqECASCNu/nojeXCDTE/F2HmRgOzi7NGvyfYGq1NEjKBK3ckLfRgGc6/lPAqP0vDOSw3YtG34g==}
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.3
+ '@babel/helper-plugin-utils': 7.24.0
dev: false
- /@babel/plugin-transform-typeof-symbol@7.23.3(@babel/core@7.23.7):
- resolution: {integrity: sha512-4t15ViVnaFdrPC74be1gXBSMzXk3B4Us9lP7uLRQHTFpV5Dvt33pn+2MyyNxmN3VTTm3oTrZVMUmuw3oBnQ2oQ==}
+ /@babel/plugin-transform-typeof-symbol@7.24.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-CBfU4l/A+KruSUoW+vTQthwcAdwuqbpRNB8HQKlZABwHRhsdHZ9fezp4Sn18PeAlYxTNiLMlx4xUBV3AWfg1BA==}
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.3
+ '@babel/helper-plugin-utils': 7.24.0
dev: false
- /@babel/plugin-transform-unicode-escapes@7.23.3(@babel/core@7.23.7):
- resolution: {integrity: sha512-OMCUx/bU6ChE3r4+ZdylEqAjaQgHAgipgW8nsCfu5pGqDcFytVd91AwRvUJSBZDz0exPGgnjoqhgRYLRjFZc9Q==}
+ /@babel/plugin-transform-unicode-escapes@7.24.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-RlkVIcWT4TLI96zM660S877E7beKlQw7Ig+wqkKBiWfj0zH5Q4h50q6er4wzZKRNSYpfo6ILJ+hrJAGSX2qcNw==}
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.3
+ '@babel/helper-plugin-utils': 7.24.0
dev: false
- /@babel/plugin-transform-unicode-property-regex@7.23.3(@babel/core@7.23.7):
- resolution: {integrity: sha512-KcLIm+pDZkWZQAFJ9pdfmh89EwVfmNovFBcXko8szpBeF8z68kWIPeKlmSOkT9BXJxs2C0uk+5LxoxIv62MROA==}
+ /@babel/plugin-transform-unicode-property-regex@7.24.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-Ss4VvlfYV5huWApFsF8/Sq0oXnGO+jB+rijFEFugTd3cwSObUSnUi88djgR5528Csl0uKlrI331kRqe56Ov2Ng==}
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.3
+ '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.3)
+ '@babel/helper-plugin-utils': 7.24.0
dev: false
- /@babel/plugin-transform-unicode-regex@7.23.3(@babel/core@7.23.7):
- resolution: {integrity: sha512-wMHpNA4x2cIA32b/ci3AfwNgheiva2W0WUKWTK7vBHBhDKfPsc5cFGNWm69WBqpwd86u1qwZ9PWevKqm1A3yAw==}
+ /@babel/plugin-transform-unicode-regex@7.24.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-2A/94wgZgxfTsiLaQ2E36XAOdcZmGAaEEgVmxQWwZXWkGhvoHbaqXcKnU8zny4ycpu3vNqg0L/PcCiYtHtA13g==}
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.3
+ '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.3)
+ '@babel/helper-plugin-utils': 7.24.0
dev: false
- /@babel/plugin-transform-unicode-sets-regex@7.23.3(@babel/core@7.23.7):
- resolution: {integrity: sha512-W7lliA/v9bNR83Qc3q1ip9CQMZ09CcHDbHfbLRDNuAhn1Mvkr1ZNF7hPmztMQvtTGVLJ9m8IZqWsTkXOml8dbw==}
+ /@babel/plugin-transform-unicode-sets-regex@7.24.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-fqj4WuzzS+ukpgerpAoOnMfQXwUHFxXUZUE84oL2Kao2N8uSlvcpnAidKASgsNgzZHBsHWvcm8s9FPWUhAb8fA==}
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.3
+ '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.3)
+ '@babel/helper-plugin-utils': 7.24.0
dev: false
- /@babel/preset-env@7.23.8(@babel/core@7.23.7):
- resolution: {integrity: sha512-lFlpmkApLkEP6woIKprO6DO60RImpatTQKtz4sUcDjVcK8M8mQ4sZsuxaTMNOZf0sqAq/ReYW1ZBHnOQwKpLWA==}
+ /@babel/preset-env@7.24.3(@babel/core@7.24.3):
+ resolution: {integrity: sha512-fSk430k5c2ff8536JcPvPWK4tZDwehWLGlBp0wrsBUjZVdeQV6lePbwKWZaZfK2vnh/1kQX1PzAJWsnBmVgGJA==}
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/compat-data': 7.24.1
+ '@babel/core': 7.24.3
'@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.8(@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.24.1(@babel/core@7.24.3)
+ '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.24.1(@babel/core@7.24.3)
+ '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly': 7.24.1(@babel/core@7.24.3)
+ '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.24.3)
+ '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.24.3)
+ '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.24.3)
+ '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.24.3)
+ '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.24.3)
+ '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.24.3)
+ '@babel/plugin-syntax-import-assertions': 7.24.1(@babel/core@7.24.3)
+ '@babel/plugin-syntax-import-attributes': 7.24.1(@babel/core@7.24.3)
+ '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.24.3)
+ '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.24.3)
+ '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.24.3)
+ '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.24.3)
+ '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.24.3)
+ '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.24.3)
+ '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.24.3)
+ '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.24.3)
+ '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.24.3)
+ '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.24.3)
+ '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.24.3)
+ '@babel/plugin-transform-arrow-functions': 7.24.1(@babel/core@7.24.3)
+ '@babel/plugin-transform-async-generator-functions': 7.24.3(@babel/core@7.24.3)
+ '@babel/plugin-transform-async-to-generator': 7.24.1(@babel/core@7.24.3)
+ '@babel/plugin-transform-block-scoped-functions': 7.24.1(@babel/core@7.24.3)
+ '@babel/plugin-transform-block-scoping': 7.24.1(@babel/core@7.24.3)
+ '@babel/plugin-transform-class-properties': 7.24.1(@babel/core@7.24.3)
+ '@babel/plugin-transform-class-static-block': 7.24.1(@babel/core@7.24.3)
+ '@babel/plugin-transform-classes': 7.24.1(@babel/core@7.24.3)
+ '@babel/plugin-transform-computed-properties': 7.24.1(@babel/core@7.24.3)
+ '@babel/plugin-transform-destructuring': 7.24.1(@babel/core@7.24.3)
+ '@babel/plugin-transform-dotall-regex': 7.24.1(@babel/core@7.24.3)
+ '@babel/plugin-transform-duplicate-keys': 7.24.1(@babel/core@7.24.3)
+ '@babel/plugin-transform-dynamic-import': 7.24.1(@babel/core@7.24.3)
+ '@babel/plugin-transform-exponentiation-operator': 7.24.1(@babel/core@7.24.3)
+ '@babel/plugin-transform-export-namespace-from': 7.24.1(@babel/core@7.24.3)
+ '@babel/plugin-transform-for-of': 7.24.1(@babel/core@7.24.3)
+ '@babel/plugin-transform-function-name': 7.24.1(@babel/core@7.24.3)
+ '@babel/plugin-transform-json-strings': 7.24.1(@babel/core@7.24.3)
+ '@babel/plugin-transform-literals': 7.24.1(@babel/core@7.24.3)
+ '@babel/plugin-transform-logical-assignment-operators': 7.24.1(@babel/core@7.24.3)
+ '@babel/plugin-transform-member-expression-literals': 7.24.1(@babel/core@7.24.3)
+ '@babel/plugin-transform-modules-amd': 7.24.1(@babel/core@7.24.3)
+ '@babel/plugin-transform-modules-commonjs': 7.24.1(@babel/core@7.24.3)
+ '@babel/plugin-transform-modules-systemjs': 7.24.1(@babel/core@7.24.3)
+ '@babel/plugin-transform-modules-umd': 7.24.1(@babel/core@7.24.3)
+ '@babel/plugin-transform-named-capturing-groups-regex': 7.22.5(@babel/core@7.24.3)
+ '@babel/plugin-transform-new-target': 7.24.1(@babel/core@7.24.3)
+ '@babel/plugin-transform-nullish-coalescing-operator': 7.24.1(@babel/core@7.24.3)
+ '@babel/plugin-transform-numeric-separator': 7.24.1(@babel/core@7.24.3)
+ '@babel/plugin-transform-object-rest-spread': 7.24.1(@babel/core@7.24.3)
+ '@babel/plugin-transform-object-super': 7.24.1(@babel/core@7.24.3)
+ '@babel/plugin-transform-optional-catch-binding': 7.24.1(@babel/core@7.24.3)
+ '@babel/plugin-transform-optional-chaining': 7.24.1(@babel/core@7.24.3)
+ '@babel/plugin-transform-parameters': 7.24.1(@babel/core@7.24.3)
+ '@babel/plugin-transform-private-methods': 7.24.1(@babel/core@7.24.3)
+ '@babel/plugin-transform-private-property-in-object': 7.24.1(@babel/core@7.24.3)
+ '@babel/plugin-transform-property-literals': 7.24.1(@babel/core@7.24.3)
+ '@babel/plugin-transform-regenerator': 7.24.1(@babel/core@7.24.3)
+ '@babel/plugin-transform-reserved-words': 7.24.1(@babel/core@7.24.3)
+ '@babel/plugin-transform-shorthand-properties': 7.24.1(@babel/core@7.24.3)
+ '@babel/plugin-transform-spread': 7.24.1(@babel/core@7.24.3)
+ '@babel/plugin-transform-sticky-regex': 7.24.1(@babel/core@7.24.3)
+ '@babel/plugin-transform-template-literals': 7.24.1(@babel/core@7.24.3)
+ '@babel/plugin-transform-typeof-symbol': 7.24.1(@babel/core@7.24.3)
+ '@babel/plugin-transform-unicode-escapes': 7.24.1(@babel/core@7.24.3)
+ '@babel/plugin-transform-unicode-property-regex': 7.24.1(@babel/core@7.24.3)
+ '@babel/plugin-transform-unicode-regex': 7.24.1(@babel/core@7.24.3)
+ '@babel/plugin-transform-unicode-sets-regex': 7.24.1(@babel/core@7.24.3)
+ '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.24.3)
+ babel-plugin-polyfill-corejs2: 0.4.10(@babel/core@7.24.3)
+ babel-plugin-polyfill-corejs3: 0.10.4(@babel/core@7.24.3)
+ babel-plugin-polyfill-regenerator: 0.6.1(@babel/core@7.24.3)
+ core-js-compat: 3.36.1
semver: 6.3.1
transitivePeerDependencies:
- supports-color
dev: false
- /@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.3):
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.3
+ '@babel/helper-plugin-utils': 7.24.0
+ '@babel/types': 7.24.0
esutils: 2.0.3
dev: false
@@ -1321,44 +1325,44 @@ packages:
resolution: {integrity: sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==}
dev: false
- /@babel/runtime@7.23.8:
- resolution: {integrity: sha512-Y7KbAP984rn1VGMbGqKmBLio9V7y5Je9GvU4rQPCPinCyNfUcToxIXl06d59URp/F3LwinvODxab5N/G6qggkw==}
+ /@babel/runtime@7.24.1:
+ resolution: {integrity: sha512-+BIznRzyqBf+2wCTxcKE3wDjfGeCoVE61KSHGpkzqrLi8qxqFwBeUFyId2cxkTmm55fzDGnm0+yCxaxygrLUnQ==}
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/code-frame': 7.24.2
+ '@babel/parser': 7.24.1
+ '@babel/types': 7.24.0
dev: false
- /@babel/traverse@7.23.7:
- resolution: {integrity: sha512-tY3mM8rH9jM0YHFGyfC0/xf+SB5eKUu7HPj7/k3fpi9dAlsMc5YbQvDi0Sh2QTPXqMhyaAtzAr807TIyfQrmyg==}
+ /@babel/traverse@7.24.1:
+ resolution: {integrity: sha512-xuU6o9m68KeqZbQuDt2TcKSxUw/mrsvavlEqQ1leZ/B+C9tk6E4sRWy97WaXgvq5E+nU3cXMxv3WKOCanVMCmQ==}
engines: {node: '>=6.9.0'}
dependencies:
- '@babel/code-frame': 7.23.5
- '@babel/generator': 7.23.6
+ '@babel/code-frame': 7.24.2
+ '@babel/generator': 7.24.1
'@babel/helper-environment-visitor': 7.22.20
'@babel/helper-function-name': 7.23.0
'@babel/helper-hoist-variables': 7.22.5
'@babel/helper-split-export-declaration': 7.22.6
- '@babel/parser': 7.23.6
- '@babel/types': 7.23.6
+ '@babel/parser': 7.24.1
+ '@babel/types': 7.24.0
debug: 4.3.4
globals: 11.12.0
transitivePeerDependencies:
- supports-color
dev: false
- /@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
+ '@babel/helper-string-parser': 7.24.1
'@babel/helper-validator-identifier': 7.22.20
to-fast-properties: 2.0.0
dev: false
@@ -1366,8 +1370,8 @@ packages:
/@emotion/babel-plugin@11.11.0:
resolution: {integrity: sha512-m4HEDZleaaCH+XgDDsPF15Ht6wTLsgDTeR3WYj9Q/k76JtWhrJjcP4+/XlG8LGT/Rol9qUfOIztXeA84ATpqPQ==}
dependencies:
- '@babel/helper-module-imports': 7.22.15
- '@babel/runtime': 7.23.8
+ '@babel/helper-module-imports': 7.24.3
+ '@babel/runtime': 7.24.1
'@emotion/hash': 0.9.1
'@emotion/memoize': 0.8.1
'@emotion/serialize': 1.1.3
@@ -1393,8 +1397,8 @@ packages:
resolution: {integrity: sha512-gJB6HLm5rYwSLI6PQa+X1t5CFGrv1J1TWG+sOyMCeKz2ojaj6Fnl/rZEspogG+cvqbt4AE/2eIyD2QfLKTBNlQ==}
dev: false
- /@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
@@ -1403,8 +1407,8 @@ packages:
resolution: {integrity: sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA==}
dev: false
- /@emotion/react@11.11.3(@types/react@18.2.48)(react@18.2.0):
- resolution: {integrity: sha512-Cnn0kuq4DoONOMcnoVsTOR8E+AdnKFf//6kUWc4LCdnxj31pZWn7rIULd6Y7/Js1PiPHzn7SKCM9vB/jBni8eA==}
+ /@emotion/react@11.11.4(@types/react@18.2.67)(react@18.2.0):
+ resolution: {integrity: sha512-t8AjMlF0gHpvvxk5mAtCqR4vmxiGHCeJBaQO6gncUSdklELOgtwjerNY2yuJNfwnc6vi16U/+uMF+afIawJ9iw==}
peerDependencies:
'@types/react': '*'
react: '>=16.8.0'
@@ -1412,14 +1416,14 @@ packages:
'@types/react':
optional: true
dependencies:
- '@babel/runtime': 7.23.8
+ '@babel/runtime': 7.24.1
'@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.48
+ '@types/react': 18.2.67
hoist-non-react-statics: 3.3.2
react: 18.2.0
dev: false
@@ -1438,7 +1442,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.48)(react@18.2.0):
+ /@emotion/styled@11.11.0(@emotion/react@11.11.4)(@types/react@18.2.67)(react@18.2.0):
resolution: {integrity: sha512-hM5Nnvu9P3midq5aaXj4I+lnSfNi7Pmd4EWk1fOZ3pxookaQTNew6bp4JaCBYM4HVFZF9g7UjJmsUmC2JlxOng==}
peerDependencies:
'@emotion/react': ^11.0.0-rc.0
@@ -1448,14 +1452,14 @@ packages:
'@types/react':
optional: true
dependencies:
- '@babel/runtime': 7.23.8
+ '@babel/runtime': 7.24.1
'@emotion/babel-plugin': 11.11.0
- '@emotion/is-prop-valid': 1.2.1
- '@emotion/react': 11.11.3(@types/react@18.2.48)(react@18.2.0)
+ '@emotion/is-prop-valid': 1.2.2
+ '@emotion/react': 11.11.4(@types/react@18.2.67)(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.48
+ '@types/react': 18.2.67
react: 18.2.0
dev: false
@@ -1677,13 +1681,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
@@ -1700,7 +1704,7 @@ packages:
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
@@ -1709,31 +1713,31 @@ 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:
- 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.1
dev: false
- /@floating-ui/dom@1.5.4:
- 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
+ '@floating-ui/core': 1.6.0
'@floating-ui/utils': 0.2.1
dev: false
- /@floating-ui/react-dom@2.0.6(react-dom@18.2.0)(react@18.2.0):
- resolution: {integrity: sha512-IB8aCRFxr8nFkdYZgH+Otd9EVQPJoynxeFRGTB8voPoZMRWo8XjYuCRgpI1btvuKY69XMiLnW+ym7zoBHM90Rw==}
+ /@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
+ '@floating-ui/dom': 1.6.3
react: 18.2.0
react-dom: 18.2.0(react@18.2.0)
dev: false
@@ -1742,12 +1746,12 @@ packages:
resolution: {integrity: sha512-9TANp6GPoMtYzQdt54kfAyMmz1+osLlXdg2ENroU7zzrtflTLrrC/lgrIfaSe+Wu0b89GKccT7vxXA0MoAIO+Q==}
dev: false
- /@hookform/resolvers@3.3.4(react-hook-form@7.49.3):
+ /@hookform/resolvers@3.3.4(react-hook-form@7.51.1):
resolution: {integrity: sha512-o5cgpGOuJYrd+iMKvkttOclgwRW86EsWJZZRC23prf0uU2i48Htq4PuT73AVb9ionFyZrwYEITuOFGF+BydEtQ==}
peerDependencies:
react-hook-form: ^7.0.0
dependencies:
- react-hook-form: 7.49.3(react@18.2.0)
+ react-hook-form: 7.51.1(react@18.2.0)
dev: false
/@humanwhocodes/config-array@0.11.14:
@@ -1770,40 +1774,40 @@ packages:
resolution: {integrity: sha512-6EwiSjwWYP7pTckG6I5eyFANjPhmPjUX9JRLUSfNPC7FX7zK9gyZAfUEaECL6ALTpGX5AjnBq3C9XmVWPitNpw==}
dev: true
- /@jridgewell/gen-mapping@0.3.3:
- resolution: {integrity: sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==}
+ /@jridgewell/gen-mapping@0.3.5:
+ resolution: {integrity: sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==}
engines: {node: '>=6.0.0'}
dependencies:
- '@jridgewell/set-array': 1.1.2
+ '@jridgewell/set-array': 1.2.1
'@jridgewell/sourcemap-codec': 1.4.15
- '@jridgewell/trace-mapping': 0.3.21
+ '@jridgewell/trace-mapping': 0.3.25
dev: false
- /@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: false
- /@jridgewell/set-array@1.1.2:
- resolution: {integrity: sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==}
+ /@jridgewell/set-array@1.2.1:
+ resolution: {integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==}
engines: {node: '>=6.0.0'}
dev: false
- /@jridgewell/source-map@0.3.5:
- resolution: {integrity: sha512-UTYAUj/wviwdsMfzoSJspJxbkH5o1snzwX0//0ENX1u/55kkZZkcTZP6u9bwKGkv+dkk9at4m1Cpt0uY80kcpQ==}
+ /@jridgewell/source-map@0.3.6:
+ resolution: {integrity: sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==}
dependencies:
- '@jridgewell/gen-mapping': 0.3.3
- '@jridgewell/trace-mapping': 0.3.21
+ '@jridgewell/gen-mapping': 0.3.5
+ '@jridgewell/trace-mapping': 0.3.25
dev: false
/@jridgewell/sourcemap-codec@1.4.15:
resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==}
dev: false
- /@jridgewell/trace-mapping@0.3.21:
- resolution: {integrity: sha512-SRfKmRe1KvYnxjEMtxEr+J4HIeMX5YBg/qhRHpxEIGjhX1rshcHlnFUE9K0GazhVKWM7B+nARSkV8LuvJdJ5/g==}
+ /@jridgewell/trace-mapping@0.3.25:
+ resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==}
dependencies:
- '@jridgewell/resolve-uri': 3.1.1
+ '@jridgewell/resolve-uri': 3.1.2
'@jridgewell/sourcemap-codec': 1.4.15
dev: false
@@ -1815,7 +1819,7 @@ packages:
react: 18.2.0
dev: false
- /@mui/base@5.0.0-beta.1(@types/react@18.2.48)(react-dom@18.2.0)(react@18.2.0):
+ /@mui/base@5.0.0-beta.1(@types/react@18.2.67)(react-dom@18.2.0)(react@18.2.0):
resolution: {integrity: sha512-xrkDCeu3JQE+JjJUnJnOrdQJMXwKhbV4AW+FRjMIj5i9cHK3BAuatG/iqbf1M+jklVWLk0KdbgioKwK+03aYbA==}
engines: {node: '>=12.0.0'}
peerDependencies:
@@ -1826,12 +1830,12 @@ packages:
'@types/react':
optional: true
dependencies:
- '@babel/runtime': 7.23.8
- '@emotion/is-prop-valid': 1.2.1
- '@mui/types': 7.2.13(@types/react@18.2.48)
- '@mui/utils': 5.15.4(@types/react@18.2.48)(react@18.2.0)
+ '@babel/runtime': 7.24.1
+ '@emotion/is-prop-valid': 1.2.2
+ '@mui/types': 7.2.14(@types/react@18.2.67)
+ '@mui/utils': 5.15.14(@types/react@18.2.67)(react@18.2.0)
'@popperjs/core': 2.11.8
- '@types/react': 18.2.48
+ '@types/react': 18.2.67
clsx: 1.2.1
prop-types: 15.8.1
react: 18.2.0
@@ -1839,8 +1843,8 @@ packages:
react-is: 18.2.0
dev: false
- /@mui/base@5.0.0-beta.31(@types/react@18.2.48)(react-dom@18.2.0)(react@18.2.0):
- resolution: {integrity: sha512-+uNbP3OHJuZVI00WyMg7xfLZotaEY7LgvYXDfONVJbrS+K9wyjCIPNfjy8r9XJn4fbHo/5ibiZqjWnU9LMNv+A==}
+ /@mui/base@5.0.0-beta.40(@types/react@18.2.67)(react-dom@18.2.0)(react@18.2.0):
+ resolution: {integrity: sha512-I/lGHztkCzvwlXpjD2+SNmvNQvB4227xBXhISPjEaJUXGImOQ9f3D2Yj/T3KasSI/h0MLWy74X0J6clhPmsRbQ==}
engines: {node: '>=12.0.0'}
peerDependencies:
'@types/react': ^17.0.0 || ^18.0.0
@@ -1850,24 +1854,24 @@ packages:
'@types/react':
optional: true
dependencies:
- '@babel/runtime': 7.23.8
- '@floating-ui/react-dom': 2.0.6(react-dom@18.2.0)(react@18.2.0)
- '@mui/types': 7.2.13(@types/react@18.2.48)
- '@mui/utils': 5.15.4(@types/react@18.2.48)(react@18.2.0)
+ '@babel/runtime': 7.24.1
+ '@floating-ui/react-dom': 2.0.8(react-dom@18.2.0)(react@18.2.0)
+ '@mui/types': 7.2.14(@types/react@18.2.67)
+ '@mui/utils': 5.15.14(@types/react@18.2.67)(react@18.2.0)
'@popperjs/core': 2.11.8
- '@types/react': 18.2.48
+ '@types/react': 18.2.67
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.4:
- resolution: {integrity: sha512-0OZN9O6hAtBpx70mMNFOPaAIol/ytwZYPY+z7Rf9dK3+1Xlzwvj5/IeShJKvtp76S1qJyhPuvZg0+BGqQaUnUw==}
+ /@mui/core-downloads-tracker@5.15.14:
+ resolution: {integrity: sha512-on75VMd0XqZfaQW+9pGjSNiqW+ghc5E2ZSLRBXwcXl/C4YzjfyjrLPhrEpKnR9Uym9KXBvxrhoHfPcczYHweyA==}
dev: false
- /@mui/icons-material@5.15.4(@mui/material@5.15.4)(@types/react@18.2.48)(react@18.2.0):
- resolution: {integrity: sha512-q/Yk7aokN8qGMpR7bwoDpBSeaNe6Bv7vaY9yHYodP37c64TM6ime05ueb/wgksOVszrKkNXC67E/XYbRWOoUFA==}
+ /@mui/icons-material@5.15.14(@mui/material@5.15.14)(@types/react@18.2.67)(react@18.2.0):
+ resolution: {integrity: sha512-vj/51k7MdFmt+XVw94sl30SCvGx6+wJLsNYjZRgxhS6y3UtnWnypMOsm3Kmg8TN+P0dqwsjy4/fX7B1HufJIhw==}
engines: {node: '>=12.0.0'}
peerDependencies:
'@mui/material': ^5.0.0
@@ -1877,13 +1881,13 @@ packages:
'@types/react':
optional: true
dependencies:
- '@babel/runtime': 7.23.8
- '@mui/material': 5.15.4(@emotion/react@11.11.3)(@emotion/styled@11.11.0)(@types/react@18.2.48)(react-dom@18.2.0)(react@18.2.0)
- '@types/react': 18.2.48
+ '@babel/runtime': 7.24.1
+ '@mui/material': 5.15.14(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@types/react@18.2.67)(react-dom@18.2.0)(react@18.2.0)
+ '@types/react': 18.2.67
react: 18.2.0
dev: false
- /@mui/lab@5.0.0-alpha.130(@emotion/react@11.11.3)(@emotion/styled@11.11.0)(@mui/material@5.15.4)(@types/react@18.2.48)(react-dom@18.2.0)(react@18.2.0):
+ /@mui/lab@5.0.0-alpha.130(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@mui/material@5.15.14)(@types/react@18.2.67)(react-dom@18.2.0)(react@18.2.0):
resolution: {integrity: sha512-pBZGIVXCzafvu7nwjfuKA3MhFyXnB4CIexfr8X4qS0GOY0UcDkO5LemWeeBKGXK2IanbQN4toO5mv8kzQIbp9Q==}
engines: {node: '>=12.0.0'}
peerDependencies:
@@ -1901,15 +1905,15 @@ packages:
'@types/react':
optional: true
dependencies:
- '@babel/runtime': 7.23.8
- '@emotion/react': 11.11.3(@types/react@18.2.48)(react@18.2.0)
- '@emotion/styled': 11.11.0(@emotion/react@11.11.3)(@types/react@18.2.48)(react@18.2.0)
- '@mui/base': 5.0.0-beta.1(@types/react@18.2.48)(react-dom@18.2.0)(react@18.2.0)
- '@mui/material': 5.15.4(@emotion/react@11.11.3)(@emotion/styled@11.11.0)(@types/react@18.2.48)(react-dom@18.2.0)(react@18.2.0)
- '@mui/system': 5.15.4(@emotion/react@11.11.3)(@emotion/styled@11.11.0)(@types/react@18.2.48)(react@18.2.0)
- '@mui/types': 7.2.13(@types/react@18.2.48)
- '@mui/utils': 5.15.4(@types/react@18.2.48)(react@18.2.0)
- '@types/react': 18.2.48
+ '@babel/runtime': 7.24.1
+ '@emotion/react': 11.11.4(@types/react@18.2.67)(react@18.2.0)
+ '@emotion/styled': 11.11.0(@emotion/react@11.11.4)(@types/react@18.2.67)(react@18.2.0)
+ '@mui/base': 5.0.0-beta.1(@types/react@18.2.67)(react-dom@18.2.0)(react@18.2.0)
+ '@mui/material': 5.15.14(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@types/react@18.2.67)(react-dom@18.2.0)(react@18.2.0)
+ '@mui/system': 5.15.14(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@types/react@18.2.67)(react@18.2.0)
+ '@mui/types': 7.2.14(@types/react@18.2.67)
+ '@mui/utils': 5.15.14(@types/react@18.2.67)(react@18.2.0)
+ '@types/react': 18.2.67
clsx: 1.2.1
prop-types: 15.8.1
react: 18.2.0
@@ -1917,8 +1921,8 @@ packages:
react-is: 18.2.0
dev: false
- /@mui/material@5.15.4(@emotion/react@11.11.3)(@emotion/styled@11.11.0)(@types/react@18.2.48)(react-dom@18.2.0)(react@18.2.0):
- resolution: {integrity: sha512-T/LGRAC+M0c+D3+y67eHwIN5bSje0TxbcJCWR0esNvU11T0QwrX3jedXItPNBwMupF2F5VWCDHBVLlFnN3+ABA==}
+ /@mui/material@5.15.14(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@types/react@18.2.67)(react-dom@18.2.0)(react@18.2.0):
+ resolution: {integrity: sha512-kEbRw6fASdQ1SQ7LVdWR5OlWV3y7Y54ZxkLzd6LV5tmz+NpO3MJKZXSfgR0LHMP7meKsPiMm4AuzV0pXDpk/BQ==}
engines: {node: '>=12.0.0'}
peerDependencies:
'@emotion/react': ^11.5.0
@@ -1934,15 +1938,15 @@ packages:
'@types/react':
optional: true
dependencies:
- '@babel/runtime': 7.23.8
- '@emotion/react': 11.11.3(@types/react@18.2.48)(react@18.2.0)
- '@emotion/styled': 11.11.0(@emotion/react@11.11.3)(@types/react@18.2.48)(react@18.2.0)
- '@mui/base': 5.0.0-beta.31(@types/react@18.2.48)(react-dom@18.2.0)(react@18.2.0)
- '@mui/core-downloads-tracker': 5.15.4
- '@mui/system': 5.15.4(@emotion/react@11.11.3)(@emotion/styled@11.11.0)(@types/react@18.2.48)(react@18.2.0)
- '@mui/types': 7.2.13(@types/react@18.2.48)
- '@mui/utils': 5.15.4(@types/react@18.2.48)(react@18.2.0)
- '@types/react': 18.2.48
+ '@babel/runtime': 7.24.1
+ '@emotion/react': 11.11.4(@types/react@18.2.67)(react@18.2.0)
+ '@emotion/styled': 11.11.0(@emotion/react@11.11.4)(@types/react@18.2.67)(react@18.2.0)
+ '@mui/base': 5.0.0-beta.40(@types/react@18.2.67)(react-dom@18.2.0)(react@18.2.0)
+ '@mui/core-downloads-tracker': 5.15.14
+ '@mui/system': 5.15.14(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@types/react@18.2.67)(react@18.2.0)
+ '@mui/types': 7.2.14(@types/react@18.2.67)
+ '@mui/utils': 5.15.14(@types/react@18.2.67)(react@18.2.0)
+ '@types/react': 18.2.67
'@types/react-transition-group': 4.4.10
clsx: 2.1.0
csstype: 3.1.3
@@ -1953,8 +1957,8 @@ packages:
react-transition-group: 4.4.5(react-dom@18.2.0)(react@18.2.0)
dev: false
- /@mui/private-theming@5.15.4(@types/react@18.2.48)(react@18.2.0):
- resolution: {integrity: sha512-9N5myIMEEQTM5WYWPGvvYADzjFo12LgJ7S+2iTZkBNOcJpUxQYM1tvYjkHCDV+t1ocMOEgjR2EfJ9Dus30dBlg==}
+ /@mui/private-theming@5.15.14(@types/react@18.2.67)(react@18.2.0):
+ resolution: {integrity: sha512-UH0EiZckOWcxiXLX3Jbb0K7rC8mxTr9L9l6QhOZxYc4r8FHUkefltV9VDGLrzCaWh30SQiJvAEd7djX3XXY6Xw==}
engines: {node: '>=12.0.0'}
peerDependencies:
'@types/react': ^17.0.0 || ^18.0.0
@@ -1963,15 +1967,15 @@ packages:
'@types/react':
optional: true
dependencies:
- '@babel/runtime': 7.23.8
- '@mui/utils': 5.15.4(@types/react@18.2.48)(react@18.2.0)
- '@types/react': 18.2.48
+ '@babel/runtime': 7.24.1
+ '@mui/utils': 5.15.14(@types/react@18.2.67)(react@18.2.0)
+ '@types/react': 18.2.67
prop-types: 15.8.1
react: 18.2.0
dev: false
- /@mui/styled-engine@5.15.4(@emotion/react@11.11.3)(@emotion/styled@11.11.0)(react@18.2.0):
- resolution: {integrity: sha512-vtrZUXG5XI8CNiNLcxjIirW4dEbOloR+ikfm6ePBo7jXpJdpXjVzBWetrfE+5eI0cHkKWlTptnJ2voKV8pBRfw==}
+ /@mui/styled-engine@5.15.14(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(react@18.2.0):
+ resolution: {integrity: sha512-RILkuVD8gY6PvjZjqnWhz8fu68dVkqhM5+jYWfB5yhlSQKg+2rHkmEwm75XIeAqI3qwOndK6zELK5H6Zxn4NHw==}
engines: {node: '>=12.0.0'}
peerDependencies:
'@emotion/react': ^11.4.1
@@ -1983,17 +1987,17 @@ packages:
'@emotion/styled':
optional: true
dependencies:
- '@babel/runtime': 7.23.8
+ '@babel/runtime': 7.24.1
'@emotion/cache': 11.11.0
- '@emotion/react': 11.11.3(@types/react@18.2.48)(react@18.2.0)
- '@emotion/styled': 11.11.0(@emotion/react@11.11.3)(@types/react@18.2.48)(react@18.2.0)
+ '@emotion/react': 11.11.4(@types/react@18.2.67)(react@18.2.0)
+ '@emotion/styled': 11.11.0(@emotion/react@11.11.4)(@types/react@18.2.67)(react@18.2.0)
csstype: 3.1.3
prop-types: 15.8.1
react: 18.2.0
dev: false
- /@mui/system@5.15.4(@emotion/react@11.11.3)(@emotion/styled@11.11.0)(@types/react@18.2.48)(react@18.2.0):
- resolution: {integrity: sha512-KCwkHajGBXPs2TK1HJjIyab4NDk0cZoBDYN/TTlXVo1qBAmCjY0vjqrlsjeoG+wrwwcezXMLs/e6OGP66fPCog==}
+ /@mui/system@5.15.14(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@types/react@18.2.67)(react@18.2.0):
+ resolution: {integrity: sha512-auXLXzUaCSSOLqJXmsAaq7P96VPRXg2Rrz6OHNV7lr+kB8lobUF+/N84Vd9C4G/wvCXYPs5TYuuGBRhcGbiBGg==}
engines: {node: '>=12.0.0'}
peerDependencies:
'@emotion/react': ^11.5.0
@@ -2008,33 +2012,33 @@ packages:
'@types/react':
optional: true
dependencies:
- '@babel/runtime': 7.23.8
- '@emotion/react': 11.11.3(@types/react@18.2.48)(react@18.2.0)
- '@emotion/styled': 11.11.0(@emotion/react@11.11.3)(@types/react@18.2.48)(react@18.2.0)
- '@mui/private-theming': 5.15.4(@types/react@18.2.48)(react@18.2.0)
- '@mui/styled-engine': 5.15.4(@emotion/react@11.11.3)(@emotion/styled@11.11.0)(react@18.2.0)
- '@mui/types': 7.2.13(@types/react@18.2.48)
- '@mui/utils': 5.15.4(@types/react@18.2.48)(react@18.2.0)
- '@types/react': 18.2.48
+ '@babel/runtime': 7.24.1
+ '@emotion/react': 11.11.4(@types/react@18.2.67)(react@18.2.0)
+ '@emotion/styled': 11.11.0(@emotion/react@11.11.4)(@types/react@18.2.67)(react@18.2.0)
+ '@mui/private-theming': 5.15.14(@types/react@18.2.67)(react@18.2.0)
+ '@mui/styled-engine': 5.15.14(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(react@18.2.0)
+ '@mui/types': 7.2.14(@types/react@18.2.67)
+ '@mui/utils': 5.15.14(@types/react@18.2.67)(react@18.2.0)
+ '@types/react': 18.2.67
clsx: 2.1.0
csstype: 3.1.3
prop-types: 15.8.1
react: 18.2.0
dev: false
- /@mui/types@7.2.13(@types/react@18.2.48):
- resolution: {integrity: sha512-qP9OgacN62s+l8rdDhSFRe05HWtLLJ5TGclC9I1+tQngbssu0m2dmFZs+Px53AcOs9fD7TbYd4gc9AXzVqO/+g==}
+ /@mui/types@7.2.14(@types/react@18.2.67):
+ resolution: {integrity: sha512-MZsBZ4q4HfzBsywtXgM1Ksj6HDThtiwmOKUXH1pKYISI9gAVXCNHNpo7TlGoGrBaYWZTdNoirIN7JsQcQUjmQQ==}
peerDependencies:
'@types/react': ^17.0.0 || ^18.0.0
peerDependenciesMeta:
'@types/react':
optional: true
dependencies:
- '@types/react': 18.2.48
+ '@types/react': 18.2.67
dev: false
- /@mui/utils@5.15.4(@types/react@18.2.48)(react@18.2.0):
- resolution: {integrity: sha512-E2wLQGBcs3VR52CpMRjk46cGscC4cbf3Q2uyHNaAeL36yTTm+aVNbtsTCazXtjOP4BDd8lu6VtlTpVC8Rtl4mg==}
+ /@mui/utils@5.15.14(@types/react@18.2.67)(react@18.2.0):
+ resolution: {integrity: sha512-0lF/7Hh/ezDv5X7Pry6enMsbYyGKjADzvHyo3Qrc/SSlTsQ1VkbDMbH0m2t3OR5iIVLwMoxwM7yGd+6FCMtTFA==}
engines: {node: '>=12.0.0'}
peerDependencies:
'@types/react': ^17.0.0 || ^18.0.0
@@ -2043,16 +2047,16 @@ packages:
'@types/react':
optional: true
dependencies:
- '@babel/runtime': 7.23.8
+ '@babel/runtime': 7.24.1
'@types/prop-types': 15.7.11
- '@types/react': 18.2.48
+ '@types/react': 18.2.67
prop-types: 15.8.1
react: 18.2.0
react-is: 18.2.0
dev: false
- /@mui/x-date-pickers@6.19.0(@emotion/react@11.11.3)(@emotion/styled@11.11.0)(@mui/material@5.15.4)(@mui/system@5.15.4)(@types/react@18.2.48)(date-fns@2.30.0)(react-dom@18.2.0)(react@18.2.0):
- resolution: {integrity: sha512-/GccT+iFJTKjI6b9b0MWojyRKnizL/VYYAfPnR1q0wSVVXjYv7a1NK0uQlan4JbnovqoQCNVeTOCy/0bUJyD2Q==}
+ /@mui/x-date-pickers@6.19.8(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@mui/material@5.15.14)(@mui/system@5.15.14)(@types/react@18.2.67)(date-fns@3.6.0)(react-dom@18.2.0)(react@18.2.0):
+ resolution: {integrity: sha512-6wgc2DoRTR9/mKesku4CVCKr9yYkY3FI2Oy/wshLTs2rFkw2Z10uxXFHBR9ugEtNPNCQv0qqwldElenYI97wsA==}
engines: {node: '>=14.0.0'}
peerDependencies:
'@emotion/react': ^11.9.0
@@ -2088,16 +2092,16 @@ packages:
moment-jalaali:
optional: true
dependencies:
- '@babel/runtime': 7.23.8
- '@emotion/react': 11.11.3(@types/react@18.2.48)(react@18.2.0)
- '@emotion/styled': 11.11.0(@emotion/react@11.11.3)(@types/react@18.2.48)(react@18.2.0)
- '@mui/base': 5.0.0-beta.31(@types/react@18.2.48)(react-dom@18.2.0)(react@18.2.0)
- '@mui/material': 5.15.4(@emotion/react@11.11.3)(@emotion/styled@11.11.0)(@types/react@18.2.48)(react-dom@18.2.0)(react@18.2.0)
- '@mui/system': 5.15.4(@emotion/react@11.11.3)(@emotion/styled@11.11.0)(@types/react@18.2.48)(react@18.2.0)
- '@mui/utils': 5.15.4(@types/react@18.2.48)(react@18.2.0)
+ '@babel/runtime': 7.24.1
+ '@emotion/react': 11.11.4(@types/react@18.2.67)(react@18.2.0)
+ '@emotion/styled': 11.11.0(@emotion/react@11.11.4)(@types/react@18.2.67)(react@18.2.0)
+ '@mui/base': 5.0.0-beta.40(@types/react@18.2.67)(react-dom@18.2.0)(react@18.2.0)
+ '@mui/material': 5.15.14(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@types/react@18.2.67)(react-dom@18.2.0)(react@18.2.0)
+ '@mui/system': 5.15.14(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@types/react@18.2.67)(react@18.2.0)
+ '@mui/utils': 5.15.14(@types/react@18.2.67)(react@18.2.0)
'@types/react-transition-group': 4.4.10
clsx: 2.1.0
- date-fns: 2.30.0
+ date-fns: 3.6.0
prop-types: 15.8.1
react: 18.2.0
react-dom: 18.2.0(react@18.2.0)
@@ -2213,14 +2217,14 @@ packages:
engines: {node: '>= 8'}
dependencies:
'@nodelib/fs.scandir': 2.1.5
- fastq: 1.16.0
+ fastq: 1.17.1
/@popperjs/core@2.11.8:
resolution: {integrity: sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==}
dev: false
- /@prisma/client@5.8.1(prisma@5.8.1):
- resolution: {integrity: sha512-xQtMPfbIwLlbm0VVIVQY2yqQVOxPwRQhvIp7Z3m2900g1bu/zRHKhYZJQWELqmjl6d8YwBy0K2NvMqh47v1ubw==}
+ /@prisma/client@5.11.0(prisma@5.11.0):
+ resolution: {integrity: sha512-SWshvS5FDXvgJKM/a0y9nDC1rqd7KG0Q6ZVzd+U7ZXK5soe73DJxJJgbNBt2GNXOa+ysWB4suTpdK5zfFPhwiw==}
engines: {node: '>=16.13'}
requiresBuild: true
peerDependencies:
@@ -2229,37 +2233,37 @@ packages:
prisma:
optional: true
dependencies:
- prisma: 5.8.1
+ prisma: 5.11.0
dev: false
- /@prisma/debug@5.8.1:
- resolution: {integrity: sha512-tjuw7eA0Us3T42jx9AmAgL58rzwzpFGYc3R7Y4Ip75EBYrKMBA1YihuWMcBC92ILmjlQ/u3p8VxcIE0hr+fZfg==}
+ /@prisma/debug@5.11.0:
+ resolution: {integrity: sha512-N6yYr3AbQqaiUg+OgjkdPp3KPW1vMTAgtKX6+BiB/qB2i1TjLYCrweKcUjzOoRM5BriA4idrkTej9A9QqTfl3A==}
- /@prisma/engines-version@5.8.1-1.78caf6feeaed953168c64e15a249c3e9a033ebe2:
- resolution: {integrity: sha512-f5C3JM3l9yhGr3cr4FMqWloFaSCpNpMi58Om22rjD2DOz3owci2mFdFXMgnAGazFPKrCbbEhcxdsRfspEYRoFQ==}
+ /@prisma/engines-version@5.11.0-15.efd2449663b3d73d637ea1fd226bafbcf45b3102:
+ resolution: {integrity: sha512-WXCuyoymvrS4zLz4wQagSsc3/nE6CHy8znyiMv8RKazKymOMd5o9FP5RGwGHAtgoxd+aB/BWqxuP/Ckfu7/3MA==}
- /@prisma/engines@5.8.1:
- resolution: {integrity: sha512-TJgYLRrZr56uhqcXO4GmP5be+zjCIHtLDK20Cnfg+o9d905hsN065QOL+3Z0zQAy6YD31Ol4u2kzSfRmbJv/uA==}
+ /@prisma/engines@5.11.0:
+ resolution: {integrity: sha512-gbrpQoBTYWXDRqD+iTYMirDlF9MMlQdxskQXbhARhG6A/uFQjB7DZMYocMQLoiZXO/IskfDOZpPoZE8TBQKtEw==}
requiresBuild: true
dependencies:
- '@prisma/debug': 5.8.1
- '@prisma/engines-version': 5.8.1-1.78caf6feeaed953168c64e15a249c3e9a033ebe2
- '@prisma/fetch-engine': 5.8.1
- '@prisma/get-platform': 5.8.1
+ '@prisma/debug': 5.11.0
+ '@prisma/engines-version': 5.11.0-15.efd2449663b3d73d637ea1fd226bafbcf45b3102
+ '@prisma/fetch-engine': 5.11.0
+ '@prisma/get-platform': 5.11.0
- /@prisma/fetch-engine@5.8.1:
- resolution: {integrity: sha512-+bgjjoSFa6uYEbAPlklfoVSStOEfcpheOjoBoNsNNSQdSzcwE2nM4Q0prun0+P8/0sCHo18JZ9xqa8gObvgOUw==}
+ /@prisma/fetch-engine@5.11.0:
+ resolution: {integrity: sha512-994viazmHTJ1ymzvWugXod7dZ42T2ROeFuH6zHPcUfp/69+6cl5r9u3NFb6bW8lLdNjwLYEVPeu3hWzxpZeC0w==}
dependencies:
- '@prisma/debug': 5.8.1
- '@prisma/engines-version': 5.8.1-1.78caf6feeaed953168c64e15a249c3e9a033ebe2
- '@prisma/get-platform': 5.8.1
+ '@prisma/debug': 5.11.0
+ '@prisma/engines-version': 5.11.0-15.efd2449663b3d73d637ea1fd226bafbcf45b3102
+ '@prisma/get-platform': 5.11.0
- /@prisma/get-platform@5.8.1:
- resolution: {integrity: sha512-wnA+6HTFcY+tkykMokix9GiAkaauPC5W/gg0O5JB0J8tCTNWrqpnQ7AsaGRfkYUbeOIioh6woDjQrGTTRf1Zag==}
+ /@prisma/get-platform@5.11.0:
+ resolution: {integrity: sha512-rxtHpMLxNTHxqWuGOLzR2QOyQi79rK1u1XYAVLZxDGTLz/A+uoDnjz9veBFlicrpWjwuieM4N6jcnjj/DDoidw==}
dependencies:
- '@prisma/debug': 5.8.1
+ '@prisma/debug': 5.11.0
- /@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.3)(rollup@2.79.1):
resolution: {integrity: sha512-WFfdLWU/xVWKeRQnKmIAQULUI7Il0gZnBIH/ZFO069wYIfPu+8zrfp/KMW0atmELoRDq8FbiP3VCss9MhCut7Q==}
engines: {node: '>= 10.0.0'}
peerDependencies:
@@ -2270,8 +2274,8 @@ packages:
'@types/babel__core':
optional: true
dependencies:
- '@babel/core': 7.23.7
- '@babel/helper-module-imports': 7.22.15
+ '@babel/core': 7.24.3
+ '@babel/helper-module-imports': 7.24.3
'@rollup/pluginutils': 3.1.0(rollup@2.79.1)
rollup: 2.79.1
dev: false
@@ -2313,8 +2317,8 @@ packages:
rollup: 2.79.1
dev: false
- /@rushstack/eslint-patch@1.6.1:
- resolution: {integrity: sha512-UY+FGM/2jjMkzQLn8pxcHGMaVLh9aEitG3zY2CiY7XHdLiz3bZOwa6oDxNqEMv7zZkV+cj5DOdz0cQ1BP5Hjgw==}
+ /@rushstack/eslint-patch@1.8.0:
+ resolution: {integrity: sha512-0HejFckBN2W+ucM6cUOlwsByTKt9/+0tWhqUffNIcHqCXkthY/mZ7AuYPK/2IIaGWhdl0h+tICDO0ssLMd6XMQ==}
dev: true
/@surma/rollup-plugin-off-main-thread@2.2.3:
@@ -2323,7 +2327,7 @@ packages:
ejs: 3.1.9
json5: 2.2.3
magic-string: 0.25.9
- string.prototype.matchall: 4.0.10
+ string.prototype.matchall: 4.0.11
dev: false
/@swc/helpers@0.5.1:
@@ -2354,52 +2358,52 @@ packages:
use-sync-external-store: 1.2.0(react@18.2.0)
dev: false
- /@trpc/client@10.45.0(@trpc/server@10.45.0):
- resolution: {integrity: sha512-m091R1qte9rvkvL8N1e/mzrbb8S4gb+Q4ZNJnEGDgd7kic/6a8DFgSciBTiCoSp0YwOTVhyQzSrrA/sZI6PhBg==}
+ /@trpc/client@10.45.2(@trpc/server@10.45.2):
+ resolution: {integrity: sha512-ykALM5kYWTLn1zYuUOZ2cPWlVfrXhc18HzBDyRhoPYN0jey4iQHEFSEowfnhg1RvYnrAVjNBgHNeSAXjrDbGwg==}
peerDependencies:
- '@trpc/server': 10.45.0
+ '@trpc/server': 10.45.2
dependencies:
- '@trpc/server': 10.45.0
+ '@trpc/server': 10.45.2
dev: false
- /@trpc/next@10.45.0(@tanstack/react-query@4.36.1)(@trpc/client@10.45.0)(@trpc/react-query@10.45.0)(@trpc/server@10.45.0)(next@13.4.1)(react-dom@18.2.0)(react@18.2.0):
- resolution: {integrity: sha512-saXajAb5GBpos9BNEtq/BeTOxmM4oCP3kyuGlMopNtHoacr71xHCItFnLsPWffM4DVW88uOXCFWaOtpOs5ThBw==}
+ /@trpc/next@10.45.2(@tanstack/react-query@4.36.1)(@trpc/client@10.45.2)(@trpc/react-query@10.45.2)(@trpc/server@10.45.2)(next@13.4.1)(react-dom@18.2.0)(react@18.2.0):
+ resolution: {integrity: sha512-RSORmfC+/nXdmRY1pQ0AalsVgSzwNAFbZLYHiTvPM5QQ8wmMEHilseCYMXpu0se/TbPt9zVR6Ka2d7O6zxKkXg==}
peerDependencies:
'@tanstack/react-query': ^4.18.0
- '@trpc/client': 10.45.0
- '@trpc/react-query': 10.45.0
- '@trpc/server': 10.45.0
+ '@trpc/client': 10.45.2
+ '@trpc/react-query': 10.45.2
+ '@trpc/server': 10.45.2
next: '*'
react: '>=16.8.0'
react-dom: '>=16.8.0'
dependencies:
'@tanstack/react-query': 4.36.1(react-dom@18.2.0)(react@18.2.0)
- '@trpc/client': 10.45.0(@trpc/server@10.45.0)
- '@trpc/react-query': 10.45.0(@tanstack/react-query@4.36.1)(@trpc/client@10.45.0)(@trpc/server@10.45.0)(react-dom@18.2.0)(react@18.2.0)
- '@trpc/server': 10.45.0
- next: 13.4.1(@babel/core@7.23.7)(react-dom@18.2.0)(react@18.2.0)
+ '@trpc/client': 10.45.2(@trpc/server@10.45.2)
+ '@trpc/react-query': 10.45.2(@tanstack/react-query@4.36.1)(@trpc/client@10.45.2)(@trpc/server@10.45.2)(react-dom@18.2.0)(react@18.2.0)
+ '@trpc/server': 10.45.2
+ next: 13.4.1(@babel/core@7.24.3)(react-dom@18.2.0)(react@18.2.0)
react: 18.2.0
react-dom: 18.2.0(react@18.2.0)
dev: false
- /@trpc/react-query@10.45.0(@tanstack/react-query@4.36.1)(@trpc/client@10.45.0)(@trpc/server@10.45.0)(react-dom@18.2.0)(react@18.2.0):
- resolution: {integrity: sha512-MMc2pLwoaLZVwvLQyzJv3uEmdG3lORhifhVzR/drtavwDYwt+OEvH0w3s1zC7RaDdFpc6Nj2kkpHmdoU7BlAAw==}
+ /@trpc/react-query@10.45.2(@tanstack/react-query@4.36.1)(@trpc/client@10.45.2)(@trpc/server@10.45.2)(react-dom@18.2.0)(react@18.2.0):
+ resolution: {integrity: sha512-BAqb9bGZIscroradlNx+Cc9522R+idY3BOSf5z0jHUtkxdMbjeGKxSSMxxu7JzoLqSIEC+LVzL3VvF8sdDWaZQ==}
peerDependencies:
'@tanstack/react-query': ^4.18.0
- '@trpc/client': 10.45.0
- '@trpc/server': 10.45.0
+ '@trpc/client': 10.45.2
+ '@trpc/server': 10.45.2
react: '>=16.8.0'
react-dom: '>=16.8.0'
dependencies:
'@tanstack/react-query': 4.36.1(react-dom@18.2.0)(react@18.2.0)
- '@trpc/client': 10.45.0(@trpc/server@10.45.0)
- '@trpc/server': 10.45.0
+ '@trpc/client': 10.45.2(@trpc/server@10.45.2)
+ '@trpc/server': 10.45.2
react: 18.2.0
react-dom: 18.2.0(react@18.2.0)
dev: false
- /@trpc/server@10.45.0:
- resolution: {integrity: sha512-2Fwzv6nqpE0Ie/G7PeS0EVR89zLm+c1Mw7T+RAGtU807j4oaUx0zGkBXTu5u9AI+j+BYNN2GZxJcuDTAecbr1A==}
+ /@trpc/server@10.45.2:
+ resolution: {integrity: sha512-wOrSThNNE4HUnuhJG6PfDRp4L2009KDVxsd+2VYH8ro6o/7/jwYZ8Uu5j+VaW+mOmc8EHerHzGcdbGNQSAUPgg==}
dev: false
/@types/cookie@0.3.3:
@@ -2409,12 +2413,12 @@ packages:
/@types/eslint-scope@3.7.7:
resolution: {integrity: sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg==}
dependencies:
- '@types/eslint': 8.56.2
+ '@types/eslint': 8.56.6
'@types/estree': 1.0.5
dev: false
- /@types/eslint@8.56.2:
- resolution: {integrity: sha512-uQDwm1wFHmbBbCZCqAlq6Do9LYwByNZHWzXppSnay9SuwJ+VRbjkbLABer54kcPnMSlG6Fdiy2yaFXm/z9Z5gw==}
+ /@types/eslint@8.56.6:
+ resolution: {integrity: sha512-ymwc+qb1XkjT/gfoQwxIeHZ6ixH23A+tCT2ADSA/DPVKzAjwYkTXBMCQ/f6fe4wEa85Lhp26VPeUxI7wMhAi7A==}
dependencies:
'@types/estree': 1.0.5
'@types/json-schema': 7.0.15
@@ -2432,13 +2436,13 @@ packages:
resolution: {integrity: sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==}
dependencies:
'@types/minimatch': 5.1.2
- '@types/node': 20.11.4
+ '@types/node': 20.11.30
dev: false
/@types/hoist-non-react-statics@3.3.5:
resolution: {integrity: sha512-SbcrWzkKBw2cdwRTwQAswfpB9g9LJWfjtUeW/jvNwbhC8cpmmNYVePa+ncbUe0rGTQ7G3Ff6mYUN2VMfLVr+Sg==}
dependencies:
- '@types/react': 18.2.48
+ '@types/react': 18.2.67
hoist-non-react-statics: 3.3.2
dev: false
@@ -2449,16 +2453,16 @@ packages:
resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==}
dev: true
- /@types/lodash@4.14.202:
- resolution: {integrity: sha512-OvlIYQK9tNneDlS0VN54LLd5uiPCBOp7gS5Z0f1mjoJYBrtStzgmJBxONW3U6OZqdtNzZPmn9BS/7WI7BFFcFQ==}
+ /@types/lodash@4.17.0:
+ resolution: {integrity: sha512-t7dhREVv6dbNj0q17X12j7yDG4bD/DHYX7o5/DbDxobP0HnGPgpRz2Ej77aL7TZT3DSw13fqUTj8J4mMnqa7WA==}
dev: true
/@types/minimatch@5.1.2:
resolution: {integrity: sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==}
dev: false
- /@types/node@20.11.4:
- resolution: {integrity: sha512-6I0fMH8Aoy2lOejL3s4LhyIYX34DPwY8bl5xlNjBvUEk8OHrcuzsFt+Ied4LvJihbtXPM+8zUqdydfIti86v9g==}
+ /@types/node@20.11.30:
+ resolution: {integrity: sha512-dHM6ZxwlmuZaRmUPfv1p+KrdD1Dci04FbdEm/9wEMouFqxYoFl5aMkt0VMAUtYRQDyYvD41WJLukhq/ha3YuTw==}
dependencies:
undici-types: 5.26.5
@@ -2469,20 +2473,20 @@ packages:
/@types/prop-types@15.7.11:
resolution: {integrity: sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==}
- /@types/react-dom@18.2.18:
- resolution: {integrity: sha512-TJxDm6OfAX2KJWJdMEVTwWke5Sc/E/RlnPGvGfS0W7+6ocy2xhDVQVh/KvC2Uf7kACs+gDytdusDSdWfWkaNzw==}
+ /@types/react-dom@18.2.22:
+ resolution: {integrity: sha512-fHkBXPeNtfvri6gdsMYyW+dW7RXFo6Ad09nLFK0VQWR7yGLai/Cyvyj696gbwYvBnhGtevUG9cET0pmUbMtoPQ==}
dependencies:
- '@types/react': 18.2.48
+ '@types/react': 18.2.67
dev: true
/@types/react-transition-group@4.4.10:
resolution: {integrity: sha512-hT/+s0VQs2ojCX823m60m5f0sL5idt9SO6Tj6Dg+rdphGPIeJbJ6CxvBYkgkGKrYeDjvIpKTR38UzmtHJOGW3Q==}
dependencies:
- '@types/react': 18.2.48
+ '@types/react': 18.2.67
dev: false
- /@types/react@18.2.48:
- resolution: {integrity: sha512-qboRCl6Ie70DQQG9hhNREz81jqC1cs9EVNcjQ1AU+jH6NFfSAhVVbrrY/+nSF+Bsk4AOwm9Qa61InvMCyV+H3w==}
+ /@types/react@18.2.67:
+ resolution: {integrity: sha512-vkIE2vTIMHQ/xL0rgmuoECBCkZFZeHr49HeWSc24AptMbNRo7pwSBvj73rlJJs9fGKj0koS+V7kQB1jHS0uCgw==}
dependencies:
'@types/prop-types': 15.7.11
'@types/scheduler': 0.16.8
@@ -2491,21 +2495,21 @@ packages:
/@types/resolve@1.17.1:
resolution: {integrity: sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw==}
dependencies:
- '@types/node': 20.11.4
+ '@types/node': 20.11.30
dev: false
/@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/trusted-types@2.0.7:
resolution: {integrity: sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==}
dev: false
- /@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0)(eslint@8.56.0)(typescript@5.3.3):
+ /@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0)(eslint@8.57.0)(typescript@5.4.2):
resolution: {integrity: sha512-TiZzBSJja/LbhNPvk6yc0JrX9XqhQ0hdh6M2svYfsHGejaKFIAGd9MQ+ERIMzLGlN/kZoYIgdxFV0PuljTKXag==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
peerDependencies:
@@ -2517,23 +2521,23 @@ packages:
optional: true
dependencies:
'@eslint-community/regexpp': 4.10.0
- '@typescript-eslint/parser': 5.62.0(eslint@8.56.0)(typescript@5.3.3)
+ '@typescript-eslint/parser': 5.62.0(eslint@8.57.0)(typescript@5.4.2)
'@typescript-eslint/scope-manager': 5.62.0
- '@typescript-eslint/type-utils': 5.62.0(eslint@8.56.0)(typescript@5.3.3)
- '@typescript-eslint/utils': 5.62.0(eslint@8.56.0)(typescript@5.3.3)
+ '@typescript-eslint/type-utils': 5.62.0(eslint@8.57.0)(typescript@5.4.2)
+ '@typescript-eslint/utils': 5.62.0(eslint@8.57.0)(typescript@5.4.2)
debug: 4.3.4
- eslint: 8.56.0
+ eslint: 8.57.0
graphemer: 1.4.0
- ignore: 5.3.0
+ ignore: 5.3.1
natural-compare-lite: 1.4.0
- semver: 7.5.4
- tsutils: 3.21.0(typescript@5.3.3)
- typescript: 5.3.3
+ semver: 7.6.0
+ tsutils: 3.21.0(typescript@5.4.2)
+ typescript: 5.4.2
transitivePeerDependencies:
- supports-color
dev: true
- /@typescript-eslint/parser@5.62.0(eslint@8.56.0)(typescript@5.3.3):
+ /@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.4.2):
resolution: {integrity: sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
peerDependencies:
@@ -2545,10 +2549,10 @@ packages:
dependencies:
'@typescript-eslint/scope-manager': 5.62.0
'@typescript-eslint/types': 5.62.0
- '@typescript-eslint/typescript-estree': 5.62.0(typescript@5.3.3)
+ '@typescript-eslint/typescript-estree': 5.62.0(typescript@5.4.2)
debug: 4.3.4
- eslint: 8.56.0
- typescript: 5.3.3
+ eslint: 8.57.0
+ typescript: 5.4.2
transitivePeerDependencies:
- supports-color
dev: true
@@ -2561,7 +2565,7 @@ packages:
'@typescript-eslint/visitor-keys': 5.62.0
dev: true
- /@typescript-eslint/type-utils@5.62.0(eslint@8.56.0)(typescript@5.3.3):
+ /@typescript-eslint/type-utils@5.62.0(eslint@8.57.0)(typescript@5.4.2):
resolution: {integrity: sha512-xsSQreu+VnfbqQpW5vnCJdq1Z3Q0U31qiWmRhr98ONQmcp/yhiPJFPq8MXiJVLiksmOKSjIldZzkebzHuCGzew==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
peerDependencies:
@@ -2571,12 +2575,12 @@ packages:
typescript:
optional: true
dependencies:
- '@typescript-eslint/typescript-estree': 5.62.0(typescript@5.3.3)
- '@typescript-eslint/utils': 5.62.0(eslint@8.56.0)(typescript@5.3.3)
+ '@typescript-eslint/typescript-estree': 5.62.0(typescript@5.4.2)
+ '@typescript-eslint/utils': 5.62.0(eslint@8.57.0)(typescript@5.4.2)
debug: 4.3.4
- eslint: 8.56.0
- tsutils: 3.21.0(typescript@5.3.3)
- typescript: 5.3.3
+ eslint: 8.57.0
+ tsutils: 3.21.0(typescript@5.4.2)
+ typescript: 5.4.2
transitivePeerDependencies:
- supports-color
dev: true
@@ -2586,7 +2590,7 @@ packages:
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
dev: true
- /@typescript-eslint/typescript-estree@5.62.0(typescript@5.3.3):
+ /@typescript-eslint/typescript-estree@5.62.0(typescript@5.4.2):
resolution: {integrity: sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
peerDependencies:
@@ -2600,28 +2604,28 @@ packages:
debug: 4.3.4
globby: 11.1.0
is-glob: 4.0.3
- semver: 7.5.4
- tsutils: 3.21.0(typescript@5.3.3)
- typescript: 5.3.3
+ semver: 7.6.0
+ tsutils: 3.21.0(typescript@5.4.2)
+ typescript: 5.4.2
transitivePeerDependencies:
- supports-color
dev: true
- /@typescript-eslint/utils@5.62.0(eslint@8.56.0)(typescript@5.3.3):
+ /@typescript-eslint/utils@5.62.0(eslint@8.57.0)(typescript@5.4.2):
resolution: {integrity: sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
peerDependencies:
eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
dependencies:
- '@eslint-community/eslint-utils': 4.4.0(eslint@8.56.0)
+ '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0)
'@types/json-schema': 7.0.15
- '@types/semver': 7.5.6
+ '@types/semver': 7.5.8
'@typescript-eslint/scope-manager': 5.62.0
'@typescript-eslint/types': 5.62.0
- '@typescript-eslint/typescript-estree': 5.62.0(typescript@5.3.3)
- eslint: 8.56.0
+ '@typescript-eslint/typescript-estree': 5.62.0(typescript@5.4.2)
+ eslint: 8.57.0
eslint-scope: 5.1.1
- semver: 7.5.4
+ semver: 7.6.0
transitivePeerDependencies:
- supports-color
- typescript
@@ -2639,8 +2643,8 @@ packages:
resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==}
dev: true
- /@webassemblyjs/ast@1.11.6:
- resolution: {integrity: sha512-IN1xI7PwOvLPgjcf180gC1bqn3q/QaOCwYUahIOhbYUu8KA/3tw2RT/T0Gidi1l7Hhj5D/INhJxiICObqpMu4Q==}
+ /@webassemblyjs/ast@1.12.1:
+ resolution: {integrity: sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg==}
dependencies:
'@webassemblyjs/helper-numbers': 1.11.6
'@webassemblyjs/helper-wasm-bytecode': 1.11.6
@@ -2654,8 +2658,8 @@ packages:
resolution: {integrity: sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==}
dev: false
- /@webassemblyjs/helper-buffer@1.11.6:
- resolution: {integrity: sha512-z3nFzdcp1mb8nEOFFk8DrYLpHvhKC3grJD2ardfKOzmbmJvEf/tPIqCY+sNcwZIY8ZD7IkB2l7/pqhUhqm7hLA==}
+ /@webassemblyjs/helper-buffer@1.12.1:
+ resolution: {integrity: sha512-nzJwQw99DNDKr9BVCOZcLuJJUlqkJh+kVzVl6Fmq/tI5ZtEyWT1KZMyOXltXLZJmDtvLCDgwsyrkohEtopTXCw==}
dev: false
/@webassemblyjs/helper-numbers@1.11.6:
@@ -2670,13 +2674,13 @@ packages:
resolution: {integrity: sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==}
dev: false
- /@webassemblyjs/helper-wasm-section@1.11.6:
- resolution: {integrity: sha512-LPpZbSOwTpEC2cgn4hTydySy1Ke+XEu+ETXuoyvuyezHO3Kjdu90KK95Sh9xTbmjrCsUwvWwCOQQNta37VrS9g==}
+ /@webassemblyjs/helper-wasm-section@1.12.1:
+ resolution: {integrity: sha512-Jif4vfB6FJlUlSbgEMHUyk1j234GTNG9dBJ4XJdOySoj518Xj0oGsNi59cUQF4RRMS9ouBUxDDdyBVfPTypa5g==}
dependencies:
- '@webassemblyjs/ast': 1.11.6
- '@webassemblyjs/helper-buffer': 1.11.6
+ '@webassemblyjs/ast': 1.12.1
+ '@webassemblyjs/helper-buffer': 1.12.1
'@webassemblyjs/helper-wasm-bytecode': 1.11.6
- '@webassemblyjs/wasm-gen': 1.11.6
+ '@webassemblyjs/wasm-gen': 1.12.1
dev: false
/@webassemblyjs/ieee754@1.11.6:
@@ -2695,42 +2699,42 @@ packages:
resolution: {integrity: sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==}
dev: false
- /@webassemblyjs/wasm-edit@1.11.6:
- resolution: {integrity: sha512-Ybn2I6fnfIGuCR+Faaz7YcvtBKxvoLV3Lebn1tM4o/IAJzmi9AWYIPWpyBfU8cC+JxAO57bk4+zdsTjJR+VTOw==}
+ /@webassemblyjs/wasm-edit@1.12.1:
+ resolution: {integrity: sha512-1DuwbVvADvS5mGnXbE+c9NfA8QRcZ6iKquqjjmR10k6o+zzsRVesil54DKexiowcFCPdr/Q0qaMgB01+SQ1u6g==}
dependencies:
- '@webassemblyjs/ast': 1.11.6
- '@webassemblyjs/helper-buffer': 1.11.6
+ '@webassemblyjs/ast': 1.12.1
+ '@webassemblyjs/helper-buffer': 1.12.1
'@webassemblyjs/helper-wasm-bytecode': 1.11.6
- '@webassemblyjs/helper-wasm-section': 1.11.6
- '@webassemblyjs/wasm-gen': 1.11.6
- '@webassemblyjs/wasm-opt': 1.11.6
- '@webassemblyjs/wasm-parser': 1.11.6
- '@webassemblyjs/wast-printer': 1.11.6
+ '@webassemblyjs/helper-wasm-section': 1.12.1
+ '@webassemblyjs/wasm-gen': 1.12.1
+ '@webassemblyjs/wasm-opt': 1.12.1
+ '@webassemblyjs/wasm-parser': 1.12.1
+ '@webassemblyjs/wast-printer': 1.12.1
dev: false
- /@webassemblyjs/wasm-gen@1.11.6:
- resolution: {integrity: sha512-3XOqkZP/y6B4F0PBAXvI1/bky7GryoogUtfwExeP/v7Nzwo1QLcq5oQmpKlftZLbT+ERUOAZVQjuNVak6UXjPA==}
+ /@webassemblyjs/wasm-gen@1.12.1:
+ resolution: {integrity: sha512-TDq4Ojh9fcohAw6OIMXqiIcTq5KUXTGRkVxbSo1hQnSy6lAM5GSdfwWeSxpAo0YzgsgF182E/U0mDNhuA0tW7w==}
dependencies:
- '@webassemblyjs/ast': 1.11.6
+ '@webassemblyjs/ast': 1.12.1
'@webassemblyjs/helper-wasm-bytecode': 1.11.6
'@webassemblyjs/ieee754': 1.11.6
'@webassemblyjs/leb128': 1.11.6
'@webassemblyjs/utf8': 1.11.6
dev: false
- /@webassemblyjs/wasm-opt@1.11.6:
- resolution: {integrity: sha512-cOrKuLRE7PCe6AsOVl7WasYf3wbSo4CeOk6PkrjS7g57MFfVUF9u6ysQBBODX0LdgSvQqRiGz3CXvIDKcPNy4g==}
+ /@webassemblyjs/wasm-opt@1.12.1:
+ resolution: {integrity: sha512-Jg99j/2gG2iaz3hijw857AVYekZe2SAskcqlWIZXjji5WStnOpVoat3gQfT/Q5tb2djnCjBtMocY/Su1GfxPBg==}
dependencies:
- '@webassemblyjs/ast': 1.11.6
- '@webassemblyjs/helper-buffer': 1.11.6
- '@webassemblyjs/wasm-gen': 1.11.6
- '@webassemblyjs/wasm-parser': 1.11.6
+ '@webassemblyjs/ast': 1.12.1
+ '@webassemblyjs/helper-buffer': 1.12.1
+ '@webassemblyjs/wasm-gen': 1.12.1
+ '@webassemblyjs/wasm-parser': 1.12.1
dev: false
- /@webassemblyjs/wasm-parser@1.11.6:
- resolution: {integrity: sha512-6ZwPeGzMJM3Dqp3hCsLgESxBGtT/OeCvCZ4TA1JUPYgmhAx38tTPR9JaKy0S5H3evQpO/h2uWs2j6Yc/fjkpTQ==}
+ /@webassemblyjs/wasm-parser@1.12.1:
+ resolution: {integrity: sha512-xikIi7c2FHXysxXe3COrVUPSheuBtpcfhbpFj4gmu7KRLYOzANztwUU0IbsqvMqzuNK2+glRGWCEqZo1WCLyAQ==}
dependencies:
- '@webassemblyjs/ast': 1.11.6
+ '@webassemblyjs/ast': 1.12.1
'@webassemblyjs/helper-api-error': 1.11.6
'@webassemblyjs/helper-wasm-bytecode': 1.11.6
'@webassemblyjs/ieee754': 1.11.6
@@ -2738,10 +2742,10 @@ packages:
'@webassemblyjs/utf8': 1.11.6
dev: false
- /@webassemblyjs/wast-printer@1.11.6:
- resolution: {integrity: sha512-JM7AhRcE+yW2GWYaKeHL5vt4xqee5N2WcezptmgyhNS+ScggqcT1OtXykhAb13Sn5Yas0j2uv9tHgrjwvzAP4A==}
+ /@webassemblyjs/wast-printer@1.12.1:
+ resolution: {integrity: sha512-+X4WAlOisVWQMikjbcvY2e0rwPsKQ9F688lksZhBcPycBBuii3O7m8FACbDMWDojpAqvjIncrG8J0XHKyQfVeA==}
dependencies:
- '@webassemblyjs/ast': 1.11.6
+ '@webassemblyjs/ast': 1.12.1
'@xtuc/long': 4.2.2
dev: false
@@ -2844,20 +2848,21 @@ 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
/array-includes@3.1.7:
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.5
+ get-intrinsic: 1.2.4
is-string: 1.0.7
dev: true
@@ -2877,24 +2882,37 @@ packages:
engines: {node: '>=0.10.0'}
dev: false
- /array.prototype.findlastindex@1.2.3:
- resolution: {integrity: sha512-LzLoiOMAxvy+Gd3BAq3B7VeIgPdo+Q8hthvKtXybMvRV0jrXfJM/t8mw7nNlpEcVlVUnCnM2KSX4XU5HmpodOA==}
+ /array.prototype.findlast@1.2.5:
+ resolution: {integrity: sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==}
+ engines: {node: '>= 0.4'}
+ dependencies:
+ call-bind: 1.0.7
+ define-properties: 1.2.1
+ es-abstract: 1.23.2
+ es-errors: 1.3.0
+ es-object-atoms: 1.0.0
+ es-shim-unscopables: 1.0.2
+ dev: true
+
+ /array.prototype.findlastindex@1.2.5:
+ resolution: {integrity: sha512-zfETvRFA8o7EiNn++N5f/kaCw221hrpGsDmcpndVupkPzEc1Wuf3VgC0qby1BbHs7f5DVYjgtEU2LLh5bqeGfQ==}
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.23.2
+ es-errors: 1.3.0
+ es-object-atoms: 1.0.0
es-shim-unscopables: 1.0.2
- get-intrinsic: 1.2.2
dev: true
/array.prototype.flat@1.3.2:
resolution: {integrity: sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==}
engines: {node: '>= 0.4'}
dependencies:
- call-bind: 1.0.5
+ call-bind: 1.0.7
define-properties: 1.2.1
- es-abstract: 1.22.3
+ es-abstract: 1.22.5
es-shim-unscopables: 1.0.2
dev: true
@@ -2902,33 +2920,43 @@ packages:
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.5
+ es-shim-unscopables: 1.0.2
+ dev: true
+
+ /array.prototype.toreversed@1.1.2:
+ resolution: {integrity: sha512-wwDCoT4Ck4Cz7sLtgUmzR5UV3YF5mFHUlbChCzZBQZ+0m2cl/DH3tKgvphv1nKgFsJ48oCSg6p91q2Vm0I/ZMA==}
+ dependencies:
+ call-bind: 1.0.7
define-properties: 1.2.1
- es-abstract: 1.22.3
+ es-abstract: 1.22.5
es-shim-unscopables: 1.0.2
dev: true
- /array.prototype.tosorted@1.1.2:
- resolution: {integrity: sha512-HuQCHOlk1Weat5jzStICBCd83NxiIMwqDg/dHEsoefabn/hJRj5pVdWcPUSpRrwhwxZOsQassMpgN/xRYFBMIg==}
+ /array.prototype.tosorted@1.1.3:
+ resolution: {integrity: sha512-/DdH4TiTmOKzyQbp/eadcCVexiCb36xJg7HshYOYJnNZFDj33GEv0P7GxsynpShhq4OLYJzbGcBDkLsDt7MnNg==}
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.5
+ es-errors: 1.3.0
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.5
+ es-errors: 1.3.0
+ get-intrinsic: 1.2.4
+ is-array-buffer: 3.0.4
+ is-shared-array-buffer: 1.0.3
/ast-types-flow@0.0.8:
resolution: {integrity: sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==}
@@ -2938,20 +2966,16 @@ packages:
resolution: {integrity: sha512-baNZyqaaLhyLVKm/DlvdW051MSgO6b8eVfIezl9E5PqWxFgzLm/wQntEW4zOytVburDEr0JlALEpdOFwvErLsg==}
dev: false
- /asynciterator.prototype@1.0.0:
- resolution: {integrity: sha512-wwHYEIS0Q80f5mosx3L/dfG5t5rjEa9Ft51GTaNt862EnpyGHpgz2RkZvLPp1oF5TnAiTohkEKVEu8pQPJI7Vg==}
- dependencies:
- has-symbols: 1.0.3
- dev: true
-
/at-least-node@1.0.0:
resolution: {integrity: sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==}
engines: {node: '>= 4.0.0'}
dev: false
- /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
/axe-core@4.7.0:
resolution: {integrity: sha512-M0JtH+hlOL5pLQwHOLNYZaXuhqmvS8oExsqB1SBYgA4Dk7u/xx+YdGHXaK5pyUfed5mYXdlYiphWq3G8cRi5JQ==}
@@ -2964,62 +2988,62 @@ packages:
dequal: 2.0.3
dev: true
- /babel-loader@8.3.0(@babel/core@7.23.7)(webpack@5.89.0):
+ /babel-loader@8.3.0(@babel/core@7.24.3)(webpack@5.90.3):
resolution: {integrity: sha512-H8SvsMF+m9t15HNLMipppzkC+Y2Yq+v3SonZyU70RBL/h1gxPkH08Ot8pEE9Z4Kd+czyWJClmFS8qzIP9OZ04Q==}
engines: {node: '>= 8.9'}
peerDependencies:
'@babel/core': ^7.0.0
webpack: '>=2'
dependencies:
- '@babel/core': 7.23.7
+ '@babel/core': 7.24.3
find-cache-dir: 3.3.2
loader-utils: 2.0.4
make-dir: 3.1.0
schema-utils: 2.7.1
- webpack: 5.89.0
+ webpack: 5.90.3
dev: false
/babel-plugin-macros@3.1.0:
resolution: {integrity: sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==}
engines: {node: '>=10', npm: '>=6'}
dependencies:
- '@babel/runtime': 7.23.8
+ '@babel/runtime': 7.24.1
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.10(@babel/core@7.24.3):
+ resolution: {integrity: sha512-rpIuu//y5OX6jVU+a5BCn1R5RSZYWAl2Nar76iwaOdycqb6JPxediskWFMMl7stfwNJR4b7eiQvh5fB5TEQJTQ==}
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/compat-data': 7.24.1
+ '@babel/core': 7.24.3
+ '@babel/helper-define-polyfill-provider': 0.6.1(@babel/core@7.24.3)
semver: 6.3.1
transitivePeerDependencies:
- supports-color
dev: false
- /babel-plugin-polyfill-corejs3@0.8.7(@babel/core@7.23.7):
- resolution: {integrity: sha512-KyDvZYxAzkC0Aj2dAPyDzi2Ym15e5JKZSK+maI7NAwSqofvuFglbSsxE7wUOvTg9oFVnHMzVzBKcqEb4PJgtOA==}
+ /babel-plugin-polyfill-corejs3@0.10.4(@babel/core@7.24.3):
+ resolution: {integrity: sha512-25J6I8NGfa5YkCDogHRID3fVCadIR8/pGl1/spvCkzb6lVn6SR3ojpx9nOn9iEBcUsjY24AmdKm5khcfKdylcg==}
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.3
+ '@babel/helper-define-polyfill-provider': 0.6.1(@babel/core@7.24.3)
+ core-js-compat: 3.36.1
transitivePeerDependencies:
- supports-color
dev: false
- /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.6.1(@babel/core@7.24.3):
+ resolution: {integrity: sha512-JfTApdE++cgcTWjsiCQlLyFBMbTUft9ja17saCc93lgV33h4tuCVj7tlvu//qpLwaG+3yEz7/KhahGrUMkVq9g==}
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.3
+ '@babel/helper-define-polyfill-provider': 0.6.1(@babel/core@7.24.3)
transitivePeerDependencies:
- supports-color
dev: false
@@ -3049,15 +3073,15 @@ packages:
dependencies:
fill-range: 7.0.1
- /browserslist@4.22.2:
- resolution: {integrity: sha512-0UgcrvQmBDvZHFGdYUehrCNIazki7/lUP3kkoi/r3YB2amZbFM9J43ZRkJTXBUZK4gmx56+Sqk9+Vs9mwZx9+A==}
+ /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.30001577
- electron-to-chromium: 1.4.632
+ caniuse-lite: 1.0.30001599
+ electron-to-chromium: 1.4.711
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: false
/buffer-from@1.1.2:
@@ -3075,19 +3099,22 @@ packages:
streamsearch: 1.1.0
dev: false
- /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.2.0
+ get-intrinsic: 1.2.4
+ set-function-length: 1.2.2
/callsites@3.1.0:
resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==}
engines: {node: '>=6'}
- /caniuse-lite@1.0.30001577:
- resolution: {integrity: sha512-rs2ZygrG1PNXMfmncM0B5H1hndY5ZCC9b5TkFaVNfZ+AUlyqcMyVIQtc3fsezi0NUCk5XZfDf9WS6WxMxnfdrg==}
+ /caniuse-lite@1.0.30001599:
+ resolution: {integrity: sha512-LRAQHZ4yT1+f9LemSMeqdMpMxZcc4RMWdj4tiFe3G8tNkWK+E58g+/tzotb5cU6TbcVJLr4fySiAW7XmxQvZQA==}
dev: false
/chalk@2.4.2:
@@ -3116,14 +3143,14 @@ packages:
engines: {node: '>=6.0'}
dev: false
- /clean-webpack-plugin@4.0.0(webpack@5.89.0):
+ /clean-webpack-plugin@4.0.0(webpack@5.90.3):
resolution: {integrity: sha512-WuWE1nyTNAyW5T7oNyys2EN0cfP2fdRxhxnIQWiAp0bMabPdHhoGxM8A6YL2GhqwgrPnnaemVE7nv5XJ2Fhh2w==}
engines: {node: '>=10.0.0'}
peerDependencies:
webpack: '>=4.0.0 <6.0.0'
dependencies:
del: 4.1.1
- webpack: 5.89.0
+ webpack: 5.90.3
dev: false
/cli-cursor@4.0.0:
@@ -3219,10 +3246,10 @@ packages:
is-what: 4.1.16
dev: false
- /core-js-compat@3.35.0:
- resolution: {integrity: sha512-5blwFAddknKeNgsjBzilkdQ0+YK8L1PfqPYq40NOYMYFSS38qj+hpTcLLWwpIwA2A5bje/x5jmVn2tzUMg9IVw==}
+ /core-js-compat@3.36.1:
+ resolution: {integrity: sha512-Dk997v9ZCt3X/npqzyGdTlq6t7lDBhZwGvV94PKzDArjp7BTRm7WlDAXYd/OWdeFHO8OChQYRJNJvUCqCbrtKA==}
dependencies:
- browserslist: 4.22.2
+ browserslist: 4.23.0
dev: false
/cosmiconfig@7.1.0:
@@ -3257,11 +3284,32 @@ packages:
resolution: {integrity: sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==}
dev: true
- /date-fns@2.30.0:
- resolution: {integrity: sha512-fnULvOpxnC5/Vg3NCiWelDsLiUc9bRwAPs/+LfTLNvetFCtCTN+yQz15C/fs4AwX1R9K5GLtLfn8QW+dWisaAw==}
- engines: {node: '>=0.11'}
+ /data-view-buffer@1.0.1:
+ resolution: {integrity: sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==}
+ engines: {node: '>= 0.4'}
+ dependencies:
+ call-bind: 1.0.7
+ es-errors: 1.3.0
+ is-data-view: 1.0.1
+
+ /data-view-byte-length@1.0.1:
+ resolution: {integrity: sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==}
+ engines: {node: '>= 0.4'}
dependencies:
- '@babel/runtime': 7.23.8
+ call-bind: 1.0.7
+ es-errors: 1.3.0
+ is-data-view: 1.0.1
+
+ /data-view-byte-offset@1.0.0:
+ resolution: {integrity: sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==}
+ engines: {node: '>= 0.4'}
+ dependencies:
+ call-bind: 1.0.7
+ es-errors: 1.3.0
+ is-data-view: 1.0.1
+
+ /date-fns@3.6.0:
+ resolution: {integrity: sha512-fRHTG8g/Gif+kSh50gaGEdToemgfj74aRX3swtiouboip5JDLAyDE9F11nHMIcvOaXeOC6D7SpNhi7uFyB7Uww==}
dev: false
/debug@3.2.7:
@@ -3295,20 +3343,20 @@ packages:
engines: {node: '>=0.10.0'}
dev: false
- /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-properties@1.2.1:
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
/del@4.1.1:
@@ -3352,7 +3400,7 @@ packages:
/dom-helpers@5.2.1:
resolution: {integrity: sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==}
dependencies:
- '@babel/runtime': 7.23.8
+ '@babel/runtime': 7.24.1
csstype: 3.1.3
dev: false
@@ -3374,8 +3422,8 @@ packages:
jake: 10.8.7
dev: false
- /electron-to-chromium@1.4.632:
- resolution: {integrity: sha512-JGmudTwg7yxMYvR/gWbalqqQiyu7WTFv2Xu3vw4cJHXPFxNgAk0oy8UHaer8nLF4lZJa+rNoj6GsrKIVJTV6Tw==}
+ /electron-to-chromium@1.4.711:
+ resolution: {integrity: sha512-hRg81qzvUEibX2lDxnFlVCHACa+LtrCPIsWAxo161LDYIB3jauf57RGsMZV9mvGwE98yGH06icj3zBEoOkxd/w==}
dev: false
/emoji-regex@9.2.2:
@@ -3387,8 +3435,8 @@ packages:
engines: {node: '>= 4'}
dev: false
- /enhanced-resolve@5.15.0:
- resolution: {integrity: sha512-LXYT42KJ7lpIKECr2mAXIaMldcNCh/7E0KBKOu4KSfkHmP+mZmSs+8V5gBAqisWBy0OO4W5Oyys0GO1Y8KtdKg==}
+ /enhanced-resolve@5.16.0:
+ resolution: {integrity: sha512-O+QWCviPNSSLAD9Ucn8Awv+poAkqn3T1XY5/N7kR7rQO9yfSGWkYZDwpJ+iKF7B8rxaQKWngSqACpgzeapSyoA==}
engines: {node: '>=10.13.0'}
dependencies:
graceful-fs: 4.2.11
@@ -3400,85 +3448,155 @@ packages:
is-arrayish: 0.2.1
dev: false
- /es-abstract@1.22.3:
- resolution: {integrity: sha512-eiiY8HQeYfYH2Con2berK+To6GrK2RxbPawDkGq4UiCQQfZHb6wX9qQqkbpPqaxQFcl8d9QzZqo0tGE0VcrdwA==}
+ /es-abstract@1.22.5:
+ resolution: {integrity: sha512-oW69R+4q2wG+Hc3KZePPZxOiisRIqfKBVo/HLx94QcJeWGU/8sZhCvc829rd1kS366vlJbzBfXf9yWwf0+Ko7w==}
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.2
+ 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.1.0
- safe-regex-test: 1.0.2
- string.prototype.trim: 1.2.8
- string.prototype.trimend: 1.0.7
+ regexp.prototype.flags: 1.5.2
+ safe-array-concat: 1.1.2
+ safe-regex-test: 1.0.3
+ string.prototype.trim: 1.2.9
+ string.prototype.trimend: 1.0.8
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.15
- /es-iterator-helpers@1.0.15:
- resolution: {integrity: sha512-GhoY8uYqd6iwUl2kgjTm4CZAf6oo5mHK7BPqx3rKgx893YSsy0LGHV6gfqqQvZt/8xM8xeOnfXBCfqclMKkJ5g==}
+ /es-abstract@1.23.2:
+ resolution: {integrity: sha512-60s3Xv2T2p1ICykc7c+DNDPLDMm9t4QxCOUU0K9JxiLjM3C1zB9YVdN7tjxrFd4+AkZ8CdX1ovUga4P2+1e+/w==}
+ engines: {node: '>= 0.4'}
dependencies:
- asynciterator.prototype: 1.0.0
- call-bind: 1.0.5
+ array-buffer-byte-length: 1.0.1
+ arraybuffer.prototype.slice: 1.0.3
+ available-typed-arrays: 1.0.7
+ call-bind: 1.0.7
+ data-view-buffer: 1.0.1
+ data-view-byte-length: 1.0.1
+ data-view-byte-offset: 1.0.0
+ es-define-property: 1.0.0
+ es-errors: 1.3.0
+ es-object-atoms: 1.0.0
+ es-set-tostringtag: 2.0.3
+ es-to-primitive: 1.2.1
+ function.prototype.name: 1.1.6
+ get-intrinsic: 1.2.4
+ get-symbol-description: 1.0.2
+ globalthis: 1.0.3
+ gopd: 1.0.1
+ has-property-descriptors: 1.0.2
+ has-proto: 1.0.3
+ has-symbols: 1.0.3
+ hasown: 2.0.2
+ internal-slot: 1.0.7
+ is-array-buffer: 3.0.4
+ is-callable: 1.2.7
+ is-data-view: 1.0.1
+ is-negative-zero: 2.0.3
+ is-regex: 1.1.4
+ is-shared-array-buffer: 1.0.3
+ is-string: 1.0.7
+ 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.2
+ safe-array-concat: 1.1.2
+ safe-regex-test: 1.0.3
+ string.prototype.trim: 1.2.9
+ string.prototype.trimend: 1.0.8
+ string.prototype.trimstart: 1.0.7
+ 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.15
+
+ /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.18:
+ resolution: {integrity: sha512-scxAJaewsahbqTYrGKJihhViaM6DDZDDoucfvzNbK0pOren1g/daDQ3IAhzn+1G14rBG7w+i5N+qul60++zlKA==}
+ engines: {node: '>= 0.4'}
+ dependencies:
+ call-bind: 1.0.7
define-properties: 1.2.1
- es-abstract: 1.22.3
- es-set-tostringtag: 2.0.2
+ es-abstract: 1.23.2
+ 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.1.0
+ safe-array-concat: 1.1.2
dev: true
- /es-module-lexer@1.4.1:
- resolution: {integrity: sha512-cXLGjP0c4T3flZJKQSuziYoq7MlT+rnvfZjfp7h+I7K9BNX54kP9nyWvdbwjQ4u1iWbOL4u96fgeZLToQlZC7w==}
+ /es-module-lexer@1.4.2:
+ resolution: {integrity: sha512-7nOqkomXZEaxUDJw21XZNtRk739QvrPSoZoRtbsEfcii00vdzZUh6zh1CQwHhrib8MdEtJfv5rJiGeb4KuV/vw==}
dev: false
- /es-set-tostringtag@2.0.2:
- resolution: {integrity: sha512-BuDyupZt65P9D2D2vA/zqcI3G5xRsklm5N3xCwuiy+/vKy8i0ifdsQP1sLgO4tZDSCaQUSnmC48khknGMV3D2Q==}
+ /es-object-atoms@1.0.0:
+ resolution: {integrity: sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==}
+ engines: {node: '>= 0.4'}
+ dependencies:
+ es-errors: 1.3.0
+
+ /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.2
/es-shim-unscopables@1.0.2:
resolution: {integrity: sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==}
dependencies:
- hasown: 2.0.0
+ hasown: 2.0.2
dev: true
/es-to-primitive@1.2.1:
@@ -3519,8 +3637,8 @@ packages:
'@esbuild/win32-x64': 0.18.20
dev: true
- /escalade@3.1.1:
- resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==}
+ /escalade@3.1.2:
+ resolution: {integrity: sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==}
engines: {node: '>=6'}
dev: false
@@ -3533,7 +3651,7 @@ packages:
resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==}
engines: {node: '>=10'}
- /eslint-config-next@13.5.6(eslint@8.56.0)(typescript@5.3.3):
+ /eslint-config-next@13.5.6(eslint@8.57.0)(typescript@5.4.2):
resolution: {integrity: sha512-o8pQsUHTo9aHqJ2YiZDym5gQAMRf7O2HndHo/JZeY7TDD+W4hk6Ma8Vw54RHiBeb7OWWO5dPirQB+Is/aVQ7Kg==}
peerDependencies:
eslint: ^7.23.0 || ^8.0.0
@@ -3543,28 +3661,28 @@ packages:
optional: true
dependencies:
'@next/eslint-plugin-next': 13.5.6
- '@rushstack/eslint-patch': 1.6.1
- '@typescript-eslint/parser': 5.62.0(eslint@8.56.0)(typescript@5.3.3)
- eslint: 8.56.0
+ '@rushstack/eslint-patch': 1.8.0
+ '@typescript-eslint/parser': 5.62.0(eslint@8.57.0)(typescript@5.4.2)
+ eslint: 8.57.0
eslint-import-resolver-node: 0.3.9
- eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@5.62.0)(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.56.0)
- eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.62.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.56.0)
- eslint-plugin-jsx-a11y: 6.8.0(eslint@8.56.0)
- eslint-plugin-react: 7.33.2(eslint@8.56.0)
- eslint-plugin-react-hooks: 4.6.0(eslint@8.56.0)
- typescript: 5.3.3
+ eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@5.62.0)(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.57.0)
+ eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.62.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0)
+ eslint-plugin-jsx-a11y: 6.8.0(eslint@8.57.0)
+ eslint-plugin-react: 7.34.1(eslint@8.57.0)
+ eslint-plugin-react-hooks: 4.6.0(eslint@8.57.0)
+ typescript: 5.4.2
transitivePeerDependencies:
- eslint-import-resolver-webpack
- supports-color
dev: true
- /eslint-config-prettier@8.10.0(eslint@8.56.0):
+ /eslint-config-prettier@8.10.0(eslint@8.57.0):
resolution: {integrity: sha512-SM8AMJdeQqRYT9O9zguiruQZaN7+z+E4eAP9oiLNGKMtomwaB1E9dcgUD6ZAn/eQAb52USbvezbiljfZUhbJcg==}
hasBin: true
peerDependencies:
eslint: '>=7.0.0'
dependencies:
- eslint: 8.56.0
+ eslint: 8.57.0
dev: true
/eslint-import-resolver-node@0.3.9:
@@ -3577,7 +3695,7 @@ packages:
- supports-color
dev: true
- /eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@5.62.0)(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.56.0):
+ /eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@5.62.0)(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.57.0):
resolution: {integrity: sha512-xgdptdoi5W3niYeuQxKmzVDTATvLYqhpwmykwsh7f6HIOStGWEIL9iqZgQDF9u9OEzrRwR8no5q2VT+bjAujTg==}
engines: {node: ^14.18.0 || >=16.0.0}
peerDependencies:
@@ -3585,12 +3703,12 @@ packages:
eslint-plugin-import: '*'
dependencies:
debug: 4.3.4
- enhanced-resolve: 5.15.0
- eslint: 8.56.0
- eslint-module-utils: 2.8.0(@typescript-eslint/parser@5.62.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@5.62.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.56.0)
+ enhanced-resolve: 5.16.0
+ eslint: 8.57.0
+ eslint-module-utils: 2.8.1(@typescript-eslint/parser@5.62.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0)
+ eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.62.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0)
fast-glob: 3.3.2
- get-tsconfig: 4.7.2
+ get-tsconfig: 4.7.3
is-core-module: 2.13.1
is-glob: 4.0.3
transitivePeerDependencies:
@@ -3600,8 +3718,8 @@ packages:
- supports-color
dev: true
- /eslint-module-utils@2.8.0(@typescript-eslint/parser@5.62.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@5.62.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': '*'
@@ -3621,24 +3739,24 @@ packages:
eslint-import-resolver-webpack:
optional: true
dependencies:
- '@typescript-eslint/parser': 5.62.0(eslint@8.56.0)(typescript@5.3.3)
+ '@typescript-eslint/parser': 5.62.0(eslint@8.57.0)(typescript@5.4.2)
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@5.62.0)(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.56.0)
+ eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@5.62.0)(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.57.0)
transitivePeerDependencies:
- supports-color
dev: true
- /eslint-plugin-css-import-order@1.1.0(eslint@8.56.0):
+ /eslint-plugin-css-import-order@1.1.0(eslint@8.57.0):
resolution: {integrity: sha512-43ODxP1sXpmgI4c+NCtXqmhkLsYGe8El1ewOlvsXKchLjWLxJw5zfp4eEg31Eni+is3jGkBL2TrNyUOOnbOMDg==}
peerDependencies:
eslint: '>= 6.0.0 < 9.0.0'
dependencies:
- eslint: 8.56.0
+ eslint: 8.57.0
dev: true
- /eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.62.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.56.0):
+ /eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.62.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0):
resolution: {integrity: sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==}
engines: {node: '>=4'}
peerDependencies:
@@ -3648,23 +3766,23 @@ packages:
'@typescript-eslint/parser':
optional: true
dependencies:
- '@typescript-eslint/parser': 5.62.0(eslint@8.56.0)(typescript@5.3.3)
+ '@typescript-eslint/parser': 5.62.0(eslint@8.57.0)(typescript@5.4.2)
array-includes: 3.1.7
- array.prototype.findlastindex: 1.2.3
+ array.prototype.findlastindex: 1.2.5
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@5.62.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@5.62.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0)
+ hasown: 2.0.2
is-core-module: 2.13.1
is-glob: 4.0.3
minimatch: 3.1.2
- object.fromentries: 2.0.7
- object.groupby: 1.0.1
- object.values: 1.1.7
+ object.fromentries: 2.0.8
+ object.groupby: 1.0.3
+ object.values: 1.2.0
semver: 6.3.1
tsconfig-paths: 3.15.0
transitivePeerDependencies:
@@ -3673,13 +3791,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.8
+ '@babel/runtime': 7.24.1
aria-query: 5.3.0
array-includes: 3.1.7
array.prototype.flatmap: 1.3.2
@@ -3688,51 +3806,53 @@ 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.18
+ eslint: 8.57.0
+ hasown: 2.0.2
jsx-ast-utils: 3.3.5
language-tags: 1.0.9
minimatch: 3.1.2
- object.entries: 1.1.7
- object.fromentries: 2.0.7
+ object.entries: 1.1.8
+ object.fromentries: 2.0.8
dev: true
- /eslint-plugin-react-hooks@4.6.0(eslint@8.56.0):
+ /eslint-plugin-react-hooks@4.6.0(eslint@8.57.0):
resolution: {integrity: sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==}
engines: {node: '>=10'}
peerDependencies:
eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0
dependencies:
- eslint: 8.56.0
+ eslint: 8.57.0
dev: true
- /eslint-plugin-react@7.33.2(eslint@8.56.0):
- resolution: {integrity: sha512-73QQMKALArI8/7xGLNI/3LylrEYrlKZSb5C9+q3OtOewTnMQi5cT+aE9E41sLCmli3I9PGGmD1yiZydyo4FEPw==}
+ /eslint-plugin-react@7.34.1(eslint@8.57.0):
+ resolution: {integrity: sha512-N97CxlouPT1AHt8Jn0mhhN2RrADlUAsk1/atcT2KyA/l9Q/E6ll7OIGwNumFmWfZ9skV3XXccYS19h80rHtgkw==}
engines: {node: '>=4'}
peerDependencies:
eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8
dependencies:
array-includes: 3.1.7
+ array.prototype.findlast: 1.2.5
array.prototype.flatmap: 1.3.2
- array.prototype.tosorted: 1.1.2
+ array.prototype.toreversed: 1.1.2
+ array.prototype.tosorted: 1.1.3
doctrine: 2.1.0
- es-iterator-helpers: 1.0.15
- eslint: 8.56.0
+ es-iterator-helpers: 1.0.18
+ eslint: 8.57.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.entries: 1.1.8
+ object.fromentries: 2.0.8
object.hasown: 1.1.3
- object.values: 1.1.7
+ object.values: 1.2.0
prop-types: 15.8.1
resolve: 2.0.0-next.5
semver: 6.3.1
- string.prototype.matchall: 4.0.10
+ string.prototype.matchall: 4.0.11
dev: true
- /eslint-plugin-unused-imports@2.0.0(@typescript-eslint/eslint-plugin@5.62.0)(eslint@8.56.0):
+ /eslint-plugin-unused-imports@2.0.0(@typescript-eslint/eslint-plugin@5.62.0)(eslint@8.57.0):
resolution: {integrity: sha512-3APeS/tQlTrFa167ThtP0Zm0vctjr4M44HMpeg1P4bK6wItarumq0Ma82xorMKdFsWpphQBlRPzw/pxiVELX1A==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
peerDependencies:
@@ -3742,8 +3862,8 @@ packages:
'@typescript-eslint/eslint-plugin':
optional: true
dependencies:
- '@typescript-eslint/eslint-plugin': 5.62.0(@typescript-eslint/parser@5.62.0)(eslint@8.56.0)(typescript@5.3.3)
- eslint: 8.56.0
+ '@typescript-eslint/eslint-plugin': 5.62.0(@typescript-eslint/parser@5.62.0)(eslint@8.57.0)(typescript@5.4.2)
+ eslint: 8.57.0
eslint-rule-composer: 0.3.0
dev: true
@@ -3772,15 +3892,15 @@ packages:
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
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
+ '@eslint/js': 8.57.0
'@humanwhocodes/config-array': 0.11.14
'@humanwhocodes/module-importer': 1.0.1
'@nodelib/fs.walk': 1.2.8
@@ -3802,7 +3922,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
@@ -3875,7 +3995,7 @@ packages:
human-signals: 4.3.1
is-stream: 3.0.0
merge-stream: 2.0.0
- npm-run-path: 5.2.0
+ npm-run-path: 5.3.0
onetime: 6.0.0
signal-exit: 3.0.7
strip-final-newline: 3.0.0
@@ -3901,8 +4021,8 @@ packages:
resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==}
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
@@ -3958,13 +4078,13 @@ 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
- /flatted@3.2.9:
- resolution: {integrity: sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==}
+ /flatted@3.3.1:
+ resolution: {integrity: sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==}
dev: true
/for-each@0.3.3:
@@ -3999,9 +4119,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.5
functions-have-names: 1.2.3
/functions-have-names@1.2.3:
@@ -4012,13 +4132,15 @@ packages:
engines: {node: '>=6.9.0'}
dev: false
- /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.2
/get-own-enumerable-property-symbols@3.0.2:
resolution: {integrity: sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==}
@@ -4029,15 +4151,16 @@ packages:
engines: {node: '>=10'}
dev: true
- /get-symbol-description@1.0.0:
- resolution: {integrity: sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==}
+ /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
- /get-tsconfig@4.7.2:
- resolution: {integrity: sha512-wuMsz4leaj5hbGgg4IvDU0bqJagpftG5l5cXIAvo8uZrqn0NJqwtfupTN00VnkQJPcIRrxYrm1Ue24btpCha2A==}
+ /get-tsconfig@4.7.3:
+ resolution: {integrity: sha512-ZvkrzoUA0PQZM6fy6+/Hce561s+faD1rsNwhnO5FelNjyy7EMGJ3Rz1AQ8GYDWjhRs/7dBLOEJvhK8MiEJOAFg==}
dependencies:
resolve-pkg-maps: 1.0.0
dev: true
@@ -4105,7 +4228,7 @@ 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
@@ -4131,7 +4254,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==}
@@ -4152,27 +4275,27 @@ 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
- /hasown@2.0.0:
- resolution: {integrity: sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==}
+ /hasown@2.0.2:
+ resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==}
engines: {node: '>= 0.4'}
dependencies:
function-bind: 1.1.2
@@ -4198,8 +4321,8 @@ packages:
resolution: {integrity: sha512-gchesWBzyvGHRO9W8tzUWFDycow5gwjvFKfyV9FF32Y7F50yZMp7mP+T2mJIWFx49zicqyC4uefHM17o6xKIVQ==}
dev: false
- /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'}
/import-fresh@3.3.0:
@@ -4223,20 +4346,20 @@ packages:
/inherits@2.0.4:
resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==}
- /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.2
+ side-channel: 1.0.6
- /is-array-buffer@3.0.2:
- resolution: {integrity: sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==}
+ /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
/is-arrayish@0.2.1:
resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==}
@@ -4246,7 +4369,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:
@@ -4258,8 +4381,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
/is-callable@1.2.7:
resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==}
@@ -4268,13 +4391,19 @@ packages:
/is-core-module@2.13.1:
resolution: {integrity: sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==}
dependencies:
- hasown: 2.0.0
+ hasown: 2.0.2
+
+ /is-data-view@1.0.1:
+ resolution: {integrity: sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==}
+ engines: {node: '>= 0.4'}
+ dependencies:
+ is-typed-array: 1.1.13
/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
/is-extglob@2.1.1:
resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==}
@@ -4283,7 +4412,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@4.0.0:
@@ -4295,7 +4424,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:
@@ -4304,23 +4433,24 @@ packages:
dependencies:
is-extglob: 2.1.1
- /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: false
- /is-negative-zero@2.0.2:
- resolution: {integrity: sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==}
+ /is-negative-zero@2.0.3:
+ resolution: {integrity: sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==}
engines: {node: '>= 0.4'}
/is-number-object@1.0.7:
resolution: {integrity: sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==}
engines: {node: '>= 0.4'}
dependencies:
- has-tostringtag: 1.0.0
+ has-tostringtag: 1.0.2
/is-number@7.0.0:
resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==}
@@ -4359,22 +4489,24 @@ 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
/is-regexp@1.0.0:
resolution: {integrity: sha512-7zjFAPO4/gwyQAAgRRmqeEeyIICSdmCqa3tsVHMdBzaXXRiqopZL4Cyghg/XulGWrtABTpbnYYzzIRffLkP4oA==}
engines: {node: '>=0.10.0'}
dev: false
- /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
/is-stream@2.0.1:
resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==}
@@ -4390,7 +4522,7 @@ packages:
resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==}
engines: {node: '>= 0.4'}
dependencies:
- has-tostringtag: 1.0.0
+ has-tostringtag: 1.0.2
/is-symbol@1.0.4:
resolution: {integrity: sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==}
@@ -4398,26 +4530,28 @@ packages:
dependencies:
has-symbols: 1.0.3
- /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.15
- /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
- /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-what@4.1.16:
@@ -4436,10 +4570,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.6
+ set-function-name: 2.0.2
dev: true
/jake@10.8.7:
@@ -4457,7 +4591,7 @@ packages:
resolution: {integrity: sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==}
engines: {node: '>= 10.13.0'}
dependencies:
- '@types/node': 20.11.4
+ '@types/node': 20.11.30
merge-stream: 2.0.0
supports-color: 7.2.0
dev: false
@@ -4466,13 +4600,13 @@ packages:
resolution: {integrity: sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==}
engines: {node: '>= 10.13.0'}
dependencies:
- '@types/node': 20.11.4
+ '@types/node': 20.11.30
merge-stream: 2.0.0
supports-color: 8.1.1
dev: false
- /jotai@2.6.2(@types/react@18.2.48)(react@18.2.0):
- resolution: {integrity: sha512-kl4KguU1Fr+tFiLi3A3h9qPEzhvLTTDA10DO3QZAz6k7BEaQJ+qvSBwolzonnfNI4QzEovyQfUqVgnRxfnnQVQ==}
+ /jotai@2.7.1(@types/react@18.2.67)(react@18.2.0):
+ resolution: {integrity: sha512-bsaTPn02nFgWNP6cBtg/htZhCu4s0wxqoklRHePp6l/vlsypR9eLn7diRliwXYWMXDpPvW/LLA2afI8vwgFFaw==}
engines: {node: '>=12.20.0'}
peerDependencies:
'@types/react': '>=17.0.0'
@@ -4483,7 +4617,7 @@ packages:
react:
optional: true
dependencies:
- '@types/react': 18.2.48
+ '@types/react': 18.2.67
react: 18.2.0
dev: false
@@ -4564,7 +4698,7 @@ packages:
array-includes: 3.1.7
array.prototype.flat: 1.3.2
object.assign: 4.1.5
- object.values: 1.1.7
+ object.values: 1.2.0
dev: true
/keyv@4.5.4:
@@ -4639,7 +4773,7 @@ packages:
colorette: 2.0.20
eventemitter3: 5.0.1
log-update: 5.0.1
- rfdc: 1.3.0
+ rfdc: 1.3.1
wrap-ansi: 8.1.0
dev: true
@@ -4807,17 +4941,17 @@ packages:
resolution: {integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==}
dev: false
- /next-pwa@5.6.0(@babel/core@7.23.7)(next@13.4.1)(webpack@5.89.0):
+ /next-pwa@5.6.0(@babel/core@7.24.3)(next@13.4.1)(webpack@5.90.3):
resolution: {integrity: sha512-XV8g8C6B7UmViXU8askMEYhWwQ4qc/XqJGnexbLV68hzKaGHZDMtHsm2TNxFcbR7+ypVuth/wwpiIlMwpRJJ5A==}
peerDependencies:
next: '>=9.0.0'
dependencies:
- babel-loader: 8.3.0(@babel/core@7.23.7)(webpack@5.89.0)
- clean-webpack-plugin: 4.0.0(webpack@5.89.0)
+ babel-loader: 8.3.0(@babel/core@7.24.3)(webpack@5.90.3)
+ clean-webpack-plugin: 4.0.0(webpack@5.90.3)
globby: 11.1.0
- next: 13.4.1(@babel/core@7.23.7)(react-dom@18.2.0)(react@18.2.0)
- terser-webpack-plugin: 5.3.10(webpack@5.89.0)
- workbox-webpack-plugin: 6.6.0(webpack@5.89.0)
+ next: 13.4.1(@babel/core@7.24.3)(react-dom@18.2.0)(react@18.2.0)
+ terser-webpack-plugin: 5.3.10(webpack@5.90.3)
+ workbox-webpack-plugin: 6.6.0(webpack@5.90.3)
workbox-window: 6.6.0
transitivePeerDependencies:
- '@babel/core'
@@ -4836,11 +4970,11 @@ packages:
superjson: ^1
dependencies:
hoist-non-react-statics: 3.3.2
- next: 13.4.1(@babel/core@7.23.7)(react-dom@18.2.0)(react@18.2.0)
+ next: 13.4.1(@babel/core@7.24.3)(react-dom@18.2.0)(react@18.2.0)
superjson: 1.13.3
dev: false
- /next@13.4.1(@babel/core@7.23.7)(react-dom@18.2.0)(react@18.2.0):
+ /next@13.4.1(@babel/core@7.24.3)(react-dom@18.2.0)(react@18.2.0):
resolution: {integrity: sha512-JBw2kAIyhKDpjhEWvNVoFeIzNp9xNxg8wrthDOtMctfn3EpqGCmW0FSviNyGgOSOSn6zDaX48pmvbdf6X2W9xA==}
engines: {node: '>=16.8.0'}
hasBin: true
@@ -4864,11 +4998,11 @@ packages:
'@next/env': 13.4.1
'@swc/helpers': 0.5.1
busboy: 1.6.0
- caniuse-lite: 1.0.30001577
+ caniuse-lite: 1.0.30001599
postcss: 8.4.14
react: 18.2.0
react-dom: 18.2.0(react@18.2.0)
- styled-jsx: 5.1.1(@babel/core@7.23.7)(react@18.2.0)
+ styled-jsx: 5.1.1(@babel/core@7.24.3)(react@18.2.0)
zod: 3.21.4
optionalDependencies:
'@next/swc-darwin-arm64': 13.4.1
@@ -4904,8 +5038,8 @@ packages:
- csstype
dev: false
- /npm-run-path@5.2.0:
- resolution: {integrity: sha512-W4/tgAXFqFA0iL7fk0+uQ3g7wkL8xJmx3XdK0VGb4cHW//eZTtKGvFBBoRKVTpY7n6ze4NL9ly7rgXcHufqXKg==}
+ /npm-run-path@5.3.0:
+ resolution: {integrity: sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==}
engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
dependencies:
path-key: 4.0.0
@@ -4926,52 +5060,53 @@ 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
- /object.entries@1.1.7:
- resolution: {integrity: sha512-jCBs/0plmPsOnrKAfFQXRG2NFjlhZgjjcBLSmTnEhU8U6vVTsVe8ANeQJCHTl3gSsI4J+0emOoCgoKlmQPMgmA==}
+ /object.entries@1.1.8:
+ resolution: {integrity: sha512-cmopxi8VwRIAw/fkijJohSfpef5PdN0pMQJN6VC/ZKvn0LIknWD8KtgY6KlQdEc4tIjcQ3HxSMmnvtzIscdaYQ==}
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-object-atoms: 1.0.0
dev: true
- /object.fromentries@2.0.7:
- resolution: {integrity: sha512-UPbPHML6sL8PI/mOqPwsH4G6iyXcCGzLin8KvEPenOZN5lpCNBZZQ+V62vdjB1mQHrmqGQt5/OJzemUA+KJmEA==}
+ /object.fromentries@2.0.8:
+ resolution: {integrity: sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==}
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.23.2
+ es-object-atoms: 1.0.0
dev: true
- /object.groupby@1.0.1:
- resolution: {integrity: sha512-HqaQtqLnp/8Bn4GL16cj+CUYbnpe1bh0TtEaWvybszDG4tgxCJuRpV8VGuvNaI1fAnI4lUJzDG55MXcOH4JZcQ==}
+ /object.groupby@1.0.3:
+ resolution: {integrity: sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==}
+ 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.23.2
dev: true
/object.hasown@1.1.3:
resolution: {integrity: sha512-fFI4VcYpRHvSLXxP7yiZOMAd331cPfd2p7PFDVbgUsYOfCT3tICVqXWngbjr4m49OvsBwUBQ6O2uQoJvy3RexA==}
dependencies:
define-properties: 1.2.1
- es-abstract: 1.22.3
+ es-abstract: 1.22.5
dev: true
- /object.values@1.1.7:
- resolution: {integrity: sha512-aU6xnDFYT3x17e/f0IiiwlGPTy2jzMySGfUB4fq6z7CV8l85CWHDk5ErhyhpfDHhrOMwGFhSQkhMGHaIotA6Ng==}
+ /object.values@1.2.0:
+ resolution: {integrity: sha512-yBYjY9QX2hnRmZHAjG/f13MzmBzxzYgQhFrke06TTyKY5zSTEqkOeukBzIdVA3j3ulu8Qa3MbVFShV7T2RmGtQ==}
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-object-atoms: 1.0.0
dev: true
/once@1.4.0:
@@ -5053,7 +5188,7 @@ packages:
resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==}
engines: {node: '>=8'}
dependencies:
- '@babel/code-frame': 7.23.5
+ '@babel/code-frame': 7.24.2
error-ex: 1.3.2
json-parse-even-better-errors: 2.3.1
lines-and-columns: 1.2.4
@@ -5131,13 +5266,17 @@ packages:
find-up: 4.1.0
dev: false
+ /possible-typed-array-names@1.0.0:
+ resolution: {integrity: sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==}
+ engines: {node: '>= 0.4'}
+
/postcss@8.4.14:
resolution: {integrity: sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==}
engines: {node: ^10 || ^12 || >=14}
dependencies:
nanoid: 3.3.7
picocolors: 1.0.0
- source-map-js: 1.0.2
+ source-map-js: 1.2.0
dev: false
/prelude-ls@1.2.1:
@@ -5156,13 +5295,13 @@ packages:
engines: {node: '>=6'}
dev: false
- /prisma@5.8.1:
- resolution: {integrity: sha512-N6CpjzECnUHZ5beeYpDzkt2rYpEdAeqXX2dweu6BoQaeYkNZrC/WJHM+5MO/uidFHTak8QhkPKBWck1o/4MD4A==}
+ /prisma@5.11.0:
+ resolution: {integrity: sha512-KCLiug2cs0Je7kGkQBN9jDWoZ90ogE/kvZTUTgz2h94FEo8pczCkPH7fPNXkD1sGU7Yh65risGGD1HQ5DF3r3g==}
engines: {node: '>=16.13'}
hasBin: true
requiresBuild: true
dependencies:
- '@prisma/engines': 5.8.1
+ '@prisma/engines': 5.11.0
/prop-types@15.8.1:
resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==}
@@ -5205,7 +5344,7 @@ packages:
scheduler: 0.23.0
dev: false
- /react-hook-form-mui@6.8.0(@mui/icons-material@5.15.4)(@mui/material@5.15.4)(@mui/x-date-pickers@6.19.0)(react-hook-form@7.49.3)(react@18.2.0):
+ /react-hook-form-mui@6.8.0(@mui/icons-material@5.15.14)(@mui/material@5.15.14)(@mui/x-date-pickers@6.19.8)(react-hook-form@7.51.1)(react@18.2.0):
resolution: {integrity: sha512-p+Hu/z+nVgSoCXEijs1aXjOUmGoGX0oWzgyBJR4Xgay+il3c6E0HdSHd94XxcmC6i08a88u/+zJ96tuDDjjzRw==}
engines: {node: '>=14'}
peerDependencies:
@@ -5220,16 +5359,16 @@ packages:
'@mui/x-date-pickers':
optional: true
dependencies:
- '@mui/icons-material': 5.15.4(@mui/material@5.15.4)(@types/react@18.2.48)(react@18.2.0)
- '@mui/material': 5.15.4(@emotion/react@11.11.3)(@emotion/styled@11.11.0)(@types/react@18.2.48)(react-dom@18.2.0)(react@18.2.0)
- '@mui/x-date-pickers': 6.19.0(@emotion/react@11.11.3)(@emotion/styled@11.11.0)(@mui/material@5.15.4)(@mui/system@5.15.4)(@types/react@18.2.48)(date-fns@2.30.0)(react-dom@18.2.0)(react@18.2.0)
+ '@mui/icons-material': 5.15.14(@mui/material@5.15.14)(@types/react@18.2.67)(react@18.2.0)
+ '@mui/material': 5.15.14(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@types/react@18.2.67)(react-dom@18.2.0)(react@18.2.0)
+ '@mui/x-date-pickers': 6.19.8(@emotion/react@11.11.4)(@emotion/styled@11.11.0)(@mui/material@5.15.14)(@mui/system@5.15.14)(@types/react@18.2.67)(date-fns@3.6.0)(react-dom@18.2.0)(react@18.2.0)
react: 18.2.0
- react-hook-form: 7.49.3(react@18.2.0)
+ react-hook-form: 7.51.1(react@18.2.0)
dev: false
- /react-hook-form@7.49.3(react@18.2.0):
- resolution: {integrity: sha512-foD6r3juidAT1cOZzpmD/gOKt7fRsDhXXZ0y28+Al1CHgX+AY1qIN9VSIIItXRq1dN68QrRwl1ORFlwjBaAqeQ==}
- engines: {node: '>=18', pnpm: '8'}
+ /react-hook-form@7.51.1(react@18.2.0):
+ resolution: {integrity: sha512-ifnBjl+kW0ksINHd+8C/Gp6a4eZOdWyvRv0UBaByShwU8JbVx5hTcTWEcd5VdybvmPTATkVVXk9npXArHmo56w==}
+ engines: {node: '>=12.22.0'}
peerDependencies:
react: ^16.8.0 || ^17 || ^18
dependencies:
@@ -5249,7 +5388,7 @@ packages:
react: '>=16.6.0'
react-dom: '>=16.6.0'
dependencies:
- '@babel/runtime': 7.23.8
+ '@babel/runtime': 7.24.1
dom-helpers: 5.2.1
loose-envify: 1.4.0
prop-types: 15.8.1
@@ -5264,14 +5403,15 @@ packages:
loose-envify: 1.4.0
dev: false
- /reflect.getprototypeof@1.0.4:
- resolution: {integrity: sha512-ECkTw8TmJwW60lOTR+ZkODISW6RQ8+2CL3COqtiJKLd6MmB45hN51HprHFziKLGkAuTGQhBb91V8cy+KHlaCjw==}
+ /reflect.getprototypeof@1.0.6:
+ resolution: {integrity: sha512-fmfw4XgoDke3kdI6h4xcUz1dG8uaiv5q9gcEwLS4Pnth2kxT+GZ7YehS1JTMGBQmtV7Y4GFGbs2re2NqhdozUg==}
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.23.2
+ es-errors: 1.3.0
+ get-intrinsic: 1.2.4
globalthis: 1.0.3
which-builtin-type: 1.1.3
dev: true
@@ -5293,16 +5433,17 @@ packages:
/regenerator-transform@0.15.2:
resolution: {integrity: sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==}
dependencies:
- '@babel/runtime': 7.23.8
+ '@babel/runtime': 7.24.1
dev: false
- /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
/regexpu-core@5.3.2:
resolution: {integrity: sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==}
@@ -5365,8 +5506,8 @@ packages:
resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==}
engines: {iojs: '>=1.0.0', node: '>=0.10.0'}
- /rfdc@1.3.0:
- resolution: {integrity: sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==}
+ /rfdc@1.3.1:
+ resolution: {integrity: sha512-r5a3l5HzYlIC68TpmYKlxWjmOP6wiPJ1vWv2HeLhNsRZMrCkxeqxiHlQ21oXmQ4F3SiryXBHhAD7JZqvOJjFmg==}
dev: true
/rimraf@2.7.1:
@@ -5389,11 +5530,11 @@ packages:
peerDependencies:
rollup: ^2.0.0
dependencies:
- '@babel/code-frame': 7.23.5
+ '@babel/code-frame': 7.24.2
jest-worker: 26.6.2
rollup: 2.79.1
serialize-javascript: 4.0.0
- terser: 5.26.0
+ terser: 5.29.2
dev: false
/rollup@2.79.1:
@@ -5409,12 +5550,12 @@ packages:
dependencies:
queue-microtask: 1.2.3
- /safe-array-concat@1.1.0:
- resolution: {integrity: sha512-ZdQ0Jeb9Ofti4hbt5lX3T2JcAamT9hfzYU1MNB+z/jaEbB6wfFfPIR/zEORmZqobkCCJhSjodobH6WHNmJ97dg==}
+ /safe-array-concat@1.1.2:
+ resolution: {integrity: sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==}
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
@@ -5422,12 +5563,12 @@ packages:
resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==}
dev: false
- /safe-regex-test@1.0.2:
- resolution: {integrity: sha512-83S9w6eFq12BBIJYvjMux6/dkirb8+4zJRA9cxNBVb7Wq5fJBW+Xze48WqR8pxua7bDuAaaAxtVVd4Idjp1dBQ==}
+ /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
/scheduler@0.23.0:
@@ -5458,8 +5599,8 @@ packages:
resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==}
hasBin: true
- /semver@7.5.4:
- resolution: {integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==}
+ /semver@7.6.0:
+ resolution: {integrity: sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==}
engines: {node: '>=10'}
hasBin: true
dependencies:
@@ -5478,23 +5619,25 @@ packages:
randombytes: 2.1.0
dev: false
- /set-function-length@1.2.0:
- resolution: {integrity: sha512-4DBHDoyHlM1IRPGYcoxexgh67y4ueR53FKV1yyxwFMY7aCqcN/38M1+SwZ/qJQ8iLv7+ck385ot4CcisOAPT9w==}
+ /set-function-length@1.2.2:
+ resolution: {integrity: sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==}
engines: {node: '>= 0.4'}
dependencies:
- define-data-property: 1.1.1
+ define-data-property: 1.1.4
+ es-errors: 1.3.0
function-bind: 1.1.2
- get-intrinsic: 1.2.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
/shebang-command@2.0.0:
resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==}
@@ -5508,11 +5651,13 @@ packages:
engines: {node: '>=8'}
dev: true
- /side-channel@1.0.4:
- resolution: {integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==}
+ /side-channel@1.0.6:
+ resolution: {integrity: sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==}
+ 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:
@@ -5535,8 +5680,8 @@ packages:
resolution: {integrity: sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==}
dev: false
- /source-map-js@1.0.2:
- resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==}
+ /source-map-js@1.2.0:
+ resolution: {integrity: sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==}
engines: {node: '>=0.10.0'}
dev: false
@@ -5590,40 +5735,45 @@ packages:
strip-ansi: 7.1.0
dev: true
- /string.prototype.matchall@4.0.10:
- resolution: {integrity: sha512-rGXbGmOEosIQi6Qva94HUjgPs9vKW+dkG7Y8Q5O2OYkWL6wFaTRZO8zM4mhP94uX55wgyrXzfS2aGtGzUL7EJQ==}
+ /string.prototype.matchall@4.0.11:
+ resolution: {integrity: sha512-NUdh0aDavY2og7IbBPenWqR9exH+E26Sv8e0/eTe1tltDGZL+GtBkDAnnyBtmekfK6/Dq3MkcGtzXFEd1LQrtg==}
+ 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.23.2
+ es-errors: 1.3.0
+ es-object-atoms: 1.0.0
+ get-intrinsic: 1.2.4
+ gopd: 1.0.1
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.6
- /string.prototype.trim@1.2.8:
- resolution: {integrity: sha512-lfjY4HcixfQXOfaqCvcBuOIapyaroTXhbkfJN3gcB1OtyupngWK4sEET9Knd0cXd28kTUqu/kHoV4HKSJdnjiQ==}
+ /string.prototype.trim@1.2.9:
+ resolution: {integrity: sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==}
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.23.2
+ es-object-atoms: 1.0.0
- /string.prototype.trimend@1.0.7:
- resolution: {integrity: sha512-Ni79DqeB72ZFq1uH/L6zJ+DKZTkOtPIHovb3YZHQViE+HDouuU4mBrLOLDn5Dde3RF8qw5qVETEjhu9locMLvA==}
+ /string.prototype.trimend@1.0.8:
+ resolution: {integrity: sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==}
dependencies:
- call-bind: 1.0.5
+ call-bind: 1.0.7
define-properties: 1.2.1
- es-abstract: 1.22.3
+ es-object-atoms: 1.0.0
/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.5
/stringify-object@3.3.0:
resolution: {integrity: sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw==}
@@ -5668,7 +5818,7 @@ packages:
engines: {node: '>=8'}
dev: true
- /styled-jsx@5.1.1(@babel/core@7.23.7)(react@18.2.0):
+ /styled-jsx@5.1.1(@babel/core@7.24.3)(react@18.2.0):
resolution: {integrity: sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==}
engines: {node: '>= 12.0.0'}
peerDependencies:
@@ -5681,7 +5831,7 @@ packages:
babel-plugin-macros:
optional: true
dependencies:
- '@babel/core': 7.23.7
+ '@babel/core': 7.24.3
client-only: 0.0.1
react: 18.2.0
dev: false
@@ -5749,7 +5899,7 @@ packages:
unique-string: 2.0.0
dev: false
- /terser-webpack-plugin@5.3.10(webpack@5.89.0):
+ /terser-webpack-plugin@5.3.10(webpack@5.90.3):
resolution: {integrity: sha512-BKFPWlPDndPs+NGGCr1U59t0XScL5317Y0UReNrHaw9/FwhPENlq6bfgs+4yPfyP51vqC1bQ4rp1EfXW5ZSH9w==}
engines: {node: '>= 10.13.0'}
peerDependencies:
@@ -5765,20 +5915,20 @@ packages:
uglify-js:
optional: true
dependencies:
- '@jridgewell/trace-mapping': 0.3.21
+ '@jridgewell/trace-mapping': 0.3.25
jest-worker: 27.5.1
schema-utils: 3.3.0
serialize-javascript: 6.0.2
- terser: 5.26.0
- webpack: 5.89.0
+ terser: 5.29.2
+ webpack: 5.90.3
dev: false
- /terser@5.26.0:
- resolution: {integrity: sha512-dytTGoE2oHgbNV9nTzgBEPaqAWvcJNl66VZ0BkJqlvp71IjO8CxdBx/ykCNb47cLnCmCvRZ6ZR0tLkqvZCdVBQ==}
+ /terser@5.29.2:
+ resolution: {integrity: sha512-ZiGkhUBIM+7LwkNjXYJq8svgkd+QK3UUr0wJqY4MieaezBSAIPgbSPZyIx0idM6XWK5CMzSWa8MJIzmRcB8Caw==}
engines: {node: '>=10'}
hasBin: true
dependencies:
- '@jridgewell/source-map': 0.3.5
+ '@jridgewell/source-map': 0.3.6
acorn: 8.11.3
commander: 2.20.3
source-map-support: 0.5.21
@@ -5822,14 +5972,14 @@ packages:
resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==}
dev: false
- /tsutils@3.21.0(typescript@5.3.3):
+ /tsutils@3.21.0(typescript@5.4.2):
resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==}
engines: {node: '>= 6'}
peerDependencies:
typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta'
dependencies:
tslib: 1.14.1
- typescript: 5.3.3
+ typescript: 5.4.2
dev: true
/tsx@3.14.0:
@@ -5837,7 +5987,7 @@ packages:
hasBin: true
dependencies:
esbuild: 0.18.20
- get-tsconfig: 4.7.2
+ get-tsconfig: 4.7.3
source-map-support: 0.5.21
optionalDependencies:
fsevents: 2.3.3
@@ -5865,42 +6015,48 @@ packages:
engines: {node: '>=10'}
dev: true
- /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
- /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
- /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
- /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
- /typescript@5.3.3:
- resolution: {integrity: sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==}
+ /typescript@5.4.2:
+ resolution: {integrity: sha512-+2/g0Fds1ERlP6JsakQQDXjZdZMM+rqpamFZJEKh4kwTIn3iDkgKtby0CeNd5ATNZ4Ry1ax15TMx0W2V+miizQ==}
engines: {node: '>=14.17'}
hasBin: true
dev: true
@@ -5908,7 +6064,7 @@ packages:
/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
@@ -5963,14 +6119,14 @@ packages:
engines: {node: '>=4'}
dev: false
- /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: false
@@ -5987,19 +6143,18 @@ packages:
react: 18.2.0
dev: false
- /usehooks-ts@2.9.4(react-dom@18.2.0)(react@18.2.0):
- resolution: {integrity: sha512-VOSEbA+BGGORLttsICowNb5CG0D2/IEoVvMEl9OuuOoQi99W6XuNipo3SPFhWo3Bhdwi0Swj1D+IMQDQB9KrwQ==}
+ /usehooks-ts@2.16.0(react@18.2.0):
+ resolution: {integrity: sha512-bez95WqYujxp6hFdM/CpRDiVPirZPxlMzOH2QB8yopoKQMXpscyZoxOjpEdaxvV+CAWUDSM62cWnqHE0E/MZ7w==}
engines: {node: '>=16.15.0'}
peerDependencies:
- react: ^16.8.0 || ^17.0.0 || ^18.0.0
- react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0
+ react: ^16.8.0 || ^17 || ^18
dependencies:
+ lodash.debounce: 4.0.8
react: 18.2.0
- react-dom: 18.2.0(react@18.2.0)
dev: false
- /watchpack@2.4.0:
- resolution: {integrity: sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==}
+ /watchpack@2.4.1:
+ resolution: {integrity: sha512-8wrBCMtVhqcXP2Sup1ctSkga6uc2Bx0IIvKyT7yTFier5AXHooSI+QyQQAtTb7+E0IUCCKyTFmXqdqgum2XWGg==}
engines: {node: '>=10.13.0'}
dependencies:
glob-to-regexp: 0.4.1
@@ -6022,8 +6177,8 @@ packages:
engines: {node: '>=10.13.0'}
dev: false
- /webpack@5.89.0:
- resolution: {integrity: sha512-qyfIC10pOr70V+jkmud8tMfajraGCZMBWJtrmuBymQKCrLTRejBI8STDp1MCyZu/QTdZSeacCQYpYNQVOzX5kw==}
+ /webpack@5.90.3:
+ resolution: {integrity: sha512-h6uDYlWCctQRuXBs1oYpVe6sFcWedl0dpcVaTf/YF67J9bKvwJajFulMVSYKHrksMB3I/pIagRzDxwxkebuzKA==}
engines: {node: '>=10.13.0'}
hasBin: true
peerDependencies:
@@ -6034,15 +6189,15 @@ packages:
dependencies:
'@types/eslint-scope': 3.7.7
'@types/estree': 1.0.5
- '@webassemblyjs/ast': 1.11.6
- '@webassemblyjs/wasm-edit': 1.11.6
- '@webassemblyjs/wasm-parser': 1.11.6
+ '@webassemblyjs/ast': 1.12.1
+ '@webassemblyjs/wasm-edit': 1.12.1
+ '@webassemblyjs/wasm-parser': 1.12.1
acorn: 8.11.3
acorn-import-assertions: 1.9.0(acorn@8.11.3)
- browserslist: 4.22.2
+ browserslist: 4.23.0
chrome-trace-event: 1.0.3
- enhanced-resolve: 5.15.0
- es-module-lexer: 1.4.1
+ enhanced-resolve: 5.16.0
+ es-module-lexer: 1.4.2
eslint-scope: 5.1.1
events: 3.3.0
glob-to-regexp: 0.4.1
@@ -6053,8 +6208,8 @@ packages:
neo-async: 2.6.2
schema-utils: 3.3.0
tapable: 2.2.1
- terser-webpack-plugin: 5.3.10(webpack@5.89.0)
- watchpack: 2.4.0
+ terser-webpack-plugin: 5.3.10(webpack@5.90.3)
+ watchpack: 2.4.1
webpack-sources: 3.2.3
transitivePeerDependencies:
- '@swc/core'
@@ -6084,7 +6239,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
@@ -6093,28 +6248,29 @@ 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.15
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-typed-array@1.1.13:
- resolution: {integrity: sha512-P5Nra0qjSncduVPEAr7xhoF5guty49ArDTwzJ/yNuPIbZppyRxFQsRCWrocxIY+CnMVG+qfbU2FmDKyvSGClow==}
+ /which-typed-array@1.1.15:
+ resolution: {integrity: sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==}
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
/which@2.0.2:
resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==}
@@ -6142,10 +6298,10 @@ packages:
engines: {node: '>=10.0.0'}
dependencies:
'@apideck/better-ajv-errors': 0.3.6(ajv@8.12.0)
- '@babel/core': 7.23.7
- '@babel/preset-env': 7.23.8(@babel/core@7.23.7)
- '@babel/runtime': 7.23.8
- '@rollup/plugin-babel': 5.3.1(@babel/core@7.23.7)(rollup@2.79.1)
+ '@babel/core': 7.24.3
+ '@babel/preset-env': 7.24.3(@babel/core@7.24.3)
+ '@babel/runtime': 7.24.1
+ '@rollup/plugin-babel': 5.3.1(@babel/core@7.24.3)(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
@@ -6263,7 +6419,7 @@ packages:
resolution: {integrity: sha512-R2IkwDokbtHUE4Kus8pKO5+VkPHD2oqTgl+XJwh4zbF1HyjAbgNmK/FneZHVU7p03XUt9ICfuGDYISWG9qV/CQ==}
dev: false
- /workbox-webpack-plugin@6.6.0(webpack@5.89.0):
+ /workbox-webpack-plugin@6.6.0(webpack@5.90.3):
resolution: {integrity: sha512-xNZIZHalboZU66Wa7x1YkjIqEy1gTR+zPM+kjrYJzqN7iurYZBctBLISyScjhkJKYuRrZUP0iqViZTh8rS0+3A==}
engines: {node: '>=10.0.0'}
peerDependencies:
@@ -6272,7 +6428,7 @@ packages:
fast-json-stable-stringify: 2.1.0
pretty-bytes: 5.6.0
upath: 1.2.0
- webpack: 5.89.0
+ webpack: 5.90.3
webpack-sources: 1.4.3
workbox-build: 6.6.0
transitivePeerDependencies:
diff --git a/prisma/migrations/20230316173058_first_migration/migration.sql b/prisma/migrations/20230316173058_first_migration/migration.sql
@@ -1,77 +0,0 @@
--- CreateEnum
-CREATE TYPE "DayPeriod" AS ENUM ('Mon1', 'Mon2', 'Mon3', 'Mon4', 'Mon5', 'Mon6', 'Mon7', 'Tue1', 'Tue2', 'Tue3', 'Tue4', 'Tue5', 'Tue6', 'Tue7', 'Wed1', 'Wed2', 'Wed3', 'Wed4', 'Wed5', 'Wed6', 'Wed7', 'Thu1', 'Thu2', 'Thu3', 'Thu4', 'Thu5', 'Thu6', 'Fri1', 'Fri2', 'Fri3', 'Fri4', 'Fri5', 'Fri6', 'Fri7');
-
--- CreateTable
-CREATE TABLE "SchoolClass" (
- "id" SERIAL NOT NULL,
- "grade" INTEGER NOT NULL,
- "class" INTEGER NOT NULL,
- "updatedAt" TIMESTAMP(3) NOT NULL,
-
- CONSTRAINT "SchoolClass_pkey" PRIMARY KEY ("id")
-);
-
--- CreateTable
-CREATE TABLE "Class_DayPeriod_Subject" (
- "id" SERIAL NOT NULL,
- "classId" INTEGER NOT NULL,
- "dayPeriod" "DayPeriod" NOT NULL,
- "subjects" TEXT[],
- "updatedAt" TIMESTAMP(3) NOT NULL,
-
- CONSTRAINT "Class_DayPeriod_Subject_pkey" PRIMARY KEY ("id")
-);
-
--- CreateTable
-CREATE TABLE "GradeSchedule" (
- "id" SERIAL NOT NULL,
- "grade" INTEGER NOT NULL,
- "date" DATE NOT NULL,
- "period" INTEGER NOT NULL,
- "dayPeriod" "DayPeriod" NOT NULL,
- "updatedAt" TIMESTAMP(3) NOT NULL,
-
- CONSTRAINT "GradeSchedule_pkey" PRIMARY KEY ("id")
-);
-
--- CreateTable
-CREATE TABLE "ClassTemporarySchedule" (
- "id" SERIAL NOT NULL,
- "parentId" INTEGER NOT NULL,
- "classId" INTEGER NOT NULL,
- "date" DATE NOT NULL,
- "period" INTEGER NOT NULL,
- "sucjects" TEXT[],
- "updatedAt" TIMESTAMP(3) NOT NULL,
-
- CONSTRAINT "ClassTemporarySchedule_pkey" PRIMARY KEY ("id")
-);
-
--- CreateTable
-CREATE TABLE "ClassTemporaryScheduleGroup" (
- "id" SERIAL NOT NULL,
- "note" TEXT,
-
- CONSTRAINT "ClassTemporaryScheduleGroup_pkey" PRIMARY KEY ("id")
-);
-
--- CreateIndex
-CREATE UNIQUE INDEX "SchoolClass_grade_class_key" ON "SchoolClass"("grade", "class");
-
--- CreateIndex
-CREATE UNIQUE INDEX "Class_DayPeriod_Subject_classId_dayPeriod_key" ON "Class_DayPeriod_Subject"("classId", "dayPeriod");
-
--- CreateIndex
-CREATE UNIQUE INDEX "GradeSchedule_grade_date_period_key" ON "GradeSchedule"("grade", "date", "period");
-
--- CreateIndex
-CREATE UNIQUE INDEX "ClassTemporarySchedule_classId_date_period_key" ON "ClassTemporarySchedule"("classId", "date", "period");
-
--- AddForeignKey
-ALTER TABLE "Class_DayPeriod_Subject" ADD CONSTRAINT "Class_DayPeriod_Subject_classId_fkey" FOREIGN KEY ("classId") REFERENCES "SchoolClass"("id") ON DELETE RESTRICT ON UPDATE CASCADE;
-
--- AddForeignKey
-ALTER TABLE "ClassTemporarySchedule" ADD CONSTRAINT "ClassTemporarySchedule_parentId_fkey" FOREIGN KEY ("parentId") REFERENCES "ClassTemporaryScheduleGroup"("id") ON DELETE RESTRICT ON UPDATE CASCADE;
-
--- AddForeignKey
-ALTER TABLE "ClassTemporarySchedule" ADD CONSTRAINT "ClassTemporarySchedule_classId_fkey" FOREIGN KEY ("classId") REFERENCES "SchoolClass"("id") ON DELETE RESTRICT ON UPDATE CASCADE;
diff --git a/prisma/migrations/20230318180950_fix_typo/migration.sql b/prisma/migrations/20230318180950_fix_typo/migration.sql
@@ -1,9 +0,0 @@
-/*
- Warnings:
-
- - You are about to drop the column `sucjects` on the `ClassTemporarySchedule` table. All the data in the column will be lost.
-
-*/
--- AlterTable
-ALTER TABLE "ClassTemporarySchedule" DROP COLUMN "sucjects",
-ADD COLUMN "subjects" TEXT[];
diff --git a/prisma/migrations/20230324181509_cascade/migration.sql b/prisma/migrations/20230324181509_cascade/migration.sql
@@ -1,5 +0,0 @@
--- DropForeignKey
-ALTER TABLE "ClassTemporarySchedule" DROP CONSTRAINT "ClassTemporarySchedule_parentId_fkey";
-
--- AddForeignKey
-ALTER TABLE "ClassTemporarySchedule" ADD CONSTRAINT "ClassTemporarySchedule_parentId_fkey" FOREIGN KEY ("parentId") REFERENCES "ClassTemporaryScheduleGroup"("id") ON DELETE CASCADE ON UPDATE CASCADE;
diff --git a/prisma/migrations/20230408160935_temporary_group_optional/migration.sql b/prisma/migrations/20230408160935_temporary_group_optional/migration.sql
@@ -1,2 +0,0 @@
--- AlterTable
-ALTER TABLE "ClassTemporarySchedule" ALTER COLUMN "parentId" DROP NOT NULL;
diff --git a/prisma/migrations/20230408165310_add_event_table/migration.sql b/prisma/migrations/20230408165310_add_event_table/migration.sql
@@ -1,11 +0,0 @@
--- CreateTable
-CREATE TABLE "SchoolEvent" (
- "id" SERIAL NOT NULL,
- "grades" INTEGER[],
- "date" DATE NOT NULL,
- "title" TEXT NOT NULL,
- "detail" TEXT,
- "updatedAt" TIMESTAMP(3) NOT NULL,
-
- CONSTRAINT "SchoolEvent_pkey" PRIMARY KEY ("id")
-);
diff --git a/prisma/migrations/migration_lock.toml b/prisma/migrations/migration_lock.toml
@@ -1,3 +0,0 @@
-# Please do not edit this file manually
-# It should be added in your version-control system (i.e. Git)
-provider = "postgresql"-
\ No newline at end of file
diff --git a/prisma/reset.ts b/prisma/reset.ts
@@ -1,46 +0,0 @@
-import { PrismaClient } from '@prisma/client';
-
-const prisma = new PrismaClient();
-
-async function main() {
- {
- const result = await prisma.class_DayPeriod_Subject.deleteMany();
- console.log(
- `Class_DayPeriod_Subject のレコードを 全件 (${result.count}件) 削除しました。`
- );
- }
- {
- const result = await prisma.gradeSchedule.deleteMany();
- console.log(
- `GradeSchedule のレコードを 全件 (${result.count}件) 削除しました。`
- );
- }
- {
- const result = await prisma.classTemporarySchedule.deleteMany();
- console.log(
- `ClassTemporarySchedule のレコードを 全件 (${result.count}件) 削除しました。`
- );
- }
- {
- const result = await prisma.classTemporaryScheduleGroup.deleteMany();
- console.log(
- `ClassTemporaryScheduleGroup のレコードを 全件 (${result.count}件) 削除しました。`
- );
- }
- {
- const result = await prisma.schoolEvent.deleteMany();
- console.log(
- `SchoolEvent のレコードを 全件 (${result.count}件) 削除しました。`
- );
- }
-}
-
-main()
- .then(async () => {
- await prisma.$disconnect();
- })
- .catch(async (e) => {
- console.error(e);
- await prisma.$disconnect();
- process.exit(1);
- });
diff --git a/prisma/schema.prisma b/prisma/schema.prisma
@@ -1,12 +1,10 @@
// This is your Prisma schema file,
// learn more about it in the docs: https://pris.ly/d/prisma-schema
-// 曜日時限: DayPeriod
-
// プログラムから扱うクライアント
generator client {
provider = "prisma-client-js"
- previewFeatures = ["jsonProtocol"]
+ previewFeatures = []
}
datasource db {
@@ -15,109 +13,3 @@ datasource db {
directUrl = env("POSTGRES_URL_NON_POOLING") // uses a direct connection
shadowDatabaseUrl = env("POSTGRES_URL_NON_POOLING") // used for migrations
}
-
-// 各クラス
-model SchoolClass {
- id Int @id @default(autoincrement())
- grade Int
- class Int
- updatedAt DateTime @updatedAt
- dayPeriod_Subjects Class_DayPeriod_Subject[]
- temporarySchedules ClassTemporarySchedule[]
-
- @@unique([grade, class])
-}
-
-// 各クラスの「曜日時限」→「科目名」
-model Class_DayPeriod_Subject {
- id Int @id @default(autoincrement())
- class SchoolClass @relation(fields: [classId], references: [id])
- classId Int
- dayPeriod DayPeriod
- subjects String[]
- updatedAt DateTime @updatedAt
-
- @@unique([classId, dayPeriod])
-}
-
-// 学年ごとの「曜日時限時間割表」の1コマ
-model GradeSchedule {
- id Int @id @default(autoincrement())
- grade Int
- date DateTime @db.Date
- period Int
- dayPeriod DayPeriod
- updatedAt DateTime @updatedAt
-
- @@unique([grade, date, period])
-}
-
-// クラスごとの「臨時変更」の1コマ
-model ClassTemporarySchedule {
- id Int @id @default(autoincrement())
- parent ClassTemporaryScheduleGroup? @relation(fields: [parentId], references: [id], onDelete: Cascade)
- parentId Int?
- class SchoolClass @relation(fields: [classId], references: [id])
- classId Int
- date DateTime @db.Date
- period Int
- subjects String[]
- updatedAt DateTime @updatedAt
-
- @@unique([classId, date, period])
-}
-
-// クラスごとの「臨時変更」のかたまり 一旦使わない
-model ClassTemporaryScheduleGroup {
- id Int @id @default(autoincrement())
- children ClassTemporarySchedule[]
- note String?
-}
-
-// 学年・学年単位の行事など
-model SchoolEvent {
- id Int @id @default(autoincrement())
- grades Int[]
- date DateTime @db.Date
- title String
- detail String?
- updatedAt DateTime @updatedAt
-}
-
-// 「曜日時限」の列挙型
-enum DayPeriod {
- Mon1
- Mon2
- Mon3
- Mon4
- Mon5
- Mon6
- Mon7
- Tue1
- Tue2
- Tue3
- Tue4
- Tue5
- Tue6
- Tue7
- Wed1
- Wed2
- Wed3
- Wed4
- Wed5
- Wed6
- Wed7
- Thu1
- Thu2
- Thu3
- Thu4
- Thu5
- Thu6
- Fri1
- Fri2
- Fri3
- Fri4
- Fri5
- Fri6
- Fri7
-}
diff --git a/prisma/seed.ts b/prisma/seed.ts
@@ -1,31 +0,0 @@
-import { PrismaClient } from '@prisma/client';
-
-import { CLASSES, GRADES } from 'common/constant';
-
-const prisma = new PrismaClient();
-
-async function main() {
- const classes = GRADES.flatMap((g) =>
- CLASSES.map((c) => ({
- grade: g,
- class: c,
- }))
- );
-
- const result = await prisma.schoolClass.createMany({
- data: classes,
- skipDuplicates: true,
- });
-
- console.log(`SchoolClass のレコードを ${result.count} 件作成しました`);
-}
-
-main()
- .then(async () => {
- await prisma.$disconnect();
- })
- .catch(async (e) => {
- console.error(e);
- await prisma.$disconnect();
- process.exit(1);
- });
diff --git a/src/client/components/ClassPicker/index.tsx b/src/client/components/ClassPicker/index.tsx
@@ -1,48 +0,0 @@
-import {
- FormControl,
- InputLabel,
- Select,
- MenuItem,
- FormHelperText,
-} from '@mui/material';
-
-import type { SchoolClass } from '@prisma/client';
-
-type Props = {
- disabled?: boolean;
- classId?: number;
- classes: SchoolClass[];
- setClassId: (arg: number) => void;
-};
-
-export default function ClassPicker({
- disabled,
- classes,
- classId,
- setClassId,
-}: Props) {
- return (
- <FormControl
- fullWidth
- required
- disabled={disabled}
- error={typeof classId === 'undefined'}
- >
- <InputLabel>クラス</InputLabel>
- <Select
- value={classId ?? ''}
- label='クラス'
- onChange={(e) => setClassId(e.target.value as number)}
- >
- {classes.map((c) => (
- <MenuItem value={c.id} key={c.id}>
- {c.grade}-{c.class}
- </MenuItem>
- ))}
- </Select>
- {typeof classId === 'undefined' && (
- <FormHelperText>選択してください</FormHelperText>
- )}
- </FormControl>
- );
-}
diff --git a/src/client/components/DatePickerLocalizationProvider/index.tsx b/src/client/components/DatePickerLocalizationProvider/index.tsx
@@ -1,8 +1,9 @@
import { LocalizationProvider, jaJP } from '@mui/x-date-pickers';
-import { AdapterDateFns } from '@mui/x-date-pickers/AdapterDateFns';
+import { AdapterDateFns } from '@mui/x-date-pickers/AdapterDateFnsV3';
import { ja } from 'date-fns/locale';
import type { LocalizationProviderProps } from '@mui/x-date-pickers';
+import type { Locale } from 'date-fns/locale';
export default function DatePickerLocalizationProvider({
children,
diff --git a/src/client/features/console/classStandard/components/InputForm.tsx b/src/client/features/console/classStandard/components/InputForm.tsx
@@ -1,42 +0,0 @@
-import { useDebouncedValue } from '@mantine/hooks';
-import SaveIcon from '@mui/icons-material/Save';
-import LoadingButton from '@mui/lab/LoadingButton';
-import { Backdrop, CircularProgress, Box } from '@mui/material';
-
-import useRegisterStandardTimetable from '../hooks/useStandardTimetable';
-
-import InputTable from './InputTable';
-
-type Props = {
- classId: number;
-};
-
-export default function InputForm({ classId }: Props) {
- const { fetching, sending, get, set, submit } =
- useRegisterStandardTimetable(classId);
- const loading = fetching || sending;
- const [debouncedLoading] = useDebouncedValue(loading, 1000);
-
- return (
- <>
- <Backdrop open={loading && !!debouncedLoading}>
- <CircularProgress color='inherit' />
- </Backdrop>
-
- <InputTable get={get} set={set} disabled={fetching || sending} />
-
- <Box>
- <LoadingButton
- variant='contained'
- loading={sending}
- loadingPosition='start'
- disabled={fetching || sending}
- startIcon={<SaveIcon />}
- onClick={() => submit()}
- >
- 保存
- </LoadingButton>
- </Box>
- </>
- );
-}
diff --git a/src/client/features/console/classStandard/components/InputTable.tsx b/src/client/features/console/classStandard/components/InputTable.tsx
@@ -1,243 +0,0 @@
-import {
- TableContainer,
- Paper,
- Table,
- TableHead,
- TableRow,
- TableCell,
- TableBody,
-} from '@mui/material';
-
-import LessonCell from './LessonCell';
-
-import type { DayPeriod } from '@prisma/client';
-
-type Props = {
- get: (key: DayPeriod) => string[];
- set: (key: DayPeriod, value: string[]) => void;
- disabled?: boolean;
-};
-
-export default function InputTable({ get, set, disabled }: Props) {
- const getCellParams = (dayPeriod: DayPeriod) => {
- return {
- subjects: get(dayPeriod),
- handleChange: (newValue: string) =>
- set(
- dayPeriod,
- newValue.split('/').map((v) => v.trim())
- ),
- };
- };
-
- return (
- <TableContainer component={Paper}>
- <Table sx={{ minWidth: '50rem', overflowX: 'scroll' }}>
- <TableHead>
- <TableRow>
- <TableCell>時限</TableCell>
- <TableCell>月</TableCell>
- <TableCell>火</TableCell>
- <TableCell>水</TableCell>
- <TableCell>木</TableCell>
- <TableCell>金</TableCell>
- </TableRow>
- </TableHead>
- <TableBody>
- <TableRow>
- <TableCell>1</TableCell>
- <LessonCell
- {...getCellParams('Mon1')}
- disabled={disabled}
- tabIndex={111}
- />
- <LessonCell
- {...getCellParams('Tue1')}
- disabled={disabled}
- tabIndex={121}
- />
- <LessonCell
- {...getCellParams('Wed1')}
- disabled={disabled}
- tabIndex={131}
- />
- <LessonCell
- {...getCellParams('Thu1')}
- disabled={disabled}
- tabIndex={141}
- />
- <LessonCell
- {...getCellParams('Fri1')}
- disabled={disabled}
- tabIndex={151}
- />
- </TableRow>
- <TableRow>
- <TableCell>2</TableCell>
- <LessonCell
- {...getCellParams('Mon2')}
- disabled={disabled}
- tabIndex={112}
- />
- <LessonCell
- {...getCellParams('Tue2')}
- disabled={disabled}
- tabIndex={122}
- />
- <LessonCell
- {...getCellParams('Wed2')}
- disabled={disabled}
- tabIndex={132}
- />
- <LessonCell
- {...getCellParams('Thu2')}
- disabled={disabled}
- tabIndex={142}
- />
- <LessonCell
- {...getCellParams('Fri2')}
- disabled={disabled}
- tabIndex={152}
- />
- </TableRow>
- <TableRow>
- <TableCell>3</TableCell>
- <LessonCell
- {...getCellParams('Mon3')}
- disabled={disabled}
- tabIndex={113}
- />
- <LessonCell
- {...getCellParams('Tue3')}
- disabled={disabled}
- tabIndex={123}
- />
- <LessonCell
- {...getCellParams('Wed3')}
- disabled={disabled}
- tabIndex={133}
- />
- <LessonCell
- {...getCellParams('Thu3')}
- disabled={disabled}
- tabIndex={143}
- />
- <LessonCell
- {...getCellParams('Fri3')}
- disabled={disabled}
- tabIndex={153}
- />
- </TableRow>
- <TableRow>
- <TableCell>4</TableCell>
- <LessonCell
- {...getCellParams('Mon4')}
- disabled={disabled}
- tabIndex={114}
- />
- <LessonCell
- {...getCellParams('Tue4')}
- disabled={disabled}
- tabIndex={124}
- />
- <LessonCell
- {...getCellParams('Wed4')}
- disabled={disabled}
- tabIndex={134}
- />
- <LessonCell
- {...getCellParams('Thu4')}
- disabled={disabled}
- tabIndex={144}
- />
- <LessonCell
- {...getCellParams('Fri4')}
- disabled={disabled}
- tabIndex={154}
- />
- </TableRow>
- <TableRow>
- <TableCell>5</TableCell>
- <LessonCell
- {...getCellParams('Mon5')}
- disabled={disabled}
- tabIndex={115}
- />
- <LessonCell
- {...getCellParams('Tue5')}
- disabled={disabled}
- tabIndex={125}
- />
- <LessonCell
- {...getCellParams('Wed5')}
- disabled={disabled}
- tabIndex={135}
- />
- <LessonCell
- {...getCellParams('Thu5')}
- disabled={disabled}
- tabIndex={145}
- />
- <LessonCell
- {...getCellParams('Fri5')}
- disabled={disabled}
- tabIndex={155}
- />
- </TableRow>
- <TableRow>
- <TableCell>6</TableCell>
- <LessonCell
- {...getCellParams('Mon6')}
- disabled={disabled}
- tabIndex={116}
- />
- <LessonCell
- {...getCellParams('Tue6')}
- disabled={disabled}
- tabIndex={126}
- />
- <LessonCell
- {...getCellParams('Wed6')}
- disabled={disabled}
- tabIndex={136}
- />
- <LessonCell
- {...getCellParams('Thu6')}
- disabled={disabled}
- tabIndex={146}
- />
- <LessonCell
- {...getCellParams('Fri6')}
- disabled={disabled}
- tabIndex={156}
- />
- </TableRow>
- <TableRow>
- <TableCell>7</TableCell>
- <LessonCell
- {...getCellParams('Mon7')}
- disabled={disabled}
- tabIndex={117}
- />
- <LessonCell
- {...getCellParams('Tue7')}
- disabled={disabled}
- tabIndex={127}
- />
- <LessonCell
- {...getCellParams('Wed7')}
- disabled={disabled}
- tabIndex={137}
- />
- <TableCell></TableCell>
- <LessonCell
- {...getCellParams('Fri7')}
- disabled={disabled}
- tabIndex={157}
- />
- </TableRow>
- </TableBody>
- </Table>
- </TableContainer>
- );
-}
diff --git a/src/client/features/console/classStandard/components/LessonCell.tsx b/src/client/features/console/classStandard/components/LessonCell.tsx
@@ -1,25 +0,0 @@
-import { TableCell, TextField } from '@mui/material';
-import { memo } from 'react';
-
-type Props = {
- subjects: string[];
- handleChange: (newValue: string) => void;
- tabIndex: number;
- disabled?: boolean;
-};
-
-function LessonCell({ subjects, handleChange, tabIndex, disabled }: Props) {
- return (
- <TableCell>
- <TextField
- variant='standard'
- value={subjects.join('/')}
- onChange={(e) => handleChange(e.target.value)}
- inputProps={{ tabIndex: tabIndex }}
- disabled={disabled}
- />
- </TableCell>
- );
-}
-
-export default memo(LessonCell);
diff --git a/src/client/features/console/classStandard/hooks/useStandardTimetable.ts b/src/client/features/console/classStandard/hooks/useStandardTimetable.ts
@@ -1,83 +0,0 @@
-import { useSnackbar } from 'notistack';
-import { useCallback } from 'react';
-
-import useMap from 'client/hooks/useMap';
-import { trpc } from 'client/utils/trpc';
-
-import type { DayPeriod } from '@prisma/client';
-
-type Result = {
- fetching: boolean;
- sending: boolean;
- get: (key: DayPeriod) => string[];
- set: (key: DayPeriod, value: string[]) => void;
- submit: () => void;
-};
-
-const useRegisterStandardTimetable = (classId: number): Result => {
- const trpcCtx = trpc.useContext();
- const { enqueueSnackbar } = useSnackbar();
-
- const [modifiedMap, modifiedMapActions] = useMap<DayPeriod, string[]>();
-
- const standardQuery = trpc.classStandard.byId.useQuery(
- { id: classId },
- {
- onError: () =>
- enqueueSnackbar('エラーが発生しました', {
- variant: 'error',
- autoHideDuration: 6000,
- }),
- }
- );
-
- const standardMutation = trpc.classStandard.update.useMutation({
- onSuccess: (data) => {
- modifiedMapActions.reset();
- trpcCtx.classStandard.byId.setData({ id: classId }, data);
- enqueueSnackbar('正常に保存されました', {
- variant: 'success',
- autoHideDuration: 2000,
- });
- },
- onError: () => {
- enqueueSnackbar('エラーが発生しました', {
- variant: 'error',
- autoHideDuration: 6000,
- });
- },
- });
-
- const get = useCallback(
- (key: DayPeriod): string[] => {
- return (
- modifiedMap.get(key) ?? standardQuery.data?.standard.get(key) ?? []
- );
- },
- [modifiedMap, standardQuery.data?.standard]
- );
-
- const set = useCallback(
- (key: DayPeriod, value: string[]): void => {
- modifiedMapActions.set(key, value);
- },
- [modifiedMapActions]
- );
-
- const submit = useCallback(() => {
- standardMutation.mutate({
- id: classId,
- standard: new Map(modifiedMap.entries()),
- });
- }, [classId, modifiedMap, standardMutation]);
-
- return {
- fetching: standardQuery.isFetching,
- sending: standardMutation.isLoading,
- get,
- set,
- submit,
- };
-};
-
-export default useRegisterStandardTimetable;
diff --git a/src/client/features/console/classStandard/index.tsx b/src/client/features/console/classStandard/index.tsx
@@ -1,29 +0,0 @@
-import { Box, Stack } from '@mui/material';
-import { useState } from 'react';
-
-import ClassPicker from 'client/components/ClassPicker';
-
-import InputForm from './components/InputForm';
-
-import type { SchoolClass } from '@prisma/client';
-
-type Props = {
- classes: SchoolClass[];
-};
-
-export default function ClassStandardTimetableEditor({ classes }: Props) {
- const [classId, setClassId] = useState<number>();
-
- return (
- <Stack spacing={4} my={4} mx={{ xs: 1, md: 4 }}>
- <Box width='8rem'>
- <ClassPicker
- classes={classes}
- classId={classId}
- setClassId={setClassId}
- />
- </Box>
- {classId && <InputForm classId={classId} />}
- </Stack>
- );
-}
diff --git a/src/client/features/console/classTemporarySchedule/components/CreateForm.tsx b/src/client/features/console/classTemporarySchedule/components/CreateForm.tsx
@@ -1,146 +0,0 @@
-import SaveIcon from '@mui/icons-material/Save';
-import LoadingButton from '@mui/lab/LoadingButton';
-import { Box, Paper, Autocomplete, TextField, Grid } from '@mui/material';
-import { useSnackbar } from 'notistack';
-import { useState } from 'react';
-import { z } from 'zod';
-
-import DatePicker from 'client/components/DatePicker';
-import { trpc } from 'client/utils/trpc';
-import { DATE_FORMAT, SCHOOL_TIMES } from 'common/constant';
-import formatDate from 'common/utils/formatDate';
-
-import type { SchoolTime } from 'common/types';
-
-type Props = {
- classId: number;
- invalidateQuery: () => Promise<void>;
-};
-
-// 新規作成用フォーム
-export default function CreateForm({ classId, invalidateQuery }: Props) {
- const { enqueueSnackbar } = useSnackbar();
-
- const [date, setDate] = useState<Date | null>(null);
- const [period, setPeriod] = useState<SchoolTime | null>(null);
- const [subjects, setSubjects] = useState<string>('');
- const [groupId, setGruopId] = useState<string>('');
- // グループIDのバリデーション
- const parsedGroupId = z.coerce
- .number({ invalid_type_error: '整数値を入力してください' })
- .int({ message: '整数値を入力してください' })
- .safeParse(groupId);
-
- const mutation = trpc.classTemporarySchedule.create.useMutation({
- onSuccess: () => {
- invalidateQuery();
- setDate(null);
- setPeriod(null);
- setSubjects('');
- setGruopId('');
- enqueueSnackbar('正常に保存されました', {
- variant: 'success',
- autoHideDuration: 2000,
- });
- },
- onError: (err) => {
- enqueueSnackbar(`エラーが発生しました\n${err.message}`, {
- variant: 'error',
- autoHideDuration: 6000,
- });
- },
- });
-
- const handleSubmit = async () => {
- if (date && period && parsedGroupId.success) {
- return await mutation.mutateAsync({
- classId,
- date: formatDate(date, DATE_FORMAT),
- period,
- subjects: subjects.split('/'),
- parentId: parsedGroupId.data ?? undefined,
- });
- } else {
- enqueueSnackbar('入力内容を確認してください', {
- variant: 'warning',
- autoHideDuration: 6000,
- });
- }
- return;
- };
-
- return (
- <Box component={Paper} p={4}>
- <Grid container spacing={4}>
- <Grid item width='15rem'>
- <DatePicker
- value={date}
- onChange={(newValue) => newValue && setDate(newValue)}
- label='日付'
- slotProps={{
- textField: {
- size: 'medium',
- required: true,
- placeholder: '日付を選択',
- },
- }}
- disabled={mutation.isLoading}
- />
- </Grid>
-
- <Grid item width={150}>
- <Autocomplete
- disablePortal
- autoSelect
- value={period}
- onChange={(_, newValue) => setPeriod(newValue)}
- options={SCHOOL_TIMES}
- getOptionLabel={(v) => `${v}限`}
- renderInput={(params) => (
- <TextField {...params} label='時限' required />
- )}
- disabled={mutation.isLoading}
- />
- </Grid>
-
- <Grid item width={200}>
- <TextField
- value={subjects}
- onChange={(event) => setSubjects(event.target.value)}
- label='科目'
- required
- disabled={mutation.isLoading}
- />
- </Grid>
-
- <Grid item width={160}>
- <TextField
- value={groupId}
- onChange={(event) => setGruopId(event.target.value)}
- inputProps={{ inputMode: 'numeric', pattern: '[0-9]*' }}
- label='グループID'
- helperText={
- parsedGroupId.success
- ? 'グループIDが存在する場合のみ入力'
- : parsedGroupId.error.issues[0]?.message
- }
- error={!parsedGroupId.success}
- disabled={mutation.isLoading}
- />
- </Grid>
-
- <Grid item>
- <LoadingButton
- onClick={handleSubmit}
- variant='contained'
- startIcon={<SaveIcon />}
- loadingPosition='start'
- loading={mutation.isLoading}
- >
- 新規作成
- </LoadingButton>
- </Grid>
- </Grid>
- </Box>
- );
-}
diff --git a/src/client/features/console/classTemporarySchedule/components/EditTable/DeleteCell.tsx b/src/client/features/console/classTemporarySchedule/components/EditTable/DeleteCell.tsx
@@ -1,103 +0,0 @@
-import { useDisclosure } from '@mantine/hooks';
-import DeleteIcon from '@mui/icons-material/Delete';
-import LoadingButton from '@mui/lab/LoadingButton';
-import {
- DialogTitle,
- DialogContent,
- DialogContentText,
- DialogActions,
- Button,
- TableCell,
- IconButton,
- Dialog,
-} from '@mui/material';
-import { useSnackbar } from 'notistack';
-
-import { trpc } from 'client/utils/trpc';
-import formatDate from 'common/utils/formatDate';
-
-import type { ClassTemporarySchedule } from '@prisma/client';
-
-type DeleteDialogProps = {
- id: number;
- contentText: string;
- open: boolean;
- handleClose: () => void;
- invalidateQuery: () => Promise<void>;
-};
-
-function DeleteDialog({
- id,
- contentText,
- open,
- handleClose,
- invalidateQuery,
-}: DeleteDialogProps) {
- const { enqueueSnackbar } = useSnackbar();
-
- const mutation = trpc.classTemporarySchedule.delete.useMutation({
- onSuccess: () => {
- invalidateQuery();
- enqueueSnackbar('正常に削除されました', {
- variant: 'success',
- autoHideDuration: 2000,
- });
- },
- onError: () =>
- enqueueSnackbar('エラーが発生しました', {
- variant: 'error',
- autoHideDuration: 6000,
- }),
- });
- const handleDelete = () =>
- mutation.mutateAsync({ id }).then(() => handleClose());
-
- return (
- <Dialog open={open} onClose={handleClose}>
- <DialogTitle>本当に削除しますか?</DialogTitle>
- <DialogContent>
- <DialogContentText>{contentText}</DialogContentText>
- </DialogContent>
- <DialogActions>
- <Button onClick={handleClose}>いいえ</Button>
- <LoadingButton onClick={handleDelete} loading={mutation.isLoading}>
- 削除する
- </LoadingButton>
- </DialogActions>
- </Dialog>
- );
-}
-
-type Props = {
- data: ClassTemporarySchedule;
- invalidateQuery: () => Promise<void>;
-};
-
-export default function DeleteCell({ data, invalidateQuery }: Props) {
- const [open, handlers] = useDisclosure(false);
-
- const dateString = formatDate(data.date, 'yyyy/MM/dd (EEEEE)');
- const content = `${dateString} ${data.period}限 「${data.subjects.join(
- '/'
- )}」を永久に削除してもよろしいですか?`;
-
- return (
- <TableCell>
- <IconButton
- onClick={handlers.open}
- aria-label='削除する'
- sx={{ color: 'red' }}
- size='small'
- >
- <DeleteIcon />
- </IconButton>
- <DeleteDialog
- id={data.id}
- contentText={content}
- open={open}
- handleClose={handlers.close}
- invalidateQuery={invalidateQuery}
- />
- </TableCell>
- );
-}
diff --git a/src/client/features/console/classTemporarySchedule/components/EditTable/Row.tsx b/src/client/features/console/classTemporarySchedule/components/EditTable/Row.tsx
@@ -1,35 +0,0 @@
-import { TableRow, TableCell } from '@mui/material';
-
-import formatDate from 'common/utils/formatDate';
-
-import DeleteCell from './DeleteCell';
-import UpdateCell from './UpdateCell';
-
-import type { ClassTemporarySchedule } from '@prisma/client';
-
-type Props = {
- data: ClassTemporarySchedule;
- invalidateQuery: () => Promise<void>;
-};
-
-export default function Row({ data, invalidateQuery }: Props) {
- const dateString = formatDate(data.date, 'yyyy/MM/dd (EEEEE)');
- const updatedAtString = formatDate(
- data.updatedAt,
- 'yyyy/MM/dd (EEEEE) HH:mm:ss'
- );
- const subjectsString = data.subjects.join('/');
-
- return (
- <TableRow>
- <TableCell>{data.id}</TableCell>
- <TableCell>{dateString}</TableCell>
- <TableCell>{data.period}</TableCell>
- <TableCell>{subjectsString}</TableCell>
- <TableCell>{data.parentId}</TableCell>
- <TableCell>{updatedAtString}</TableCell>
- <UpdateCell data={data} invalidateQuery={invalidateQuery} />
- <DeleteCell data={data} invalidateQuery={invalidateQuery} />
- </TableRow>
- );
-}
diff --git a/src/client/features/console/classTemporarySchedule/components/EditTable/UpdateCell.tsx b/src/client/features/console/classTemporarySchedule/components/EditTable/UpdateCell.tsx
@@ -1,182 +0,0 @@
-import { useDisclosure } from '@mantine/hooks';
-import EditIcon from '@mui/icons-material/Edit';
-import LoadingButton from '@mui/lab/LoadingButton';
-import {
- DialogTitle,
- DialogContent,
- Stack,
- Box,
- Autocomplete,
- TextField,
- DialogActions,
- Button,
- TableCell,
- IconButton,
- Dialog,
-} from '@mui/material';
-import { useSnackbar } from 'notistack';
-import { useState } from 'react';
-import { z } from 'zod';
-
-import DatePicker from 'client/components/DatePicker';
-import { trpc } from 'client/utils/trpc';
-import { DATE_FORMAT, SCHOOL_TIMES } from 'common/constant';
-import formatDate from 'common/utils/formatDate';
-import { zodPeriod } from 'common/utils/zod';
-
-import type { ClassTemporarySchedule } from '@prisma/client';
-import type { SchoolTime } from 'common/types';
-
-type UpdateDialogProps = {
- data: ClassTemporarySchedule;
- open: boolean;
- handleClose: () => void;
- invalidateQuery: () => Promise<void>;
-};
-
-function UpdateDialog({
- data,
- open,
- handleClose,
- invalidateQuery,
-}: UpdateDialogProps) {
- const { enqueueSnackbar } = useSnackbar();
-
- const mutation = trpc.classTemporarySchedule.update.useMutation({
- onSuccess: () => {
- invalidateQuery();
- enqueueSnackbar('正常に更新されました', {
- variant: 'success',
- autoHideDuration: 2000,
- });
- },
- onError: (err) =>
- enqueueSnackbar(`エラーが発生しました\n${err.message}`, {
- variant: 'error',
- autoHideDuration: 6000,
- }),
- });
-
- const [date, setDate] = useState<Date>(data.date);
- const [period, setPeriod] = useState<SchoolTime>(
- zodPeriod.parse(data.period)
- );
- const [subjects, setSubjects] = useState<string>(data.subjects.join('/'));
- const [groupId, setGruopId] = useState<string>(
- data.parentId?.toString() ?? ''
- );
- const parsedGroupId = z.coerce
- .number({
- invalid_type_error: '自然数を入力してください',
- })
- .int({ message: '自然数を入力してください' })
- .positive('自然数を入力してください')
- .or(z.literal(''))
- .safeParse(groupId);
-
- const handleUpdate = () => {
- if (parsedGroupId.success) {
- return mutation
- .mutateAsync({
- id: data.id,
- date: formatDate(date, DATE_FORMAT),
- period,
- subjects: subjects.split('/'),
- parentId: parsedGroupId.data === '' ? undefined : parsedGroupId.data,
- })
- .then(() => handleClose());
- } else return;
- };
-
- return (
- <Dialog open={open} onClose={handleClose}>
- <DialogTitle>ID: {data.id} の編集</DialogTitle>
- <DialogContent>
- <Stack direction='column' spacing={4} m={1}>
- <Box width={250}>
- <DatePicker
- value={date}
- onChange={(newValue) => newValue && setDate(newValue)}
- label='日付'
- slotProps={{ textField: { size: 'medium', required: true } }}
- disabled={mutation.isLoading}
- />
- </Box>
-
- <Box width={100}>
- <Autocomplete
- disablePortal
- autoSelect
- disableClearable
- value={period}
- onChange={(_, newValue) => setPeriod(newValue)}
- options={SCHOOL_TIMES}
- getOptionLabel={(v) => `${v}限`}
- renderInput={(params) => (
- <TextField {...params} label='時限' required />
- )}
- disabled={mutation.isLoading}
- />
- </Box>
-
- <Box width={250}>
- <TextField
- value={subjects}
- onChange={(event) => setSubjects(event.target.value)}
- label='科目'
- required
- disabled={mutation.isLoading}
- />
- </Box>
-
- <Box width={150}>
- <TextField
- value={groupId}
- onChange={(event) => setGruopId(event.target.value)}
- inputProps={{ inputMode: 'numeric', pattern: '[0-9]*' }}
- label='グループID'
- helperText={
- !parsedGroupId.success
- ? parsedGroupId.error.issues[0]?.message
- : ''
- }
- error={!parsedGroupId.success}
- disabled={mutation.isLoading}
- />
- </Box>
- </Stack>
- </DialogContent>
- <DialogActions>
- <Button onClick={handleClose}>キャンセル</Button>
- <LoadingButton onClick={handleUpdate} loading={mutation.isLoading}>
- 保存する
- </LoadingButton>
- </DialogActions>
- </Dialog>
- );
-}
-
-type Props = {
- data: ClassTemporarySchedule;
- invalidateQuery: () => Promise<void>;
-};
-
-export default function UpdateCell({ data, invalidateQuery }: Props) {
- const [open, handlers] = useDisclosure(false);
-
- return (
- <>
- <TableCell>
- <IconButton onClick={handlers.open} aria-label='編集する' size='small'>
- <EditIcon />
- </IconButton>
- <UpdateDialog
- data={data}
- open={open}
- handleClose={handlers.close}
- invalidateQuery={invalidateQuery}
- />
- </TableCell>
- </>
- );
-}
diff --git a/src/client/features/console/classTemporarySchedule/components/EditTable/index.tsx b/src/client/features/console/classTemporarySchedule/components/EditTable/index.tsx
@@ -1,49 +0,0 @@
-import {
- TableContainer,
- Paper,
- Table,
- TableHead,
- TableRow,
- TableCell,
- TableBody,
-} from '@mui/material';
-
-import Row from './Row';
-
-import type { ClassTemporarySchedule } from '@prisma/client';
-
-type Props = {
- data: ClassTemporarySchedule[];
- invalidateQuery: () => Promise<void>;
-};
-
-export default function EditTable({ data, invalidateQuery }: Props) {
- const sorted = data
- .sort((a, b) => b.period - a.period)
- .sort((a, b) => {
- return b.date.getTime() - a.date.getTime();
- });
- return (
- <TableContainer component={Paper}>
- <Table size='small'>
- <TableHead>
- <TableRow>
- <TableCell>ID</TableCell>
- <TableCell>日付</TableCell>
- <TableCell>時限</TableCell>
- <TableCell>変更後の科目</TableCell>
- <TableCell>グループID</TableCell>
- <TableCell>更新日時</TableCell>
- <TableCell>編集</TableCell>
- <TableCell>削除</TableCell>
- </TableRow>
- </TableHead>
- <TableBody>
- {sorted.map((one) => (
- <Row data={one} invalidateQuery={invalidateQuery} key={one.id} />
- ))}
- </TableBody>
- </Table>
- </TableContainer>
- );
-}
diff --git a/src/client/features/console/classTemporarySchedule/components/InputView.tsx b/src/client/features/console/classTemporarySchedule/components/InputView.tsx
@@ -1,23 +0,0 @@
-import { Stack } from '@mui/material';
-
-import useGetAll from '../hooks/useGetAllQuery';
-
-import CreateForm from './CreateForm';
-import EditTable from './EditTable';
-
-type Props = {
- classId: number;
-};
-
-export default function InputView({ classId }: Props) {
- const { entries, invalidateQuery } = useGetAll(classId);
-
- return (
- <Stack spacing={4}>
- <CreateForm classId={classId} invalidateQuery={invalidateQuery} />
- {entries && (
- <EditTable data={entries} invalidateQuery={invalidateQuery} />
- )}
- </Stack>
- );
-}
diff --git a/src/client/features/console/classTemporarySchedule/hooks/useGetAllQuery.ts b/src/client/features/console/classTemporarySchedule/hooks/useGetAllQuery.ts
@@ -1,37 +0,0 @@
-import { useSnackbar } from 'notistack';
-
-import { trpc } from 'client/utils/trpc';
-
-import type { ClassTemporarySchedule } from '@prisma/client';
-
-type Return = {
- loading: boolean;
- entries: ClassTemporarySchedule[] | undefined;
- invalidateQuery: () => Promise<void>;
-};
-
-const useGetAll = (classId: number): Return => {
- const { enqueueSnackbar } = useSnackbar();
- const trpcCtx = trpc.useContext();
-
- const query = trpc.classTemporarySchedule.getAll.useQuery(
- { classId },
- {
- onError: () =>
- enqueueSnackbar('エラーが発生しました', {
- variant: 'error',
- autoHideDuration: 6000,
- }),
- }
- );
- const invalidateQuery = () =>
- trpcCtx.classTemporarySchedule.getAll.invalidate({ classId });
-
- return {
- loading: query.isLoading,
- entries: query.data,
- invalidateQuery,
- };
-};
-
-export default useGetAll;
diff --git a/src/client/features/console/classTemporarySchedule/index.tsx b/src/client/features/console/classTemporarySchedule/index.tsx
@@ -1,36 +0,0 @@
-import { Alert, Box } from '@mui/material';
-import { useState } from 'react';
-
-import ClassPicker from 'client/components/ClassPicker';
-
-import InputView from './components/InputView';
-
-import type { SchoolClass } from '@prisma/client';
-
-type Props = {
- classes: SchoolClass[];
-};
-
-export default function ClassTemporaryScheduleEditor({ classes }: Props) {
- const [classId, setClassId] = useState<number>();
-
- return (
- <>
- <Box m={4}>
- <Alert severity='error' variant='filled'>
- 現在、臨時変更機能は使用しないことになっています。臨時変更データは入力しないでください!
- </Alert>
- </Box>
-
- <Box width='8rem' m={4}>
- <ClassPicker
- classes={classes}
- classId={classId}
- setClassId={setClassId}
- />
- </Box>
-
- {classId && <InputView classId={classId} />}
- </>
- );
-}
diff --git a/src/client/features/console/event/components/CreateForm.tsx b/src/client/features/console/event/components/CreateForm.tsx
@@ -1,85 +0,0 @@
-import SaveIcon from '@mui/icons-material/Save';
-import { LoadingButton } from '@mui/lab';
-import { Box, Grid, Paper } from '@mui/material';
-import {
- DatePickerElement,
- CheckboxButtonGroup,
- TextFieldElement,
- FormContainer,
-} from 'react-hook-form-mui';
-
-import DatePickerLocalizationProvider from 'client/components/DatePickerLocalizationProvider';
-import { GRADES } from 'common/constant';
-
-import useCreateForm from '../hooks/useCreateForm';
-
-import type { FormInputs } from '../hooks/useCreateForm';
-
-export default function CreateForm() {
- const { formContext, handleCreate, loading } = useCreateForm();
-
- return (
- <Box component={Paper} p={4}>
- <FormContainer formContext={formContext} onSuccess={handleCreate}>
- <Grid container spacing={4}>
- <Grid item width='15rem'>
- <DatePickerLocalizationProvider>
- <DatePickerElement<FormInputs>
- label='日付'
- name='date'
- required
- disabled={loading}
- slotProps={{
- toolbar: { toolbarFormat: 'M月d日' },
- }}
- />
- </DatePickerLocalizationProvider>
- </Grid>
-
- <Grid item>
- <CheckboxButtonGroup<FormInputs>
- label='学年'
- name='grades'
- options={GRADES.map((g) => ({
- id: g,
- label: `${g}年`,
- }))}
- required
- row
- disabled={loading}
- />
- </Grid>
-
- <Grid item width={250}>
- <TextFieldElement<FormInputs>
- label='タイトル'
- name='title'
- required
- disabled={loading}
- />
- </Grid>
-
- <Grid item>
- <TextFieldElement<FormInputs>
- label='詳細'
- name='detail'
- disabled={loading}
- />
- </Grid>
-
- <Grid item>
- <LoadingButton
- type='submit'
- variant='contained'
- startIcon={<SaveIcon />}
- loadingPosition='start'
- loading={loading}
- >
- 新規作成
- </LoadingButton>
- </Grid>
- </Grid>
- </FormContainer>
- </Box>
- );
-}
diff --git a/src/client/features/console/event/components/EditTable/DeleteCell.tsx b/src/client/features/console/event/components/EditTable/DeleteCell.tsx
@@ -1,72 +0,0 @@
-import { useDisclosure } from '@mantine/hooks';
-import DeleteIcon from '@mui/icons-material/Delete';
-import LoadingButton from '@mui/lab/LoadingButton';
-import {
- DialogTitle,
- DialogContent,
- DialogContentText,
- DialogActions,
- Button,
- TableCell,
- IconButton,
- Dialog,
-} from '@mui/material';
-
-import formatDate from 'common/utils/formatDate';
-
-import useDeleteMutation from '../../hooks/useDeleteMutation';
-
-import type { SchoolEvent } from '@prisma/client';
-
-type DeleteDialogProps = {
- data: SchoolEvent;
- open: boolean;
- handleClose: () => void;
-};
-
-function DeleteDialog({ data, open, handleClose }: DeleteDialogProps) {
- const { mutateAsync, isLoading } = useDeleteMutation();
- const handleDelete = () => {
- mutateAsync({ id: data.id }).then(() => handleClose());
- };
-
- const dateString = formatDate(data.date, 'yyyy/MM/dd (EEEEE)');
- const content = `${dateString} 「${data.title}」を永久に削除してもよろしいですか?`;
-
- return (
- <Dialog open={open} onClose={handleClose}>
- <DialogTitle>本当に削除しますか?</DialogTitle>
- <DialogContent>
- <DialogContentText>{content}</DialogContentText>
- </DialogContent>
- <DialogActions>
- <Button onClick={handleClose}>いいえ</Button>
- <LoadingButton onClick={handleDelete} loading={isLoading}>
- 削除する
- </LoadingButton>
- </DialogActions>
- </Dialog>
- );
-}
-
-type Props = {
- data: SchoolEvent;
-};
-
-export default function DeleteCell({ data }: Props) {
- const [open, handlers] = useDisclosure(false);
-
- return (
- <TableCell>
- <IconButton
- onClick={handlers.open}
- aria-label='削除する'
- sx={{ color: 'red' }}
- size='small'
- >
- <DeleteIcon />
- </IconButton>
- <DeleteDialog data={data} open={open} handleClose={handlers.close} />
- </TableCell>
- );
-}
diff --git a/src/client/features/console/event/components/EditTable/GradeSelector.tsx b/src/client/features/console/event/components/EditTable/GradeSelector.tsx
@@ -1,38 +0,0 @@
-import {
- Checkbox,
- FormControl,
- FormControlLabel,
- FormGroup,
- FormLabel,
-} from '@mui/material';
-
-import { GRADES } from 'common/constant';
-
-import type { Grade } from 'common/types';
-
-type Props = {
- selectedGrades: Grade[];
- handleChange: (grade: Grade, selected: boolean) => void;
-};
-
-export default function GradeSelector({ selectedGrades, handleChange }: Props) {
- return (
- <FormControl component='fieldset'>
- <FormLabel component='legend'>学年で絞り込む</FormLabel>
- <FormGroup row>
- {GRADES.map((g) => (
- <FormControlLabel
- control={
- <Checkbox
- checked={selectedGrades.includes(g)}
- onChange={(_, checked) => handleChange(g, checked)}
- />
- }
- label={`${g}年`}
- key={g}
- />
- ))}
- </FormGroup>
- </FormControl>
- );
-}
diff --git a/src/client/features/console/event/components/EditTable/UpdateCell.tsx b/src/client/features/console/event/components/EditTable/UpdateCell.tsx
@@ -1,122 +0,0 @@
-import { useDisclosure } from '@mantine/hooks';
-import EditIcon from '@mui/icons-material/Edit';
-import { LoadingButton } from '@mui/lab';
-import {
- TableCell,
- IconButton,
- Box,
- Button,
- Dialog,
- DialogActions,
- DialogContent,
- DialogTitle,
- Stack,
-} from '@mui/material';
-import {
- CheckboxButtonGroup,
- DatePickerElement,
- FormContainer,
- TextFieldElement,
-} from 'react-hook-form-mui';
-
-import DatePickerLocalizationProvider from 'client/components/DatePickerLocalizationProvider';
-import { GRADES } from 'common/constant';
-
-import useUpdateForm from '../../hooks/useUpdateForm';
-
-import type { FormInputs } from '../../hooks/useUpdateForm';
-import type { SchoolEvent } from '@prisma/client';
-
-type DialogProps = {
- data: SchoolEvent;
- open: boolean;
- handleClose: () => void;
-};
-
-function UpdateDialog({ data, open, handleClose }: DialogProps) {
- const { formContext, handleUpdate, loading } = useUpdateForm({
- eventData: data,
- handleClose,
- });
-
- return (
- <Dialog open={open} onClose={handleClose}>
- <FormContainer formContext={formContext} onSuccess={handleUpdate}>
- <DialogTitle>ID: {data.id} の編集</DialogTitle>
- <DialogContent>
- <Stack direction='column' spacing={4} m={1}>
- <Box width={250}>
- <DatePickerLocalizationProvider>
- <DatePickerElement<FormInputs>
- label='日付'
- name='date'
- required
- disabled={loading}
- slotProps={{
- toolbar: { toolbarFormat: 'M月d日' },
- }}
- />
- </DatePickerLocalizationProvider>
- </Box>
-
- <Box>
- <CheckboxButtonGroup<FormInputs>
- label='学年'
- name='grades'
- options={GRADES.map((g) => ({
- id: g,
- label: `${g}年`,
- }))}
- required
- row
- disabled={loading}
- />
- </Box>
-
- <Box width={250}>
- <TextFieldElement<FormInputs>
- label='タイトル'
- name='title'
- required
- disabled={loading}
- />
- </Box>
-
- <Box>
- <TextFieldElement<FormInputs>
- label='詳細'
- name='detail'
- disabled={loading}
- />
- </Box>
- </Stack>
- </DialogContent>
- <DialogActions>
- <Button onClick={handleClose}>キャンセル</Button>
- <LoadingButton type='submit' loading={loading}>
- 保存する
- </LoadingButton>
- </DialogActions>
- </FormContainer>
- </Dialog>
- );
-}
-
-type Props = {
- data: SchoolEvent;
-};
-
-export default function UpdateCell({ data }: Props) {
- const [open, handlers] = useDisclosure(false);
-
- return (
- <>
- <TableCell>
- <IconButton onClick={handlers.open} aria-label='編集する' size='small'>
- <EditIcon />
- </IconButton>
- <UpdateDialog data={data} open={open} handleClose={handlers.close} />
- </TableCell>
- </>
- );
-}
diff --git a/src/client/features/console/event/components/EditTable/index.tsx b/src/client/features/console/event/components/EditTable/index.tsx
@@ -1,86 +0,0 @@
-import {
- TableContainer,
- Paper,
- Table,
- TableHead,
- TableRow,
- TableCell,
- TableBody,
- Stack,
-} from '@mui/material';
-import { useCallback, useState } from 'react';
-
-import { GRADES } from 'common/constant';
-import formatDate from 'common/utils/formatDate';
-
-import useFilteredEvents from '../../hooks/useFilteredEvents';
-
-import DeleteCell from './DeleteCell';
-import GradeSelector from './GradeSelector';
-import UpdateCell from './UpdateCell';
-
-import type { Grade } from 'common/types';
-
-export default function EditTable() {
- const [gradeSelection, setGradeSelection] = useState({
- 1: true,
- 2: true,
- 3: true,
- });
- const selectedGrades = GRADES.flatMap((g) =>
- gradeSelection[g] === true ? g : []
- );
- const handleChange = useCallback((grade: Grade, checked: boolean) => {
- setGradeSelection((old) => ({
- ...old,
- [grade]: checked,
- }));
- }, []);
-
- const { loading, data: events } = useFilteredEvents(selectedGrades);
-
- return (
- <Stack spacing={2}>
- <GradeSelector
- selectedGrades={selectedGrades}
- handleChange={handleChange}
- />
- {!loading && (
- <TableContainer component={Paper}>
- <Table size='small'>
- <TableHead>
- <TableRow>
- <TableCell>ID</TableCell>
- <TableCell>日付</TableCell>
- <TableCell>学年</TableCell>
- <TableCell>タイトル</TableCell>
- <TableCell>詳細</TableCell>
- <TableCell>更新日時</TableCell>
- <TableCell>編集</TableCell>
- <TableCell>削除</TableCell>
- </TableRow>
- </TableHead>
- <TableBody>
- {events.map((e) => (
- <TableRow key={e.id}>
- <TableCell>{e.id}</TableCell>
- <TableCell>
- {formatDate(e.date, 'yyyy/MM/dd (EEEEE)')}
- </TableCell>
- <TableCell>{e.grades.sort().join(', ')}</TableCell>
- <TableCell>{e.title}</TableCell>
- <TableCell>{e.detail}</TableCell>
- <TableCell>
- {formatDate(e.updatedAt, 'yyyy/MM/dd (EEEEE) HH:mm:ss')}
- </TableCell>
- <UpdateCell data={e} />
- <DeleteCell data={e} />
- </TableRow>
- ))}
- </TableBody>
- </Table>
- </TableContainer>
- )}
- </Stack>
- );
-}
diff --git a/src/client/features/console/event/hooks/useCreateForm.ts b/src/client/features/console/event/hooks/useCreateForm.ts
@@ -1,65 +0,0 @@
-import { zodResolver } from '@hookform/resolvers/zod';
-import { useSnackbar } from 'notistack';
-import {
- type UseFormReturn,
- type SubmitHandler,
- useForm,
-} from 'react-hook-form';
-import { z } from 'zod';
-
-import { trpc } from 'client/utils/trpc';
-import { DATE_FORMAT } from 'common/constant';
-import formatDate from 'common/utils/formatDate';
-import { zodGrade } from 'common/utils/zod';
-
-const schema = z.object({
- date: z.date(),
- grades: z.array(zodGrade).nonempty('1つ以上選択してください'),
- title: z.string({ required_error: '必須入力です' }).nonempty('必須入力です'),
- detail: z.string().nullish(),
-});
-
-export type FormInputs = z.infer<typeof schema>;
-
-type Return = {
- formContext: UseFormReturn<FormInputs>;
- handleCreate: SubmitHandler<FormInputs>;
- loading: boolean;
-};
-
-const useCreateForm = (): Return => {
- const { enqueueSnackbar } = useSnackbar();
- const trpcCtx = trpc.useContext();
-
- const mutation = trpc.event.create.useMutation({
- onSuccess: () => {
- trpcCtx.event.getAll.invalidate();
- enqueueSnackbar('正常に作成しました', {
- variant: 'success',
- autoHideDuration: 2000,
- });
- },
- onError: (err) =>
- enqueueSnackbar(`エラーが発生しました\n${err.message}`, {
- variant: 'error',
- autoHideDuration: 6000,
- }),
- });
-
- const formContext: UseFormReturn<FormInputs> = useForm<FormInputs>({
- defaultValues: {
- grades: [1, 2, 3],
- },
- resolver: zodResolver(schema),
- });
-
- const handleCreate: SubmitHandler<FormInputs> = ({ date, ...rest }) => {
- mutation
- .mutateAsync({ date: formatDate(date, DATE_FORMAT), ...rest })
- .then(() => formContext.reset());
- };
-
- return { formContext, handleCreate, loading: mutation.isLoading };
-};
-
-export default useCreateForm;
diff --git a/src/client/features/console/event/hooks/useDeleteMutation.ts b/src/client/features/console/event/hooks/useDeleteMutation.ts
@@ -1,27 +0,0 @@
-import { useSnackbar } from 'notistack';
-
-import { trpc } from 'client/utils/trpc';
-
-const useDeleteMutation = () => {
- const { enqueueSnackbar } = useSnackbar();
- const trpcCtx = trpc.useContext();
-
- const mutation = trpc.event.delete.useMutation({
- onSuccess: () => {
- trpcCtx.event.getAll.invalidate();
- enqueueSnackbar('正常に削除しました', {
- variant: 'success',
- autoHideDuration: 2000,
- });
- },
- onError: (err) =>
- enqueueSnackbar(`エラーが発生しました\n${err.message}`, {
- variant: 'error',
- autoHideDuration: 6000,
- }),
- });
-
- return mutation;
-};
-
-export default useDeleteMutation;
diff --git a/src/client/features/console/event/hooks/useFilteredEvents.ts b/src/client/features/console/event/hooks/useFilteredEvents.ts
@@ -1,34 +0,0 @@
-import { intersection } from 'lodash';
-import { useMemo } from 'react';
-
-import { trpc } from 'client/utils/trpc';
-
-import type { SchoolEvent } from '@prisma/client';
-import type { Grade } from 'common/types';
-
-intersection;
-
-type Return = {
- loading: boolean;
- data: SchoolEvent[];
-};
-
-const useFilteredEvents = (selectedGrades: Grade[]): Return => {
- const query = trpc.event.getAll.useQuery();
-
- const data = useMemo(() => {
- if (query.data) {
- return query.data
- .filter((e) => intersection(e.grades, selectedGrades).length > 0)
- .sort((a, b) => b.date.getTime() - a.date.getTime());
- }
- return [];
- }, [query.data, selectedGrades]);
-
- return {
- loading: query.isLoading,
- data,
- };
-};
-
-export default useFilteredEvents;
diff --git a/src/client/features/console/event/hooks/useUpdateForm.ts b/src/client/features/console/event/hooks/useUpdateForm.ts
@@ -1,75 +0,0 @@
-import { zodResolver } from '@hookform/resolvers/zod';
-import { useSnackbar } from 'notistack';
-import { useForm } from 'react-hook-form';
-import { z } from 'zod';
-
-import { trpc } from 'client/utils/trpc';
-import { DATE_FORMAT } from 'common/constant';
-import formatDate from 'common/utils/formatDate';
-import { zodGrade } from 'common/utils/zod';
-
-import type { SchoolEvent } from '@prisma/client';
-import type { SubmitHandler, UseFormReturn } from 'react-hook-form';
-
-const schema = z.object({
- date: z.date(),
- grades: z.array(zodGrade).nonempty('1つ以上選択してください'),
- title: z.string({ required_error: '必須入力です' }).nonempty('必須入力です'),
- detail: z.string().nullable(),
-});
-
-export type FormInputs = z.infer<typeof schema>;
-
-type Params = {
- eventData: SchoolEvent;
- handleClose: () => void;
-};
-type Return = {
- formContext: UseFormReturn<FormInputs>;
- handleUpdate: SubmitHandler<FormInputs>;
- loading: boolean;
-};
-
-const useUpdateForm = ({ eventData, handleClose }: Params): Return => {
- const { enqueueSnackbar } = useSnackbar();
- const trpcCtx = trpc.useContext();
-
- const mutation = trpc.event.update.useMutation({
- onSuccess: () => {
- trpcCtx.event.getAll.invalidate();
- enqueueSnackbar('正常に更新しました', {
- variant: 'success',
- autoHideDuration: 2000,
- });
- },
- onError: (err) =>
- enqueueSnackbar(`エラーが発生しました\n${err.message}`, {
- variant: 'error',
- autoHideDuration: 6000,
- }),
- });
-
- const formContext: UseFormReturn<FormInputs> = useForm<FormInputs>({
- defaultValues: {
- date: eventData.date,
- grades: z.array(zodGrade).nonempty().parse(eventData.grades),
- title: eventData.title,
- detail: eventData.detail ?? '',
- },
- resolver: zodResolver(schema),
- });
-
- const handleUpdate: SubmitHandler<FormInputs> = ({ date, ...rest }) => {
- mutation
- .mutateAsync({
- id: eventData.id,
- date: formatDate(date, DATE_FORMAT),
- ...rest,
- })
- .then(() => handleClose());
- };
-
- return { formContext, handleUpdate, loading: mutation.isLoading };
-};
-
-export default useUpdateForm;
diff --git a/src/client/features/console/event/index.tsx b/src/client/features/console/event/index.tsx
@@ -1,13 +0,0 @@
-import { Stack } from '@mui/material';
-
-import CreateForm from './components/CreateForm';
-import EditTable from './components/EditTable';
-
-export default function EventEditor() {
- return (
- <Stack spacing={4} my={4}>
- <CreateForm />
- <EditTable />
- </Stack>
- );
-}
diff --git a/src/client/features/console/gradeSchedule/components/DatePicker.tsx b/src/client/features/console/gradeSchedule/components/DatePicker.tsx
@@ -1,42 +0,0 @@
-import ChevronLeftIcon from '@mui/icons-material/ChevronLeft';
-import ChevronRightIcon from '@mui/icons-material/ChevronRight';
-import { Stack, IconButton, Box } from '@mui/material';
-import { addDays, subDays } from 'date-fns';
-
-import DatePicker from 'client/components/DatePicker';
-
-import type { Dispatch, SetStateAction } from 'react';
-
-type Props = {
- date: Date;
- setDate: Dispatch<SetStateAction<Date>>;
- disabled: boolean;
-};
-
-function DatePickerWithSideButton({ date, setDate, disabled }: Props) {
- return (
- <Stack direction='row' spacing={1} alignItems='flex-start' m={4}>
- <IconButton
- disabled={disabled}
- onClick={() => setDate((old) => subDays(old, 1))}
- >
- <ChevronLeftIcon />
- </IconButton>
- <Box width='12rem'>
- <DatePicker
- value={date}
- onChange={(newValue) => newValue && setDate(newValue)}
- disabled={disabled}
- />
- </Box>
- <IconButton
- disabled={disabled}
- onClick={() => setDate((old) => addDays(old, 1))}
- >
- <ChevronRightIcon />
- </IconButton>
- </Stack>
- );
-}
-
-export default DatePickerWithSideButton;
diff --git a/src/client/features/console/gradeSchedule/components/InputForm.tsx b/src/client/features/console/gradeSchedule/components/InputForm.tsx
@@ -1,105 +0,0 @@
-import EditIcon from '@mui/icons-material/Edit';
-import {
- Autocomplete,
- Box,
- Button,
- Grid,
- Paper,
- Stack,
- TextField,
- Typography,
-} from '@mui/material';
-
-import {
- SCHOOL_TIMES,
- DAY_PERIOD_JA,
- DAY_PERIOD_MAP_EN_TO_JA,
- DAY_PERIOD_MAP_JA_TO_EN,
-} from 'common/constant';
-
-import type { DayPeriod } from '@prisma/client';
-import type { Grade, SchoolTime } from 'common/types';
-
-type UnitInputFormProps = {
- value: DayPeriod | null;
- onChange: (newValue: DayPeriod | null) => void;
- schoolTime: SchoolTime;
- disabled: boolean;
-};
-
-function UnitInputForm({
- value,
- onChange,
- schoolTime,
- disabled,
-}: UnitInputFormProps) {
- return (
- <Box width={120}>
- <Autocomplete
- disablePortal
- autoSelect
- disabled={disabled}
- options={DAY_PERIOD_JA}
- value={value && DAY_PERIOD_MAP_EN_TO_JA[value]}
- onChange={(_, newValue) =>
- onChange(newValue ? DAY_PERIOD_MAP_JA_TO_EN[newValue] : newValue)
- }
- fullWidth
- renderInput={(params) => (
- <TextField {...params} label={`${schoolTime}限`} />
- )}
- />
- </Box>
- );
-}
-
-type Props = {
- grade: Grade;
- get: (key: SchoolTime) => DayPeriod | null;
- set: (key: SchoolTime, value: DayPeriod | null) => void;
- setBasedOnDay: () => void;
- disabled: boolean;
-};
-
-export default function InputForm({
- grade,
- get,
- set,
- setBasedOnDay,
- disabled,
-}: Props) {
- return (
- <Box component={Paper} p={{ xs: 2, md: 4 }}>
- <Stack direction='row' alignItems='center' spacing={6}>
- <Typography variant='h3' fontSize={20} fontWeight={400}>
- {grade}年
- </Typography>
-
- <Box>
- <Button
- variant='outlined'
- color='secondary'
- disabled={disabled}
- startIcon={<EditIcon />}
- onClick={() => setBasedOnDay()}
- >
- 時間割通りで自動入力
- </Button>
- </Box>
- </Stack>
-
- <Grid container spacing={2} mt={2}>
- {SCHOOL_TIMES.map((schoolTime) => (
- <Grid item key={schoolTime}>
- <UnitInputForm
- schoolTime={schoolTime}
- value={get(schoolTime)}
- onChange={(newValue) => set(schoolTime, newValue)}
- disabled={disabled}
- />
- </Grid>
- ))}
- </Grid>
- </Box>
- );
-}
diff --git a/src/client/features/console/gradeSchedule/hooks/useGradeSchedule.ts b/src/client/features/console/gradeSchedule/hooks/useGradeSchedule.ts
@@ -1,193 +0,0 @@
-import { addDays, startOfDay } from 'date-fns';
-import { useSnackbar } from 'notistack';
-import { useEffect, useState } from 'react';
-
-import useMap from 'client/hooks/useMap';
-import { trpc } from 'client/utils/trpc';
-import { DATE_FORMAT } from 'common/constant';
-import formatDate from 'common/utils/formatDate';
-
-import type { DayPeriod } from '@prisma/client';
-import type { Grade, SchoolTime } from 'common/types';
-import type { Dispatch, SetStateAction } from 'react';
-
-type Getter = (where: { grade: Grade; period: SchoolTime }) => DayPeriod | null;
-type Setter = (
- where: { grade: Grade; period: SchoolTime },
- value: DayPeriod | null
-) => void;
-
-type Result = {
- loading: boolean;
- sending: boolean;
- date: Date;
- setDate: Dispatch<SetStateAction<Date>>;
- getDayPeriod: Getter;
- setDayPeriod: Setter;
- setBasedOnDay: (grade: Grade) => void;
- submit: () => Promise<unknown>;
-};
-
-export const useGradeSchedule = (): Result => {
- const trpcCtx = trpc.useContext();
- const { enqueueSnackbar } = useSnackbar();
-
- const [date, setDate] = useState(startOfDay(new Date()));
-
- // 編集済みデータ
- const modified = {
- 1: useMap<SchoolTime, DayPeriod | null>(),
- 2: useMap<SchoolTime, DayPeriod | null>(),
- 3: useMap<SchoolTime, DayPeriod | null>(),
- };
-
- const query = trpc.gradeSchedule.byDate.useQuery(
- { date: formatDate(date, DATE_FORMAT) },
- {
- onError: () =>
- enqueueSnackbar('エラーが発生しました', {
- variant: 'error',
- autoHideDuration: 6000,
- }),
- }
- );
-
- const mutation = trpc.gradeSchedule.update.useMutation({
- onSuccess: (data) => {
- modified[1][1].reset();
- modified[2][1].reset();
- modified[3][1].reset();
- trpcCtx.gradeSchedule.byDate.setData(
- { date: formatDate(data.date, DATE_FORMAT) },
- data
- );
- enqueueSnackbar('正常に保存されました', {
- variant: 'success',
- autoHideDuration: 2000,
- });
- },
- onError: () => {
- enqueueSnackbar('エラーが発生しました', {
- variant: 'error',
- autoHideDuration: 6000,
- });
- },
- });
-
- // 日付が変わったときに実行
- useEffect(() => {
- // 次の日の分をプリフェッチ
- trpcCtx.gradeSchedule.byDate.prefetch(
- { date: formatDate(addDays(date, 1), DATE_FORMAT) },
- {
- retry: 0,
- staleTime: 60 * 1000, // 60秒間は最新扱いする
- }
- );
-
- // 編集中データを消去
- modified[1][1].reset();
- modified[2][1].reset();
- modified[3][1].reset();
-
- // eslint-disable-next-line react-hooks/exhaustive-deps
- }, [date]);
-
- const get: Getter = (where) => {
- if (modified[where.grade][0].has(where.period)) {
- return modified[where.grade][0].get(where.period) ?? null;
- }
- return query.data?.schedule[where.grade].get(where.period) ?? null;
- };
-
- const set: Setter = (where, value) => {
- modified[where.grade][1].set(where.period, value);
- };
-
- const setBasedOnDay = (grade: Grade) => {
- const setAll = modified[grade][1].setAll;
- switch (date.getDay()) {
- case 1: // 月曜日
- return setAll([
- [1, 'Mon1'],
- [2, 'Mon2'],
- [3, 'Mon3'],
- [4, 'Mon4'],
- [5, 'Mon5'],
- [6, 'Mon6'],
- [7, 'Mon7'],
- ]);
- case 2: // 火曜日
- return setAll([
- [1, 'Tue1'],
- [2, 'Tue2'],
- [3, 'Tue3'],
- [4, 'Tue4'],
- [5, 'Tue5'],
- [6, 'Tue6'],
- [7, 'Tue7'],
- ]);
- case 3: // 水曜日
- return setAll([
- [1, 'Wed1'],
- [2, 'Wed2'],
- [3, 'Wed3'],
- [4, 'Wed4'],
- [5, 'Wed5'],
- [6, 'Wed6'],
- [7, 'Wed7'],
- ]);
- case 4: // 木曜日
- return setAll([
- [1, 'Thu1'],
- [2, 'Thu2'],
- [3, 'Thu3'],
- [4, 'Thu4'],
- [5, 'Thu5'],
- [6, 'Thu6'],
- [7, null],
- ]);
- case 5: // 金曜日
- return setAll([
- [1, 'Fri1'],
- [2, 'Fri2'],
- [3, 'Fri3'],
- [4, 'Fri4'],
- [5, 'Fri5'],
- [6, 'Fri6'],
- [7, 'Fri7'],
- ]);
- default:
- return setAll([
- [1, null],
- [2, null],
- [3, null],
- [4, null],
- [5, null],
- [6, null],
- [7, null],
- ]);
- }
- };
-
- const submit = () =>
- mutation.mutateAsync({
- date: formatDate(date, DATE_FORMAT),
- schedule: {
- 1: new Map(modified[1][0].entries()),
- 2: new Map(modified[2][0].entries()),
- 3: new Map(modified[3][0].entries()),
- },
- });
-
- return {
- loading: query.isLoading,
- sending: mutation.isLoading,
- date,
- setDate,
- getDayPeriod: get,
- setDayPeriod: set,
- setBasedOnDay,
- submit,
- };
-};
diff --git a/src/client/features/console/gradeSchedule/index.tsx b/src/client/features/console/gradeSchedule/index.tsx
@@ -1,85 +0,0 @@
-import SaveIcon from '@mui/icons-material/Save';
-import { LoadingButton } from '@mui/lab';
-import { Checkbox, FormControlLabel, Stack } from '@mui/material';
-import { addDays } from 'date-fns';
-import { useState } from 'react';
-
-import { GRADES } from 'common/constant';
-
-import DatePicker from './components/DatePicker';
-import InputForm from './components/InputForm';
-import { useGradeSchedule } from './hooks/useGradeSchedule';
-
-export default function GradeScheduleEditor() {
- const {
- date,
- setDate,
- loading,
- sending,
- getDayPeriod,
- setDayPeriod,
- setBasedOnDay,
- submit,
- } = useGradeSchedule();
-
- const [transitionToNextAfterSubmit, setTransitionToNextAfterSubmit] =
- useState(true);
-
- // 最新データがフェッチされるまでは操作可能にしない
- const disabled = loading || sending;
-
- const handleSubmit = () =>
- submit().then(() => {
- if (transitionToNextAfterSubmit) {
- setDate((old) => addDays(old, 1));
- }
- });
-
- return (
- <>
- <DatePicker date={date} setDate={setDate} disabled={disabled} />
-
- <Stack spacing={4}>
- {GRADES.map((grade) => (
- <InputForm
- grade={grade}
- get={(key) => getDayPeriod({ grade, period: key })}
- set={(key, value) => setDayPeriod({ grade, period: key }, value)}
- setBasedOnDay={() => setBasedOnDay(grade)}
- disabled={disabled}
- key={grade}
- />
- ))}
- </Stack>
-
- <Stack
- direction={{ xs: 'column', sm: 'row' }}
- spacing={{ xs: 2, sm: 4 }}
- alignItems='flex-start'
- mx={{ xs: 2, md: 4 }}
- my={4}
- >
- <LoadingButton
- variant='contained'
- loading={sending}
- loadingPosition='start'
- disabled={disabled}
- startIcon={<SaveIcon />}
- onClick={handleSubmit}
- >
- 保存
- </LoadingButton>
-
- <FormControlLabel
- control={
- <Checkbox
- checked={transitionToNextAfterSubmit}
- onChange={(_, checked) => setTransitionToNextAfterSubmit(checked)}
- />
- }
- label='保存後に翌日に遷移する'
- />
- </Stack>
- </>
- );
-}
diff --git a/src/client/features/daily/components/Lessons/BasisChip.tsx b/src/client/features/daily/components/Lessons/BasisChip.tsx
@@ -1,6 +1,6 @@
import { Chip } from '@mui/material';
-import { DAY_PERIOD_MAP_EN_TO_JA, WEEKDAYS_EN } from 'common/constant';
+import { WEEKDAYS_JA } from 'common/constant';
import type { Basis } from '../../types';
import type { ChipProps } from '@mui/material';
@@ -17,8 +17,8 @@ export default function BasisChip({ data, date, period }: Props) {
if (data.type === 'dayPeriod') {
// 曜日時限の場合
- label = DAY_PERIOD_MAP_EN_TO_JA[data.dayPeriod];
- if (`${WEEKDAYS_EN[date.getDay()]}${period}` === data.dayPeriod) {
+ label = data.dayPeriod;
+ if (`${WEEKDAYS_JA[date.getDay()]}${period}` === data.dayPeriod) {
// 曜日時限の変更がない場合
color = 'default';
} else {
diff --git a/src/client/features/daily/components/Lessons/Events.tsx b/src/client/features/daily/components/Lessons/Events.tsx
@@ -1,13 +1,11 @@
import EventNoteIcon from '@mui/icons-material/EventNote';
import { Box, Divider, Stack, Typography } from '@mui/material';
-import type { SchoolEvent } from '@prisma/client';
-
type Props = {
- events: SchoolEvent[];
+ event: string;
};
-export function Events({ events }: Props) {
+export function Events({ event }: Props) {
return (
<>
<Stack
@@ -18,30 +16,13 @@ export function Events({ events }: Props) {
>
<EventNoteIcon />
<Box width={1}>
- {events.map(({ id, title, detail }) => (
- <Stack
- direction='row'
- spacing={1}
- alignItems='center'
- justifyContent='flex-start'
- key={id}
- >
- <Typography
- fontSize={{ xs: 20, sm: 24 }}
- whiteSpace='nowrap'
- component='span'
- >
- {title}
- </Typography>
- <Typography
- variant='body2'
- color='text.secondary'
- component='span'
- >
- {detail}
- </Typography>
- </Stack>
- ))}
+ <Typography
+ fontSize={{ xs: 20, sm: 24 }}
+ whiteSpace='nowrap'
+ component='span'
+ >
+ {event}
+ </Typography>
</Box>
</Stack>
<Divider sx={{ mb: 1.5 }} />
diff --git a/src/client/features/daily/components/Lessons/Lesson.tsx b/src/client/features/daily/components/Lessons/Lesson.tsx
@@ -18,9 +18,8 @@ import { gradeClassAtom } from '../../atoms';
import BasisChip from './BasisChip';
import Note from './Note';
-import type { Basis, LessonData } from '../../types';
-import type { DayPeriod } from '@prisma/client';
-import type { GradeClass, SchoolTime } from 'common/types';
+import type { Basis } from '../../types';
+import type { Course, DayPeriodJa, GradeClass, SchoolTime } from 'common/types';
const UnorderedList = styled('ul')({
margin: 0,
@@ -50,7 +49,7 @@ const LessonSpan = styled('span')({
type LessonNameWithMySubjectProps = {
subjects: readonly string[];
gradeClass: GradeClass;
- dayPeriod: DayPeriod;
+ dayPeriod: DayPeriodJa;
};
function LessonNameWithMySubject({
@@ -65,14 +64,17 @@ function LessonNameWithMySubject({
type Props = {
date: Date;
period: SchoolTime;
- subjects: LessonData['subjects'];
+ courses: Course[];
basis: Basis | null;
};
-export default function Lesson({ date, period, subjects, basis }: Props) {
+export default function Lesson({ date, period, courses, basis }: Props) {
const gradeClass = useAtomValue(gradeClassAtom);
const [open, handlers] = useDisclosure(false);
+ const names = courses.map((c) => c.name);
+ const shortNames = courses.map((c) => c.shortName);
+
return (
<ListItem>
<Stack
@@ -89,10 +91,10 @@ export default function Lesson({ date, period, subjects, basis }: Props) {
<LessonNameWithMySubject
dayPeriod={basis.dayPeriod}
gradeClass={gradeClass}
- subjects={subjects}
+ subjects={shortNames}
/>
) : (
- subjects.join('/')
+ shortNames.join('/')
)}
</LessonSpan>
@@ -116,7 +118,7 @@ export default function Lesson({ date, period, subjects, basis }: Props) {
</DialogTitle>
<DialogContent>
<UnorderedList>
- {subjects.map((s) => (
+ {names.map((s) => (
<li key={s}>{s}</li>
))}
</UnorderedList>
diff --git a/src/client/features/daily/components/Lessons/UpdateDateChip.tsx b/src/client/features/daily/components/Lessons/UpdateDateChip.tsx
@@ -1,97 +0,0 @@
-import { useDisclosure } from '@mantine/hooks';
-import CloseIcon from '@mui/icons-material/Close';
-import UpdateIcon from '@mui/icons-material/Update';
-import {
- Chip,
- Dialog,
- DialogContent,
- DialogTitle,
- Typography,
- IconButton,
-} from '@mui/material';
-import { styled } from '@mui/material/styles';
-import { max } from 'date-fns';
-import { useMemo } from 'react';
-
-import { SCHOOL_TIMES } from 'common/constant';
-import formatDate from 'common/utils/formatDate';
-
-import type { DayTimetable } from '../../types';
-
-type Props = {
- lessons: DayTimetable;
-};
-
-const UnorderedList = styled('ul')({
- margin: 0,
- padding: 0,
- listStyle: 'none',
- marginBlockEnd: 8,
-});
-
-// TODO: イベント情報の更新日時を考慮する
-export default function UpdateDateChip({ lessons }: Props) {
- const [open, handlers] = useDisclosure(false);
-
- const latestUpdatedAt = useMemo(() => {
- const dates = SCHOOL_TIMES.flatMap((st) => lessons[st]?.updated ?? []);
- if (dates.length > 0) {
- const latest = max(dates);
- return formatDate(latest, 'yyyy/MM/dd');
- } else {
- return null;
- }
- }, [lessons]);
-
- const detailItems = SCHOOL_TIMES.flatMap((st) => {
- const data = lessons[st];
- if (data) {
- return `${st}限 ${formatDate(data.updated, 'yyyy/MM/dd HH:mm')}`;
- } else {
- return [];
- }
- });
-
- if (latestUpdatedAt === null) {
- return <></>;
- }
-
- return (
- <>
- <Chip
- icon={<UpdateIcon />}
- size='small'
- label={latestUpdatedAt}
- clickable
- onClick={handlers.toggle}
- />
- <Dialog open={open} onClose={handlers.close}>
- <DialogTitle marginRight={4}>
- <div>データ更新日時</div>
- <IconButton
- aria-label='閉じる'
- onClick={handlers.close}
- sx={{
- position: 'absolute',
- right: 8,
- top: 8,
- color: (theme) => theme.vars.palette.grey[500],
- }}
- >
- <CloseIcon />
- </IconButton>
- </DialogTitle>
- <DialogContent>
- <UnorderedList>
- {detailItems.map((v) => (
- <li key={v}>{v}</li>
- ))}
- </UnorderedList>
- <Typography variant='body2' color='text.secondary'>
- ※「曜日時限」の更新日時
- </Typography>
- </DialogContent>
- </Dialog>
- </>
- );
-}
diff --git a/src/client/features/daily/components/Lessons/index.tsx b/src/client/features/daily/components/Lessons/index.tsx
@@ -6,7 +6,6 @@ import { SCHOOL_TIMES } from 'common/constant';
import { Events } from './Events';
import Lesson from './Lesson';
-import UpdateDateChip from './UpdateDateChip';
import type { DayTimetable } from '../../types';
@@ -36,21 +35,20 @@ function Lessons({ timetable }: Props) {
})}
component={Paper}
>
- {!!timetable.events.length && <Events events={timetable.events} />}
+ {!!timetable.event && <Events event={timetable.event} />}
<List>
{SCHOOL_TIMES.map((st) => {
return (
<Lesson
date={timetable.date}
period={st}
- subjects={timetable[st]?.subjects ?? []}
- basis={timetable[st]?.basis ?? null}
+ courses={timetable[`period${st}`]?.courses ?? []}
+ basis={timetable[`period${st}`]?.basis ?? null}
key={`${timetable.date}/${st}`}
/>
);
})}
</List>
- <UpdateDateChip lessons={timetable} />
</Box>
);
}
diff --git a/src/client/features/daily/types.ts b/src/client/features/daily/types.ts
@@ -1,23 +1,12 @@
-import type { DayPeriod, SchoolEvent } from '@prisma/client';
+import type { Course, DayPeriodJa, SchoolPeriod } from 'common/types';
export type Basis =
- | { type: 'dayPeriod'; dayPeriod: DayPeriod }
+ | { type: 'dayPeriod'; dayPeriod: DayPeriodJa }
| { type: 'temporary'; id: number };
-export type LessonData = {
- readonly subjects: readonly string[];
- readonly basis: Basis;
- readonly updated: Date;
-};
+export type OnePeriod = { courses: Course[]; basis: Basis };
export type DayTimetable = {
date: Date;
- events: SchoolEvent[];
- 1?: LessonData;
- 2?: LessonData;
- 3?: LessonData;
- 4?: LessonData;
- 5?: LessonData;
- 6?: LessonData;
- 7?: LessonData;
-};
+ event?: string;
+} & Partial<Record<SchoolPeriod, OnePeriod>>;
diff --git a/src/client/features/setting/components/MySubjectForm.tsx b/src/client/features/setting/components/MySubjectForm.tsx
@@ -13,19 +13,14 @@ import { useCallback, useState } from 'react';
import useMyClass from 'client/hooks/useMyClass';
import useMySubject from 'client/hooks/useMySubject';
import { trpc } from 'client/utils/trpc';
-import {
- DAY_PERIOD_EN,
- DAY_PERIOD_MAP_EN_TO_JA,
- GRADE_CLASSES,
-} from 'common/constant';
+import { DAY_PERIOD_JA, GRADE_CLASSES } from 'common/constant';
import type { SelectChangeEvent } from '@mui/material';
-import type { DayPeriod } from '@prisma/client';
-import type { GradeClass } from 'common/types';
+import type { DayPeriodJa, GradeClass } from 'common/types';
type SubjectInputFieldProps = {
gradeClass: GradeClass;
- dayPeriod: DayPeriod;
+ dayPeriod: DayPeriodJa;
defaultSubject: string;
};
@@ -37,7 +32,7 @@ function SubjectInputField({
const [subject, setSubject] = useMySubject({ gradeClass, dayPeriod });
return (
<TextField
- label={DAY_PERIOD_MAP_EN_TO_JA[dayPeriod]}
+ label={dayPeriod}
value={subject ?? ''}
helperText={defaultSubject}
onChange={(e) => setSubject(e.target.value)}
@@ -55,12 +50,12 @@ function SubjectInputGrid({ gradeClass }: SubjectInputGridProps) {
return (
<Grid container spacing={2} my={0.5}>
- {DAY_PERIOD_EN.map((dayPeriod) => (
+ {DAY_PERIOD_JA.map((dayPeriod) => (
<Grid item width={150} key={dayPeriod}>
<SubjectInputField
gradeClass={gradeClass}
dayPeriod={dayPeriod}
- defaultSubject={data?.standard.get(dayPeriod)?.join('/') ?? ''}
+ defaultSubject={data?.standardTimetable[dayPeriod]?.join('/') ?? ''}
/>
</Grid>
))}
diff --git a/src/client/hooks/useMySubject.ts b/src/client/hooks/useMySubject.ts
@@ -2,18 +2,17 @@ import { useLocalStorage } from '@mantine/hooks';
import getSchoolYear from 'common/utils/getSchoolYear';
-import type { DayPeriod } from '@prisma/client';
-import type { GradeClass } from 'common/types';
+import type { DayPeriodJa, GradeClass } from 'common/types';
// ストレージのキー
-const getStorageKey = (gradeClass: GradeClass, dayPeriod: DayPeriod) => {
+const getStorageKey = (gradeClass: GradeClass, dayPeriod: DayPeriodJa) => {
const schoolYear = getSchoolYear();
return `my_subject_data_${schoolYear}_${gradeClass}_${dayPeriod}`;
};
type Params = {
gradeClass: GradeClass;
- dayPeriod: DayPeriod;
+ dayPeriod: DayPeriodJa;
};
type Return = [
string | null,
diff --git a/src/common/constant/index.ts b/src/common/constant/index.ts
@@ -1,5 +1,4 @@
-import type { DayPeriod } from '@prisma/client';
-import type { DayPeriodJa } from 'common/types';
+import type { DayPeriodEn, DayPeriodJa } from 'common/types';
export const APP_TITLE = '岸高時間割アプリ';
export const APP_DESCRIPTION = '岸和田高校の時間割を確認できるアプリ';
@@ -125,81 +124,83 @@ export const DAY_PERIOD_JA = [
'金7',
] as const;
-export const DAY_PERIOD_MAP_EN_TO_JA: Readonly<Record<DayPeriod, DayPeriodJa>> =
- {
- Mon1: '月1',
- Mon2: '月2',
- Mon3: '月3',
- Mon4: '月4',
- Mon5: '月5',
- Mon6: '月6',
- Mon7: '月7',
- Tue1: '火1',
- Tue2: '火2',
- Tue3: '火3',
- Tue4: '火4',
- Tue5: '火5',
- Tue6: '火6',
- Tue7: '火7',
- Wed1: '水1',
- Wed2: '水2',
- Wed3: '水3',
- Wed4: '水4',
- Wed5: '水5',
- Wed6: '水6',
- Wed7: '水7',
- Thu1: '木1',
- Thu2: '木2',
- Thu3: '木3',
- Thu4: '木4',
- Thu5: '木5',
- Thu6: '木6',
- Fri1: '金1',
- Fri2: '金2',
- Fri3: '金3',
- Fri4: '金4',
- Fri5: '金5',
- Fri6: '金6',
- Fri7: '金7',
- } as const;
+export const DAY_PERIOD_MAP_EN_TO_JA: Readonly<
+ Record<DayPeriodEn, DayPeriodJa>
+> = {
+ Mon1: '月1',
+ Mon2: '月2',
+ Mon3: '月3',
+ Mon4: '月4',
+ Mon5: '月5',
+ Mon6: '月6',
+ Mon7: '月7',
+ Tue1: '火1',
+ Tue2: '火2',
+ Tue3: '火3',
+ Tue4: '火4',
+ Tue5: '火5',
+ Tue6: '火6',
+ Tue7: '火7',
+ Wed1: '水1',
+ Wed2: '水2',
+ Wed3: '水3',
+ Wed4: '水4',
+ Wed5: '水5',
+ Wed6: '水6',
+ Wed7: '水7',
+ Thu1: '木1',
+ Thu2: '木2',
+ Thu3: '木3',
+ Thu4: '木4',
+ Thu5: '木5',
+ Thu6: '木6',
+ Fri1: '金1',
+ Fri2: '金2',
+ Fri3: '金3',
+ Fri4: '金4',
+ Fri5: '金5',
+ Fri6: '金6',
+ Fri7: '金7',
+} as const;
-export const DAY_PERIOD_MAP_JA_TO_EN: Readonly<Record<DayPeriodJa, DayPeriod>> =
- {
- 月1: 'Mon1',
- 月2: 'Mon2',
- 月3: 'Mon3',
- 月4: 'Mon4',
- 月5: 'Mon5',
- 月6: 'Mon6',
- 月7: 'Mon7',
- 火1: 'Tue1',
- 火2: 'Tue2',
- 火3: 'Tue3',
- 火4: 'Tue4',
- 火5: 'Tue5',
- 火6: 'Tue6',
- 火7: 'Tue7',
- 水1: 'Wed1',
- 水2: 'Wed2',
- 水3: 'Wed3',
- 水4: 'Wed4',
- 水5: 'Wed5',
- 水6: 'Wed6',
- 水7: 'Wed7',
- 木1: 'Thu1',
- 木2: 'Thu2',
- 木3: 'Thu3',
- 木4: 'Thu4',
- 木5: 'Thu5',
- 木6: 'Thu6',
- 金1: 'Fri1',
- 金2: 'Fri2',
- 金3: 'Fri3',
- 金4: 'Fri4',
- 金5: 'Fri5',
- 金6: 'Fri6',
- 金7: 'Fri7',
- } as const;
+export const DAY_PERIOD_MAP_JA_TO_EN: Readonly<
+ Record<DayPeriodJa, DayPeriodEn>
+> = {
+ 月1: 'Mon1',
+ 月2: 'Mon2',
+ 月3: 'Mon3',
+ 月4: 'Mon4',
+ 月5: 'Mon5',
+ 月6: 'Mon6',
+ 月7: 'Mon7',
+ 火1: 'Tue1',
+ 火2: 'Tue2',
+ 火3: 'Tue3',
+ 火4: 'Tue4',
+ 火5: 'Tue5',
+ 火6: 'Tue6',
+ 火7: 'Tue7',
+ 水1: 'Wed1',
+ 水2: 'Wed2',
+ 水3: 'Wed3',
+ 水4: 'Wed4',
+ 水5: 'Wed5',
+ 水6: 'Wed6',
+ 水7: 'Wed7',
+ 木1: 'Thu1',
+ 木2: 'Thu2',
+ 木3: 'Thu3',
+ 木4: 'Thu4',
+ 木5: 'Thu5',
+ 木6: 'Thu6',
+ 金1: 'Fri1',
+ 金2: 'Fri2',
+ 金3: 'Fri3',
+ 金4: 'Fri4',
+ 金5: 'Fri5',
+ 金6: 'Fri6',
+ 金7: 'Fri7',
+} as const;
export const DATE_FORMAT = 'yyyy-MM-dd';
diff --git a/src/common/types/index.ts b/src/common/types/index.ts
@@ -1,10 +1,10 @@
-import type { DayPeriod } from '@prisma/client';
import type {
CLASSES,
GRADES,
SCHOOL_TIMES,
DAY_PERIOD_JA,
GRADE_CLASSES,
+ DAY_PERIOD_EN,
} from 'common/constant';
import type { ZodType } from 'zod';
@@ -21,7 +21,24 @@ export type Class = ArrayToUnion<typeof CLASSES>;
export type GradeClass = ArrayToUnion<typeof GRADE_CLASSES>;
export type SchoolTime = ArrayToUnion<typeof SCHOOL_TIMES>;
+export type SchoolPeriod = `period${SchoolTime}`;
+export type DayPeriodEn = ArrayToUnion<typeof DAY_PERIOD_EN>;
export type DayPeriodJa = ArrayToUnion<typeof DAY_PERIOD_JA>;
-export type ClassStandardTimetable = Map<DayPeriod, string[]>;
+export type Course = {
+ dayPeriod: DayPeriodJa;
+ name: string;
+ shortName: string;
+ room?: string;
+ instructorID?: string;
+ note?: string;
+};
+
+export type ClassStandardTimetable = Record<DayPeriodJa, Course[]>;
+
+export type DaySchedule = Partial<
+ Record<SchoolPeriod, DayPeriodJa> & { event: string }
+>;
+
+export type DaySchedulesByGrade = Partial<Record<`grade${Grade}`, DaySchedule>>;
diff --git a/src/common/utils/formatDate.ts b/src/common/utils/formatDate.ts
@@ -1,11 +1,14 @@
-/* eslint-disable import/no-duplicates */
-import format from 'date-fns/format';
+import { format } from 'date-fns';
import { ja } from 'date-fns/locale';
+import { DATE_FORMAT } from 'common/constant';
+
const formatDate = (
- ...[date, formatString, options]: Parameters<typeof format>
+ date: Parameters<typeof format>[0],
+ formatStr: string = DATE_FORMAT,
+ options?: Parameters<typeof format>[2]
) => {
- return format(date, formatString, { locale: ja, ...options });
+ return format(date, formatStr, { locale: ja, ...options });
};
export default formatDate;
diff --git a/src/pages/[class]/index.tsx b/src/pages/[class]/index.tsx
@@ -1,19 +1,18 @@
import { Box } from '@mui/material';
-import { addDays, subDays } from 'date-fns';
+import { addDays, compareAsc, subDays } from 'date-fns';
import Head from 'client/components/Head';
import Layout from 'client/components/Layout';
import SlideFooter from 'client/components/SlideFooter';
import DailyView from 'client/features/daily';
-import { CLASSES, DATE_FORMAT, GRADES } from 'common/constant';
+import { CLASSES, GRADES } from 'common/constant';
import formatDate from 'common/utils/formatDate';
-import { zodClass, zodGrade, zodPeriod } from 'common/utils/zod';
+import { zodClass, zodGrade } from 'common/utils/zod';
import { caller } from 'server/routers/_app';
-import { prisma } from 'server/utils/prisma';
-import type { DayTimetable, LessonData } from 'client/features/daily/types';
-import type { Class, Grade } from 'common/types';
-import type { NextPage, GetStaticPaths, GetStaticProps } from 'next';
+import type { DayTimetable, OnePeriod } from 'client/features/daily/types';
+import type { Class, DayPeriodJa, Grade } from 'common/types';
+import type { GetStaticPaths, GetStaticProps, NextPage } from 'next';
type UrlQuery = {
class: string;
@@ -56,135 +55,72 @@ export const getStaticProps: GetStaticProps<PageProps, UrlQuery> = async ({
notFound: true,
};
}
+ const gradeNumber = gradeParsed.data;
+ const classNumber = classParsed.data;
const now = new Date();
const startDate = subDays(now, 5);
const endDate = addDays(now, 30);
// クラスの標準時間割表を取得
- const { standard, id: classId } = await caller.classStandard.byGradeAndClass({
- grade: gradeParsed.data,
- class: classParsed.data,
+ const { standardTimetable } = await caller.classStandard.byGradeAndClass({
+ grade: gradeNumber,
+ class: classNumber,
});
// 学年の曜日時限時間割表を取得
- const schedules = await prisma.gradeSchedule.findMany({
- where: {
- grade: gradeParsed.data,
- date: {
- gte: startDate,
- lte: endDate,
- },
- },
+ const dayPeriodCalendar = await caller.dayPeriodSchedule.byGradeAndPeriod({
+ grade: gradeNumber,
+ startDate: formatDate(startDate),
+ endDate: formatDate(endDate),
});
// クラスの臨時変更を取得
- const temporarySchedules = await prisma.classTemporarySchedule.findMany({
- where: {
- classId,
- date: {
- gte: startDate,
- lte: endDate,
- },
- },
- });
-
- // 学年のイベントを取得
- const events = await prisma.schoolEvent.findMany({
- where: {
- grades: { has: gradeParsed.data },
- date: {
- gte: startDate,
- lte: endDate,
- },
- },
- });
-
- // 時間割を構築していくMap
- const calendar: Map<string, DayTimetable> = new Map();
-
- // イベントでループしてMapに当てはめていく
- events.forEach((event) => {
- const dateString = formatDate(event.date, DATE_FORMAT);
- const old = calendar.get(dateString);
- if (old) {
- calendar.set(dateString, {
- ...old,
- events: [...old.events, event],
- });
- } else {
- calendar.set(dateString, {
- date: event.date,
- events: [event],
- });
- }
- });
-
- // 曜日時限時間割表の1コマずつでループしてMapに当てはめていく
- schedules.forEach(({ date, period, dayPeriod, updatedAt }) => {
- const dateString = formatDate(date, DATE_FORMAT);
- const parsedPeriod = zodPeriod.safeParse(period);
-
- if (!parsedPeriod.success) return;
-
- const old = calendar.get(dateString);
- const dataToAdd: LessonData = {
- subjects: standard.get(dayPeriod) ?? [],
- basis: { type: 'dayPeriod', dayPeriod },
- updated: updatedAt,
- };
-
- if (old) {
- calendar.set(dateString, {
- ...old,
- [parsedPeriod.data]: dataToAdd,
- });
+ // 現在、臨時変更は扱っていない
+
+ /** 曜日時限からクラスの科目データを返す */
+ const makeOnePeriodData = (
+ dayPeriod?: DayPeriodJa
+ ): OnePeriod | undefined => {
+ if (dayPeriod) {
+ return {
+ courses: standardTimetable[dayPeriod],
+ basis: { type: 'dayPeriod', dayPeriod },
+ };
} else {
- calendar.set(dateString, {
- date: date,
- events: [],
- [parsedPeriod.data]: dataToAdd,
- });
+ return void 0;
}
- });
-
- // 臨時変更を1コマずつループしてMapに当てはめていく
- temporarySchedules.forEach(({ id, date, period, subjects, updatedAt }) => {
- const dateString = formatDate(date, DATE_FORMAT);
- const parsedPeriod = zodPeriod.safeParse(period);
-
- if (!parsedPeriod.success) return;
-
- const old = calendar.get(dateString);
- const dataToAdd: LessonData = {
- subjects,
- basis: { type: 'temporary', id },
- updated: updatedAt,
- };
+ };
- if (old) {
- calendar.set(dateString, {
- ...old,
- [parsedPeriod.data]: dataToAdd,
- });
- } else {
- calendar.set(dateString, {
- date: date,
- events: [],
- [parsedPeriod.data]: dataToAdd,
- });
+ // 曜日時限時間割表にクラスの科目データを当てはめていく
+ const dayTimetableCalendar = dayPeriodCalendar.map(
+ ([date, sch]): [string, DayTimetable] => {
+ return [
+ date,
+ {
+ date: sch.date,
+ event: sch.event,
+ period1: makeOnePeriodData(sch.period1),
+ period2: makeOnePeriodData(sch.period2),
+ period3: makeOnePeriodData(sch.period3),
+ period4: makeOnePeriodData(sch.period4),
+ period5: makeOnePeriodData(sch.period5),
+ period6: makeOnePeriodData(sch.period6),
+ period7: makeOnePeriodData(sch.period7),
+ },
+ ];
}
- });
+ );
- // 日付順に並び替えた配列にする
- const sorted = [...calendar.entries()].sort((a, b) => {
- return a[1].date.getTime() - b[1].date.getTime();
- });
+ // 日付順に並び替える
+ const sorted = dayTimetableCalendar.toSorted(([, a], [, b]) =>
+ compareAsc(a.date, b.date)
+ );
return {
props: {
- grade: gradeParsed.data,
- class: classParsed.data,
+ grade: gradeNumber,
+ class: classNumber,
calendar: sorted,
},
revalidate: 60 * 60, // 1時間毎の訪問で再生成
diff --git a/src/pages/console/class-standard.tsx b/src/pages/console/class-standard.tsx
@@ -1,63 +0,0 @@
-import NavigateNextIcon from '@mui/icons-material/NavigateNext';
-import Box from '@mui/material/Box';
-import Breadcrumbs from '@mui/material/Breadcrumbs';
-import Container from '@mui/material/Container';
-import Typography from '@mui/material/Typography';
-import { createServerSideHelpers } from '@trpc/react-query/server';
-import superjson from 'superjson';
-
-import Head from 'client/components/Head';
-import Link from 'client/components/Link';
-import ClassStandardTimetableEditor from 'client/features/console/classStandard';
-import { createContext } from 'server/context';
-import { appRouter } from 'server/routers/_app';
-
-import type { SchoolClass } from '@prisma/client';
-import type { GetStaticProps } from 'next';
-
-type PageProps = {
- classes: SchoolClass[];
-};
-
-export const getStaticProps: GetStaticProps<PageProps> = async () => {
- const ssg = createServerSideHelpers({
- router: appRouter,
- transformer: superjson,
- ctx: await createContext(),
- });
-
- const classes = await ssg.class.all.fetch();
-
- return {
- props: {
- trpcState: ssg.dehydrate(),
- classes: classes,
- },
- };
-};
-
-export default function StandardTimetableEditPage({ classes }: PageProps) {
- return (
- <>
- <Head title='クラス別時間割表 登録・変更' />
- <Container maxWidth='lg' component={Box} py={2}>
- <Breadcrumbs
- separator={<NavigateNextIcon fontSize='small' />}
- aria-label='breadcrumb'
- >
- <Link underline='hover' color='inherit' href='/'>
- トップ
- </Link>
- <Link underline='hover' color='inherit' href='/console'>
- データ管理
- </Link>
- <Typography color='text.primary' variant='h2'>
- クラス別時間割表
- </Typography>
- </Breadcrumbs>
-
- <ClassStandardTimetableEditor classes={classes} />
- </Container>
- </>
- );
-}
diff --git a/src/pages/console/class-temporary-schedule.tsx b/src/pages/console/class-temporary-schedule.tsx
@@ -1,63 +0,0 @@
-import NavigateNextIcon from '@mui/icons-material/NavigateNext';
-import Box from '@mui/material/Box';
-import Breadcrumbs from '@mui/material/Breadcrumbs';
-import Container from '@mui/material/Container';
-import Typography from '@mui/material/Typography';
-import { createServerSideHelpers } from '@trpc/react-query/server';
-import superjson from 'superjson';
-
-import Head from 'client/components/Head';
-import Link from 'client/components/Link';
-import ClassTemporaryScheduleEditor from 'client/features/console/classTemporarySchedule';
-import { createContext } from 'server/context';
-import { appRouter } from 'server/routers/_app';
-
-import type { SchoolClass } from '@prisma/client';
-import type { GetStaticProps } from 'next';
-
-type PageProps = {
- classes: SchoolClass[];
-};
-
-export const getStaticProps: GetStaticProps<PageProps> = async () => {
- const ssg = createServerSideHelpers({
- router: appRouter,
- transformer: superjson,
- ctx: await createContext(),
- });
-
- const classes = await ssg.class.all.fetch();
-
- return {
- props: {
- trpcState: ssg.dehydrate(),
- classes: classes,
- },
- };
-};
-
-export default function ClassTemporaryScheduleEditPage({ classes }: PageProps) {
- return (
- <>
- <Head title='臨時変更 登録・変更' />
- <Container maxWidth='lg' component={Box} py={2}>
- <Breadcrumbs
- separator={<NavigateNextIcon fontSize='small' />}
- aria-label='breadcrumb'
- >
- <Link underline='hover' color='inherit' href='/'>
- トップ
- </Link>
- <Link underline='hover' color='inherit' href='/console'>
- データ管理
- </Link>
- <Typography color='text.primary' variant='h2'>
- クラス別臨時時間割変更
- </Typography>
- </Breadcrumbs>
-
- <ClassTemporaryScheduleEditor classes={classes} />
- </Container>
- </>
- );
-}
diff --git a/src/pages/console/event.tsx b/src/pages/console/event.tsx
@@ -1,35 +0,0 @@
-import NavigateNextIcon from '@mui/icons-material/NavigateNext';
-import Box from '@mui/material/Box';
-import Breadcrumbs from '@mui/material/Breadcrumbs';
-import Container from '@mui/material/Container';
-import Typography from '@mui/material/Typography';
-
-import Head from 'client/components/Head';
-import Link from 'client/components/Link';
-import EventEditor from 'client/features/console/event';
-
-export default function EventEditPage() {
- return (
- <>
- <Head title='イベント 登録・変更' />
- <Container maxWidth='lg' component={Box} py={2}>
- <Breadcrumbs
- separator={<NavigateNextIcon fontSize='small' />}
- aria-label='breadcrumb'
- >
- <Link underline='hover' color='inherit' href='/'>
- トップ
- </Link>
- <Link underline='hover' color='inherit' href='/console'>
- データ管理
- </Link>
- <Typography color='text.primary' variant='h2'>
- イベント
- </Typography>
- </Breadcrumbs>
-
- <EventEditor />
- </Container>
- </>
- );
-}
diff --git a/src/pages/console/grade-schedule.tsx b/src/pages/console/grade-schedule.tsx
@@ -1,36 +0,0 @@
-import NavigateNextIcon from '@mui/icons-material/NavigateNext';
-import Box from '@mui/material/Box';
-import Breadcrumbs from '@mui/material/Breadcrumbs';
-import Container from '@mui/material/Container';
-import Typography from '@mui/material/Typography';
-
-import Head from 'client/components/Head';
-import Link from 'client/components/Link';
-import GradeScheduleEditor from 'client/features/console/gradeSchedule';
-
-// TODO: この登録画面の他に、一括確認画面を作る
-export default function GradeScheduleEditPage() {
- return (
- <>
- <Head title='曜日時限時間割表 登録・変更' />
- <Container maxWidth='lg' component={Box} py={2}>
- <Breadcrumbs
- separator={<NavigateNextIcon fontSize='small' />}
- aria-label='breadcrumb'
- >
- <Link underline='hover' color='inherit' href='/'>
- トップ
- </Link>
- <Link underline='hover' color='inherit' href='/console'>
- データ管理
- </Link>
- <Typography color='text.primary' variant='h2'>
- 学年別曜日時限時間割表
- </Typography>
- </Breadcrumbs>
-
- <GradeScheduleEditor />
- </Container>
- </>
- );
-}
diff --git a/src/pages/console/index.tsx b/src/pages/console/index.tsx
@@ -1,49 +0,0 @@
-import NavigateNextIcon from '@mui/icons-material/NavigateNext';
-import Box from '@mui/material/Box';
-import Breadcrumbs from '@mui/material/Breadcrumbs';
-import Container from '@mui/material/Container';
-import Typography from '@mui/material/Typography';
-
-import Head from 'client/components/Head';
-import Link from 'client/components/Link';
-
-import type { NextPage } from 'next';
-
-const Page: NextPage = () => {
- return (
- <>
- <Head title='データ管理トップ' />
- <Container maxWidth='lg' component={Box} py={2}>
- <Breadcrumbs
- separator={<NavigateNextIcon fontSize='small' />}
- aria-label='breadcrumb'
- >
- <Link underline='hover' color='inherit' href='/'>
- トップ
- </Link>
- <Typography color='text.primary' variant='h2'>
- データ管理
- </Typography>
- </Breadcrumbs>
- <ul>
- <li>
- <Link href='/console/class-standard'>クラス別標準時間割表</Link>
- </li>
- <li>
- <Link href='/console/grade-schedule'>学年別曜日時限時間割表</Link>
- </li>
- <li>
- <Link href='/console/class-temporary-schedule'>
- クラス別臨時変更
- </Link>
- </li>
- <li>
- <Link href='/console/event'>イベント</Link>
- </li>
- </ul>
- </Container>
- </>
- );
-};
-
-export default Page;
diff --git a/src/server/context.ts b/src/server/context.ts
@@ -1,4 +1,4 @@
-import { prisma } from 'server/utils/prisma';
+// import { prisma } from 'server/utils/prisma';
import type * as trpc from '@trpc/server';
import type * as trpcNext from '@trpc/server/adapters/next';
@@ -10,7 +10,7 @@ export const createContext = async (
) => {
return {
req: opts?.req,
- prisma,
+ // prisma,
};
};
export type Context = trpc.inferAsyncReturnType<typeof createContext>;
diff --git a/src/server/routers/_app.ts b/src/server/routers/_app.ts
@@ -1,14 +1,10 @@
import { z } from 'zod';
-import { procedure, router } from '../trpc';
-import { prisma } from '../utils/prisma';
+import { createCallerFactory, procedure, router } from '../trpc';
+// import { prisma } from '../utils/prisma';
-import { classRouter } from './class';
import { classStandardRouter } from './classStandard';
-import { classTemporaryScheduleRouter } from './classTemporarySchedule';
-import { classTemporaryScheduleGroupRouter } from './classTemporaryScheduleGroup';
-import { eventRouter } from './event';
-import { gradeScheduleRouter } from './gradeSchedule';
+import { dayPeriodScheduleRouter } from './dayPeriodSchedule';
export const appRouter = router({
hello: procedure
@@ -18,18 +14,15 @@ export const appRouter = router({
greeting: `hello ${input?.text}`,
};
}),
- class: classRouter,
classStandard: classStandardRouter,
- gradeSchedule: gradeScheduleRouter,
- classTemporarySchedule: classTemporaryScheduleRouter,
- classTemporaryScheduleGroup: classTemporaryScheduleGroupRouter,
- event: eventRouter,
+ dayPeriodSchedule: dayPeriodScheduleRouter,
});
// export type definition of API
export type AppRouter = typeof appRouter;
-export const caller = appRouter.createCaller({
+const createCaller = createCallerFactory(appRouter);
+export const caller = createCaller({
+ // prisma,
req: undefined,
- prisma: prisma,
});
diff --git a/src/server/routers/class.ts b/src/server/routers/class.ts
@@ -1,52 +0,0 @@
-import { TRPCError } from '@trpc/server';
-import { z } from 'zod';
-
-import { zodClass, zodGrade } from 'common/utils/zod';
-import { prisma } from 'server/utils/prisma';
-
-import { router, procedure } from '../trpc';
-
-import type { SchoolClass } from '@prisma/client';
-
-export const classRouter = router({
- all: procedure
- .input(z.object({ grade: zodGrade }).optional())
- .query<SchoolClass[]>(async ({ input }) => {
- return await prisma.schoolClass.findMany({
- where: { grade: input?.grade },
- orderBy: [{ grade: 'asc' }, { class: 'asc' }], // クラス順 1-1 → 3-8
- });
- }),
-
- byId: procedure
- .input(z.object({ id: z.number() }))
- .query<SchoolClass>(async ({ input }) => {
- const classData = await prisma.schoolClass.findUnique({
- where: { id: input.id },
- });
- if (classData) {
- return classData;
- } else {
- throw new TRPCError({
- code: 'NOT_FOUND',
- message: `id: '${input.id}' のデータは存在しませんでした。`,
- });
- }
- }),
-
- byGradeAndClassWithStandard: procedure
- .input(z.object({ grade: zodGrade, class: zodClass }))
- .query<SchoolClass>(async ({ input }) => {
- const classData = await prisma.schoolClass.findUniqueOrThrow({
- where: { grade_class: { grade: input.grade, class: input.class } },
- });
- if (classData) {
- return classData;
- } else {
- throw new TRPCError({
- code: 'NOT_FOUND',
- message: `grade: '${input.grade}', class: ${input.class} のデータは存在しませんでした。`,
- });
- }
- }),
-});
diff --git a/src/server/routers/classStandard.ts b/src/server/routers/classStandard.ts
@@ -1,148 +1,46 @@
-import { TRPCError } from '@trpc/server';
import { z } from 'zod';
-import {
- zodClass,
- zodDayPeriod,
- zodGrade,
- zodGradeClass,
-} from 'common/utils/zod';
-import { prisma } from 'server/utils/prisma';
+import { zodClass, zodGrade, zodGradeClass } from 'common/utils/zod';
-import { router, procedure } from '../trpc';
+import { allClassesStandardTimetable } from '../../../data/classStandard';
+import { procedure, router } from '../trpc';
-import type { SchoolClass } from '@prisma/client';
-import type { ClassStandardTimetable } from 'common/types';
+import type {
+ Class,
+ ClassStandardTimetable,
+ Grade,
+ GradeClass,
+} from 'common/types';
export const classStandardRouter = router({
- byId: procedure
- .input(z.object({ id: z.number() }))
- .query<SchoolClass & { standard: ClassStandardTimetable }>(
- async ({ input }) => {
- const classData = await prisma.schoolClass.findUnique({
- where: { id: input.id },
- include: { dayPeriod_Subjects: true },
- });
- if (classData) {
- const standard: ClassStandardTimetable = new Map(
- classData.dayPeriod_Subjects.map((v) => [v.dayPeriod, v.subjects])
- );
- return {
- id: classData.id,
- grade: classData.grade,
- class: classData.class,
- standard,
- updatedAt: classData.updatedAt,
- };
- } else {
- throw new TRPCError({
- code: 'NOT_FOUND',
- message: `id: '${input.id}' のクラスは存在しませんでした。`,
- });
- }
- }
- ),
-
byGradeAndClass: procedure
.input(z.object({ grade: zodGrade, class: zodClass }))
- .query<SchoolClass & { standard: ClassStandardTimetable }>(
- async ({ input }) => {
- const classData = await prisma.schoolClass.findUnique({
- where: { grade_class: { grade: input.grade, class: input.class } },
- include: { dayPeriod_Subjects: true },
- });
- if (classData) {
- const standard: ClassStandardTimetable = new Map(
- classData.dayPeriod_Subjects.map((v) => [v.dayPeriod, v.subjects])
- );
- return {
- id: classData.id,
- grade: classData.grade,
- class: classData.class,
- standard,
- updatedAt: classData.updatedAt,
- };
- } else {
- throw new TRPCError({
- code: 'NOT_FOUND',
- message: `grade: '${input.grade}', class: '${input.class}' のクラスは存在しませんでした。`,
- });
- }
- }
- ),
-
- byGradeClass: procedure
- .input(z.object({ gradeClass: zodGradeClass }))
- .query<SchoolClass & { standard: ClassStandardTimetable }>(
- async ({ input }) => {
- const [g, c] = input.gradeClass.split('-') as [string, string];
- const classData = await prisma.schoolClass.findUnique({
- where: { grade_class: { grade: parseInt(g), class: parseInt(c) } },
- include: { dayPeriod_Subjects: true },
- });
- if (classData) {
- const standard: ClassStandardTimetable = new Map(
- classData.dayPeriod_Subjects.map((v) => [v.dayPeriod, v.subjects])
- );
- return {
- id: classData.id,
- grade: classData.grade,
- class: classData.class,
- standard,
- updatedAt: classData.updatedAt,
- };
- } else {
- throw new TRPCError({
- code: 'NOT_FOUND',
- message: `'${input.gradeClass}' のクラスは存在しませんでした。`,
- });
- }
- }
- ),
-
- update: procedure
- .input(
- z.object({
- id: z.number(),
- standard: z.map(zodDayPeriod, z.array(z.string())),
- })
- )
- .mutation<SchoolClass & { standard: ClassStandardTimetable }>(
- async ({ input }) => {
- const classId = input.id;
- const classData = await prisma.schoolClass.findUnique({
- where: { id: classId },
- });
-
- if (!classData) {
- throw new TRPCError({
- code: 'NOT_FOUND',
- message: `id: '${input.id}' のクラスは存在しませんでした。`,
- });
- }
-
- // 変更をDBに反映 (レコード削除操作は考慮しない)
- await Promise.all(
- [...input.standard.entries()].map(([dayPeriod, subjects]) => {
- return prisma.class_DayPeriod_Subject.upsert({
- where: { classId_dayPeriod: { classId, dayPeriod } },
- create: { classId, dayPeriod, subjects },
- update: { subjects },
- });
- })
- );
-
- const result = await prisma.class_DayPeriod_Subject.findMany({
- where: { classId },
- });
- const standard: ClassStandardTimetable = new Map(
- result.map((v) => [v.dayPeriod, v.subjects])
- );
-
- return {
- ...classData,
- standard,
- };
- }
- ),
+ .query<{
+ grade: Grade;
+ class: Class;
+ gradeClass: GradeClass;
+ standardTimetable: ClassStandardTimetable;
+ }>(({ input }) => {
+ const gradeClass = `${input.grade}-${input.class}` as const;
+ const standardTimetable = allClassesStandardTimetable[gradeClass];
+
+ return {
+ grade: input.grade,
+ class: input.class,
+ gradeClass,
+ standardTimetable,
+ };
+ }),
+
+ byGradeClass: procedure.input(z.object({ gradeClass: zodGradeClass })).query<{
+ gradeClass: GradeClass;
+ standardTimetable: ClassStandardTimetable;
+ }>(({ input }) => {
+ const standardTimetable = allClassesStandardTimetable[input.gradeClass];
+
+ return {
+ gradeClass: input.gradeClass,
+ standardTimetable,
+ };
+ }),
});
diff --git a/src/server/routers/classTemporarySchedule.ts b/src/server/routers/classTemporarySchedule.ts
@@ -1,101 +0,0 @@
-import { Prisma } from '@prisma/client';
-import { TRPCError } from '@trpc/server';
-import { z } from 'zod';
-
-import { zodPeriod } from 'common/utils/zod';
-import { prisma } from 'server/utils/prisma';
-
-import { router, procedure } from '../trpc';
-
-import type { ClassTemporarySchedule } from '@prisma/client';
-
-export const classTemporaryScheduleRouter = router({
- getAll: procedure
- .input(z.object({ classId: z.number() }))
- .query<ClassTemporarySchedule[]>(async ({ input }) => {
- return await prisma.classTemporarySchedule.findMany({
- where: { classId: input.classId },
- orderBy: [{ date: 'asc' }, { period: 'asc' }],
- });
- }),
-
- create: procedure
- .input(
- z.object({
- date: z.string(),
- period: zodPeriod,
- classId: z.number(),
- subjects: z.array(z.string()),
- parentId: z.number().optional(),
- })
- )
- .mutation<ClassTemporarySchedule>(async ({ input }) => {
- try {
- const date = z.coerce.date().parse(input.date);
- return await prisma.classTemporarySchedule.create({
- data: {
- date,
- period: input.period,
- class: { connect: { id: input.classId } },
- subjects: input.subjects,
- parent: input.parentId ? { connect: { id: input.parentId } } : {},
- },
- });
- } catch (err) {
- if (err instanceof Prisma.PrismaClientKnownRequestError) {
- if (err.code === 'P2002') {
- throw new TRPCError({
- code: 'BAD_REQUEST',
- cause: err,
- message: 'この日付、時限、クラスの臨時変更が既に存在します。',
- });
- }
- }
- throw new TRPCError({ code: 'INTERNAL_SERVER_ERROR', cause: err });
- }
- }),
-
- update: procedure
- .input(
- z.object({
- id: z.number(),
- date: z.string().optional(),
- period: zodPeriod.optional(),
- subjects: z.array(z.string()).optional(),
- parentId: z.number().optional(),
- })
- )
- .mutation<ClassTemporarySchedule>(async ({ input }) => {
- try {
- const date = z.coerce.date().optional().parse(input.date);
- return await prisma.classTemporarySchedule.update({
- where: { id: input.id },
- data: {
- date,
- period: input.period,
- subjects: input.subjects,
- parent: { connect: { id: input.parentId } },
- },
- });
- } catch (err) {
- if (err instanceof Prisma.PrismaClientKnownRequestError) {
- if (err.code === 'P2002') {
- throw new TRPCError({
- code: 'BAD_REQUEST',
- cause: err,
- message: 'この日付、時限、クラスの臨時変更が既に存在します。',
- });
- }
- }
- throw new TRPCError({ code: 'INTERNAL_SERVER_ERROR', cause: err });
- }
- }),
-
- delete: procedure
- .input(z.object({ id: z.number() }))
- .mutation(async ({ input }) => {
- return await prisma.classTemporarySchedule.delete({
- where: { id: input.id },
- });
- }),
-});
diff --git a/src/server/routers/classTemporaryScheduleGroup.ts b/src/server/routers/classTemporaryScheduleGroup.ts
@@ -1,67 +0,0 @@
-import { z } from 'zod';
-
-import { zodPeriod } from 'common/utils/zod';
-import { prisma } from 'server/utils/prisma';
-
-import { router, procedure } from '../trpc';
-
-import type {
- ClassTemporarySchedule,
- ClassTemporaryScheduleGroup,
-} from '@prisma/client';
-
-type ClassTemporaryScheduleGroupWithChildren = ClassTemporaryScheduleGroup & {
- children: ClassTemporarySchedule[];
-};
-
-export const classTemporaryScheduleGroupRouter = router({
- getAll: procedure
- .input(z.object({ classId: z.number() }))
- .query<ClassTemporaryScheduleGroupWithChildren[]>(async ({ input }) => {
- return await prisma.classTemporaryScheduleGroup.findMany({
- where: {
- children: {
- some: { classId: input.classId },
- },
- },
- include: { children: true },
- });
- }),
-
- create: procedure
- .input(
- z.object({
- classId: z.number(),
- children: z.array(
- z.object({
- date: z.date(),
- period: zodPeriod,
- subjects: z.array(z.string()),
- })
- ),
- note: z.string().optional(),
- })
- )
- .mutation<ClassTemporaryScheduleGroupWithChildren>(async ({ input }) => {
- const childrenData = input.children.map((data) => ({
- ...data,
- classId: input.classId,
- }));
- return await prisma.classTemporaryScheduleGroup.create({
- data: {
- children: { createMany: { data: childrenData } },
- note: input.note,
- },
- include: { children: true },
- });
- }),
-
- delete: procedure
- .input(z.object({ id: z.number() }))
- .mutation<ClassTemporaryScheduleGroupWithChildren>(async ({ input }) => {
- return await prisma.classTemporaryScheduleGroup.delete({
- where: { id: input.id },
- include: { children: true },
- });
- }),
-});
diff --git a/src/server/routers/dayPeriodSchedule.ts b/src/server/routers/dayPeriodSchedule.ts
@@ -0,0 +1,35 @@
+import { isAfter, isBefore } from 'date-fns';
+import { z } from 'zod';
+
+import { zodGrade } from 'common/utils/zod';
+
+import { dayPeriodSchedules } from '../../../data/dayPeriodSchedule';
+import { procedure, router } from '../trpc';
+
+import type { DaySchedule } from 'common/types';
+
+type DayScheduleWithDate = DaySchedule & { date: Date };
+
+export const dayPeriodScheduleRouter = router({
+ byGradeAndPeriod: procedure
+ .input(
+ z.object({
+ grade: zodGrade,
+ startDate: z.string(),
+ endDate: z.string(),
+ })
+ )
+ .query<[string, DayScheduleWithDate][]>(async ({ input }) => {
+ const schedules = Object.entries(dayPeriodSchedules)
+ .filter(
+ ([date]) =>
+ isAfter(date, input.startDate) && isBefore(date, input.endDate)
+ )
+ .map(([date, allGradesSchedule]): [string, DayScheduleWithDate] => {
+ const schedule = { ...allGradesSchedule[`grade${input.grade}`] };
+ return [date, { date: new Date(date), ...schedule }];
+ });
+
+ return schedules;
+ }),
+});
diff --git a/src/server/routers/event.ts b/src/server/routers/event.ts
@@ -1,79 +0,0 @@
-import { z } from 'zod';
-
-import { zodGrade } from 'common/utils/zod';
-import { prisma } from 'server/utils/prisma';
-
-import { router, procedure } from '../trpc';
-
-import type { SchoolEvent } from '@prisma/client';
-
-export const eventRouter = router({
- getAll: procedure
- .input(
- z
- .object({
- grades: z.array(zodGrade),
- })
- .optional()
- )
- .query<SchoolEvent[]>(async ({ input }) => {
- const grades = input?.grades ?? [1, 2, 3];
- return await prisma.schoolEvent.findMany({
- where: { grades: { hasSome: grades } },
- });
- }),
-
- create: procedure
- .input(
- z.object({
- grades: z.array(zodGrade).nonempty(),
- date: z.string(),
- title: z.string(),
- detail: z.string().nullish(),
- })
- )
- .mutation<SchoolEvent>(async ({ input }) => {
- const date = z.coerce.date().parse(input.date);
- const grades = [...new Set(input.grades)].sort();
- const detail = input.detail === '' ? null : input.detail;
- return await prisma.schoolEvent.create({
- data: {
- grades: { set: grades },
- date,
- title: input.title,
- detail,
- },
- });
- }),
-
- update: procedure
- .input(
- z.object({
- id: z.number(),
- grades: z.array(zodGrade).nonempty().optional(),
- date: z.string().optional(),
- title: z.string().optional(),
- detail: z.string().nullish(),
- })
- )
- .mutation<SchoolEvent>(async ({ input }) => {
- const date = z.coerce.date().optional().parse(input.date);
- const grades = [...new Set(input.grades)].sort();
- const detail = input.detail === '' ? null : input.detail;
- return await prisma.schoolEvent.update({
- where: { id: input.id },
- data: {
- grades: { set: grades },
- date,
- title: input.title,
- detail,
- },
- });
- }),
-
- delete: procedure
- .input(z.object({ id: z.number() }))
- .mutation(async ({ input }) => {
- return await prisma.schoolEvent.delete({ where: { id: input.id } });
- }),
-});
diff --git a/src/server/routers/gradeSchedule.ts b/src/server/routers/gradeSchedule.ts
@@ -1,126 +0,0 @@
-import { z } from 'zod';
-
-import { GRADES } from 'common/constant';
-import { zodPeriod, zodDayPeriod, zodGrade } from 'common/utils/zod';
-import { prisma } from 'server/utils/prisma';
-
-import { router, procedure } from '../trpc';
-
-import type { DayPeriod, Prisma } from '@prisma/client';
-import type { SchoolTime } from 'common/types';
-
-type DayGradeSchedule = Map<SchoolTime, DayPeriod>;
-type DaySchedule = {
- 1: DayGradeSchedule;
- 2: DayGradeSchedule;
- 3: DayGradeSchedule;
-};
-
-const getDaySchedule = async (date: Date): Promise<DaySchedule> => {
- const data = await prisma.gradeSchedule.findMany({
- where: { date },
- });
- const daySchedule: DaySchedule = {
- 1: new Map(),
- 2: new Map(),
- 3: new Map(),
- };
-
- data.forEach((v) => {
- const parsedGrade = zodGrade.safeParse(v.grade);
- const parsedPeriod = zodPeriod.safeParse(v.period);
- if (parsedGrade.success && parsedPeriod.success) {
- daySchedule[parsedGrade.data].set(parsedPeriod.data, v.dayPeriod);
- }
- });
-
- return daySchedule;
-};
-
-export const gradeScheduleRouter = router({
- byDate: procedure
- .input(
- z.object({
- date: z.string(),
- })
- )
- .query<{
- date: Date;
- schedule: {
- 1: DayGradeSchedule;
- 2: DayGradeSchedule;
- 3: DayGradeSchedule;
- };
- }>(async ({ input }) => {
- const date = z.coerce.date().parse(input.date);
- const schedule = await getDaySchedule(date);
-
- return { date, schedule };
- }),
-
- update: procedure
- .input(
- z.object({
- date: z.string(),
- schedule: z.object({
- 1: z.map(zodPeriod, zodDayPeriod.nullable()),
- 2: z.map(zodPeriod, zodDayPeriod.nullable()),
- 3: z.map(zodPeriod, zodDayPeriod.nullable()),
- }),
- })
- )
- .mutation<{
- date: Date;
- schedule: {
- 1: DayGradeSchedule;
- 2: DayGradeSchedule;
- 3: DayGradeSchedule;
- };
- }>(async ({ input }) => {
- const date = z.coerce.date().parse(input.date);
- const toDelete: Prisma.GradeScheduleWhereInput[] = [];
-
- // 一旦全データでループ
- const upsert = GRADES.flatMap((grade) => {
- return [...input.schedule[grade].entries()].flatMap(
- ([period, dayPeriod]) => {
- if (dayPeriod === null) {
- // null の場合は削除リクエストのリストに入れる
- toDelete.push({
- grade,
- date,
- period,
- });
- return [];
- }
-
- // データがある場合は 更新・作成処理
- return prisma.gradeSchedule.upsert({
- where: {
- grade_date_period: { grade, date, period },
- },
- update: { dayPeriod },
- create: {
- grade,
- date,
- period,
- dayPeriod,
- },
- });
- }
- );
- });
-
- // 更新・作成処理の終了を待機
- await Promise.all(upsert);
-
- // 削除処理
- await prisma.gradeSchedule.deleteMany({
- where: { OR: toDelete },
- });
-
- // 更新後のデータを返却する
- const newSchedule = await getDaySchedule(date);
- return { date, schedule: newSchedule };
- }),
-});
diff --git a/src/server/trpc.ts b/src/server/trpc.ts
@@ -15,3 +15,4 @@ const t = initTRPC.context<Context>().create({
export const router = t.router;
export const procedure = t.procedure;
export const middleware = t.middleware;
+export const createCallerFactory = t.createCallerFactory;
diff --git a/src/server/utils/prisma.ts b/src/server/utils/prisma.ts
@@ -1,10 +1,10 @@
-import { PrismaClient } from '@prisma/client';
+// import { PrismaClient } from '@prisma/client';
-declare global {
- // eslint-disable-next-line no-var
- var prisma: PrismaClient | undefined;
-}
+// declare global {
+// // eslint-disable-next-line no-var
+// var prisma: PrismaClient | undefined;
+// }
-export const prisma = global.prisma || new PrismaClient();
+// export const prisma = global.prisma || new PrismaClient();
-if (process.env.NODE_ENV === 'development') global.prisma = prisma;
+// if (process.env.NODE_ENV === 'development') global.prisma = prisma;
diff --git a/tools/emigrateDB.ts b/tools/emigrateDB.ts
@@ -1,123 +0,0 @@
-// データベースを supabase から Vercel Postgres に移行する際に利用したスクリプト
-
-import { PrismaClient } from '@prisma/client';
-
-const prismaOld = new PrismaClient({
- datasources: {
- db: {
- url: '',
- },
- },
-});
-const prismaNew = new PrismaClient({
- datasources: {
- db: {
- url: '',
- },
- },
-});
-
-async function main() {
- {
- const data = await prismaOld.schoolClass.findMany({
- select: { class: true, grade: true, updatedAt: true },
- });
- const result = await prismaNew.schoolClass.createMany({
- data,
- skipDuplicates: true,
- });
- console.log(`SchoolClass のレコードを ${result.count} 件移行しました`);
- }
- {
- const data = await prismaOld.class_DayPeriod_Subject.findMany({
- select: {
- classId: true,
- dayPeriod: true,
- subjects: true,
- updatedAt: true,
- },
- });
- const result = await prismaNew.class_DayPeriod_Subject.createMany({
- data,
- skipDuplicates: true,
- });
- console.log(
- `Class_DayPeriod_Subject のレコードを ${result.count} 件移行しました`
- );
- }
- {
- const data = await prismaOld.gradeSchedule.findMany({
- select: {
- date: true,
- dayPeriod: true,
- grade: true,
- period: true,
- updatedAt: true,
- },
- });
- const result = await prismaNew.gradeSchedule.createMany({
- data,
- skipDuplicates: true,
- });
- console.log(`GradeSchedule のレコードを ${result.count} 件移行しました`);
- }
- {
- const data = await prismaOld.classTemporarySchedule.findMany({
- select: {
- classId: true,
- date: true,
- parentId: true,
- period: true,
- subjects: true,
- updatedAt: true,
- },
- });
- const result = await prismaNew.classTemporarySchedule.createMany({
- data,
- skipDuplicates: true,
- });
- console.log(
- `ClassTemporarySchedule のレコードを ${result.count} 件移行しました`
- );
- }
- {
- const data = await prismaOld.classTemporaryScheduleGroup.findMany({
- select: { note: true },
- });
- const result = await prismaNew.classTemporaryScheduleGroup.createMany({
- data,
- skipDuplicates: true,
- });
- console.log(
- `ClassTemporaryScheduleGroup のレコードを ${result.count} 件移行しました`
- );
- }
- {
- const data = await prismaOld.schoolEvent.findMany({
- select: {
- date: true,
- detail: true,
- grades: true,
- title: true,
- updatedAt: true,
- },
- });
- const result = await prismaNew.schoolEvent.createMany({
- data,
- skipDuplicates: true,
- });
- console.log(`SchoolEvent のレコードを ${result.count} 件移行しました`);
- }
-}
-
-main()
- .then(async () => {
- await prismaOld.$disconnect();
- await prismaNew.$disconnect();
- })
- .catch(async (e) => {
- console.error(e);
- await prismaOld.$disconnect();
- await prismaNew.$disconnect();
- process.exit(1);
- });
diff --git a/vercel.json b/vercel.json
@@ -1,5 +1 @@
-{
- "buildCommand": "pnpm prisma migrate deploy && pnpm prisma db seed && next build",
- "devCommand": "next dev",
- "installCommand": "pnpm install && pnpm prisma generate"
-}
+{}