From 7ddb51fdb11447ca0d7f3ced6e6bfbeb9f80b797 Mon Sep 17 00:00:00 2001 From: louis-antoine-etsmtl Date: Fri, 29 Mar 2024 20:08:34 -0400 Subject: [PATCH] ajout fichiers application --- Dockerfile | 27 + client/Dockerfile | 17 + client/babel.config.cjs | 3 + client/index.html | 19 + client/jest.config.cjs | 17 + client/jest.setup.cjs | 7 + client/nginx/default.conf | 10 + client/package-lock.json | 11129 ++++++++++++++++ client/package.json | 66 + client/public/Logo.svg | 6 + client/public/logo.png | Bin 0 -> 5503 bytes client/public/people.svg | 4 + client/public/student.svg | 11 + client/public/teacher.svg | 238 + client/public/vite.svg | 1 + client/rapport/H24-iteration1.md | 65 + .../Document-de-Recueil-de-User-Stories 2.md | 118 + .../Document-de-Recueil-de-User-Stories.pdf | Bin 0 -> 398224 bytes client/rapport/documentation/SRS-PFE004.pdf | Bin 0 -> 368833 bytes .../Diagramme_de_conception_iteration2.svg | 1 + .../Diagramme_de_deploiement_iteration2.svg | 1 + ...ramme_de_sequence_join_room_iteration2.svg | 1 + ...mme_de_sequence_manage_room_iteration2.svg | 1 + .../Diagramme_conception_iteration4.svg | 1 + ...e_de_sequence_creation_Room_iteration4.svg | 1 + ...e_sequence_deroulement_quiz_iteration4.svg | 1 + ...ramme_de_sequence_join_room_iteration4.svg | 1 + .../Diagramme_deploiement_iteration4.svg | 1 + client/rapport/rapport_iteration_1.md | 72 + client/rapport/rapport_iteration_2.md | 119 + client/rapport/rapport_iteration_3.md | 110 + client/rapport/rapport_iteration_4.md | 138 + client/src/App.tsx | 66 + client/src/Types/FolderType.tsx | 6 + client/src/Types/QuestionType.tsx | 6 + client/src/Types/QuizType.tsx | 10 + client/src/Types/UserType.tsx | 4 + .../src/__tests__/Types/QuestionType.test.tsx | 43 + client/src/__tests__/Types/QuizType.test.tsx | 40 + client/src/__tests__/Types/UserType.test.tsx | 15 + .../ConfirmDialog/ConfirmDialog.test.tsx | 55 + .../components/Editor/Editor.test.tsx | 75 + .../GiftTemplate/GIFTTemplatePreview.test.tsx | 50 + .../GiftTemplate/constants/colors.test.tsx | 35 + .../GiftTemplate/constants/styles.test.tsx | 34 + .../GiftTemplate/constants/theme.test.tsx | 16 + .../templates/AnswerIcon.test.tsx | 35 + .../ImportModal/ImportModal.test.tsx | 72 + .../LaunchQuizDialog.test.tsx | 53 + .../LoadingCircle/LoadingCircle.test.tsx | 13 + .../MultipleChoiceQuestion.test.tsx | 44 + .../NumericalQuestion.test.tsx | 62 + .../components/Questions/Question.test.tsx | 140 + .../ShortAnswerQuestion.test.tsx | 80 + .../TrueFalseQuestion.test.tsx | 64 + .../ReturnButton/ReturnButton.test.tsx | 45 + .../UserWaitPage/UserWaitPage.test.tsx | 41 + client/src/__tests__/pages/Home/Home.test.tsx | 35 + .../StudentModeQuiz/StudentModeQuiz.test.tsx | 127 + .../TeacherModeQuiz/TeacherModeQuiz.test.tsx | 57 + .../Teacher/Dashboard/Dashboard.test.tsx | 67 + .../Teacher/EditorQuiz/EditorQuiz.test.tsx | 60 + .../services/QuestionService.test.tsx | 39 + .../__tests__/services/QuizService.test.tsx | 65 + .../services/WebsocketService.test.tsx | 88 + .../ConfirmDialog/ConfirmDialog.tsx | 77 + .../DisconnectButton/DisconnectButton.tsx | 66 + client/src/components/Editor/Editor.tsx | 32 + client/src/components/Editor/editor.css | 9 + client/src/components/Footer/Footer.tsx | 25 + client/src/components/Footer/footer.css | 23 + .../GIFTCheatSheet/GiftCheatSheet.tsx | 153 + .../GIFTCheatSheet/giftCheatSheet.css | 37 + .../GiftTemplate/GIFTTemplatePreview.tsx | 86 + .../GiftTemplate/constants/colors.ts | 52 + .../GiftTemplate/constants/index.ts | 3 + .../GiftTemplate/constants/styles.ts | 58 + .../GiftTemplate/constants/theme.ts | 11 + client/src/components/GiftTemplate/index.ts | 263 + client/src/components/GiftTemplate/styles.css | 86 + .../GiftTemplate/templates/AnswerIcon.ts | 36 + .../GiftTemplate/templates/Category.ts | 14 + .../GiftTemplate/templates/Description.ts | 22 + .../GiftTemplate/templates/Error.ts | 59 + .../GiftTemplate/templates/Essay.ts | 27 + .../GiftTemplate/templates/GlobalFeedback.ts | 27 + .../GiftTemplate/templates/Matching.ts | 87 + .../GiftTemplate/templates/MultipleChoice.ts | 31 + .../templates/MultipleChoiceAnswers.ts | 89 + .../GiftTemplate/templates/Numerical.ts | 60 + .../templates/QuestionContainer.ts | 20 + .../GiftTemplate/templates/ShortAnswer.ts | 46 + .../GiftTemplate/templates/TextType.ts | 46 + .../GiftTemplate/templates/Title.ts | 56 + .../GiftTemplate/templates/TrueFalse.ts | 54 + .../GiftTemplate/templates/index.ts | 75 + .../GiftTemplate/templates/types.d.ts | 120 + client/src/components/Header/Header.tsx | 39 + client/src/components/Header/header.css | 14 + .../components/ImportModal/ImportModal.tsx | 210 + .../components/ImportModal/importModal.css | 20 + .../LaunchQuizDialog/LaunchQuizDialog.tsx | 59 + .../components/LiveResults/LiveResults.tsx | 390 + .../src/components/LiveResults/liveResult.css | 14 + .../LoadingCircle/LoadingCircle.tsx | 18 + .../LoadingCircle/loadingCircle.css | 5 + .../LoginContainer/LoginContainer.tsx | 29 + .../LoginContainer/loginContainer.css | 34 + .../QuestionNavigation/QuestionNavigation.tsx | 37 + .../MultipleChoiceQuestion.tsx | 84 + .../NumericalQuestion/NumericalQuestion.tsx | 78 + client/src/components/Questions/Question.tsx | 109 + .../ShortAnswerQuestion.tsx | 73 + .../TrueFalseQuestion/TrueFalseQuestion.tsx | 69 + .../components/Questions/questionStyle.css | 96 + .../components/ReturnButton/ReturnButton.tsx | 66 + .../StudentModeQuiz/StudentModeQuiz.tsx | 103 + .../TeacherModeQuiz/TeacherModeQuiz.tsx | 67 + .../components/UserWaitPage/UserWaitPage.tsx | 56 + .../components/UserWaitPage/userWaitPage.css | 23 + client/src/constants.tsx | 6 + client/src/cssReset.css | 76 + client/src/globals.d.ts | 1 + client/src/index.css | 213 + client/src/main.tsx | 36 + client/src/pages/Home/Home.tsx | 37 + client/src/pages/Home/home.css | 72 + .../src/pages/Student/JoinRoom/JoinRoom.tsx | 191 + .../src/pages/Student/JoinRoom/joinRoom.css | 50 + .../src/pages/Teacher/Dashboard/Dashboard.tsx | 525 + .../src/pages/Teacher/Dashboard/dashboard.css | 80 + .../pages/Teacher/EditorQuiz/EditorQuiz.tsx | 254 + .../pages/Teacher/EditorQuiz/editorQuiz.css | 75 + client/src/pages/Teacher/Login/Login.css | 17 + client/src/pages/Teacher/Login/Login.tsx | 94 + .../pages/Teacher/ManageRoom/ManageRoom.tsx | 325 + .../pages/Teacher/ManageRoom/manageRoom.css | 185 + .../src/pages/Teacher/Register/Register.tsx | 81 + .../Teacher/ResetPassword/ResetPassword.tsx | 68 + client/src/pages/Teacher/Share/Share.tsx | 133 + client/src/pages/Teacher/Share/share.css | 21 + client/src/quiz.txt | 50 + client/src/services/ApiService.tsx | 882 ++ client/src/services/QuestionService.ts | 25 + client/src/services/WebsocketService.tsx | 72 + client/src/services/useCheckMobileScreen.tsx | 19 + client/src/vite-env.d.ts | 1 + client/tsconfig.json | 26 + client/tsconfig.node.json | 11 + client/vercel.json | 9 + client/vite.config.ts | 22 + docker-compose.yaml | 52 + nginx/Dockerfile | 3 + nginx/default.conf | 21 + serveur/Dockerfile | 13 + serveur/__tests__/image.test.js | 64 + serveur/__tests__/socket.test.js | 170 + serveur/app.js | 70 + serveur/config/db.js | 28 + serveur/config/email.js | 49 + serveur/constants/errorCodes.js | 133 + serveur/controllers/folders.js | 268 + serveur/controllers/images.js | 56 + serveur/controllers/quiz.js | 326 + serveur/controllers/users.js | 146 + serveur/middleware/AppError.js | 8 + serveur/middleware/errorHandler.js | 24 + serveur/middleware/jwtToken.js | 37 + serveur/models/folders.js | 174 + serveur/models/images.js | 44 + serveur/models/quiz.js | 133 + serveur/models/users.js | 121 + serveur/package-lock.json | 5721 ++++++++ serveur/package.json | 42 + serveur/routers/folders.js | 18 + serveur/routers/images.js | 15 + serveur/routers/quiz.js | 19 + serveur/routers/users.js | 13 + serveur/socket/socket.js | 120 + 179 files changed, 28916 insertions(+) create mode 100644 Dockerfile create mode 100644 client/Dockerfile create mode 100644 client/babel.config.cjs create mode 100644 client/index.html create mode 100644 client/jest.config.cjs create mode 100644 client/jest.setup.cjs create mode 100644 client/nginx/default.conf create mode 100644 client/package-lock.json create mode 100644 client/package.json create mode 100644 client/public/Logo.svg create mode 100644 client/public/logo.png create mode 100644 client/public/people.svg create mode 100644 client/public/student.svg create mode 100644 client/public/teacher.svg create mode 100644 client/public/vite.svg create mode 100644 client/rapport/H24-iteration1.md create mode 100644 client/rapport/documentation/Document-de-Recueil-de-User-Stories 2.md create mode 100644 client/rapport/documentation/Document-de-Recueil-de-User-Stories.pdf create mode 100644 client/rapport/documentation/SRS-PFE004.pdf create mode 100644 client/rapport/documentation/diagrammes-iteration-2/Diagramme_de_conception_iteration2.svg create mode 100644 client/rapport/documentation/diagrammes-iteration-2/Diagramme_de_deploiement_iteration2.svg create mode 100644 client/rapport/documentation/diagrammes-iteration-2/Diagramme_de_sequence_join_room_iteration2.svg create mode 100644 client/rapport/documentation/diagrammes-iteration-2/Diagramme_de_sequence_manage_room_iteration2.svg create mode 100644 client/rapport/documentation/diagrammes-iteration-4/Diagramme_conception_iteration4.svg create mode 100644 client/rapport/documentation/diagrammes-iteration-4/Diagramme_de_sequence_creation_Room_iteration4.svg create mode 100644 client/rapport/documentation/diagrammes-iteration-4/Diagramme_de_sequence_deroulement_quiz_iteration4.svg create mode 100644 client/rapport/documentation/diagrammes-iteration-4/Diagramme_de_sequence_join_room_iteration4.svg create mode 100644 client/rapport/documentation/diagrammes-iteration-4/Diagramme_deploiement_iteration4.svg create mode 100644 client/rapport/rapport_iteration_1.md create mode 100644 client/rapport/rapport_iteration_2.md create mode 100644 client/rapport/rapport_iteration_3.md create mode 100644 client/rapport/rapport_iteration_4.md create mode 100644 client/src/App.tsx create mode 100644 client/src/Types/FolderType.tsx create mode 100644 client/src/Types/QuestionType.tsx create mode 100644 client/src/Types/QuizType.tsx create mode 100644 client/src/Types/UserType.tsx create mode 100644 client/src/__tests__/Types/QuestionType.test.tsx create mode 100644 client/src/__tests__/Types/QuizType.test.tsx create mode 100644 client/src/__tests__/Types/UserType.test.tsx create mode 100644 client/src/__tests__/components/ConfirmDialog/ConfirmDialog.test.tsx create mode 100644 client/src/__tests__/components/Editor/Editor.test.tsx create mode 100644 client/src/__tests__/components/GiftTemplate/GIFTTemplatePreview.test.tsx create mode 100644 client/src/__tests__/components/GiftTemplate/constants/colors.test.tsx create mode 100644 client/src/__tests__/components/GiftTemplate/constants/styles.test.tsx create mode 100644 client/src/__tests__/components/GiftTemplate/constants/theme.test.tsx create mode 100644 client/src/__tests__/components/GiftTemplate/templates/AnswerIcon.test.tsx create mode 100644 client/src/__tests__/components/ImportModal/ImportModal.test.tsx create mode 100644 client/src/__tests__/components/LaunchQuizDialog/LaunchQuizDialog.test.tsx create mode 100644 client/src/__tests__/components/LoadingCircle/LoadingCircle.test.tsx create mode 100644 client/src/__tests__/components/Questions/MultipleChoiceQuestion/MultipleChoiceQuestion.test.tsx create mode 100644 client/src/__tests__/components/Questions/NumericalQuestion/NumericalQuestion.test.tsx create mode 100644 client/src/__tests__/components/Questions/Question.test.tsx create mode 100644 client/src/__tests__/components/Questions/ShortAnswerQuestion/ShortAnswerQuestion.test.tsx create mode 100644 client/src/__tests__/components/Questions/TrueFalseQuestion/TrueFalseQuestion.test.tsx create mode 100644 client/src/__tests__/components/ReturnButton/ReturnButton.test.tsx create mode 100644 client/src/__tests__/components/UserWaitPage/UserWaitPage.test.tsx create mode 100644 client/src/__tests__/pages/Home/Home.test.tsx create mode 100644 client/src/__tests__/pages/Student/StudentModeQuiz/StudentModeQuiz.test.tsx create mode 100644 client/src/__tests__/pages/Student/TeacherModeQuiz/TeacherModeQuiz.test.tsx create mode 100644 client/src/__tests__/pages/Teacher/Dashboard/Dashboard.test.tsx create mode 100644 client/src/__tests__/pages/Teacher/EditorQuiz/EditorQuiz.test.tsx create mode 100644 client/src/__tests__/services/QuestionService.test.tsx create mode 100644 client/src/__tests__/services/QuizService.test.tsx create mode 100644 client/src/__tests__/services/WebsocketService.test.tsx create mode 100644 client/src/components/ConfirmDialog/ConfirmDialog.tsx create mode 100644 client/src/components/DisconnectButton/DisconnectButton.tsx create mode 100644 client/src/components/Editor/Editor.tsx create mode 100644 client/src/components/Editor/editor.css create mode 100644 client/src/components/Footer/Footer.tsx create mode 100644 client/src/components/Footer/footer.css create mode 100644 client/src/components/GIFTCheatSheet/GiftCheatSheet.tsx create mode 100644 client/src/components/GIFTCheatSheet/giftCheatSheet.css create mode 100644 client/src/components/GiftTemplate/GIFTTemplatePreview.tsx create mode 100644 client/src/components/GiftTemplate/constants/colors.ts create mode 100644 client/src/components/GiftTemplate/constants/index.ts create mode 100644 client/src/components/GiftTemplate/constants/styles.ts create mode 100644 client/src/components/GiftTemplate/constants/theme.ts create mode 100644 client/src/components/GiftTemplate/index.ts create mode 100644 client/src/components/GiftTemplate/styles.css create mode 100644 client/src/components/GiftTemplate/templates/AnswerIcon.ts create mode 100644 client/src/components/GiftTemplate/templates/Category.ts create mode 100644 client/src/components/GiftTemplate/templates/Description.ts create mode 100644 client/src/components/GiftTemplate/templates/Error.ts create mode 100644 client/src/components/GiftTemplate/templates/Essay.ts create mode 100644 client/src/components/GiftTemplate/templates/GlobalFeedback.ts create mode 100644 client/src/components/GiftTemplate/templates/Matching.ts create mode 100644 client/src/components/GiftTemplate/templates/MultipleChoice.ts create mode 100644 client/src/components/GiftTemplate/templates/MultipleChoiceAnswers.ts create mode 100644 client/src/components/GiftTemplate/templates/Numerical.ts create mode 100644 client/src/components/GiftTemplate/templates/QuestionContainer.ts create mode 100644 client/src/components/GiftTemplate/templates/ShortAnswer.ts create mode 100644 client/src/components/GiftTemplate/templates/TextType.ts create mode 100644 client/src/components/GiftTemplate/templates/Title.ts create mode 100644 client/src/components/GiftTemplate/templates/TrueFalse.ts create mode 100644 client/src/components/GiftTemplate/templates/index.ts create mode 100644 client/src/components/GiftTemplate/templates/types.d.ts create mode 100644 client/src/components/Header/Header.tsx create mode 100644 client/src/components/Header/header.css create mode 100644 client/src/components/ImportModal/ImportModal.tsx create mode 100644 client/src/components/ImportModal/importModal.css create mode 100644 client/src/components/LaunchQuizDialog/LaunchQuizDialog.tsx create mode 100644 client/src/components/LiveResults/LiveResults.tsx create mode 100644 client/src/components/LiveResults/liveResult.css create mode 100644 client/src/components/LoadingCircle/LoadingCircle.tsx create mode 100644 client/src/components/LoadingCircle/loadingCircle.css create mode 100644 client/src/components/LoginContainer/LoginContainer.tsx create mode 100644 client/src/components/LoginContainer/loginContainer.css create mode 100644 client/src/components/QuestionNavigation/QuestionNavigation.tsx create mode 100644 client/src/components/Questions/MultipleChoiceQuestion/MultipleChoiceQuestion.tsx create mode 100644 client/src/components/Questions/NumericalQuestion/NumericalQuestion.tsx create mode 100644 client/src/components/Questions/Question.tsx create mode 100644 client/src/components/Questions/ShortAnswerQuestion/ShortAnswerQuestion.tsx create mode 100644 client/src/components/Questions/TrueFalseQuestion/TrueFalseQuestion.tsx create mode 100644 client/src/components/Questions/questionStyle.css create mode 100644 client/src/components/ReturnButton/ReturnButton.tsx create mode 100644 client/src/components/StudentModeQuiz/StudentModeQuiz.tsx create mode 100644 client/src/components/TeacherModeQuiz/TeacherModeQuiz.tsx create mode 100644 client/src/components/UserWaitPage/UserWaitPage.tsx create mode 100644 client/src/components/UserWaitPage/userWaitPage.css create mode 100644 client/src/constants.tsx create mode 100644 client/src/cssReset.css create mode 100644 client/src/globals.d.ts create mode 100644 client/src/index.css create mode 100644 client/src/main.tsx create mode 100644 client/src/pages/Home/Home.tsx create mode 100644 client/src/pages/Home/home.css create mode 100644 client/src/pages/Student/JoinRoom/JoinRoom.tsx create mode 100644 client/src/pages/Student/JoinRoom/joinRoom.css create mode 100644 client/src/pages/Teacher/Dashboard/Dashboard.tsx create mode 100644 client/src/pages/Teacher/Dashboard/dashboard.css create mode 100644 client/src/pages/Teacher/EditorQuiz/EditorQuiz.tsx create mode 100644 client/src/pages/Teacher/EditorQuiz/editorQuiz.css create mode 100644 client/src/pages/Teacher/Login/Login.css create mode 100644 client/src/pages/Teacher/Login/Login.tsx create mode 100644 client/src/pages/Teacher/ManageRoom/ManageRoom.tsx create mode 100644 client/src/pages/Teacher/ManageRoom/manageRoom.css create mode 100644 client/src/pages/Teacher/Register/Register.tsx create mode 100644 client/src/pages/Teacher/ResetPassword/ResetPassword.tsx create mode 100644 client/src/pages/Teacher/Share/Share.tsx create mode 100644 client/src/pages/Teacher/Share/share.css create mode 100644 client/src/quiz.txt create mode 100644 client/src/services/ApiService.tsx create mode 100644 client/src/services/QuestionService.ts create mode 100644 client/src/services/WebsocketService.tsx create mode 100644 client/src/services/useCheckMobileScreen.tsx create mode 100644 client/src/vite-env.d.ts create mode 100644 client/tsconfig.json create mode 100644 client/tsconfig.node.json create mode 100644 client/vercel.json create mode 100644 client/vite.config.ts create mode 100644 docker-compose.yaml create mode 100644 nginx/Dockerfile create mode 100644 nginx/default.conf create mode 100644 serveur/Dockerfile create mode 100644 serveur/__tests__/image.test.js create mode 100644 serveur/__tests__/socket.test.js create mode 100644 serveur/app.js create mode 100644 serveur/config/db.js create mode 100644 serveur/config/email.js create mode 100644 serveur/constants/errorCodes.js create mode 100644 serveur/controllers/folders.js create mode 100644 serveur/controllers/images.js create mode 100644 serveur/controllers/quiz.js create mode 100644 serveur/controllers/users.js create mode 100644 serveur/middleware/AppError.js create mode 100644 serveur/middleware/errorHandler.js create mode 100644 serveur/middleware/jwtToken.js create mode 100644 serveur/models/folders.js create mode 100644 serveur/models/images.js create mode 100644 serveur/models/quiz.js create mode 100644 serveur/models/users.js create mode 100644 serveur/package-lock.json create mode 100644 serveur/package.json create mode 100644 serveur/routers/folders.js create mode 100644 serveur/routers/images.js create mode 100644 serveur/routers/quiz.js create mode 100644 serveur/routers/users.js create mode 100644 serveur/socket/socket.js diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..af6f9ec --- /dev/null +++ b/Dockerfile @@ -0,0 +1,27 @@ +# Frontend build stage +FROM node:18 AS frontend_build +WORKDIR /usr/src/app/client +COPY ./client/package*.json ./ +RUN npm install +COPY ./client . +RUN npm run build + +# Backend build stage +FROM node:18 AS backend_build +WORKDIR /usr/src/app/serveur +COPY ./serveur/package*.json ./ +RUN npm install +COPY ./serveur . + +# Nginx build stage +FROM nginx AS nginx_build +COPY ./nginx/default.conf /etc/nginx/conf.d/default.conf + +# Final stage +FROM node:18 +WORKDIR /app +COPY --from=frontend_build /usr/src/app/client/build ./client +COPY --from=backend_build /usr/src/app/serveur ./ +COPY --from=nginx_build /etc/nginx/conf.d/default.conf /etc/nginx/conf.d/default.conf +EXPOSE 80 +CMD ["nginx", "-g", "daemon off;"] diff --git a/client/Dockerfile b/client/Dockerfile new file mode 100644 index 0000000..7ead288 --- /dev/null +++ b/client/Dockerfile @@ -0,0 +1,17 @@ +# client + +FROM node:18 AS build + +WORKDIR /usr/src/app/client + +COPY ./package*.json ./ + +COPY ./ . + +RUN npm install + +RUN npm run build + +EXPOSE 5173 + +CMD [ "npm", "run", "preview" ] diff --git a/client/babel.config.cjs b/client/babel.config.cjs new file mode 100644 index 0000000..1d2b002 --- /dev/null +++ b/client/babel.config.cjs @@ -0,0 +1,3 @@ +module.exports = { + presets: ['@babel/preset-env', '@babel/preset-react', '@babel/preset-typescript'] +}; diff --git a/client/index.html b/client/index.html new file mode 100644 index 0000000..ad2b63b --- /dev/null +++ b/client/index.html @@ -0,0 +1,19 @@ + + + + + + + + Évalue Ton Savoir + + + +
+ + + diff --git a/client/jest.config.cjs b/client/jest.config.cjs new file mode 100644 index 0000000..fa1c0d8 --- /dev/null +++ b/client/jest.config.cjs @@ -0,0 +1,17 @@ +/** @type {import('ts-jest').JestConfigWithTsJest} */ + +module.exports = { + roots: ['/src'], + transform: { + '^.+\\.(ts|tsx)$': 'ts-jest', + '^.+\\.(js|jsx)$': 'babel-jest' + }, + testRegex: '(/__tests__/.*|(\\.|/)(test|spec))\\.tsx?$', + testEnvironment: 'jsdom', + //moduleFileExtensions: ['ts', 'tsx', 'js', 'jsx', 'json', 'node'], + setupFiles: ['./jest.setup.cjs'], + moduleNameMapper: { + '\\.(css|less|scss|sass)$': 'identity-obj-proxy' + }, + transformIgnorePatterns: ['node_modules/(?!nanoid/)'] +}; diff --git a/client/jest.setup.cjs b/client/jest.setup.cjs new file mode 100644 index 0000000..433acc9 --- /dev/null +++ b/client/jest.setup.cjs @@ -0,0 +1,7 @@ +global.import = { + meta: { + env: { + VITE_BACKEND_URL: 'https://ets-glitch-backend.glitch.me/' + } + } +}; diff --git a/client/nginx/default.conf b/client/nginx/default.conf new file mode 100644 index 0000000..ea87200 --- /dev/null +++ b/client/nginx/default.conf @@ -0,0 +1,10 @@ +server { + listen 80; + + location / { + root /usr/share/nginx/html; + index index.html; + try_files $uri $uri/ /index.html; + } +} + diff --git a/client/package-lock.json b/client/package-lock.json new file mode 100644 index 0000000..c5b3e08 --- /dev/null +++ b/client/package-lock.json @@ -0,0 +1,11129 @@ +{ + "name": "pfe004-evaluetonsavoir", + "version": "0.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "pfe004-evaluetonsavoir", + "version": "0.0.0", + "dependencies": { + "@emotion/react": "^11.11.3", + "@emotion/styled": "^11.11.0", + "@fortawesome/fontawesome-free": "^6.4.2", + "@fortawesome/free-solid-svg-icons": "^6.4.2", + "@fortawesome/react-fontawesome": "^0.2.0", + "@mui/icons-material": "^5.14.18", + "@mui/lab": "^5.0.0-alpha.153", + "@mui/material": "^5.15.11", + "@types/uuid": "^9.0.7", + "axios": "^1.6.7", + "esbuild": "^0.20.2", + "gift-pegjs": "^0.2.1", + "jest-environment-jsdom": "^29.7.0", + "katex": "^0.16.9", + "marked": "^9.1.2", + "nanoid": "^5.0.2", + "react": "^18.2.0", + "react-dom": "^18.2.0", + "react-latex": "^2.0.0", + "react-modal": "^3.16.1", + "react-router-dom": "^6.16.0", + "remark-math": "^6.0.0", + "socket.io-client": "^4.7.2", + "ts-node": "^10.9.1", + "uuid": "^9.0.1", + "vite-plugin-checker": "^0.6.2" + }, + "devDependencies": { + "@babel/preset-env": "^7.23.3", + "@babel/preset-react": "^7.23.3", + "@babel/preset-typescript": "^7.23.3", + "@testing-library/jest-dom": "^6.1.4", + "@testing-library/react": "^14.1.0", + "@types/jest": "^29.5.8", + "@types/node": "^20.8.8", + "@types/react": "^18.2.15", + "@types/react-dom": "^18.2.7", + "@types/react-latex": "^2.0.3", + "@typescript-eslint/eslint-plugin": "^6.0.0", + "@typescript-eslint/parser": "^6.0.0", + "@vitejs/plugin-react-swc": "^3.3.2", + "eslint": "^8.45.0", + "eslint-plugin-react-hooks": "^4.6.0", + "eslint-plugin-react-refresh": "^0.4.3", + "identity-obj-proxy": "^3.0.0", + "jest": "^29.7.0", + "ts-jest": "^29.1.1", + "typescript": "^5.0.2", + "vite": "^4.4.5", + "vite-plugin-rewrite-all": "^1.0.1" + } + }, + "node_modules/@aashutoshrathi/word-wrap": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz", + "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==", + "devOptional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@adobe/css-tools": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.3.1.tgz", + "integrity": "sha512-/62yikz7NLScCGAAST5SHdnjaDJQBDq0M2muyRTpf2VQhw6StBg2ALiu73zSJQ4fMVLA+0uBhBHAle7Wg+2kSg==", + "dev": true + }, + "node_modules/@ampproject/remapping": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz", + "integrity": "sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==", + "dev": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.22.13", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.13.tgz", + "integrity": "sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==", + "dependencies": { + "@babel/highlight": "^7.22.13", + "chalk": "^2.4.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/code-frame/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/code-frame/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/code-frame/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/@babel/code-frame/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "node_modules/@babel/code-frame/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@babel/code-frame/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/code-frame/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.23.3.tgz", + "integrity": "sha512-BmR4bWbDIoFJmJ9z2cZ8Gmm2MXgEDgjdWgpKmKWUt54UGFJdlj31ECtbaDvCG/qVdG3AQ1SfpZEs01lUFbzLOQ==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.23.3.tgz", + "integrity": "sha512-Jg+msLuNuCJDyBvFv5+OKOUjWMZgd85bKjbICd3zWrKAo+bJ49HJufi7CQE0q0uR8NGyO6xkCACScNqyjHSZew==", + "dev": true, + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.22.13", + "@babel/generator": "^7.23.3", + "@babel/helper-compilation-targets": "^7.22.15", + "@babel/helper-module-transforms": "^7.23.3", + "@babel/helpers": "^7.23.2", + "@babel/parser": "^7.23.3", + "@babel/template": "^7.22.15", + "@babel/traverse": "^7.23.3", + "@babel/types": "^7.23.3", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/core/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/generator": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.3.tgz", + "integrity": "sha512-keeZWAV4LU3tW0qRi19HRpabC/ilM0HRBBzf9/k8FFiG4KVpiv0FIy4hHfLfFQZNhziCTPTmd59zoyv6DNISzg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.23.3", + "@jridgewell/gen-mapping": "^0.3.2", + "@jridgewell/trace-mapping": "^0.3.17", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-annotate-as-pure": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.22.5.tgz", + "integrity": "sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.22.15.tgz", + "integrity": "sha512-QkBXwGgaoC2GtGZRoma6kv7Szfv06khvhFav67ZExau2RaXzy8MpHSMO2PNoP2XtmQphJQRHFfg77Bq731Yizw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.15" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.15.tgz", + "integrity": "sha512-y6EEzULok0Qvz8yyLkCvVX+02ic+By2UdOhylwUOvOn9dvYc9mKICJuuU1n1XBI02YWsNsnrY1kc6DVbjcXbtw==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.22.9", + "@babel/helper-validator-option": "^7.22.15", + "browserslist": "^4.21.9", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets/node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/@babel/helper-compilation-targets/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-compilation-targets/node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true + }, + "node_modules/@babel/helper-create-class-features-plugin": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.15.tgz", + "integrity": "sha512-jKkwA59IXcvSaiK2UN45kKwSC9o+KuoXsBDvHvU/7BecYIp8GQ2UwrVvFgJASUT+hBnwJx6MhvMCuMzwZZ7jlg==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-function-name": "^7.22.5", + "@babel/helper-member-expression-to-functions": "^7.22.15", + "@babel/helper-optimise-call-expression": "^7.22.5", + "@babel/helper-replace-supers": "^7.22.9", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-create-class-features-plugin/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-create-regexp-features-plugin": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.22.15.tgz", + "integrity": "sha512-29FkPLFjn4TPEa3RE7GpW+qbE8tlsu3jntNYNfcGsc49LphF1PQIiD+vMZ1z1xVOKt+93khA9tc2JBs3kBjA7w==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "regexpu-core": "^5.3.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-create-regexp-features-plugin/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-define-polyfill-provider": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.4.3.tgz", + "integrity": "sha512-WBrLmuPP47n7PNwsZ57pqam6G/RGo1vw/87b0Blc53tZNGZ4x7YvZ6HgQe2vo1W/FR20OgjeZuGXzudPiXHFug==", + "dev": true, + "dependencies": { + "@babel/helper-compilation-targets": "^7.22.6", + "@babel/helper-plugin-utils": "^7.22.5", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/@babel/helper-environment-visitor": { + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz", + "integrity": "sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-function-name": { + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz", + "integrity": "sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==", + "dev": true, + "dependencies": { + "@babel/template": "^7.22.15", + "@babel/types": "^7.23.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-hoist-variables": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz", + "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.23.0.tgz", + "integrity": "sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA==", + "dev": true, + "dependencies": { + "@babel/types": "^7.23.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz", + "integrity": "sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==", + "dependencies": { + "@babel/types": "^7.22.15" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.23.3.tgz", + "integrity": "sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-module-imports": "^7.22.15", + "@babel/helper-simple-access": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "@babel/helper-validator-identifier": "^7.22.20" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-optimise-call-expression": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.22.5.tgz", + "integrity": "sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz", + "integrity": "sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-remap-async-to-generator": { + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.22.20.tgz", + "integrity": "sha512-pBGyV4uBqOns+0UvhsTO8qgl8hO89PmiDYv+/COyp1aeMcmfrfruz+/nCMFiYyFF/Knn0yfrC85ZzNFjembFTw==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-wrap-function": "^7.22.20" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-replace-supers": { + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.22.20.tgz", + "integrity": "sha512-qsW0In3dbwQUbK8kejJ4R7IHVGwHJlV6lpG6UA7a9hSa2YEiAib+N1T2kr6PEeUT+Fl7najmSOS6SmAwCHK6Tw==", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-member-expression-to-functions": "^7.22.15", + "@babel/helper-optimise-call-expression": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-simple-access": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz", + "integrity": "sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.22.5.tgz", + "integrity": "sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-split-export-declaration": { + "version": "7.22.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz", + "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.23.4", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.23.4.tgz", + "integrity": "sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz", + "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.22.15.tgz", + "integrity": "sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-wrap-function": { + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.22.20.tgz", + "integrity": "sha512-pms/UwkOpnQe/PDAEdV/d7dVCoBbB+R4FvYoHGZz+4VPcg7RtYy2KP7S2lbuWM6FCSgob5wshfGESbC/hzNXZw==", + "dev": true, + "dependencies": { + "@babel/helper-function-name": "^7.22.5", + "@babel/template": "^7.22.15", + "@babel/types": "^7.22.19" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.23.2", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.2.tgz", + "integrity": "sha512-lzchcp8SjTSVe/fPmLwtWVBFC7+Tbn8LGHDVfDp9JGxpAY5opSaEFgt8UQvrnECWOTdji2mOWMz1rOhkHscmGQ==", + "dev": true, + "dependencies": { + "@babel/template": "^7.22.15", + "@babel/traverse": "^7.23.2", + "@babel/types": "^7.23.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight": { + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.20.tgz", + "integrity": "sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg==", + "dependencies": { + "@babel/helper-validator-identifier": "^7.22.20", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/@babel/highlight/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "node_modules/@babel/highlight/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@babel/highlight/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/parser": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.3.tgz", + "integrity": "sha512-uVsWNvlVsIninV2prNz/3lHCb+5CJ+e+IUBfbjToAHODtfGYLfCFuY4AU7TskI+dAKk+njsPiBjq1gKTvZOBaw==", + "dev": true, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.23.3.tgz", + "integrity": "sha512-iRkKcCqb7iGnq9+3G6rZ+Ciz5VywC4XNRHe57lKM+jOeYAoR0lVqdeeDRfh0tQcTfw/+vBhHn926FmQhLtlFLQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.23.3.tgz", + "integrity": "sha512-WwlxbfMNdVEpQjZmK5mhm7oSwD3dS6eU+Iwsi4Knl9wAletWem7kaRsGOG+8UEbRyqxY4SS5zvtfXwX+jMxUwQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/plugin-transform-optional-chaining": "^7.23.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.13.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.23.3.tgz", + "integrity": "sha512-XaJak1qcityzrX0/IU5nKHb34VaibwP3saKqG6a/tppelgllOH13LUann4ZCIBcVOeE6H18K4Vx9QKkVww3z/w==", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-proposal-private-property-in-object": { + "version": "7.21.0-placeholder-for-preset-env.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz", + "integrity": "sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==", + "dev": true, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-bigint": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", + "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-static-block": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", + "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-dynamic-import": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", + "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-export-namespace-from": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", + "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-assertions": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.23.3.tgz", + "integrity": "sha512-lPgDSU+SJLK3xmFDTV2ZRQAiM7UuUjGidwBywFavObCiZc1BeAAcMtHJKUya92hPHO+at63JJPLygilZard8jw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-attributes": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.23.3.tgz", + "integrity": "sha512-pawnE0P9g10xgoP7yKr6CK63K2FMsTE+FZidZO/1PwRdzmAPVs+HS1mAURUsgaoxammTJvULUdIkEK0gOcU2tA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", + "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-jsx": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.23.3.tgz", + "integrity": "sha512-EB2MELswq55OHUoRZLGg/zC7QWUKfNLpE57m/S2yr1uEneIgsTgrSzXP3NXEsMkVn76OlaVVnzN+ugObuYGwhg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-private-property-in-object": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", + "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-top-level-await": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", + "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-typescript": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.23.3.tgz", + "integrity": "sha512-9EiNjVJOMwCO+43TqoTrgQ8jMwcAd0sWyXi9RPfIsLTj4R2MADDDQXELhffaUx/uJv2AYcxBgPwH6j4TIA4ytQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-unicode-sets-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz", + "integrity": "sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-arrow-functions": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.23.3.tgz", + "integrity": "sha512-NzQcQrzaQPkaEwoTm4Mhyl8jI1huEL/WWIEvudjTCMJ9aBZNpsJbMASx7EQECtQQPS/DcnFpo0FIh3LvEO9cxQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-async-generator-functions": { + "version": "7.23.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.23.4.tgz", + "integrity": "sha512-efdkfPhHYTtn0G6n2ddrESE91fgXxjlqLsnUtPWnJs4a4mZIbUaK7ffqKIIUKXSHwcDvaCVX6GXkaJJFqtX7jw==", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-remap-async-to-generator": "^7.22.20", + "@babel/plugin-syntax-async-generators": "^7.8.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-async-to-generator": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.23.3.tgz", + "integrity": "sha512-A7LFsKi4U4fomjqXJlZg/u0ft/n8/7n7lpffUP/ZULx/DtV9SGlNKZolHH6PE8Xl1ngCc0M11OaeZptXVkfKSw==", + "dev": true, + "dependencies": { + "@babel/helper-module-imports": "^7.22.15", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-remap-async-to-generator": "^7.22.20" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoped-functions": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.23.3.tgz", + "integrity": "sha512-vI+0sIaPIO6CNuM9Kk5VmXcMVRiOpDh7w2zZt9GXzmE/9KD70CUEVhvPR/etAeNK/FAEkhxQtXOzVF3EuRL41A==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoping": { + "version": "7.23.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.23.4.tgz", + "integrity": "sha512-0QqbP6B6HOh7/8iNR4CQU2Th/bbRtBp4KS9vcaZd1fZ0wSh5Fyssg0UCIHwxh+ka+pNDREbVLQnHCMHKZfPwfw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-class-properties": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.23.3.tgz", + "integrity": "sha512-uM+AN8yCIjDPccsKGlw271xjJtGii+xQIF/uMPS8H15L12jZTsLfF4o5vNO7d/oUguOyfdikHGc/yi9ge4SGIg==", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-class-static-block": { + "version": "7.23.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.23.4.tgz", + "integrity": "sha512-nsWu/1M+ggti1SOALj3hfx5FXzAY06fwPJsUZD4/A5e1bWi46VUIWtD+kOX6/IdhXGsXBWllLFDSnqSCdUNydQ==", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-class-static-block": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.12.0" + } + }, + "node_modules/@babel/plugin-transform-classes": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.23.3.tgz", + "integrity": "sha512-FGEQmugvAEu2QtgtU0uTASXevfLMFfBeVCIIdcQhn/uBQsMTjBajdnAtanQlOcuihWh10PZ7+HWvc7NtBwP74w==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-compilation-targets": "^7.22.15", + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-function-name": "^7.23.0", + "@babel/helper-optimise-call-expression": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-replace-supers": "^7.22.20", + "@babel/helper-split-export-declaration": "^7.22.6", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-classes/node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/plugin-transform-computed-properties": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.23.3.tgz", + "integrity": "sha512-dTj83UVTLw/+nbiHqQSFdwO9CbTtwq1DsDqm3CUEtDrZNET5rT5E6bIdTlOftDTDLMYxvxHNEYO4B9SLl8SLZw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/template": "^7.22.15" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-destructuring": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.23.3.tgz", + "integrity": "sha512-n225npDqjDIr967cMScVKHXJs7rout1q+tt50inyBCPkyZ8KxeI6d+GIbSBTT/w/9WdlWDOej3V9HE5Lgk57gw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-dotall-regex": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.23.3.tgz", + "integrity": "sha512-vgnFYDHAKzFaTVp+mneDsIEbnJ2Np/9ng9iviHw3P/KVcgONxpNULEW/51Z/BaFojG2GI2GwwXck5uV1+1NOYQ==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-duplicate-keys": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.23.3.tgz", + "integrity": "sha512-RrqQ+BQmU3Oyav3J+7/myfvRCq7Tbz+kKLLshUmMwNlDHExbGL7ARhajvoBJEvc+fCguPPu887N+3RRXBVKZUA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-dynamic-import": { + "version": "7.23.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.23.4.tgz", + "integrity": "sha512-V6jIbLhdJK86MaLh4Jpghi8ho5fGzt3imHOBu/x0jlBaPYqDoWz4RDXjmMOfnh+JWNaQleEAByZLV0QzBT4YQQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-exponentiation-operator": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.23.3.tgz", + "integrity": "sha512-5fhCsl1odX96u7ILKHBj4/Y8vipoqwsJMh4csSA8qFfxrZDEA4Ssku2DyNvMJSmZNOEBT750LfFPbtrnTP90BQ==", + "dev": true, + "dependencies": { + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.22.15", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-export-namespace-from": { + "version": "7.23.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.23.4.tgz", + "integrity": "sha512-GzuSBcKkx62dGzZI1WVgTWvkkz84FZO5TC5T8dl/Tht/rAla6Dg/Mz9Yhypg+ezVACf/rgDuQt3kbWEv7LdUDQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-for-of": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.23.3.tgz", + "integrity": "sha512-X8jSm8X1CMwxmK878qsUGJRmbysKNbdpTv/O1/v0LuY/ZkZrng5WYiekYSdg9m09OTmDDUWeEDsTE+17WYbAZw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-function-name": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.23.3.tgz", + "integrity": "sha512-I1QXp1LxIvt8yLaib49dRW5Okt7Q4oaxao6tFVKS/anCdEOMtYwWVKoiOA1p34GOWIZjUK0E+zCp7+l1pfQyiw==", + "dev": true, + "dependencies": { + "@babel/helper-compilation-targets": "^7.22.15", + "@babel/helper-function-name": "^7.23.0", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-json-strings": { + "version": "7.23.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.23.4.tgz", + "integrity": "sha512-81nTOqM1dMwZ/aRXQ59zVubN9wHGqk6UtqRK+/q+ciXmRy8fSolhGVvG09HHRGo4l6fr/c4ZhXUQH0uFW7PZbg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-json-strings": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-literals": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.23.3.tgz", + "integrity": "sha512-wZ0PIXRxnwZvl9AYpqNUxpZ5BiTGrYt7kueGQ+N5FiQ7RCOD4cm8iShd6S6ggfVIWaJf2EMk8eRzAh52RfP4rQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-logical-assignment-operators": { + "version": "7.23.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.23.4.tgz", + "integrity": "sha512-Mc/ALf1rmZTP4JKKEhUwiORU+vcfarFVLfcFiolKUo6sewoxSEgl36ak5t+4WamRsNr6nzjZXQjM35WsU+9vbg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-member-expression-literals": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.23.3.tgz", + "integrity": "sha512-sC3LdDBDi5x96LA+Ytekz2ZPk8i/Ck+DEuDbRAll5rknJ5XRTSaPKEYwomLcs1AA8wg9b3KjIQRsnApj+q51Ag==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-amd": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.23.3.tgz", + "integrity": "sha512-vJYQGxeKM4t8hYCKVBlZX/gtIY2I7mRGFNcm85sgXGMTBcoV3QdVtdpbcWEbzbfUIUZKwvgFT82mRvaQIebZzw==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.23.3", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-commonjs": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.23.3.tgz", + "integrity": "sha512-aVS0F65LKsdNOtcz6FRCpE4OgsP2OFnW46qNxNIX9h3wuzaNcSQsJysuMwqSibC98HPrf2vCgtxKNwS0DAlgcA==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.23.3", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-simple-access": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-systemjs": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.23.3.tgz", + "integrity": "sha512-ZxyKGTkF9xT9YJuKQRo19ewf3pXpopuYQd8cDXqNzc3mUNbOME0RKMoZxviQk74hwzfQsEe66dE92MaZbdHKNQ==", + "dev": true, + "dependencies": { + "@babel/helper-hoist-variables": "^7.22.5", + "@babel/helper-module-transforms": "^7.23.3", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-validator-identifier": "^7.22.20" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-umd": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.23.3.tgz", + "integrity": "sha512-zHsy9iXX2nIsCBFPud3jKn1IRPWg3Ing1qOZgeKV39m1ZgIdpJqvlWVeiHBZC6ITRG0MfskhYe9cLgntfSFPIg==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.23.3", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.22.5.tgz", + "integrity": "sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-new-target": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.23.3.tgz", + "integrity": "sha512-YJ3xKqtJMAT5/TIZnpAR3I+K+WaDowYbN3xyxI8zxx/Gsypwf9B9h0VB+1Nh6ACAAPRS5NSRje0uVv5i79HYGQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-nullish-coalescing-operator": { + "version": "7.23.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.23.4.tgz", + "integrity": "sha512-jHE9EVVqHKAQx+VePv5LLGHjmHSJR76vawFPTdlxR/LVJPfOEGxREQwQfjuZEOPTwG92X3LINSh3M40Rv4zpVA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-numeric-separator": { + "version": "7.23.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.23.4.tgz", + "integrity": "sha512-mps6auzgwjRrwKEZA05cOwuDc9FAzoyFS4ZsG/8F43bTLf/TgkJg7QXOrPO1JO599iA3qgK9MXdMGOEC8O1h6Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-numeric-separator": "^7.10.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-object-rest-spread": { + "version": "7.23.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.23.4.tgz", + "integrity": "sha512-9x9K1YyeQVw0iOXJlIzwm8ltobIIv7j2iLyP2jIhEbqPRQ7ScNgwQufU2I0Gq11VjyG4gI4yMXt2VFags+1N3g==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.23.3", + "@babel/helper-compilation-targets": "^7.22.15", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.23.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-object-super": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.23.3.tgz", + "integrity": "sha512-BwQ8q0x2JG+3lxCVFohg+KbQM7plfpBwThdW9A6TMtWwLsbDA01Ek2Zb/AgDN39BiZsExm4qrXxjk+P1/fzGrA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-replace-supers": "^7.22.20" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-optional-catch-binding": { + "version": "7.23.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.23.4.tgz", + "integrity": "sha512-XIq8t0rJPHf6Wvmbn9nFxU6ao4c7WhghTR5WyV8SrJfUFzyxhCm4nhC+iAp3HFhbAKLfYpgzhJ6t4XCtVwqO5A==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-optional-chaining": { + "version": "7.23.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.23.4.tgz", + "integrity": "sha512-ZU8y5zWOfjM5vZ+asjgAPwDaBjJzgufjES89Rs4Lpq63O300R/kOz30WCLo6BxxX6QVEilwSlpClnG5cZaikTA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/plugin-syntax-optional-chaining": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-parameters": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.23.3.tgz", + "integrity": "sha512-09lMt6UsUb3/34BbECKVbVwrT9bO6lILWln237z7sLaWnMsTi7Yc9fhX5DLpkJzAGfaReXI22wP41SZmnAA3Vw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-private-methods": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.23.3.tgz", + "integrity": "sha512-UzqRcRtWsDMTLrRWFvUBDwmw06tCQH9Rl1uAjfh6ijMSmGYQ+fpdB+cnqRC8EMh5tuuxSv0/TejGL+7vyj+50g==", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-private-property-in-object": { + "version": "7.23.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.23.4.tgz", + "integrity": "sha512-9G3K1YqTq3F4Vt88Djx1UZ79PDyj+yKRnUy7cZGSMe+a7jkwD259uKKuUzQlPkGam7R+8RJwh5z4xO27fA1o2A==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-create-class-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-property-literals": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.23.3.tgz", + "integrity": "sha512-jR3Jn3y7cZp4oEWPFAlRsSWjxKe4PZILGBSd4nis1TsC5qeSpb+nrtihJuDhNI7QHiVbUaiXa0X2RZY3/TI6Nw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-react-display-name": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.23.3.tgz", + "integrity": "sha512-GnvhtVfA2OAtzdX58FJxU19rhoGeQzyVndw3GgtdECQvQFXPEZIOVULHVZGAYmOgmqjXpVpfocAbSjh99V/Fqw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-react-jsx": { + "version": "7.23.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.23.4.tgz", + "integrity": "sha512-5xOpoPguCZCRbo/JeHlloSkTA8Bld1J/E1/kLfD1nsuiW1m8tduTA1ERCgIZokDflX/IBzKcqR3l7VlRgiIfHA==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-module-imports": "^7.22.15", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-jsx": "^7.23.3", + "@babel/types": "^7.23.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-react-jsx-development": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.22.5.tgz", + "integrity": "sha512-bDhuzwWMuInwCYeDeMzyi7TaBgRQei6DqxhbyniL7/VG4RSS7HtSL2QbY4eESy1KJqlWt8g3xeEBGPuo+XqC8A==", + "dev": true, + "dependencies": { + "@babel/plugin-transform-react-jsx": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-react-pure-annotations": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.23.3.tgz", + "integrity": "sha512-qMFdSS+TUhB7Q/3HVPnEdYJDQIk57jkntAwSuz9xfSE4n+3I+vHYCli3HoHawN1Z3RfCz/y1zXA/JXjG6cVImQ==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-regenerator": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.23.3.tgz", + "integrity": "sha512-KP+75h0KghBMcVpuKisx3XTu9Ncut8Q8TuvGO4IhY+9D5DFEckQefOuIsB/gQ2tG71lCke4NMrtIPS8pOj18BQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "regenerator-transform": "^0.15.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-reserved-words": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.23.3.tgz", + "integrity": "sha512-QnNTazY54YqgGxwIexMZva9gqbPa15t/x9VS+0fsEFWplwVpXYZivtgl43Z1vMpc1bdPP2PP8siFeVcnFvA3Cg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-shorthand-properties": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.23.3.tgz", + "integrity": "sha512-ED2fgqZLmexWiN+YNFX26fx4gh5qHDhn1O2gvEhreLW2iI63Sqm4llRLCXALKrCnbN4Jy0VcMQZl/SAzqug/jg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-spread": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.23.3.tgz", + "integrity": "sha512-VvfVYlrlBVu+77xVTOAoxQ6mZbnIq5FM0aGBSFEcIh03qHf+zNqA4DC/3XMUozTg7bZV3e3mZQ0i13VB6v5yUg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-sticky-regex": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.23.3.tgz", + "integrity": "sha512-HZOyN9g+rtvnOU3Yh7kSxXrKbzgrm5X4GncPY1QOquu7epga5MxKHVpYu2hvQnry/H+JjckSYRb93iNfsioAGg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-template-literals": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.23.3.tgz", + "integrity": "sha512-Flok06AYNp7GV2oJPZZcP9vZdszev6vPBkHLwxwSpaIqx75wn6mUd3UFWsSsA0l8nXAKkyCmL/sR02m8RYGeHg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-typeof-symbol": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.23.3.tgz", + "integrity": "sha512-4t15ViVnaFdrPC74be1gXBSMzXk3B4Us9lP7uLRQHTFpV5Dvt33pn+2MyyNxmN3VTTm3oTrZVMUmuw3oBnQ2oQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-typescript": { + "version": "7.23.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.23.4.tgz", + "integrity": "sha512-39hCCOl+YUAyMOu6B9SmUTiHUU0t/CxJNUmY3qRdJujbqi+lrQcL11ysYUsAvFWPBdhihrv1z0oRG84Yr3dODQ==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-create-class-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-typescript": "^7.23.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-escapes": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.23.3.tgz", + "integrity": "sha512-OMCUx/bU6ChE3r4+ZdylEqAjaQgHAgipgW8nsCfu5pGqDcFytVd91AwRvUJSBZDz0exPGgnjoqhgRYLRjFZc9Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-property-regex": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.23.3.tgz", + "integrity": "sha512-KcLIm+pDZkWZQAFJ9pdfmh89EwVfmNovFBcXko8szpBeF8z68kWIPeKlmSOkT9BXJxs2C0uk+5LxoxIv62MROA==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-regex": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.23.3.tgz", + "integrity": "sha512-wMHpNA4x2cIA32b/ci3AfwNgheiva2W0WUKWTK7vBHBhDKfPsc5cFGNWm69WBqpwd86u1qwZ9PWevKqm1A3yAw==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-sets-regex": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.23.3.tgz", + "integrity": "sha512-W7lliA/v9bNR83Qc3q1ip9CQMZ09CcHDbHfbLRDNuAhn1Mvkr1ZNF7hPmztMQvtTGVLJ9m8IZqWsTkXOml8dbw==", + "dev": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/preset-env": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.23.3.tgz", + "integrity": "sha512-ovzGc2uuyNfNAs/jyjIGxS8arOHS5FENZaNn4rtE7UdKMMkqHCvboHfcuhWLZNX5cB44QfcGNWjaevxMzzMf+Q==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.23.3", + "@babel/helper-compilation-targets": "^7.22.15", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-validator-option": "^7.22.15", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.23.3", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.23.3", + "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": "^7.23.3", + "@babel/plugin-proposal-private-property-in-object": "7.21.0-placeholder-for-preset-env.2", + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3", + "@babel/plugin-syntax-import-assertions": "^7.23.3", + "@babel/plugin-syntax-import-attributes": "^7.23.3", + "@babel/plugin-syntax-import-meta": "^7.10.4", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5", + "@babel/plugin-syntax-unicode-sets-regex": "^7.18.6", + "@babel/plugin-transform-arrow-functions": "^7.23.3", + "@babel/plugin-transform-async-generator-functions": "^7.23.3", + "@babel/plugin-transform-async-to-generator": "^7.23.3", + "@babel/plugin-transform-block-scoped-functions": "^7.23.3", + "@babel/plugin-transform-block-scoping": "^7.23.3", + "@babel/plugin-transform-class-properties": "^7.23.3", + "@babel/plugin-transform-class-static-block": "^7.23.3", + "@babel/plugin-transform-classes": "^7.23.3", + "@babel/plugin-transform-computed-properties": "^7.23.3", + "@babel/plugin-transform-destructuring": "^7.23.3", + "@babel/plugin-transform-dotall-regex": "^7.23.3", + "@babel/plugin-transform-duplicate-keys": "^7.23.3", + "@babel/plugin-transform-dynamic-import": "^7.23.3", + "@babel/plugin-transform-exponentiation-operator": "^7.23.3", + "@babel/plugin-transform-export-namespace-from": "^7.23.3", + "@babel/plugin-transform-for-of": "^7.23.3", + "@babel/plugin-transform-function-name": "^7.23.3", + "@babel/plugin-transform-json-strings": "^7.23.3", + "@babel/plugin-transform-literals": "^7.23.3", + "@babel/plugin-transform-logical-assignment-operators": "^7.23.3", + "@babel/plugin-transform-member-expression-literals": "^7.23.3", + "@babel/plugin-transform-modules-amd": "^7.23.3", + "@babel/plugin-transform-modules-commonjs": "^7.23.3", + "@babel/plugin-transform-modules-systemjs": "^7.23.3", + "@babel/plugin-transform-modules-umd": "^7.23.3", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.22.5", + "@babel/plugin-transform-new-target": "^7.23.3", + "@babel/plugin-transform-nullish-coalescing-operator": "^7.23.3", + "@babel/plugin-transform-numeric-separator": "^7.23.3", + "@babel/plugin-transform-object-rest-spread": "^7.23.3", + "@babel/plugin-transform-object-super": "^7.23.3", + "@babel/plugin-transform-optional-catch-binding": "^7.23.3", + "@babel/plugin-transform-optional-chaining": "^7.23.3", + "@babel/plugin-transform-parameters": "^7.23.3", + "@babel/plugin-transform-private-methods": "^7.23.3", + "@babel/plugin-transform-private-property-in-object": "^7.23.3", + "@babel/plugin-transform-property-literals": "^7.23.3", + "@babel/plugin-transform-regenerator": "^7.23.3", + "@babel/plugin-transform-reserved-words": "^7.23.3", + "@babel/plugin-transform-shorthand-properties": "^7.23.3", + "@babel/plugin-transform-spread": "^7.23.3", + "@babel/plugin-transform-sticky-regex": "^7.23.3", + "@babel/plugin-transform-template-literals": "^7.23.3", + "@babel/plugin-transform-typeof-symbol": "^7.23.3", + "@babel/plugin-transform-unicode-escapes": "^7.23.3", + "@babel/plugin-transform-unicode-property-regex": "^7.23.3", + "@babel/plugin-transform-unicode-regex": "^7.23.3", + "@babel/plugin-transform-unicode-sets-regex": "^7.23.3", + "@babel/preset-modules": "0.1.6-no-external-plugins", + "babel-plugin-polyfill-corejs2": "^0.4.6", + "babel-plugin-polyfill-corejs3": "^0.8.5", + "babel-plugin-polyfill-regenerator": "^0.5.3", + "core-js-compat": "^3.31.0", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-env/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/preset-modules": { + "version": "0.1.6-no-external-plugins", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.6-no-external-plugins.tgz", + "integrity": "sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/types": "^7.4.4", + "esutils": "^2.0.2" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/@babel/preset-react": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.23.3.tgz", + "integrity": "sha512-tbkHOS9axH6Ysf2OUEqoSZ6T3Fa2SrNH6WTWSPBboxKzdxNc9qOICeLXkNG0ZEwbQ1HY8liwOce4aN/Ceyuq6w==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-validator-option": "^7.22.15", + "@babel/plugin-transform-react-display-name": "^7.23.3", + "@babel/plugin-transform-react-jsx": "^7.22.15", + "@babel/plugin-transform-react-jsx-development": "^7.22.5", + "@babel/plugin-transform-react-pure-annotations": "^7.23.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-typescript": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.23.3.tgz", + "integrity": "sha512-17oIGVlqz6CchO9RFYn5U6ZpWRZIngayYCtrPRSgANSwC2V1Jb+iP74nVxzzXJte8b8BYxrL1yY96xfhTBrNNQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-validator-option": "^7.22.15", + "@babel/plugin-syntax-jsx": "^7.23.3", + "@babel/plugin-transform-modules-commonjs": "^7.23.3", + "@babel/plugin-transform-typescript": "^7.23.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/regjsgen": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@babel/regjsgen/-/regjsgen-0.8.0.tgz", + "integrity": "sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==", + "dev": true + }, + "node_modules/@babel/runtime": { + "version": "7.23.9", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.23.9.tgz", + "integrity": "sha512-0CX6F+BI2s9dkUqr08KFrAIZgNFj75rdBU/DjCyYLIaV/quFjkk6T+EJ2LkZHyZTbEV4L5p97mNkUsHl2wLFAw==", + "dependencies": { + "regenerator-runtime": "^0.14.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.15.tgz", + "integrity": "sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.22.13", + "@babel/parser": "^7.22.15", + "@babel/types": "^7.22.15" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.3.tgz", + "integrity": "sha512-+K0yF1/9yR0oHdE0StHuEj3uTPzwwbrLGfNOndVJVV2TqA5+j3oljJUb4nmB954FLGjNem976+B+eDuLIjesiQ==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.22.13", + "@babel/generator": "^7.23.3", + "@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.3", + "@babel/types": "^7.23.3", + "debug": "^4.1.0", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse/node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/types": { + "version": "7.23.6", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.6.tgz", + "integrity": "sha512-+uarb83brBzPKN38NX1MkB6vb6+mwvR6amUulqAE7ccQw1pEl+bCia9TbdG1lsnFP7lZySvUn37CHyXQdfTwzg==", + "dependencies": { + "@babel/helper-string-parser": "^7.23.4", + "@babel/helper-validator-identifier": "^7.22.20", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@bcoe/v8-coverage": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", + "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", + "dev": true + }, + "node_modules/@cspotcode/source-map-support": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", + "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", + "dependencies": { + "@jridgewell/trace-mapping": "0.3.9" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@cspotcode/source-map-support/node_modules/@jridgewell/trace-mapping": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", + "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", + "dependencies": { + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + }, + "node_modules/@emotion/babel-plugin": { + "version": "11.11.0", + "resolved": "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.11.0.tgz", + "integrity": "sha512-m4HEDZleaaCH+XgDDsPF15Ht6wTLsgDTeR3WYj9Q/k76JtWhrJjcP4+/XlG8LGT/Rol9qUfOIztXeA84ATpqPQ==", + "dependencies": { + "@babel/helper-module-imports": "^7.16.7", + "@babel/runtime": "^7.18.3", + "@emotion/hash": "^0.9.1", + "@emotion/memoize": "^0.8.1", + "@emotion/serialize": "^1.1.2", + "babel-plugin-macros": "^3.1.0", + "convert-source-map": "^1.5.0", + "escape-string-regexp": "^4.0.0", + "find-root": "^1.1.0", + "source-map": "^0.5.7", + "stylis": "4.2.0" + } + }, + "node_modules/@emotion/babel-plugin/node_modules/convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==" + }, + "node_modules/@emotion/babel-plugin/node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@emotion/cache": { + "version": "11.11.0", + "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-11.11.0.tgz", + "integrity": "sha512-P34z9ssTCBi3e9EI1ZsWpNHcfY1r09ZO0rZbRO2ob3ZQMnFI35jB536qoXbkdesr5EUhYi22anuEJuyxifaqAQ==", + "dependencies": { + "@emotion/memoize": "^0.8.1", + "@emotion/sheet": "^1.2.2", + "@emotion/utils": "^1.2.1", + "@emotion/weak-memoize": "^0.3.1", + "stylis": "4.2.0" + } + }, + "node_modules/@emotion/hash": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/@emotion/hash/-/hash-0.9.1.tgz", + "integrity": "sha512-gJB6HLm5rYwSLI6PQa+X1t5CFGrv1J1TWG+sOyMCeKz2ojaj6Fnl/rZEspogG+cvqbt4AE/2eIyD2QfLKTBNlQ==" + }, + "node_modules/@emotion/is-prop-valid": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.2.1.tgz", + "integrity": "sha512-61Mf7Ufx4aDxx1xlDeOm8aFFigGHE4z+0sKCa+IHCeZKiyP9RLD0Mmx7m8b9/Cf37f7NAvQOOJAbQQGVr5uERw==", + "dependencies": { + "@emotion/memoize": "^0.8.1" + } + }, + "node_modules/@emotion/memoize": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.8.1.tgz", + "integrity": "sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA==" + }, + "node_modules/@emotion/react": { + "version": "11.11.3", + "resolved": "https://registry.npmjs.org/@emotion/react/-/react-11.11.3.tgz", + "integrity": "sha512-Cnn0kuq4DoONOMcnoVsTOR8E+AdnKFf//6kUWc4LCdnxj31pZWn7rIULd6Y7/Js1PiPHzn7SKCM9vB/jBni8eA==", + "dependencies": { + "@babel/runtime": "^7.18.3", + "@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", + "@emotion/utils": "^1.2.1", + "@emotion/weak-memoize": "^0.3.1", + "hoist-non-react-statics": "^3.3.1" + }, + "peerDependencies": { + "react": ">=16.8.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@emotion/serialize": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.1.3.tgz", + "integrity": "sha512-iD4D6QVZFDhcbH0RAG1uVu1CwVLMWUkCvAqqlewO/rxf8+87yIBAlt4+AxMiiKPLs5hFc0owNk/sLLAOROw3cA==", + "dependencies": { + "@emotion/hash": "^0.9.1", + "@emotion/memoize": "^0.8.1", + "@emotion/unitless": "^0.8.1", + "@emotion/utils": "^1.2.1", + "csstype": "^3.0.2" + } + }, + "node_modules/@emotion/sheet": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@emotion/sheet/-/sheet-1.2.2.tgz", + "integrity": "sha512-0QBtGvaqtWi+nx6doRwDdBIzhNdZrXUppvTM4dtZZWEGTXL/XE/yJxLMGlDT1Gt+UHH5IX1n+jkXyytE/av7OA==" + }, + "node_modules/@emotion/styled": { + "version": "11.11.0", + "resolved": "https://registry.npmjs.org/@emotion/styled/-/styled-11.11.0.tgz", + "integrity": "sha512-hM5Nnvu9P3midq5aaXj4I+lnSfNi7Pmd4EWk1fOZ3pxookaQTNew6bp4JaCBYM4HVFZF9g7UjJmsUmC2JlxOng==", + "dependencies": { + "@babel/runtime": "^7.18.3", + "@emotion/babel-plugin": "^11.11.0", + "@emotion/is-prop-valid": "^1.2.1", + "@emotion/serialize": "^1.1.2", + "@emotion/use-insertion-effect-with-fallbacks": "^1.0.1", + "@emotion/utils": "^1.2.1" + }, + "peerDependencies": { + "@emotion/react": "^11.0.0-rc.0", + "react": ">=16.8.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@emotion/unitless": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.8.1.tgz", + "integrity": "sha512-KOEGMu6dmJZtpadb476IsZBclKvILjopjUii3V+7MnXIQCYh8W3NgNcgwo21n9LXZX6EDIKvqfjYxXebDwxKmQ==" + }, + "node_modules/@emotion/use-insertion-effect-with-fallbacks": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.0.1.tgz", + "integrity": "sha512-jT/qyKZ9rzLErtrjGgdkMBn2OP8wl0G3sQlBb3YPryvKHsjvINUhVaPFfP+fpBcOkmrVOVEEHQFJ7nbj2TH2gw==", + "peerDependencies": { + "react": ">=16.8.0" + } + }, + "node_modules/@emotion/utils": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@emotion/utils/-/utils-1.2.1.tgz", + "integrity": "sha512-Y2tGf3I+XVnajdItskUCn6LX+VUDmP6lTL4fcqsXAv43dnlbZiuW4MWQW38rW/BVWSE7Q/7+XQocmpnRYILUmg==" + }, + "node_modules/@emotion/weak-memoize": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.3.1.tgz", + "integrity": "sha512-EsBwpc7hBUJWAsNPBmJy4hxWx12v6bshQsldrVmjxJoc3isbxhOrF2IcCpaXxfvq03NwkI7sbsOLXbYuqF/8Ww==" + }, + "node_modules/@esbuild/aix-ppc64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.20.2.tgz", + "integrity": "sha512-D+EBOJHXdNZcLJRBkhENNG8Wji2kgc9AZ9KiPr1JuZjsNtyHzrsfLRrY0tk2H2aoFu6RANO1y1iPPUCDYWkb5g==", + "cpu": [ + "ppc64" + ], + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.20.2.tgz", + "integrity": "sha512-t98Ra6pw2VaDhqNWO2Oph2LXbz/EJcnLmKLGBJwEwXX/JAN83Fym1rU8l0JUWK6HkIbWONCSSatf4sf2NBRx/w==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.20.2.tgz", + "integrity": "sha512-mRzjLacRtl/tWU0SvD8lUEwb61yP9cqQo6noDZP/O8VkwafSYwZ4yWy24kan8jE/IMERpYncRt2dw438LP3Xmg==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.20.2.tgz", + "integrity": "sha512-btzExgV+/lMGDDa194CcUQm53ncxzeBrWJcncOBxuC6ndBkKxnHdFJn86mCIgTELsooUmwUm9FkhSp5HYu00Rg==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.20.2.tgz", + "integrity": "sha512-4J6IRT+10J3aJH3l1yzEg9y3wkTDgDk7TSDFX+wKFiWjqWp/iCfLIYzGyasx9l0SAFPT1HwSCR+0w/h1ES/MjA==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.20.2.tgz", + "integrity": "sha512-tBcXp9KNphnNH0dfhv8KYkZhjc+H3XBkF5DKtswJblV7KlT9EI2+jeA8DgBjp908WEuYll6pF+UStUCfEpdysA==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.20.2.tgz", + "integrity": "sha512-d3qI41G4SuLiCGCFGUrKsSeTXyWG6yem1KcGZVS+3FYlYhtNoNgYrWcvkOoaqMhwXSMrZRl69ArHsGJ9mYdbbw==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.20.2.tgz", + "integrity": "sha512-d+DipyvHRuqEeM5zDivKV1KuXn9WeRX6vqSqIDgwIfPQtwMP4jaDsQsDncjTDDsExT4lR/91OLjRo8bmC1e+Cw==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.20.2.tgz", + "integrity": "sha512-VhLPeR8HTMPccbuWWcEUD1Az68TqaTYyj6nfE4QByZIQEQVWBB8vup8PpR7y1QHL3CpcF6xd5WVBU/+SBEvGTg==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.20.2.tgz", + "integrity": "sha512-9pb6rBjGvTFNira2FLIWqDk/uaf42sSyLE8j1rnUpuzsODBq7FvpwHYZxQ/It/8b+QOS1RYfqgGFNLRI+qlq2A==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.20.2.tgz", + "integrity": "sha512-o10utieEkNPFDZFQm9CoP7Tvb33UutoJqg3qKf1PWVeeJhJw0Q347PxMvBgVVFgouYLGIhFYG0UGdBumROyiig==", + "cpu": [ + "ia32" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.20.2.tgz", + "integrity": "sha512-PR7sp6R/UC4CFVomVINKJ80pMFlfDfMQMYynX7t1tNTeivQ6XdX5r2XovMmha/VjR1YN/HgHWsVcTRIMkymrgQ==", + "cpu": [ + "loong64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.20.2.tgz", + "integrity": "sha512-4BlTqeutE/KnOiTG5Y6Sb/Hw6hsBOZapOVF6njAESHInhlQAghVVZL1ZpIctBOoTFbQyGW+LsVYZ8lSSB3wkjA==", + "cpu": [ + "mips64el" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.20.2.tgz", + "integrity": "sha512-rD3KsaDprDcfajSKdn25ooz5J5/fWBylaaXkuotBDGnMnDP1Uv5DLAN/45qfnf3JDYyJv/ytGHQaziHUdyzaAg==", + "cpu": [ + "ppc64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.20.2.tgz", + "integrity": "sha512-snwmBKacKmwTMmhLlz/3aH1Q9T8v45bKYGE3j26TsaOVtjIag4wLfWSiZykXzXuE1kbCE+zJRmwp+ZbIHinnVg==", + "cpu": [ + "riscv64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.20.2.tgz", + "integrity": "sha512-wcWISOobRWNm3cezm5HOZcYz1sKoHLd8VL1dl309DiixxVFoFe/o8HnwuIwn6sXre88Nwj+VwZUvJf4AFxkyrQ==", + "cpu": [ + "s390x" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.20.2.tgz", + "integrity": "sha512-1MdwI6OOTsfQfek8sLwgyjOXAu+wKhLEoaOLTjbijk6E2WONYpH9ZU2mNtR+lZ2B4uwr+usqGuVfFT9tMtGvGw==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.20.2.tgz", + "integrity": "sha512-K8/DhBxcVQkzYc43yJXDSyjlFeHQJBiowJ0uVL6Tor3jGQfSGHNNJcWxNbOI8v5k82prYqzPuwkzHt3J1T1iZQ==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.20.2.tgz", + "integrity": "sha512-eMpKlV0SThJmmJgiVyN9jTPJ2VBPquf6Kt/nAoo6DgHAoN57K15ZghiHaMvqjCye/uU4X5u3YSMgVBI1h3vKrQ==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.20.2.tgz", + "integrity": "sha512-2UyFtRC6cXLyejf/YEld4Hajo7UHILetzE1vsRcGL3earZEW77JxrFjH4Ez2qaTiEfMgAXxfAZCm1fvM/G/o8w==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.20.2.tgz", + "integrity": "sha512-GRibxoawM9ZCnDxnP3usoUDO9vUkpAxIIZ6GQI+IlVmr5kP3zUq+l17xELTHMWTWzjxa2guPNyrpq1GWmPvcGQ==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.20.2.tgz", + "integrity": "sha512-HfLOfn9YWmkSKRQqovpnITazdtquEW8/SoHW7pWpuEeguaZI4QnCRW6b+oZTztdBnZOS2hqJ6im/D5cPzBTTlQ==", + "cpu": [ + "ia32" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.20.2.tgz", + "integrity": "sha512-N49X4lJX27+l9jbLKSqZ6bKNjzQvHaT8IIFUy+YIqmXQdjYCToGWwOItDrfby14c78aDd5NHQl29xingXfCdLQ==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@eslint-community/eslint-utils": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", + "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", + "devOptional": true, + "dependencies": { + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" + } + }, + "node_modules/@eslint-community/regexpp": { + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.9.1.tgz", + "integrity": "sha512-Y27x+MBLjXa+0JWDhykM3+JE+il3kHKAEqabfEWq3SDhZjLYb6/BHL/JKFnH3fe207JaXkyDo685Oc2Glt6ifA==", + "devOptional": true, + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.2.tgz", + "integrity": "sha512-+wvgpDsrB1YqAMdEUCcnTlpfVBH7Vqn6A/NT3D8WVXFIaKMlErPIZT3oCIAVCOtarRpMtelZLqJeU3t7WY6X6g==", + "devOptional": true, + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.6.0", + "globals": "^13.19.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint/js": { + "version": "8.50.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.50.0.tgz", + "integrity": "sha512-NCC3zz2+nvYd+Ckfh87rA47zfu2QsQpvc6k1yzTk+b9KzRj0wkGa8LSoGOXN6Zv4lRf/EIoZ80biDh9HOI+RNQ==", + "devOptional": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/@floating-ui/core": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.6.0.tgz", + "integrity": "sha512-PcF++MykgmTj3CIyOQbKA/hDzOAiqI3mhuoN44WRCopIs1sgoDoU4oty4Jtqaj/y3oDU6fnVSm4QG0a3t5i0+g==", + "dependencies": { + "@floating-ui/utils": "^0.2.1" + } + }, + "node_modules/@floating-ui/dom": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.6.3.tgz", + "integrity": "sha512-RnDthu3mzPlQ31Ss/BTwQ1zjzIhr3lk1gZB1OC56h/1vEtaXkESrOqL5fQVMfXpwGtRwX+YsZBdyHtJMQnkArw==", + "dependencies": { + "@floating-ui/core": "^1.0.0", + "@floating-ui/utils": "^0.2.0" + } + }, + "node_modules/@floating-ui/react-dom": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/@floating-ui/react-dom/-/react-dom-2.0.8.tgz", + "integrity": "sha512-HOdqOt3R3OGeTKidaLvJKcgg75S6tibQ3Tif4eyd91QnIJWr0NLvoXFpJA/j8HqkFSL68GDca9AuyWEHlhyClw==", + "dependencies": { + "@floating-ui/dom": "^1.6.1" + }, + "peerDependencies": { + "react": ">=16.8.0", + "react-dom": ">=16.8.0" + } + }, + "node_modules/@floating-ui/utils": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.2.1.tgz", + "integrity": "sha512-9TANp6GPoMtYzQdt54kfAyMmz1+osLlXdg2ENroU7zzrtflTLrrC/lgrIfaSe+Wu0b89GKccT7vxXA0MoAIO+Q==" + }, + "node_modules/@fortawesome/fontawesome-common-types": { + "version": "6.4.2", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-6.4.2.tgz", + "integrity": "sha512-1DgP7f+XQIJbLFCTX1V2QnxVmpLdKdzzo2k8EmvDOePfchaIGQ9eCHj2up3/jNEbZuBqel5OxiaOJf37TWauRA==", + "hasInstallScript": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@fortawesome/fontawesome-free": { + "version": "6.4.2", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-free/-/fontawesome-free-6.4.2.tgz", + "integrity": "sha512-m5cPn3e2+FDCOgi1mz0RexTUvvQibBebOUlUlW0+YrMjDTPkiJ6VTKukA1GRsvRw+12KyJndNjj0O4AgTxm2Pg==", + "hasInstallScript": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@fortawesome/fontawesome-svg-core": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-6.5.1.tgz", + "integrity": "sha512-MfRCYlQPXoLlpem+egxjfkEuP9UQswTrlCOsknus/NcMoblTH2g0jPrapbcIb04KGA7E2GZxbAccGZfWoYgsrQ==", + "hasInstallScript": true, + "peer": true, + "dependencies": { + "@fortawesome/fontawesome-common-types": "6.5.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@fortawesome/fontawesome-svg-core/node_modules/@fortawesome/fontawesome-common-types": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-6.5.1.tgz", + "integrity": "sha512-GkWzv+L6d2bI5f/Vk6ikJ9xtl7dfXtoRu3YGE6nq0p/FFqA1ebMOAWg3XgRyb0I6LYyYkiAo+3/KrwuBp8xG7A==", + "hasInstallScript": true, + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@fortawesome/free-solid-svg-icons": { + "version": "6.4.2", + "resolved": "https://registry.npmjs.org/@fortawesome/free-solid-svg-icons/-/free-solid-svg-icons-6.4.2.tgz", + "integrity": "sha512-sYwXurXUEQS32fZz9hVCUUv/xu49PEJEyUOsA51l6PU/qVgfbTb2glsTEaJngVVT8VqBATRIdh7XVgV1JF1LkA==", + "hasInstallScript": true, + "dependencies": { + "@fortawesome/fontawesome-common-types": "6.4.2" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@fortawesome/react-fontawesome": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@fortawesome/react-fontawesome/-/react-fontawesome-0.2.0.tgz", + "integrity": "sha512-uHg75Rb/XORTtVt7OS9WoK8uM276Ufi7gCzshVWkUJbHhh3svsUUeqXerrM96Wm7fRiDzfKRwSoahhMIkGAYHw==", + "dependencies": { + "prop-types": "^15.8.1" + }, + "peerDependencies": { + "@fortawesome/fontawesome-svg-core": "~1 || ~6", + "react": ">=16.3" + } + }, + "node_modules/@humanwhocodes/config-array": { + "version": "0.11.11", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.11.tgz", + "integrity": "sha512-N2brEuAadi0CcdeMXUkhbZB84eskAc8MEX1By6qEchoVywSgXPIjou4rYsl0V3Hj0ZnuGycGCjdNgockbzeWNA==", + "devOptional": true, + "dependencies": { + "@humanwhocodes/object-schema": "^1.2.1", + "debug": "^4.1.1", + "minimatch": "^3.0.5" + }, + "engines": { + "node": ">=10.10.0" + } + }, + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "devOptional": true, + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@humanwhocodes/object-schema": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", + "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", + "devOptional": true + }, + "node_modules/@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", + "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", + "dev": true, + "dependencies": { + "camelcase": "^5.3.1", + "find-up": "^4.1.0", + "get-package-type": "^0.1.0", + "js-yaml": "^3.13.1", + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/schema": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", + "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/console": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-29.7.0.tgz", + "integrity": "sha512-5Ni4CU7XHQi32IJ398EEP4RrB8eV09sXP2ROqD4bksHrnTree52PsxvX8tpL8LvTZ3pFzXyPbNQReSN41CAhOg==", + "dev": true, + "dependencies": { + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/core": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/core/-/core-29.7.0.tgz", + "integrity": "sha512-n7aeXWKMnGtDA48y8TLWJPJmLmmZ642Ceo78cYWEpiD7FzDgmNDV/GCVRorPABdXLJZ/9wzzgZAlHjXjxDHGsg==", + "dev": true, + "dependencies": { + "@jest/console": "^29.7.0", + "@jest/reporters": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "jest-changed-files": "^29.7.0", + "jest-config": "^29.7.0", + "jest-haste-map": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-regex-util": "^29.6.3", + "jest-resolve": "^29.7.0", + "jest-resolve-dependencies": "^29.7.0", + "jest-runner": "^29.7.0", + "jest-runtime": "^29.7.0", + "jest-snapshot": "^29.7.0", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "jest-watcher": "^29.7.0", + "micromatch": "^4.0.4", + "pretty-format": "^29.7.0", + "slash": "^3.0.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/@jest/core/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/core/node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "dev": true, + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/core/node_modules/react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==", + "dev": true + }, + "node_modules/@jest/environment": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.7.0.tgz", + "integrity": "sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw==", + "dependencies": { + "@jest/fake-timers": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "jest-mock": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/expect": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/expect/-/expect-29.7.0.tgz", + "integrity": "sha512-8uMeAMycttpva3P1lBHB8VciS9V0XAr3GymPpipdyQXbBcuhkLQOSe8E/p92RyAdToS6ZD1tFkX+CkhoECE0dQ==", + "dev": true, + "dependencies": { + "expect": "^29.7.0", + "jest-snapshot": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/expect-utils": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.7.0.tgz", + "integrity": "sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA==", + "dev": true, + "dependencies": { + "jest-get-type": "^29.6.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/fake-timers": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.7.0.tgz", + "integrity": "sha512-q4DH1Ha4TTFPdxLsqDXK1d3+ioSL7yL5oCMJZgDYm6i+6CygW5E5xVr/D1HdsGxjt1ZWSfUAs9OxSB/BNelWrQ==", + "dependencies": { + "@jest/types": "^29.6.3", + "@sinonjs/fake-timers": "^10.0.2", + "@types/node": "*", + "jest-message-util": "^29.7.0", + "jest-mock": "^29.7.0", + "jest-util": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/globals": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-29.7.0.tgz", + "integrity": "sha512-mpiz3dutLbkW2MNFubUGUEVLkTGiqW6yLVTA+JbP6fI6J5iL9Y0Nlg8k95pcF8ctKwCS7WVxteBs29hhfAotzQ==", + "dev": true, + "dependencies": { + "@jest/environment": "^29.7.0", + "@jest/expect": "^29.7.0", + "@jest/types": "^29.6.3", + "jest-mock": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/reporters": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-29.7.0.tgz", + "integrity": "sha512-DApq0KJbJOEzAFYjHADNNxAE3KbhxQB1y5Kplb5Waqw6zVbuWatSnMjE5gs8FUgEPmNsnZA3NCWl9NG0ia04Pg==", + "dev": true, + "dependencies": { + "@bcoe/v8-coverage": "^0.2.3", + "@jest/console": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@jridgewell/trace-mapping": "^0.3.18", + "@types/node": "*", + "chalk": "^4.0.0", + "collect-v8-coverage": "^1.0.0", + "exit": "^0.1.2", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-instrument": "^6.0.0", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.0", + "istanbul-reports": "^3.1.3", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0", + "jest-worker": "^29.7.0", + "slash": "^3.0.0", + "string-length": "^4.0.1", + "strip-ansi": "^6.0.0", + "v8-to-istanbul": "^9.0.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/@jest/schemas": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz", + "integrity": "sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==", + "dependencies": { + "@sinclair/typebox": "^0.27.8" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/source-map": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-29.6.3.tgz", + "integrity": "sha512-MHjT95QuipcPrpLM+8JMSzFx6eHp5Bm+4XeFDJlwsvVBjmKNiIAvasGK2fxz2WbGRlnvqehFbh07MMa7n3YJnw==", + "dev": true, + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.18", + "callsites": "^3.0.0", + "graceful-fs": "^4.2.9" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/test-result": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-29.7.0.tgz", + "integrity": "sha512-Fdx+tv6x1zlkJPcWXmMDAG2HBnaR9XPSd5aDWQVsfrZmLVT3lU1cwyxLgRmXR9yrq4NBoEm9BMsfgFzTQAbJYA==", + "dev": true, + "dependencies": { + "@jest/console": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/istanbul-lib-coverage": "^2.0.0", + "collect-v8-coverage": "^1.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/test-sequencer": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-29.7.0.tgz", + "integrity": "sha512-GQwJ5WZVrKnOJuiYiAF52UNUJXgTZx1NHjFSEB0qEMmSZKAkdMoIzw/Cj6x6NF4AvV23AUqDpFzQkN/eYCYTxw==", + "dev": true, + "dependencies": { + "@jest/test-result": "^29.7.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/transform": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-29.7.0.tgz", + "integrity": "sha512-ok/BTPFzFKVMwO5eOHRrvnBVHdRy9IrsrW1GpMaQ9MCnilNLXQKmAX8s1YXDFaai9xJpac2ySzV0YeRRECr2Vw==", + "dev": true, + "dependencies": { + "@babel/core": "^7.11.6", + "@jest/types": "^29.6.3", + "@jridgewell/trace-mapping": "^0.3.18", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^2.0.0", + "fast-json-stable-stringify": "^2.1.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "jest-regex-util": "^29.6.3", + "jest-util": "^29.7.0", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "write-file-atomic": "^4.0.2" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/types": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.3.tgz", + "integrity": "sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==", + "dependencies": { + "@jest/schemas": "^29.6.3", + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^17.0.8", + "chalk": "^4.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", + "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", + "dev": true, + "dependencies": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz", + "integrity": "sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", + "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.20", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.20.tgz", + "integrity": "sha512-R8LcPeWZol2zR8mmH3JeKQ6QRCFb7XgUhV9ZlGhHLGyg4wpPiPZNQOOWhFZhxKw8u//yTbNGI42Bx/3paXEQ+Q==", + "dev": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@mui/base": { + "version": "5.0.0-beta.24", + "resolved": "https://registry.npmjs.org/@mui/base/-/base-5.0.0-beta.24.tgz", + "integrity": "sha512-bKt2pUADHGQtqWDZ8nvL2Lvg2GNJyd/ZUgZAJoYzRgmnxBL9j36MSlS3+exEdYkikcnvVafcBtD904RypFKb0w==", + "dependencies": { + "@babel/runtime": "^7.23.2", + "@floating-ui/react-dom": "^2.0.4", + "@mui/types": "^7.2.9", + "@mui/utils": "^5.14.18", + "@popperjs/core": "^2.11.8", + "clsx": "^2.0.0", + "prop-types": "^15.8.1" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui" + }, + "peerDependencies": { + "@types/react": "^17.0.0 || ^18.0.0", + "react": "^17.0.0 || ^18.0.0", + "react-dom": "^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@mui/core-downloads-tracker": { + "version": "5.15.11", + "resolved": "https://registry.npmjs.org/@mui/core-downloads-tracker/-/core-downloads-tracker-5.15.11.tgz", + "integrity": "sha512-JVrJ9Jo4gyU707ujnRzmE8ABBWpXd6FwL9GYULmwZRtfPg89ggXs/S3MStQkpJ1JRWfdLL6S5syXmgQGq5EDAw==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + } + }, + "node_modules/@mui/icons-material": { + "version": "5.14.18", + "resolved": "https://registry.npmjs.org/@mui/icons-material/-/icons-material-5.14.18.tgz", + "integrity": "sha512-o2z49R1G4SdBaxZjbMmkn+2OdT1bKymLvAYaB6pH59obM1CYv/0vAVm6zO31IqhwtYwXv6A7sLIwCGYTaVkcdg==", + "dependencies": { + "@babel/runtime": "^7.23.2" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui" + }, + "peerDependencies": { + "@mui/material": "^5.0.0", + "@types/react": "^17.0.0 || ^18.0.0", + "react": "^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@mui/lab": { + "version": "5.0.0-alpha.153", + "resolved": "https://registry.npmjs.org/@mui/lab/-/lab-5.0.0-alpha.153.tgz", + "integrity": "sha512-vogVniN5JC7ltqPpPhIGYVImnvu0PnE1UbtFvbzVs3ldt3obWJ5XrhYS/OEV6H2/9dey3nUNU6i36FG1yreFDA==", + "dependencies": { + "@babel/runtime": "^7.23.2", + "@mui/base": "5.0.0-beta.24", + "@mui/system": "^5.14.18", + "@mui/types": "^7.2.9", + "@mui/utils": "^5.14.18", + "clsx": "^2.0.0", + "prop-types": "^15.8.1" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui" + }, + "peerDependencies": { + "@emotion/react": "^11.5.0", + "@emotion/styled": "^11.3.0", + "@mui/material": ">=5.10.11", + "@types/react": "^17.0.0 || ^18.0.0", + "react": "^17.0.0 || ^18.0.0", + "react-dom": "^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@emotion/react": { + "optional": true + }, + "@emotion/styled": { + "optional": true + }, + "@types/react": { + "optional": true + } + } + }, + "node_modules/@mui/material": { + "version": "5.15.11", + "resolved": "https://registry.npmjs.org/@mui/material/-/material-5.15.11.tgz", + "integrity": "sha512-FA3eEuEZaDaxgN3CgfXezMWbCZ4VCeU/sv0F0/PK5n42qIgsPVD6q+j71qS7/62sp6wRFMHtDMpXRlN+tT/7NA==", + "dependencies": { + "@babel/runtime": "^7.23.9", + "@mui/base": "5.0.0-beta.37", + "@mui/core-downloads-tracker": "^5.15.11", + "@mui/system": "^5.15.11", + "@mui/types": "^7.2.13", + "@mui/utils": "^5.15.11", + "@types/react-transition-group": "^4.4.10", + "clsx": "^2.1.0", + "csstype": "^3.1.3", + "prop-types": "^15.8.1", + "react-is": "^18.2.0", + "react-transition-group": "^4.4.5" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + }, + "peerDependencies": { + "@emotion/react": "^11.5.0", + "@emotion/styled": "^11.3.0", + "@types/react": "^17.0.0 || ^18.0.0", + "react": "^17.0.0 || ^18.0.0", + "react-dom": "^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@emotion/react": { + "optional": true + }, + "@emotion/styled": { + "optional": true + }, + "@types/react": { + "optional": true + } + } + }, + "node_modules/@mui/material/node_modules/@mui/base": { + "version": "5.0.0-beta.37", + "resolved": "https://registry.npmjs.org/@mui/base/-/base-5.0.0-beta.37.tgz", + "integrity": "sha512-/o3anbb+DeCng8jNsd3704XtmmLDZju1Fo8R2o7ugrVtPQ/QpcqddwKNzKPZwa0J5T8YNW3ZVuHyQgbTnQLisQ==", + "dependencies": { + "@babel/runtime": "^7.23.9", + "@floating-ui/react-dom": "^2.0.8", + "@mui/types": "^7.2.13", + "@mui/utils": "^5.15.11", + "@popperjs/core": "^2.11.8", + "clsx": "^2.1.0", + "prop-types": "^15.8.1" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + }, + "peerDependencies": { + "@types/react": "^17.0.0 || ^18.0.0", + "react": "^17.0.0 || ^18.0.0", + "react-dom": "^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@mui/material/node_modules/react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==" + }, + "node_modules/@mui/private-theming": { + "version": "5.15.11", + "resolved": "https://registry.npmjs.org/@mui/private-theming/-/private-theming-5.15.11.tgz", + "integrity": "sha512-jY/696SnSxSzO1u86Thym7ky5T9CgfidU3NFJjguldqK4f3Z5S97amZ6nffg8gTD0HBjY9scB+4ekqDEUmxZOA==", + "dependencies": { + "@babel/runtime": "^7.23.9", + "@mui/utils": "^5.15.11", + "prop-types": "^15.8.1" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + }, + "peerDependencies": { + "@types/react": "^17.0.0 || ^18.0.0", + "react": "^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@mui/styled-engine": { + "version": "5.15.11", + "resolved": "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-5.15.11.tgz", + "integrity": "sha512-So21AhAngqo07ces4S/JpX5UaMU2RHXpEA6hNzI6IQjd/1usMPxpgK8wkGgTe3JKmC2KDmH8cvoycq5H3Ii7/w==", + "dependencies": { + "@babel/runtime": "^7.23.9", + "@emotion/cache": "^11.11.0", + "csstype": "^3.1.3", + "prop-types": "^15.8.1" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + }, + "peerDependencies": { + "@emotion/react": "^11.4.1", + "@emotion/styled": "^11.3.0", + "react": "^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@emotion/react": { + "optional": true + }, + "@emotion/styled": { + "optional": true + } + } + }, + "node_modules/@mui/system": { + "version": "5.15.11", + "resolved": "https://registry.npmjs.org/@mui/system/-/system-5.15.11.tgz", + "integrity": "sha512-9j35suLFq+MgJo5ktVSHPbkjDLRMBCV17NMBdEQurh6oWyGnLM4uhU4QGZZQ75o0vuhjJghOCA1jkO3+79wKsA==", + "dependencies": { + "@babel/runtime": "^7.23.9", + "@mui/private-theming": "^5.15.11", + "@mui/styled-engine": "^5.15.11", + "@mui/types": "^7.2.13", + "@mui/utils": "^5.15.11", + "clsx": "^2.1.0", + "csstype": "^3.1.3", + "prop-types": "^15.8.1" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + }, + "peerDependencies": { + "@emotion/react": "^11.5.0", + "@emotion/styled": "^11.3.0", + "@types/react": "^17.0.0 || ^18.0.0", + "react": "^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@emotion/react": { + "optional": true + }, + "@emotion/styled": { + "optional": true + }, + "@types/react": { + "optional": true + } + } + }, + "node_modules/@mui/types": { + "version": "7.2.13", + "resolved": "https://registry.npmjs.org/@mui/types/-/types-7.2.13.tgz", + "integrity": "sha512-qP9OgacN62s+l8rdDhSFRe05HWtLLJ5TGclC9I1+tQngbssu0m2dmFZs+Px53AcOs9fD7TbYd4gc9AXzVqO/+g==", + "peerDependencies": { + "@types/react": "^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@mui/utils": { + "version": "5.15.11", + "resolved": "https://registry.npmjs.org/@mui/utils/-/utils-5.15.11.tgz", + "integrity": "sha512-D6bwqprUa9Stf8ft0dcMqWyWDKEo7D+6pB1k8WajbqlYIRA8J8Kw9Ra7PSZKKePGBGWO+/xxrX1U8HpG/aXQCw==", + "dependencies": { + "@babel/runtime": "^7.23.9", + "@types/prop-types": "^15.7.11", + "prop-types": "^15.8.1", + "react-is": "^18.2.0" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + }, + "peerDependencies": { + "@types/react": "^17.0.0 || ^18.0.0", + "react": "^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@mui/utils/node_modules/react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==" + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@popperjs/core": { + "version": "2.11.8", + "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz", + "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/popperjs" + } + }, + "node_modules/@remix-run/router": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@remix-run/router/-/router-1.9.0.tgz", + "integrity": "sha512-bV63itrKBC0zdT27qYm6SDZHlkXwFL1xMBuhkn+X7l0+IIhNaH5wuuvZKp6eKhCD4KFhujhfhCT1YxXW6esUIA==", + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@sinclair/typebox": { + "version": "0.27.8", + "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", + "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==" + }, + "node_modules/@sinonjs/commons": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.0.tgz", + "integrity": "sha512-jXBtWAF4vmdNmZgD5FoKsVLv3rPgDnLgPbU84LIJ3otV44vJlDRokVng5v8NFJdCf/da9legHcKaRuZs4L7faA==", + "dependencies": { + "type-detect": "4.0.8" + } + }, + "node_modules/@sinonjs/fake-timers": { + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz", + "integrity": "sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==", + "dependencies": { + "@sinonjs/commons": "^3.0.0" + } + }, + "node_modules/@socket.io/component-emitter": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@socket.io/component-emitter/-/component-emitter-3.1.0.tgz", + "integrity": "sha512-+9jVqKhRSpsc591z5vX+X5Yyw+he/HCB4iQ/RYxw35CEPaY1gnsNE43nf9n9AaYjAQrTiI/mOwKUKdUs9vf7Xg==" + }, + "node_modules/@swc/core": { + "version": "1.3.92", + "resolved": "https://registry.npmjs.org/@swc/core/-/core-1.3.92.tgz", + "integrity": "sha512-vx0vUrf4YTEw59njOJ46Ha5i0cZTMYdRHQ7KXU29efN1MxcmJH2RajWLPlvQarOP1ab9iv9cApD7SMchDyx2vA==", + "devOptional": true, + "hasInstallScript": true, + "dependencies": { + "@swc/counter": "^0.1.1", + "@swc/types": "^0.1.5" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/swc" + }, + "optionalDependencies": { + "@swc/core-darwin-arm64": "1.3.92", + "@swc/core-darwin-x64": "1.3.92", + "@swc/core-linux-arm-gnueabihf": "1.3.92", + "@swc/core-linux-arm64-gnu": "1.3.92", + "@swc/core-linux-arm64-musl": "1.3.92", + "@swc/core-linux-x64-gnu": "1.3.92", + "@swc/core-linux-x64-musl": "1.3.92", + "@swc/core-win32-arm64-msvc": "1.3.92", + "@swc/core-win32-ia32-msvc": "1.3.92", + "@swc/core-win32-x64-msvc": "1.3.92" + }, + "peerDependencies": { + "@swc/helpers": "^0.5.0" + }, + "peerDependenciesMeta": { + "@swc/helpers": { + "optional": true + } + } + }, + "node_modules/@swc/core-win32-x64-msvc": { + "version": "1.3.92", + "resolved": "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.3.92.tgz", + "integrity": "sha512-41bE66ddr9o/Fi1FBh0sHdaKdENPTuDpv1IFHxSg0dJyM/jX8LbkjnpdInYXHBxhcLVAPraVRrNsC4SaoPw2Pg==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/counter": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/@swc/counter/-/counter-0.1.2.tgz", + "integrity": "sha512-9F4ys4C74eSTEUNndnER3VJ15oru2NumfQxS8geE+f3eB5xvfxpWyqE5XlVnxb/R14uoXi6SLbBwwiDSkv+XEw==", + "devOptional": true + }, + "node_modules/@swc/types": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/@swc/types/-/types-0.1.5.tgz", + "integrity": "sha512-myfUej5naTBWnqOCc/MdVOLVjXUXtIA+NpDrDBKJtLLg2shUjBu3cZmB/85RyitKc55+lUUyl7oRfLOvkr2hsw==", + "devOptional": true + }, + "node_modules/@testing-library/dom": { + "version": "9.3.3", + "resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-9.3.3.tgz", + "integrity": "sha512-fB0R+fa3AUqbLHWyxXa2kGVtf1Fe1ZZFr0Zp6AIbIAzXb2mKbEXl+PCQNUOaq5lbTab5tfctfXRNsWXxa2f7Aw==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.10.4", + "@babel/runtime": "^7.12.5", + "@types/aria-query": "^5.0.1", + "aria-query": "5.1.3", + "chalk": "^4.1.0", + "dom-accessibility-api": "^0.5.9", + "lz-string": "^1.5.0", + "pretty-format": "^27.0.2" + }, + "engines": { + "node": ">=14" + } + }, + "node_modules/@testing-library/dom/node_modules/aria-query": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.1.3.tgz", + "integrity": "sha512-R5iJ5lkuHybztUfuOAznmboyjWq8O6sqNqtK7CLOqdydi54VNbORp49mb14KbWgG1QD3JFO9hJdZ+y4KutfdOQ==", + "dev": true, + "dependencies": { + "deep-equal": "^2.0.5" + } + }, + "node_modules/@testing-library/jest-dom": { + "version": "6.1.4", + "resolved": "https://registry.npmjs.org/@testing-library/jest-dom/-/jest-dom-6.1.4.tgz", + "integrity": "sha512-wpoYrCYwSZ5/AxcrjLxJmCU6I5QAJXslEeSiMQqaWmP2Kzpd1LvF/qxmAIW2qposULGWq2gw30GgVNFLSc2Jnw==", + "dev": true, + "dependencies": { + "@adobe/css-tools": "^4.3.1", + "@babel/runtime": "^7.9.2", + "aria-query": "^5.0.0", + "chalk": "^3.0.0", + "css.escape": "^1.5.1", + "dom-accessibility-api": "^0.5.6", + "lodash": "^4.17.15", + "redent": "^3.0.0" + }, + "engines": { + "node": ">=14", + "npm": ">=6", + "yarn": ">=1" + }, + "peerDependencies": { + "@jest/globals": ">= 28", + "@types/jest": ">= 28", + "jest": ">= 28", + "vitest": ">= 0.32" + }, + "peerDependenciesMeta": { + "@jest/globals": { + "optional": true + }, + "@types/jest": { + "optional": true + }, + "jest": { + "optional": true + }, + "vitest": { + "optional": true + } + } + }, + "node_modules/@testing-library/jest-dom/node_modules/chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@testing-library/react": { + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/@testing-library/react/-/react-14.1.0.tgz", + "integrity": "sha512-hcvfZEEyO0xQoZeHmUbuMs7APJCGELpilL7bY+BaJaMP57aWc6q1etFwScnoZDheYjk4ESdlzPdQ33IbsKAK/A==", + "dev": true, + "dependencies": { + "@babel/runtime": "^7.12.5", + "@testing-library/dom": "^9.0.0", + "@types/react-dom": "^18.0.0" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "react": "^18.0.0", + "react-dom": "^18.0.0" + } + }, + "node_modules/@tootallnate/once": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", + "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tsconfig/node10": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz", + "integrity": "sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==" + }, + "node_modules/@tsconfig/node12": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", + "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==" + }, + "node_modules/@tsconfig/node14": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", + "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==" + }, + "node_modules/@tsconfig/node16": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.4.tgz", + "integrity": "sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==" + }, + "node_modules/@types/aria-query": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/@types/aria-query/-/aria-query-5.0.4.tgz", + "integrity": "sha512-rfT93uj5s0PRL7EzccGMs3brplhcrghnDoV26NqKhCAS1hVo+WdNsPvE/yb6ilfr5hi2MEk6d5EWJTKdxg8jVw==", + "dev": true + }, + "node_modules/@types/babel__core": { + "version": "7.20.4", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.4.tgz", + "integrity": "sha512-mLnSC22IC4vcWiuObSRjrLd9XcBTGf59vUSoq2jkQDJ/QQ8PMI9rSuzE+aEV8karUMbskw07bKYoUJCKTUaygg==", + "dev": true, + "dependencies": { + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "node_modules/@types/babel__generator": { + "version": "7.6.7", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.7.tgz", + "integrity": "sha512-6Sfsq+EaaLrw4RmdFWE9Onp63TOUue71AWb4Gpa6JxzgTYtimbM086WnYTy2U67AofR++QKCo08ZP6pwx8YFHQ==", + "dev": true, + "dependencies": { + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__template": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", + "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", + "dev": true, + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__traverse": { + "version": "7.20.4", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.4.tgz", + "integrity": "sha512-mSM/iKUk5fDDrEV/e83qY+Cr3I1+Q3qqTuEn++HAWYjEa1+NxZr6CNrcJGf2ZTnq4HoFGC3zaTPZTobCzCFukA==", + "dev": true, + "dependencies": { + "@babel/types": "^7.20.7" + } + }, + "node_modules/@types/debug": { + "version": "4.1.9", + "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.9.tgz", + "integrity": "sha512-8Hz50m2eoS56ldRlepxSBa6PWEVCtzUo/92HgLc2qTMnotJNIm7xP+UZhyWoYsyOdd5dxZ+NZLb24rsKyFs2ow==", + "dependencies": { + "@types/ms": "*" + } + }, + "node_modules/@types/graceful-fs": { + "version": "4.1.9", + "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.9.tgz", + "integrity": "sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/hast": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.1.tgz", + "integrity": "sha512-hs/iBJx2aydugBQx5ETV3ZgeSS0oIreQrFJ4bjBl0XvM4wAmDjFEALY7p0rTSLt2eL+ibjRAAs9dTPiCLtmbqQ==", + "dependencies": { + "@types/unist": "*" + } + }, + "node_modules/@types/istanbul-lib-coverage": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz", + "integrity": "sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==" + }, + "node_modules/@types/istanbul-lib-report": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz", + "integrity": "sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==", + "dependencies": { + "@types/istanbul-lib-coverage": "*" + } + }, + "node_modules/@types/istanbul-reports": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz", + "integrity": "sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==", + "dependencies": { + "@types/istanbul-lib-report": "*" + } + }, + "node_modules/@types/jest": { + "version": "29.5.8", + "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.5.8.tgz", + "integrity": "sha512-fXEFTxMV2Co8ZF5aYFJv+YeA08RTYJfhtN5c9JSv/mFEMe+xxjufCb+PHL+bJcMs/ebPUsBu+UNTEz+ydXrR6g==", + "dev": true, + "dependencies": { + "expect": "^29.0.0", + "pretty-format": "^29.0.0" + } + }, + "node_modules/@types/jest/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@types/jest/node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "dev": true, + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@types/jest/node_modules/react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==", + "dev": true + }, + "node_modules/@types/jsdom": { + "version": "20.0.1", + "resolved": "https://registry.npmjs.org/@types/jsdom/-/jsdom-20.0.1.tgz", + "integrity": "sha512-d0r18sZPmMQr1eG35u12FZfhIXNrnsPU/g5wvRKCUf/tOGilKKwYMYGqh33BNR6ba+2gkHw1EUiHoN3mn7E5IQ==", + "dependencies": { + "@types/node": "*", + "@types/tough-cookie": "*", + "parse5": "^7.0.0" + } + }, + "node_modules/@types/json-schema": { + "version": "7.0.13", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.13.tgz", + "integrity": "sha512-RbSSoHliUbnXj3ny0CNFOoxrIDV6SUGyStHsvDqosw6CkdPV8TtWGlfecuK4ToyMEAql6pzNxgCFKanovUzlgQ==", + "dev": true + }, + "node_modules/@types/katex": { + "version": "0.16.5", + "resolved": "https://registry.npmjs.org/@types/katex/-/katex-0.16.5.tgz", + "integrity": "sha512-DD2Y3xMlTQvAnN6d8803xdgnOeYZ+HwMglb7/9YCf49J9RkJL53azf9qKa40MkEYhqVwxZ1GS2+VlShnz4Z1Bw==" + }, + "node_modules/@types/mdast": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-4.0.1.tgz", + "integrity": "sha512-IlKct1rUTJ1T81d8OHzyop15kGv9A/ff7Gz7IJgrk6jDb4Udw77pCJ+vq8oxZf4Ghpm+616+i1s/LNg/Vh7d+g==", + "dependencies": { + "@types/unist": "*" + } + }, + "node_modules/@types/ms": { + "version": "0.7.32", + "resolved": "https://registry.npmjs.org/@types/ms/-/ms-0.7.32.tgz", + "integrity": "sha512-xPSg0jm4mqgEkNhowKgZFBNtwoEwF6gJ4Dhww+GFpm3IgtNseHQZ5IqdNwnquZEoANxyDAKDRAdVo4Z72VvD/g==" + }, + "node_modules/@types/node": { + "version": "20.8.8", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.8.8.tgz", + "integrity": "sha512-YRsdVxq6OaLfmR9Hy816IMp33xOBjfyOgUd77ehqg96CFywxAPbDbXvAsuN2KVg2HOT8Eh6uAfU+l4WffwPVrQ==", + "dependencies": { + "undici-types": "~5.25.1" + } + }, + "node_modules/@types/parse-json": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.2.tgz", + "integrity": "sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==" + }, + "node_modules/@types/prop-types": { + "version": "15.7.11", + "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.11.tgz", + "integrity": "sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==" + }, + "node_modules/@types/react": { + "version": "18.2.25", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.25.tgz", + "integrity": "sha512-24xqse6+VByVLIr+xWaQ9muX1B4bXJKXBbjszbld/UEDslGLY53+ZucF44HCmLbMPejTzGG9XgR+3m2/Wqu1kw==", + "dependencies": { + "@types/prop-types": "*", + "@types/scheduler": "*", + "csstype": "^3.0.2" + } + }, + "node_modules/@types/react-dom": { + "version": "18.2.10", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.2.10.tgz", + "integrity": "sha512-5VEC5RgXIk1HHdyN1pHlg0cOqnxHzvPGpMMyGAP5qSaDRmyZNDaQ0kkVAkK6NYlDhP6YBID3llaXlmAS/mdgCA==", + "dev": true, + "dependencies": { + "@types/react": "*" + } + }, + "node_modules/@types/react-latex": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@types/react-latex/-/react-latex-2.0.3.tgz", + "integrity": "sha512-PdH5UI5AT2aj+sBJkQbmXc/0S7pR/7i/u5oFhDrFHTeI2TedMk+RwQsVNcHMXleT1L7RqyNjm0FE4AtUHsv/DA==", + "dev": true, + "dependencies": { + "@types/react": "*" + } + }, + "node_modules/@types/react-transition-group": { + "version": "4.4.10", + "resolved": "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.10.tgz", + "integrity": "sha512-hT/+s0VQs2ojCX823m60m5f0sL5idt9SO6Tj6Dg+rdphGPIeJbJ6CxvBYkgkGKrYeDjvIpKTR38UzmtHJOGW3Q==", + "dependencies": { + "@types/react": "*" + } + }, + "node_modules/@types/scheduler": { + "version": "0.16.4", + "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.4.tgz", + "integrity": "sha512-2L9ifAGl7wmXwP4v3pN4p2FLhD0O1qsJpvKmNin5VA8+UvNVb447UDaAEV6UdrkA+m/Xs58U1RFps44x6TFsVQ==" + }, + "node_modules/@types/semver": { + "version": "7.5.3", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.3.tgz", + "integrity": "sha512-OxepLK9EuNEIPxWNME+C6WwbRAOOI2o2BaQEGzz5Lu2e4Z5eDnEo+/aVEDMIXywoJitJ7xWd641wrGLZdtwRyw==", + "dev": true + }, + "node_modules/@types/stack-utils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.3.tgz", + "integrity": "sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==" + }, + "node_modules/@types/tough-cookie": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-4.0.5.tgz", + "integrity": "sha512-/Ad8+nIOV7Rl++6f1BdKxFSMgmoqEoYbHRpPcx3JEfv8VRsQe9Z4mCXeJBzxs7mbHY/XOZZuXlRNfhpVPbs6ZA==" + }, + "node_modules/@types/unist": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.0.tgz", + "integrity": "sha512-MFETx3tbTjE7Uk6vvnWINA/1iJ7LuMdO4fcq8UfF0pRbj01aGLduVvQcRyswuACJdpnHgg8E3rQLhaRdNEJS0w==" + }, + "node_modules/@types/uuid": { + "version": "9.0.7", + "resolved": "https://registry.npmjs.org/@types/uuid/-/uuid-9.0.7.tgz", + "integrity": "sha512-WUtIVRUZ9i5dYXefDEAI7sh9/O7jGvHg7Df/5O/gtH3Yabe5odI3UWopVR1qbPXQtvOxWu3mM4XxlYeZtMWF4g==" + }, + "node_modules/@types/yargs": { + "version": "17.0.31", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.31.tgz", + "integrity": "sha512-bocYSx4DI8TmdlvxqGpVNXOgCNR1Jj0gNPhhAY+iz1rgKDAaYrAYdFYnhDV1IFuiuVc9HkOwyDcFxaTElF3/wg==", + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@types/yargs-parser": { + "version": "21.0.3", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.3.tgz", + "integrity": "sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==" + }, + "node_modules/@typescript-eslint/eslint-plugin": { + "version": "6.7.4", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.7.4.tgz", + "integrity": "sha512-DAbgDXwtX+pDkAHwiGhqP3zWUGpW49B7eqmgpPtg+BKJXwdct79ut9+ifqOFPJGClGKSHXn2PTBatCnldJRUoA==", + "dev": true, + "dependencies": { + "@eslint-community/regexpp": "^4.5.1", + "@typescript-eslint/scope-manager": "6.7.4", + "@typescript-eslint/type-utils": "6.7.4", + "@typescript-eslint/utils": "6.7.4", + "@typescript-eslint/visitor-keys": "6.7.4", + "debug": "^4.3.4", + "graphemer": "^1.4.0", + "ignore": "^5.2.4", + "natural-compare": "^1.4.0", + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^6.0.0 || ^6.0.0-alpha", + "eslint": "^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/parser": { + "version": "6.7.4", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.7.4.tgz", + "integrity": "sha512-I5zVZFY+cw4IMZUeNCU7Sh2PO5O57F7Lr0uyhgCJmhN/BuTlnc55KxPonR4+EM3GBdfiCyGZye6DgMjtubQkmA==", + "dev": true, + "dependencies": { + "@typescript-eslint/scope-manager": "6.7.4", + "@typescript-eslint/types": "6.7.4", + "@typescript-eslint/typescript-estree": "6.7.4", + "@typescript-eslint/visitor-keys": "6.7.4", + "debug": "^4.3.4" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/scope-manager": { + "version": "6.7.4", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.7.4.tgz", + "integrity": "sha512-SdGqSLUPTXAXi7c3Ob7peAGVnmMoGzZ361VswK2Mqf8UOYcODiYvs8rs5ILqEdfvX1lE7wEZbLyELCW+Yrql1A==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "6.7.4", + "@typescript-eslint/visitor-keys": "6.7.4" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/type-utils": { + "version": "6.7.4", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.7.4.tgz", + "integrity": "sha512-n+g3zi1QzpcAdHFP9KQF+rEFxMb2KxtnJGID3teA/nxKHOVi3ylKovaqEzGBbVY2pBttU6z85gp0D00ufLzViQ==", + "dev": true, + "dependencies": { + "@typescript-eslint/typescript-estree": "6.7.4", + "@typescript-eslint/utils": "6.7.4", + "debug": "^4.3.4", + "ts-api-utils": "^1.0.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/types": { + "version": "6.7.4", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.7.4.tgz", + "integrity": "sha512-o9XWK2FLW6eSS/0r/tgjAGsYasLAnOWg7hvZ/dGYSSNjCh+49k5ocPN8OmG5aZcSJ8pclSOyVKP2x03Sj+RrCA==", + "dev": true, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/typescript-estree": { + "version": "6.7.4", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.7.4.tgz", + "integrity": "sha512-ty8b5qHKatlNYd9vmpHooQz3Vki3gG+3PchmtsA4TgrZBKWHNjWfkQid7K7xQogBqqc7/BhGazxMD5vr6Ha+iQ==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "6.7.4", + "@typescript-eslint/visitor-keys": "6.7.4", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/utils": { + "version": "6.7.4", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.7.4.tgz", + "integrity": "sha512-PRQAs+HUn85Qdk+khAxsVV+oULy3VkbH3hQ8hxLRJXWBEd7iI+GbQxH5SEUSH7kbEoTp6oT1bOwyga24ELALTA==", + "dev": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.4.0", + "@types/json-schema": "^7.0.12", + "@types/semver": "^7.5.0", + "@typescript-eslint/scope-manager": "6.7.4", + "@typescript-eslint/types": "6.7.4", + "@typescript-eslint/typescript-estree": "6.7.4", + "semver": "^7.5.4" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0" + } + }, + "node_modules/@typescript-eslint/visitor-keys": { + "version": "6.7.4", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.7.4.tgz", + "integrity": "sha512-pOW37DUhlTZbvph50x5zZCkFn3xzwkGtNoJHzIM3svpiSkJzwOYr/kVBaXmf+RAQiUDs1AHEZVNPg6UJCJpwRA==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "6.7.4", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@vitejs/plugin-react-swc": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-react-swc/-/plugin-react-swc-3.4.0.tgz", + "integrity": "sha512-m7UaA4Uvz82N/0EOVpZL4XsFIakRqrFKeSNxa1FBLSXGvWrWRBwmZb4qxk+ZIVAZcW3c3dn5YosomDgx62XWcQ==", + "dev": true, + "dependencies": { + "@swc/core": "^1.3.85" + }, + "peerDependencies": { + "vite": "^4" + } + }, + "node_modules/abab": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", + "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==" + }, + "node_modules/acorn": { + "version": "8.10.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz", + "integrity": "sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-globals": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-7.0.1.tgz", + "integrity": "sha512-umOSDSDrfHbTNPuNpC2NSnnA3LUrqpevPb4T9jRx4MagXNS0rs+gwiTcAvqCRmsD6utzsrzNt+ebm00SNWiC3Q==", + "dependencies": { + "acorn": "^8.1.0", + "acorn-walk": "^8.0.2" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "devOptional": true, + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/acorn-walk": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.0.tgz", + "integrity": "sha512-FS7hV565M5l1R08MXqo8odwMTB02C2UqzB17RVgu9EyuYFBqJZ3/ZY97sQD5FewVu1UyDFc1yztUDrAwT0EypA==", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "dependencies": { + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "devOptional": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "dependencies": { + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-escapes/node_modules/type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/arg": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", + "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==" + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "devOptional": true + }, + "node_modules/aria-query": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.3.0.tgz", + "integrity": "sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==", + "dev": true, + "dependencies": { + "dequal": "^2.0.3" + } + }, + "node_modules/array-buffer-byte-length": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz", + "integrity": "sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "is-array-buffer": "^3.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" + }, + "node_modules/available-typed-arrays": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", + "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/axios": { + "version": "1.6.7", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.6.7.tgz", + "integrity": "sha512-/hDJGff6/c7u0hDkvkGxR/oy6CbCs8ziCsC7SqmhjfozqiJGc8Z11wrv9z9lYfY4K8l+H9TpjcMDX0xOZmx+RA==", + "dependencies": { + "follow-redirects": "^1.15.4", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" + } + }, + "node_modules/babel-jest": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.7.0.tgz", + "integrity": "sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg==", + "dev": true, + "dependencies": { + "@jest/transform": "^29.7.0", + "@types/babel__core": "^7.1.14", + "babel-plugin-istanbul": "^6.1.1", + "babel-preset-jest": "^29.6.3", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.8.0" + } + }, + "node_modules/babel-plugin-istanbul": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", + "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-instrument": "^5.0.4", + "test-exclude": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-istanbul/node_modules/istanbul-lib-instrument": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", + "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", + "dev": true, + "dependencies": { + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-istanbul/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/babel-plugin-jest-hoist": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.6.3.tgz", + "integrity": "sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg==", + "dev": true, + "dependencies": { + "@babel/template": "^7.3.3", + "@babel/types": "^7.3.3", + "@types/babel__core": "^7.1.14", + "@types/babel__traverse": "^7.0.6" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/babel-plugin-macros": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz", + "integrity": "sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==", + "dependencies": { + "@babel/runtime": "^7.12.5", + "cosmiconfig": "^7.0.0", + "resolve": "^1.19.0" + }, + "engines": { + "node": ">=10", + "npm": ">=6" + } + }, + "node_modules/babel-plugin-polyfill-corejs2": { + "version": "0.4.6", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.6.tgz", + "integrity": "sha512-jhHiWVZIlnPbEUKSSNb9YoWcQGdlTLq7z1GHL4AjFxaoOUMuuEVJ+Y4pAaQUGOGk93YsVCKPbqbfw3m0SM6H8Q==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.22.6", + "@babel/helper-define-polyfill-provider": "^0.4.3", + "semver": "^6.3.1" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-plugin-polyfill-corejs2/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/babel-plugin-polyfill-corejs3": { + "version": "0.8.6", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.8.6.tgz", + "integrity": "sha512-leDIc4l4tUgU7str5BWLS2h8q2N4Nf6lGZP6UrNDxdtfF2g69eJ5L0H7S8A5Ln/arfFAfHor5InAdZuIOwZdgQ==", + "dev": true, + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.4.3", + "core-js-compat": "^3.33.1" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-plugin-polyfill-regenerator": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.5.3.tgz", + "integrity": "sha512-8sHeDOmXC8csczMrYEOf0UTNa4yE2SxV5JGeT/LP1n0OYVDUUFPxG9vdk2AlDlIit4t+Kf0xCtpgXPBwnn/9pw==", + "dev": true, + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.4.3" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-preset-current-node-syntax": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz", + "integrity": "sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==", + "dev": true, + "dependencies": { + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-bigint": "^7.8.3", + "@babel/plugin-syntax-class-properties": "^7.8.3", + "@babel/plugin-syntax-import-meta": "^7.8.3", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.8.3", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-top-level-await": "^7.8.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/babel-preset-jest": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.6.3.tgz", + "integrity": "sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA==", + "dev": true, + "dependencies": { + "babel-plugin-jest-hoist": "^29.6.3", + "babel-preset-current-node-syntax": "^1.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/bail": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/bail/-/bail-2.0.2.tgz", + "integrity": "sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "node_modules/binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browserslist": { + "version": "4.22.1", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.22.1.tgz", + "integrity": "sha512-FEVc202+2iuClEhZhrWy6ZiAcRLvNMyYcxZ8raemul1DYVOVdFsbqckWLdsixQZCpJlwe77Z3UTalE7jsjnKfQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "caniuse-lite": "^1.0.30001541", + "electron-to-chromium": "^1.4.535", + "node-releases": "^2.0.13", + "update-browserslist-db": "^1.0.13" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/bs-logger": { + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/bs-logger/-/bs-logger-0.2.6.tgz", + "integrity": "sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==", + "dev": true, + "dependencies": { + "fast-json-stable-stringify": "2.x" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/bser": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", + "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", + "dev": true, + "dependencies": { + "node-int64": "^0.4.0" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true + }, + "node_modules/call-bind": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.5.tgz", + "integrity": "sha512-C3nQxfFZxFRVoJoGKKI8y3MOEo129NQ+FgQ08iye+Mk4zNZZGdjfs06bVTr+DBSlA66Q2VEcMki/cUCP4SercQ==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.1", + "set-function-length": "^1.1.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001562", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001562.tgz", + "integrity": "sha512-kfte3Hym//51EdX4239i+Rmp20EsLIYGdPkERegTgU19hQWCRhsRFGKHTliUlsry53tv17K7n077Kqa0WJU4ng==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ] + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/char-regex": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", + "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/character-entities": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-2.0.2.tgz", + "integrity": "sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/chokidar/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/ci-info": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", + "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], + "engines": { + "node": ">=8" + } + }, + "node_modules/cjs-module-lexer": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.3.tgz", + "integrity": "sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ==", + "dev": true + }, + "node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dev": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/clsx": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.0.tgz", + "integrity": "sha512-m3iNNWpd9rl3jvvcBnu70ylMdrXt8Vlq4HYadnU5fwcOtvkSQWPmj7amUcDT2qYI7risszBjI5AUIUox9D16pg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", + "dev": true, + "engines": { + "iojs": ">= 1.0.0", + "node": ">= 0.12.0" + } + }, + "node_modules/collect-v8-coverage": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz", + "integrity": "sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==", + "dev": true + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/commander": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", + "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", + "engines": { + "node": ">= 12" + } + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" + }, + "node_modules/connect-history-api-fallback": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz", + "integrity": "sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg==", + "dev": true, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true + }, + "node_modules/core-js-compat": { + "version": "3.33.3", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.33.3.tgz", + "integrity": "sha512-cNzGqFsh3Ot+529GIXacjTJ7kegdt5fPXxCBVS1G0iaZpuo/tBz399ymceLJveQhFFZ8qThHiP3fzuoQjKN2ow==", + "dev": true, + "dependencies": { + "browserslist": "^4.22.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/cosmiconfig": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", + "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", + "dependencies": { + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.2.1", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.10.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/create-jest": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/create-jest/-/create-jest-29.7.0.tgz", + "integrity": "sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q==", + "dev": true, + "dependencies": { + "@jest/types": "^29.6.3", + "chalk": "^4.0.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "jest-config": "^29.7.0", + "jest-util": "^29.7.0", + "prompts": "^2.0.1" + }, + "bin": { + "create-jest": "bin/create-jest.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/create-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", + "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==" + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "devOptional": true, + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/css.escape": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/css.escape/-/css.escape-1.5.1.tgz", + "integrity": "sha512-YUifsXXuknHlUsmlgyY0PKzgPOr7/FjCePfHNt0jxm83wHZi44VDMQ7/fGNkjY3/jV1MC+1CmZbaHzugyeRtpg==", + "dev": true + }, + "node_modules/cssom": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.5.0.tgz", + "integrity": "sha512-iKuQcq+NdHqlAcwUY0o/HL69XQrUaQdMjmStJ8JFmUaiiQErlhrmuigkg/CU4E2J0IyUKUrMAgl36TvN67MqTw==" + }, + "node_modules/cssstyle": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz", + "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==", + "dependencies": { + "cssom": "~0.3.6" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cssstyle/node_modules/cssom": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", + "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==" + }, + "node_modules/csstype": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", + "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==" + }, + "node_modules/data-urls": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-3.0.2.tgz", + "integrity": "sha512-Jy/tj3ldjZJo63sVAvg6LHt2mHvl4V6AgRAmNDtLdm7faqtsx+aJG42rsyCo9JCoRVKwPFzKlIPx3DIibwSIaQ==", + "dependencies": { + "abab": "^2.0.6", + "whatwg-mimetype": "^3.0.0", + "whatwg-url": "^11.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decimal.js": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz", + "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==" + }, + "node_modules/decode-named-character-reference": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/decode-named-character-reference/-/decode-named-character-reference-1.0.2.tgz", + "integrity": "sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==", + "dependencies": { + "character-entities": "^2.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/dedent": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/dedent/-/dedent-1.5.1.tgz", + "integrity": "sha512-+LxW+KLWxu3HW3M2w2ympwtqPrqYRzU8fqi6Fhd18fBALe15blJPI/I4+UHveMVG6lJqB4JNd4UG0S5cnVHwIg==", + "dev": true, + "peerDependencies": { + "babel-plugin-macros": "^3.1.0" + }, + "peerDependenciesMeta": { + "babel-plugin-macros": { + "optional": true + } + } + }, + "node_modules/deep-equal": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-2.2.3.tgz", + "integrity": "sha512-ZIwpnevOurS8bpT4192sqAowWM76JDKSHYzMLty3BZGSswgq6pBaH3DhCSW5xVAZICZyKdOBPjwww5wfgT/6PA==", + "dev": true, + "dependencies": { + "array-buffer-byte-length": "^1.0.0", + "call-bind": "^1.0.5", + "es-get-iterator": "^1.1.3", + "get-intrinsic": "^1.2.2", + "is-arguments": "^1.1.1", + "is-array-buffer": "^3.0.2", + "is-date-object": "^1.0.5", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", + "isarray": "^2.0.5", + "object-is": "^1.1.5", + "object-keys": "^1.1.1", + "object.assign": "^4.1.4", + "regexp.prototype.flags": "^1.5.1", + "side-channel": "^1.0.4", + "which-boxed-primitive": "^1.0.2", + "which-collection": "^1.0.1", + "which-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "devOptional": true + }, + "node_modules/deepmerge": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/define-data-property": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.1.tgz", + "integrity": "sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.2.1", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/define-properties": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", + "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", + "dev": true, + "dependencies": { + "define-data-property": "^1.0.1", + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/dequal": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz", + "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==", + "engines": { + "node": ">=6" + } + }, + "node_modules/detect-newline": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", + "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/devlop": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/devlop/-/devlop-1.1.0.tgz", + "integrity": "sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==", + "dependencies": { + "dequal": "^2.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/diff": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", + "engines": { + "node": ">=0.3.1" + } + }, + "node_modules/diff-sequences": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.6.3.tgz", + "integrity": "sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==", + "dev": true, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dev": true, + "dependencies": { + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "devOptional": true, + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/dom-accessibility-api": { + "version": "0.5.16", + "resolved": "https://registry.npmjs.org/dom-accessibility-api/-/dom-accessibility-api-0.5.16.tgz", + "integrity": "sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg==", + "dev": true + }, + "node_modules/dom-helpers": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-5.2.1.tgz", + "integrity": "sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==", + "dependencies": { + "@babel/runtime": "^7.8.7", + "csstype": "^3.0.2" + } + }, + "node_modules/domexception": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/domexception/-/domexception-4.0.0.tgz", + "integrity": "sha512-A2is4PLG+eeSfoTMA95/s4pvAoSo2mKtiM5jlHkAVewmiO8ISFTFKZjH7UAM1Atli/OT/7JHOrJRJiMKUZKYBw==", + "dependencies": { + "webidl-conversions": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/electron-to-chromium": { + "version": "1.4.582", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.582.tgz", + "integrity": "sha512-89o0MGoocwYbzqUUjc+VNpeOFSOK9nIdC5wY4N+PVUarUK0MtjyTjks75AZS2bW4Kl8MdewdFsWaH0jLy+JNoA==", + "dev": true + }, + "node_modules/emittery": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.13.1.tgz", + "integrity": "sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sindresorhus/emittery?sponsor=1" + } + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/engine.io-client": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-6.5.2.tgz", + "integrity": "sha512-CQZqbrpEYnrpGqC07a9dJDz4gePZUgTPMU3NKJPSeQOyw27Tst4Pl3FemKoFGAlHzgZmKjoRmiJvbWfhCXUlIg==", + "dependencies": { + "@socket.io/component-emitter": "~3.1.0", + "debug": "~4.3.1", + "engine.io-parser": "~5.2.1", + "ws": "~8.11.0", + "xmlhttprequest-ssl": "~2.0.0" + } + }, + "node_modules/engine.io-parser": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.2.1.tgz", + "integrity": "sha512-9JktcM3u18nU9N2Lz3bWeBgxVgOKpw7yhRaoxQA3FUDZzzw+9WlA6p4G4u0RixNkg14fH7EfEc/RhpurtiROTQ==", + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/es-get-iterator": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.3.tgz", + "integrity": "sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.3", + "has-symbols": "^1.0.3", + "is-arguments": "^1.1.1", + "is-map": "^2.0.2", + "is-set": "^2.0.2", + "is-string": "^1.0.7", + "isarray": "^2.0.5", + "stop-iteration-iterator": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/esbuild": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.20.2.tgz", + "integrity": "sha512-WdOOppmUNU+IbZ0PaDiTst80zjnrOkyJNHoKupIcVyU8Lvla3Ugx94VzkQ32Ijqd7UhHJy75gNWDMUekcrSJ6g==", + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.20.2", + "@esbuild/android-arm": "0.20.2", + "@esbuild/android-arm64": "0.20.2", + "@esbuild/android-x64": "0.20.2", + "@esbuild/darwin-arm64": "0.20.2", + "@esbuild/darwin-x64": "0.20.2", + "@esbuild/freebsd-arm64": "0.20.2", + "@esbuild/freebsd-x64": "0.20.2", + "@esbuild/linux-arm": "0.20.2", + "@esbuild/linux-arm64": "0.20.2", + "@esbuild/linux-ia32": "0.20.2", + "@esbuild/linux-loong64": "0.20.2", + "@esbuild/linux-mips64el": "0.20.2", + "@esbuild/linux-ppc64": "0.20.2", + "@esbuild/linux-riscv64": "0.20.2", + "@esbuild/linux-s390x": "0.20.2", + "@esbuild/linux-x64": "0.20.2", + "@esbuild/netbsd-x64": "0.20.2", + "@esbuild/openbsd-x64": "0.20.2", + "@esbuild/sunos-x64": "0.20.2", + "@esbuild/win32-arm64": "0.20.2", + "@esbuild/win32-ia32": "0.20.2", + "@esbuild/win32-x64": "0.20.2" + } + }, + "node_modules/escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/escodegen": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.1.0.tgz", + "integrity": "sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==", + "dependencies": { + "esprima": "^4.0.1", + "estraverse": "^5.2.0", + "esutils": "^2.0.2" + }, + "bin": { + "escodegen": "bin/escodegen.js", + "esgenerate": "bin/esgenerate.js" + }, + "engines": { + "node": ">=6.0" + }, + "optionalDependencies": { + "source-map": "~0.6.1" + } + }, + "node_modules/eslint": { + "version": "8.50.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.50.0.tgz", + "integrity": "sha512-FOnOGSuFuFLv/Sa+FDVRZl4GGVAAFFi8LecRsI5a1tMO5HIE8nCm4ivAlzt4dT3ol/PaaGC0rJEEXQmHJBGoOg==", + "devOptional": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.2", + "@eslint/js": "8.50.0", + "@humanwhocodes/config-array": "^0.11.11", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", + "ajv": "^6.12.4", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.3", + "espree": "^9.6.1", + "esquery": "^1.4.2", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "globals": "^13.19.0", + "graphemer": "^1.4.0", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3", + "strip-ansi": "^6.0.1", + "text-table": "^0.2.0" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-plugin-react-hooks": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.0.tgz", + "integrity": "sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==", + "dev": true, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0" + } + }, + "node_modules/eslint-plugin-react-refresh": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-refresh/-/eslint-plugin-react-refresh-0.4.3.tgz", + "integrity": "sha512-Hh0wv8bUNY877+sI0BlCUlsS0TYYQqvzEwJsJJPM2WF4RnTStSnSR3zdJYa2nPOJgg3UghXi54lVyMSmpCalzA==", + "dev": true, + "peerDependencies": { + "eslint": ">=7" + } + }, + "node_modules/eslint-scope": { + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", + "devOptional": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "devOptional": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/espree": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", + "devOptional": true, + "dependencies": { + "acorn": "^8.9.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/esquery": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", + "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", + "devOptional": true, + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "devOptional": true, + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/exenv": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/exenv/-/exenv-1.2.2.tgz", + "integrity": "sha512-Z+ktTxTwv9ILfgKCk32OX3n/doe+OcLTRtqK9pcL+JsP3J1/VW8Uvl4ZjLlKqeW4rzK4oesDOGMEMRIZqtP4Iw==" + }, + "node_modules/exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/expect": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/expect/-/expect-29.7.0.tgz", + "integrity": "sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw==", + "dev": true, + "dependencies": { + "@jest/expect-utils": "^29.7.0", + "jest-get-type": "^29.6.3", + "jest-matcher-utils": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "devOptional": true + }, + "node_modules/fast-glob": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.1.tgz", + "integrity": "sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==", + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-glob/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "devOptional": true + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "devOptional": true + }, + "node_modules/fastq": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", + "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/fb-watchman": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", + "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", + "dev": true, + "dependencies": { + "bser": "2.1.1" + } + }, + "node_modules/file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "devOptional": true, + "dependencies": { + "flat-cache": "^3.0.4" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/find-root": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz", + "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==" + }, + "node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "devOptional": true, + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/flat-cache": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.1.0.tgz", + "integrity": "sha512-OHx4Qwrrt0E4jEIcI5/Xb+f+QmJYNj2rrK8wiIdQOIrB9WrrJL8cjZvXdXuBTkkEwEqLycb5BeZDV1o2i9bTew==", + "devOptional": true, + "dependencies": { + "flatted": "^3.2.7", + "keyv": "^4.5.3", + "rimraf": "^3.0.2" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/flatted": { + "version": "3.2.9", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.9.tgz", + "integrity": "sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==", + "devOptional": true + }, + "node_modules/follow-redirects": { + "version": "1.15.5", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.5.tgz", + "integrity": "sha512-vSFWUON1B+yAw1VN4xMfxgn5fTUiaOzAJCKBwIIgT/+7CuGy9+r+5gITvP62j3RmaD5Ph65UaERdOSRGUzZtgw==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/for-each": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", + "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", + "dev": true, + "dependencies": { + "is-callable": "^1.1.3" + } + }, + "node_modules/form-data": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", + "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/fs-extra": { + "version": "11.1.1", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.1.1.tgz", + "integrity": "sha512-MGIE4HOvQCeUCzmlHs0vXpih4ysz4wg9qiSAu6cd42lVwPbTM1TjV7RusoyQqMmk/95gdQZX72u+YW+c3eEpFQ==", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "devOptional": true + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true, + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-intrinsic": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.2.tgz", + "integrity": "sha512-0gSo4ml/0j98Y3lngkFEot/zhiCeWsbYIlZ+uZOVgzLyLaUw7wxUL+nCTP0XJvJg1AXulJRI3UJi8GsbDuxdGA==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.2", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "hasown": "^2.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-package-type": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", + "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", + "dev": true, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/gift-pegjs": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/gift-pegjs/-/gift-pegjs-0.2.1.tgz", + "integrity": "sha512-yNK6GFuV2jbscIktKFryDeEwoQ0XJDAK3haywbssSrownLFlafr+SCQ1yReUeOAVNJ94cUt3QMR4GqUjovaiuQ==", + "dependencies": { + "pegjs": "^0.10.x" + } + }, + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "devOptional": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "devOptional": true, + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/globals": { + "version": "13.23.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.23.0.tgz", + "integrity": "sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==", + "devOptional": true, + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "dev": true, + "dependencies": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" + }, + "node_modules/graphemer": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", + "devOptional": true + }, + "node_modules/harmony-reflect": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/harmony-reflect/-/harmony-reflect-1.6.2.tgz", + "integrity": "sha512-HIp/n38R9kQjDEziXyDTuW3vvoxxyxjxFzXLrBr18uB47GnSt+G9D29fqrpM5ZkspMcPICud3XsBJQ4Y2URg8g==", + "dev": true + }, + "node_modules/has-bigints": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", + "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/has-property-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.1.tgz", + "integrity": "sha512-VsX8eaIewvas0xnvinAe9bw4WfIeODpGYikiWYLH+dma0Jw6KHYqWiWfhQlgOVK8D6PvjubK5Uc4P0iIhIcNVg==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.2.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", + "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "dev": true, + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/hasown": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz", + "integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/hoist-non-react-statics": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz", + "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==", + "dependencies": { + "react-is": "^16.7.0" + } + }, + "node_modules/html-encoding-sniffer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-3.0.0.tgz", + "integrity": "sha512-oWv4T4yJ52iKrufjnyZPkrN0CH3QnrUqdB6In1g5Fe1mia8GmF36gnfNySxoZtxD5+NmYw1EElVXiBk93UeskA==", + "dependencies": { + "whatwg-encoding": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "dev": true + }, + "node_modules/http-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", + "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", + "dependencies": { + "@tootallnate/once": "2", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "dependencies": { + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "dev": true, + "engines": { + "node": ">=10.17.0" + } + }, + "node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/identity-obj-proxy": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/identity-obj-proxy/-/identity-obj-proxy-3.0.0.tgz", + "integrity": "sha512-00n6YnVHKrinT9t0d9+5yZC6UBNJANpYEQvL2LlX6Ab9lnmxzIRcEmTPuyGScvl1+jKuCICX1Z0Ab1pPKKdikA==", + "dev": true, + "dependencies": { + "harmony-reflect": "^1.4.6" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/ignore": { + "version": "5.2.4", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", + "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", + "devOptional": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/import-local": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", + "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", + "dev": true, + "dependencies": { + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" + }, + "bin": { + "import-local-fixture": "fixtures/cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "devOptional": true, + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "devOptional": true, + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "devOptional": true + }, + "node_modules/internal-slot": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.6.tgz", + "integrity": "sha512-Xj6dv+PsbtwyPpEflsejS+oIZxmMlV44zAhG479uYu89MsjcYOhCFnNyKrkJrihbsiasQyY0afoCl/9BLR65bg==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.2.2", + "hasown": "^2.0.0", + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/is-arguments": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", + "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-array-buffer": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz", + "integrity": "sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.2.0", + "is-typed-array": "^1.1.10" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==" + }, + "node_modules/is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "dev": true, + "dependencies": { + "has-bigints": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-boolean-object": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-core-module": { + "version": "2.13.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", + "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", + "dependencies": { + "hasown": "^2.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "dev": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-generator-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", + "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-map": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.2.tgz", + "integrity": "sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-number-object": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", + "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", + "dev": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "devOptional": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-plain-obj": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", + "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-potential-custom-element-name": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", + "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==" + }, + "node_modules/is-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-set": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.2.tgz", + "integrity": "sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-shared-array-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", + "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-string": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "dev": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-symbol": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "dev": true, + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-typed-array": { + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.12.tgz", + "integrity": "sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg==", + "dev": true, + "dependencies": { + "which-typed-array": "^1.1.11" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakmap": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.1.tgz", + "integrity": "sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakset": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.2.tgz", + "integrity": "sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "dev": true + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "devOptional": true + }, + "node_modules/istanbul-lib-coverage": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", + "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.1.tgz", + "integrity": "sha512-EAMEJBsYuyyztxMxW3g7ugGPkrZsV57v0Hmv3mm1uQsmB+QnZuepg731CRaIgeUVSdmsTngOkSnauNF8p7FIhA==", + "dev": true, + "dependencies": { + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^7.5.4" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-report": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", + "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", + "dev": true, + "dependencies": { + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^4.0.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-source-maps": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", + "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", + "dev": true, + "dependencies": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-reports": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.6.tgz", + "integrity": "sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg==", + "dev": true, + "dependencies": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest/-/jest-29.7.0.tgz", + "integrity": "sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==", + "dev": true, + "dependencies": { + "@jest/core": "^29.7.0", + "@jest/types": "^29.6.3", + "import-local": "^3.0.2", + "jest-cli": "^29.7.0" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/jest-changed-files": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-29.7.0.tgz", + "integrity": "sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w==", + "dev": true, + "dependencies": { + "execa": "^5.0.0", + "jest-util": "^29.7.0", + "p-limit": "^3.1.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-circus": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-29.7.0.tgz", + "integrity": "sha512-3E1nCMgipcTkCocFwM90XXQab9bS+GMsjdpmPrlelaxwD93Ad8iVEjX/vvHPdLPnFf+L40u+5+iutRdA1N9myw==", + "dev": true, + "dependencies": { + "@jest/environment": "^29.7.0", + "@jest/expect": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "dedent": "^1.0.0", + "is-generator-fn": "^2.0.0", + "jest-each": "^29.7.0", + "jest-matcher-utils": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-runtime": "^29.7.0", + "jest-snapshot": "^29.7.0", + "jest-util": "^29.7.0", + "p-limit": "^3.1.0", + "pretty-format": "^29.7.0", + "pure-rand": "^6.0.0", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-circus/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-circus/node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "dev": true, + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-circus/node_modules/react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==", + "dev": true + }, + "node_modules/jest-cli": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-29.7.0.tgz", + "integrity": "sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==", + "dev": true, + "dependencies": { + "@jest/core": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/types": "^29.6.3", + "chalk": "^4.0.0", + "create-jest": "^29.7.0", + "exit": "^0.1.2", + "import-local": "^3.0.2", + "jest-config": "^29.7.0", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "yargs": "^17.3.1" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/jest-config": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-29.7.0.tgz", + "integrity": "sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ==", + "dev": true, + "dependencies": { + "@babel/core": "^7.11.6", + "@jest/test-sequencer": "^29.7.0", + "@jest/types": "^29.6.3", + "babel-jest": "^29.7.0", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "deepmerge": "^4.2.2", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-circus": "^29.7.0", + "jest-environment-node": "^29.7.0", + "jest-get-type": "^29.6.3", + "jest-regex-util": "^29.6.3", + "jest-resolve": "^29.7.0", + "jest-runner": "^29.7.0", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "micromatch": "^4.0.4", + "parse-json": "^5.2.0", + "pretty-format": "^29.7.0", + "slash": "^3.0.0", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@types/node": "*", + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "ts-node": { + "optional": true + } + } + }, + "node_modules/jest-config/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-config/node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "dev": true, + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-config/node_modules/react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==", + "dev": true + }, + "node_modules/jest-diff": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.7.0.tgz", + "integrity": "sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "diff-sequences": "^29.6.3", + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-diff/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-diff/node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "dev": true, + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-diff/node_modules/react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==", + "dev": true + }, + "node_modules/jest-docblock": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.7.0.tgz", + "integrity": "sha512-q617Auw3A612guyaFgsbFeYpNP5t2aoUNLwBUbc/0kD1R4t9ixDbyFTHd1nok4epoVFpr7PmeWHrhvuV3XaJ4g==", + "dev": true, + "dependencies": { + "detect-newline": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-each": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-29.7.0.tgz", + "integrity": "sha512-gns+Er14+ZrEoC5fhOfYCY1LOHHr0TI+rQUHZS8Ttw2l7gl+80eHc/gFf2Ktkw0+SIACDTeWvpFcv3B04VembQ==", + "dev": true, + "dependencies": { + "@jest/types": "^29.6.3", + "chalk": "^4.0.0", + "jest-get-type": "^29.6.3", + "jest-util": "^29.7.0", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-each/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-each/node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "dev": true, + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-each/node_modules/react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==", + "dev": true + }, + "node_modules/jest-environment-jsdom": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-29.7.0.tgz", + "integrity": "sha512-k9iQbsf9OyOfdzWH8HDmrRT0gSIcX+FLNW7IQq94tFX0gynPwqDTW0Ho6iMVNjGz/nb+l/vW3dWM2bbLLpkbXA==", + "dependencies": { + "@jest/environment": "^29.7.0", + "@jest/fake-timers": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/jsdom": "^20.0.0", + "@types/node": "*", + "jest-mock": "^29.7.0", + "jest-util": "^29.7.0", + "jsdom": "^20.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "canvas": "^2.5.0" + }, + "peerDependenciesMeta": { + "canvas": { + "optional": true + } + } + }, + "node_modules/jest-environment-node": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.7.0.tgz", + "integrity": "sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw==", + "dev": true, + "dependencies": { + "@jest/environment": "^29.7.0", + "@jest/fake-timers": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "jest-mock": "^29.7.0", + "jest-util": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-get-type": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.6.3.tgz", + "integrity": "sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==", + "dev": true, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-haste-map": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.7.0.tgz", + "integrity": "sha512-fP8u2pyfqx0K1rGn1R9pyE0/KTn+G7PxktWidOBTqFPLYX0b9ksaMFkhK5vrS3DVun09pckLdlx90QthlW7AmA==", + "dev": true, + "dependencies": { + "@jest/types": "^29.6.3", + "@types/graceful-fs": "^4.1.3", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^29.6.3", + "jest-util": "^29.7.0", + "jest-worker": "^29.7.0", + "micromatch": "^4.0.4", + "walker": "^1.0.8" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "optionalDependencies": { + "fsevents": "^2.3.2" + } + }, + "node_modules/jest-leak-detector": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-29.7.0.tgz", + "integrity": "sha512-kYA8IJcSYtST2BY9I+SMC32nDpBT3J2NvWJx8+JCuCdl/CR1I4EKUJROiP8XtCcxqgTTBGJNdbB1A8XRKbTetw==", + "dev": true, + "dependencies": { + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-leak-detector/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-leak-detector/node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "dev": true, + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-leak-detector/node_modules/react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==", + "dev": true + }, + "node_modules/jest-matcher-utils": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.7.0.tgz", + "integrity": "sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "jest-diff": "^29.7.0", + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-matcher-utils/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-matcher-utils/node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "dev": true, + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-matcher-utils/node_modules/react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==", + "dev": true + }, + "node_modules/jest-message-util": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.7.0.tgz", + "integrity": "sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w==", + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^29.6.3", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^29.7.0", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-message-util/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-message-util/node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-message-util/node_modules/react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==" + }, + "node_modules/jest-mock": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.7.0.tgz", + "integrity": "sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw==", + "dependencies": { + "@jest/types": "^29.6.3", + "@types/node": "*", + "jest-util": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-pnp-resolver": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", + "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", + "dev": true, + "engines": { + "node": ">=6" + }, + "peerDependencies": { + "jest-resolve": "*" + }, + "peerDependenciesMeta": { + "jest-resolve": { + "optional": true + } + } + }, + "node_modules/jest-regex-util": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.6.3.tgz", + "integrity": "sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg==", + "dev": true, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-resolve": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-29.7.0.tgz", + "integrity": "sha512-IOVhZSrg+UvVAshDSDtHyFCCBUl/Q3AAJv8iZ6ZjnZ74xzvwuzLXid9IIIPgTnY62SJjfuupMKZsZQRsCvxEgA==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "resolve": "^1.20.0", + "resolve.exports": "^2.0.0", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-resolve-dependencies": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-29.7.0.tgz", + "integrity": "sha512-un0zD/6qxJ+S0et7WxeI3H5XSe9lTBBR7bOHCHXkKR6luG5mwDDlIzVQ0V5cZCuoTgEdcdwzTghYkTWfubi+nA==", + "dev": true, + "dependencies": { + "jest-regex-util": "^29.6.3", + "jest-snapshot": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-runner": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-29.7.0.tgz", + "integrity": "sha512-fsc4N6cPCAahybGBfTRcq5wFR6fpLznMg47sY5aDpsoejOcVYFb07AHuSnR0liMcPTgBsA3ZJL6kFOjPdoNipQ==", + "dev": true, + "dependencies": { + "@jest/console": "^29.7.0", + "@jest/environment": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "emittery": "^0.13.1", + "graceful-fs": "^4.2.9", + "jest-docblock": "^29.7.0", + "jest-environment-node": "^29.7.0", + "jest-haste-map": "^29.7.0", + "jest-leak-detector": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-resolve": "^29.7.0", + "jest-runtime": "^29.7.0", + "jest-util": "^29.7.0", + "jest-watcher": "^29.7.0", + "jest-worker": "^29.7.0", + "p-limit": "^3.1.0", + "source-map-support": "0.5.13" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-runtime": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-29.7.0.tgz", + "integrity": "sha512-gUnLjgwdGqW7B4LvOIkbKs9WGbn+QLqRQQ9juC6HndeDiezIwhDP+mhMwHWCEcfQ5RUXa6OPnFF8BJh5xegwwQ==", + "dev": true, + "dependencies": { + "@jest/environment": "^29.7.0", + "@jest/fake-timers": "^29.7.0", + "@jest/globals": "^29.7.0", + "@jest/source-map": "^29.6.3", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "cjs-module-lexer": "^1.0.0", + "collect-v8-coverage": "^1.0.0", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-mock": "^29.7.0", + "jest-regex-util": "^29.6.3", + "jest-resolve": "^29.7.0", + "jest-snapshot": "^29.7.0", + "jest-util": "^29.7.0", + "slash": "^3.0.0", + "strip-bom": "^4.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-snapshot": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-29.7.0.tgz", + "integrity": "sha512-Rm0BMWtxBcioHr1/OX5YCP8Uov4riHvKPknOGs804Zg9JGZgmIBkbtlxJC/7Z4msKYVbIJtfU+tKb8xlYNfdkw==", + "dev": true, + "dependencies": { + "@babel/core": "^7.11.6", + "@babel/generator": "^7.7.2", + "@babel/plugin-syntax-jsx": "^7.7.2", + "@babel/plugin-syntax-typescript": "^7.7.2", + "@babel/types": "^7.3.3", + "@jest/expect-utils": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "babel-preset-current-node-syntax": "^1.0.0", + "chalk": "^4.0.0", + "expect": "^29.7.0", + "graceful-fs": "^4.2.9", + "jest-diff": "^29.7.0", + "jest-get-type": "^29.6.3", + "jest-matcher-utils": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0", + "natural-compare": "^1.4.0", + "pretty-format": "^29.7.0", + "semver": "^7.5.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-snapshot/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-snapshot/node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "dev": true, + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-snapshot/node_modules/react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==", + "dev": true + }, + "node_modules/jest-util": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.7.0.tgz", + "integrity": "sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==", + "dependencies": { + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-validate": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-29.7.0.tgz", + "integrity": "sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw==", + "dev": true, + "dependencies": { + "@jest/types": "^29.6.3", + "camelcase": "^6.2.0", + "chalk": "^4.0.0", + "jest-get-type": "^29.6.3", + "leven": "^3.1.0", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-validate/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-validate/node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/jest-validate/node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "dev": true, + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-validate/node_modules/react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==", + "dev": true + }, + "node_modules/jest-watcher": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-29.7.0.tgz", + "integrity": "sha512-49Fg7WXkU3Vl2h6LbLtMQ/HyB6rXSIX7SqvBLQmssRBGN9I0PNvPmAmCWSOY6SOvrjhI/F7/bGAv9RtnsPA03g==", + "dev": true, + "dependencies": { + "@jest/test-result": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "emittery": "^0.13.1", + "jest-util": "^29.7.0", + "string-length": "^4.0.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-worker": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.7.0.tgz", + "integrity": "sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==", + "dev": true, + "dependencies": { + "@types/node": "*", + "jest-util": "^29.7.0", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + }, + "node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "devOptional": true, + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsdom": { + "version": "20.0.3", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-20.0.3.tgz", + "integrity": "sha512-SYhBvTh89tTfCD/CRdSOm13mOBa42iTaTyfyEWBdKcGdPxPtLFBXuHR8XHb33YNYaP+lLbmSvBTsnoesCNJEsQ==", + "dependencies": { + "abab": "^2.0.6", + "acorn": "^8.8.1", + "acorn-globals": "^7.0.0", + "cssom": "^0.5.0", + "cssstyle": "^2.3.0", + "data-urls": "^3.0.2", + "decimal.js": "^10.4.2", + "domexception": "^4.0.0", + "escodegen": "^2.0.0", + "form-data": "^4.0.0", + "html-encoding-sniffer": "^3.0.0", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.1", + "is-potential-custom-element-name": "^1.0.1", + "nwsapi": "^2.2.2", + "parse5": "^7.1.1", + "saxes": "^6.0.0", + "symbol-tree": "^3.2.4", + "tough-cookie": "^4.1.2", + "w3c-xmlserializer": "^4.0.0", + "webidl-conversions": "^7.0.0", + "whatwg-encoding": "^2.0.0", + "whatwg-mimetype": "^3.0.0", + "whatwg-url": "^11.0.0", + "ws": "^8.11.0", + "xml-name-validator": "^4.0.0" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "canvas": "^2.5.0" + }, + "peerDependenciesMeta": { + "canvas": { + "optional": true + } + } + }, + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true, + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", + "devOptional": true + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==" + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "devOptional": true + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "devOptional": true + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/katex": { + "version": "0.16.9", + "resolved": "https://registry.npmjs.org/katex/-/katex-0.16.9.tgz", + "integrity": "sha512-fsSYjWS0EEOwvy81j3vRA8TEAhQhKiqO+FQaKWp0m39qwOzHVBgAUBIXWj1pB+O2W3fIpNa6Y9KSKCVbfPhyAQ==", + "funding": [ + "https://opencollective.com/katex", + "https://github.com/sponsors/katex" + ], + "dependencies": { + "commander": "^8.3.0" + }, + "bin": { + "katex": "cli.js" + } + }, + "node_modules/keyv": { + "version": "4.5.3", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.3.tgz", + "integrity": "sha512-QCiSav9WaX1PgETJ+SpNnx2PRRapJ/oRSXM4VO5OGYGSjrxbKPVFVhB3l2OCbLCk329N8qyAtsJjSjvVBWzEug==", + "devOptional": true, + "dependencies": { + "json-buffer": "3.0.1" + } + }, + "node_modules/kleur": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", + "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/leven": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", + "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "devOptional": true, + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==" + }, + "node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "devOptional": true, + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true + }, + "node_modules/lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==" + }, + "node_modules/lodash.memoize": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", + "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==", + "dev": true + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "devOptional": true + }, + "node_modules/lodash.pick": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz", + "integrity": "sha512-hXt6Ul/5yWjfklSGvLQl8vM//l3FtyHZeuelpzK6mm99pNvN9yTDruNZPEJZD1oWrqo+izBmB7oUfWgcCX7s4Q==" + }, + "node_modules/longest-streak": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/longest-streak/-/longest-streak-3.1.0.tgz", + "integrity": "sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "dependencies": { + "js-tokens": "^3.0.0 || ^4.0.0" + }, + "bin": { + "loose-envify": "cli.js" + } + }, + "node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/lz-string": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/lz-string/-/lz-string-1.5.0.tgz", + "integrity": "sha512-h5bgJWpxJNswbU7qCrV0tIKQCaS3blPDrqKWx+QxzuzL1zGUzij9XCWLrSLsJPu5t+eWA/ycetzYAO5IOMcWAQ==", + "dev": true, + "bin": { + "lz-string": "bin/bin.js" + } + }, + "node_modules/make-dir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", + "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", + "dev": true, + "dependencies": { + "semver": "^7.5.3" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/make-error": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", + "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==" + }, + "node_modules/makeerror": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", + "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", + "dev": true, + "dependencies": { + "tmpl": "1.0.5" + } + }, + "node_modules/marked": { + "version": "9.1.2", + "resolved": "https://registry.npmjs.org/marked/-/marked-9.1.2.tgz", + "integrity": "sha512-qoKMJqK0w6vkLk8+KnKZAH6neUZSNaQqVZ/h2yZ9S7CbLuFHyS2viB0jnqcWF9UKjwsAbMrQtnQhdmdvOVOw9w==", + "bin": { + "marked": "bin/marked.js" + }, + "engines": { + "node": ">= 16" + } + }, + "node_modules/mdast-util-from-markdown": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-2.0.0.tgz", + "integrity": "sha512-n7MTOr/z+8NAX/wmhhDji8O3bRvPTV/U0oTCaZJkjhPSKTPhS3xufVhKGF8s1pJ7Ox4QgoIU7KHseh09S+9rTA==", + "dependencies": { + "@types/mdast": "^4.0.0", + "@types/unist": "^3.0.0", + "decode-named-character-reference": "^1.0.0", + "devlop": "^1.0.0", + "mdast-util-to-string": "^4.0.0", + "micromark": "^4.0.0", + "micromark-util-decode-numeric-character-reference": "^2.0.0", + "micromark-util-decode-string": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0", + "unist-util-stringify-position": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-math": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-math/-/mdast-util-math-3.0.0.tgz", + "integrity": "sha512-Tl9GBNeG/AhJnQM221bJR2HPvLOSnLE/T9cJI9tlc6zwQk2nPk/4f0cHkOdEixQPC/j8UtKDdITswvLAy1OZ1w==", + "dependencies": { + "@types/hast": "^3.0.0", + "@types/mdast": "^4.0.0", + "devlop": "^1.0.0", + "longest-streak": "^3.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.1.0", + "unist-util-remove-position": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-phrasing": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-phrasing/-/mdast-util-phrasing-4.0.0.tgz", + "integrity": "sha512-xadSsJayQIucJ9n053dfQwVu1kuXg7jCTdYsMK8rqzKZh52nLfSH/k0sAxE0u+pj/zKZX+o5wB+ML5mRayOxFA==", + "dependencies": { + "@types/mdast": "^4.0.0", + "unist-util-is": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-to-markdown": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-2.1.0.tgz", + "integrity": "sha512-SR2VnIEdVNCJbP6y7kVTJgPLifdr8WEU440fQec7qHoHOUz/oJ2jmNRqdDQ3rbiStOXb2mCDGTuwsK5OPUgYlQ==", + "dependencies": { + "@types/mdast": "^4.0.0", + "@types/unist": "^3.0.0", + "longest-streak": "^3.0.0", + "mdast-util-phrasing": "^4.0.0", + "mdast-util-to-string": "^4.0.0", + "micromark-util-decode-string": "^2.0.0", + "unist-util-visit": "^5.0.0", + "zwitch": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-to-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-4.0.0.tgz", + "integrity": "sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==", + "dependencies": { + "@types/mdast": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/micromark": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/micromark/-/micromark-4.0.0.tgz", + "integrity": "sha512-o/sd0nMof8kYff+TqcDx3VSrgBTcZpSvYcAHIfHhv5VAuNmisCxjhx6YmxS8PFEpb9z5WKWKPdzf0jM23ro3RQ==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "@types/debug": "^4.0.0", + "debug": "^4.0.0", + "decode-named-character-reference": "^1.0.0", + "devlop": "^1.0.0", + "micromark-core-commonmark": "^2.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-combine-extensions": "^2.0.0", + "micromark-util-decode-numeric-character-reference": "^2.0.0", + "micromark-util-encode": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-resolve-all": "^2.0.0", + "micromark-util-sanitize-uri": "^2.0.0", + "micromark-util-subtokenize": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-core-commonmark": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-core-commonmark/-/micromark-core-commonmark-2.0.0.tgz", + "integrity": "sha512-jThOz/pVmAYUtkroV3D5c1osFXAMv9e0ypGDOIZuCeAe91/sD6BoE2Sjzt30yuXtwOYUmySOhMas/PVyh02itA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "decode-named-character-reference": "^1.0.0", + "devlop": "^1.0.0", + "micromark-factory-destination": "^2.0.0", + "micromark-factory-label": "^2.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-factory-title": "^2.0.0", + "micromark-factory-whitespace": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-classify-character": "^2.0.0", + "micromark-util-html-tag-name": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-resolve-all": "^2.0.0", + "micromark-util-subtokenize": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-extension-math": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/micromark-extension-math/-/micromark-extension-math-3.0.0.tgz", + "integrity": "sha512-iJ2Q28vBoEovLN5o3GO12CpqorQRYDPT+p4zW50tGwTfJB+iv/VnB6Ini+gqa24K97DwptMBBIvVX6Bjk49oyQ==", + "dependencies": { + "@types/katex": "^0.16.0", + "devlop": "^1.0.0", + "katex": "^0.16.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/micromark-factory-destination": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-destination/-/micromark-factory-destination-2.0.0.tgz", + "integrity": "sha512-j9DGrQLm/Uhl2tCzcbLhy5kXsgkHUrjJHg4fFAeoMRwJmJerT9aw4FEhIbZStWN8A3qMwOp1uzHr4UL8AInxtA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-label": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-label/-/micromark-factory-label-2.0.0.tgz", + "integrity": "sha512-RR3i96ohZGde//4WSe/dJsxOX6vxIg9TimLAS3i4EhBAFx8Sm5SmqVfR8E87DPSR31nEAjZfbt91OMZWcNgdZw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "devlop": "^1.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-space": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-2.0.0.tgz", + "integrity": "sha512-TKr+LIDX2pkBJXFLzpyPyljzYK3MtmllMUMODTQJIUfDGncESaqB90db9IAUcz4AZAJFdd8U9zOp9ty1458rxg==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-title": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-title/-/micromark-factory-title-2.0.0.tgz", + "integrity": "sha512-jY8CSxmpWLOxS+t8W+FG3Xigc0RDQA9bKMY/EwILvsesiRniiVMejYTE4wumNc2f4UbAa4WsHqe3J1QS1sli+A==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-whitespace": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-whitespace/-/micromark-factory-whitespace-2.0.0.tgz", + "integrity": "sha512-28kbwaBjc5yAI1XadbdPYHX/eDnqaUFVikLwrO7FDnKG7lpgxnvk/XGRhX/PN0mOZ+dBSZ+LgunHS+6tYQAzhA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-character": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-2.0.1.tgz", + "integrity": "sha512-3wgnrmEAJ4T+mGXAUfMvMAbxU9RDG43XmGce4j6CwPtVxB3vfwXSZ6KhFwDzZ3mZHhmPimMAXg71veiBGzeAZw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-chunked": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-chunked/-/micromark-util-chunked-2.0.0.tgz", + "integrity": "sha512-anK8SWmNphkXdaKgz5hJvGa7l00qmcaUQoMYsBwDlSKFKjc6gjGXPDw3FNL3Nbwq5L8gE+RCbGqTw49FK5Qyvg==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^2.0.0" + } + }, + "node_modules/micromark-util-classify-character": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-classify-character/-/micromark-util-classify-character-2.0.0.tgz", + "integrity": "sha512-S0ze2R9GH+fu41FA7pbSqNWObo/kzwf8rN/+IGlW/4tC6oACOs8B++bh+i9bVyNnwCcuksbFwsBme5OCKXCwIw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-combine-extensions": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-combine-extensions/-/micromark-util-combine-extensions-2.0.0.tgz", + "integrity": "sha512-vZZio48k7ON0fVS3CUgFatWHoKbbLTK/rT7pzpJ4Bjp5JjkZeasRfrS9wsBdDJK2cJLHMckXZdzPSSr1B8a4oQ==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-chunked": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-decode-numeric-character-reference": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-decode-numeric-character-reference/-/micromark-util-decode-numeric-character-reference-2.0.0.tgz", + "integrity": "sha512-pIgcsGxpHEtTG/rPJRz/HOLSqp5VTuIIjXlPI+6JSDlK2oljApusG6KzpS8AF0ENUMCHlC/IBb5B9xdFiVlm5Q==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^2.0.0" + } + }, + "node_modules/micromark-util-decode-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-decode-string/-/micromark-util-decode-string-2.0.0.tgz", + "integrity": "sha512-r4Sc6leeUTn3P6gk20aFMj2ntPwn6qpDZqWvYmAG6NgvFTIlj4WtrAudLi65qYoaGdXYViXYw2pkmn7QnIFasA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "decode-named-character-reference": "^1.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-decode-numeric-character-reference": "^2.0.0", + "micromark-util-symbol": "^2.0.0" + } + }, + "node_modules/micromark-util-encode": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-2.0.0.tgz", + "integrity": "sha512-pS+ROfCXAGLWCOc8egcBvT0kf27GoWMqtdarNfDcjb6YLuV5cM3ioG45Ys2qOVqeqSbjaKg72vU+Wby3eddPsA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-util-html-tag-name": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-html-tag-name/-/micromark-util-html-tag-name-2.0.0.tgz", + "integrity": "sha512-xNn4Pqkj2puRhKdKTm8t1YHC/BAjx6CEwRFXntTaRf/x16aqka6ouVoutm+QdkISTlT7e2zU7U4ZdlDLJd2Mcw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-util-normalize-identifier": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-2.0.0.tgz", + "integrity": "sha512-2xhYT0sfo85FMrUPtHcPo2rrp1lwbDEEzpx7jiH2xXJLqBuy4H0GgXk5ToU8IEwoROtXuL8ND0ttVa4rNqYK3w==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^2.0.0" + } + }, + "node_modules/micromark-util-resolve-all": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-resolve-all/-/micromark-util-resolve-all-2.0.0.tgz", + "integrity": "sha512-6KU6qO7DZ7GJkaCgwBNtplXCvGkJToU86ybBAUdavvgsCiG8lSSvYxr9MhwmQ+udpzywHsl4RpGJsYWG1pDOcA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-sanitize-uri": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-2.0.0.tgz", + "integrity": "sha512-WhYv5UEcZrbAtlsnPuChHUAsu/iBPOVaEVsntLBIdpibO0ddy8OzavZz3iL2xVvBZOpolujSliP65Kq0/7KIYw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-encode": "^2.0.0", + "micromark-util-symbol": "^2.0.0" + } + }, + "node_modules/micromark-util-subtokenize": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-subtokenize/-/micromark-util-subtokenize-2.0.0.tgz", + "integrity": "sha512-vc93L1t+gpR3p8jxeVdaYlbV2jTYteDje19rNSS/H5dlhxUYll5Fy6vJ2cDwP8RnsXi818yGty1ayP55y3W6fg==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "devlop": "^1.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-symbol": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.0.tgz", + "integrity": "sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-util-types": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-2.0.0.tgz", + "integrity": "sha512-oNh6S2WMHWRZrmutsRmDDfkzKtxF+bc2VxLC9dvtrDIRFln627VsFP6fLMgTryGDljgLPjkrzQSDcPrjPyDJ5w==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "dependencies": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/min-indent": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", + "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "node_modules/nanoid": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-5.0.2.tgz", + "integrity": "sha512-2ustYUX1R2rL/Br5B/FMhi8d5/QzvkJ912rBYxskcpu0myTHzSZfTr1LAS2Sm7jxRUObRrSBFoyzwAhL49aVSg==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "bin": { + "nanoid": "bin/nanoid.js" + }, + "engines": { + "node": "^18 || >=20" + } + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "devOptional": true + }, + "node_modules/node-int64": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", + "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", + "dev": true + }, + "node_modules/node-releases": { + "version": "2.0.13", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz", + "integrity": "sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==", + "dev": true + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/nwsapi": { + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.7.tgz", + "integrity": "sha512-ub5E4+FBPKwAZx0UwIQOjYWGHTEq5sPqHQNRN8Z9e4A7u3Tj1weLJsL59yH9vmvqEtBHaOmT6cYQKIZOxp35FQ==" + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-inspect": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.1.tgz", + "integrity": "sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-is": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz", + "integrity": "sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.assign": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", + "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "has-symbols": "^1.0.3", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "devOptional": true, + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dev": true, + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/optionator": { + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz", + "integrity": "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==", + "devOptional": true, + "dependencies": { + "@aashutoshrathi/word-wrap": "^1.2.3", + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "devOptional": true, + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "devOptional": true, + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/parse5": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", + "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==", + "dependencies": { + "entities": "^4.4.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "devOptional": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "devOptional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" + }, + "node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "engines": { + "node": ">=8" + } + }, + "node_modules/pegjs": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/pegjs/-/pegjs-0.10.0.tgz", + "integrity": "sha512-qI5+oFNEGi3L5HAxDwN2LA4Gg7irF70Zs25edhjld9QemOgp0CbvMtbFcMvFtEo1OityPrcCzkQFB8JP/hxgow==", + "bin": { + "pegjs": "bin/pegjs" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pirates": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", + "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dev": true, + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-dir/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/postcss": { + "version": "8.4.31", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", + "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "nanoid": "^3.3.6", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/postcss/node_modules/nanoid": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz", + "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "devOptional": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/pretty-format": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", + "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/pretty-format/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/pretty-format/node_modules/react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", + "dev": true + }, + "node_modules/prompts": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", + "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", + "dev": true, + "dependencies": { + "kleur": "^3.0.3", + "sisteransi": "^1.0.5" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/prop-types": { + "version": "15.8.1", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", + "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", + "dependencies": { + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "react-is": "^16.13.1" + } + }, + "node_modules/proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" + }, + "node_modules/psl": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", + "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==" + }, + "node_modules/punycode": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", + "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", + "engines": { + "node": ">=6" + } + }, + "node_modules/pure-rand": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/pure-rand/-/pure-rand-6.0.4.tgz", + "integrity": "sha512-LA0Y9kxMYv47GIPJy6MI84fqTd2HmYZI83W/kM/SkKfDlajnZYfmXFTxkbY+xSBPkLJxltMa9hIkmdc29eguMA==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/dubzzz" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/fast-check" + } + ] + }, + "node_modules/querystringify": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", + "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==" + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/react": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react/-/react-18.2.0.tgz", + "integrity": "sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==", + "dependencies": { + "loose-envify": "^1.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-dom": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz", + "integrity": "sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==", + "dependencies": { + "loose-envify": "^1.1.0", + "scheduler": "^0.23.0" + }, + "peerDependencies": { + "react": "^18.2.0" + } + }, + "node_modules/react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" + }, + "node_modules/react-latex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/react-latex/-/react-latex-2.0.0.tgz", + "integrity": "sha512-x17uDCfqBgR+5ZF/zplRCuHdEbX22CJlVipOqMUinRMoiOwh5fr3jbjD4zqVQ8pIs4AnF0BWPDR2S7Fyd8Snxw==", + "dependencies": { + "katex": "^0.10.2" + } + }, + "node_modules/react-latex/node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" + }, + "node_modules/react-latex/node_modules/katex": { + "version": "0.10.2", + "resolved": "https://registry.npmjs.org/katex/-/katex-0.10.2.tgz", + "integrity": "sha512-cQOmyIRoMloCoSIOZ1+gEwsksdJZ1EW4SWm3QzxSza/QsnZr6D4U1V9S4q+B/OLm2OQ8TCBecQ8MaIfnScI7cw==", + "dependencies": { + "commander": "^2.19.0" + }, + "bin": { + "katex": "cli.js" + } + }, + "node_modules/react-lifecycles-compat": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz", + "integrity": "sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==" + }, + "node_modules/react-modal": { + "version": "3.16.1", + "resolved": "https://registry.npmjs.org/react-modal/-/react-modal-3.16.1.tgz", + "integrity": "sha512-VStHgI3BVcGo7OXczvnJN7yT2TWHJPDXZWyI/a0ssFNhGZWsPmB8cF0z33ewDXq4VfYMO1vXgiv/g8Nj9NDyWg==", + "dependencies": { + "exenv": "^1.2.0", + "prop-types": "^15.7.2", + "react-lifecycles-compat": "^3.0.0", + "warning": "^4.0.3" + }, + "engines": { + "node": ">=8" + }, + "peerDependencies": { + "react": "^0.14.0 || ^15.0.0 || ^16 || ^17 || ^18", + "react-dom": "^0.14.0 || ^15.0.0 || ^16 || ^17 || ^18" + } + }, + "node_modules/react-router": { + "version": "6.16.0", + "resolved": "https://registry.npmjs.org/react-router/-/react-router-6.16.0.tgz", + "integrity": "sha512-VT4Mmc4jj5YyjpOi5jOf0I+TYzGpvzERy4ckNSvSh2RArv8LLoCxlsZ2D+tc7zgjxcY34oTz2hZaeX5RVprKqA==", + "dependencies": { + "@remix-run/router": "1.9.0" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "react": ">=16.8" + } + }, + "node_modules/react-router-dom": { + "version": "6.16.0", + "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-6.16.0.tgz", + "integrity": "sha512-aTfBLv3mk/gaKLxgRDUPbPw+s4Y/O+ma3rEN1u8EgEpLpPe6gNjIsWt9rxushMHHMb7mSwxRGdGlGdvmFsyPIg==", + "dependencies": { + "@remix-run/router": "1.9.0", + "react-router": "6.16.0" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "react": ">=16.8", + "react-dom": ">=16.8" + } + }, + "node_modules/react-transition-group": { + "version": "4.4.5", + "resolved": "https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.4.5.tgz", + "integrity": "sha512-pZcd1MCJoiKiBR2NRxeCRg13uCXbydPnmB4EOeRrY7480qNWO8IIgQG6zlDkm6uRMsURXPuKq0GWtiM59a5Q6g==", + "dependencies": { + "@babel/runtime": "^7.5.5", + "dom-helpers": "^5.0.1", + "loose-envify": "^1.4.0", + "prop-types": "^15.6.2" + }, + "peerDependencies": { + "react": ">=16.6.0", + "react-dom": ">=16.6.0" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/redent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", + "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", + "dev": true, + "dependencies": { + "indent-string": "^4.0.0", + "strip-indent": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/regenerate": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", + "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", + "dev": true + }, + "node_modules/regenerate-unicode-properties": { + "version": "10.1.1", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.1.tgz", + "integrity": "sha512-X007RyZLsCJVVrjgEFVpLUTZwyOZk3oiL75ZcuYjlIWd6rNJtOjkBwQc5AsRrpbKVkxN6sklw/k/9m2jJYOf8Q==", + "dev": true, + "dependencies": { + "regenerate": "^1.4.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regenerator-runtime": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.0.tgz", + "integrity": "sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA==" + }, + "node_modules/regenerator-transform": { + "version": "0.15.2", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.2.tgz", + "integrity": "sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==", + "dev": true, + "dependencies": { + "@babel/runtime": "^7.8.4" + } + }, + "node_modules/regexp.prototype.flags": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.1.tgz", + "integrity": "sha512-sy6TXMN+hnP/wMy+ISxg3krXx7BAtWVO4UouuCN/ziM9UEne0euamVNafDfvC83bRNr95y0V5iijeDQFUNpvrg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "set-function-name": "^2.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/regexpu-core": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.2.tgz", + "integrity": "sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==", + "dev": true, + "dependencies": { + "@babel/regjsgen": "^0.8.0", + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^10.1.0", + "regjsparser": "^0.9.1", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regjsparser": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.9.1.tgz", + "integrity": "sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==", + "dev": true, + "dependencies": { + "jsesc": "~0.5.0" + }, + "bin": { + "regjsparser": "bin/parser" + } + }, + "node_modules/regjsparser/node_modules/jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", + "dev": true, + "bin": { + "jsesc": "bin/jsesc" + } + }, + "node_modules/remark-math": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/remark-math/-/remark-math-6.0.0.tgz", + "integrity": "sha512-MMqgnP74Igy+S3WwnhQ7kqGlEerTETXMvJhrUzDikVZ2/uogJCb+WHUg97hK9/jcfc0dkD73s3LN8zU49cTEtA==", + "dependencies": { + "@types/mdast": "^4.0.0", + "mdast-util-math": "^3.0.0", + "micromark-extension-math": "^3.0.0", + "unified": "^11.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/requires-port": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", + "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==" + }, + "node_modules/resolve": { + "version": "1.22.8", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", + "dependencies": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-cwd": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", + "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", + "dev": true, + "dependencies": { + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-cwd/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "engines": { + "node": ">=4" + } + }, + "node_modules/resolve.exports": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.2.tgz", + "integrity": "sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "devOptional": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rollup": { + "version": "3.29.4", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.29.4.tgz", + "integrity": "sha512-oWzmBZwvYrU0iJHtDmhsm662rC15FRXmcjCk1xD771dFDx5jJ02ufAQQTn0etB2emNk4J9EZg/yWKpsn9BWGRw==", + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=14.18.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, + "node_modules/saxes": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/saxes/-/saxes-6.0.0.tgz", + "integrity": "sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA==", + "dependencies": { + "xmlchars": "^2.2.0" + }, + "engines": { + "node": ">=v12.22.7" + } + }, + "node_modules/scheduler": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.0.tgz", + "integrity": "sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==", + "dependencies": { + "loose-envify": "^1.1.0" + } + }, + "node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/set-function-length": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.1.1.tgz", + "integrity": "sha512-VoaqjbBJKiWtg4yRcKBQ7g7wnGnLV3M8oLvVWwOk2PdYY6PEFegR1vezXR0tw6fZGF9csVakIRjrJiy2veSBFQ==", + "dev": true, + "dependencies": { + "define-data-property": "^1.1.1", + "get-intrinsic": "^1.2.1", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/set-function-name": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.1.tgz", + "integrity": "sha512-tMNCiqYVkXIZgc2Hnoy2IvC/f8ezc5koaRFkCjrpWzGpCd3qbZXPzVy9MAZzK1ch/X0jvSkojys3oqJN0qCmdA==", + "dev": true, + "dependencies": { + "define-data-property": "^1.0.1", + "functions-have-names": "^1.2.3", + "has-property-descriptors": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "devOptional": true, + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "devOptional": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true + }, + "node_modules/sisteransi": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", + "dev": true + }, + "node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/socket.io-client": { + "version": "4.7.2", + "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-4.7.2.tgz", + "integrity": "sha512-vtA0uD4ibrYD793SOIAwlo8cj6haOeMHrGvwPxJsxH7CeIksqJ+3Zc06RvWTIFgiSqx4A3sOnTXpfAEE2Zyz6w==", + "dependencies": { + "@socket.io/component-emitter": "~3.1.0", + "debug": "~4.3.2", + "engine.io-client": "~6.5.2", + "socket.io-parser": "~4.2.4" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/socket.io-parser": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.2.4.tgz", + "integrity": "sha512-/GbIKmo8ioc+NIWIhwdecY0ge+qVBSMdgxGygevmdHj24bsfgtCmcUUcQ5ZzcylGFHsN3k4HB4Cgkl96KVnuew==", + "dependencies": { + "@socket.io/component-emitter": "~3.1.0", + "debug": "~4.3.1" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "devOptional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-js": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", + "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.13", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz", + "integrity": "sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==", + "dev": true, + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "dev": true + }, + "node_modules/stack-utils": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", + "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", + "dependencies": { + "escape-string-regexp": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/stack-utils/node_modules/escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "engines": { + "node": ">=8" + } + }, + "node_modules/stop-iteration-iterator": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.0.0.tgz", + "integrity": "sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==", + "dev": true, + "dependencies": { + "internal-slot": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/string-length": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", + "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", + "dev": true, + "dependencies": { + "char-regex": "^1.0.2", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-bom": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", + "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/strip-indent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", + "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", + "dev": true, + "dependencies": { + "min-indent": "^1.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "devOptional": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/stylis": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.2.0.tgz", + "integrity": "sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw==" + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/symbol-tree": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", + "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==" + }, + "node_modules/test-exclude": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", + "dev": true, + "dependencies": { + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", + "devOptional": true + }, + "node_modules/tiny-invariant": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.3.1.tgz", + "integrity": "sha512-AD5ih2NlSssTCwsMznbvwMZpJ1cbhkGd2uueNxzv2jDlEeZdU04JQfRnggJQ8DrcVBGjAsCKwFBbDlVNtEMlzw==" + }, + "node_modules/tmpl": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", + "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==", + "dev": true + }, + "node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "engines": { + "node": ">=4" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/tough-cookie": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.3.tgz", + "integrity": "sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw==", + "dependencies": { + "psl": "^1.1.33", + "punycode": "^2.1.1", + "universalify": "^0.2.0", + "url-parse": "^1.5.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/tough-cookie/node_modules/universalify": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", + "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==", + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/tr46": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-3.0.0.tgz", + "integrity": "sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==", + "dependencies": { + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/trough": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/trough/-/trough-2.1.0.tgz", + "integrity": "sha512-AqTiAOLcj85xS7vQ8QkAV41hPDIJ71XJB4RCUrzo/1GM2CQwhkJGaf9Hgr7BOugMRpgGUrqRg/DrBDl4H40+8g==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/ts-api-utils": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.0.3.tgz", + "integrity": "sha512-wNMeqtMz5NtwpT/UZGY5alT+VoKdSsOOP/kqHFcUW1P/VRhH2wJ48+DN2WwUliNbQ976ETwDL0Ifd2VVvgonvg==", + "dev": true, + "engines": { + "node": ">=16.13.0" + }, + "peerDependencies": { + "typescript": ">=4.2.0" + } + }, + "node_modules/ts-jest": { + "version": "29.1.1", + "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.1.1.tgz", + "integrity": "sha512-D6xjnnbP17cC85nliwGiL+tpoKN0StpgE0TeOjXQTU6MVCfsB4v7aW05CgQ/1OywGb0x/oy9hHFnN+sczTiRaA==", + "dev": true, + "dependencies": { + "bs-logger": "0.x", + "fast-json-stable-stringify": "2.x", + "jest-util": "^29.0.0", + "json5": "^2.2.3", + "lodash.memoize": "4.x", + "make-error": "1.x", + "semver": "^7.5.3", + "yargs-parser": "^21.0.1" + }, + "bin": { + "ts-jest": "cli.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@babel/core": ">=7.0.0-beta.0 <8", + "@jest/types": "^29.0.0", + "babel-jest": "^29.0.0", + "jest": "^29.0.0", + "typescript": ">=4.3 <6" + }, + "peerDependenciesMeta": { + "@babel/core": { + "optional": true + }, + "@jest/types": { + "optional": true + }, + "babel-jest": { + "optional": true + }, + "esbuild": { + "optional": true + } + } + }, + "node_modules/ts-node": { + "version": "10.9.1", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.1.tgz", + "integrity": "sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==", + "dependencies": { + "@cspotcode/source-map-support": "^0.8.0", + "@tsconfig/node10": "^1.0.7", + "@tsconfig/node12": "^1.0.7", + "@tsconfig/node14": "^1.0.0", + "@tsconfig/node16": "^1.0.2", + "acorn": "^8.4.1", + "acorn-walk": "^8.1.1", + "arg": "^4.1.0", + "create-require": "^1.1.0", + "diff": "^4.0.1", + "make-error": "^1.1.1", + "v8-compile-cache-lib": "^3.0.1", + "yn": "3.1.1" + }, + "bin": { + "ts-node": "dist/bin.js", + "ts-node-cwd": "dist/bin-cwd.js", + "ts-node-esm": "dist/bin-esm.js", + "ts-node-script": "dist/bin-script.js", + "ts-node-transpile-only": "dist/bin-transpile.js", + "ts-script": "dist/bin-script-deprecated.js" + }, + "peerDependencies": { + "@swc/core": ">=1.2.50", + "@swc/wasm": ">=1.2.50", + "@types/node": "*", + "typescript": ">=2.7" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true + }, + "@swc/wasm": { + "optional": true + } + } + }, + "node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "devOptional": true, + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/type-detect": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", + "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", + "engines": { + "node": ">=4" + } + }, + "node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "devOptional": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/typescript": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.2.2.tgz", + "integrity": "sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w==", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/undici-types": { + "version": "5.25.3", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.25.3.tgz", + "integrity": "sha512-Ga1jfYwRn7+cP9v8auvEXN1rX3sWqlayd4HP7OKk4mZWylEmu3KzXDUGrQUN6Ol7qo1gPvB2e5gX6udnyEPgdA==" + }, + "node_modules/unicode-canonical-property-names-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", + "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", + "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", + "dev": true, + "dependencies": { + "unicode-canonical-property-names-ecmascript": "^2.0.0", + "unicode-property-aliases-ecmascript": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-value-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz", + "integrity": "sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-property-aliases-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz", + "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/unified": { + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/unified/-/unified-11.0.3.tgz", + "integrity": "sha512-jlCV402P+YDcFcB2VcN/n8JasOddqIiaxv118wNBoZXEhOn+lYG7BR4Bfg2BwxvlK58dwbuH2w7GX2esAjL6Mg==", + "dependencies": { + "@types/unist": "^3.0.0", + "bail": "^2.0.0", + "devlop": "^1.0.0", + "extend": "^3.0.0", + "is-plain-obj": "^4.0.0", + "trough": "^2.0.0", + "vfile": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-is": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.0.tgz", + "integrity": "sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==", + "dependencies": { + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-remove-position": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/unist-util-remove-position/-/unist-util-remove-position-5.0.0.tgz", + "integrity": "sha512-Hp5Kh3wLxv0PHj9m2yZhhLt58KzPtEYKQQ4yxfYFEO7EvHwzyDYnduhHnY1mDxoqr7VUwVuHXk9RXKIiYS1N8Q==", + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-visit": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-stringify-position": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz", + "integrity": "sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==", + "dependencies": { + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-visit": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-5.0.0.tgz", + "integrity": "sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==", + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-is": "^6.0.0", + "unist-util-visit-parents": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-visit-parents": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-6.0.1.tgz", + "integrity": "sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==", + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-is": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.0.13", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", + "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "devOptional": true, + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/url-parse": { + "version": "1.5.10", + "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz", + "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==", + "dependencies": { + "querystringify": "^2.1.1", + "requires-port": "^1.0.0" + } + }, + "node_modules/uuid": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz", + "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==", + "funding": [ + "https://github.com/sponsors/broofa", + "https://github.com/sponsors/ctavan" + ], + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/v8-compile-cache-lib": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", + "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==" + }, + "node_modules/v8-to-istanbul": { + "version": "9.1.3", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.1.3.tgz", + "integrity": "sha512-9lDD+EVI2fjFsMWXc6dy5JJzBsVTcQ2fVkfBvncZ6xJWG9wtBhOldG+mHkSL0+V1K/xgZz0JDO5UT5hFwHUghg==", + "dev": true, + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.12", + "@types/istanbul-lib-coverage": "^2.0.1", + "convert-source-map": "^2.0.0" + }, + "engines": { + "node": ">=10.12.0" + } + }, + "node_modules/vfile": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.1.tgz", + "integrity": "sha512-1bYqc7pt6NIADBJ98UiG0Bn/CHIVOoZ/IyEkqIruLg0mE1BKzkOXY2D6CSqQIcKqgadppE5lrxgWXJmXd7zZJw==", + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-stringify-position": "^4.0.0", + "vfile-message": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/vfile-message": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-4.0.2.tgz", + "integrity": "sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==", + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-stringify-position": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/vite": { + "version": "4.4.11", + "resolved": "https://registry.npmjs.org/vite/-/vite-4.4.11.tgz", + "integrity": "sha512-ksNZJlkcU9b0lBwAGZGGaZHCMqHsc8OpgtoYhsQ4/I2v5cnpmmmqe5pM4nv/4Hn6G/2GhTdj0DhZh2e+Er1q5A==", + "dependencies": { + "esbuild": "^0.18.10", + "postcss": "^8.4.27", + "rollup": "^3.27.1" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + }, + "peerDependencies": { + "@types/node": ">= 14", + "less": "*", + "lightningcss": "^1.21.0", + "sass": "*", + "stylus": "*", + "sugarss": "*", + "terser": "^5.4.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "less": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "sass": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + } + } + }, + "node_modules/vite-plugin-checker": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/vite-plugin-checker/-/vite-plugin-checker-0.6.2.tgz", + "integrity": "sha512-YvvvQ+IjY09BX7Ab+1pjxkELQsBd4rPhWNw8WLBeFVxu/E7O+n6VYAqNsKdK/a2luFlX/sMpoWdGFfg4HvwdJQ==", + "dependencies": { + "@babel/code-frame": "^7.12.13", + "ansi-escapes": "^4.3.0", + "chalk": "^4.1.1", + "chokidar": "^3.5.1", + "commander": "^8.0.0", + "fast-glob": "^3.2.7", + "fs-extra": "^11.1.0", + "lodash.debounce": "^4.0.8", + "lodash.pick": "^4.4.0", + "npm-run-path": "^4.0.1", + "semver": "^7.5.0", + "strip-ansi": "^6.0.0", + "tiny-invariant": "^1.1.0", + "vscode-languageclient": "^7.0.0", + "vscode-languageserver": "^7.0.0", + "vscode-languageserver-textdocument": "^1.0.1", + "vscode-uri": "^3.0.2" + }, + "engines": { + "node": ">=14.16" + }, + "peerDependencies": { + "eslint": ">=7", + "meow": "^9.0.0", + "optionator": "^0.9.1", + "stylelint": ">=13", + "typescript": "*", + "vite": ">=2.0.0", + "vls": "*", + "vti": "*", + "vue-tsc": ">=1.3.9" + }, + "peerDependenciesMeta": { + "eslint": { + "optional": true + }, + "meow": { + "optional": true + }, + "optionator": { + "optional": true + }, + "stylelint": { + "optional": true + }, + "typescript": { + "optional": true + }, + "vls": { + "optional": true + }, + "vti": { + "optional": true + }, + "vue-tsc": { + "optional": true + } + } + }, + "node_modules/vite-plugin-rewrite-all": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/vite-plugin-rewrite-all/-/vite-plugin-rewrite-all-1.0.1.tgz", + "integrity": "sha512-W0DAchC8ynuQH0lYLIu5/5+JGfYlUTRD8GGNtHFXRJX4FzzB9MajtqHBp26zq/ly9sDt5BqrfdT08rv3RbB0LQ==", + "dev": true, + "dependencies": { + "connect-history-api-fallback": "^1.6.0" + }, + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "vite": "^2.0.0 || ^3.0.0 || ^4.0.0" + } + }, + "node_modules/vite/node_modules/@esbuild/android-arm": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.20.tgz", + "integrity": "sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/android-arm64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.18.20.tgz", + "integrity": "sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/android-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.18.20.tgz", + "integrity": "sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/darwin-arm64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.18.20.tgz", + "integrity": "sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/darwin-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.18.20.tgz", + "integrity": "sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/freebsd-arm64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.20.tgz", + "integrity": "sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/freebsd-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.18.20.tgz", + "integrity": "sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-arm": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.18.20.tgz", + "integrity": "sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-arm64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.18.20.tgz", + "integrity": "sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-ia32": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.18.20.tgz", + "integrity": "sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA==", + "cpu": [ + "ia32" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-loong64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.18.20.tgz", + "integrity": "sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg==", + "cpu": [ + "loong64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-mips64el": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.18.20.tgz", + "integrity": "sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ==", + "cpu": [ + "mips64el" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-ppc64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.18.20.tgz", + "integrity": "sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA==", + "cpu": [ + "ppc64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-riscv64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.18.20.tgz", + "integrity": "sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A==", + "cpu": [ + "riscv64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-s390x": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.18.20.tgz", + "integrity": "sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ==", + "cpu": [ + "s390x" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.18.20.tgz", + "integrity": "sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/netbsd-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.18.20.tgz", + "integrity": "sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/openbsd-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.18.20.tgz", + "integrity": "sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/sunos-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.18.20.tgz", + "integrity": "sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/win32-arm64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.18.20.tgz", + "integrity": "sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/win32-ia32": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.18.20.tgz", + "integrity": "sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g==", + "cpu": [ + "ia32" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/win32-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.18.20.tgz", + "integrity": "sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/esbuild": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.18.20.tgz", + "integrity": "sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA==", + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/android-arm": "0.18.20", + "@esbuild/android-arm64": "0.18.20", + "@esbuild/android-x64": "0.18.20", + "@esbuild/darwin-arm64": "0.18.20", + "@esbuild/darwin-x64": "0.18.20", + "@esbuild/freebsd-arm64": "0.18.20", + "@esbuild/freebsd-x64": "0.18.20", + "@esbuild/linux-arm": "0.18.20", + "@esbuild/linux-arm64": "0.18.20", + "@esbuild/linux-ia32": "0.18.20", + "@esbuild/linux-loong64": "0.18.20", + "@esbuild/linux-mips64el": "0.18.20", + "@esbuild/linux-ppc64": "0.18.20", + "@esbuild/linux-riscv64": "0.18.20", + "@esbuild/linux-s390x": "0.18.20", + "@esbuild/linux-x64": "0.18.20", + "@esbuild/netbsd-x64": "0.18.20", + "@esbuild/openbsd-x64": "0.18.20", + "@esbuild/sunos-x64": "0.18.20", + "@esbuild/win32-arm64": "0.18.20", + "@esbuild/win32-ia32": "0.18.20", + "@esbuild/win32-x64": "0.18.20" + } + }, + "node_modules/vscode-jsonrpc": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/vscode-jsonrpc/-/vscode-jsonrpc-6.0.0.tgz", + "integrity": "sha512-wnJA4BnEjOSyFMvjZdpiOwhSq9uDoK8e/kpRJDTaMYzwlkrhG1fwDIZI94CLsLzlCK5cIbMMtFlJlfR57Lavmg==", + "engines": { + "node": ">=8.0.0 || >=10.0.0" + } + }, + "node_modules/vscode-languageclient": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/vscode-languageclient/-/vscode-languageclient-7.0.0.tgz", + "integrity": "sha512-P9AXdAPlsCgslpP9pRxYPqkNYV7Xq8300/aZDpO35j1fJm/ncize8iGswzYlcvFw5DQUx4eVk+KvfXdL0rehNg==", + "dependencies": { + "minimatch": "^3.0.4", + "semver": "^7.3.4", + "vscode-languageserver-protocol": "3.16.0" + }, + "engines": { + "vscode": "^1.52.0" + } + }, + "node_modules/vscode-languageserver": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/vscode-languageserver/-/vscode-languageserver-7.0.0.tgz", + "integrity": "sha512-60HTx5ID+fLRcgdHfmz0LDZAXYEV68fzwG0JWwEPBode9NuMYTIxuYXPg4ngO8i8+Ou0lM7y6GzaYWbiDL0drw==", + "dependencies": { + "vscode-languageserver-protocol": "3.16.0" + }, + "bin": { + "installServerIntoExtension": "bin/installServerIntoExtension" + } + }, + "node_modules/vscode-languageserver-protocol": { + "version": "3.16.0", + "resolved": "https://registry.npmjs.org/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.16.0.tgz", + "integrity": "sha512-sdeUoAawceQdgIfTI+sdcwkiK2KU+2cbEYA0agzM2uqaUy2UpnnGHtWTHVEtS0ES4zHU0eMFRGN+oQgDxlD66A==", + "dependencies": { + "vscode-jsonrpc": "6.0.0", + "vscode-languageserver-types": "3.16.0" + } + }, + "node_modules/vscode-languageserver-textdocument": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/vscode-languageserver-textdocument/-/vscode-languageserver-textdocument-1.0.11.tgz", + "integrity": "sha512-X+8T3GoiwTVlJbicx/sIAF+yuJAqz8VvwJyoMVhwEMoEKE/fkDmrqUgDMyBECcM2A2frVZIUj5HI/ErRXCfOeA==" + }, + "node_modules/vscode-languageserver-types": { + "version": "3.16.0", + "resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.16.0.tgz", + "integrity": "sha512-k8luDIWJWyenLc5ToFQQMaSrqCHiLwyKPHKPQZ5zz21vM+vIVUSvsRpcbiECH4WR88K2XZqc4ScRcZ7nk/jbeA==" + }, + "node_modules/vscode-uri": { + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/vscode-uri/-/vscode-uri-3.0.8.tgz", + "integrity": "sha512-AyFQ0EVmsOZOlAnxoFOGOq1SQDWAB7C6aqMGS23svWAllfOaxbuFvcT8D1i8z3Gyn8fraVeZNNmN6e9bxxXkKw==" + }, + "node_modules/w3c-xmlserializer": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-4.0.0.tgz", + "integrity": "sha512-d+BFHzbiCx6zGfz0HyQ6Rg69w9k19nviJspaj4yNscGjrHu94sVP+aRm75yEbCh+r2/yR+7q6hux9LVtbuTGBw==", + "dependencies": { + "xml-name-validator": "^4.0.0" + }, + "engines": { + "node": ">=14" + } + }, + "node_modules/walker": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", + "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", + "dev": true, + "dependencies": { + "makeerror": "1.0.12" + } + }, + "node_modules/warning": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/warning/-/warning-4.0.3.tgz", + "integrity": "sha512-rpJyN222KWIvHJ/F53XSZv0Zl/accqHR8et1kpaMTD/fLCRxtV8iX8czMzY7sVZupTI3zcUTg8eycS2kNF9l6w==", + "dependencies": { + "loose-envify": "^1.0.0" + } + }, + "node_modules/webidl-conversions": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", + "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", + "engines": { + "node": ">=12" + } + }, + "node_modules/whatwg-encoding": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-2.0.0.tgz", + "integrity": "sha512-p41ogyeMUrw3jWclHWTQg1k05DSVXPLcVxRTYsXUk+ZooOCZLcoYgPZ/HL/D/N+uQPOtcp1me1WhBEaX02mhWg==", + "dependencies": { + "iconv-lite": "0.6.3" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/whatwg-mimetype": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-3.0.0.tgz", + "integrity": "sha512-nt+N2dzIutVRxARx1nghPKGv1xHikU7HKdfafKkLNLindmPU/ch3U31NOCGGA/dmPcmb1VlofO0vnKAcsm0o/Q==", + "engines": { + "node": ">=12" + } + }, + "node_modules/whatwg-url": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-11.0.0.tgz", + "integrity": "sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==", + "dependencies": { + "tr46": "^3.0.0", + "webidl-conversions": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "devOptional": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/which-boxed-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", + "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", + "dev": true, + "dependencies": { + "is-bigint": "^1.0.1", + "is-boolean-object": "^1.1.0", + "is-number-object": "^1.0.4", + "is-string": "^1.0.5", + "is-symbol": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-collection": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.1.tgz", + "integrity": "sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==", + "dev": true, + "dependencies": { + "is-map": "^2.0.1", + "is-set": "^2.0.1", + "is-weakmap": "^2.0.1", + "is-weakset": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-typed-array": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.13.tgz", + "integrity": "sha512-P5Nra0qjSncduVPEAr7xhoF5guty49ArDTwzJ/yNuPIbZppyRxFQsRCWrocxIY+CnMVG+qfbU2FmDKyvSGClow==", + "dev": true, + "dependencies": { + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.4", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "devOptional": true + }, + "node_modules/write-file-atomic": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", + "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", + "dev": true, + "dependencies": { + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.7" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/ws": { + "version": "8.11.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.11.0.tgz", + "integrity": "sha512-HPG3wQd9sNQoT9xHyNCXoDUa+Xw/VevmY9FoHyQ+g+rrMn4j6FB4np7Z0OhdTgjx6MgQLK7jwSy1YecU1+4Asg==", + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/xml-name-validator": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-4.0.0.tgz", + "integrity": "sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==", + "engines": { + "node": ">=12" + } + }, + "node_modules/xmlchars": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", + "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==" + }, + "node_modules/xmlhttprequest-ssl": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/xmlhttprequest-ssl/-/xmlhttprequest-ssl-2.0.0.tgz", + "integrity": "sha512-QKxVRxiRACQcVuQEYFsI1hhkrMlrXHPegbbd1yn9UHOmRxY+si12nQYzri3vbzt8VdTTRviqcKxcyllFas5z2A==", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/yargs": { + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", + "dev": true, + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/yn": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", + "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", + "engines": { + "node": ">=6" + } + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "devOptional": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/zwitch": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-2.0.4.tgz", + "integrity": "sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + } + } +} diff --git a/client/package.json b/client/package.json new file mode 100644 index 0000000..03635d0 --- /dev/null +++ b/client/package.json @@ -0,0 +1,66 @@ +{ + "name": "pfe004-evaluetonsavoir", + "private": true, + "version": "0.0.0", + "type": "module", + "scripts": { + "dev": "vite --host", + "build": "tsc && vite build", + "lint": "eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0", + "preview": "vite preview", + "test": "jest", + "test:watch": "jest --watch" + }, + "dependencies": { + "@emotion/react": "^11.11.3", + "@emotion/styled": "^11.11.0", + "@fortawesome/fontawesome-free": "^6.4.2", + "@fortawesome/free-solid-svg-icons": "^6.4.2", + "@fortawesome/react-fontawesome": "^0.2.0", + "@mui/icons-material": "^5.14.18", + "@mui/lab": "^5.0.0-alpha.153", + "@mui/material": "^5.15.11", + "@types/uuid": "^9.0.7", + "axios": "^1.6.7", + "esbuild": "^0.20.2", + "gift-pegjs": "^0.2.1", + "jest-environment-jsdom": "^29.7.0", + "katex": "^0.16.9", + "marked": "^9.1.2", + "nanoid": "^5.0.2", + "react": "^18.2.0", + "react-dom": "^18.2.0", + "react-latex": "^2.0.0", + "react-modal": "^3.16.1", + "react-router-dom": "^6.16.0", + "remark-math": "^6.0.0", + "socket.io-client": "^4.7.2", + "ts-node": "^10.9.1", + "uuid": "^9.0.1", + "vite-plugin-checker": "^0.6.2" + }, + "devDependencies": { + "@babel/preset-env": "^7.23.3", + "@babel/preset-react": "^7.23.3", + "@babel/preset-typescript": "^7.23.3", + "@testing-library/jest-dom": "^6.1.4", + "@testing-library/react": "^14.1.0", + "@types/jest": "^29.5.8", + "@types/node": "^20.8.8", + "@types/react": "^18.2.15", + "@types/react-dom": "^18.2.7", + "@types/react-latex": "^2.0.3", + "@typescript-eslint/eslint-plugin": "^6.0.0", + "@typescript-eslint/parser": "^6.0.0", + "@vitejs/plugin-react-swc": "^3.3.2", + "eslint": "^8.45.0", + "eslint-plugin-react-hooks": "^4.6.0", + "eslint-plugin-react-refresh": "^0.4.3", + "identity-obj-proxy": "^3.0.0", + "jest": "^29.7.0", + "ts-jest": "^29.1.1", + "typescript": "^5.0.2", + "vite": "^4.4.5", + "vite-plugin-rewrite-all": "^1.0.1" + } +} diff --git a/client/public/Logo.svg b/client/public/Logo.svg new file mode 100644 index 0000000..9c3ec85 --- /dev/null +++ b/client/public/Logo.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/client/public/logo.png b/client/public/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..ce8cf20cd7e023a3b0d926a6013f93d96e374544 GIT binary patch literal 5503 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 P{6(sVFoKs}MBe-lLf_~r literal 0 HcmV?d00001 diff --git a/client/public/people.svg b/client/public/people.svg new file mode 100644 index 0000000..199edfe --- /dev/null +++ b/client/public/people.svg @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/client/public/student.svg b/client/public/student.svg new file mode 100644 index 0000000..f71e71d --- /dev/null +++ b/client/public/student.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/client/public/teacher.svg b/client/public/teacher.svg new file mode 100644 index 0000000..80f4457 --- /dev/null +++ b/client/public/teacher.svg @@ -0,0 +1,238 @@ + + + \ No newline at end of file diff --git a/client/public/vite.svg b/client/public/vite.svg new file mode 100644 index 0000000..e7b8dfb --- /dev/null +++ b/client/public/vite.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/client/rapport/H24-iteration1.md b/client/rapport/H24-iteration1.md new file mode 100644 index 0000000..8dc7b8a --- /dev/null +++ b/client/rapport/H24-iteration1.md @@ -0,0 +1,65 @@ +# Plan d'itération 1 + +## Étapes jalons + +| Étape jalon | Date | +| :------------------------------------------------ | :--------- | +| Début de l'itération | 2024/01/08 | +| Première rencontre avec les promoteurs | 2024/01/10 | +| Démo de l'application et révision des user cases | 2024/02/06 | +| Fin de l'itération | 2024/02/08 | + +## Objectifs clés + +Les objectifs clés de cette itération sont les suivants: + +- Trouver des options alternatives d'hébergement de l'application +- Mettre à jour les users cases +- Configurer nos environnements de travail et se familiariser avec le projet +- Débuter l'ajout ou la modification de quelques fonctionnalitées + + +## Affectations d'éléments de travail + +| Nom / Description | Priorité | [Taille estimée (points)](#commentEstimer 'Comment estimer?') | Assigné à (nom) | Documents de référence | +| ------------------------------ | -------: | ------------------------------------------------------------: | --------------- | ----------------------------------------------------------------------------------------------- | +| Révision des user-stories | 1 | 4 | tous || +| Solution d'hébergement de l'application | 1| 4 | tous || +| Initialisation de la solution de base de données | 1| 4| Mathieu | | +| Exportation pdf | 2| 2| Mélanie | | +| Afficher le code de salle de manière permanente | 2| 1| Samy | | + +## Problèmes principaux rencontrés + +| Problème | Notes | +| -------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +|Quelques difficultés avec l'installation de modules lors de l'installation initiale du projet sur nos postes de travail | | +| La communication avec l'équipe de la STI pour obtenir un serveur à pris beaucoup de temps | | + +## Critères d'évaluation + +> Une brève description de la façon d'évaluer si les objectifs (définis plus haut) de haut niveau ont été atteints. +> Vos critères d'évaluation doivent être objectifs (aucun membre de l'équipe ne peut avoir une opinion divergente) et quantifiables (sauf pour ceux évalués par l'auxiliaire d'enseignement). En voici des exemples: + +- Mise à jour du document de Recueil de User Stories + +## Évaluation + +| Résumé | | +| ------------------ | ---------------------------------------------------------------------------------------------------------------------------------- | +| Cible d'évaluation | Itération | +| Date d'évaluation | 2024/02/06 | +| Participants | **Équipe** : Louis-Antoine Caron, Samy Waddah, Mathieu Roy, Mélanie St-Hilaire
**professeur** : Christopher Fuhrman | +| État du projet | 🟢 | + +### Éléments de travail: prévus vs réalisés + +Une nouvelle solution d'hébergement à été choisie, une machine virtuelle sera fourni par la STI. Les users case ont été révisé avec les clients et mis à jours selon l'état actuel du projet. La configuration de la base de données à bien commencé. + +### Évaluation par rapport aux résultats selon les critères d'évaluation + +Une bonne partie des critères ont été atteint. + +## Autres préoccupations et écarts + +La nouvelle solution d'hébergement n'est pas encore accessible et ne peux donc pas être déployée pour le moment. diff --git a/client/rapport/documentation/Document-de-Recueil-de-User-Stories 2.md b/client/rapport/documentation/Document-de-Recueil-de-User-Stories 2.md new file mode 100644 index 0000000..b9b772e --- /dev/null +++ b/client/rapport/documentation/Document-de-Recueil-de-User-Stories 2.md @@ -0,0 +1,118 @@ +# Document de Recueil de User Stories + +Version: 2 + +Dernière mise à jours: 6 février 2024 + +Auteurs: +- Louis-Antoine Caron +- Samy Waddah +- Mathieu Roy +- Mélanie St-Hilaire + +## User stories + +### User story 1 : Connexion d'un étudiant à un quiz en cours +- **En tant que :** étudiant +- **Je veux :** pouvoir accéder à un quiz après qu'il soit commencé +- **Pour que :** je puisse répondre aux questions du quiz + +### User story 2 : Imprimer un quiz et son solutionnaire +- **En tant que :** professeur +- **Je veux :** pouvoir exporter un quiz ainsi que son solutionnaire +- **Pour que :** je puisse l'imprimer + +### User story 3 : Upload images directement dans un quiz +- **En tant que :** professeur +- **Je veux :** pouvoir upload les images directement dans le quiz +- **Pour que :** je ne veut pas perde les images si elles disparaissent d'un service externe (google drive, onedrive...) + +### User story 4 : Performance +- **En tant que :** professeur +- **Je veux :** pouvoir faire des quiz avec des grandes classes +- **Pour que :** je n'aie pas de bug lorsqu'on est beaucoup à utiliser le service + +### User story 5 : Sauvegarde de quiz +- **En tant que :** professeur +- **Je veux :** que les quiz soient sauvegardé dans la plateforme +- **Pour que :** je n'ai pas à transporter mes quiz d'une classe à l'autre + +### User story 6 : Numéro de salle permanent par professeur +- **En tant que :** professeur +- **Je veux :** pouvoir réutiliser le même code d'accès pour toutes mes classes +- **Pour que :** il soit facile pour mes étudiants de s'en rappeler + +### User story 7 : Bug: perte de connexion +- **En tant que :** étudiant +- **Je veux :** que mon téléphone puisse tomber en veille sans être déconnecté de la plateforme +- **Pour que :** je puisse continuer de participer au cours et garder le même compte + +### User story 8 : Amélioration de l'interface mobile +- **En tant que :** étudiant +- **Je veux :** pouvoir utiliser la plateforme depuis mon téléphone +- **Pour que :** ce soit plus facile de répondre + +### User story 9 : Partager et dupliquer un quiz +- **En tant que :** professeur +- **Je veux :** pouvoir envoyer un quiz à un autre professeur +- **Pour que :** il puisse en créer une copie sur son compte + +### User story 10 : Bug: Syntaxe commentaire +- **En tant que :** professeur +- **Je veux :** pouvoir mettre des commentaires dans mon quiz +- **Pour que :** il soit plus facile de comprendre mon quiz + +### User story 11 : Utiliser la palette de couleurs de l'ETS +- **En tant que :** promoteurs +- **Je veux :** que la plateforme soit plus ""ETS"" +- **Pour que :** il soit plus facile à adopter dans le cadre de l'ETS + +### User story 12 : Copier/Coller à partir de template de question +- **En tant que :** professeur +- **Je veux :** pouvoir copier des template de question +- **Pour que :** il soit plus facilàe et efficient de créer mes quiz + +### User story 13 : Création de dossiers de quiz +- **En tant que :** professeur +- **Je veux :** pouvoir créer des dossiers pour classer mes quiz +- **Pour que :** il soit plus facile de trouver les quiz par cours + +### User story 14 : Monitorer l'utilisation +- **En tant que :** professeur +- **Je veux :** pouvoir consulter un tableau avec les noms des d'enseignants-utilisateurs, nombre de quiz lancés par semaine ou par mois, le nombre de connexions totales +- **Pour que :** je puisse justifier le maintien des serveurs et le support informatique au besoin + +## Priorisation des user stories + +| User story | Priorité | Notes | +| ------------------------------------------------------------- | -------- | --------------------------------------------------------------------------------------------- | +| User story *: Création d'un serveur | 🔴 | | +| User story 1: Connexion d'un étudiant a un quiz en cours | 🔴 | | +| User story 2: Imprimer un quiz et son solutionnaire | 🟡 | Geneviève: Important avec des images + j'imprime pour la révision des étudiants | +| User story 3: Upload images directement dans un quiz | 🔴 | | +| User story 4: Performance | 🔴 | Servir de 5 à 10 profs en même temps, ayant des classes de 60 personnes | +| User story 5: Sauvegarde de quiz | 🔴 | Tout est dans le cloud donc pas besoin de trainer les quiz avec nous | +| User story 6: Numéro de salle permanent par professeur | 🟢 | Plus facile pour les étudiants lorsque c'est toujours ex: Pitagore | +| User story 7: Bug: perte de connection | 🔴 | | +| User story 8: Amélioration de l'interface mobile | 🟡 | | +| User story 9: partager et dupliquer un quiz | 🟠 | Avec un lien directement à partir de la plateforme ( pas besoin de partager des fichiers txt) | +| User story 10: Bug: Syntaxe commentaire | 🟠 | | +| User story 11: Utiliser la palette de couleurs de l'ETS | 🟢 | https://www.etsmtl.ca/ets/gouvernance/logos-et-identite-visuelle | +| User story 12: Copier/Coller à partir de template de question | 🟠 | | +| User story 13: Création de dossiers de quiz | 🟡 | | +| User story 14: Monitorer l'utilisation | 🟡 | | + +> Légende : +> +> 🔴 Essentielles (Critical) : +> > Ces user stories sont absolument nécessaires pour le fonctionnement de base du produit. Elles représentent les fonctionnalités cruciales et indispensables. +> +> 🟠 Importantes (High) : +> > Ces user stories sont importantes pour la valeur globale du produit, mais le produit pourrait encore fonctionner sans elles. Elles ajoutent des fonctionnalités significatives et améliorent l'expérience utilisateur. +> +> 🟡 Souhaitables (Medium) : +> > Ces user stories apportent des améliorations supplémentaires ou des fonctionnalités agréables à avoir, mais elles ne sont pas essentielles. Elles contribuent à l'enrichissement de l'expérience utilisateur sans être critiques. +> +> 🟢 Accessoires (Low) : +> > Ces user stories représentent des fonctionnalités ou des améliorations de moindre importance. Elles peuvent être reportées ou omises sans compromettre l'intégrité du produit. Elles sont souvent liées à des fonctionnalités cosmétiques ou des ajustements mineurs. + diff --git a/client/rapport/documentation/Document-de-Recueil-de-User-Stories.pdf b/client/rapport/documentation/Document-de-Recueil-de-User-Stories.pdf new file mode 100644 index 0000000000000000000000000000000000000000..bbdd96ee735cbb66e19bfde0548f4164366581ba GIT binary patch literal 398224 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

e|tx{)+9IOH{wYqR&_lUa>90nc& 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%0Dv{edjfl6Hq?OAVF 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�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Ξ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

+Ps|c|idOKZOT$J(e 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⁣r08gD? zSV>Y6HFn&3T5U{fBtpMyC$OH@OHA@}#lUwGKg2M>r@|$1`b%xozs%Cu6w;V>#YPI0 zrs2$L>y+G;mMKpY_~ZEF+hgy<1jGmW7IEUNnp!o*Dx^WG$&aE2O--xv)}n3M!5Q?B zMEF6Woml${&n#XwAn8QV#5$r|&mPNe-Qdv^yQCLx6I%!x~ zpMh;R#{&uibAWO{X5c4a$-5ql17A4r2rnJqF|Ujp@VfQH4HM{*<=#$46yb4}DgT8+ za_%I@#eUa9qOLMsbPRoE{oJ=>6f5}FCcso z&<_ThNtPdXrrA>23@t1%xW5fmV7XzNYtsDA{D{k(-xnq6bD#2Irq$YhZ2SE-R`XF{O+uw`wMJ6&uc5A%l4%5l{04Kl?WFTcR(GE62`b{-Y?Zp zxJ=?J(*?bRUQL7Ip?a}N)Y}JTIAthhSmlq(@YwfxZfY4NiwYZdwhwyuFLrmh0GywkXI#dpl_4Q3tn8K(-iilPdo zis3u@;-^KtMc75GMWV%zDKM>=i%5$EDbSLzg-|noUVbmWFMg@-Ym^_l9N*#J*QYS9 zIJUU9Ft*>`8LxbuQ=OV%T(Bw_0EPj-bcS|{bq;mXbe43&`_A~z__6x3`qlc@`Z@SI z_+9&6`$d1i`G5nB19j~y;Va?y_L1=;KcXh8Cvqe7J;0XY;uDw_Y!1c;tAn}0?qE2u z2spk|sQ9S?*iw5^&mip(wWhwF|)JhnWnXeY-$;G$1|VV3{(8=$~Q#>yl0o}-j3 z5}oEfCn*_OAugGeLYjQ<@7Tf=Aubv|)(vFG5=}nH>VDI06AmzV;(TpsDRnJ%f`|2d zCv#&($^NLn?kr9qA%hs$pHxj^II@IRjk$?x(%aF(?=_kiV~71XVAXXz6SNZ0 zGh;)N%M_dx=F@PT*spZG)7wed#_ zOjAYh{LxjNN(0XOGd;WjjPwTqWMyB7FXqOd(*n?O*FtAFSf^70d<_0@59f;aTsj`t z2hIayTrk_x+{0GAhpiF$8KV*36GJmE9;=g@+MoG5DrM)l6zE$?;~w$@hqb=?+-4bk=x&9RY z%SJOY`cPutgTVY5zfn0oiZ~aa1nSmpl0d(W_ygb%5UYu|4 z(|2Ak?(*rzjBYUHVur1RjM0-TQ9UjiNTW8nWzl{OfyIWSqX@>|Si@*^5mTo|ardP8 zWHNvhQPnIQL59>pMu7ft0B#YGChC$IT|_rGVz4&_Cf-oq9SGo)$N-W{Pkb)g51y&* zVJ0yu{GK?fxMwiRwzoa%xQ984ycaKttY+YYHE$F(%TkIw|BPH zZ%>gCSle#W_9-6bL5Bz(aa%C>Ekp$KZ6jVgymyV;U{EJGNDiQDqDxlvi!odnUc&8^zYyxsie{Dx|@hKwpt`Gkgy zx{O*&c~LpvJWhGrJZbvKUiE_|X}W3n(%y>lqI%uwLqfGMvpH&gDUHp@(f0m-U1gD2A7)AEDnuDxG=@*)gmsIqCzc3U z5&Z}JZ4bk#mnBzhWe>6X&%swzjDgUZUM_v#Mq_+~TuFX~Rkn4uA+{d2fx6DR**bX( zJga$i;U2sLnb;zPpDPkfru=Qc+a)7r>(9P2tFKtMsUxX*=;&b1bA&w$X+Jn>KLoa3 zg}d#pw_ZuO?XtS>U3C9*m zgzIt$Q|kx_CvwrEH#x$!KZI#xS?sC|U59;(i~MyeWIytriu{h?azdn4w|61Jbt=S% zd5eO)-MSZwyj`z%MC7>?9p2_I9l7eZ3(7f^)$zna)QV`Rba}-M`ir_%lR1mUZJ+*D z9X@%=w0dUAcd04!G5Q(J@^yL+h8gp5{293Nv${0r6zBB2G}N@HG;XOPDX&8B8Q;Ud zOP0iWT9bz^S+EYvyz6Ce!jxta_Mxr3xH(tn(Nb>Lg9#7Y@~;6$vjc^#%*4A;j|eY3 z&FQ#$YMjp_^v98lmc1qsjdLLz_)#3&UMrjt_l4*iEL-dbNKwrC)#&Fe`U@?0s~u>f ze+NU}w=jwj+VrB~R*!~|aBjVbcy@+3MBK-qIn-z@rSt7k(rMfB8f}~%Fp+`(YRq}X z#YIiEo4cA2d?n96ECXBowNHW6&<&%Qnu2UWfsAQoW=*jKco}+Xprbdjm990hHgEjU zZj`(WpR|@_!f={|IudP}ZdD^yy*oJ7uWIM6O(UUgOye~R@ak>+b27nfobg+Ah-xr# zCwWL|M`e)ms&vQvO3WVRf!&_r!O5Pe31~^FF^E#eZ(QN#>PfO=+5i^6qk7z6kKqcP z6nFZSvv6_m$S+->(a^bQ~^o|rrs6xgT^VL^}M?Kr<2%N5m|pA*y)y-U;wo~_^GXk8rdVS?-p$;cJo8o^X!TdU3HhXj z<63!S@h_vam&iN`caU`ties6$rx54*yM?=jHwMpfd}NMo%WBJNOfEM#u1gA0vk3O~ zef^*%;uFJIB=AcnTR>7}5;BQ-=y51^BYH4&BYH^VNWqu*ipv-Iin#X6CsA8UK&&#S zL!`2xL%K3=VP?z`smFP3|*2XjFo}%l^dkg^M|N zGHJ4*@-(mByu0v}33$QWCdni>+&b1O)tWW;ioU%lQ=3Kk8mQIFIIS+zqmuh3B5|Wo zx4y8ODK{Iu@sM>x`ABeMOy&baSbK(0E(*4exKzqosC56MTvKj_eaYDCvTOIB2}H`2zD#*U zF!(z;%SpNbSg2lNQd~aUP;52ZP;xr!QcN`K5*uC-`N$7K!aD?xjfg=E%+ICV4!uQ) z^1Y>ra=itK3cbaMa=e9!3cRI=gzB3&jXd3v%zn1-AjzKeVaxRXX=qw4|ZG^sEqc=h@YF{}m?^nFuq9K;v6|HY~ z*zEPa7R$%9XMOU^NRsNal6*3qQ+^WNpm9 zmrpOljTJ@~GN>Qxwv>#`R)Ek@Q&7{R%oqZ!6)F$Q=0zF}@!3$!$^(8nR4)~RFnNvF z>CG7e?e^@ie_emMc60!_-9-|Tj*LdWbAZ*a;jSrb_1DeU_12BfzMr#_u#qs6_*9-b zsUhA_Z8Ny|27*m(kyT;Z(dgmMp(TDGnSK5l@a;~xY*Df>bE=D~WoXKV`tz#uHRte%@$sLL zR|VY)--?p~bBhLJ)&IyZ}nk3>9-jjnGR8DI$L$W8N>`_a2<3J7NES- z4EBGvYdG?0lkhC~ylSWyVT7YF>F|fAY&fMpx*cbA;-cUQ8F$Ra)u7Y_7!^aPFqZQX z<(hJ;7n7)veyTuq0n z^LAXmi#O6xS9)Nh;hhipUd<=9c!7gJ^$LwXut6Mmzaj+Z<1uKy;Yo0YWHsZEZtjV! z3CoX2+kgH@s?7kaR7GqFo7JxwjW;rkmo>kHx8GZP?w!hUr!{s z-!s9z)lPkQx>I&TMwIHKOb=ysyJ-uzRAExnp1zwHNm>BeJOwEUNT)NHRAG%Dz*%TQ z@gwrX(t-`L5zReRvNl|mkoG#y|Fm=|fuot3YHBs$kogfRK9Im>L1SGo%fjBWqu^TL zcc#Hr6+)GnefW=gnB-#y`a54#UOrzwZ=(j<&S4M6PoG&Rl+&oW#glY{QvgoY7Ho4( zvoTBa46kXLRG!1X0H&6Vdl` zhZG2x!TSEc#^@8_@^w4{T2#gDL3~Tn;t$L2*M+Q>DTvQ&E#PH2L(09v^mI+Am;IEL zXgMKsxq+ecU@YJ^>=se4RvXkV95dfwMd?2$s!K`uh%ovX518k?<-M8blzS|^J6-?9 zVgEAs9*p@vEGa#j(RvjY_c!bbH!?b`{9Y(o{h7#-x7o;h-xmz}xy`G~)VEndu4rmU zAimE1Op_$jYPl7p$AnG%OX=|wmwM4;?57Zi6nj71$@<|)?GeBg_szO#eSW!rm3igK zQwIo37N_={KboHtSo}im!U2p}^(o6E=Aq^_EHBce;?@GhvZI$?0b(&n zXuD-zo;UaCzhhY8SZT0YvD&CU)%B^=va_1gDCM>*uU8@=K&bQ%Q9;A21pe$@{1GB! zs$%3`At~76?E!fSK89EZX<*S-XPVAr%~Ekq3xCcJ{t_aW|2wQ#HR4_=7a}${@L{?U zTJzKV`~9#i{z&=FDIS>({a2TD5!(Ee!%OWEREAB$#{XjTNEg))Y%PgCzcry4gqhFk ztif2Wxycwt&y{XzRv9hW+a}+OZsf4vF1|1BfptKHJ6Ba1#5p6;;(OdmDdf>|asDDj z#|>!@(*N6dS|R3g8>OW#uUR9-!|$keYzfN|NKX;1a9v_?BO>AxWeiiR-Eu|w9WMM6 zUb4_H3fB14o>2qr@8Ky0qxQxWwP|WaW7Vm0saB)X#+?fYiq%A4sCIm6HEvajR)_NLC zrSWUoYxtbXYTCo>~rH*hEDhHY@eEhR^`rM7W!^&y;j}M$Xrre%&AUb@5oyE#uv5j ze6^~mP7Cf>JOaIHywci+`A4)3vTSrrbu23zI2Tox78cXrlk;etl)qE#I6PXsD&N1i zRK29M&8%CUgR(%76{aQlQz6vayh*u}DlS0qKo`$1(PidwxwDjml&zGrV&_rkQKwmq z#5+ch=(Y*(b?+(fCGR;w03x9dERw zxpPz7GW#++HXaV{dVo673XxTm^MLjM)PUXqvuIJ?%G5F7_`pTe9+^8R!`LLJcG1ki zUOGD7C2YLTA)|JcYl^FnYfbGm<22(vozgs4G9a0YAX91_G>-DCAl?=m5T3D2(|u?U zm*LNPNbi)yMVAquIg_C@t~QRp@45eTU*DvywySBlsekEY^w@Ic{xId0ke!;Wor|Kxm(;6H?!mumy?SA%>=yN=fOc(&oD!_ugOoG5fj3y%y|d z?3N=flnSNy+z`eKA`93mr4}uvV{>QA$J}7<6YjkuN2eBdEfcMm3W*BAg_xBSMn{|$ zE9>!7yKC#IOy_8aQ~D(e($AM3mDcIs*B zJE>yUEy*>>4WCa62m+!2rHK1#=W2UuM`kvc_PGwYwz$r?4!KUbwz>A3z<3v$mzvj6 zH&K^S6tsLOKqVkM(0D>*0$Zlkq@`$V=4|Ph3(R%GwRd>q=;6+1!uJA{018gTESxah zV0&0;j~`!NX-}o!MO`O(P`MYm7I~Dm)wVgbf!4XtG0s_R@*0L(=3Ba2hDu!<++AE< z+<01_TH)J7TL;>x+KSptTK8LVT0gGSty{FmwllX^^AGP|Jb3EqtR~+^Qqi`pv{|h? zpKG5(o$H-5+Y~jdtQ_+lpF*^+P~C$)jdgM=7fr71_@kpCq3v}x8I`M?Q=EOAYbvMd zr|HL~w{s6k_el@|9o>QJ}p8Xau!G+eP z)^+qv^kwv|f_L!7KHAgvYne~0kH1fx&tIP)pF*D~A7Z(~;~S?ZcP|sKmv)JE!Ht-W z6Q&!SCoAvq^UG`RsjR!`>*Ob@$D;e9r_z_&7l#+nEB7158;eg~$56+7M_0#C<$c4W z%e~73&-2qW{EO)Gzzfw&(TmCR{xi<=$5*;n3%^)DX1{7ES}?*r^yUxV7?cP!Nd!qm zNt989QRLB2qe%1!^oaB*^k`+sWvFH3v@b$X4%y#j39DcmeW^O(dw+0$XOtyQ!A-$P zAudK8MIA+%g*$?lfF6O4^egOK?hNWI^u<`jUqoNTIzTu~e zHpVLcD*7tc3Bnl?F*5NdVl*H!5cU1TJ(4y8DoiCzpC6g+;?gZMUQ<>ulYuce{kOxMbN2rz?KRQ$BqpfVvFbE zwmu!mHUz^zIeZn^CTNVA{;)ZF?*Mr$aeBoUSgx^&Ry2^=0;b?t9VK)tA&)2Ykhv-Z#*<1ANQ6(uaCUHcqWBH6eLVs#eNd z@<=LBQcj9Z(kLzE0el&;Y_jaMZ2kHQgE5KJ8 z_`QUnDAfQtEQub2bQjt zp7xFQl=jp1wD$h?V0oQPwgCzux|&-x)HQdmNj`nRtb0+`5&uVtYmt(94_Gy?MEP4u z#_%ZRGTdQmV`5{^YtJ0`}eo>;~q=7Xt@xpaTs1Nl97{b zlWvpE%Vk;#4anGj%r7h^%plAm%qPqw3>9V*2BGLt>?mH82nvD{MseSf5s({Nu3YX} z-dIjqK3z^*?q3dmtW(Z5P9aKHf2*Fl{>}}Pr@GAg(y}hWKdN1eGRf0r)eeeku`-Df zRC;@TDU`6K#iV|ezUanCQ1`6tlhDyS_7oG%Zt3cnU}G@1Ma%Z=#V3)1T1gB&WJ^K2 z&6j2wpX5~=8gdlf90`uB*3)dUn^k>MRW0`gM0+D5gsqty*c6qtHzqO4 zE#CVnVC8$YO$zLLF?w^F1MQYl=?&Dz4>_Ib2&v}bf< zG-dR3G;OqhG+0;XE!!}~J-XUkwbZqgY_pfP)2oNKUewM$t-c0pRhl#34mp@VDEH7p zXxFidi8t^x2tK592r3RK4i;z=Xsv2Cn46fh+ul2vI(T|8b5P=8S$A)WN}Osl0vQ^d_C&RHW25S9pc1PtMO{NVWUv2-2h6zOJYY6ScRJRGia zE%=$VnxxG!t6}hcNqJ_{tl&~<851WH{q#FvPPM4lsk*OqlX79a%-Sr&%n77aqy{$% zgV%#ArM*oYX7A5B&g!N^`;(Vdl2kBk+$@(#r4*b?dGwOXS!y!bI@nsw5^|MugYANo zgC~PUgHM8`f-{0igNvkL>7XZKPry%vp71F!6GqA?6#kgv!g4`@AznF_^;0ByM@NTM zNB;a6k-n$?xpr1_*Xc2+%wEcJ#4`g66Wr?m<29N#Nnm@hF`nN}r5-i^gO64|la5!&&o zqkw}^>*XCqJ$2>I7=lbcO^8;)9VM+y)|~9DeDyMQzP!Uc|GbtwoTikumbFU0PzAVx zWhh}h#agK%XD|C|=GC0=EMbkwys6J)n!YRQ);xUC{5gb!Emj5zO5OtqedV0Nxq$_A zFq#96Mz3JjFkf8kP~7#*^>-&<+cVzLh||y+lt$4TMOS9Vmvhp{6Qa#fyhgD_@-S7H zl1`Romd(KKAmL!>AQl~f$;TwPID46TDWUl4MJHqJVVf#+@^q?nO77XUgZ1b#^eH9_ z^T>_Q2lp-^mmKv#ZOg0i!PsfAKD zUzzA&tX1z?H+4I85A`P(3ly|IzAXN@gKb4V| zX_O9@4ULVB)r^hX8o4RB=~aR!qKy(KUrt7Al^T@YE3GZ18AG0ROiea4zgqVG$-$dC zVp}j=WA1hS%1RE9maJjo+T!B-TE%Uv+a4k{4@Wp}NI#RmhR-O$EPsVjBHyUQuJ+mp zaZ#cx%c>#(1`goLHGB!_=2ev5$lSJ9C2oJVAwm36&F92Tv&(_XD@V79eWXs-R`b=RTn|>L=ksY)OMXdP{ZA{WWWbu0{8% zl4^U9OKH2Kp0gtE4}~0(_KPHSf(yQAp&1P`L!I=b`Fc2(UhIbL7VakR*6%)d9;}%= zUOt`|aq@9Z5dtNT^xTUZ)mppbtX1t8*OcWNZ>Ysx#rZX)Cf^8K#HtfoFgb)?al@i; zM$e0kM}lm+_+}E^x>1Wpp+)8+`8Jak3*)ZqwO5VWibzLlRy$qiQ0^2cr7sH`iUKpN zlhG5im9@9s+mjtfP*h*K(k_Ct`wht65|y#S0dd(=xd6>jdHim^{3*Y=$nz zZz+3Qi0-Dy^p;uM zQR5RYPq#AX;0G75s4^Y&JrNibuNGj=dOJMc^rkc)Q4jkqE>n~ITLPqyOqBUFdU?TI z%J&94T%h&J;?Q;?C{x!h=m%wJS(ivz`(0>3mvC9j8sw;p!MQ7mXQ_+a`QsOF!g`h| zCx@)Kt;mO+HrwO%z*49x9yayFQx*;dRUao7*0=XO@#>_e;-=I zk=jjB46Qe;ZfS~hGi-lKXPI+5=I9R6F9M?`7TUXEieP{@>8#pp@g3CA}T?!%i1r3Uip1c#4R>l3>)2VzGJ2dYSl28RZNMtRM-)jcc@hkV{( zJRRiFB`}k?*Nt05hBlZ3oBd5zElgn7kFFxy8c3&WHap$tYWFE{O2-SQisCbDC(+Zh zRY$jd+f%nja8$?Lr`o=Oji09HHg`!50*^r_89u|}=%r)l(@STOzAcT5(_0Ql`^R{v zy{Dj4jWhqV#4~<+0-@)GgSN<;m`;%vq`LP~*n*&L$3cICg4! z7JT-_ccF268js)t%hR3v=09I~`Qx2O_@ft;>B;0TT3;Z3x_IB_4O1WaGCtuhf?x3V{4?hd{$JG{S*mY-xnhsE z{|xU#?+4I_!LKq~23!2h1mymTQu0@bJ0w?LGDrs|F~HexDEhBRhNa1+RrbyGMfDB# zmGwERsceaOkk{c)1rkWHr0qN~54!S-;f@*pn3OU*nWCSy6mi<(1Djl?&*UrkSpUnC zQfYB%{nw}xh@Pa?^hrMED8HdkXy;cc<(>AtZ>cY?&uWjz6Vns%@iS> zpLk%SAM7K=jKj=C5W6}VM;QHeUdGT|rhqFnPh=6Vd*E8tIeUS-~H-e?{ZH zF4rgx%b@6Y=%0Aau1&@n#sKDJ4b3wRxJBdKiYSr4OI{Gl*Gk(mZW3V%Gl7}*n)I52 zOo~m4P3KDTMwQo8*6h}d){tvbw$Mt_qgzL0_d<|i$t~QbBPF%ff)A-dp*qdm)r>{t zL(QY3W-mg!TW*>t0dMB?ZJ8=*CPHbN#o8L0RZS^M97-mt*&mXD!kC`$a)%bo1qjl( zw<5RYMaYXo1zPEV_4Om>V6(8f-r3$c&}{K+@!Z^Y-huM5%CX(C(J}H^3IS~(J-c;A zCLZD&mf8ZE8`-Y)6I4rLSJGtO@?%U>d3{3*-<|Pg5KBHOHa+1$AHmc>GaX9TEZ)}G z44b3acG#ZqV^@o2SE0w}Wl+i`4Y-)>$chM-XN<{J;$@{}8NU%h3cCR#?Y+@U3c68z zqnLCqIImfGR%O<1)@T+vD`f&Li8^?F5G|;PP)TCpCLIZ`%@ov2x~rtkyq(FIr;-q< zrQi;E`GTb&3fqxwrc^3A7Qd#t$9g2g2SjSh%o@z{b12?qQHqkkq0$+-0&I!JmaG7W zL@KkaMuv6BbyUvJ%}31-&X>*a&WFwy%&*RSINcG7LPQ}F5pjsr$1wfcUSHPLCcxsJ5a1!gp9ZUlM;qjNpIc`*oM(F;i;TGTq@Z z(|EHbDUMC-%#VL}?8Rw(ulU??Sxe~F^wuF&l5dj-xJTUh_(veCy9in+BU?)4IlXXx zMs)V7m+r}_(AKz#Nc!3saaqRXl|F_Em)a+U5zlZqT`wkF zHgLIa)Cp&5hqHVYH=#a>SiUG6tePPdEoIqv_Uu##)0lQfgA6={x%i(2F~0Ka{RspA z+IAdqa5mh#+;}=MjSQqs^Zj_hDx>=PLEF#=!HhEG~t!&89+CosGZF@r}cyjhvpV1+*!==3o-^4#_Q@K$Lu&-dmoXXZRi?hXc?=Q@uWl8 zWyC*V!xg1NAIq?t$l5Xz9n#ER>-fqVc%$e^?$@htkwSA zJ+&Wd+Zrikb}1D4&R#Xj|D;EB_(SQ%QnDSqc1SxNgYPqGdQN)Zr-&=Tk|r+&Gs)C1 za|CMMzr&#Q(psJ?^Y*|`R{og`b}t*BmrDuL8@;rb2W65#ez@(YESXJjLvO>dO7BZD z_QN4wyKK9-B)`Nde(CL<-j@;dXV*(F?WEEhFq~a5qna0&s$3$ieR@nd&ovKc*reZN zIE#fDUex=6BjEUI>9rkiu}g!E773RI@4mM9z)P5|$J71H>ZWqpqrWx?5ZYS!LN@f# z-!fx*eX2ER#glyb@0oqT6esjNL*IS}Ck5F;Jl#*Nt|~h} zO1Lmc{d(~|FWz4p6fQ8yoGu+9vwvyMB-CTKc6hUhP_A*rr&0T}rptEXjEUa%&T|wV z8%wXR!Qn(zR`5Uu9j>#pbJ2(B*yF*}iAFzcFo<;Q1gf6zIYyN&*TKkku-{lczYaf;bv$O&QjcN>pz{%{b?wjwVc2; z<44{A?F{T=((z}N8Oe_Y#zXfqo-gwVKMPMIUFH=I?a2sThM+=Mjdr=Gk#Jt$CqalPcDu4RC47S|rNH<%(w|x-T z=vw8rz=)qxTP?Re5!d0ZI@_)Y!s(X%ZK>m1;vagqIgc+l#*ry1GA~3b;xjO?L^m@6 z%Z)3@N51^5NXgtCsjU#0sWiZZjv|r|Ud+|Y(_%rHAgUh0T6lPP5#dugk*C(Rf6 zGc#*m>}RC}X0Av#g`7--0Zw!rkzxP~QzW><&rBb}86S67F_xtu(zPSjOs5ni6iuz9 z%DfcG*%3CM!p^K11VqBnUx|Ekh0vJo7NazCkbe5p$E^CnSJOk68E`>Angn?$ytr`} ztl-#8U2^~Kb;ZhUOM0+v<2HrRX@ z47+>dQ}Z2QpSA0?&0Q9XbVbAE$?t@w!w064<7s zQ@WHfCQDSu=X6T+YZpmjuH={=C5o(116pX5ixP@+GLBX;B8zRn86AU>^#XB5 z$Fz5v$3P@yJK5u9EaJeWFYhuG#PGEzm=^+z`NzGL8)l<=N!;gt$J(6q8VW+ z%UFo5N+rWY?0Uylvs81qSxzb8n7~+}Au}j4uJaHU=M-!2HCH=;71jvg6QWO&^9c)<&%$GMNzd zOJ^Jg3>vxQmoF7M-a&)}F=pjz@ZO>27$=J$hmpa^d!_kyNDpg(x9v=gI%Ibg$reHs zFQw6wM>nOv?<<*e$fcG@6Pc3i z(FeAidt`Vay&<3wjTZme#93_)^_v_@F~@PlS;~3Zl+on_c^D3+&gfFrv0Ox^t%jJk zn3|ZDn1+~6!-EF(2JLXpoM>n|rFl)Mx&pfbOIA7ix}xlDb=K&L&dcUyrCMWYYwCOK zN6{BL85WclawD}=?+7g2t-eGiY`3eDccF%(ez9^&aPvTF}tp($jGeN zDbHs`Z#AHR1Kt8LuC~kWTpyDaV@-Vt>#&@6-nn!bf=~&M(wHYY3;-UtGEGO(wW~PE zX-YxNf|OrYm|YlCu8gEHqZpIgdv#&{+F>L$i=I>De7lg-Q$t3bc0Q-)Us(6sFYG`M z{Y6+n?GE#WikWxRWAYC`>38B43n96WV>A{tWHdRnlJnKD@k)JCc$=W}aLYgSpmLdhHDFE+j`Ft@H4f0I3= zS^=X`%K=s*k;O8(CgMtP!MHqJJgx@kkBh-oco~XjrKmNkHEK0#H0t<1aL9N6OgEJJ zS#G6x1&YnW=_7Nl+l26$ClC-9sRdbo&al=N&0GBJymAQ}=_OO2J@vq$VE;4TO79A2 zMFZ=POT=k24UkzW@&#QUYUi~MlaR7WqD*B?SFl>)4NH(q;O{o=ChgYfhITu56LxcU z+jLi3C_*zlGdv4Cb3BU=-;8};dn{%xW);p0=d(;u>aJK+{(1x`Nd% zX1I{}vFW(AT9}1QS@u|;t<4@UUP5mIC_$s!e=%`Un{(i%mD1sKQJQ|db|K$mt3r*{ zLD_N+yW~o>Bl(GJ4Dz6`SRo6?El^<237X>ul?< z_6qitz4Pjar_jwP6QlSd$-q@I;liHGf`J;>AB~iC3JXT~(E2XxC{?4XA|1_)lXTIc zhmRYr99$WVUKMEuEOhtCN@Pk<{q?-6gsjdfhxdObm^@-L4 zRHdrYM*19X@e)zV5}5|ze=Ij1=5f&Fy-TG{yc)puvB-GZ@v$I((ybn1opeg6#F>(r z;F-Lc_?em+|CyMX3ga(4=C8qZ;5t4az(xSUV@v5qL`R%TBo|N|0R5OXGwx_fMim-n z-b%n^uX(FNHmam^ng8+&uxUlf)To&)xRUB#*ktQN)5a%#g0|G)@Y`%J23z&!>Ynsh z+Zyr}QB}RDZAH$dZI61GhzLBq?eJnhTT&x9?~A4tqcmTuPU}ePley?8tp}|K!v{S; zB*cemt1n<5ULOeU?MBMp7jdmNbIA&}clcxC?UXWxmMAmeFK26_{XsJxcX z_A9)uiC!uv*%E{AteSZ(5_nV+EmU^1Wd=)uZAa|KA?pcyDuLOigTd%8F6JokWFlcV z%c7HWRyg(QaokgnM`m8>66OJlP{VRl4X?JgiPB!UE#`jO?=f|{aCJoSl3Un<|CyJLgmy3s&|)SIX{IhOzA)7Dv34V zEcA;hSJw_5vNwOrVAG^;WA~2Vz@U(3nA;|zqF4A4O=&}UxW3+MW^Sv#EmxVg?vsM1 z{ECFPTG~~7kHYi{3bDhiKmg6;xYc^)p8iqc^I_xFAYgA9QrI?3x>|$n^fIl_Aw=ImB^71jCuDMrOHNn?Tafe`jjvP^|B5@*2{OsRq&Q?8L5m6s<;qNs=5zMx_~BOBm*BYS43rD zeS?_0qA<|FC(NCCRfqmsj2Kd$ZjcQlgp`@?+pm-~2rm4hZN+4p8CI%i>qcct2<(lj zZ}7ZuY}k7Bo$HvFEwb{*iI?kHcAr~;wak+2dMY0olopN-+fr59O{A>9-y7R&akH+y zHUzwsSg%wys45&8cAzRJo{+UQtqeYEn>uM5MVtlGid*y~2~`Y_mo+q`#@iHD6dj<3 zoqWztkv;l`tNJ#D#TCQkTIa`5-U?ar%K6@UL!M{Hx%t3Be*L$j1p=!A zj+*%EIDzhi9wCUhi+~_l5n>1q1RsJ4aSs7H<~e4b1!7Q%LWqKi!d?Wu2!9bO&4iW* zt4AmYD@SyNbcNjwx*L8s^zDnc!EZxtU%1FsN>|F5naP>Co5ANF&CAbw%xliu&P&ca z&Fjxw%&X4(%&UE-AeP3HPCXqK5xy%75oQ$@ql~b~FrS`ppK5>FKGR;(-q9Z4e%PMX zKGYu8zTRHn{;@qOSA1Mtm|d7zm{*ulSXh{wGAuiz<*}$Ri?FCLr?3DJ^d^Y93xvF} zqPS7uahk~+lQ(1fY5FJok^Rs6nfmAYHTui?3Hv|w+w>>)-|Ii>2R2f}d2TX7ugom(gdVv!kV>oudh(sL@tkcUvV}1Lan?X1BJzmaDDd z&EajTEj_K=&D?E8E%vP&%^PjBEy(Tri2EXB?z10fndVGqfwx{B{13xnFJNK4LA~L< zp`aI_U{FMHhFLax9bYyfl=qTx~)6vjTM6?cWo7B;!-bkfQB~PV- zUxQP_Zvvrbq;QJqTbtny!49FH4#E#M4jK+V9K1T%KFB*5JMcePIH)-2K1e<|Imqw> zU6&`4_q(BLqHAJiqHKa-OlfBYzBdcb3%(sZ7VH`9AIuWG5Udp(E^V34*&ns6VhdYt z?rBbGK5b5GR-2x0u9oI~rAkJMZH{inG{0^B()_G>wz;&qvpJy|)!ZuWZlYvjAj#^+ z?8dgoa+NilIh;+ErH7T9nVYSM#h!J8d4r9X1=(@m={_XdCGuk=QqOP2-0$6&i;AHgGY`ko|Bi5YZEPmjX zoPqj;I;4WB;$8*FmB*FYRmAmvL!%h*f7%hO8>#WWeep}3#vJvcEa46H@YRxgfZNAe;Wk-|uB zBpAtp6h(3(1y1Ns1P7z>EiPMJwj76kgl0fYp)<;msC^aHP1Q{$I%PTqI#{Y=stQ~l zt_oM0R-RUvhKY9`K%RE}tjs=V7GN%G(Q4LeIU8@AofQ8%J|X^9d~$r8-fO)`y%fC| zbUP4q1`&;)>e_qJv(~lNvDQo7N!^{)p45}{$*{|?!?5>D=a+7gc99-_^XFqv$3Beh zt!=I4u8rCXCUz~B4XtIal>_yX){fU0r{}x;yB4}Cy1KiPyH2_?-h!ywueJx2s=DdA znYk&uA^20eEk2C}kL8Ws1|rxz$Na}w#umo3#=>naD>)~k*1PR{SJrygQr1q_($@Od zg4fV%HES(vF>Bbh!nMh@=WBC@8r-j`UQ;F6^b+@mb%u5OJ9ik0>2#}fs(kA1>h9?7 zE^IICDeNxnwd=IoQ|UQ$div#OL-wWlfCbsb*7??@*&5rTq{P>W35l-~lM~|% zUK>Ojq!`4kw!1E(oJ4D;zU(FStaq(G=3K{dnLwa8}7i)o;_0;iRUC(CM zX2)hPT_;_4YI|x=>L+*?yaV1l-8tPY-Y(9~Oa9FNss9K6y{4_E+@?{<>X&!t35S|8 zo64KInv$B1o6?&GnnIdZn#P-OP1#M0O~aD#4>#S&_ikP#yGjvGu6nbFtcQY|yy&L= z0V{JW?& zRuQ-pk`P3MsztO?AbnPI-$_OMT0QmX9r_Em1AdmfaSmmVy?lmWdYcmcSM^7T-KytCtQ=B^jf7 zYj^g@yhA5KQPpMDIn|9GxgO;n=^iMLB99V}ERT8*;B%0JHwV?9H3?!b$6k&bSNf=w zp=hc!qh1;f(o%|298`oVIVj`TJ!%>!rRIcNB*g6Br#BD;F&n*A|npQ10MlWoZSo@x!Pq`R~B`v(WrNW)c3BL>HfP<#*Omm5|ix=@~J&So7 z^C4!hbE`AAb5yZ9^6fn5P-kXmd1qH=Qs;4JdgnlANasrDcqgtiyK}K~SP|Z$?WVP- zeO2?SPPmq;c8_L{4!2g3w!Nmk&W0APc8cc7(CLuG5W`T~(DkAIp(jI+`HZ-bN>!?_(XYx>z%;G8TbV$68}$v2NIh zSYxb0H+&UNrAehurB9_sWkjVDIy_KeQur`YJ@H|pR-%Ey0|P??Z38_64FjDC-PIzy zJiCI9@$m7D@rH4U>G|>8@lpNi*tZKdL*tp_<>OuBN#n=k>Ei?AA>%9KUG!*y}*-; zQ6tdsDwYF_#_C~fu$QncSaWO)mJjQS4a08WVsVwIx0|_}MVke5Z|U;ric|Ab3*ou& zA~@ltIwe@{P%Xyq*;E!A=9xPhAG^;jn)c)QSs;+{_5s&U+t0I6Ad@@?ofmu-jJzZp z_qatF+JLk1b1IYPNS}c$z%wqTFZDcg+#DdqIiF{QKt_oM>SO?@%b=ed@jlu0L})k_i3Ip zF#xiJ4WOFu5|Ba9Ic=VE%0B1x9LTzNfQr5tAR7Z}V}8M(15nTAfy@~|T~0m6PdUdA zJ;w(mvm*gO6OG<+DV1_lSvl+C0NDxC&4Iza=2}eoNe_@60U&R205k>A8BYZ8Yo`Hl z6(CsaMJiHT<#*r@f3<=oDF(Z%vJPThwy3O=p%p4!hJiO<)BZXO0LsfhS0*P_|V z1AP<)yj@Sjmbi{R#g<0)20-Ju6gSRZ_<$XTv!Nk*^9*No#Fv%o<8c;|y5Hy0fL0$I z%BE7OO5ETRwe=cUbJ&;`$@P>6)(X7dosrnaCzm+b-LmMl8@-6`E=ySA2R(lHrS7e# z`EJ6ZYd2M5ZDJL#gH3Gry##lGO&hUMMCPH#Zr);9H$?(S0B+MThR8Ye*=1_%rQ0Ie z3Oo+?eeIj+`@*+Qe4`il=`{E>@AUTR*s15K|0&Dq!l~BjRo|Rnf=aOt`!;8)XS8QN zXAEa*XZUAUXF_K(XXIzDXIy7SXBW=qVzXl(eR?1Jfoq-Xqk(M23p@NOW`iBBp;!g3 zL4AwLF01(I(p+<^Pr&N)Ts8*7Rkqe+UrH;oid!nztj8vt-YhtNDv6EavefUXGPJH4 zcgk3B`&1tr$OZf9^#0lVH}7A*?|UEge))a%ecqQ>$u3~uN599sfBXK+`)BWG-xi50#6bv1rg{Jy#RjmePg$u*Mg&GEyhr{BiO&t5BPFQ5kbj{Pxh6s_a#Q5C2&o8N z9a$Y^-Ss+}Its)s#Llxb|5Ff=mvQ@`FYW2qvs3DqY7MbD4w>l=2ZQeIKfynvmo6d( zlixs_1U?;x0b9Xt085hM_ys}2XDiN!3dAH6w3TP$`|aM1UR1ZOvm|got;6v8#4|6T z>G~xw5mrH`_%zDCGJ$FtrMtl(y0)Q#M!g(%(LY1bYF$G{>Jn< z^hL_->y%kw%AE7(9tqjE6S9O7axUp-`l_%EG^Rx@n+f}$!h~Z^xsqkiD3Vpr!h7EM z!Yl`T-;^zj4~$`|T&|w53CEp6ljY9*dveYaxxdyAE@5_k_R9Cycs0cB(rll7yehc% zGm!b-AG;W+;yC&zvLyi*q7yooyXK_S{2z?}7a1P4+k0cYq#Im=1cd{Xg&KR!#xUxC zCrg?ZOFam6xsD9x&IS##V8~I?4T^F7Bg;-WVIzs@H=O817jk51QMSV%ABG0_*UYj( zd%MseQ{4tgme2c+Ou7MX-1SLm@$5+q>9~}5RwCNch43T^=rWeIaV(Rvjp-BU5zN>U zM{Z__wRLV5_oPH)+C6lY3&lzJM)vfeCe7ETFl2Lz8?e8x5?$|0#;0?n2889QnRD8A=xINR;u#5aRM&%#?tb8GN_;iX^O!(^bH(=ks>_n)3S|=5Hh*wjYD4yMgS10<#wY(oO1&1;7M~=#y{JjcwRW%6vzn94WRP%qxwJss|#{Lc0 z0>lGctK?O)>Z~f2%^>ezlkV-%I3ws`)?VS}~Y0 zwzvQ5UJDSf*Dmwjt0q|jDh}H}Q`o+3@~cIDbFHv2UjBhmc~hppRiRFx+QOn<9FoqLt1 z{ohOEf2#RE=UQqismSsFm#J>s{+Ysdjq$G*NeMd@Kk-FOxlCE@ zW)Jo+b}tyAVjJ2SDWNjx`Zy~SodNqhe_c6^xZJLgI0 zo6>t&QI84bcL=TAIX<7U%&txxo))K88n*?|oE5A;F3D&Kzj;r8?eA6CpDOA7o60^{ z7ThRL(I2;Lf`b@I!qb${1unOdVca>zgX9=uRAhsKPJh+1HICm%YC4Sub8dCHk^X%v zwv(TWa;TPNaSZF}bp0wA({UB?G*OHOD&9x7s;}1ybn?tT>z8L(sAM0Nque*YOcHv< zoZ~j$O!p;Y3{asya_)nhXjdZ;|EZcPe=m`ZojB z7f&wz9p(Om*8BgjdfaL1-nv0sY39|hj-WEiYabMqryp`1DoQIiLAS2`T>kz&WXgN9 zet)X>Fmbyf@aO0eU1`Nu(!TxGn=c++Xu=m36nAwW5|ztQ%s-7R5Wr+l4NQ2+ZLWyc z7n5Mp#0JJ7LfIN z2wIk@&y2%{JRGv|GICf}sn4pyhEEN7d%@|JrI5ff1x3ErR;#ASbQm^XY=i=*4oBM{ zGaRtV4I@@3Z%hGuwj_l;`%~%djbFT>r7mpI4ue0+KK55nj}fvg}_cfBM)D=hVIbujr42UoqM99FpM3*9kAQ-epi`*bTzG`ucu6p99P ztE9;MUQA6xUmQ*mzDk8G*u>PUuHw;50QOw6js8=~4Ed`+EZOloWWe6bw*2MO++fY3 zt>#}o@z%~MxyEykkfYRf(AGv7Hm=Dj4ScSTtP@`OK((x_n7rQW_T45c8jdUG;=!libj zFBzrezDhe;aOBcR+xOf{o@Dj9Xnq@}I;AhlOA)quTeM&aQ}?hh)Jp-hN?xBof|+|l`T}wCc*H7P$&;_zaMGzOP-GDZlhrUVf|H$IxrZzs#7Ufqa8qHE z!V>;edW%oR2c(M4ZLXx6R<_~(_~bL&Svlwk#ayHEsY!M!?8Ijg*OpG4G5x}l`{09z zS$`E>FV#BlW@2zJ#ffvd`_5`a+fAh9nmegDbz!3JyXD$Ecv$Rzdq#flZ-FbI*sT-uLJxP;j(p>P~~B9JSQNuaT^XhahnY- zJ{3Fa=n%+QfbJ)z=sqG8 zH|H$7>Xw@FSTuZJgi3x4qHV~~cciOV@a zS4A15Y;JGq@|YeXB)~5wMojP<6%la{M`KePa~FCOb4x3GQO3>MMn-xoGf_qzJ{2An zM=A5iR`Om><{DnAnxxb^sfC4?A0XXJHRfMq@Jv6LVppd=3UN z(*J_uVk623LSX>NdFJIj=!U8 z@67#+VBDq-b|Bya2+R!yof86`*Zdu&e@OQ`$RBC{+D?E1(A0m({4H&dKTZ4}f}5HC zleVL)lkG3sFf#?2+nU>%+q*aeyxS|C^e>!~C~x@vru% zsQmx8$jOFNjlo-0y8TFlke%1js{0fz8PNy~6SgrtPHcqIfRxCDiOQ$Yz? zK8OGxL;}hq{Yx|dSogf407Svw*~Qr2)cns-`(54tq4D(pfrH>bz=Qt3O#Uq`|5siA zRoB0zfqx76zuxss|kzx_XKaW*}A211Bqcm-E3rQ2W=Z0pIWNq^+DCZH+yFQIMvUi>*1mi<7H4 zNZ!iKT*chp)x_B8UjQ8|puW47!oMJz4i2`zq5OdX|L++5GWXC`H@5(3Sb3S#3-N<= z4Cul1yz~$wdXTzUtv|tgO4; z(UHFEV?Y?;!ke1Ai! zi2AT|Ym3UF!aRUY`gHFaKT7YI;96Jp!FZ;cSoK@UciXUQR4Ye&rtrSb+YQ621LDVPGiW%jd`MU=XO#cQ8I)z+wJ~2LS`M zzJ)=~9qSuBKA!LRLiqT+O8%$=0bZVO z`GR=_zw;Z-VM*2oCK-0kA=>;Oh|E-?EP%!jcJ%gc8fp7H;hVp%{XXttF@JD-q zp@4zEg9-3|YjZ%&;O}JSg+jjd7q9^T_dEoI_`j7I=t`j9$_zOd`Wsn*yZ5{HLU{Qg z-^vH!6A=7X76?C&;I}-WQ2y`mpin{n@9=m5ulz<9C@#|Cgg^lEej^J2M_=LV`FL1{Ich?_v0KoXZZ7);^0{PajphDm41%Lr9`G%elA1~y0zTx6z zY-MZiL`(oYA^vr2Ch&iKK=$j9%h<`~*TDfGrVuYLF#!vU3`~}o;I|P24>7_23*msF fvbh`muQGwohpZYdcIT&n*1nTlkcSuY54rz8+%=$R literal 0 HcmV?d00001 diff --git a/client/rapport/documentation/SRS-PFE004.pdf b/client/rapport/documentation/SRS-PFE004.pdf new file mode 100644 index 0000000000000000000000000000000000000000..50d75a7ef69eb25aab7441475beb77f587b1b5e4 GIT binary patch literal 368833 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

CjlPBD4j+*mBn%TqLm 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≷RH+VplGiVvm00m(j&A)zAUc+{CcH8RuN@dSc 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 literal 0 HcmV?d00001 diff --git a/client/rapport/documentation/diagrammes-iteration-2/Diagramme_de_conception_iteration2.svg b/client/rapport/documentation/diagrammes-iteration-2/Diagramme_de_conception_iteration2.svg new file mode 100644 index 0000000..71103d3 --- /dev/null +++ b/client/rapport/documentation/diagrammes-iteration-2/Diagramme_de_conception_iteration2.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/client/rapport/documentation/diagrammes-iteration-2/Diagramme_de_deploiement_iteration2.svg b/client/rapport/documentation/diagrammes-iteration-2/Diagramme_de_deploiement_iteration2.svg new file mode 100644 index 0000000..27ae1aa --- /dev/null +++ b/client/rapport/documentation/diagrammes-iteration-2/Diagramme_de_deploiement_iteration2.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/client/rapport/documentation/diagrammes-iteration-2/Diagramme_de_sequence_join_room_iteration2.svg b/client/rapport/documentation/diagrammes-iteration-2/Diagramme_de_sequence_join_room_iteration2.svg new file mode 100644 index 0000000..7d477d4 --- /dev/null +++ b/client/rapport/documentation/diagrammes-iteration-2/Diagramme_de_sequence_join_room_iteration2.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/client/rapport/documentation/diagrammes-iteration-2/Diagramme_de_sequence_manage_room_iteration2.svg b/client/rapport/documentation/diagrammes-iteration-2/Diagramme_de_sequence_manage_room_iteration2.svg new file mode 100644 index 0000000..201afb8 --- /dev/null +++ b/client/rapport/documentation/diagrammes-iteration-2/Diagramme_de_sequence_manage_room_iteration2.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/client/rapport/documentation/diagrammes-iteration-4/Diagramme_conception_iteration4.svg b/client/rapport/documentation/diagrammes-iteration-4/Diagramme_conception_iteration4.svg new file mode 100644 index 0000000..27d5007 --- /dev/null +++ b/client/rapport/documentation/diagrammes-iteration-4/Diagramme_conception_iteration4.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/client/rapport/documentation/diagrammes-iteration-4/Diagramme_de_sequence_creation_Room_iteration4.svg b/client/rapport/documentation/diagrammes-iteration-4/Diagramme_de_sequence_creation_Room_iteration4.svg new file mode 100644 index 0000000..7ed9420 --- /dev/null +++ b/client/rapport/documentation/diagrammes-iteration-4/Diagramme_de_sequence_creation_Room_iteration4.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/client/rapport/documentation/diagrammes-iteration-4/Diagramme_de_sequence_deroulement_quiz_iteration4.svg b/client/rapport/documentation/diagrammes-iteration-4/Diagramme_de_sequence_deroulement_quiz_iteration4.svg new file mode 100644 index 0000000..d65a331 --- /dev/null +++ b/client/rapport/documentation/diagrammes-iteration-4/Diagramme_de_sequence_deroulement_quiz_iteration4.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/client/rapport/documentation/diagrammes-iteration-4/Diagramme_de_sequence_join_room_iteration4.svg b/client/rapport/documentation/diagrammes-iteration-4/Diagramme_de_sequence_join_room_iteration4.svg new file mode 100644 index 0000000..ab11500 --- /dev/null +++ b/client/rapport/documentation/diagrammes-iteration-4/Diagramme_de_sequence_join_room_iteration4.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/client/rapport/documentation/diagrammes-iteration-4/Diagramme_deploiement_iteration4.svg b/client/rapport/documentation/diagrammes-iteration-4/Diagramme_deploiement_iteration4.svg new file mode 100644 index 0000000..9da1d0a --- /dev/null +++ b/client/rapport/documentation/diagrammes-iteration-4/Diagramme_deploiement_iteration4.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/client/rapport/rapport_iteration_1.md b/client/rapport/rapport_iteration_1.md new file mode 100644 index 0000000..23792b2 --- /dev/null +++ b/client/rapport/rapport_iteration_1.md @@ -0,0 +1,72 @@ +# Plan d'itération 1 + +## Étapes jalons + +| Étape jalon | Date | +| :------------------------------------- | :--------- | +| Début de l'itération | 2023/09/05 | +| Première rencontre avec les promoteurs | 2023/09/19 | +| Démo des fichiers SRS et liste des CU | 2023/10/02 | +| Fin de l'itération | 2023/10/04 | + +## Objectifs clés + +Les objectifs clés de cette itération sont les suivants: + +- Créer un recueil des user stories +- Prioriser les user stories +- Créer un document SRS +- Créer une liste des cas d'utilisation + +## Affectations d'éléments de travail + +| Nom / Description | Priorité | [Taille estimée (points)](#commentEstimer 'Comment estimer?') | Assigné à (nom) | Documents de référence | +| ------------------------------ | -------: | ------------------------------------------------------------: | --------------- | ----------------------------------------------------------------------------------------------- | +| premiere liste de user-stories | 1 | 4 | tous | [Document de Recueil de User Stories ](./documentation/Document-de-Recueil-de-User-Stories.pdf) | +| Priorisation des user-stories | 2 | 2 | tous | [Document de Recueil de User Stories ](./documentation/Document-de-Recueil-de-User-Stories.pdf) | +| Document SRS | 3 | 4 | tous | [Document SRS](./documentation/SRS-PFE004.pdf) | + +## Problèmes principaux rencontrés + +| Problème | Notes | +| -------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| L'équipe n'est pas sure de la politique de confidentialité de socrative et de la possibilité de s'inspirer de son iterface utilisateur | Nous nous somme finalement éloigné de ce design pour des raison de temps | +| Les disponibilités des membres de l'équipe sont difficile à coordonner avec celles des promoteurs. | Nous avons décidé de faire des rencontres avec les promoteurs en ligne, et d'alterner les rencontre entre les lundi et les mardi | +| Mauvaise compréhension sur la sécurité de l'application. Est-ce que les professeurs ont besoins de comptes sécuritaires ou non? | Nous avons finalement écarter ce problème en nous focalisant sur l'objectif d'apporter de la valeurs aux client. L'application actuelle n'a pas besoin de sécurité puisque tout le monde peut prendre le role de professeur. (pas de comptes) | + +## Critères d'évaluation + +> Une brève description de la façon d'évaluer si les objectifs (définis plus haut) de haut niveau ont été atteints. +> Vos critères d'évaluation doivent être objectifs (aucun membre de l'équipe ne peut avoir une opinion divergente) et quantifiables (sauf pour ceux évalués par l'auxiliaire d'enseignement). En voici des exemples: + +- Le document des user stories doit être approuvé et repriorisé par les promoteurs. +- Le document SRS doit être approuvé par les promoteurs. +- Le document SRS doit comporter au moins 10 cas d'utilisation. +- Le document SRS doit comporter au moins 10 exigences fonctionnelles et 5 exigences non-fonctionnelles. +- Le document SRS doit comporter une liste des hypothèses du projet. + +## Évaluation + +| Résumé | | +| ------------------ | ---------------------------------------------------------------------------------------------------------------------------------- | +| Cible d'évaluation | Itération | +| Date d'évaluation | 2023/10/04 | +| Participants | **Équipe** : Paul Berguin, Mihai Floca, Francois Richard, Bavithra Jeyarasa, Emerick Paul
**professeur** : Christopher Fuhrman | +| État du projet | 🟢 | + +### Éléments de travail: prévus vs réalisés + +Tous les documents prévus ont été réalisés. Les documents ont été approuvés par les promoteurs. + +**Note :** Nous n'avons cependant pas pris le temps de corriger les fautes d'orthographes et de grammaire des documents. Il est possible que des fautes soient présentes dans les documents, les prochains documents seront plus soignés. + +### Évaluation par rapport aux résultats selon les critères d'évaluation + +Tout les critères d'évaluation ont été atteints. + +## Autres préoccupations et écarts + +Nous n'avons pas encore de solution de déploiement pour l'application. Nous envisageons d'utiliser la technologie websocket qui est assez lourde et restreint les options de déploiement. + +
Comment estimer la taille : + diff --git a/client/rapport/rapport_iteration_2.md b/client/rapport/rapport_iteration_2.md new file mode 100644 index 0000000..5aa3b38 --- /dev/null +++ b/client/rapport/rapport_iteration_2.md @@ -0,0 +1,119 @@ +# Plan d'itération 2 + +## Étapes jalons + +| Étape jalon | Date | +| :------------------- | :--------- | +| Début de l'itération | 2023/10/05 | +| Démo | 2023/10/31 | +| Fin de l'itération | 2023/11/02 | + +## Objectifs clés + +Les objectifs clés de cette itération sont les suivants: + +- Céation d'une application web fonctionnelle +- Complétion des cas d'utilisation en relation avec les user-stories prioritaires +- Recherche préliminaire sur les technologies de déploiement + +## Affectations d'éléments de travail + +| Nom / Description | Priorité | [Taille estimée (points)](#commentEstimer 'Comment estimer?') | Assigné à (nom) | Documents de référence | État | +| ------------------------------------------------------------------------------ | -------: | ------------------------------------------------------------: | --------------- | ----------------------------------------------------------------------------------------------- | ---- | +| Création du squelette de l'application | 1 | 1 | Francois | | 🟢 | +| CU 03 – Création d’un questionnaire | 1 | 4 | Francois | [Document SRS](./documentation/SRS-PFE004.pdf) | 🟢 | +| CU 04 – Suppression d'un questionnaire  | 3 | 1 | Francois | [Document SRS](./documentation/SRS-PFE004.pdf) | 🟢 | +| CU 05 – Ajout d’une question à un questionnaire | 1 | 2 | Francois | [Document SRS](./documentation/SRS-PFE004.pdf) | 🟢 | +| CU 06 – Suppression d’une question d’un questionnaire | 1 | 1 | Francois | [Document SRS](./documentation/SRS-PFE004.pdf) | 🟢 | +| CU 07 – Modification d’une question d’un questionnaire | 1 | 1 | Francois | [Document SRS](./documentation/SRS-PFE004.pdf) | 🟢 | +| CU 08 – Visualisation des questionnaires | 2 | 1 | Paul | [Document SRS](./documentation/SRS-PFE004.pdf) | 🟢 | +| CU 09 – Lancement d’un quiz | 2 | 4 | Paul | [Document SRS](./documentation/SRS-PFE004.pdf) | 🟢 | +| CU 10 – Connection à un quiz | 2 | 4 | Paul | [Document SRS](./documentation/SRS-PFE004.pdf) | 🟢 | +| CU 11 – Répondre à une question | 1 | 3 | Mihai | [Document SRS](./documentation/SRS-PFE004.pdf) | 🟢 | +| CU 12 – Passer à la question suivante | 2 | 1 | Paul | [Document SRS](./documentation/SRS-PFE004.pdf) | 🟢 | +| US 15 – Dupliquer un questionnaire | 2 | 1 | Mihai | [Document de Recueil de User Stories ](./documentation/Document-de-Recueil-de-User-Stories.pdf) | 🟢 | +| US 08 – Création commentaires (ou rétroaction) sur les réponses d'une question | 1 | 1 | Francois | [Document de Recueil de User Stories ](./documentation/Document-de-Recueil-de-User-Stories.pdf) | 🟢 | +| Support du LateX dans les quiz | 3 | 1 | Francois | | 🟢 | + +## Problèmes principaux rencontrés + +| Problème | Notes | +| --------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- | +| Choix du framework à utiliser pour le frontend de l'application | Nous avons finalement choisi d'utiliser React.js pour le frontend de l'application. | +| Choix de la technologie pour la communication des questions des quiz entre étudiants et professeurs | Nous avons opté pour l'utilisation de websocket, dans un soucis de simplicité | +| Support de GIFT | Nous avons choisi d'utiliser le template créé par le professeur | + +## Critères d'évaluation + +> Une brève description de la façon d'évaluer si les objectifs (définis plus haut) de haut niveau ont été atteints. +> Vos critères d'évaluation doivent être objectifs (aucun membre de l'équipe ne peut avoir une opinion divergente) et quantifiables (sauf pour ceux évalués par l'auxiliaire d'enseignement). En voici des exemples: + +- L'application doit être fonctionnelle +- L'utilisateur doit pouvoir créer un questionnaire +- L'utilisateur doit pouvoir supprimer un questionnaire +- L'utilisateur doit pouvoir ajouter une question à un questionnaire +- L'utilisateur doit pouvoir supprimer une question d'un questionnaire +- L'utilisateur doit pouvoir modifier une question d'un questionnaire +- L'utilisateur doit pouvoir visualiser les questionnaires +- L'utilisateur doit pouvoir lancer un quiz +- L'utilisateur doit pouvoir se connecter à un quiz +- L'utilisateur doit pouvoir répondre à une question +- L'utilisateur doit pouvoir passer à la question suivante +- Création d'une couverture suite de test de 80% de l'application + +## Évaluation + +| Résumé | | +| ------------------ | ---------------------------------------------------------------------------------------------------------------------------------- | +| Cible d'évaluation | Itération | +| Date d'évaluation | 2023/11/02 | +| Participants | **Équipe** : Paul Berguin, Mihai Floca, Francois Richard, Bavithra Jeyarasa, Emerick Paul
**professeur** : Christopher Fuhrman | +| État du projet | 🟢 | + +### Éléments de travail: prévus vs réalisés + +Nous avons réalisé tous les éléments de travail prévus, bien que certains éléments présentent encore quelques bogues. De plus, peu d'effort ont étés assignés a la qualité de l'interface utilisateur. + +### Évaluation par rapport aux résultats selon les critères d'évaluation + +La pluspart des objectifs ont été atteints. L'application est fonctionnelle, mais présente encore quelques bogues. La couverture de test est de 95% pour le backend et de 0% pour le frontend. +D'un autre coté, nous avons ajoutés des fonctionnalités qui n'étaient pas prévues, comme la visualisation en temps réel des réponses dans un tableau coté professeur. + +## Autres préoccupations et écarts + +- Nous n'avons pas encore de solution de déploiement pour l'application. Héroku demande un compte de crédit pour déployer une application. Les solutions GCP, AWS et Azure sont très complexes et demandent beaucoup de temps pour être mises en place. +- La couverture de test ne nous satisfait pas. Nous avons eu de la difficulté à tester les composants React. Cet objectif est donc reporté à l'itération 3. +- Pour le moment, les quizs sont sauvegardés dans les cookies du navigateur. + +## Retour des promoteurs suite à la démo + +- Les promoteurs ont appréciés la démo +- Ils ont demandé que nos prochains efforts soient concentrés sur le support d'image dans les questions des quiz +- Ils ont aussi demandés la gestion de la langue dans les questions des quiz (Francais en priorité) +- Ils ont aussi soulevés la question de sauvegarde des quiz et des questions. Le professeur a suggéré de sauvegarder les quizs dans des fichier textes que l'on pourrait ensuite importer dans l'application. Cela permettrai de ne pas avoir à gérer une base de données. +- Ils ont aussi demandés que l'on puisse cacher les réponses dans le tableau récapitulatif (coté professeur). +- Ils ont aussi demandés que l'on se concentre sur l'option de création d'un quiz au rythme de l'étudiant +- Ils ont aussi soulevés le fait qu'ils ne connaissent pas le format GIFT. Il faudrait donc ajouter un lien vers la documentation de GIFT dans l'application. +- Ils ont aussi soulevés la question du déploiement de l'application. (solutions proposées : github pages) +- Ils ont aussi demandés que l'on ajoute le % de réussite de chaque question dans le tableau récapitulatif (coté professeur). + +# Principaux diagrammes + +## diagramme de conception actuel de l'application : + +![Alt text](./documentation/diagrammes-iteration-2/Diagramme_de_conception_iteration2.svg 'Diagramme de conception') + +## diagramme de déploiement actuel de l'application : + +![Alt text](./documentation/diagrammes-iteration-2/Diagramme_de_deploiement_iteration2.svg 'Diagramme de déploiement') + +## diagramme de séquence actuel de JoinRoom : + +![Alt text](./documentation/diagrammes-iteration-2/Diagramme_de_sequence_join_room_iteration2.svg 'Diagramme de séquence JoinRoom') + +## diagramme de séquence actuel de ManageRoom : + +![Alt text](./documentation/diagrammes-iteration-2/Diagramme_de_sequence_manage_room_iteration2.svg 'Diagramme de séquence JoinRoom') + +Comment estimer la taille : + diff --git a/client/rapport/rapport_iteration_3.md b/client/rapport/rapport_iteration_3.md new file mode 100644 index 0000000..b40930b --- /dev/null +++ b/client/rapport/rapport_iteration_3.md @@ -0,0 +1,110 @@ +# Plan d'itération 3 + +## Étapes jalons + +| Étape jalon | Date | +| :------------------- | :--------- | +| Début de l'itération | 2023/11/03 | +| Démo | 2023/10/13 | +| Fin de l'itération | 2023/11/16 | + +## Objectifs clés + +Les objectifs clés de cette itération sont les suivants: + +- Création d'une option de création de quiz au rythme des étudiants +- Support des images dans les questions +- Support des formules mathématiques dans les questions +- Gestion de l'import/export des questionnaires +- Déploiement d'un prototype de l'application + +## Affectations d'éléments de travail + +| Nom / Description | Priorité | [Taille estimée (points)](#commentEstimer 'Comment estimer?') | Assigné à (nom) | Documents de référence | État | +| --------------------------------------------------------------------------------------------------- | -------: | ------------------------------------------------------------: | --------------- | ----------------------------------------------------------------------------------------------- | ---- | +| US 08 – Questionnaire au rythme de l'étudiant | 1 | 2 | Paul | [Document de Recueil de User Stories ](./documentation/Document-de-Recueil-de-User-Stories.pdf) | 🟢 | +| US 17 – Rétroaction a une question répondu par l'étudiant | 1 | 2 | Mihai | [Document de Recueil de User Stories ](./documentation/Document-de-Recueil-de-User-Stories.pdf) | 🟢 | +| US 04 – Support des images | 1 | 4 | Bavithra | [Document de Recueil de User Stories ](./documentation/Document-de-Recueil-de-User-Stories.pdf) | 🔴 | +| Suite a la démo précédente : Import/Export des questionnaires | 2 | 4 | Emerick | | 🔴 | +| Suite a la démo précédente : Création d'une documentation GIFT | 2 | 1 | Francois/Paul | | 🟢 | +| Suite a la démo précédente : Déploiement d'un prototype Frontend de l'application | 3 | 3 | Mihai | | 🟢 | +| Suite a la démo précédente : Déploiement d'un prototype Backend de l'application | 3 | 3 | Paul | | 🟢 | +| Suite a la démo précédente : Ajout du % de réussite des questions dans le tableau | 2 | 1 | Paul | | 🟢 | +| Suite a la démo précédente : traduction de l'application de l'anglais vers le Francais | 1 | 1 | tous | | 🟠 | +| Suite a la démo précédente : Ajout de l'option de cacher les réponses dans le tableau en temps réel | 2 | 1 | Paul | | 🟢 | + +## Problèmes principaux rencontrés + +| Problème | Notes | +| ------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Support de l'image dans l'éditeur de quiz | Afin d'accélerer l'avancée du projet, nous avons opté pour un éditeur, choix qui complique le support de l'image pour chaque question | +| Support du import/export de fichiers textes pour quizs | Nous avons pris plus de temps que prévu pour réaliser cette fonctionnalité. | +| déploiement de l'application backend | Nous avons essayer plusieurs options. Nous avons essayer de déployer le backend sous forme de docker sur Azure. Nous avons aussi déployer notre backend avec glitch.com. Le docker a couté 4$ sans appel un weekend. Gitch.com est gratuit mais turn off l'application au bout de 5 minutes d'inactivité | + +## Critères d'évaluation + +> Une brève description de la façon d'évaluer si les objectifs (définis plus haut) de haut niveau ont été atteints. +> Vos critères d'évaluation doivent être objectifs (aucun membre de l'équipe ne peut avoir une opinion divergente) et quantifiables (sauf pour ceux évalués par l'auxiliaire d'enseignement). En voici des exemples: + +- Tous les tests unitaires passent +- Les fonctionnalités discutés durant la derniere démo sont implémentées +- L'application est déployée + +## Évaluation + +| Résumé | | +| ------------------ | ---------------------------------------------------------------------------------------------------------------------------------- | +| Cible d'évaluation | Itération | +| Date d'évaluation | 2023/11/16 | +| Participants | **Équipe** : Paul Berguin, Mihai Floca, Francois Richard, Bavithra Jeyarasa, Emerick Paul
**professeur** : Christopher Fuhrman | +| État du projet | 🟠 | + +### Éléments de travail: prévus vs réalisés + +Certains des éléments de travail prévus n'ont pas été réalisés. + +- L'import/export de quizs n'a pas été réalisé. + - En effet, nous avons eu de la difficulté à trouver une solution pour importer/exporter des quizs. Nous avons essayé plusieurs solutions, mais aucune n'a fonctionné. Nous avons donc décidé de reporter cette fonctionnalité à l'itération 4. Nous prioriserons cette fonctionnalité pour l'itération 4. +- Le support des images dans les questions n'a pas été réalisé. + - Le choix d'utiliser un éditeur de texte pour les questions a compliqué le support des images. Nous avons donc décidé de reporter cette fonctionnalité à l'itération 4. Nous prioriserons cette fonctionnalité pour l'itération 4. + - Nous pensons qu'il serait intéressant, pour les prochaines itérations, de gerer la création des questions avec un composant personnalisé qui permettrait de créer des questions en n'utilisant que des boutons et avec des champs spécifiques pour le contenu des questions/réponses. Cela permettrait de simplifier le support des images et des formules mathématiques. +- La traduction de l'application est partiellement réalisée. +- Nous avons travailler sur l'interface graphique de l'application. + +La plupart des éléments de travail prévus ont été réalisés. + +### Évaluation par rapport aux résultats selon les critères d'évaluation + +- Tous les tests unitaires passent + - Nous avons ajouté des tests unitaires pour les composants React (il faut encore en ajouter). Nous avons aussi ajouté des tests unitaires pour le backend. +- Les fonctionnalités discutés durant la derniere démo sont partiellement implémentées. (7.5/10) +- L'application est déployée + - Nous avons déployé le backend sur glitch.com. L'application est disponible à l'adresse suivante : https://ets-glitch-backend.glitch.me/ + - Nous avons déployé le frontend sur Vercel. L'application est disponible à l'adresse suivante : https://evaluetonsavoir.vercel.app/ + +## Autres préoccupations et écarts + +- La solution de déploiement du backend n'est pas idéale. Nous avons essayé de déployer le backend sur Azure, mais cela nous a couté 4$ sans appel un weekend. Nous avons donc décidé de déployer le backend sur glitch.com. Cependant, glitch.com turn off l'application au bout de 5 minutes d'inactivité. Glitch.com n'est pas une solution idéale pour le déploiement d'une application. Cependant pour un prototype, cette solution nous satisfait. Nous envisageons de discuter avec les promoteurs pour explorer d'autres solutions de déploiement. +- Le support du LateX coté étudiant n'est toujours pas implémenté. Nous avons décidé de prioriser cette fonctionnalité à l'itération 4. + +## Retour des promoteurs suite à la démo + +- Les promoteurs ont appréciés la démo +- Ils ont repéré quelques bogues + - pas de bouton de déconnexion + - reload des pages ne fonctionne pas sur la solution déployée + - probleme de connexion a un nom de salle inexistant + - nom de la salle en chiffres uniquement + - support du LateX coté étudiant +- Ils ont demandés la possibilité de retourner sur une question (dans le tableau des résultats en temps réel) pour donner de meilleur rétroaction aux étudiants +- Ils ont demandés de prioriser : + - le support du LateX coté étudiant + - le support des images dans les questions + - l'import/export des questionnaires + +# Principaux diagrammes + +pas de changements majeurs par rapport à l'itération 2 + +Comment estimer la taille : + diff --git a/client/rapport/rapport_iteration_4.md b/client/rapport/rapport_iteration_4.md new file mode 100644 index 0000000..24fe60d --- /dev/null +++ b/client/rapport/rapport_iteration_4.md @@ -0,0 +1,138 @@ +# Plan d'itération 3 + +## Étapes jalons + +| Étape jalon | Date | +| :------------------- | :--------- | +| Début de l'itération | 2023/11/17 | +| Démo | 2023/12/05 | +| remise du projet | 2023/12/13 | +| Présentation finale | 2023/12/13 | +| Fin de l'itération | 2023/12/13 | + +## Objectifs clés + +Les objectifs clés de cette itération sont les suivants: + +- Création d'une option de création de quiz au rythme des étudiants +- Support des images dans les questions +- Support des formules mathématiques dans les questions +- Gestion de l'import/export des questionnaires +- Déploiement d'un prototype de l'application + +## Affectations d'éléments de travail + +| Nom / Description | Priorité | [Taille estimée (points)](#commentEstimer 'Comment estimer?') | Assigné à (nom) | Documents de référence | État | +| ------------------------------------------------------------------------------------------------- | -------: | ------------------------------------------------------------: | ---------------- | ---------------------- | ---- | +| Suite a la démo précédente : traduction de l'application de l'anglais vers le Francais | 2 | 1 | tous | | 🟢 | +| Suite a la démo précédente : import/export des questionnaires | 1 | 4 | Mihai | | 🟢 | +| Suite a la démo précédente : support des images | 1 | 4 | Paul | | 🟢 | +| Suite a la démo précédente : nom de salle en chiffres | 3 | 1 | Paul | | 🟢 | +| Suite a la démo précédente : reload fonctionnel sur vercel | 1 | 1 | Mihai | | 🟢 | +| Suite a la démo précédente : bouton de déconnexion lorsqu'un quiz est lancé | 3 | 1 | Paul | | 🟢 | +| Suite a la démo précédente : support du LateX coté étudiant | 1 | 4 | Francois | | 🟢 | +| Suite a la démo précédente : retour sur une question dans le tableau des résultats en temps reels | 3 | 1 | Paul | | 🟢 | +| déploiement continue des applications | 3 | 1 | tous | | 🟢 | +| Finaliser les suites de tests et les ajouter aux déploiement continue des application | 3 | 4 | Bavithra/Emerick | | 🟢 | +| Amélioration de l'interface utilisateur | 4 | 4 | Mihai | | 🟢 | +| Investigation d'une autre solution de déploiement backend | 4 | 4 | Paul | | 🟢 | +| Effectuer un premier stress test de l'application | 4 | 4 | Paul | | 🟢 | + +## Problèmes principaux rencontrés + +| Problème | Notes | +| ------------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Support de l'image dans l'éditeur de quiz | Le support de l'image fonctionne mais nous pensons qu'il peut être amélioré, surtout si on se détache de l'éditeur de questionnaire sous forme de texte | +| choix de librairie pour les composants visuel | Nous avons longtemps hésiter d'utiliser une librairie pour le coté visuel (bootstrap ou autre). Nous avons finalement décidé d'utiliser Material UI. Cela nous permet d'avoir un visuel beaucoup plus professionnel. | +| choix du composant pour l'affichage des questions et choix de réponses coté étudiant | Nous hésitons entre utiliser le composant GIFTTemplate, ou créer un composant spécifique. La seconde solution serait plus intéressante car plus personnalisable mais ajoute de la complexité au developpement. | +| Les utilisateurs sur téléphones sont déconnecté s'ils sont trop longtemps inactifs et que le téléphone se met en veille. | L'équipe hésite sur le fait que cette fonctionnalité soit un problème ou non. Nous avons décidé de laisser le comportement tel quel pour le moment. Cela permet de fermet au maximum le nombre de connexions ouvertes | +| Certaines des adresses d'images ne fonctionnent pas | Nous n'avons pas eu le temps d'investiguer ce problème | +| Support de l'exportation des documents sous format pdf | Nous n'avons pas eu le temps de supporter cette fonctionnalité | + +## Critères d'évaluation + +> Une brève description de la façon d'évaluer si les objectifs (définis plus haut) de haut niveau ont été atteints. +> Vos critères d'évaluation doivent être objectifs (aucun membre de l'équipe ne peut avoir une opinion divergente) et quantifiables (sauf pour ceux évalués par l'auxiliaire d'enseignement). En voici des exemples: + +- Tous les tests unitaires passent (couverture de 80%) +- Les fonctionnalités discutés durant la derniere démo sont implémentées + +## Évaluation + +| Résumé | | +| ------------------ | ---------------------------------------------------------------------------------------------------------------------------------- | +| Cible d'évaluation | Itération | +| Date d'évaluation | 2023/11/16 | +| Participants | **Équipe** : Paul Berguin, Mihai Floca, Francois Richard, Bavithra Jeyarasa, Emerick Paul
**professeur** : Christopher Fuhrman | +| État du projet | 🟢 | + +### Éléments de travail: prévus vs réalisés + +Tous les éléments de travail prévus ont été réalisés. Nous avons aussi complêtement retravailler l'interface utilisateur pour la rendre plus professionnelle. +De plus nous avons une couverture de test très satisfaisante. +Enfin, nous avons intégré un système de déploiement continue pour le backend et le frontend. + +### Évaluation par rapport aux résultats selon les critères d'évaluation + +| Critère d'évaluation | Évaluation | +| ---------------------------------------------------------------------- | ---------- | +| Tous les tests unitaires passent (couverture de 80%) | | +| Les fonctionnalités discutés durant la derniere démo sont implémentées | | + +## Autres préoccupations et écarts + +Nous avons effectué une refonte complête de l'interface utilisateur. Ce changement peut être considéré comme un écart par rapport au plan initial. Cependant, nous pensons que ce changement est bénéfique pour le projet. En effet, l'interface utilisateur est beaucoup plus professionnelle et plus facile à utiliser. Toutes les fonctionnalités initialement présentes on été conservées. Aucun bris n'est a reporter suite a ce changement. + +## Retour des promoteurs suite à la démo + +## Propositions d'amélioration + +Lors de cette session, notre équipe s'est concentrée sur l'implémentation des fonctionnalités éssentielles de l'application. Notre objectif principal était de livrer un produit fonctionnel, bien qu'imparfait. Cela permettra aux promoteurs de tester l'application avec des utilisateurs réels et donner un retour sur les améliorations à apporter et les bug rencontrés. + +Le produit que nous livrons est donc un prototype fonctionnel. Nous avons donc laissé de coté certaines fonctionnalités qui pourraient être intéressantes pour la prochaine équipe. Voici une liste de ces fonctionnalités et nos commentaires sur leur importance: + +| amélioration | Commentaire | +| ------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| support de tous les types de question | Pour le moment on ne supporte que 4 types de question (composants \components\Questions ). Il serait intéressant de supporter tous les types de GIFT ce qui permettrait une meilleur portabilité des quiz. En effet les promoteurs pourrait avoir envie d'importer un quiz depuis moodle vers notre solution. (recherche global "TODO" dans le code) | +| Refactoring de de la page EditorQuiz | Actuellement l'application propose a l'utilisateur de créer les quiz en écrivant directement sous format GIFT dans un éditeur de text. Il serait intéressant de se débarrasser de cet éditeur et de permettre a l'utilisateur de créer des quiz, d'ajouter des question, choisir leurs types et d'ajouter des réponses seulement en cliquant sur des boutons. De sorte qu'ils n'aient pas a se soucier du format. | +| Refactoring l'interface graphique | Pour le moment l'interface graphique est correct, mais il serait intéressant de la poffiner afin de présenter un produit final plus poussé. Nous avons choisit de ne pas utiliser bootstrap dans un soucis de clarification du code et pour des question de futur performance. Nous n'avons pas non plus utilisés tailwind css dans l'optique de garder notre code HTML aussi clair que possible. Si un changement est envisagé au niveau de la technologie du UI. Nous conseillons Tailwind css plutot que Bootstrap. | +| Support de l'exportation des documents sous format pdf | Nous n'avons pas eu le temps de supporter cette fonctionnalité. Cependant, nous pensons que c'est une fonctionnalité importante. En effet, cela permettrait aux professeurs de pouvoir imprimer les quiz et de les distribuer aux étudiants. | +| Retours d'informations manquantes | Le premier stress test de l'application (hébergé sur Glitch) à permis de mettre en avant certaines erreurs, bug ou manque de retours d'information. Par exemple, quand on essaye de se connecter à une salle pleine (60 étudiants), l'utilisateur devrait voir une page lui indiquant le problème. De plus certaines personnes ont étés déconnecté du questionnaire pendant qu'il réalisait celui-ci. Les erreurs trouvées lors de ce tests ont été listé dans le Notion du projet. | +| Améliorations discutées lors du 1er stress test | Les participants au premier stress test nous ont proposer 2 principales améliorations qu'ils trouveraient intéréssantes. La premiere serait de classer le live résult en temps réel en fonction du % de réussite de chaque étudiant, pour que les meilleurs soit en tête de classement. La seconde serait de donner un feedback global du test une fois celui-ci complété (coté étudiant). Ces améliorations seront aussi documentés dans le Notion du projet. | + +## Discussion sur le déploiement Backend (glitch ou Azure) + +Cette décision a été compliqué pour notre équipe. Tout d'abord le fait que nous utilisons les websocket restreint les options de déploiement. + +- Notre premiere option a été Glitch, qui fournis une plateforme gratuite. Le déploiement continu a été implémenté pour cette plateforme. Le principal problème de cette plateforme est la mise en veille de notre backend après 5 minutes d'inactivité. L'avantage de Glitch par contre est que la plateforme permet d'héberger notre backend gratuitement. La plateforme présente de gros problème de performance pour une salle pleine. +- D'un autre coté, Azure est aussi une plateforme intéréssante en raison de l'entente entre l'école et la plateforme. Aucun d'entre nous n'avais d'experience avec la plateforme, mais nous avons réussit a déployer grace a l'extension Azure sur VScode. L'option gratuite ne permettait que la connexion de 5 personnes en meme temps. Nous avons donc opté pour le plan (payant) Basic B1. L'avantage principal de Azure est que la plateforme ne met pas en veille notre backend après 5 minutes d'inactivité. Cependant, le plan Basic B1 est payant et nous ne l'avons pas laisser assez longtemps en ligne pour savoir combien il nous couterait. De plus, Azure offre beaucoup plus de fonctionnalités de monitoring et de gestion de l'application. + +## Discussion sur le déploiement Frontend + +Pour le frontend de notre application, nous avons hésité entre Héroku, GithubPages et Vercel. Au final nous avons choisi Vercel pour sa simplicité d'utilisation et son intégration avec Github. Nous avons aussi implémenté le déploiement continu pour le frontend. +Cependant après quelques temps d'utilisations nous avons remarqués quelques problèmes en raison de la gratuité de la plateforme. En effet, ce plan ne permet pas la création d'équipe pour gérer le projet et nous avons donc du désigner un membre de l'équipe pour gérer le projet. + +# Principaux diagrammes + +## Diagramme de classe + +![Diagramme de conception du frontend](./documentation/diagrammes-iteration-4/Diagramme_conception_iteration4.svg) + +## Diagramme de déploiement + +![Diagramme de déploiement](./documentation/diagrammes-iteration-4/Diagramme_deploiement_iteration4.svg) + +## Diagramme de séquence - Création d'une salle + +![Diagramme de séquence - Création d'une salle](./documentation/diagrammes-iteration-4/Diagramme_de_sequence_creation_Room_iteration4.svg) + +## Diagramme de séquence - Rejoindre une salle + +![Diagramme de séquence - Rejoindre une salle](./documentation/diagrammes-iteration-4/Diagramme_de_sequence_join_room_iteration4.svg) + +## Diagramme de séquence - déroulement d'un quiz + +![Diagramme de séquence - déroulement d'un quiz](./documentation/diagrammes-iteration-4/Diagramme_de_sequence_deroulement_quiz_iteration4.svg) + +Comment estimer la taille : + diff --git a/client/src/App.tsx b/client/src/App.tsx new file mode 100644 index 0000000..3f65f00 --- /dev/null +++ b/client/src/App.tsx @@ -0,0 +1,66 @@ +// App.tsx +import { Routes, Route } from 'react-router-dom'; + +// Page main +import Home from './pages/Home/Home'; + +// Pages espace enseignant +import Dashboard from './pages/Teacher/Dashboard/Dashboard'; +import Share from './pages/Teacher/Share/Share'; +import Login from './pages/Teacher/Login/Login'; +import Register from './pages/Teacher/Register/Register'; +import ResetPassword from './pages/Teacher/ResetPassword/ResetPassword'; +import ManageRoom from './pages/Teacher/ManageRoom/ManageRoom'; +import QuizForm from './pages/Teacher/EditorQuiz/EditorQuiz'; + +// Pages espace étudiant +import JoinRoom from './pages/Student/JoinRoom/JoinRoom'; + +// Header/Footer import +import Header from './components/Header/Header'; +import Footer from './components/Footer/Footer'; + +import ApiService from './services/ApiService'; + +const handleLogout = () => { + ApiService.logout(); +} + +const isLoggedIn = () => { + return ApiService.isLogedIn(); +} + +function App() { + return ( +

+ +
+ +
+
+ + {/* Page main */} + } /> + + {/* Pages espace enseignant */} + } /> + } /> + } /> + } /> + } /> + } /> + } /> + + {/* Pages espace étudiant */} + } /> + +
+
+
+
+ ); +} + +export default App; diff --git a/client/src/Types/FolderType.tsx b/client/src/Types/FolderType.tsx new file mode 100644 index 0000000..ef96863 --- /dev/null +++ b/client/src/Types/FolderType.tsx @@ -0,0 +1,6 @@ +export interface FolderType { + _id: string; + userId: string; + title: string; + created_at: string; +} diff --git a/client/src/Types/QuestionType.tsx b/client/src/Types/QuestionType.tsx new file mode 100644 index 0000000..5098af8 --- /dev/null +++ b/client/src/Types/QuestionType.tsx @@ -0,0 +1,6 @@ +import { GIFTQuestion } from 'gift-pegjs'; + +export interface QuestionType { + question: GIFTQuestion; + image: string; +} diff --git a/client/src/Types/QuizType.tsx b/client/src/Types/QuizType.tsx new file mode 100644 index 0000000..af82c41 --- /dev/null +++ b/client/src/Types/QuizType.tsx @@ -0,0 +1,10 @@ +// QuizType.tsx +export interface QuizType { + _id: string; + folderId: string; + userId: string; + title: string; + content: string[]; + created_at: Date; + updated_at: Date; +} diff --git a/client/src/Types/UserType.tsx b/client/src/Types/UserType.tsx new file mode 100644 index 0000000..e7ef41d --- /dev/null +++ b/client/src/Types/UserType.tsx @@ -0,0 +1,4 @@ +export interface UserType { + name: string; + id: string; +} diff --git a/client/src/__tests__/Types/QuestionType.test.tsx b/client/src/__tests__/Types/QuestionType.test.tsx new file mode 100644 index 0000000..41e04d9 --- /dev/null +++ b/client/src/__tests__/Types/QuestionType.test.tsx @@ -0,0 +1,43 @@ +//QuestionType.test.tsx +import { GIFTQuestion } from 'gift-pegjs'; +import { QuestionType } from '../../Types/QuestionType'; + +const mockQuestion: GIFTQuestion = { + id: '1', + type: 'MC', + stem: { format: 'plain', text: 'Sample Question' }, + title: 'Sample Question', + hasEmbeddedAnswers: false, + globalFeedback: null, + choices: [ + { text: { format: 'plain', text: 'Option A' }, isCorrect: true, weight: 1, feedback: null }, + { text: { format: 'plain', text: 'Option B' }, isCorrect: false, weight: 0, feedback: null }, + ], +}; + +const mockQuestionType: QuestionType = { + question: mockQuestion, + image: 'sample-image-url', +}; + +describe('QuestionType', () => { + test('has the expected structure', () => { + expect(mockQuestionType).toEqual(expect.objectContaining({ + question: expect.any(Object), + image: expect.any(String), + })); + + expect(mockQuestionType.question).toEqual(expect.objectContaining({ + id: expect.any(String), + type: expect.any(String), + stem: expect.objectContaining({ + format: expect.any(String), + text: expect.any(String), + }), + title: expect.any(String), + hasEmbeddedAnswers: expect.any(Boolean), + globalFeedback: expect.any(Object), + choices: expect.any(Array), + })); + }); +}); diff --git a/client/src/__tests__/Types/QuizType.test.tsx b/client/src/__tests__/Types/QuizType.test.tsx new file mode 100644 index 0000000..0fbaa6d --- /dev/null +++ b/client/src/__tests__/Types/QuizType.test.tsx @@ -0,0 +1,40 @@ +/*//QuizType.test.tsx +import { QuizType } from "../../Types/QuizType"; +export function isQuizValid(quiz: QuizType): boolean { + return quiz.title.length > 0 && quiz.content.length > 0; +} + +describe('isQuizValid function', () => { + it('returns true for a valid quiz', () => { + const validQuiz: QuizType = { + _id: '1', + title: 'Sample Quiz', + content: ['Question 1', 'Question 2'], + }; + + const result = isQuizValid(validQuiz); + expect(result).toBe(true); + }); + + it('returns false for an invalid quiz with an empty title', () => { + const invalidQuiz: QuizType = { + _id: '2', + title: '', + content: ['Question 1', 'Question 2'], + }; + + const result = isQuizValid(invalidQuiz); + expect(result).toBe(false); + }); + + it('returns false for an invalid quiz with no questions', () => { + const invalidQuiz: QuizType = { + _id: '3', + title: 'Sample Quiz', + content: [], + }; + + const result = isQuizValid(invalidQuiz); + expect(result).toBe(false); + }); +});*/ diff --git a/client/src/__tests__/Types/UserType.test.tsx b/client/src/__tests__/Types/UserType.test.tsx new file mode 100644 index 0000000..97ebfa9 --- /dev/null +++ b/client/src/__tests__/Types/UserType.test.tsx @@ -0,0 +1,15 @@ +//UserTyper.test.tsx +import { UserType } from "../../Types/UserType"; + +const user : UserType = { + name: 'Student', + id: '123' +} + +describe('UserType', () => { + test('creates a user with name and id', () => { + + expect(user.name).toBe('Student'); + expect(user.id).toBe('123'); + }); +}); diff --git a/client/src/__tests__/components/ConfirmDialog/ConfirmDialog.test.tsx b/client/src/__tests__/components/ConfirmDialog/ConfirmDialog.test.tsx new file mode 100644 index 0000000..649b150 --- /dev/null +++ b/client/src/__tests__/components/ConfirmDialog/ConfirmDialog.test.tsx @@ -0,0 +1,55 @@ +// Modal.test.tsx +import { render, fireEvent, screen } from '@testing-library/react'; +import '@testing-library/jest-dom'; +import ConfirmDialog from '../../../components/ConfirmDialog/ConfirmDialog'; + +describe('ConfirmDialog Component', () => { + const mockOnConfirm = jest.fn(); + const mockOnCancel = jest.fn(); + const mockOnOptionalInputChange = jest.fn(); + + const sampleProps = { + open: true, + title: 'Sample Modal Title', + message: 'Sample Modal Message', + onConfirm: mockOnConfirm, + onCancel: mockOnCancel, + hasOptionalInput: true, + optionalInputValue: 'Optional Input Value', + onOptionalInputChange: mockOnOptionalInputChange + }; + + beforeEach(() => { + render(); + }); + + it('renders correctly', () => { + expect(screen.getByText('Sample Modal Title')).toBeInTheDocument(); + expect(screen.getByText('Sample Modal Message')).toBeInTheDocument(); + + const optionalInput = screen.getByTestId('optional-input') as HTMLInputElement; + expect(optionalInput).toBeInTheDocument(); + expect(optionalInput.value).toBe('Optional Input Value'); + + expect(screen.getByText('Confirmer')).toBeInTheDocument(); + expect(screen.getByText('Annuler')).toBeInTheDocument(); + }); + + it('calls onConfirm callback when "Confirmer" button is clicked', () => { + const confirmButton = screen.getByText('Confirmer'); + fireEvent.click(confirmButton); + expect(mockOnConfirm).toHaveBeenCalled(); + }); + + it('calls onCancel callback when "Annuler" button is clicked', () => { + const cancelButton = screen.getByText('Annuler'); + fireEvent.click(cancelButton); + expect(mockOnCancel).toHaveBeenCalled(); + }); + + it('calls onOptionalInputChange callback when optional input changes', () => { + const optionalInput = screen.getByTestId('optional-input') as HTMLInputElement; + fireEvent.change(optionalInput, { target: { value: 'Updated Value' } }); + expect(mockOnOptionalInputChange).toHaveBeenCalled(); + }); +}); diff --git a/client/src/__tests__/components/Editor/Editor.test.tsx b/client/src/__tests__/components/Editor/Editor.test.tsx new file mode 100644 index 0000000..9a08e06 --- /dev/null +++ b/client/src/__tests__/components/Editor/Editor.test.tsx @@ -0,0 +1,75 @@ +// Editor.test.tsx +import { render, fireEvent, screen } from '@testing-library/react'; +import '@testing-library/jest-dom'; +import Editor from '../../../components/Editor/Editor'; + +describe('Editor Component', () => { + const mockOnEditorChange = jest.fn(); + + const sampleProps = { + initialValue: 'Sample Initial Value', + onEditorChange: mockOnEditorChange + }; + + beforeEach(() => { + render(); + }); + + it('renders correctly with initial value', () => { + const editorTextarea = screen.getByRole('textbox') as HTMLTextAreaElement; + expect(editorTextarea).toBeInTheDocument(); + expect(editorTextarea.value).toBe('Sample Initial Value'); + }); + + it('calls onEditorChange callback when editor value changes', () => { + const editorTextarea = screen.getByRole('textbox') as HTMLTextAreaElement; + fireEvent.change(editorTextarea, { target: { value: 'Updated Value' } }); + expect(mockOnEditorChange).toHaveBeenCalledWith('Updated Value'); + }); + + it('updates editor value when initialValue prop changes', () => { + const updatedProps = { + initialValue: 'Updated Initial Value', + onEditorChange: mockOnEditorChange + }; + + render(); + + const editorTextareas = screen.getAllByRole('textbox') as HTMLTextAreaElement[]; + const editorTextarea = editorTextareas[1]; + + expect(editorTextarea.value).toBe('Updated Initial Value'); + }); + + test('should call change text with the correct value on textarea change', () => { + const updatedProps = { + initialValue: 'Updated Initial Value', + onEditorChange: mockOnEditorChange + }; + + render(); + + const editorTextareas = screen.getAllByRole('textbox') as HTMLTextAreaElement[]; + const editorTextarea = editorTextareas[1]; + fireEvent.change(editorTextarea, { target: { value: 'New value' } }); + + expect(editorTextarea.value).toBe('New value'); + }); + + test('should call onEditorChange with an empty string if textarea value is falsy', () => { + const updatedProps = { + initialValue: 'Updated Initial Value', + onEditorChange: mockOnEditorChange + }; + + render(); + + const editorTextareas = screen.getAllByRole('textbox') as HTMLTextAreaElement[]; + const editorTextarea = editorTextareas[1]; + fireEvent.change(editorTextarea, { target: { value: '' } }); + + expect(editorTextarea.value).toBe(''); + }); + + +}); diff --git a/client/src/__tests__/components/GiftTemplate/GIFTTemplatePreview.test.tsx b/client/src/__tests__/components/GiftTemplate/GIFTTemplatePreview.test.tsx new file mode 100644 index 0000000..38e494e --- /dev/null +++ b/client/src/__tests__/components/GiftTemplate/GIFTTemplatePreview.test.tsx @@ -0,0 +1,50 @@ +import { render, screen } from '@testing-library/react'; +import '@testing-library/jest-dom'; +import GIFTTemplatePreview from '../../../components/GiftTemplate/GIFTTemplatePreview'; + +describe('GIFTTemplatePreview Component', () => { + test('renders error message when questions contain invalid syntax', () => { + render(); + const errorMessage = screen.findByText(/Erreur inconnue/i, {}, { timeout: 5000 }); + expect(errorMessage).resolves.toBeInTheDocument(); + }); + test('renders preview when valid questions are provided', () => { + const questions = [ + 'Question 1 { A | B | C }', + 'Question 2 { D | E | F }', + ]; + render(); + const previewContainer = screen.getByTestId('preview-container'); + expect(previewContainer).toBeInTheDocument(); + }); + test('hides answers when hideAnswers prop is true', () => { + const questions = [ + 'Question 1 { A | B | C }', + 'Question 2 { D | E | F }', + ]; + render(); + const previewContainer = screen.getByTestId('preview-container'); + expect(previewContainer).toBeInTheDocument(); + }); + it('renders images correctly', () => { + const questions = [ + 'Question 1', + 'Image 1', + 'Question 2', + 'Image 2', + ]; + const { getByAltText } = render(); + const image1 = getByAltText('Image 1'); + const image2 = getByAltText('Image 2'); + expect(image1).toBeInTheDocument(); + expect(image2).toBeInTheDocument(); + }); + it('renders non-images correctly', () => { + const questions = ['Question 1', 'Question 2']; + const { queryByAltText } = render(); + const image1 = queryByAltText('Image 1'); + const image2 = queryByAltText('Image 2'); + expect(image1).toBeNull(); + expect(image2).toBeNull(); + }); +}); \ No newline at end of file diff --git a/client/src/__tests__/components/GiftTemplate/constants/colors.test.tsx b/client/src/__tests__/components/GiftTemplate/constants/colors.test.tsx new file mode 100644 index 0000000..dacd85d --- /dev/null +++ b/client/src/__tests__/components/GiftTemplate/constants/colors.test.tsx @@ -0,0 +1,35 @@ +//color.test.tsx +import { colors } from "../../../../components/GiftTemplate/constants"; + +describe('Colors object', () => { + test('All colors are defined', () => { + expect(colors.red100).toBeDefined(); + expect(colors.red300).toBeDefined(); + expect(colors.red700).toBeDefined(); + expect(colors.redGray800).toBeDefined(); + expect(colors.beige100).toBeDefined(); + expect(colors.beige300).toBeDefined(); + expect(colors.beige400).toBeDefined(); + expect(colors.beige500).toBeDefined(); + expect(colors.beige600).toBeDefined(); + expect(colors.beige900).toBeDefined(); + expect(colors.beigeGray800).toBeDefined(); + expect(colors.green100).toBeDefined(); + expect(colors.green300).toBeDefined(); + expect(colors.green400).toBeDefined(); + expect(colors.green500).toBeDefined(); + expect(colors.green600).toBeDefined(); + expect(colors.green700).toBeDefined(); + expect(colors.greenGray500).toBeDefined(); + expect(colors.greenGray600).toBeDefined(); + expect(colors.greenGray700).toBeDefined(); + expect(colors.teal400).toBeDefined(); + expect(colors.teal500).toBeDefined(); + expect(colors.teal600).toBeDefined(); + expect(colors.teal700).toBeDefined(); + expect(colors.blue).toBe('#5271FF'); + expect(colors.success).toBe('hsl(120, 39%, 54%)'); + expect(colors.danger).toBe('hsl(2, 64%, 58%)'); + expect(colors.white).toBe('hsl(0, 0%, 100%)'); + }); +}); \ No newline at end of file diff --git a/client/src/__tests__/components/GiftTemplate/constants/styles.test.tsx b/client/src/__tests__/components/GiftTemplate/constants/styles.test.tsx new file mode 100644 index 0000000..7d60560 --- /dev/null +++ b/client/src/__tests__/components/GiftTemplate/constants/styles.test.tsx @@ -0,0 +1,34 @@ +//styles.test.tsx +import { render } from '@testing-library/react'; +import '@testing-library/jest-dom'; + +import { ParagraphStyle } from '../../../../components/GiftTemplate/constants'; + +describe('ParagraphStyle', () => { + test('applies styles correctly', () => { + const theme = 'light'; + const paragraphText = 'Test paragraph'; + + const styles = ParagraphStyle(theme); + + const { container } = render( +

{paragraphText}

+ ); + + const paragraphElement = container.firstChild; + + expect(paragraphElement).toHaveStyle(`color: rgb(0, 0, 0);`); + }); +}); + + +function convertStylesToObject(styles: string): React.CSSProperties { + const styleObject: React.CSSProperties = {}; + styles.split(';').forEach((style) => { + const [property, value] = style.split(':'); + if (property && value) { + (styleObject as any)[property.trim()] = value.trim(); + } + }); + return styleObject; +} diff --git a/client/src/__tests__/components/GiftTemplate/constants/theme.test.tsx b/client/src/__tests__/components/GiftTemplate/constants/theme.test.tsx new file mode 100644 index 0000000..6a3831a --- /dev/null +++ b/client/src/__tests__/components/GiftTemplate/constants/theme.test.tsx @@ -0,0 +1,16 @@ +import '@testing-library/jest-dom'; +import { theme } from '../../../../components/GiftTemplate/constants/theme'; +import { colors } from '../../../../components/GiftTemplate/constants/colors'; + +describe('Theme', () => { + test('returns correct light color', () => { + const lightColor = theme('light', 'gray500', 'black500'); + expect(lightColor).toBe(colors.gray500); + }); + + test('returns correct dark color', () => { + const darkColor = theme('dark', 'gray500', 'black500'); + expect(darkColor).toBe(colors.black500); + }); + +}); diff --git a/client/src/__tests__/components/GiftTemplate/templates/AnswerIcon.test.tsx b/client/src/__tests__/components/GiftTemplate/templates/AnswerIcon.test.tsx new file mode 100644 index 0000000..c67d754 --- /dev/null +++ b/client/src/__tests__/components/GiftTemplate/templates/AnswerIcon.test.tsx @@ -0,0 +1,35 @@ +import { render } from '@testing-library/react'; +import '@testing-library/jest-dom'; +import AnswerIcon from '../../../../components/GiftTemplate/templates/AnswerIcon'; + +describe('AnswerIcon', () => { + test('renders correct icon when correct is true', () => { + const { container } = render(
); + const svgElement = container.querySelector('svg'); + + expect(svgElement).toBeInTheDocument(); + expect(svgElement).toHaveStyle(` + vertical-align: text-bottom; + display: inline-block; + margin-left: 0.1rem; + margin-right: 0.2rem; + width: 1em; + color: rgb(92, 92, 92); + `); + }); + + test('renders incorrect icon when correct is false', () => { + const { container } = render(
); + const svgElement = container.querySelector('svg'); + + expect(svgElement).toBeInTheDocument(); + expect(svgElement).toHaveStyle(` + vertical-align: text-bottom; + display: inline-block; + margin-left: 0.1rem; + margin-right: 0.2rem; + width: 0.75em; + color: rgb(79, 216, 79); + `); + }); +}); diff --git a/client/src/__tests__/components/ImportModal/ImportModal.test.tsx b/client/src/__tests__/components/ImportModal/ImportModal.test.tsx new file mode 100644 index 0000000..ed36f37 --- /dev/null +++ b/client/src/__tests__/components/ImportModal/ImportModal.test.tsx @@ -0,0 +1,72 @@ +import { render, screen, fireEvent } from '@testing-library/react'; +import '@testing-library/jest-dom'; +import DragAndDrop from '../../../components/ImportModal/ImportModal'; + +describe('DragAndDrop Component', () => { + + it('renders without errors', () => { + const handleOnClose = jest.fn(); + const handleOnImport = jest.fn(); + const open = true; + render( + + ); + expect(screen.getByText('Importation de quiz')).toBeInTheDocument(); + }); + + + + test('handles drag and drop', () => { + const handleOnCloseMock = jest.fn(); + const handleOnImportMock = jest.fn(); + render( + + ); + const dropZone = screen.getByText(/Déposer des fichiers ici/i); + fireEvent.dragEnter(dropZone); + fireEvent.dragOver(dropZone); + fireEvent.drop(dropZone, { dataTransfer: { files: [new File([''], 'sample.txt')] } }); + expect(screen.getByText('📄')).toBeInTheDocument(); + expect(screen.getByText('sample.txt')).toBeInTheDocument(); + }); + it('handles cancel button correctly', () => { + const handleOnClose = jest.fn(); + const handleOnImport = jest.fn(); + const open = true; + const { container } = render( + + ); + const file = new File(['file content'], 'example.txt', { type: 'text/plain' }); + fireEvent.change(screen.getByText( /cliquez pour ouvrir l'explorateur des fichiers/i), { + target: { files: [file] }, + }); + fireEvent.click(screen.getByText('Annuler')); + expect(container.querySelector('.file-container')).not.toBeInTheDocument(); + }); + it('handles import correctly', async () => { + const handleOnCloseMock = jest.fn(); + const handleOnImportMock = jest.fn(); + render( + + ); + const file = new File(['file content'], 'example.txt', { type: 'text/plain' }); + fireEvent.change(screen.getByText( /Importer/i), { + target: { files: [file] }, + }); + }); +}); \ No newline at end of file diff --git a/client/src/__tests__/components/LaunchQuizDialog/LaunchQuizDialog.test.tsx b/client/src/__tests__/components/LaunchQuizDialog/LaunchQuizDialog.test.tsx new file mode 100644 index 0000000..cb6e626 --- /dev/null +++ b/client/src/__tests__/components/LaunchQuizDialog/LaunchQuizDialog.test.tsx @@ -0,0 +1,53 @@ +import { render, screen, fireEvent } from '@testing-library/react'; +import '@testing-library/jest-dom'; +import LaunchQuizDialog from '../../../components/LaunchQuizDialog/LaunchQuizDialog'; + +// Mock the functions passed as props +const mockHandleOnClose = jest.fn(); +const mockLaunchQuiz = jest.fn(); +const mockSetQuizMode = jest.fn(); + +const renderComponent = (open: boolean) => { + render( + + ); +}; + +describe('LaunchQuizDialog', () => { + it('renders with correct title', () => { + renderComponent(true); + expect(screen.getByText('Options de lancement du quiz')).toBeInTheDocument(); + }); + + it('renders radio buttons for teacher and student modes', () => { + renderComponent(true); + expect(screen.getByLabelText('Rythme du professeur')).toBeInTheDocument(); + expect(screen.getByLabelText('Rythme de l\'étudiant')).toBeInTheDocument(); + }); + + it('calls handleOnClose when "Annuler" button is clicked', () => { + renderComponent(true); + + fireEvent.click(screen.getByText('Annuler')); + + expect(mockHandleOnClose).toHaveBeenCalled(); + }); + + it('calls launchQuiz when "Lancer" button is clicked', () => { + renderComponent(true); + + fireEvent.click(screen.getByText('Lancer')); + + expect(mockLaunchQuiz).toHaveBeenCalled(); + }); + + it('does not render when open is false', () => { + renderComponent(false); + expect(screen.queryByText('Options de lancement du quiz')).toBeNull(); + }); +}); diff --git a/client/src/__tests__/components/LoadingCircle/LoadingCircle.test.tsx b/client/src/__tests__/components/LoadingCircle/LoadingCircle.test.tsx new file mode 100644 index 0000000..4351cff --- /dev/null +++ b/client/src/__tests__/components/LoadingCircle/LoadingCircle.test.tsx @@ -0,0 +1,13 @@ +import { render, screen } from '@testing-library/react'; +import '@testing-library/jest-dom'; +import LoadingCircle from '../../../components/LoadingCircle/LoadingCircle'; + +describe('LoadingCircle', () => { + it('displays the provided text correctly', () => { + const text = 'Veuillez attendre la connexion au serveur...'; + render(); + + expect(screen.getByText(text)).toBeInTheDocument(); + }); + +}); diff --git a/client/src/__tests__/components/Questions/MultipleChoiceQuestion/MultipleChoiceQuestion.test.tsx b/client/src/__tests__/components/Questions/MultipleChoiceQuestion/MultipleChoiceQuestion.test.tsx new file mode 100644 index 0000000..cf4a1fe --- /dev/null +++ b/client/src/__tests__/components/Questions/MultipleChoiceQuestion/MultipleChoiceQuestion.test.tsx @@ -0,0 +1,44 @@ +import { render, screen, fireEvent } from '@testing-library/react'; +import '@testing-library/jest-dom'; +import MultipleChoiceQuestion from '../../../../components/Questions/MultipleChoiceQuestion/MultipleChoiceQuestion'; + +describe('MultipleChoiceQuestion', () => { + const mockHandleOnSubmitAnswer = jest.fn(); + const choices = [ + { feedback: null, isCorrect: true, text: { format: 'plain', text: 'Choice 1' } }, + { feedback: null, isCorrect: false, text: { format: 'plain', text: 'Choice 2' } } + ]; + + beforeEach(() => { + render( + + ); + }); + + test('renders the question and choices', () => { + expect(screen.getByText('Test Question')).toBeInTheDocument(); + choices.forEach((choice) => { + expect(screen.getByText(choice.text.text)).toBeInTheDocument(); + }); + }); + + test('does not submit when no answer is selected', () => { + const submitButton = screen.getByText('Répondre'); + fireEvent.click(submitButton); + expect(mockHandleOnSubmitAnswer).not.toHaveBeenCalled(); + }); + + test('submits the selected answer', () => { + const choiceButton = screen.getByText('Choice 1').closest('button'); + if (!choiceButton) throw new Error('Choice button not found'); + fireEvent.click(choiceButton); + const submitButton = screen.getByText('Répondre'); + fireEvent.click(submitButton); + expect(mockHandleOnSubmitAnswer).toHaveBeenCalledWith('Choice 1'); + }); +}); diff --git a/client/src/__tests__/components/Questions/NumericalQuestion/NumericalQuestion.test.tsx b/client/src/__tests__/components/Questions/NumericalQuestion/NumericalQuestion.test.tsx new file mode 100644 index 0000000..37f0daa --- /dev/null +++ b/client/src/__tests__/components/Questions/NumericalQuestion/NumericalQuestion.test.tsx @@ -0,0 +1,62 @@ +// NumericalQuestion.test.tsx +import { render, screen, fireEvent } from '@testing-library/react'; +import '@testing-library/jest-dom'; +import NumericalQuestion from '../../../../components/Questions/NumericalQuestion/NumericalQuestion'; + +describe('NumericalQuestion Component', () => { + const mockHandleSubmitAnswer = jest.fn(); + + const sampleProps = { + questionTitle: 'Sample Question', + correctAnswers: { + numberHigh: 10, + numberLow: 5, + type: 'high-low' + }, + handleOnSubmitAnswer: mockHandleSubmitAnswer, + showAnswer: false + }; + + beforeEach(() => { + render(); + }); + + it('renders correctly', () => { + expect(screen.getByText('Sample Question')).toBeInTheDocument(); + expect(screen.getByTestId('number-input')).toBeInTheDocument(); + expect(screen.getByText('Répondre')).toBeInTheDocument(); + }); + + it('handles input change correctly', () => { + const inputElement = screen.getByTestId('number-input') as HTMLInputElement; + + fireEvent.change(inputElement, { target: { value: '7' } }); + + expect(inputElement.value).toBe('7'); + }); + + it('Submit button should be disable if nothing is entered', () => { + const submitButton = screen.getByText('Répondre'); + + expect(submitButton).toBeDisabled(); + }); + + it('not submited answer if nothing is entered', () => { + const submitButton = screen.getByText('Répondre'); + + fireEvent.click(submitButton); + + expect(mockHandleSubmitAnswer).not.toHaveBeenCalled(); + }); + + it('submits answer correctly', () => { + const inputElement = screen.getByTestId('number-input'); + const submitButton = screen.getByText('Répondre'); + + fireEvent.change(inputElement, { target: { value: '7' } }); + + fireEvent.click(submitButton); + + expect(mockHandleSubmitAnswer).toHaveBeenCalledWith(7); + }); +}); diff --git a/client/src/__tests__/components/Questions/Question.test.tsx b/client/src/__tests__/components/Questions/Question.test.tsx new file mode 100644 index 0000000..5be9f77 --- /dev/null +++ b/client/src/__tests__/components/Questions/Question.test.tsx @@ -0,0 +1,140 @@ +// Question.test.tsx +import { render, screen, fireEvent } from '@testing-library/react'; +import '@testing-library/jest-dom'; +import Questions from '../../../components/Questions/Question'; +import { GIFTQuestion } from 'gift-pegjs'; + +// +describe('Questions Component', () => { + const mockHandleSubmitAnswer = jest.fn(); + + const sampleTrueFalseQuestion: GIFTQuestion = { + type: 'TF', + stem: { format: 'plain', text: 'Sample True/False Question' }, + isTrue: true, + incorrectFeedback: null, + correctFeedback: null, + title: 'True/False Question', + hasEmbeddedAnswers: false, + globalFeedback: null, + }; + + const sampleMultipleChoiceQuestion: GIFTQuestion = { + type: 'MC', + stem: { format: 'plain', text: 'Sample Multiple Choice Question' }, + title: 'Multiple Choice Question', + hasEmbeddedAnswers: false, + globalFeedback: null, + choices: [ + { feedback: null, isCorrect: true, text: { format: 'plain', text: 'Choice 1' }, weight: 1 }, + { feedback: null, isCorrect: false, text: { format: 'plain', text: 'Choice 2' }, weight: 0 }, + ], + }; + + const sampleNumericalQuestion: GIFTQuestion = { + type: 'Numerical', + stem: { format: 'plain', text: 'Sample Numerical Question' }, + title: 'Numerical Question', + hasEmbeddedAnswers: false, + globalFeedback: null, + choices: { numberHigh: 10, numberLow: 5, type: 'high-low' }, + }; + + const sampleShortAnswerQuestion: GIFTQuestion = { + type: 'Short', + stem: { format: 'plain', text: 'Sample short answer question' }, + title: 'Short Answer Question Title', + hasEmbeddedAnswers: false, + globalFeedback: null, + choices: [ + { + feedback: { format: 'html', text: 'Correct answer feedback' }, + isCorrect: true, + text: { format: 'html', text: 'Correct Answer' }, + weight: 1, + }, + { + feedback: { format: 'html', text: 'Incorrect answer feedback' }, + isCorrect: false, + text: { format: 'html', text: 'Incorrect Answer' }, + weight: 0, + }, + ], + }; + + const renderComponent = (question: GIFTQuestion) => { + render(); + }; + + it('renders correctly for True/False question', () => { + renderComponent(sampleTrueFalseQuestion); + + expect(screen.getByText('Sample True/False Question')).toBeInTheDocument(); + expect(screen.getByText('Vrai')).toBeInTheDocument(); + expect(screen.getByText('Faux')).toBeInTheDocument(); + expect(screen.getByText('Répondre')).toBeInTheDocument(); + }); + + it('renders correctly for Multiple Choice question', () => { + renderComponent(sampleMultipleChoiceQuestion); + + expect(screen.getByText('Sample Multiple Choice Question')).toBeInTheDocument(); + expect(screen.getByText('Choice 1')).toBeInTheDocument(); + expect(screen.getByText('Choice 2')).toBeInTheDocument(); + expect(screen.getByText('Répondre')).toBeInTheDocument(); + }); + + it('handles selection and submission for Multiple Choice question', () => { + renderComponent(sampleMultipleChoiceQuestion); + + const choiceButton = screen.getByText('Choice 1').closest('button')!; + fireEvent.click(choiceButton); + + const submitButton = screen.getByText('Répondre'); + fireEvent.click(submitButton); + + expect(mockHandleSubmitAnswer).toHaveBeenCalledWith('Choice 1'); + }); + + it('renders correctly for Numerical question', () => { + renderComponent(sampleNumericalQuestion); + + expect(screen.getByText('Sample Numerical Question')).toBeInTheDocument(); + expect(screen.getByTestId('number-input')).toBeInTheDocument(); + expect(screen.getByText('Répondre')).toBeInTheDocument(); + }); + + it('handles input and submission for Numerical question', () => { + renderComponent(sampleNumericalQuestion); + + const inputElement = screen.getByTestId('number-input') as HTMLInputElement; + fireEvent.change(inputElement, { target: { value: '7' } }); + + const submitButton = screen.getByText('Répondre'); + fireEvent.click(submitButton); + + expect(mockHandleSubmitAnswer).toHaveBeenCalledWith(7); + }); + + it('renders correctly for Short Answer question', () => { + renderComponent(sampleShortAnswerQuestion); + + expect(screen.getByText('Sample short answer question')).toBeInTheDocument(); + expect(screen.getByTestId('text-input')).toBeInTheDocument(); + expect(screen.getByText('Répondre')).toBeInTheDocument(); + }); + + it('handles input and submission for Short Answer question', () => { + renderComponent(sampleShortAnswerQuestion); + + const inputElement = screen.getByTestId('text-input') as HTMLInputElement; + fireEvent.change(inputElement, { target: { value: 'User Input' } }); + + const submitButton = screen.getByText('Répondre'); + fireEvent.click(submitButton); + + expect(mockHandleSubmitAnswer).toHaveBeenCalledWith('User Input'); + }); +}); + + diff --git a/client/src/__tests__/components/Questions/ShortAnswerQuestion/ShortAnswerQuestion.test.tsx b/client/src/__tests__/components/Questions/ShortAnswerQuestion/ShortAnswerQuestion.test.tsx new file mode 100644 index 0000000..3af7798 --- /dev/null +++ b/client/src/__tests__/components/Questions/ShortAnswerQuestion/ShortAnswerQuestion.test.tsx @@ -0,0 +1,80 @@ +// ShortAnswerQuestion.test.tsx +import { render, screen, fireEvent } from '@testing-library/react'; +import '@testing-library/jest-dom'; +import ShortAnswerQuestion from '../../../../components/Questions/ShortAnswerQuestion/ShortAnswerQuestion'; + +describe('ShortAnswerQuestion Component', () => { + const mockHandleSubmitAnswer = jest.fn(); + + const sampleProps = { + questionTitle: 'Sample Question', + choices: [ + { + feedback: { + format: 'text', + text: 'Correct answer feedback' + }, + isCorrect: true, + text: { + format: 'text', + text: 'Correct Answer' + } + }, + { + feedback: null, + isCorrect: false, + text: { + format: 'text', + text: 'Incorrect Answer' + } + } + ], + handleOnSubmitAnswer: mockHandleSubmitAnswer, + showAnswer: false + }; + + beforeEach(() => { + render(); + }); + + it('renders correctly', () => { + expect(screen.getByText('Sample Question')).toBeInTheDocument(); + + expect(screen.getByTestId('text-input')).toBeInTheDocument(); + + expect(screen.getByText('Répondre')).toBeInTheDocument(); + }); + + it('handles input change correctly', () => { + const inputElement = screen.getByTestId('text-input') as HTMLInputElement; + + fireEvent.change(inputElement, { target: { value: 'User Input' } }); + + expect(inputElement.value).toBe('User Input'); + }); + + it('Submit button should be disable if nothing is entered', () => { + const submitButton = screen.getByText('Répondre'); + + expect(submitButton).toBeDisabled(); + }); + + it('not submited answer if nothing is entered', () => { + const submitButton = screen.getByText('Répondre'); + + fireEvent.click(submitButton); + + expect(mockHandleSubmitAnswer).not.toHaveBeenCalled(); + }); + + it('submits answer correctly', () => { + const inputElement = screen.getByTestId('text-input') as HTMLInputElement; + const submitButton = screen.getByText('Répondre'); + + fireEvent.change(inputElement, { target: { value: 'User Input' } }); + + fireEvent.click(submitButton); + + expect(mockHandleSubmitAnswer).toHaveBeenCalledWith('User Input'); + }); +}); diff --git a/client/src/__tests__/components/Questions/TrueFalseQuestion/TrueFalseQuestion.test.tsx b/client/src/__tests__/components/Questions/TrueFalseQuestion/TrueFalseQuestion.test.tsx new file mode 100644 index 0000000..2a0b85e --- /dev/null +++ b/client/src/__tests__/components/Questions/TrueFalseQuestion/TrueFalseQuestion.test.tsx @@ -0,0 +1,64 @@ +// TrueFalseQuestion.test.tsx +import { render, fireEvent, screen } from '@testing-library/react'; +import '@testing-library/jest-dom'; +import TrueFalseQuestion from '../../../../components/Questions/TrueFalseQuestion/TrueFalseQuestion'; + +describe('TrueFalseQuestion Component', () => { + const mockHandleSubmitAnswer = jest.fn(); + + const sampleProps = { + questionTitle: 'Sample True/False Question', + correctAnswer: true, + handleOnSubmitAnswer: mockHandleSubmitAnswer, + showAnswer: false + }; + + beforeEach(() => { + render(); + }); + + it('renders correctly', () => { + expect(screen.getByText('Sample True/False Question')).toBeInTheDocument(); + + expect(screen.getByText('Vrai')).toBeInTheDocument(); + expect(screen.getByText('Faux')).toBeInTheDocument(); + + expect(screen.getByText('Répondre')).toBeInTheDocument(); + }); + + it('Submit button should be disabled if no option is selected', () => { + const submitButton = screen.getByText('Répondre'); + + expect(submitButton).toBeDisabled(); + }); + + it('not submit answer if no option is selected', () => { + const submitButton = screen.getByText('Répondre'); + + fireEvent.click(submitButton); + + expect(mockHandleSubmitAnswer).not.toHaveBeenCalled(); + }); + + it('submits answer correctly for True', () => { + const trueButton = screen.getByText('Vrai'); + const submitButton = screen.getByText('Répondre'); + + fireEvent.click(trueButton); + + fireEvent.click(submitButton); + + expect(mockHandleSubmitAnswer).toHaveBeenCalledWith(true); + }); + + it('submits answer correctly for False', () => { + const falseButton = screen.getByText('Faux'); + const submitButton = screen.getByText('Répondre'); + + fireEvent.click(falseButton); + + fireEvent.click(submitButton); + + expect(mockHandleSubmitAnswer).toHaveBeenCalledWith(false); + }); +}); diff --git a/client/src/__tests__/components/ReturnButton/ReturnButton.test.tsx b/client/src/__tests__/components/ReturnButton/ReturnButton.test.tsx new file mode 100644 index 0000000..9793571 --- /dev/null +++ b/client/src/__tests__/components/ReturnButton/ReturnButton.test.tsx @@ -0,0 +1,45 @@ +import { render, screen, fireEvent } from '@testing-library/react'; +import '@testing-library/jest-dom'; +import ReturnButton from '../../../components/ReturnButton/ReturnButton'; +import { useNavigate } from 'react-router-dom'; + +jest.mock('react-router-dom', () => ({ + ...jest.requireActual('react-router-dom'), + useNavigate: jest.fn() +})); + +describe('ReturnButton', () => { + test('navigates back when askConfirm is false', () => { + const navigateMock = jest.fn(); + (useNavigate as jest.Mock).mockReturnValue(navigateMock); + render(); + fireEvent.click(screen.getByText('Retour')); + expect(navigateMock).toHaveBeenCalledWith(-1); + }); + + test('shows confirmation modal when askConfirm is true', () => { + render(); + fireEvent.click(screen.getByText('Retour')); + const confirmButton = screen.getByTestId('modal-confirm-button'); + expect(confirmButton).toBeInTheDocument(); + }); + + /*test('navigates back after confirming in the modal', () => { + const navigateMock = jest.fn(); + (useNavigate as jest.Mock).mockReturnValue(navigateMock); + render(); + fireEvent.click(screen.getByText('Retour')); + const confirmButton = screen.getByTestId('modal-confirm-button'); + fireEvent.click(confirmButton); + expect(navigateMock).toHaveBeenCalledWith(-1); + });*/ + + test('cancels navigation when canceling in the modal', () => { + const navigateMock = jest.fn(); + (useNavigate as jest.Mock).mockReturnValue(navigateMock); + render(); + fireEvent.click(screen.getByText('Retour')); + fireEvent.click(screen.getByText('Annuler')); + expect(navigateMock).not.toHaveBeenCalled(); + }); +}); diff --git a/client/src/__tests__/components/UserWaitPage/UserWaitPage.test.tsx b/client/src/__tests__/components/UserWaitPage/UserWaitPage.test.tsx new file mode 100644 index 0000000..9b0e0aa --- /dev/null +++ b/client/src/__tests__/components/UserWaitPage/UserWaitPage.test.tsx @@ -0,0 +1,41 @@ +// Importez le type UserType s'il n'est pas déjà importé +import { render, screen, fireEvent } from '@testing-library/react'; +import '@testing-library/jest-dom'; +import UserWaitPage from '../../../components/UserWaitPage/UserWaitPage'; + +describe('UserWaitPage Component', () => { + const mockUsers = [ + { id: '1', name: 'User1' }, + { id: '2', name: 'User2' }, + { id: '3', name: 'User3' }, + ]; + + const mockProps = { + users: mockUsers, + launchQuiz: jest.fn(), + roomName: 'Test Room', + setQuizMode: jest.fn(), + }; + + test('renders UserWaitPage with correct content', () => { + render(); + + expect(screen.getByText(/Salle: Test Room/)).toBeInTheDocument(); + + const launchButton = screen.getByRole('button', { name: /Lancer/i }); + expect(launchButton).toBeInTheDocument(); + + mockUsers.forEach((user) => { + expect(screen.getByText(user.name)).toBeInTheDocument(); + }); + }); + + test('clicking on "Lancer" button opens LaunchQuizDialog', () => { + render(); + + fireEvent.click(screen.getByRole('button', { name: /Lancer/i })); + + expect(screen.getByRole('dialog')).toBeInTheDocument(); + }); + +}) diff --git a/client/src/__tests__/pages/Home/Home.test.tsx b/client/src/__tests__/pages/Home/Home.test.tsx new file mode 100644 index 0000000..fcb7828 --- /dev/null +++ b/client/src/__tests__/pages/Home/Home.test.tsx @@ -0,0 +1,35 @@ +import { render, fireEvent, screen } from '@testing-library/react'; +import '@testing-library/jest-dom'; +import { BrowserRouter } from 'react-router-dom'; +import Home from '../../../pages/Home/Home'; + +describe('Home', () => { + it('renders Home component with page title and buttons', () => { + render( + + + + ); + + expect(screen.getByText(/Espace\s*étudiant/)).toBeInTheDocument(); + expect(screen.getByText(/Espace\s*enseignant/)).toBeInTheDocument(); + }); + + it('navigates to the correct routes when student and teacher buttons are clicked', () => { + render( + + + + ); + + const studentButton = screen.getByText(/Espace\s*étudiant/); + expect(studentButton).toBeInTheDocument(); + fireEvent.click(studentButton); + expect(window.location.pathname).toBe('/student/join-room'); + + const teacherButton = screen.getByText(/Espace\s*enseignant/); + expect(teacherButton).toBeInTheDocument(); + fireEvent.click(teacherButton); + expect(window.location.pathname).toBe('/teacher/dashboard'); + }); +}); \ No newline at end of file diff --git a/client/src/__tests__/pages/Student/StudentModeQuiz/StudentModeQuiz.test.tsx b/client/src/__tests__/pages/Student/StudentModeQuiz/StudentModeQuiz.test.tsx new file mode 100644 index 0000000..239ee4b --- /dev/null +++ b/client/src/__tests__/pages/Student/StudentModeQuiz/StudentModeQuiz.test.tsx @@ -0,0 +1,127 @@ +import { render, screen, fireEvent } from '@testing-library/react'; +import '@testing-library/jest-dom'; +import { QuestionType } from '../../../../Types/QuestionType'; +import StudentModeQuiz from '../../../../components/StudentModeQuiz/StudentModeQuiz'; + +describe('StudentModeQuiz', () => { + const mockQuestions: QuestionType[] = [ + { + question: { + id: '1', + type: 'MC', + stem: { format: 'plain', text: 'Sample Question 1' }, + title: 'Sample Question 1', + hasEmbeddedAnswers: false, + globalFeedback: null, + choices: [ + { text: { format: 'plain', text: 'Option A' }, isCorrect: true, weight: 1, feedback: null }, + { text: { format: 'plain', text: 'Option B' }, isCorrect: false, weight: 0, feedback: null }, + ], + }, + image: 'Sample Image', + }, + { + question: { + id: '2', + type: 'TF', + stem: { format: 'plain', text: 'Sample Question 2' }, + isTrue: true, + incorrectFeedback: null, + correctFeedback: null, + title: 'Question 2', + hasEmbeddedAnswers: false, + globalFeedback: null, + }, + image: 'sample-image-url-2', + }, + ]; + + const mockSubmitAnswer = jest.fn(); + const mockDisconnectWebSocket = jest.fn(); + + + test('renders the initial question', async () => { + render( + + ); + + expect(screen.getByText('Sample Question 1')).toBeInTheDocument(); + expect(screen.getByText('Option A')).toBeInTheDocument(); + expect(screen.getByText('Option B')).toBeInTheDocument(); + expect(screen.getByText('Déconnexion')).toBeInTheDocument(); + + }); + + test('handles answer submission text', () => { + + render( + + ); + + fireEvent.click(screen.getByText('Option A')); + fireEvent.click(screen.getByText('Répondre')); + + expect(mockSubmitAnswer).toHaveBeenCalledWith('Option A', '1'); + }); + + test('handles disconnect button click', () => { + render( + + ); + fireEvent.click(screen.getByText('Déconnexion')); + + expect(mockDisconnectWebSocket).toHaveBeenCalled(); + }); + + test('navigates to the next question', () => { + render( + + ); + + fireEvent.click(screen.getByText('Option A')); + fireEvent.click(screen.getByText('Répondre')); + fireEvent.click(screen.getByText('Question suivante')); + + + expect(screen.getByText('Sample Question 2')).toBeInTheDocument(); + expect(screen.getByText('T')).toBeInTheDocument(); + }); + + test('navigates to the previous question', () => { + + render( + + ); + + fireEvent.click(screen.getByText('Option A')); + fireEvent.click(screen.getByText('Répondre')); + + fireEvent.click(screen.getByText('Question précédente')); + + + expect(screen.getByText('Sample Question 1')).toBeInTheDocument(); + expect(screen.getByText('Option B')).toBeInTheDocument(); + }); + +}); + diff --git a/client/src/__tests__/pages/Student/TeacherModeQuiz/TeacherModeQuiz.test.tsx b/client/src/__tests__/pages/Student/TeacherModeQuiz/TeacherModeQuiz.test.tsx new file mode 100644 index 0000000..98fcd65 --- /dev/null +++ b/client/src/__tests__/pages/Student/TeacherModeQuiz/TeacherModeQuiz.test.tsx @@ -0,0 +1,57 @@ +//TeacherModeQuiz.test.tsx +import { render, screen, fireEvent} from '@testing-library/react'; +import '@testing-library/jest-dom'; +import { GIFTQuestion } from 'gift-pegjs'; + +import TeacherModeQuiz from '../../../../components/TeacherModeQuiz/TeacherModeQuiz'; + +describe('TeacherModeQuiz', () => { + const mockQuestion: GIFTQuestion = { + id: '1', + type: 'MC', + stem: { format: 'plain', text: 'Sample Question' }, + title: 'Sample Question', + hasEmbeddedAnswers: false, + globalFeedback: null, + choices: [ + { text: { format: 'plain', text: 'Option A' }, isCorrect: true, weight: 1, feedback: null }, + { text: { format: 'plain', text: 'Option B' }, isCorrect: false, weight: 0, feedback: null }, + ], + }; + + const mockSubmitAnswer = jest.fn(); + const mockDisconnectWebSocket = jest.fn(); + + beforeEach(() => { + render( + + ); + }); + + test('renders the initial question', () => { + expect(screen.getByText('Question 1')).toBeInTheDocument(); + expect(screen.getByText('Sample Question')).toBeInTheDocument(); + expect(screen.getByText('Option A')).toBeInTheDocument(); + expect(screen.getByText('Option B')).toBeInTheDocument(); + expect(screen.getByText('Déconnexion')).toBeInTheDocument(); + expect(screen.getByText('Répondre')).toBeInTheDocument(); + }); + + test('handles answer submission and displays wait text', () => { + fireEvent.click(screen.getByText('Option A')); + fireEvent.click(screen.getByText('Répondre')); + + expect(mockSubmitAnswer).toHaveBeenCalledWith('Option A', '1'); + expect(screen.getByText('En attente pour la prochaine question...')).toBeInTheDocument(); + }); + + test('handles disconnect button click', () => { + fireEvent.click(screen.getByText('Déconnexion')); + + expect(mockDisconnectWebSocket).toHaveBeenCalled(); + }); +}); \ No newline at end of file diff --git a/client/src/__tests__/pages/Teacher/Dashboard/Dashboard.test.tsx b/client/src/__tests__/pages/Teacher/Dashboard/Dashboard.test.tsx new file mode 100644 index 0000000..d88320e --- /dev/null +++ b/client/src/__tests__/pages/Teacher/Dashboard/Dashboard.test.tsx @@ -0,0 +1,67 @@ +import { render, screen, fireEvent } from '@testing-library/react'; +import '@testing-library/jest-dom'; +import { MemoryRouter } from 'react-router-dom'; +import Dashboard from '../../../../pages/Teacher/Dashboard/Dashboard'; + +const localStorageMock = (() => { + let store: Record = {}; + return { + getItem: (key: string) => store[key] || null, + setItem: (key: string, value: string) => (store[key] = value.toString()), + clear: () => (store = {}), + }; +})(); +Object.defineProperty(window, 'localStorage', { value: localStorageMock }); + +jest.mock('react-router-dom', () => ({ + ...jest.requireActual('react-router-dom'), + useNavigate: jest.fn(), +})); + + +describe('Dashboard Component', () => { + beforeEach(() => { + localStorage.setItem('quizzes', JSON.stringify([])); + }); + + test('renders Dashboard with default state', () => { + render( + + + + ); + expect(screen.getByText(/Tableau de bord/i)).toBeInTheDocument(); + }); + + test('adds a quiz and checks if it is displayed', () => { + const mockQuizzes = [ + { + id: '1', + title: 'Sample Quiz', + questions: ['Question 1?', 'Question 2?'], + }, + ]; + localStorage.setItem('quizzes', JSON.stringify(mockQuizzes)); + + render( + + + + ); + + expect(screen.getByText(/Sample Quiz/i)).toBeInTheDocument(); + }); + + test('opens ImportModal when "Importer" button is clicked', () => { + render( + + + + ); + + fireEvent.click(screen.getByText(/Importer/i)); + + expect(screen.getByText(/Importation de quiz/i)).toBeInTheDocument(); + }); + +}); diff --git a/client/src/__tests__/pages/Teacher/EditorQuiz/EditorQuiz.test.tsx b/client/src/__tests__/pages/Teacher/EditorQuiz/EditorQuiz.test.tsx new file mode 100644 index 0000000..e6e1025 --- /dev/null +++ b/client/src/__tests__/pages/Teacher/EditorQuiz/EditorQuiz.test.tsx @@ -0,0 +1,60 @@ +import { render, screen, fireEvent } from '@testing-library/react'; +import '@testing-library/jest-dom'; +import { MemoryRouter } from 'react-router-dom'; +import QuizForm from '../../../../pages/Teacher/EditorQuiz/EditorQuiz'; +import { waitFor } from '@testing-library/react'; + +const localStorageMock = (() => { + let store: Record = {}; + return { + getItem: (key: string) => store[key] || null, + setItem: (key: string, value: string) => (store[key] = value.toString()), + clear: () => (store = {}), + }; +})(); +Object.defineProperty(window, 'localStorage', { value: localStorageMock }); + +jest.mock('react-router-dom', () => ({ + ...jest.requireActual('react-router-dom'), + useNavigate: jest.fn(), +})); + +describe('QuizForm Component', () => { + test('renders QuizForm with default state for a new quiz', () => { + render( + + + + ); + + expect(screen.queryByText('Éditeur de quiz')).toBeInTheDocument(); + expect(screen.queryByText('Éditeur')).toBeInTheDocument(); + expect(screen.queryByText('Prévisualisation')).toBeInTheDocument(); + }); + + test('renders QuizForm for a new quiz', async () => { + render( + + + + ); + + expect(screen.getByText(/Éditeur de quiz/i)).toBeInTheDocument(); + + const editorTextArea = screen.getByRole('textbox'); + fireEvent.change(editorTextArea, { target: { value: 'Sample question?' } }); + + await waitFor(() => { + const sampleQuestionElements = screen.queryAllByText(/Sample question\?/i); + expect(sampleQuestionElements.length).toBeGreaterThan(0); + }); + + const saveButton = screen.getByText(/Enregistrer/i); + fireEvent.click(saveButton); + + await waitFor(() => { + expect(screen.getByText(/Sauvegarder le questionnaire/i)).toBeInTheDocument(); + }); + }); + +}); diff --git a/client/src/__tests__/services/QuestionService.test.tsx b/client/src/__tests__/services/QuestionService.test.tsx new file mode 100644 index 0000000..8db1ee1 --- /dev/null +++ b/client/src/__tests__/services/QuestionService.test.tsx @@ -0,0 +1,39 @@ +import { QuestionService } from "../../services/QuestionService"; + +describe('QuestionService', () => { + describe('getImage', () => { + it('should return empty string for text without image tag', () => { + const text = 'This is a sample text without an image tag.'; + const imageUrl = QuestionService.getImage(text); + expect(imageUrl).toBe(''); + }); + + it('should return the image tag from the text', () => { + const text = 'This is a sample text with an Sample Image tag.'; + const imageUrl = QuestionService.getImage(text); + expect(imageUrl).toBe('Sample Image'); + }); + }); + + describe('getImageSource', () => { + it('should return the image source from the image tag in the text', () => { + const text = 'Sample Image'; + const imageUrl = QuestionService.getImageSource(text); + expect(imageUrl).toBe('src="image.jpg" alt="Sample Image" /'); + }); + }); + + describe('ignoreImgTags', () => { + it('should return the same text if it does not contain an image tag', () => { + const text = 'This is a sample text without an image tag.'; + const result = QuestionService.ignoreImgTags(text); + expect(result).toBe(text); + }); + + it('should remove the image tag from the text', () => { + const text = 'This is a sample text with an Sample Image tag.'; + const result = QuestionService.ignoreImgTags(text); + expect(result).toBe('This is a sample text with an tag.'); + }); + }); +}); diff --git a/client/src/__tests__/services/QuizService.test.tsx b/client/src/__tests__/services/QuizService.test.tsx new file mode 100644 index 0000000..d11dae8 --- /dev/null +++ b/client/src/__tests__/services/QuizService.test.tsx @@ -0,0 +1,65 @@ +/*import { QuizService } from '../../services/QuizService'; +import { QuizType } from '../../Types/QuizType'; + +// we need to mock localStorage for this test +if (typeof window === 'undefined') { + global.window = {} as Window & typeof globalThis; +} + +const localStorageMock = (() => { + let store: { [key: string]: string } = {}; + return { + getItem(key: string) { + return store[key] || null; + }, + setItem(key: string, value: string) { + store[key] = value.toString(); + }, + removeItem(key: string) { + delete store[key]; + }, + clear() { + store = {}; + } + }; +})(); + +Object.defineProperty(window, 'localStorage', { + value: localStorageMock +}); + +/*describe('QuizService', () => { + const mockQuizzes: QuizType[] = [ + { _id: 'quiz1', title: 'Quiz One', content: ['Q1', 'Q2'] }, + { _id: 'quiz2', title: 'Quiz Two', content: ['Q3', 'Q4'] } + ]; + + beforeEach(() => { + localStorageMock.setItem('quizzes', JSON.stringify(mockQuizzes)); + }); + + afterEach(() => { + localStorageMock.removeItem('quizzes'); + }); + + test('should return quiz for valid id', () => { + const quiz = QuizService.getQuizById('quiz1', localStorageMock); + expect(quiz).toEqual(mockQuizzes[0]); + }); + + test('should return undefined for invalid id', () => { + const quiz = QuizService.getQuizById('nonexistent', localStorageMock); + expect(quiz).toBeUndefined(); + }); + + test('should return undefined for undefined id', () => { + const quiz = QuizService.getQuizById(undefined, localStorageMock); + expect(quiz).toBeUndefined(); + }); + + test('should handle empty localStorage', () => { + localStorageMock.removeItem('quizzes'); + const quiz = QuizService.getQuizById('quiz1', localStorageMock); + expect(quiz).toBeUndefined(); + }); +});*/ diff --git a/client/src/__tests__/services/WebsocketService.test.tsx b/client/src/__tests__/services/WebsocketService.test.tsx new file mode 100644 index 0000000..e61c994 --- /dev/null +++ b/client/src/__tests__/services/WebsocketService.test.tsx @@ -0,0 +1,88 @@ +//WebsocketService.test.tsx +import WebsocketService from '../../services/WebsocketService'; +import { io, Socket } from 'socket.io-client'; +import { ENV_VARIABLES } from '../../constants'; + +jest.mock('socket.io-client'); + +jest.mock('../../constants', () => ({ + ENV_VARIABLES: { + VITE_BACKEND_URL: 'https://ets-glitch-backend.glitch.me/' + } +})); + +describe('WebSocketService', () => { + let mockSocket: Partial; + + beforeEach(() => { + mockSocket = { + emit: jest.fn(), + disconnect: jest.fn(), + connect: jest.fn() + }; + + (io as jest.Mock).mockReturnValue(mockSocket); + }); + + afterEach(() => { + jest.restoreAllMocks(); + }); + + test('connect should initialize socket connection', () => { + WebsocketService.connect(ENV_VARIABLES.VITE_BACKEND_URL); + expect(io).toHaveBeenCalled(); + expect(WebsocketService['socket']).toBe(mockSocket); + }); + + test('disconnect should terminate socket connection', () => { + mockSocket = WebsocketService.connect(ENV_VARIABLES.VITE_BACKEND_URL); + expect(WebsocketService['socket']).toBeTruthy(); + WebsocketService.disconnect(); + expect(mockSocket.disconnect).toHaveBeenCalled(); + expect(WebsocketService['socket']).toBeNull(); + }); + + test('createRoom should emit create-room event', () => { + WebsocketService.connect(ENV_VARIABLES.VITE_BACKEND_URL); + WebsocketService.createRoom(); + expect(mockSocket.emit).toHaveBeenCalledWith('create-room'); + }); + + test('nextQuestion should emit next-question event with correct parameters', () => { + const roomName = 'testRoom'; + const question = { id: 1, text: 'Sample Question' }; + + mockSocket = WebsocketService.connect(ENV_VARIABLES.VITE_BACKEND_URL); + WebsocketService.nextQuestion(roomName, question); + expect(mockSocket.emit).toHaveBeenCalledWith('next-question', { roomName, question }); + }); + + test('launchStudentModeQuiz should emit launch-student-mode event with correct parameters', () => { + const roomName = 'testRoom'; + const questions = [{ id: 1, text: 'Sample Question' }]; + + mockSocket = WebsocketService.connect(ENV_VARIABLES.VITE_BACKEND_URL); + WebsocketService.launchStudentModeQuiz(roomName, questions); + expect(mockSocket.emit).toHaveBeenCalledWith('launch-student-mode', { + roomName, + questions + }); + }); + + test('endQuiz should emit end-quiz event with correct parameters', () => { + const roomName = 'testRoom'; + + mockSocket = WebsocketService.connect(ENV_VARIABLES.VITE_BACKEND_URL); + WebsocketService.endQuiz(roomName); + expect(mockSocket.emit).toHaveBeenCalledWith('end-quiz', { roomName }); + }); + + test('joinRoom should emit join-room event with correct parameters', () => { + const enteredRoomName = 'testRoom'; + const username = 'testUser'; + + mockSocket = WebsocketService.connect(ENV_VARIABLES.VITE_BACKEND_URL); + WebsocketService.joinRoom(enteredRoomName, username); + expect(mockSocket.emit).toHaveBeenCalledWith('join-room', { enteredRoomName, username }); + }); +}); diff --git a/client/src/components/ConfirmDialog/ConfirmDialog.tsx b/client/src/components/ConfirmDialog/ConfirmDialog.tsx new file mode 100644 index 0000000..10f6a92 --- /dev/null +++ b/client/src/components/ConfirmDialog/ConfirmDialog.tsx @@ -0,0 +1,77 @@ +// Modal.tsx +import React from 'react'; +import { + Button, + Dialog, + DialogActions, + DialogContent, + DialogContentText, + DialogTitle, + TextField +} from '@mui/material'; + +type Props = { + open: boolean; + title: string; + message: string; + onConfirm: () => void; + onCancel: () => void; + hasOptionalInput?: boolean; + optionalInputValue?: string; + onOptionalInputChange?: (event: React.ChangeEvent) => void; + buttonOrderType?: 'normal' | 'warning'; +}; + +const ConfirmDialog: React.FC = ({ + open, + title, + message, + onConfirm, + onCancel, + hasOptionalInput, + optionalInputValue, + onOptionalInputChange, + buttonOrderType = 'normal' +}) => { + return ( + + {title} + + {message} + + {hasOptionalInput && ( + + + + )} + + {buttonOrderType === 'normal' && ( + + )} + + {buttonOrderType === 'warning' && ( + + )} + + + ); +}; + +export default ConfirmDialog; diff --git a/client/src/components/DisconnectButton/DisconnectButton.tsx b/client/src/components/DisconnectButton/DisconnectButton.tsx new file mode 100644 index 0000000..831a1c7 --- /dev/null +++ b/client/src/components/DisconnectButton/DisconnectButton.tsx @@ -0,0 +1,66 @@ +// GoBackButton.tsx +import { useState } from 'react'; +import { useNavigate } from 'react-router-dom'; +import ConfirmDialog from '../ConfirmDialog/ConfirmDialog'; +import { Button } from '@mui/material'; +import { ChevronLeft } from '@mui/icons-material'; + +interface Props { + onReturn?: () => void; + askConfirm?: boolean; + message?: string; +} + +const DisconnectButton: React.FC = ({ + askConfirm = false, + message = 'Êtes-vous sûr de vouloir quitter la page ?', + onReturn +}) => { + const navigate = useNavigate(); + const [showDialog, setShowDialog] = useState(false); + + const handleOnReturnButtonClick = () => { + if (askConfirm) { + setShowDialog(true); + } else { + handleOnReturn(); + } + }; + + const handleConfirm = () => { + setShowDialog(false); + handleOnReturn(); + }; + + const handleOnReturn = () => { + if (!!onReturn) { + onReturn(); + } else { + navigate(-1); + } + }; + + return ( +
+ + setShowDialog(false)} + buttonOrderType="warning" + /> +
+ ); +}; + +export default DisconnectButton; diff --git a/client/src/components/Editor/Editor.tsx b/client/src/components/Editor/Editor.tsx new file mode 100644 index 0000000..46d6ec0 --- /dev/null +++ b/client/src/components/Editor/Editor.tsx @@ -0,0 +1,32 @@ +// Editor.tsx +import React, { useState, useRef } from 'react'; +import './editor.css'; + +interface EditorProps { + initialValue: string; + onEditorChange: (value: string) => void; +} + +const Editor: React.FC = ({ initialValue, onEditorChange }) => { + const [value, setValue] = useState(initialValue); + const editorRef = useRef(null); + + function handleEditorChange(event: React.ChangeEvent) { + const text = event.target.value; + setValue(text); + onEditorChange(text || ''); + } + + return ( +
+ +
+ ); +}; + +export default Editor; diff --git a/client/src/components/Editor/editor.css b/client/src/components/Editor/editor.css new file mode 100644 index 0000000..d47c8c8 --- /dev/null +++ b/client/src/components/Editor/editor.css @@ -0,0 +1,9 @@ +.editor { + width: 100%; + height: 50vh; + background-color: #f8f9ff; + padding-left: 10px; + padding-top: 10px; + font-size: medium; + resize: none; +} diff --git a/client/src/components/Footer/Footer.tsx b/client/src/components/Footer/Footer.tsx new file mode 100644 index 0000000..1bd2d14 --- /dev/null +++ b/client/src/components/Footer/Footer.tsx @@ -0,0 +1,25 @@ +import * as React from 'react'; +import './footer.css'; + +interface FooterProps { + +} + +const Footer: React.FC = ({ }) => { + return ( +
+
+ Réalisé avec ❤ à Montréal par des finissant•e•s de l'ETS +
+ +
+ ); +}; + +export default Footer; \ No newline at end of file diff --git a/client/src/components/Footer/footer.css b/client/src/components/Footer/footer.css new file mode 100644 index 0000000..907065c --- /dev/null +++ b/client/src/components/Footer/footer.css @@ -0,0 +1,23 @@ +.footer { + flex-shrink: 0; + padding: 20px; + text-align: center; +} + +.footer-content { + margin-bottom: 10px; +} + +.footer-links a { + color: #333; + text-decoration: none; +} + +.footer-links a:hover { + text-decoration: underline; +} + +.divider { + margin: 0 10px; + color: #666; +} \ No newline at end of file diff --git a/client/src/components/GIFTCheatSheet/GiftCheatSheet.tsx b/client/src/components/GIFTCheatSheet/GiftCheatSheet.tsx new file mode 100644 index 0000000..8085f7a --- /dev/null +++ b/client/src/components/GIFTCheatSheet/GiftCheatSheet.tsx @@ -0,0 +1,153 @@ +// GiftCheatSheet.tsx +import React from 'react'; +import './giftCheatSheet.css'; + +const GiftCheatSheet: React.FC = () => { + return ( +
+

Informations pratiques sur l'éditeur

+ + L'éditeur utilise le format GIFT (General Import Format Template) créé pour la + plateforme Moodle afin de générer les quizs. Ci-dessous vous pouvez retrouver la + syntaxe pour chaque type de question ainsi que les champs optionnels : + +
+

1. Questions Vrai/Faux

+
+                    
+                        {'2+2 \\= 4 ? {T\n}// Vous pouvez utiliser les valeurs {T}, {F}, {TRUE} et {FALSE}'}
+                    
+                
+
+ +
+

2. Questions à choix multiple

+
+                    
+                        {
+                            'Quelle ville est la capitale du Canada? {\n~ Toronto\n~ Montréal\n= Ottawa #Bonne réponse!\n}// La bonne réponse est Ottawa'
+                        }
+                    
+                
+
+
+

3. Questions à choix multiple avec plusieurs réponses

+
+                    
+                        {
+                            'Quelles villes trouve-t-on au Canada? { \n~ %33.3% Montréal \n~ %33.3% Ottawa \n~ %33.3% Vancouver \n~ %-100% New York \n~ %-100% Paris \n#### La bonne réponse est Montréal, Ottawa et Vancouver \n} //On utilise le signe ~ pour toutes les réponses. On doit indiquer le pourcentage de chaque réponse'
+                        }
+                    
+                
+
+ +
+

4. Questions à reponse courte

+
+                    
+                        {'Avec quoi ouvre-t-on une porte? { \n= clé \n= clef \n}// Permet de fournir plusieurs bonnes réponses. Note: Les majuscules ne sont pas prises en compte.'}
+                    
+                
+
+ +
+

5. Questions numériques

+
+                    
+                        {
+                            'Question {#=Nombre\n} //OU \nQuestion {#=Nombre:Tolérance\n} //OU \nQuestion {#=PetitNombre..GrandNombre\n} // La tolérance est un pourcentage. La réponse doit être comprise entre PetitNombre et GrandNombre'
+                        }
+                    
+                
+
+ +
+

6. Paramètres optionnels

+
+                    
+                        {'::Titre:: '}
+                        
+                            {' // Ajoute un titre à une question'}
+                        
+                        
+ {'# Feedback '} + + {' // Feedback pour UNE réponse'} + +
+ {'// Commentaire '} + + {' // Commentaire non apparent'} + +
+ {'#### Feedback général '} + + {' // Feedback général pour une question'} + +
+ {'%50% '} + + {" // Poids d'une réponse (peut être négatif)"} + +
+
+
+ +
+

7. Paramètres optionnels

+

+ Si vous souhaitez utiliser certains caractères spéciaux dans vos énoncés, + réponses ou feedback, vous devez 'échapper' ces derniers en ajoutant un \ + devant: +

+
+                    
+                        {'\\~ \n\\= \n\\# \n\\{ \n\\} \n\\:'}
+                    
+                
+
+ +
+

8. LaTeX

+

+ Le format LaTeX est supporté dans cette application. Vous devez cependant penser + à 'échapper' les caractères spéciaux mentionnés plus haut. +

+

Exemple d'équation:

+
+                    {'$$x\\= \\frac\\{y^2\\}\\{4\\}$$'}
+                
+
+ +
+

9. inserer une image

+

Pour insérer une image, vous devez utiliser la syntaxe suivante:

+
+                    
+                        {'{`un_URL_d_image`}
+                        {' >'}
+                    
+                
+

+ Attention nous ne supportons pas encore les images en tant que réponses à une + question +

+
+ +
+

10. Informations supplémentaires

+

+ GIFT supporte d'autres formats de questions que nous ne gérons pas sur cette + application. +

+

Vous pouvez retrouver la Documentation de GIFT (en anglais):

+ + Documentation de GIFT + +
+
+ ); +}; + +export default GiftCheatSheet; diff --git a/client/src/components/GIFTCheatSheet/giftCheatSheet.css b/client/src/components/GIFTCheatSheet/giftCheatSheet.css new file mode 100644 index 0000000..c338ff3 --- /dev/null +++ b/client/src/components/GIFTCheatSheet/giftCheatSheet.css @@ -0,0 +1,37 @@ +.gift-cheat-sheet { + width: 30vw; + height: 100%; +} +.subtitle { + color: #3a3a3a; + margin-bottom: 2vh; +} + +.question-type { + margin-bottom: 20; +} +.question-code-block, +.code-comment { + white-space: pre-line; +} + +code { + font-family: 'Courier New', Courier, monospace; + padding: 2px 4px; + border-radius: 4px; +} + +pre { + background-color: #ffffffbd; + padding: 10px; + border: 1px solid #000; + border-radius: 4px; + overflow-x: auto; +} +.code-comment { + color: green; +} + +.question-type h4 { + margin-top: 20px; +} diff --git a/client/src/components/GiftTemplate/GIFTTemplatePreview.tsx b/client/src/components/GiftTemplate/GIFTTemplatePreview.tsx new file mode 100644 index 0000000..832428f --- /dev/null +++ b/client/src/components/GiftTemplate/GIFTTemplatePreview.tsx @@ -0,0 +1,86 @@ +// GIFTTemplatePreview.tsx +import React, { useEffect, useState } from 'react'; +import Template, { ErrorTemplate } from './templates'; +import { parse } from 'gift-pegjs'; +import './styles.css'; + +interface GIFTTemplatePreviewProps { + questions: string[]; + hideAnswers?: boolean; +} + +const GIFTTemplatePreview: React.FC = ({ + questions, + hideAnswers = false +}) => { + const [error, setError] = useState(''); + const [isPreviewReady, setIsPreviewReady] = useState(false); + const [items, setItems] = useState(''); + + useEffect(() => { + try { + let previewHTML = ''; + questions.forEach((item) => { + const isImage = item.includes(']+>/i); + if (imageUrlMatch) { + let imageUrl = imageUrlMatch[0]; + imageUrl = imageUrl.replace('img', 'img style="width:10vw;" src='); + item = item.replace(imageUrlMatch[0], ''); + previewHTML += `${imageUrl}`; + } + } + + try { + const parsedItem = parse(item); + previewHTML += Template(parsedItem[0], { + preview: true, + theme: 'light' + }); + } catch (error) { + if (error instanceof Error) { + previewHTML += ErrorTemplate(item + '\n' + error.message); + } else { + previewHTML += ErrorTemplate(item + '\n' + 'Erreur inconnue'); + } + } + previewHTML += ''; + }); + + if (hideAnswers) { + const svgRegex = /]*>([\s\S]*?)<\/svg>/gi; + previewHTML = previewHTML.replace(svgRegex, ''); + const placeholderRegex = /(placeholder=")[^"]*(")/gi; + previewHTML = previewHTML.replace(placeholderRegex, '$1$2'); + } + + setItems(previewHTML); + setIsPreviewReady(true); + } catch (error: unknown) { + if (error instanceof Error) { + setError(error.message); + } else { + setError('Une erreur est survenue durant le chargement de la prévisualisation.'); + } + } + }, [questions]); + + const PreviewComponent = () => ( + + {error ? ( +
{error}
+ ) : isPreviewReady ? ( +
+
+
+ ) : ( +
Chargement de la prévisualisation...
+ )} +
+ ); + + return ; +}; + +export default GIFTTemplatePreview; diff --git a/client/src/components/GiftTemplate/constants/colors.ts b/client/src/components/GiftTemplate/constants/colors.ts new file mode 100644 index 0000000..100259f --- /dev/null +++ b/client/src/components/GiftTemplate/constants/colors.ts @@ -0,0 +1,52 @@ +export const colors = { + red100: 'hsl(0, 100%, 97%)', + red300: 'hsl(0, 53%, 90%)', + red700: 'hsl(0, 45%, 25%)', + redGray800: 'hsl(0, 23%, 18%)', + beige100: 'hsl(43, 100%, 94%)', + beige300: 'hsl(36, 84%, 93%)', + beige400: 'hsl(36, 39%, 75%)', + beige500: 'hsl(36, 50%, 50%)', + beige600: 'hsl(35, 51%, 33%)', + beige900: 'hsl(43, 95%, 9%)', + beigeGray800: 'hsl(43, 23%, 33%)', + green100: 'hsl(134, 68%, 95%)', + green300: 'hsl(134, 31%, 82%)', + green400: 'hsl(134, 31%, 75%)', + green500: 'hsl(134, 31%, 66%)', + green600: 'hsl(134, 31%, 44%)', + green700: 'hsl(134, 31%, 32%)', + greenGray500: 'hsl(134, 18%, 50%)', + greenGray600: 'hsl(134, 21%, 44%)', + greenGray700: 'hsl(134, 23%, 33%)', + teal400: 'hsl(180, 35%, 89%)', + teal500: 'hsl(180, 35%, 84%)', + teal600: 'hsl(180, 24%, 60%)', + teal700: 'hsl(180, 15%, 41%)', + cyan100: 'hsl(194, 55%, 98%)', + cyan200: 'hsl(194, 60%, 96%)', + cyan300: 'hsl(194, 65%, 92%)', + navy600: 'hsl(218, 17%, 35%)', + gray100: 'hsl(0, 0%, 95%)', + gray200: 'hsl(0, 0%, 88%)', + gray300: 'hsl(0, 0%, 81%)', + gray400: 'hsl(0, 0%, 74%)', + gray500: 'hsl(0, 0%, 67%)', + gray600: 'hsl(0, 0%, 60%)', + gray700: 'hsl(0, 0%, 53%)', + gray800: 'hsl(0, 0%, 46%)', + gray900: 'hsl(0, 0%, 39%)', + black100: 'hsl(0, 0%, 32%)', + black200: 'hsl(0, 0%, 28%)', + black300: 'hsl(0, 0%, 24%)', + black400: 'hsl(0, 0%, 20%)', + black500: 'hsl(0, 0%, 16%)', + black600: 'hsl(0, 0%, 12%)', + black700: 'hsl(0, 0%, 8%)', + black800: 'hsl(0, 0%, 4%)', + black900: 'hsl(0, 0%, 0%)', + blue: '#5271FF', + success: 'hsl(120, 39%, 54%)', + danger: 'hsl(2, 64%, 58%)', + white: 'hsl(0, 0%, 100%)' +}; diff --git a/client/src/components/GiftTemplate/constants/index.ts b/client/src/components/GiftTemplate/constants/index.ts new file mode 100644 index 0000000..135de1c --- /dev/null +++ b/client/src/components/GiftTemplate/constants/index.ts @@ -0,0 +1,3 @@ +export { colors } from './colors'; +export { theme } from './theme'; +export * from './styles'; diff --git a/client/src/components/GiftTemplate/constants/styles.ts b/client/src/components/GiftTemplate/constants/styles.ts new file mode 100644 index 0000000..200a689 --- /dev/null +++ b/client/src/components/GiftTemplate/constants/styles.ts @@ -0,0 +1,58 @@ +import { ThemeType } from '../templates/types'; +import { theme } from './theme'; + +export const ParagraphStyle = (t: ThemeType) => ` + color: ${theme(t, 'black900', 'gray200')}; +`; + +export const TextAreaStyle = (t: ThemeType) => ` + width: 100%; + height: 7rem; + line-height: 1.5; + color: ${theme(t, 'black500', 'gray200')}; + background-color: ${theme(t, 'white', 'black300')}; + border: ${t === 'light' ? 1 : 1.5}px solid ${theme(t, 'gray300', 'gray900')}; + border-radius: 0.25rem; + box-shadow: rgba(0, 0, 0, 0.05) 0px 1px 2px 0px; + padding: 0.5rem; + margin: 0; + font-family: inherit; + font-size: inherit; + line-height: inherit; +`; + +export const SelectStyle = (t: ThemeType) => ` + display: inline-block; + box-sizing: border-box; + align-items: center; + white-space: pre; + cursor: default; + margin: 0; + font-family: inherit; + font-size: inherit; + line-height: inherit; + text-transform: none; + min-width: 8rem; + line-height: 1.5; + color: ${theme(t, 'black500', 'gray200')}; + background-color: ${theme(t, 'white', 'black300')}; + border: ${t === 'light' ? 1 : 1.5}px solid ${theme(t, 'gray300', 'gray900')}; + border-radius: 0.25rem; + box-shadow: rgba(0, 0, 0, 0.05) 0px 1px 2px 0px; +`; + +export const InputStyle = (t: ThemeType) => ` + display: inline-block; + padding: 0.375rem 0.75rem; + line-height: 1.5; + color: ${theme(t, 'black500', 'gray200')}; + background-color: ${theme(t, 'white', 'black300')}; + border: ${t === 'light' ? 1 : 2}px solid ${theme(t, 'gray300', 'gray900')}; + border-radius: 0.25rem; + box-shadow: rgba(0, 0, 0, 0.05) 0px 1px 2px 0px; + margin: 0; + font-family: inherit; + font-size: inherit; + line-height: inherit; + width: 90%; +`; diff --git a/client/src/components/GiftTemplate/constants/theme.ts b/client/src/components/GiftTemplate/constants/theme.ts new file mode 100644 index 0000000..a0fb810 --- /dev/null +++ b/client/src/components/GiftTemplate/constants/theme.ts @@ -0,0 +1,11 @@ +import { colors } from './colors'; + +type Color = keyof typeof colors; + +export const theme = (theme: 'light' | 'dark', light: Color, dark: Color) => { + if (theme === 'light') { + return colors[light]; + } else { + return colors[dark]; + } +}; diff --git a/client/src/components/GiftTemplate/index.ts b/client/src/components/GiftTemplate/index.ts new file mode 100644 index 0000000..fc79c92 --- /dev/null +++ b/client/src/components/GiftTemplate/index.ts @@ -0,0 +1,263 @@ +import Template, { ErrorTemplate } from './templates'; +import { GIFTQuestion } from './templates/types'; +import './styles.css'; + +const multiple: GIFTQuestion[] = [ + { + type: 'MC', + title: null, + stem: { format: 'markdown', text: "Who's buried in Grant's \r\n tomb?" }, + hasEmbeddedAnswers: false, + globalFeedback: { + format: 'moodle', + text: 'Not sure? There are many answers for this question so do not fret. Not sure? There are many answers for this question so do not fret.' + }, + choices: [ + { + isCorrect: false, + weight: -50, + text: { format: 'moodle', text: 'Grant' }, + feedback: null + }, + { + isCorrect: true, + weight: 50, + text: { format: 'moodle', text: 'Jefferson' }, + feedback: null + }, + { + isCorrect: true, + weight: 50, + text: { format: 'moodle', text: 'no one' }, + feedback: null + } + ] + }, + { + type: 'MC', + title: null, + stem: { format: 'moodle', text: "Grant is _____ in Grant's tomb." }, + hasEmbeddedAnswers: true, + globalFeedback: null, + choices: [ + { + isCorrect: true, + weight: null, + text: { format: 'moodle', text: 'buried' }, + feedback: null + }, + { + isCorrect: true, + weight: null, + text: { format: 'moodle', text: 'entombed' }, + feedback: null + }, + { + isCorrect: false, + weight: null, + text: { format: 'moodle', text: 'living' }, + feedback: null + } + ] + }, + { + type: 'TF', + title: null, + stem: { format: 'moodle', text: "Grant is buried in Grant's tomb." }, + hasEmbeddedAnswers: false, + globalFeedback: null, + isTrue: false, + incorrectFeedback: null, + correctFeedback: null + }, + { + type: 'Short', + title: null, + stem: { format: 'moodle', text: "Who's buried in Grant's tomb?" }, + hasEmbeddedAnswers: false, + globalFeedback: null, + choices: [ + { + isCorrect: true, + weight: null, + text: { format: 'moodle', text: 'no one " has got me' }, + feedback: null + }, + { + isCorrect: true, + weight: null, + text: { format: 'moodle', text: 'nobody' }, + feedback: null + } + ] + }, + { + type: 'Numerical', + title: null, + stem: { format: 'moodle', text: 'When was Ulysses S. Grant born?' }, + hasEmbeddedAnswers: false, + globalFeedback: null, + choices: { + type: 'range', + number: 1822, + range: 5 + } + }, + { + type: 'Matching', + title: null, + stem: { + format: 'moodle', + text: 'Match the following countries with their corresponding capitals.' + }, + hasEmbeddedAnswers: false, + globalFeedback: null, + matchPairs: [ + { + subquestion: { format: 'moodle', text: 'Canada' }, + subanswer: 'Ottawa' + }, + { + subquestion: { format: 'moodle', text: 'Italy' }, + subanswer: 'Rome' + }, + { + subquestion: { format: 'moodle', text: 'Japan' }, + subanswer: 'Tokyo' + } + ] + }, + { + type: 'MC', + title: "Grant's Tomb", + stem: { format: 'moodle', text: "Grant is _____ in Grant's tomb." }, + hasEmbeddedAnswers: true, + globalFeedback: null, + choices: [ + { + isCorrect: false, + weight: null, + text: { format: 'moodle', text: 'buried' }, + feedback: { format: 'moodle', text: 'No one is buried there.' } + }, + { + isCorrect: true, + weight: null, + text: { format: 'moodle', text: 'entombed' }, + feedback: { format: 'moodle', text: 'Right answer!' } + }, + { + isCorrect: false, + weight: null, + text: { format: 'moodle', text: 'living' }, + feedback: { format: 'moodle', text: 'We hope not!' } + } + ] + }, + { + type: 'MC', + title: null, + stem: { format: 'moodle', text: 'Difficult multiple choice question.' }, + hasEmbeddedAnswers: false, + globalFeedback: null, + choices: [ + { + isCorrect: false, + weight: null, + text: { format: 'moodle', text: 'wrong answer' }, + feedback: { format: 'moodle', text: 'comment on wrong answer' } + }, + { + isCorrect: false, + weight: 50, + text: { format: 'moodle', text: 'half credit answer' }, + feedback: { format: 'moodle', text: 'comment on answer' } + }, + { + isCorrect: true, + weight: null, + text: { format: 'moodle', text: 'full credit answer' }, + feedback: { format: 'moodle', text: 'well done!' } + } + ] + }, + { + type: 'Short', + title: "Jesus' hometown (Short answer ex.)", + stem: { format: 'moodle', text: 'Jesus Christ was from _____ .' }, + hasEmbeddedAnswers: true, + globalFeedback: null, + choices: [ + { + isCorrect: true, + weight: null, + text: { format: 'moodle', text: 'Nazareth' }, + feedback: { format: 'moodle', text: "Yes! That's right!" } + }, + { + isCorrect: true, + weight: 75, + text: { format: 'moodle', text: 'Nazereth' }, + feedback: { format: 'moodle', text: 'Right, but misspelled.' } + }, + { + isCorrect: true, + weight: 25, + text: { format: 'moodle', text: 'Bethlehem' }, + feedback: { + format: 'moodle', + text: 'He was born here, but not raised here.' + } + } + ] + }, + { + type: 'Numerical', + title: 'Numerical example', + stem: { format: 'moodle', text: 'When was Ulysses S. Grant born?' }, + hasEmbeddedAnswers: false, + globalFeedback: null, + choices: [ + { + isCorrect: true, + weight: null, + text: { + type: 'range', + number: 1822, + range: 0 + }, + feedback: { format: 'moodle', text: 'Correct! 100% credit' } + }, + { + isCorrect: true, + weight: 50, + text: { + type: 'range', + number: 1822, + range: 2 + }, + feedback: { + format: 'moodle', + text: 'He was born in 1822. You get 50% credit for being close.' + } + } + ] + }, + { + type: 'Essay', + title: 'Essay Example', + stem: { format: 'moodle', text: 'This is an essay.' }, + hasEmbeddedAnswers: false, + globalFeedback: null + } +]; + +const items = multiple.map((item) => Template(item, { theme: 'dark' })).join(''); +const errorItemDark = ErrorTemplate('Hello'); + +const lightItems = multiple.map((item) => Template(item, { theme: 'light' })).join(''); + +const errorItem = ErrorTemplate('Hello'); + +const app = document.getElementById('app'); +if (app) app.innerHTML = items + errorItemDark + lightItems + errorItem; diff --git a/client/src/components/GiftTemplate/styles.css b/client/src/components/GiftTemplate/styles.css new file mode 100644 index 0000000..cefa560 --- /dev/null +++ b/client/src/components/GiftTemplate/styles.css @@ -0,0 +1,86 @@ +/* :root { + --correct: hsla(134, 31%, 32%, 1); + --correct-light: hsla(134, 68%, 95%, 1); + + --light-gray: rgb(202, 202, 202); + --moodle-blue-lighter: hsla(194, 55%, 98%, 1); + --moodle-blue-light: hsla(194, 60%, 96%, 1); + --moodle-blue: #def2f8; + --moodle-blue-dark: #c7e4e4; + --moodle-blue-darker: #81b1b1; + --moodle-blue-darkest: rgb(87, 119, 119); + --moodle-alt-light: #fff8e2; + --moodle-alt: #fcefdc; + --moodle-alt-dark: #b8945e; + --moodle-alt-darker: #7d5a29; + --moodle-alt-darkest: #2b2101; + --moodle-error-light: #fff0f0; + --moodle-error: #f3d8d8; + --default-box-shadow: rgba(0, 0, 0, 0.05) 0px 1px 2px 0px; + --form-input-color: rgb(74, 85, 104); +} */ + +/* body { + background-color: #121212; + } */ + +/* :root { + --correct: hsla(134, 31%, 32%, 1); + --correct-light: hsla(134, 68%, 95%, 1); + + --light-gray: rgb(202, 202, 202); + --moodle-blue-lighter: hsla(194, 55%, 98%, 1); + --moodle-blue-light: hsla(194, 60%, 96%, 1); + --moodle-blue: #def2f8; + --moodle-blue-dark: #c7e4e4; + --moodle-blue-darker: #81b1b1; + --moodle-blue-darkest: rgb(87, 119, 119); + --moodle-alt-light: #fff8e2; + --moodle-alt: #fcefdc; + --moodle-alt-dark: #b8945e; + --moodle-alt-darker: #7d5a29; + --moodle-alt-darkest: #2b2101; + --moodle-error-light: #fff0f0; + --moodle-error: #f3d8d8; + --default-box-shadow: rgba(0, 0, 0, 0.05) 0px 1px 2px 0px; + --form-input-color: rgb(74, 85, 104); + } */ + +/* * { + box-sizing: border-box; + font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, + Helvetica Neue, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji, + Segoe UI Symbol; + line-height: 1.5rem; + } */ +/* + .gift-textarea::-webkit-input-placeholder { + color: #999; + } + .gift-textarea::-moz-placeholder { + color: #999; + } + .gift-textarea:-ms-input-placeholder { + color: #999; + } + .gift-textarea:-moz-placeholder { + color: #999; + } */ +.present-question-title { + margin-top: 8vh; + margin-bottom: 2vh; + font-size: 2rem; + font-weight: 500; +} +.preview-container { + margin-bottom: 2vh; + width: 60vw; + height: 100%; +} +.multiple-choice-answers-container { + margin: 1% 0% 1% 0%; +} +.multiple-choice-answers-container > * { + display: inline; + vertical-align: middle; +} diff --git a/client/src/components/GiftTemplate/templates/AnswerIcon.ts b/client/src/components/GiftTemplate/templates/AnswerIcon.ts new file mode 100644 index 0000000..aa95386 --- /dev/null +++ b/client/src/components/GiftTemplate/templates/AnswerIcon.ts @@ -0,0 +1,36 @@ +import { TemplateOptions } from './types'; +import { theme } from '../constants'; +import { state } from '.'; + +interface AnswerIconOptions extends TemplateOptions { + correct: boolean; +} + +export default function AnswerIcon({ correct }: AnswerIconOptions): string { + const Icon = ` + vertical-align: text-bottom; + display: inline-block; + margin-left: 0.1rem; + margin-right: 0.2rem; +`; + + const Correct = ` + width: 1em; + color: ${theme(state.theme, 'success', 'success')}; + `; + + const Incorrect = ` + width: 0.75em; + color: ${theme(state.theme, 'danger', 'danger')}; + `; + + const CorrectIcon = (): string => { + return ``; + }; + + const IncorrectIcon = (): string => { + return ``; + }; + + return correct ? CorrectIcon() : IncorrectIcon(); +} diff --git a/client/src/components/GiftTemplate/templates/Category.ts b/client/src/components/GiftTemplate/templates/Category.ts new file mode 100644 index 0000000..c279b29 --- /dev/null +++ b/client/src/components/GiftTemplate/templates/Category.ts @@ -0,0 +1,14 @@ +import { TemplateOptions, Category as CategoryType } from './types'; +import QuestionContainer from './QuestionContainer'; +import Title from './Title'; + +type CategoryOptions = TemplateOptions & CategoryType; + +export default function Category({ title }: CategoryOptions): string { + return `${QuestionContainer({ + children: Title({ + type: 'Catégorie', + title: title + }) + })}`; +} diff --git a/client/src/components/GiftTemplate/templates/Description.ts b/client/src/components/GiftTemplate/templates/Description.ts new file mode 100644 index 0000000..b5b2767 --- /dev/null +++ b/client/src/components/GiftTemplate/templates/Description.ts @@ -0,0 +1,22 @@ +import { TemplateOptions, Description as DescriptionType } from './types'; +import QuestionContainer from './QuestionContainer'; +import Title from './Title'; +import TextType from './TextType'; +import { ParagraphStyle } from '../constants'; +import { state } from '.'; + +type DescriptionOptions = TemplateOptions & DescriptionType; + +export default function Description({ title, stem }: DescriptionOptions): string { + return `${QuestionContainer({ + children: [ + Title({ + type: 'Description', + title: title + }), + `

${TextType({ + text: stem + })}

` + ] + })}`; +} diff --git a/client/src/components/GiftTemplate/templates/Error.ts b/client/src/components/GiftTemplate/templates/Error.ts new file mode 100644 index 0000000..097c9e7 --- /dev/null +++ b/client/src/components/GiftTemplate/templates/Error.ts @@ -0,0 +1,59 @@ +import { theme, ParagraphStyle } from '../constants'; +import { state } from '.'; + +export default function (text: string): string { + const Container = ` + flex-wrap: wrap; + position: relative; + padding: 1rem 1rem; + margin-bottom: 0.5rem; + background-color: ${theme(state.theme, 'red100', 'redGray800')}; + border: solid ${theme(state.theme, 'red300', 'red700')} 2px; + border-radius: 6px; + box-shadow: 0px 1px 3px ${theme(state.theme, 'gray400', 'black900')}; + `; + + const document = removeBackslash(lineRegex(documentRegex(text))).split(/\r?\n/); + return document[0] !== `` + ? `
${document + .map((i) => `

${i}

`) + .join('')}
` + : ``; +} + +function documentRegex(text: string): string { + const newText = text + .split(/\r?\n/) + .map((comment) => comment.replace(/(^[ \\t]+)?(^)((\/\/))(.*)/gm, '')) + .join(''); + + const newLineAnswer = /([^\\]|[^\S\r\n][^=])(=|~)/g; + const correctAnswer = /([^\\]|^{)(([^\\]|^|\\s*)=(.*)(?=[=~}]|\\n))/g; + const incorrectAnswer = /([^\\]|^{)(([^\\]|^|\\s*)~(.*)(?=[=~}]|\\n))/g; + + return newText + .replace(newLineAnswer, `\n$2`) + .replace(correctAnswer, `$1
  • $4
  • `) + .replace(incorrectAnswer, `$1
  • $4
  • `); +} + +function lineRegex(text: string): string { + return text + .split(/\r?\n/) + .map((category) => + category.replace(/(^[ \\t]+)?(((^|\n)\s*[$]CATEGORY:))(.+)/g, `
    $5
    `) + ) + .map((title) => title.replace(/\s*(::)\s*(.*?)(::)/g, `
    $2
    `)) + .map((openBracket) => openBracket.replace(/([^\\]|^){([#])?/g, `$1
    `)) + .map((closeBracket) => closeBracket.replace(/([^\\]|^)}/g, `$1
    `)) + .join(''); +} + +function removeBackslash(text: string): string { + return text + .split(/\r?\n/) + .map((colon) => colon.replace(/[\\]:/g, ':')) + .map((openBracket) => openBracket.replace(/[\\]{/g, '{')) + .map((closeBracket) => closeBracket.replace(/[\\]}/g, '}')) + .join(''); +} diff --git a/client/src/components/GiftTemplate/templates/Essay.ts b/client/src/components/GiftTemplate/templates/Essay.ts new file mode 100644 index 0000000..8da307f --- /dev/null +++ b/client/src/components/GiftTemplate/templates/Essay.ts @@ -0,0 +1,27 @@ +import { TemplateOptions, Essay as EssayType } from './types'; +import QuestionContainer from './QuestionContainer'; +import Title from './Title'; +import TextType from './TextType'; +import GlobalFeedback from './GlobalFeedback'; +import { ParagraphStyle, TextAreaStyle } from '../constants'; +import { state } from '.'; + +type EssayOptions = TemplateOptions & EssayType; + +export default function Essay({ title, stem, globalFeedback }: EssayOptions): string { + return `${QuestionContainer({ + children: [ + Title({ + type: 'Développement', + title: title + }), + `

    ${TextType({ + text: stem + })}

    `, + ``, + GlobalFeedback({ feedback: globalFeedback }) + ] + })}`; +} diff --git a/client/src/components/GiftTemplate/templates/GlobalFeedback.ts b/client/src/components/GiftTemplate/templates/GlobalFeedback.ts new file mode 100644 index 0000000..8b2dde4 --- /dev/null +++ b/client/src/components/GiftTemplate/templates/GlobalFeedback.ts @@ -0,0 +1,27 @@ +import { TemplateOptions, Question } from './types'; +import TextType from './TextType'; +import { state } from '.'; +import { theme } from '../constants'; + +interface GlobalFeedbackOptions extends TemplateOptions { + feedback: Question['globalFeedback']; +} + +export default function GlobalFeedback({ feedback }: GlobalFeedbackOptions): string { + const Container = ` + position: relative; + margin-top: 1rem; + padding: 0 1rem; + background-color: ${theme(state.theme, 'beige100', 'black400')}; + color: ${theme(state.theme, 'beige900', 'gray200')}; + border: ${theme(state.theme, 'beige300', 'black300')} ${state.theme === 'light' ? 1 : 2}px solid; + border-radius: 6px; + box-shadow: 0px 2px 5px ${theme(state.theme, 'gray400', 'black800')}; +`; + + return feedback !== null + ? `
    +

    ${TextType({ text: feedback })}

    +
    ` + : ``; +} diff --git a/client/src/components/GiftTemplate/templates/Matching.ts b/client/src/components/GiftTemplate/templates/Matching.ts new file mode 100644 index 0000000..507d372 --- /dev/null +++ b/client/src/components/GiftTemplate/templates/Matching.ts @@ -0,0 +1,87 @@ +import { TemplateOptions, Matching as MatchingType } from './types'; +import QuestionContainer from './QuestionContainer'; +import Title from './Title'; +import TextType from './TextType'; +import GlobalFeedback from './GlobalFeedback'; +import { ParagraphStyle, SelectStyle } from '../constants'; +import { state } from '.'; + +type MatchingOptions = TemplateOptions & MatchingType; + +interface MatchAnswerOptions extends TemplateOptions { + choices: MatchingType['matchPairs']; +} + +export default function Matching({ + title, + stem, + matchPairs, + globalFeedback +}: MatchingOptions): string { + return `${QuestionContainer({ + children: [ + Title({ + type: 'Appariement', + title: title + }), + `

    ${TextType({ + text: stem + })}

    `, + MatchAnswers({ choices: matchPairs }), + GlobalFeedback({ feedback: globalFeedback }) + ] + })}`; +} + +function MatchAnswers({ choices }: MatchAnswerOptions): string { + const Layout = ` + display: grid; + grid-template-columns: fit-content(50%) fit-content(50%); + grid-gap: 0.25rem; + align-items: center; + `; + + const Dropdown = ` + padding: 0.375rem 1.75rem 0.375rem 0.75rem; + background-image: url(data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2212%22%20height%3D%2212%22%20viewBox%3D%220%200%2012%2012%22%3E%3Ctitle%3Edown-arrow%3C%2Ftitle%3E%3Cg%20fill%3D%22%23000000%22%3E%3Cpath%20d%3D%22M10.293%2C3.293%2C6%2C7.586%2C1.707%2C3.293A1%2C1%2C0%2C0%2C0%2C.293%2C4.707l5%2C5a1%2C1%2C0%2C0%2C0%2C1.414%2C0l5-5a1%2C1%2C0%2C1%2C0-1.414-1.414Z%22%20fill%3D%22%23${ + state.theme === 'light' ? '000' : 'ccc' + }%22%3E%3C%2Fpath%3E%3C%2Fg%3E%3C%2Fsvg%3E); + background-size: 0.6em; + background-position: calc(100% - 0.5em) center; + background-repeat: no-repeat; + border-radius: 0.25rem; + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; + width: auto; + vertical-align: baseline; +`; + + const OptionTable = ` + padding-right: 1rem; + `; + + const uniqueMatchOptions = Array.from(new Set(choices.map(({ subanswer }) => subanswer))); + + const result = choices + .map(({ subquestion }) => { + return ` +
    + ${TextType({ text: subquestion })} +
    +
    + +
    + `; + }) + .join(''); + + return ` +
    + ${result} +
    + `; +} diff --git a/client/src/components/GiftTemplate/templates/MultipleChoice.ts b/client/src/components/GiftTemplate/templates/MultipleChoice.ts new file mode 100644 index 0000000..23f2ba6 --- /dev/null +++ b/client/src/components/GiftTemplate/templates/MultipleChoice.ts @@ -0,0 +1,31 @@ +import { TemplateOptions, MultipleChoice as MultipleChoiceType } from './types'; +import QuestionContainer from './QuestionContainer'; +import GlobalFeedback from './GlobalFeedback'; +import Title from './Title'; +import TextType from './TextType'; +import MultipleChoiceAnswers from './MultipleChoiceAnswers'; +import { ParagraphStyle } from '../constants'; +import { state } from '.'; + +type MultipleChoiceOptions = TemplateOptions & MultipleChoiceType; + +export default function MultipleChoice({ + title, + stem, + choices, + globalFeedback +}: MultipleChoiceOptions): string { + return `${QuestionContainer({ + children: [ + Title({ + type: 'Choix multiple', + title: title + }), + `

    ${TextType({ + text: stem + })}

    `, + MultipleChoiceAnswers({ choices: choices }), + GlobalFeedback({ feedback: globalFeedback }) + ] + })}`; +} diff --git a/client/src/components/GiftTemplate/templates/MultipleChoiceAnswers.ts b/client/src/components/GiftTemplate/templates/MultipleChoiceAnswers.ts new file mode 100644 index 0000000..9adf520 --- /dev/null +++ b/client/src/components/GiftTemplate/templates/MultipleChoiceAnswers.ts @@ -0,0 +1,89 @@ +import { nanoid } from 'nanoid'; +import { TemplateOptions, TextFormat, Choice, MultipleChoice as MultipleChoiceType } from './types'; +import TextType from './TextType'; +import AnswerIcon from './AnswerIcon'; +import { state } from '.'; +import { ParagraphStyle, theme } from '../constants'; + +type MultipleChoiceAnswerOptions = TemplateOptions & Pick; + +type AnswerFeedbackOptions = TemplateOptions & Pick; + +interface AnswerWeightOptions extends TemplateOptions { + weight: Choice['weight']; + correct: Choice['isCorrect']; +} + +export default function MultipleChoiceAnswers({ choices }: MultipleChoiceAnswerOptions) { + const id = `id${nanoid(8)}`; + + const isMultipleAnswer = choices.filter(({ isCorrect }) => isCorrect === true).length === 0; + + const prompt = `Choisir une réponse${ + isMultipleAnswer ? ` ou plusieurs` : `` + }:`; + const result = choices + .map(({ weight, isCorrect, text, feedback }) => { + const CustomLabel = ` + display: inline-block; + padding: 0.2em 0 0.2em 0; + `; + + const inputId = `id${nanoid(6)}`; + + const isPositiveWeight = weight !== null && weight > 0; + const isCorrectOption = isMultipleAnswer ? isPositiveWeight : isCorrect; + + return ` +
    + + ${AnswerWeight({ correct: isCorrectOption, weight: weight })} + + ${AnswerIcon({ correct: isCorrectOption })} + ${AnswerFeedback({ feedback: feedback })} + +
    + `; + }) + .join(''); + + return `${prompt}${result}`; +} + +function AnswerWeight({ weight, correct }: AnswerWeightOptions): string { + const Container = ` + box-shadow: 0px 1px 1px ${theme(state.theme, 'gray400', 'black900')}; + border-radius: 3px; + padding-left: 0.2rem; + padding-right: 0.2rem; + padding-top: 0.05rem; + padding-bottom: 0.05rem; + `; + + const CorrectWeight = ` + color: ${theme(state.theme, 'green700', 'green100')}; + background-color: ${theme(state.theme, 'green100', 'greenGray700')}; + `; + const IncorrectWeight = ` + color: ${theme(state.theme, 'beige600', 'beige100')}; + background-color: ${theme(state.theme, 'beige300', 'beigeGray800')}; + `; + + return weight + ? `${weight}%` + : ``; +} + +function AnswerFeedback({ feedback }: AnswerFeedbackOptions): string { + const Container = ` + color: ${theme(state.theme, 'teal700', 'gray700')}; + `; + + return feedback ? `${TextType({ text: feedback })}` : ``; +} diff --git a/client/src/components/GiftTemplate/templates/Numerical.ts b/client/src/components/GiftTemplate/templates/Numerical.ts new file mode 100644 index 0000000..3cbfc1d --- /dev/null +++ b/client/src/components/GiftTemplate/templates/Numerical.ts @@ -0,0 +1,60 @@ +import { TemplateOptions, Numerical as NumericalType, NumericalFormat } from './types'; +import QuestionContainer from './QuestionContainer'; +import Title from './Title'; +import TextType from './TextType'; +import GlobalFeedback from './GlobalFeedback'; +import { ParagraphStyle, InputStyle } from '../constants'; +import { state } from '.'; + +type NumericalOptions = TemplateOptions & NumericalType; +type NumericalAnswerOptions = TemplateOptions & Pick; + +export default function Numerical({ + title, + stem, + choices, + globalFeedback +}: NumericalOptions): string { + return `${QuestionContainer({ + children: [ + Title({ + type: 'Numérique', + title: title + }), + `

    ${TextType({ + text: stem + })}

    `, + NumericalAnswers({ choices: choices }), + GlobalFeedback({ feedback: globalFeedback }) + ] + })}`; +} + +function NumericalAnswers({ choices }: NumericalAnswerOptions): string { + const placeholder = Array.isArray(choices) + ? choices.map(({ text }) => Answer(text)).join(', ') + : Answer(choices); + + return ` +
    + Réponse: +
    + `; +} + +function Answer({ type, number, range, numberLow, numberHigh }: NumericalFormat): string { + switch (type) { + case 'simple': + return `${number}`; + case 'range': + return `${number} ± ${range}`; + case 'high-low': + return `${numberLow} - ${numberHigh}`; + default: + return ``; + } +} diff --git a/client/src/components/GiftTemplate/templates/QuestionContainer.ts b/client/src/components/GiftTemplate/templates/QuestionContainer.ts new file mode 100644 index 0000000..596984b --- /dev/null +++ b/client/src/components/GiftTemplate/templates/QuestionContainer.ts @@ -0,0 +1,20 @@ +import { TemplateOptions } from './types'; +import { state } from './index'; +import { theme } from '../constants'; + +export default function QuestionContainer({ children }: TemplateOptions): string { + const Container = ` + flex-wrap: wrap; + position: relative; + padding: 1rem 1rem; + margin-bottom: 0.5rem; + background-color: ${theme(state.theme, 'white', 'black600')}; + border: solid ${theme(state.theme, 'white', 'black500')} 2px; + border-radius: 6px; + box-shadow: 0px 1px 3px ${theme(state.theme, 'gray400', 'black900')}; +`; + + return `
    ${ + Array.isArray(children) ? children.join('') : children + }
    `; +} diff --git a/client/src/components/GiftTemplate/templates/ShortAnswer.ts b/client/src/components/GiftTemplate/templates/ShortAnswer.ts new file mode 100644 index 0000000..6e36bb1 --- /dev/null +++ b/client/src/components/GiftTemplate/templates/ShortAnswer.ts @@ -0,0 +1,46 @@ +import { TemplateOptions, ShortAnswer as ShortAnswerType, TextFormat } from './types'; +import QuestionContainer from './QuestionContainer'; +import Title from './Title'; +import TextType from './TextType'; +import GlobalFeedback from './GlobalFeedback'; +import { ParagraphStyle, InputStyle } from '../constants'; +import { state } from './index'; + +type ShortAnswerOptions = TemplateOptions & ShortAnswerType; +type AnswerOptions = TemplateOptions & Pick; + +export default function ShortAnswer({ + title, + stem, + choices, + globalFeedback +}: ShortAnswerOptions): string { + return `${QuestionContainer({ + children: [ + Title({ + type: 'Réponse courte', + title: title + }), + `

    ${TextType({ + text: stem + })}

    `, + Answers({ choices: choices }), + GlobalFeedback({ feedback: globalFeedback }) + ] + })}`; +} + +function Answers({ choices }: AnswerOptions): string { + const placeholder = choices + .map(({ text }) => TextType({ text: text as TextFormat })) + .join(', '); + return ` +
    + Réponse: +
    + `; +} diff --git a/client/src/components/GiftTemplate/templates/TextType.ts b/client/src/components/GiftTemplate/templates/TextType.ts new file mode 100644 index 0000000..bf9a3a3 --- /dev/null +++ b/client/src/components/GiftTemplate/templates/TextType.ts @@ -0,0 +1,46 @@ +import { marked } from 'marked'; +import katex from 'katex'; +import { TemplateOptions, TextFormat } from './types'; + +interface TextTypeOptions extends TemplateOptions { + text: TextFormat; +} + +function formatLatex(text: string): string { + return text + .replace(/\$\$(.*?)\$\$/g, (_, inner) => katex.renderToString(inner, { displayMode: true })) + .replace(/\\\[(.*?)\\\]/g, (_, inner) => katex.renderToString(inner, { displayMode: true })) + .replace(/\\\((.*?)\\\)/g, (_, inner) => + katex.renderToString(inner, { displayMode: false }) + ); +} + +function escapeHTML(text: string) { + return text + .replace(/&/g, '&') + .replace(//g, '>') + .replace(/"/g, '"') + .replace(/'/g, '''); +} + +export default function TextType({ text }: TextTypeOptions): string { + const formatText = formatLatex(escapeHTML(text.text.trim())); + + switch (text.format) { + case 'moodle': + case 'plain': + return formatText.replace(/(?:\r\n|\r|\n)/g, '
    '); + case 'html': + return formatText.replace(/(^

    )(.*?)(<\/p>)$/gm, '$2'); + case 'markdown': + return ( + marked + .parse(formatText, { breaks: true }) // call marked.parse instead of marked + // Strip outer paragraph tags + .replace(/(^

    )(.*?)(<\/p>)$/gm, '$2') + ); + default: + return ``; + } +} diff --git a/client/src/components/GiftTemplate/templates/Title.ts b/client/src/components/GiftTemplate/templates/Title.ts new file mode 100644 index 0000000..50eea98 --- /dev/null +++ b/client/src/components/GiftTemplate/templates/Title.ts @@ -0,0 +1,56 @@ +import { TemplateOptions, Question } from './types'; +import { state } from '.'; +import { theme } from '../constants'; + +// Type is string to allow for custom question type text (e,g, "Multiple Choice") +interface TitleOptions extends TemplateOptions { + type: string; + title: Question['title']; +} + +export default function Title({ type, title }: TitleOptions): string { + const Container = ` + display: flex; + font-weight: bold; +`; + + const QuestionTitle = ` + color: ${theme(state.theme, 'blue', 'gray200')}; + `; + + const OptionalTitle = ` + color: ${theme(state.theme, 'blue', 'gray900')}; +`; + + const QuestionTypeContainer = ` + margin-left: auto; + padding-left: 0.75rem; + flex: none; +`; + + const QuestionType = ` + box-shadow: 0px 1px 3px ${theme(state.theme, 'gray400', 'black700')}; + padding-left: 0.7rem; + padding-right: 0.7rem; + padding-top: 0.4rem; + padding-bottom: 0.4rem; + border-radius: 4px; + background-color: ${theme(state.theme, 'white', 'black400')}; + color: ${theme(state.theme, 'teal700', 'gray300')}; +`; + + return ` +

    + + ${ + title !== null + ? `${title}` + : `Titre optionnel...` + } + + + ${type} + +
    +`; +} diff --git a/client/src/components/GiftTemplate/templates/TrueFalse.ts b/client/src/components/GiftTemplate/templates/TrueFalse.ts new file mode 100644 index 0000000..378976a --- /dev/null +++ b/client/src/components/GiftTemplate/templates/TrueFalse.ts @@ -0,0 +1,54 @@ +import { TemplateOptions, TextChoice, TrueFalse as TrueFalseType } from './types'; +import QuestionContainer from './QuestionContainer'; +import TextType from './TextType'; +import GlobalFeedback from './GlobalFeedback'; +import MultipleChoiceAnswers from './MultipleChoiceAnswers'; +import Title from './Title'; +import { ParagraphStyle } from '../constants'; +import { state } from '.'; + +type TrueFalseOptions = TemplateOptions & TrueFalseType; + +export default function TrueFalse({ + title, + isTrue, + stem, + correctFeedback, + incorrectFeedback, + globalFeedback +}: TrueFalseOptions): string { + const choices: TextChoice[] = [ + { + text: { + format: 'moodle', + text: 'Vrai' + }, + isCorrect: isTrue, + weight: null, + feedback: isTrue ? correctFeedback : incorrectFeedback + }, + { + text: { + format: 'moodle', + text: 'Faux' + }, + isCorrect: !isTrue, + weight: null, + feedback: !isTrue ? correctFeedback : incorrectFeedback + } + ]; + + return `${QuestionContainer({ + children: [ + Title({ + type: 'Vrai/Faux', + title: title + }), + `

    ${TextType({ + text: stem + })}

    `, + MultipleChoiceAnswers({ choices: choices }), + GlobalFeedback({ feedback: globalFeedback }) + ] + })}`; +} diff --git a/client/src/components/GiftTemplate/templates/index.ts b/client/src/components/GiftTemplate/templates/index.ts new file mode 100644 index 0000000..bc688f1 --- /dev/null +++ b/client/src/components/GiftTemplate/templates/index.ts @@ -0,0 +1,75 @@ +import Category from './Category'; +import Description from './Description'; +import Essay from './Essay'; +import Matching from './Matching'; +import MultipleChoice from './MultipleChoice'; +import Numerical from './Numerical'; +import ShortAnswer from './ShortAnswer'; +import TrueFalse from './TrueFalse'; +import Error from './Error'; +import { + GIFTQuestion, + Category as CategoryType, + Description as DescriptionType, + MultipleChoice as MultipleChoiceType, + Numerical as NumericalType, + ShortAnswer as ShortAnswerType, + Essay as EssayType, + TrueFalse as TrueFalseType, + Matching as MatchingType, + DisplayOptions +} from './types'; + +export const state: DisplayOptions = { preview: true, theme: 'light' }; + +export default function Template( + { type, ...keys }: GIFTQuestion, + options?: Partial +): string { + Object.assign(state, options); + + switch (type) { + case 'Category': + return Category({ ...(keys as CategoryType) }); + case 'Description': + return Description({ + ...(keys as DescriptionType) + }); + case 'MC': + return MultipleChoice({ + ...(keys as MultipleChoiceType) + }); + case 'Numerical': + return Numerical({ ...(keys as NumericalType) }); + case 'Short': + return ShortAnswer({ + ...(keys as ShortAnswerType) + }); + case 'Essay': + return Essay({ ...(keys as EssayType) }); + case 'TF': + return TrueFalse({ ...(keys as TrueFalseType) }); + case 'Matching': + return Matching({ ...(keys as MatchingType) }); + default: + return ``; + } +} + +export function ErrorTemplate(text: string, options?: Partial): string { + Object.assign(state, options); + + return Error(text); +} + +export { + Category, + Description, + Essay, + Matching, + MultipleChoice, + Numerical, + ShortAnswer, + TrueFalse, + Error +}; diff --git a/client/src/components/GiftTemplate/templates/types.d.ts b/client/src/components/GiftTemplate/templates/types.d.ts new file mode 100644 index 0000000..03d5cbd --- /dev/null +++ b/client/src/components/GiftTemplate/templates/types.d.ts @@ -0,0 +1,120 @@ +export type Template = (options: TemplateOptions) => string; + +export interface TemplateOptions { + children?: Template | string | Array