From bae706635ba0c1bf92b708c8b0917c6328d509f8 Mon Sep 17 00:00:00 2001 From: Michael Weimann Date: Thu, 7 Nov 2024 16:47:58 +0100 Subject: [PATCH 01/15] Migrate to vite and vitest Signed-off-by: Michael Weimann --- .eslintrc.js => .eslintrc.mjs | 6 +- README.md | 2 +- e2e/package.json | 4 +- e2e/src/scheduleBreakoutSessions.spec.ts | 2 +- e2e/src/scheduleMeeting.spec.ts | 2 +- matrix-meetings-bot/package.json | 45 +- matrix-meetings-bot/setupJest.js | 2 - .../src/client/MeetingClient.ts | 2 +- .../src/client/WidgetClient.ts | 2 +- .../src/service/WidgetLayoutService.ts | 2 +- .../src/util/extractOxRrule.ts | 2 +- .../src/util/migrateMeetingTime.test.ts | 2 +- matrix-meetings-bot/test/ArrayOps.test.ts | 1 + .../test/MeetingService.test.ts | 2 +- matrix-meetings-widget/craco.config.js | 61 - matrix-meetings-widget/index.html | 37 + matrix-meetings-widget/package.json | 65 +- matrix-meetings-widget/public/index.html | 34 - matrix-meetings-widget/src/App.test.tsx | 1 + .../CockpitPanel/CockpitPanel.test.tsx | 23 +- .../ConfirmDeleteDialog.test.tsx | 13 +- .../CopyableTextButton.test.tsx | 5 +- .../DateTimePickers/ButtonDatePicker.test.tsx | 5 +- .../CalendarDayPicker.test.tsx | 9 +- .../CalendarMonthPicker.test.tsx | 9 +- .../CalendarWeekPicker.test.tsx | 9 +- .../CalendarWorkWeekPicker.test.tsx | 9 +- .../DateTimePickers/DateRangePicker.test.tsx | 9 +- .../DateTimePickers/EndDatePicker.test.tsx | 9 +- .../DateTimePickers/EndTimePicker.test.tsx | 9 +- .../DateTimePickers/StartDatePicker.test.tsx | 9 +- .../DateTimePickers/StartTimePicker.test.tsx | 9 +- .../common/DateTimePickers/index.ts | 10 +- .../useDatePickersState.test.tsx | 7 +- .../HeadingDivider/HeadingDivider.test.tsx | 7 +- .../ListEmptyState/ListEmptyState.test.tsx | 5 +- .../MeetingNotEndedGuard.test.tsx | 13 +- .../common/MenuButton/MenuButton.test.tsx | 9 +- .../OpenXchangeMenuButtonItem.test.tsx | 7 +- .../OpenXchangeMenuButtonItem/index.ts | 2 +- .../common/TimeDistance/TimeDistance.test.tsx | 21 +- .../TimeDistance/getTimeDistanceState.test.ts | 1 + .../common/hooks/useUpdateOnDate.test.tsx | 9 +- .../withCurrentRoomMeeting.test.tsx | 9 +- .../InvitedMeetingCard.test.tsx | 17 +- .../InvitedMeetingsList.test.tsx | 19 +- .../meetings/MeetingCard/MeetingCard.test.tsx | 29 +- ...MeetingHasBreakoutSessionsWarning.test.tsx | 5 +- .../ScheduledDeletionWarning.test.tsx | 11 +- .../MeetingCard/TooltipToggleButton.test.tsx | 9 +- ...eetingCardEditParticipantsContent.test.tsx | 23 +- .../CopyableText.test.tsx | 5 +- .../MeetingCardShareMeetingContent.test.tsx | 17 +- .../ShareDialog.test.tsx | 7 +- .../useDownloadIcsFile.test.tsx | 35 +- .../useDownloadIcsFile.ts | 2 +- .../useMeetingEmail.test.tsx | 13 +- .../useMeetingUrl.test.tsx | 13 +- .../MeetingDetailsContent.test.tsx | 15 +- .../MeetingDetailsParticipants.test.tsx | 15 +- .../MeetingDetailsShare.test.tsx | 17 +- .../MeetingDetailsShare/ShareDialog.test.tsx | 7 +- .../DeleteMeetingDialog.test.tsx | 7 +- .../DeleteMeetingDialog.tsx | 2 +- .../MeetingDetailsHeader.test.tsx | 23 +- .../MeetingDetailsJoinButton.test.tsx | 19 +- .../OpenXchangeButton.test.tsx | 7 +- .../OpenXchangeButton/index.ts | 2 +- .../MeetingsCalendar.test.tsx | 36 +- .../MeetingsCalendar/MeetingsCalendar.tsx | 2 +- .../MeetingsCalendarDetailsDialog.test.tsx | 27 +- .../MeetingsCalendarEvent.test.tsx | 3 +- .../MeetingsFilter/MeetingsFilter.test.tsx | 19 +- .../MeetingsFilter/MeetingsFilter.tsx | 2 +- .../MeetingsList/MeetingsList.test.tsx | 19 +- .../SectionHeadingDivider.test.tsx | 5 +- .../MeetingsNavigation.test.tsx | 33 +- .../BreakoutSessionsMessageForm.test.tsx | 5 +- .../MeetingsPanel/CreateMeetingForm.test.tsx | 5 +- .../MeetingsPanel/MeetingsPanel.test.tsx | 52 +- .../MeetingsToolbar/MeetingsToolbar.test.tsx | 39 +- .../MeetingsToolbarButtons.test.tsx | 31 +- .../MeetingsToolbarSearch.test.tsx | 15 +- .../MeetingsToolbar/moveFilterRange.test.ts | 23 +- .../MemberSelectionDropdown.test.tsx | 27 +- .../OpenMeetingRoomButton.test.tsx | 19 +- .../CustomRecurringMeeting.test.tsx | 37 +- .../CustomWeeklyRecurringMeeting.tsx | 2 +- .../RecurrenceEditor.test.tsx | 17 +- .../RecurringMeetingEnd.test.tsx | 13 +- .../meetings/RecurrenceEditor/state.ts | 2 +- .../ScheduleMeeting.test.tsx | 35 +- .../ScheduleMeetingModal.test.tsx | 7 +- .../getMessagingPowerLevel.test.ts | 11 +- .../meetings/ScheduleMeetingModal/index.ts | 2 +- .../useUserSearchResults.ts | 2 +- .../BreakoutSessionGroupForm.test.tsx | 13 +- .../BreakoutSessionGroupsForm.test.tsx | 15 +- .../helpers.test.tsx | 5 +- .../BreakoutSessionGroupsForm/helpers.ts | 2 +- .../BreakoutSessionGroupsForm/state.test.tsx | 10 +- .../SetupBreakoutSessions.test.tsx | 39 +- .../SetupBreakoutSessionsModal.test.tsx | 7 +- .../WidgetsSelectionDropdown.test.tsx | 27 +- matrix-meetings-widget/src/i18n.ts | 24 +- matrix-meetings-widget/src/index.tsx | 8 +- matrix-meetings-widget/src/lib/locale.test.ts | 1 + .../model/nordeckMeetingMetadataEvent.test.ts | 1 + .../lib/matrix/model/reactionEvent.test.ts | 1 + .../lib/matrix/model/roomCreateEvent.test.ts | 1 + .../lib/matrix/model/roomNameEvent.test.ts | 1 + .../matrix/model/roomTombstoneEvent.test.ts | 1 + .../lib/matrix/model/roomTopicEvent.test.ts | 1 + .../lib/matrix/model/spaceChildEvent.test.ts | 1 + .../lib/matrix/model/spaceParentEvent.test.ts | 1 + .../src/lib/matrix/model/validation.test.ts | 1 + .../src/lib/matrix/model/widgetsEvent.test.ts | 1 + .../src/lib/utils/generateFilterRange.test.ts | 1 + .../src/lib/utils/getBotUserId.test.ts | 11 +- .../lib/utils/getInitialMeetingTimes.test.ts | 43 +- .../src/lib/utils/getWeekdayShift.test.ts | 1 + .../src/lib/utils/localeWeekdays.test.ts | 1 + .../lib/utils/meetingDateTimeUtils.test.ts | 1 + .../meetingBotApi/meetingBotApi.test.ts | 1 + .../src/reducer/meetingsApi/helpers.test.ts | 3 +- .../src/reducer/meetingsApi/helpers.ts | 2 +- .../src/reducer/meetingsApi/index.ts | 2 +- .../reducer/meetingsApi/meetingsApi.test.ts | 11 +- .../src/reducer/meetingsApi/meetingsApi.ts | 2 +- .../selectors/selectInvitedMeeting.ts | 2 +- .../meetingsApi/selectors/selectMeeting.ts | 2 +- .../selectors/selectRoomPermissions.test.ts | 23 +- matrix-meetings-widget/src/setupTests.ts | 76 +- .../src/store/StoreProvider.test.tsx | 9 +- .../store/acceptMeetingInvitations.test.ts | 1 + matrix-meetings-widget/src/store/index.ts | 2 +- matrix-meetings-widget/src/vitest.d.ts | 27 + matrix-meetings-widget/tsconfig.json | 13 +- matrix-meetings-widget/tsconfig.node.json | 24 + matrix-meetings-widget/vite.config.ts | 68 + matrix-meetings-widget/vitest.config.ts | 37 + package.json | 2 + packages/calendar/package.json | 27 +- packages/calendar/src/index.ts | 1 - .../calendar/src/testing/timezoneMockUtils.ts | 15 +- .../calendarUtils/extractCalendarChange.ts | 2 +- .../src/utils/calendarUtils/getCalendarEnd.ts | 2 +- packages/calendar/src/utils/format.ts | 2 +- packages/calendar/tsconfig.json | 4 +- packages/calendar/vite.config.ts | 41 + tsconfig.json | 27 +- vitest.workspace.ts | 18 + yarn.lock | 2650 ++++++++++++++--- 153 files changed, 3397 insertions(+), 1228 deletions(-) rename .eslintrc.js => .eslintrc.mjs (94%) delete mode 100644 matrix-meetings-bot/setupJest.js delete mode 100644 matrix-meetings-widget/craco.config.js create mode 100644 matrix-meetings-widget/index.html delete mode 100644 matrix-meetings-widget/public/index.html create mode 100644 matrix-meetings-widget/src/vitest.d.ts create mode 100644 matrix-meetings-widget/tsconfig.node.json create mode 100644 matrix-meetings-widget/vite.config.ts create mode 100644 matrix-meetings-widget/vitest.config.ts create mode 100644 packages/calendar/vite.config.ts create mode 100644 vitest.workspace.ts diff --git a/.eslintrc.js b/.eslintrc.mjs similarity index 94% rename from .eslintrc.js rename to .eslintrc.mjs index b8d51671..1877bb5f 100644 --- a/.eslintrc.js +++ b/.eslintrc.mjs @@ -14,9 +14,11 @@ * limitations under the License. */ -const path = require('path'); +import path from 'path'; -module.exports = { +const __dirname = path.dirname(__filename); + +export default { plugins: ['promise', 'notice'], extends: [ 'react-app', diff --git a/README.md b/README.md index e3a7b427..577ea653 100644 --- a/README.md +++ b/README.md @@ -69,7 +69,7 @@ Once running, you can visit the widget URL (`http(s)://localhost:3000/`) and fol In the project directory, you can run: - `yarn dev`: Start the widget for development. -- `yarn start`: Start the widget for development with a self-signed HTTPS certificate. +- `yarn dev:https`: Start the widget for development with a self-signed HTTPS certificate. - `yarn build`: Run the build step in all projects. - `yarn test`: Watch all files for changes and run tests of the widget. - `yarn lint`: Run eslint in all projects. diff --git a/e2e/package.json b/e2e/package.json index 187993bb..a7f712d0 100644 --- a/e2e/package.json +++ b/e2e/package.json @@ -9,11 +9,11 @@ "devDependencies": { "@axe-core/playwright": "^4.9.1", "@playwright/test": "^1.44.0", - "@types/lodash": "^4.17.4", + "@types/lodash-es": "^4.17.12", "@types/node": "^20.4.6", "eslint": "^8.57.0", "eslint-plugin-playwright": "^1.6.1", - "lodash": "^4.17.21", + "lodash-es": "^4.17.21", "testcontainers": "^10.9.0", "typescript": "^5.4.5" }, diff --git a/e2e/src/scheduleBreakoutSessions.spec.ts b/e2e/src/scheduleBreakoutSessions.spec.ts index ecc3eec1..1118885f 100644 --- a/e2e/src/scheduleBreakoutSessions.spec.ts +++ b/e2e/src/scheduleBreakoutSessions.spec.ts @@ -15,7 +15,7 @@ */ import { expect } from '@playwright/test'; -import { repeat } from 'lodash'; +import { repeat } from 'lodash-es'; import { test } from './fixtures'; test.describe('Schedule Breakout Sessions', () => { diff --git a/e2e/src/scheduleMeeting.spec.ts b/e2e/src/scheduleMeeting.spec.ts index a49e7336..61adf0ca 100644 --- a/e2e/src/scheduleMeeting.spec.ts +++ b/e2e/src/scheduleMeeting.spec.ts @@ -15,7 +15,7 @@ */ import { expect } from '@playwright/test'; -import { repeat } from 'lodash'; +import { repeat } from 'lodash-es'; import { test } from './fixtures'; test.describe('Schedule Meeting', () => { diff --git a/matrix-meetings-bot/package.json b/matrix-meetings-bot/package.json index c6474a5d..d44d01e5 100644 --- a/matrix-meetings-bot/package.json +++ b/matrix-meetings-bot/package.json @@ -37,6 +37,7 @@ "@nestjs/microservices": "^10.3.9", "@nestjs/platform-express": "^10.4.6", "@nestjs/swagger": "^7.3.1", + "@nordeck/matrix-meetings-calendar": "1.0.0", "@supercharge/promise-pool": "^3.2.0", "base64url": "^3.0.1", "class-transformer": "^0.5.1", @@ -47,10 +48,9 @@ "i18next-fs-backend": "^2.3.1", "i18next-http-middleware": "^3.6.0", "joi": "^17.13.3", - "lodash": "^4.17.20", + "lodash-es": "^4.17.21", "luxon": "^3.3.0", "matrix-bot-sdk": "npm:@nordeck/matrix-bot-sdk@0.7.1-crypto.beta.12", - "@nordeck/matrix-meetings-calendar": "1.0.0", "mime-types": "^2.1.35", "mustache": "^4.2.0", "nestjs-pino": "^4.1.0", @@ -64,8 +64,8 @@ }, "devDependencies": { "@nestjs/cli": "^10.1.14", - "@types/jest": "^27.5.2", - "@types/lodash": "^4.17.4", + "@types/jest": "^29.5.14", + "@types/lodash-es": "^4.17.12", "@types/luxon": "^3.2.0", "@types/mime-types": "^2.1.4", "@types/mustache": "^4.2.5", @@ -76,45 +76,10 @@ "dotenv-cli": "^7.4.2", "eslint": "^8.57.0", "i18next-parser": "^8.13.0", - "jest": "^27.4.3", - "jest-fetch-mock": "^3.0.3", - "ts-jest": "^27.1.5", + "jest": "^29.7.0", "ts-mockito": "^2.6.1", "typescript": "^5.4.5" }, - "jest": { - "testEnvironment": "node", - "automock": false, - "resetMocks": true, - "setupFiles": [ - "./setupJest.js" - ], - "preset": "ts-jest", - "verbose": true, - "transform": { - "^.+\\.(ts|tsx)$": "ts-jest" - }, - "moduleDirectories": [ - "lib", - "node_modules" - ], - "testRegex": "(/__tests__/.*|\\.(test|spec))\\.(ts|tsx|js)$", - "moduleFileExtensions": [ - "ts", - "tsx", - "js" - ], - "setupFilesAfterEnv": [ - "/setupTests.ts" - ], - "roots": [ - "/src", - "/test" - ], - "moduleNameMapper": { - "matrix-meetings-(.*)": "/../packages/$1/src/index.ts" - } - }, "files": [ "test/*", "lib/*", diff --git a/matrix-meetings-bot/setupJest.js b/matrix-meetings-bot/setupJest.js deleted file mode 100644 index b9ee9938..00000000 --- a/matrix-meetings-bot/setupJest.js +++ /dev/null @@ -1,2 +0,0 @@ -require('jest-fetch-mock').enableMocks(); -fetchMock.dontMock(); diff --git a/matrix-meetings-bot/src/client/MeetingClient.ts b/matrix-meetings-bot/src/client/MeetingClient.ts index 6315a15a..52cdc1fa 100644 --- a/matrix-meetings-bot/src/client/MeetingClient.ts +++ b/matrix-meetings-bot/src/client/MeetingClient.ts @@ -15,7 +15,7 @@ */ import { Injectable, Logger } from '@nestjs/common'; -import * as _ from 'lodash'; +import * as _ from 'lodash-es'; import { MatrixClient, PowerLevelsEventContent, diff --git a/matrix-meetings-bot/src/client/WidgetClient.ts b/matrix-meetings-bot/src/client/WidgetClient.ts index 58c2b0d6..a3b541e3 100644 --- a/matrix-meetings-bot/src/client/WidgetClient.ts +++ b/matrix-meetings-bot/src/client/WidgetClient.ts @@ -16,7 +16,7 @@ import { Inject, Injectable } from '@nestjs/common'; import fs from 'fs'; -import * as _ from 'lodash'; +import * as _ from 'lodash-es'; import { MatrixClient } from 'matrix-bot-sdk'; import mime from 'mime-types'; import path from 'path'; diff --git a/matrix-meetings-bot/src/service/WidgetLayoutService.ts b/matrix-meetings-bot/src/service/WidgetLayoutService.ts index 3c6ec7a1..cbea05ff 100644 --- a/matrix-meetings-bot/src/service/WidgetLayoutService.ts +++ b/matrix-meetings-bot/src/service/WidgetLayoutService.ts @@ -15,7 +15,7 @@ */ import { Inject, Injectable, Logger } from '@nestjs/common'; -import _ from 'lodash'; +import _ from 'lodash-es'; import { ModuleProviderToken } from '../ModuleProviderToken'; import { WidgetLayoutConfig, diff --git a/matrix-meetings-bot/src/util/extractOxRrule.ts b/matrix-meetings-bot/src/util/extractOxRrule.ts index ac5472c4..ccdc0611 100644 --- a/matrix-meetings-bot/src/util/extractOxRrule.ts +++ b/matrix-meetings-bot/src/util/extractOxRrule.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { first } from 'lodash'; +import { first } from 'lodash-es'; import { MeetingCreateDto } from '../dto/MeetingCreateDto'; import { MeetingUpdateDetailsDto } from '../dto/MeetingUpdateDetailsDto'; import { extractOpenXChangeExternalReference } from '../model/ExternalData'; diff --git a/matrix-meetings-bot/src/util/migrateMeetingTime.test.ts b/matrix-meetings-bot/src/util/migrateMeetingTime.test.ts index c63614b3..23b6075d 100644 --- a/matrix-meetings-bot/src/util/migrateMeetingTime.test.ts +++ b/matrix-meetings-bot/src/util/migrateMeetingTime.test.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { mockCalendarEntry } from '@nordeck/matrix-meetings-calendar'; +import { mockCalendarEntry } from '@nordeck/matrix-meetings-calendar/src/testing/testUtils'; import { migrateMeetingTime } from './migrateMeetingTime'; describe('migrateMeetingTime', () => { diff --git a/matrix-meetings-bot/test/ArrayOps.test.ts b/matrix-meetings-bot/test/ArrayOps.test.ts index a80791a2..17054363 100644 --- a/matrix-meetings-bot/test/ArrayOps.test.ts +++ b/matrix-meetings-bot/test/ArrayOps.test.ts @@ -15,6 +15,7 @@ */ import { ArrayOps } from '../src/ArrayOps'; +import {describe, test, expect} from 'vitest'; describe('ArrayOps suite', () => { const arr = [1, 2, 3, 4, 5]; diff --git a/matrix-meetings-bot/test/MeetingService.test.ts b/matrix-meetings-bot/test/MeetingService.test.ts index 2f34423a..063a41de 100644 --- a/matrix-meetings-bot/test/MeetingService.test.ts +++ b/matrix-meetings-bot/test/MeetingService.test.ts @@ -15,7 +15,7 @@ */ import fetch from 'jest-fetch-mock'; -import _, { last } from 'lodash'; +import _, { last } from 'lodash-es'; import { MatrixClient, PowerLevelsEventContent, diff --git a/matrix-meetings-widget/craco.config.js b/matrix-meetings-widget/craco.config.js deleted file mode 100644 index df954aa3..00000000 --- a/matrix-meetings-widget/craco.config.js +++ /dev/null @@ -1,61 +0,0 @@ -/* - * Copyright 2023 Nordeck IT + Consulting GmbH - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -module.exports = { - plugins: [ - { plugin: require('./scripts/craco/ignoreRRuleWarnings') }, - { plugin: importLocalPackages() }, - ], - - webpack: { - configure: { - resolve: { - fallback: { - // imported by ical-generator but not needed in the browser environment - fs: false, - }, - }, - }, - }, -}; - -/** - * Craco plugin for using local packages from the same mono repository. - */ -function importLocalPackages() { - const path = require('path'); - const { getLoader, loaderByName } = require('@craco/craco'); - const absolutePath = path.join(__dirname, '../packages'); - - function overrideWebpackConfig({ webpackConfig }) { - const { isFound, match } = getLoader( - webpackConfig, - loaderByName('babel-loader'), - ); - if (isFound) { - const include = Array.isArray(match.loader.include) - ? match.loader.include - : [match.loader.include]; - - match.loader.include = include.concat(absolutePath); - } - return webpackConfig; - } - - return { - overrideWebpackConfig, - }; -} diff --git a/matrix-meetings-widget/index.html b/matrix-meetings-widget/index.html new file mode 100644 index 00000000..aa9d64f7 --- /dev/null +++ b/matrix-meetings-widget/index.html @@ -0,0 +1,37 @@ + + + + + + + + + + + NeoDateFix Widget + + + + + + + + + + +
+ + + diff --git a/matrix-meetings-widget/package.json b/matrix-meetings-widget/package.json index 3daa398e..49e7391e 100644 --- a/matrix-meetings-widget/package.json +++ b/matrix-meetings-widget/package.json @@ -5,36 +5,37 @@ "license": "Apache-2.0", "version": "1.6.1", "private": true, + "type": "module", "dependencies": { "@fullcalendar/core": "^6.1.14", "@fullcalendar/daygrid": "^6.1.14", "@fullcalendar/interaction": "^6.1.14", "@fullcalendar/react": "^6.1.14", "@fullcalendar/timegrid": "^6.1.14", - "@matrix-widget-toolkit/api": "^3.2.2", - "@matrix-widget-toolkit/mui": "^1.1.6", - "@matrix-widget-toolkit/react": "^1.0.5", + "@matrix-widget-toolkit/api": "^3.4.2", + "@matrix-widget-toolkit/mui": "^2.0.6", + "@matrix-widget-toolkit/react": "^2.0.3", "@mui/icons-material": "^5.15.3", "@mui/lab": "^5.0.0-alpha.159", "@mui/material": "^5.15.3", - "@mui/x-date-pickers": "^6.18.6", "@mui/utils": "^5.14.18", + "@mui/x-date-pickers": "^6.18.6", + "@nordeck/matrix-meetings-calendar": "1.0.0", "@reduxjs/toolkit": "^1.9.7", "i18next": "^23.7.16", "i18next-chained-backend": "^4.6.2", "i18next-http-backend": "^2.5.2", "joi": "^17.13.3", - "lodash": "^4.17.20", + "lodash-es": "^4.17.21", "luxon": "^3.3.0", - "@nordeck/matrix-meetings-calendar": "1.0.0", "matrix-widget-api": "^1.5.0", "mustache": "^4.2.0", - "react": "^17.0.2", - "react-dom": "^17.0.2", + "react": "^18.3.1", + "react-dom": "^18.3.1", "react-i18next": "^14.0.0", "react-redux": "^8.1.3", "react-router-dom": "^6.23.1", - "react-use": "^17.4.2", + "react-use": "^17.5.1", "redux": "^5.0.1", "reselect": "^4.1.8", "rrule": "^2.8.1", @@ -43,29 +44,33 @@ }, "devDependencies": { "@craco/craco": "^7.1.0", - "@matrix-widget-toolkit/testing": "^2.3.2", - "@testing-library/jest-dom": "^6.4.5", - "@testing-library/react": "^12.1.5", + "@matrix-widget-toolkit/testing": "^3.0.1", + "@testing-library/dom": "^10.4.0", + "@testing-library/jest-dom": "^6.6.3", + "@testing-library/react": "12", "@testing-library/react-hooks": "^8.0.1", "@testing-library/user-event": "^14.5.2", - "@types/jest": "^27.5.2", - "@types/jest-axe": "^3.5.9", - "@types/lodash": "^4.17.4", + "@types/lodash-es": "^4.17.12", "@types/luxon": "^3.2.0", "@types/mustache": "^4.2.5", "@types/node": "^20.4.6", - "@types/react": "^17.0.53", - "@types/react-dom": "^17.0.19", + "@types/react": "^18.3.12", + "@types/react-dom": "^18.3.1", "@types/react-i18next": "^8.1.0", + "@vitejs/plugin-basic-ssl": "^1.1.0", + "@vitejs/plugin-react-swc": "^3.7.1", + "@vitest/coverage-v8": "^2.1.4", + "@vitest/ui": "^2.1.4", + "axe-core": "^4.10.2", "cross-env": "^7.0.3", "dotenv-cli": "^7.4.2", "eslint": "^8.57.0", "i18next-parser": "^8.13.0", - "jest": "^27.4.3", - "jest-axe": "^8.0.0", "msw": "^1.3.2", "react-scripts": "5.0.1", - "typescript": "^5.4.5" + "typescript": "^5.4.5", + "vite": "^5.4.10", + "vitest": "^2.1.4" }, "engines": { "node": ">=20", @@ -78,13 +83,13 @@ "docker:stop": "docker stop matrix-meetings-widget", "docker:remove": "yarn run docker:stop && docker rm -v matrix-meetings-widget", "docker:inspect": "docker inspect nordeck/matrix-meetings-widget", - "start": "cross-env HTTPS=true BROWSER=none ESLINT_NO_DEV_ERRORS=true TSC_COMPILE_ON_ERROR=true craco start", - "dev": "cross-env BROWSER=none ESLINT_NO_DEV_ERRORS=true TSC_COMPILE_ON_ERROR=true WDS_SOCKET_PORT=0 craco start", - "build": "cross-env GENERATE_SOURCEMAP=false INLINE_RUNTIME_CHUNK=false craco build", + "dev": "vite", + "dev:https": "VITE_DEV_SSL=true vite", + "build": "vite build", + "tsc": "tsc", "depcheck": "depcheck", - "test": "craco test", - "test:ci": "craco test --coverage", - "test:all": "craco test --coverage --watchAll=false --maxWorkers=50%", + "test": "vitest", + "test:all": "vitest run --coverage", "lint": "eslint . --max-warnings=0", "translate": "i18next 'src/**/*.{ts,tsx}'", "generate-disclaimer": "cp ../LICENSE ./build/LICENSE.txt && cp NOTICE ./build/NOTICE.txt && yarn licenses generate-disclaimer --prod >> ./build/NOTICE.txt && yarn licenses list --prod --json --no-progress > ./build/licenses.json" @@ -101,14 +106,6 @@ "last 1 safari version" ] }, - "jest": { - "transformIgnorePatterns": [ - "(?!(/node_modules/(@fullcalendar)/))(/node_modules/.+.(js|jsx|mjs|cjs|ts|tsx)$)" - ], - "moduleNameMapper": { - "matrix-meetings-(.*)": "/../packages/$1/src/index.ts" - } - }, "repository": { "type": "git", "url": "https://github.com/nordeck/matrix-meetings.git" diff --git a/matrix-meetings-widget/public/index.html b/matrix-meetings-widget/public/index.html deleted file mode 100644 index 83b59e2a..00000000 --- a/matrix-meetings-widget/public/index.html +++ /dev/null @@ -1,34 +0,0 @@ - - - - - - - - - - - NeoDateFix Widget - <% if (process.env.NODE_ENV === 'development') { %> - - <% } %> - - - - - -
- - diff --git a/matrix-meetings-widget/src/App.test.tsx b/matrix-meetings-widget/src/App.test.tsx index f6004d8c..6c936d01 100644 --- a/matrix-meetings-widget/src/App.test.tsx +++ b/matrix-meetings-widget/src/App.test.tsx @@ -18,6 +18,7 @@ import { WidgetApiMockProvider } from '@matrix-widget-toolkit/react'; import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; import { render } from '@testing-library/react'; import { BrowserRouter } from 'react-router-dom'; +import { afterEach, beforeEach, describe, it } from 'vitest'; import App from './App'; import { LocalizationProvider } from './components/common/LocalizationProvider'; import { StoreProvider } from './store'; diff --git a/matrix-meetings-widget/src/components/cockpit/CockpitPanel/CockpitPanel.test.tsx b/matrix-meetings-widget/src/components/cockpit/CockpitPanel/CockpitPanel.test.tsx index 8b6bc83f..5406a069 100644 --- a/matrix-meetings-widget/src/components/cockpit/CockpitPanel/CockpitPanel.test.tsx +++ b/matrix-meetings-widget/src/components/cockpit/CockpitPanel/CockpitPanel.test.tsx @@ -19,10 +19,11 @@ import { WidgetApiMockProvider } from '@matrix-widget-toolkit/react'; import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; import { render, screen } from '@testing-library/react'; import userEvent from '@testing-library/user-event'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; import { setupServer } from 'msw/node'; import { ComponentType, PropsWithChildren, useState } from 'react'; import { Provider } from 'react-redux'; +import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; import { mockCalendar, mockConfigEndpoint, @@ -36,14 +37,14 @@ import { initializeStore } from '../../../store/store'; import { LocalizationProvider } from '../../common/LocalizationProvider'; import { CockpitPanel } from './CockpitPanel'; -jest.mock('@matrix-widget-toolkit/api', () => ({ - ...jest.requireActual('@matrix-widget-toolkit/api'), - extractWidgetApiParameters: jest.fn(), +vi.mock('@matrix-widget-toolkit/api', async () => ({ + ...(await vi.importActual( + '@matrix-widget-toolkit/api', + )), + extractWidgetApiParameters: vi.fn(), })); -const extractWidgetApiParameters = jest.mocked( - extractWidgetApiParametersMocked, -); +const extractWidgetApiParameters = vi.mocked(extractWidgetApiParametersMocked); let widgetApi: MockedWidgetApi; @@ -72,9 +73,9 @@ describe('', () => { widgetId: '', }); - jest - .spyOn(Date, 'now') - .mockImplementation(() => +new Date('2022-01-02T13:10:00.000Z')); + vi.spyOn(Date, 'now').mockImplementation( + () => +new Date('2022-01-02T13:10:00.000Z'), + ); Wrapper = ({ children }: PropsWithChildren<{}>) => { const [store] = useState(() => { @@ -114,7 +115,7 @@ describe('', () => { screen.findByRole('heading', { name: 'An important meeting' }), ).resolves.toBeInTheDocument(); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should display upcoming recurring meeting', async () => { diff --git a/matrix-meetings-widget/src/components/common/ConfirmDeleteDialog/ConfirmDeleteDialog.test.tsx b/matrix-meetings-widget/src/components/common/ConfirmDeleteDialog/ConfirmDeleteDialog.test.tsx index 40ae336a..6fa612c2 100644 --- a/matrix-meetings-widget/src/components/common/ConfirmDeleteDialog/ConfirmDeleteDialog.test.tsx +++ b/matrix-meetings-widget/src/components/common/ConfirmDeleteDialog/ConfirmDeleteDialog.test.tsx @@ -16,12 +16,13 @@ import { render, screen, waitFor, within } from '@testing-library/react'; import userEvent from '@testing-library/user-event'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; +import { describe, expect, it, vi } from 'vitest'; import { ConfirmDeleteDialog } from './ConfirmDeleteDialog'; describe('', () => { - const onCancel = jest.fn(); - const onConfirm = jest.fn(); + const onCancel = vi.fn(); + const onConfirm = vi.fn(); it('should render without exploding', () => { const { container } = render( @@ -50,7 +51,7 @@ describe('', () => { />, ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should have no accessibility violations while loading', async () => { @@ -66,7 +67,7 @@ describe('', () => { />, ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should open a confirm dialog if opened', async () => { @@ -164,7 +165,7 @@ describe('', () => { }); it('should call onEnter every time the dialog is displayed', async () => { - const onEnter = jest.fn(); + const onEnter = vi.fn(); const { rerender } = render( ', () => { @@ -52,6 +53,6 @@ describe('', () => { , ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); }); diff --git a/matrix-meetings-widget/src/components/common/DateTimePickers/ButtonDatePicker.test.tsx b/matrix-meetings-widget/src/components/common/DateTimePickers/ButtonDatePicker.test.tsx index 8041fae4..0c16afe2 100644 --- a/matrix-meetings-widget/src/components/common/DateTimePickers/ButtonDatePicker.test.tsx +++ b/matrix-meetings-widget/src/components/common/DateTimePickers/ButtonDatePicker.test.tsx @@ -16,9 +16,10 @@ import { render, screen, within } from '@testing-library/react'; import userEvent from '@testing-library/user-event'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; import { DateTime } from 'luxon'; import { ComponentType, PropsWithChildren, useState } from 'react'; +import { beforeEach, describe, expect, it } from 'vitest'; import { LocalizationProvider } from '../LocalizationProvider'; import { ButtonDatePicker } from './ButtonDatePicker'; @@ -84,6 +85,6 @@ describe('', () => { it('should have no accessibility violations', async () => { const { container } = render(, { wrapper: Wrapper }); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); }); diff --git a/matrix-meetings-widget/src/components/common/DateTimePickers/CalendarDayPicker.test.tsx b/matrix-meetings-widget/src/components/common/DateTimePickers/CalendarDayPicker.test.tsx index 657da5d1..83cd0bb0 100644 --- a/matrix-meetings-widget/src/components/common/DateTimePickers/CalendarDayPicker.test.tsx +++ b/matrix-meetings-widget/src/components/common/DateTimePickers/CalendarDayPicker.test.tsx @@ -16,14 +16,15 @@ import { render, screen, waitFor, within } from '@testing-library/react'; import userEvent from '@testing-library/user-event'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; import { ComponentType, PropsWithChildren } from 'react'; +import { beforeEach, describe, expect, it, vi } from 'vitest'; import { setLocale } from '../../../lib/locale'; import { LocalizationProvider } from '../LocalizationProvider'; import { CalendarDayPicker } from './CalendarDayPicker'; describe('', () => { - const onRangeChange = jest.fn(); + const onRangeChange = vi.fn(); let Wrapper: ComponentType>; beforeEach(() => { @@ -59,7 +60,7 @@ describe('', () => { { wrapper: Wrapper }, ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should have no accessibility violations, if date picker is open', async () => { @@ -78,7 +79,7 @@ describe('', () => { }), ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should have date calendar weekdays starting from Sunday for english locale', async () => { diff --git a/matrix-meetings-widget/src/components/common/DateTimePickers/CalendarMonthPicker.test.tsx b/matrix-meetings-widget/src/components/common/DateTimePickers/CalendarMonthPicker.test.tsx index 259b31aa..595fd18a 100644 --- a/matrix-meetings-widget/src/components/common/DateTimePickers/CalendarMonthPicker.test.tsx +++ b/matrix-meetings-widget/src/components/common/DateTimePickers/CalendarMonthPicker.test.tsx @@ -16,13 +16,14 @@ import { render, screen, waitFor, within } from '@testing-library/react'; import userEvent from '@testing-library/user-event'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; import { ComponentType, PropsWithChildren } from 'react'; +import { beforeEach, describe, expect, it, vi } from 'vitest'; import { LocalizationProvider } from '../LocalizationProvider'; import { CalendarMonthPicker } from './CalendarMonthPicker'; describe('', () => { - const onRangeChange = jest.fn(); + const onRangeChange = vi.fn(); let Wrapper: ComponentType>; beforeEach(() => { @@ -58,7 +59,7 @@ describe('', () => { { wrapper: Wrapper }, ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should have no accessibility violations, if date picker is open', async () => { @@ -77,7 +78,7 @@ describe('', () => { }), ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should react to input changes', async () => { diff --git a/matrix-meetings-widget/src/components/common/DateTimePickers/CalendarWeekPicker.test.tsx b/matrix-meetings-widget/src/components/common/DateTimePickers/CalendarWeekPicker.test.tsx index d0e2114d..6628bc21 100644 --- a/matrix-meetings-widget/src/components/common/DateTimePickers/CalendarWeekPicker.test.tsx +++ b/matrix-meetings-widget/src/components/common/DateTimePickers/CalendarWeekPicker.test.tsx @@ -16,13 +16,14 @@ import { render, screen, waitFor, within } from '@testing-library/react'; import userEvent from '@testing-library/user-event'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; import { ComponentType, PropsWithChildren } from 'react'; +import { beforeEach, describe, expect, it, vi } from 'vitest'; import { LocalizationProvider } from '../LocalizationProvider'; import { CalendarWeekPicker } from './CalendarWeekPicker'; describe('', () => { - const onRangeChange = jest.fn(); + const onRangeChange = vi.fn(); let Wrapper: ComponentType>; beforeEach(() => { @@ -58,7 +59,7 @@ describe('', () => { { wrapper: Wrapper }, ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should have no accessibility violations, if date picker is open', async () => { @@ -77,7 +78,7 @@ describe('', () => { }), ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should react to input changes', async () => { diff --git a/matrix-meetings-widget/src/components/common/DateTimePickers/CalendarWorkWeekPicker.test.tsx b/matrix-meetings-widget/src/components/common/DateTimePickers/CalendarWorkWeekPicker.test.tsx index 1ff8e55c..6a5849d6 100644 --- a/matrix-meetings-widget/src/components/common/DateTimePickers/CalendarWorkWeekPicker.test.tsx +++ b/matrix-meetings-widget/src/components/common/DateTimePickers/CalendarWorkWeekPicker.test.tsx @@ -16,13 +16,14 @@ import { render, screen, waitFor, within } from '@testing-library/react'; import userEvent from '@testing-library/user-event'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; import { ComponentType, PropsWithChildren } from 'react'; +import { beforeEach, describe, expect, it, vi } from 'vitest'; import { LocalizationProvider } from '../LocalizationProvider'; import { CalendarWorkWeekPicker } from './CalendarWorkWeekPicker'; describe('', () => { - const onRangeChange = jest.fn(); + const onRangeChange = vi.fn(); let Wrapper: ComponentType>; beforeEach(() => { @@ -58,7 +59,7 @@ describe('', () => { { wrapper: Wrapper }, ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should have no accessibility violations, if date picker is open', async () => { @@ -76,7 +77,7 @@ describe('', () => { }), ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should react to input changes', async () => { diff --git a/matrix-meetings-widget/src/components/common/DateTimePickers/DateRangePicker.test.tsx b/matrix-meetings-widget/src/components/common/DateTimePickers/DateRangePicker.test.tsx index bdcf826c..c65e6880 100644 --- a/matrix-meetings-widget/src/components/common/DateTimePickers/DateRangePicker.test.tsx +++ b/matrix-meetings-widget/src/components/common/DateTimePickers/DateRangePicker.test.tsx @@ -16,13 +16,14 @@ import { render, screen } from '@testing-library/react'; import userEvent from '@testing-library/user-event'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; import { ComponentType, PropsWithChildren } from 'react'; +import { beforeEach, describe, expect, it, vi } from 'vitest'; import { LocalizationProvider } from '../LocalizationProvider'; import { DateRangePicker } from './DateRangePicker'; describe('', () => { - const onRangeChange = jest.fn(); + const onRangeChange = vi.fn(); let Wrapper: ComponentType>; beforeEach(() => { @@ -58,7 +59,7 @@ describe('', () => { { wrapper: Wrapper }, ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should have no accessibility violations, if date picker is open', async () => { @@ -77,7 +78,7 @@ describe('', () => { }), ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should react to input changes', () => { diff --git a/matrix-meetings-widget/src/components/common/DateTimePickers/EndDatePicker.test.tsx b/matrix-meetings-widget/src/components/common/DateTimePickers/EndDatePicker.test.tsx index 8045f28a..1ff80bb3 100644 --- a/matrix-meetings-widget/src/components/common/DateTimePickers/EndDatePicker.test.tsx +++ b/matrix-meetings-widget/src/components/common/DateTimePickers/EndDatePicker.test.tsx @@ -16,14 +16,15 @@ import { fireEvent, render, screen } from '@testing-library/react'; import userEvent from '@testing-library/user-event'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; import { DateTime } from 'luxon'; import { ComponentType, PropsWithChildren } from 'react'; +import { beforeEach, describe, expect, it, vi } from 'vitest'; import { LocalizationProvider } from '../LocalizationProvider'; import { EndDatePicker } from './EndDatePicker'; describe('', () => { - const onChange = jest.fn(); + const onChange = vi.fn(); let Wrapper: ComponentType>; beforeEach(() => { @@ -60,7 +61,7 @@ describe('', () => { { wrapper: Wrapper }, ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should have no accessibility violations, if picker is open', async () => { @@ -78,7 +79,7 @@ describe('', () => { ), ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should update the meeting end date', () => { diff --git a/matrix-meetings-widget/src/components/common/DateTimePickers/EndTimePicker.test.tsx b/matrix-meetings-widget/src/components/common/DateTimePickers/EndTimePicker.test.tsx index 35bbd765..8f1aaf22 100644 --- a/matrix-meetings-widget/src/components/common/DateTimePickers/EndTimePicker.test.tsx +++ b/matrix-meetings-widget/src/components/common/DateTimePickers/EndTimePicker.test.tsx @@ -16,14 +16,15 @@ import { fireEvent, render, screen } from '@testing-library/react'; import userEvent from '@testing-library/user-event'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; import { DateTime } from 'luxon'; import { ComponentType, PropsWithChildren } from 'react'; +import { beforeEach, describe, expect, it, vi } from 'vitest'; import { LocalizationProvider } from '../LocalizationProvider'; import { EndTimePicker } from './EndTimePicker'; describe('', () => { - const onChange = jest.fn(); + const onChange = vi.fn(); let Wrapper: ComponentType>; beforeEach(() => { @@ -60,7 +61,7 @@ describe('', () => { { wrapper: Wrapper }, ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should have no accessibility violations, if picker is open', async () => { @@ -74,7 +75,7 @@ describe('', () => { await userEvent.click(screen.getByLabelText(/choose end time/i)); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should update the meeting end time', () => { diff --git a/matrix-meetings-widget/src/components/common/DateTimePickers/StartDatePicker.test.tsx b/matrix-meetings-widget/src/components/common/DateTimePickers/StartDatePicker.test.tsx index 3ad40107..9e30af65 100644 --- a/matrix-meetings-widget/src/components/common/DateTimePickers/StartDatePicker.test.tsx +++ b/matrix-meetings-widget/src/components/common/DateTimePickers/StartDatePicker.test.tsx @@ -16,14 +16,15 @@ import { fireEvent, render, screen } from '@testing-library/react'; import userEvent from '@testing-library/user-event'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; import { DateTime } from 'luxon'; import { ComponentType, PropsWithChildren } from 'react'; +import { beforeEach, describe, expect, it, vi } from 'vitest'; import { LocalizationProvider } from '../LocalizationProvider'; import { StartDatePicker } from './StartDatePicker'; describe('', () => { - const onChange = jest.fn(); + const onChange = vi.fn(); let Wrapper: ComponentType>; beforeEach(() => { @@ -60,7 +61,7 @@ describe('', () => { { wrapper: Wrapper }, ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should have no accessibility violations, if picker is open', async () => { @@ -74,7 +75,7 @@ describe('', () => { await userEvent.click(screen.getByLabelText(/choose start date/i)); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should update the meeting start date', () => { diff --git a/matrix-meetings-widget/src/components/common/DateTimePickers/StartTimePicker.test.tsx b/matrix-meetings-widget/src/components/common/DateTimePickers/StartTimePicker.test.tsx index 358c0351..eb9a1dd7 100644 --- a/matrix-meetings-widget/src/components/common/DateTimePickers/StartTimePicker.test.tsx +++ b/matrix-meetings-widget/src/components/common/DateTimePickers/StartTimePicker.test.tsx @@ -16,14 +16,15 @@ import { fireEvent, render, screen } from '@testing-library/react'; import userEvent from '@testing-library/user-event'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; import { DateTime } from 'luxon'; import { ComponentType, PropsWithChildren } from 'react'; +import { beforeEach, describe, expect, it, vi } from 'vitest'; import { LocalizationProvider } from '../LocalizationProvider'; import { StartTimePicker } from './StartTimePicker'; describe('', () => { - const onChange = jest.fn(); + const onChange = vi.fn(); let Wrapper: ComponentType>; beforeEach(() => { @@ -60,7 +61,7 @@ describe('', () => { { wrapper: Wrapper }, ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should have no accessibility violations, if picker is open', async () => { @@ -74,7 +75,7 @@ describe('', () => { await userEvent.click(screen.getByLabelText(/choose start time/i)); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should update the meeting start time', () => { diff --git a/matrix-meetings-widget/src/components/common/DateTimePickers/index.ts b/matrix-meetings-widget/src/components/common/DateTimePickers/index.ts index 968acae8..2c47a3e3 100644 --- a/matrix-meetings-widget/src/components/common/DateTimePickers/index.ts +++ b/matrix-meetings-widget/src/components/common/DateTimePickers/index.ts @@ -18,11 +18,6 @@ export { CalendarDayPicker } from './CalendarDayPicker'; export { CalendarMonthPicker } from './CalendarMonthPicker'; export { CalendarWeekPicker } from './CalendarWeekPicker'; export { CalendarWorkWeekPicker } from './CalendarWorkWeekPicker'; -export { DateRangePicker } from './DateRangePicker'; -export { EndDatePicker } from './EndDatePicker'; -export { EndTimePicker } from './EndTimePicker'; -export { StartDatePicker } from './StartDatePicker'; -export { StartTimePicker } from './StartTimePicker'; export { fullDateFormat, fullLongDateFormat, @@ -32,4 +27,9 @@ export { timeOnlyDateFormat, withoutYearDateFormat, } from './dateFormat'; +export { DateRangePicker } from './DateRangePicker'; +export { EndDatePicker } from './EndDatePicker'; +export { EndTimePicker } from './EndTimePicker'; +export { StartDatePicker } from './StartDatePicker'; +export { StartTimePicker } from './StartTimePicker'; export { useDatePickersState } from './useDatePickersState'; diff --git a/matrix-meetings-widget/src/components/common/DateTimePickers/useDatePickersState.test.tsx b/matrix-meetings-widget/src/components/common/DateTimePickers/useDatePickersState.test.tsx index a42b62fe..088b3af2 100644 --- a/matrix-meetings-widget/src/components/common/DateTimePickers/useDatePickersState.test.tsx +++ b/matrix-meetings-widget/src/components/common/DateTimePickers/useDatePickersState.test.tsx @@ -16,14 +16,15 @@ import { renderHook } from '@testing-library/react-hooks'; import { DateTime } from 'luxon'; +import { beforeEach, describe, expect, it, vi } from 'vitest'; import { mockMeeting } from '../../../lib/testUtils'; import { useDatePickersState } from './useDatePickersState'; describe('useDatePickersState', () => { beforeEach(() => { - jest - .spyOn(Date, 'now') - .mockImplementation(() => +new Date('2022-01-02T13:10:00.000Z')); + vi.spyOn(Date, 'now').mockImplementation( + () => +new Date('2022-01-02T13:10:00.000Z'), + ); }); describe('meeting mode', () => { diff --git a/matrix-meetings-widget/src/components/common/HeadingDivider/HeadingDivider.test.tsx b/matrix-meetings-widget/src/components/common/HeadingDivider/HeadingDivider.test.tsx index 05921503..b1884a7e 100644 --- a/matrix-meetings-widget/src/components/common/HeadingDivider/HeadingDivider.test.tsx +++ b/matrix-meetings-widget/src/components/common/HeadingDivider/HeadingDivider.test.tsx @@ -15,14 +15,15 @@ */ import { render, screen } from '@testing-library/react'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; +import { describe, expect, it } from 'vitest'; import { HeadingDivider } from './HeadingDivider'; describe('', () => { it('should have no accessibility violations', async () => { const { container } = render(); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should have no accessibility violations with children', async () => { @@ -34,7 +35,7 @@ describe('', () => { , ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should render children', async () => { diff --git a/matrix-meetings-widget/src/components/common/ListEmptyState/ListEmptyState.test.tsx b/matrix-meetings-widget/src/components/common/ListEmptyState/ListEmptyState.test.tsx index 9aedb236..ae57655b 100644 --- a/matrix-meetings-widget/src/components/common/ListEmptyState/ListEmptyState.test.tsx +++ b/matrix-meetings-widget/src/components/common/ListEmptyState/ListEmptyState.test.tsx @@ -16,7 +16,8 @@ import { List } from '@mui/material'; import { render, screen } from '@testing-library/react'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; +import { describe, expect, it } from 'vitest'; import { ListEmptyState } from './ListEmptyState'; describe('', () => { @@ -37,6 +38,6 @@ describe('', () => { , ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); }); diff --git a/matrix-meetings-widget/src/components/common/MeetingNotEndedGuard/MeetingNotEndedGuard.test.tsx b/matrix-meetings-widget/src/components/common/MeetingNotEndedGuard/MeetingNotEndedGuard.test.tsx index 4c7be0c0..a3fad62e 100644 --- a/matrix-meetings-widget/src/components/common/MeetingNotEndedGuard/MeetingNotEndedGuard.test.tsx +++ b/matrix-meetings-widget/src/components/common/MeetingNotEndedGuard/MeetingNotEndedGuard.test.tsx @@ -15,10 +15,11 @@ */ import { act, render, screen, within } from '@testing-library/react'; +import { afterEach, describe, expect, it, vi } from 'vitest'; import { mockCalendarEntry, mockMeeting } from '../../../lib/testUtils'; import { MeetingNotEndedGuard } from './MeetingNotEndedGuard'; -afterEach(() => jest.useRealTimers()); +afterEach(() => vi.useRealTimers()); describe('', () => { it('should render without exploding', () => { @@ -200,10 +201,10 @@ describe('', () => { }); it('should update rendering if timer elapses', () => { - jest.useFakeTimers(); + vi.useFakeTimers(); // set clock to before the meeting ended - jest.setSystemTime(new Date('2000-01-01T10:00:00Z')); + vi.setSystemTime(new Date('2000-01-01T10:00:00Z')); const futureTime = new Date(); futureTime.setSeconds(futureTime.getSeconds() + 1); @@ -220,18 +221,18 @@ describe('', () => { expect(screen.getByText(/My Content/)).toBeInTheDocument(); // set clock to after the meeting ended - jest.setSystemTime(new Date('2000-01-01T10:00:11Z')); + vi.setSystemTime(new Date('2000-01-01T10:00:11Z')); // should not yet trigger the update act(() => { - jest.advanceTimersByTime(9_000); + vi.advanceTimersByTime(9_000); }); expect(screen.getByText(/My Content/)).toBeInTheDocument(); // should trigger the update act(() => { - jest.advanceTimersByTime(1_000); + vi.advanceTimersByTime(1_000); }); expect(screen.getByRole('status')).toBeInTheDocument(); diff --git a/matrix-meetings-widget/src/components/common/MenuButton/MenuButton.test.tsx b/matrix-meetings-widget/src/components/common/MenuButton/MenuButton.test.tsx index 3c75ecc5..25a1d9f8 100644 --- a/matrix-meetings-widget/src/components/common/MenuButton/MenuButton.test.tsx +++ b/matrix-meetings-widget/src/components/common/MenuButton/MenuButton.test.tsx @@ -17,7 +17,8 @@ import DeleteIcon from '@mui/icons-material/Delete'; import { render, screen, waitFor, within } from '@testing-library/react'; import userEvent from '@testing-library/user-event'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; +import { describe, expect, it, vi } from 'vitest'; import { MenuButton } from './MenuButton'; import { MenuButtonItem } from './MenuButtonItem'; @@ -41,7 +42,7 @@ describe('', () => { , ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should have no accessibility violations, if menu is open', async () => { @@ -53,7 +54,7 @@ describe('', () => { await userEvent.click(screen.getByRole('button', { name: /settings/i })); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should open the menu', async () => { @@ -79,7 +80,7 @@ describe('', () => { }); it('should trigger a callback when the menu is opened', async () => { - const onOpen = jest.fn(); + const onOpen = vi.fn(); render( diff --git a/matrix-meetings-widget/src/components/common/MenuButton/OpenXchangeMenuButtonItem/OpenXchangeMenuButtonItem.test.tsx b/matrix-meetings-widget/src/components/common/MenuButton/OpenXchangeMenuButtonItem/OpenXchangeMenuButtonItem.test.tsx index 9ea08594..8df72c66 100644 --- a/matrix-meetings-widget/src/components/common/MenuButton/OpenXchangeMenuButtonItem/OpenXchangeMenuButtonItem.test.tsx +++ b/matrix-meetings-widget/src/components/common/MenuButton/OpenXchangeMenuButtonItem/OpenXchangeMenuButtonItem.test.tsx @@ -19,10 +19,11 @@ import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; import EditIcon from '@mui/icons-material/Edit'; import { render, screen, waitFor } from '@testing-library/react'; import userEvent from '@testing-library/user-event'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; import { setupServer } from 'msw/node'; import { ComponentType, PropsWithChildren, useState } from 'react'; import { Provider } from 'react-redux'; +import { afterEach, beforeEach, describe, expect, it } from 'vitest'; import { mockConfigEndpoint } from '../../../../lib/testUtils'; import { createStore } from '../../../../store'; import { initializeStore } from '../../../../store/store'; @@ -91,7 +92,7 @@ describe('', () => { ), ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should have no accessibility violations, if button is disabled', async () => { @@ -111,7 +112,7 @@ describe('', () => { screen.findByRole('menuitem', { name: /edit/i }), ).resolves.toBeInTheDocument(); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should render button if external reference is present', async () => { diff --git a/matrix-meetings-widget/src/components/common/MenuButton/OpenXchangeMenuButtonItem/index.ts b/matrix-meetings-widget/src/components/common/MenuButton/OpenXchangeMenuButtonItem/index.ts index 57f45ee8..29edce6d 100644 --- a/matrix-meetings-widget/src/components/common/MenuButton/OpenXchangeMenuButtonItem/index.ts +++ b/matrix-meetings-widget/src/components/common/MenuButton/OpenXchangeMenuButtonItem/index.ts @@ -14,5 +14,5 @@ * limitations under the License. */ -export { OpenXchangeMenuButtonItem } from './OpenXchangeMenuButtonItem'; export { getOpenXChangeExternalReference } from './openXchange'; +export { OpenXchangeMenuButtonItem } from './OpenXchangeMenuButtonItem'; diff --git a/matrix-meetings-widget/src/components/common/TimeDistance/TimeDistance.test.tsx b/matrix-meetings-widget/src/components/common/TimeDistance/TimeDistance.test.tsx index 638c1526..b10572be 100644 --- a/matrix-meetings-widget/src/components/common/TimeDistance/TimeDistance.test.tsx +++ b/matrix-meetings-widget/src/components/common/TimeDistance/TimeDistance.test.tsx @@ -15,18 +15,19 @@ */ import { render, screen } from '@testing-library/react'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; import { act } from 'react-dom/test-utils'; +import { afterEach, describe, expect, it, vi } from 'vitest'; import { TimeDistance } from './TimeDistance'; afterEach(() => { - jest.useRealTimers(); + vi.useRealTimers(); }); describe('', () => { it('should render without exploding', () => { - jest.useFakeTimers(); - jest.setSystemTime(new Date('2020-01-01T00:01:00Z')); + vi.useFakeTimers(); + vi.setSystemTime(new Date('2020-01-01T00:01:00Z')); render( ', () => { />, ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should count down', () => { - jest.useFakeTimers(); - jest.setSystemTime(new Date('2020-01-01T00:00:00Z')); + vi.useFakeTimers(); + vi.setSystemTime(new Date('2020-01-01T00:00:00Z')); const { container } = render( ', () => { expect(screen.getByText(/ends in 2 minutes/i)).toBeInTheDocument(); act(() => { - jest.advanceTimersByTime(30000); + vi.advanceTimersByTime(30000); }); expect(screen.getByText(/ends in 1 minute/i)).toBeInTheDocument(); act(() => { - jest.advanceTimersByTime(66000); + vi.advanceTimersByTime(66000); }); expect(screen.getByText(/ends in 24/i)).toBeInTheDocument(); act(() => { - jest.advanceTimersByTime(24000); + vi.advanceTimersByTime(24000); }); expect(container).toBeEmptyDOMElement(); diff --git a/matrix-meetings-widget/src/components/common/TimeDistance/getTimeDistanceState.test.ts b/matrix-meetings-widget/src/components/common/TimeDistance/getTimeDistanceState.test.ts index 9c1e3163..4a5c754c 100644 --- a/matrix-meetings-widget/src/components/common/TimeDistance/getTimeDistanceState.test.ts +++ b/matrix-meetings-widget/src/components/common/TimeDistance/getTimeDistanceState.test.ts @@ -14,6 +14,7 @@ * limitations under the License. */ +import { describe, expect, it } from 'vitest'; import { getTimeDistanceState } from './getTimeDistanceState'; describe('getTimeDistanceState', () => { diff --git a/matrix-meetings-widget/src/components/common/hooks/useUpdateOnDate.test.tsx b/matrix-meetings-widget/src/components/common/hooks/useUpdateOnDate.test.tsx index 165c48cb..8ef40703 100644 --- a/matrix-meetings-widget/src/components/common/hooks/useUpdateOnDate.test.tsx +++ b/matrix-meetings-widget/src/components/common/hooks/useUpdateOnDate.test.tsx @@ -16,11 +16,12 @@ import { render, screen } from '@testing-library/react'; import { act } from 'react-dom/test-utils'; +import { afterEach, describe, expect, it, vi } from 'vitest'; import { useUpdateOnDate } from './useUpdateOnDate'; describe('useUpdateOnDate', () => { afterEach(() => { - jest.useRealTimers(); + vi.useRealTimers(); }); it('should rerender at date', () => { @@ -30,15 +31,15 @@ describe('useUpdateOnDate', () => { return
{new Date(Date.now()).toISOString()}
; } - jest.useFakeTimers(); - jest.setSystemTime(new Date('2022-12-07T20:30:00.000Z')); + vi.useFakeTimers(); + vi.setSystemTime(new Date('2022-12-07T20:30:00.000Z')); render(); expect(screen.getByText('2022-12-07T20:30:00.000Z')).toBeInTheDocument(); act(() => { - jest.advanceTimersByTime(60 * 1000); + vi.advanceTimersByTime(60 * 1000); }); expect(screen.getByText('2022-12-07T20:31:00.000Z')).toBeInTheDocument(); diff --git a/matrix-meetings-widget/src/components/common/withRoomMeeting/withCurrentRoomMeeting.test.tsx b/matrix-meetings-widget/src/components/common/withRoomMeeting/withCurrentRoomMeeting.test.tsx index 9bf33b29..968db9c7 100644 --- a/matrix-meetings-widget/src/components/common/withRoomMeeting/withCurrentRoomMeeting.test.tsx +++ b/matrix-meetings-widget/src/components/common/withRoomMeeting/withCurrentRoomMeeting.test.tsx @@ -19,6 +19,7 @@ import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; import { act, render, screen } from '@testing-library/react'; import { ComponentType, PropsWithChildren, useMemo } from 'react'; import { Provider } from 'react-redux'; +import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; import { mockCalendar, mockCreateMeetingRoom } from '../../../lib/testUtils'; import { Meeting } from '../../../reducer/meetingsApi'; import { createStore } from '../../../store'; @@ -60,7 +61,7 @@ describe('withCurrentRoomMeeting', () => { }); afterEach(() => { - jest.useRealTimers(); + vi.useRealTimers(); }); it('should render without exploding', async () => { @@ -92,8 +93,8 @@ describe('withCurrentRoomMeeting', () => { }, }); - jest.useFakeTimers(); - jest.setSystemTime(new Date('2023-01-01T13:59:59Z')); + vi.useFakeTimers(); + vi.setSystemTime(new Date('2023-01-01T13:59:59Z')); render(, { wrapper: Wrapper }); @@ -104,7 +105,7 @@ describe('withCurrentRoomMeeting', () => { expect(screen.getByText('Start: 2023-01-01T10:00:00Z')).toBeInTheDocument(); act(() => { - jest.advanceTimersByTime(30 * 1000); + vi.advanceTimersByTime(30 * 1000); }); expect(screen.getByText('Start: 2023-01-02T10:00:00Z')).toBeInTheDocument(); diff --git a/matrix-meetings-widget/src/components/meetings/InvitedMeetingsList/InvitedMeetingCard.test.tsx b/matrix-meetings-widget/src/components/meetings/InvitedMeetingsList/InvitedMeetingCard.test.tsx index fbe3795d..e10a822d 100644 --- a/matrix-meetings-widget/src/components/meetings/InvitedMeetingsList/InvitedMeetingCard.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/InvitedMeetingsList/InvitedMeetingCard.test.tsx @@ -18,9 +18,10 @@ import { extractWidgetApiParameters as extractWidgetApiParametersMocked } from ' import { WidgetApiMockProvider } from '@matrix-widget-toolkit/react'; import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; import { render, screen } from '@testing-library/react'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; import { ComponentType, PropsWithChildren, useState } from 'react'; import { Provider } from 'react-redux'; +import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; import { mockCreateMeetingInvitation, mockRoomMember, @@ -29,14 +30,14 @@ import { createStore } from '../../../store'; import { initializeStore } from '../../../store/store'; import { InvitedMeetingCard } from './InvitedMeetingCard'; -jest.mock('@matrix-widget-toolkit/api', () => ({ - ...jest.requireActual('@matrix-widget-toolkit/api'), - extractWidgetApiParameters: jest.fn(), +vi.mock('@matrix-widget-toolkit/api', async () => ({ + ...(await vi.importActual( + '@matrix-widget-toolkit/api', + )), + extractWidgetApiParameters: vi.fn(), })); -const extractWidgetApiParameters = jest.mocked( - extractWidgetApiParametersMocked, -); +const extractWidgetApiParameters = vi.mocked(extractWidgetApiParametersMocked); let widgetApi: MockedWidgetApi; @@ -120,6 +121,6 @@ describe('', () => { await expect(screen.findByRole('heading')).resolves.toBeInTheDocument(); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); }); diff --git a/matrix-meetings-widget/src/components/meetings/InvitedMeetingsList/InvitedMeetingsList.test.tsx b/matrix-meetings-widget/src/components/meetings/InvitedMeetingsList/InvitedMeetingsList.test.tsx index a391c4fb..aa1ebfbc 100644 --- a/matrix-meetings-widget/src/components/meetings/InvitedMeetingsList/InvitedMeetingsList.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/InvitedMeetingsList/InvitedMeetingsList.test.tsx @@ -18,22 +18,23 @@ import { extractWidgetApiParameters as extractWidgetApiParametersMocked } from ' import { WidgetApiMockProvider } from '@matrix-widget-toolkit/react'; import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; import { render, screen, within } from '@testing-library/react'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; import { ComponentType, PropsWithChildren, useState } from 'react'; import { Provider } from 'react-redux'; +import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; import { mockCreateMeetingInvitation } from '../../../lib/testUtils'; import { createStore } from '../../../store'; import { initializeStore } from '../../../store/store'; import { InvitedMeetingsList } from './InvitedMeetingsList'; -jest.mock('@matrix-widget-toolkit/api', () => ({ - ...jest.requireActual('@matrix-widget-toolkit/api'), - extractWidgetApiParameters: jest.fn(), +vi.mock('@matrix-widget-toolkit/api', async () => ({ + ...(await vi.importActual( + '@matrix-widget-toolkit/api', + )), + extractWidgetApiParameters: vi.fn(), })); -const extractWidgetApiParameters = jest.mocked( - extractWidgetApiParametersMocked, -); +const extractWidgetApiParameters = vi.mocked(extractWidgetApiParametersMocked); let widgetApi: MockedWidgetApi; @@ -95,7 +96,7 @@ describe('', () => { screen.findByRole('listitem', { name: /an important meeting/i }), ).resolves.toBeInTheDocument(); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should have no accessibility violations, in breakout mode', async () => { @@ -111,7 +112,7 @@ describe('', () => { screen.findByRole('listitem', { name: /an important meeting/i }), ).resolves.toBeInTheDocument(); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should render without exploding in breakout mode', async () => { diff --git a/matrix-meetings-widget/src/components/meetings/MeetingCard/MeetingCard.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingCard/MeetingCard.test.tsx index 77f5d9be..841a145b 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingCard/MeetingCard.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingCard/MeetingCard.test.tsx @@ -19,10 +19,11 @@ import { WidgetApiMockProvider } from '@matrix-widget-toolkit/react'; import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; import { render, screen, waitFor, within } from '@testing-library/react'; import userEvent from '@testing-library/user-event'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; import { setupServer } from 'msw/node'; import { ComponentType, PropsWithChildren, useState } from 'react'; import { Provider } from 'react-redux'; +import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; import { acknowledgeAllEvents, mockCalendar, @@ -45,14 +46,14 @@ import { } from '../ScheduleMeetingModal/types'; import { MeetingCard } from './MeetingCard'; -jest.mock('@matrix-widget-toolkit/api', () => ({ - ...jest.requireActual('@matrix-widget-toolkit/api'), - extractWidgetApiParameters: jest.fn(), +vi.mock('@matrix-widget-toolkit/api', async () => ({ + ...(await vi.importActual( + '@matrix-widget-toolkit/api', + )), + extractWidgetApiParameters: vi.fn(), })); -const extractWidgetApiParameters = jest.mocked( - extractWidgetApiParametersMocked, -); +const extractWidgetApiParameters = vi.mocked(extractWidgetApiParametersMocked); const server = setupServer(); @@ -70,7 +71,7 @@ describe('', () => { let Wrapper: ComponentType>; beforeEach(() => { - Element.prototype.scrollIntoView = jest.fn(); + Element.prototype.scrollIntoView = vi.fn(); mockWidgetEndpoint(server); mockConfigEndpoint(server); @@ -104,7 +105,7 @@ describe('', () => { afterEach(() => { // Restore the spy on Date.now() - jest.restoreAllMocks(); + vi.restoreAllMocks(); }); it('should render without exploding', async () => { @@ -158,7 +159,7 @@ describe('', () => { await expect(screen.findByRole('heading')).resolves.toBeInTheDocument(); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should have no accessibility violations, when the recurrence icon is displayed', async () => { @@ -185,7 +186,7 @@ describe('', () => { await expect(screen.findByText(/Recurrence:/)).resolves.toBeInTheDocument(); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should have accessible description', async () => { @@ -1082,9 +1083,9 @@ describe('', () => { }); it('should show a warning if deletion is scheduled', async () => { - jest - .spyOn(Date, 'now') - .mockImplementation(() => +new Date('2022-02-01T12:00:00Z')); + vi.spyOn(Date, 'now').mockImplementation( + () => +new Date('2022-02-01T12:00:00Z'), + ); mockCreateMeetingRoom(widgetApi, { room_id: '!room-id', diff --git a/matrix-meetings-widget/src/components/meetings/MeetingCard/MeetingHasBreakoutSessionsWarning/MeetingHasBreakoutSessionsWarning.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingCard/MeetingHasBreakoutSessionsWarning/MeetingHasBreakoutSessionsWarning.test.tsx index 6f9d8b2a..b938b06b 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingCard/MeetingHasBreakoutSessionsWarning/MeetingHasBreakoutSessionsWarning.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingCard/MeetingHasBreakoutSessionsWarning/MeetingHasBreakoutSessionsWarning.test.tsx @@ -16,9 +16,10 @@ import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; import { render, screen } from '@testing-library/react'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; import { ComponentType, PropsWithChildren, useState } from 'react'; import { Provider } from 'react-redux'; +import { afterEach, beforeEach, describe, expect, it } from 'vitest'; import { mockCreateBreakoutMeetingRoom, mockCreateMeetingRoom, @@ -54,7 +55,7 @@ describe('', () => { { wrapper: Wrapper }, ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should skip warning', async () => { diff --git a/matrix-meetings-widget/src/components/meetings/MeetingCard/ScheduledDeletionWarning.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingCard/ScheduledDeletionWarning.test.tsx index 34968c1f..eba7e4a7 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingCard/ScheduledDeletionWarning.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingCard/ScheduledDeletionWarning.test.tsx @@ -15,14 +15,15 @@ */ import { render, screen } from '@testing-library/react'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; +import { beforeEach, describe, expect, it, vi } from 'vitest'; import { ScheduledDeletionWarning } from './ScheduledDeletionWarning'; describe('', () => { beforeEach(() => { - jest - .spyOn(Date, 'now') - .mockImplementation(() => +new Date('2022-02-01T12:00:00Z')); + vi.spyOn(Date, 'now').mockImplementation( + () => +new Date('2022-02-01T12:00:00Z'), + ); }); it.each` @@ -51,6 +52,6 @@ describe('', () => { , ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); }); diff --git a/matrix-meetings-widget/src/components/meetings/MeetingCard/TooltipToggleButton.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingCard/TooltipToggleButton.test.tsx index 998639f5..6ed03555 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingCard/TooltipToggleButton.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingCard/TooltipToggleButton.test.tsx @@ -17,7 +17,8 @@ import { ToggleButtonGroup } from '@mui/material'; import { render, screen } from '@testing-library/react'; import userEvent from '@testing-library/user-event'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; +import { describe, expect, it, vi } from 'vitest'; import { TooltipToggleButton } from './TooltipToggleButton'; describe('', () => { @@ -43,7 +44,7 @@ describe('', () => { , ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should have no accessibility violations if expanded', async () => { @@ -59,7 +60,7 @@ describe('', () => { , ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should add aria-expanded and aria-controls', () => { @@ -98,7 +99,7 @@ describe('', () => { }); it('should be usable in a ToggleButtonGroup', async () => { - const onChange = jest.fn(); + const onChange = vi.fn(); const { rerender } = render( diff --git a/matrix-meetings-widget/src/components/meetings/MeetingCardEditParticipantsContent/MeetingCardEditParticipantsContent.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingCardEditParticipantsContent/MeetingCardEditParticipantsContent.test.tsx index 3abe62aa..474d2c94 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingCardEditParticipantsContent/MeetingCardEditParticipantsContent.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingCardEditParticipantsContent/MeetingCardEditParticipantsContent.test.tsx @@ -18,9 +18,10 @@ import { getEnvironment as getEnvironmentMocked } from '@matrix-widget-toolkit/m import { WidgetApiMockProvider } from '@matrix-widget-toolkit/react'; import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; import { render, screen, within } from '@testing-library/react'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; import { ComponentType, PropsWithChildren, useState } from 'react'; import { Provider } from 'react-redux'; +import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; import { mockMeeting, mockPowerLevelsEvent, @@ -34,12 +35,14 @@ import { sortByNameAndStatus, } from './MeetingCardEditParticipantsContent'; -jest.mock('@matrix-widget-toolkit/mui', () => ({ - ...jest.requireActual('@matrix-widget-toolkit/mui'), - getEnvironment: jest.fn(), +vi.mock('@matrix-widget-toolkit/mui', async () => ({ + ...(await vi.importActual( + '@matrix-widget-toolkit/mui', + )), + getEnvironment: vi.fn(), })); -const getEnvironment = jest.mocked(getEnvironmentMocked); +const getEnvironment = vi.mocked(getEnvironmentMocked); let widgetApi: MockedWidgetApi; @@ -51,9 +54,13 @@ describe('', () => { let Wrapper: ComponentType>; let meeting: Meeting; - beforeEach(() => { + beforeEach(async () => { getEnvironment.mockImplementation( - jest.requireActual('@matrix-widget-toolkit/mui').getEnvironment, + ( + await vi.importActual( + '@matrix-widget-toolkit/mui', + ) + ).getEnvironment, ); widgetApi.mockSendStateEvent( @@ -140,7 +147,7 @@ describe('', () => { { wrapper: Wrapper }, ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); }); diff --git a/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/CopyableText.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/CopyableText.test.tsx index afbaca4e..d6d92412 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/CopyableText.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/CopyableText.test.tsx @@ -16,7 +16,8 @@ import { render, screen } from '@testing-library/react'; import userEvent from '@testing-library/user-event'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; +import { describe, expect, it } from 'vitest'; import { CopyableText } from './CopyableText'; describe('', () => { @@ -54,6 +55,6 @@ describe('', () => { , ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); }); diff --git a/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/MeetingCardShareMeetingContent.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/MeetingCardShareMeetingContent.test.tsx index 8488d7fd..df5c4538 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/MeetingCardShareMeetingContent.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/MeetingCardShareMeetingContent.test.tsx @@ -19,11 +19,12 @@ import { WidgetApiMockProvider } from '@matrix-widget-toolkit/react'; import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; import { render, screen, waitFor, within } from '@testing-library/react'; import userEvent from '@testing-library/user-event'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; import { rest } from 'msw'; import { setupServer } from 'msw/node'; import { ComponentType, PropsWithChildren, useState } from 'react'; import { Provider } from 'react-redux'; +import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; import { mockCalendarEntry, mockConfigEndpoint, @@ -34,14 +35,14 @@ import { Meeting } from '../../../reducer/meetingsApi'; import { createStore } from '../../../store'; import { MeetingCardShareMeetingContent } from './MeetingCardShareMeetingContent'; -jest.mock('@matrix-widget-toolkit/api', () => ({ - ...jest.requireActual('@matrix-widget-toolkit/api'), - extractWidgetApiParameters: jest.fn(), +vi.mock('@matrix-widget-toolkit/api', async () => ({ + ...(await vi.importActual( + '@matrix-widget-toolkit/api', + )), + extractWidgetApiParameters: vi.fn(), })); -const extractWidgetApiParameters = jest.mocked( - extractWidgetApiParametersMocked, -); +const extractWidgetApiParameters = vi.mocked(extractWidgetApiParametersMocked); const server = setupServer(); @@ -113,7 +114,7 @@ describe('', () => { { wrapper: Wrapper }, ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should have accessible description', () => { diff --git a/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/ShareDialog.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/ShareDialog.test.tsx index 42904182..56fbf90c 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/ShareDialog.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/ShareDialog.test.tsx @@ -17,12 +17,13 @@ import { render, screen, within } from '@testing-library/react'; import { renderHook } from '@testing-library/react-hooks'; import userEvent from '@testing-library/user-event'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; import { act } from 'react-dom/test-utils'; +import { describe, expect, it, vi } from 'vitest'; import { ShareDialog, useShareDialog } from './ShareDialog'; describe('', () => { - const onClose = jest.fn(); + const onClose = vi.fn(); it('should render without exploring', () => { render( @@ -58,7 +59,7 @@ describe('', () => { />, ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should render children in the dialog', () => { diff --git a/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/useDownloadIcsFile.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/useDownloadIcsFile.test.tsx index e9fed580..086f37d9 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/useDownloadIcsFile.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/useDownloadIcsFile.test.tsx @@ -21,6 +21,7 @@ import { renderHook } from '@testing-library/react-hooks'; import { setupServer } from 'msw/node'; import { ComponentType, PropsWithChildren, useState } from 'react'; import { Provider } from 'react-redux'; +import { afterEach, beforeEach, describe, expect, it, Mock, vi } from 'vitest'; import { mockCalendarEntry, mockConfigEndpoint, @@ -36,14 +37,14 @@ import { useDownloadIcsFile, } from './useDownloadIcsFile'; -jest.mock('@matrix-widget-toolkit/api', () => ({ - ...jest.requireActual('@matrix-widget-toolkit/api'), - extractWidgetApiParameters: jest.fn(), +vi.mock('@matrix-widget-toolkit/api', async () => ({ + ...(await vi.importActual( + '@matrix-widget-toolkit/api', + )), + extractWidgetApiParameters: vi.fn(), })); -const extractWidgetApiParameters = jest.mocked( - extractWidgetApiParametersMocked, -); +const extractWidgetApiParameters = vi.mocked(extractWidgetApiParametersMocked); const server = setupServer(); @@ -57,14 +58,14 @@ afterEach(() => widgetApi.stop()); beforeEach(() => (widgetApi = mockWidgetApi())); -afterEach(() => jest.useRealTimers()); +afterEach(() => vi.useRealTimers()); describe('useDownloadIcsFile', () => { let Wrapper: ComponentType>; beforeEach(() => { - jest.useFakeTimers(); - jest.setSystemTime(new Date('2020-01-01T10:00:00Z')); + vi.useFakeTimers(); + vi.setSystemTime(new Date('2020-01-01T10:00:00Z')); mockConfigEndpoint(server); mockMeetingSharingInformationEndpoint(server); @@ -85,16 +86,16 @@ describe('useDownloadIcsFile', () => { }); it('should generate the ics file', async () => { - const blobSpy = jest.spyOn(global, 'Blob').mockReturnValue({ + const blobSpy = vi.spyOn(global, 'Blob').mockReturnValue({ size: 0, type: '', - arrayBuffer: jest.fn(), - slice: jest.fn(), - stream: jest.fn(), - text: jest.fn(), + arrayBuffer: vi.fn(), + slice: vi.fn(), + stream: vi.fn(), + text: vi.fn(), } as unknown as Blob); - (URL.createObjectURL as jest.Mock).mockReturnValue('blob:url'); + (URL.createObjectURL as Mock).mockReturnValue('blob:url'); const meeting = mockMeeting(); mockCreateMeetingRoom(widgetApi); @@ -130,8 +131,8 @@ END:VEVENT\r`), describe('createIcsFile', () => { beforeEach(() => { - jest.useFakeTimers(); - jest.setSystemTime(new Date('2020-01-01T10:00:00Z')); + vi.useFakeTimers(); + vi.setSystemTime(new Date('2020-01-01T10:00:00Z')); }); it('should generate the ics file for a single meeting', () => { diff --git a/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/useDownloadIcsFile.ts b/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/useDownloadIcsFile.ts index 1b737544..83b2348d 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/useDownloadIcsFile.ts +++ b/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/useDownloadIcsFile.ts @@ -20,7 +20,7 @@ import { formatICalDate, parseICalDate, } from '@nordeck/matrix-meetings-calendar'; -import { isArray, uniq } from 'lodash'; +import { isArray, uniq } from 'lodash-es'; import { DateTime } from 'luxon'; import { useEffect, useMemo, useState } from 'react'; import { tzlib_get_ical_block } from 'timezones-ical-library'; diff --git a/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/useMeetingEmail.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/useMeetingEmail.test.tsx index aacb82c0..b0ca8266 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/useMeetingEmail.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/useMeetingEmail.test.tsx @@ -21,6 +21,7 @@ import { renderHook } from '@testing-library/react-hooks'; import { setupServer } from 'msw/node'; import { ComponentType, PropsWithChildren, useState } from 'react'; import { Provider } from 'react-redux'; +import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; import { mockCalendarEntry, mockConfigEndpoint, @@ -30,14 +31,14 @@ import { import { createStore } from '../../../store'; import { useMeetingEmail } from './useMeetingEmail'; -jest.mock('@matrix-widget-toolkit/api', () => ({ - ...jest.requireActual('@matrix-widget-toolkit/api'), - extractWidgetApiParameters: jest.fn(), +vi.mock('@matrix-widget-toolkit/api', async () => ({ + ...(await vi.importActual( + '@matrix-widget-toolkit/api', + )), + extractWidgetApiParameters: vi.fn(), })); -const extractWidgetApiParameters = jest.mocked( - extractWidgetApiParametersMocked, -); +const extractWidgetApiParameters = vi.mocked(extractWidgetApiParametersMocked); const server = setupServer(); diff --git a/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/useMeetingUrl.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/useMeetingUrl.test.tsx index cf801349..025cde83 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/useMeetingUrl.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/useMeetingUrl.test.tsx @@ -16,18 +16,19 @@ import { extractWidgetApiParameters as extractWidgetApiParametersMocked } from '@matrix-widget-toolkit/api'; import { renderHook } from '@testing-library/react-hooks'; +import { beforeEach, describe, expect, it, vi } from 'vitest'; import { mockMeeting } from '../../../lib/testUtils'; import { Meeting } from '../../../reducer/meetingsApi'; import { useMeetingUrl } from './useMeetingUrl'; -jest.mock('@matrix-widget-toolkit/api', () => ({ - ...jest.requireActual('@matrix-widget-toolkit/api'), - extractWidgetApiParameters: jest.fn(), +vi.mock('@matrix-widget-toolkit/api', async () => ({ + ...(await vi.importActual( + '@matrix-widget-toolkit/api', + )), + extractWidgetApiParameters: vi.fn(), })); -const extractWidgetApiParameters = jest.mocked( - extractWidgetApiParametersMocked, -); +const extractWidgetApiParameters = vi.mocked(extractWidgetApiParametersMocked); describe('useMeetingUrl', () => { let meeting: Meeting; diff --git a/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsContent/MeetingDetailsContent.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsContent/MeetingDetailsContent.test.tsx index 52b422f1..c979a11b 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsContent/MeetingDetailsContent.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsContent/MeetingDetailsContent.test.tsx @@ -18,10 +18,11 @@ import { extractWidgetApiParameters } from '@matrix-widget-toolkit/api'; import { WidgetApiMockProvider } from '@matrix-widget-toolkit/react'; import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; import { render, screen } from '@testing-library/react'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; import { setupServer } from 'msw/node'; import { ComponentType, PropsWithChildren, useState } from 'react'; import { Provider } from 'react-redux'; +import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; import { mockCalendar, mockConfigEndpoint, @@ -33,9 +34,11 @@ import { createStore } from '../../../../store'; import { initializeStore } from '../../../../store/store'; import { MeetingDetailsContent } from './MeetingDetailsContent'; -jest.mock('@matrix-widget-toolkit/api', () => ({ - ...jest.requireActual('@matrix-widget-toolkit/api'), - extractWidgetApiParameters: jest.fn(), +vi.mock('@matrix-widget-toolkit/api', async () => ({ + ...(await vi.importActual( + '@matrix-widget-toolkit/api', + )), + extractWidgetApiParameters: vi.fn(), })); const server = setupServer(); @@ -56,7 +59,7 @@ describe('', () => { beforeEach(() => { mockConfigEndpoint(server); mockMeetingSharingInformationEndpoint(server); - jest.mocked(extractWidgetApiParameters).mockReturnValue({ + vi.mocked(extractWidgetApiParameters).mockReturnValue({ clientOrigin: 'http://element.local', widgetId: '', }); @@ -120,7 +123,7 @@ describe('', () => { { wrapper: Wrapper }, ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should show meeting with recurring rule', () => { diff --git a/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsContent/MeetingDetailsParticipants.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsContent/MeetingDetailsParticipants.test.tsx index fb19b928..df6a9488 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsContent/MeetingDetailsParticipants.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsContent/MeetingDetailsParticipants.test.tsx @@ -18,10 +18,11 @@ import { extractWidgetApiParameters } from '@matrix-widget-toolkit/api'; import { WidgetApiMockProvider } from '@matrix-widget-toolkit/react'; import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; import { render, screen, within } from '@testing-library/react'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; import { setupServer } from 'msw/lib/node'; import { ComponentType, PropsWithChildren, useState } from 'react'; import { Provider } from 'react-redux'; +import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; import { mockConfigEndpoint, mockCreateMeetingRoom, @@ -34,9 +35,11 @@ import { createStore } from '../../../../store'; import { initializeStore } from '../../../../store/store'; import { MeetingDetailsParticipants } from './MeetingDetailsParticipants'; -jest.mock('@matrix-widget-toolkit/api', () => ({ - ...jest.requireActual('@matrix-widget-toolkit/api'), - extractWidgetApiParameters: jest.fn(), +vi.mock('@matrix-widget-toolkit/api', async () => ({ + ...(await vi.importActual( + '@matrix-widget-toolkit/api', + )), + extractWidgetApiParameters: vi.fn(), })); const server = setupServer(); @@ -99,7 +102,7 @@ describe('', () => { ]; beforeEach(() => { - jest.mocked(extractWidgetApiParameters).mockReturnValue({ + vi.mocked(extractWidgetApiParameters).mockReturnValue({ clientOrigin: 'http://element.local', widgetId: '', }); @@ -165,7 +168,7 @@ describe('', () => { { wrapper: Wrapper }, ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should just the participants list if the creator not in the room', () => { diff --git a/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsContent/MeetingDetailsShare/MeetingDetailsShare.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsContent/MeetingDetailsShare/MeetingDetailsShare.test.tsx index 05639f29..ad7415a9 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsContent/MeetingDetailsShare/MeetingDetailsShare.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsContent/MeetingDetailsShare/MeetingDetailsShare.test.tsx @@ -19,10 +19,11 @@ import { WidgetApiMockProvider } from '@matrix-widget-toolkit/react'; import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; import { render, screen, within } from '@testing-library/react'; import userEvent from '@testing-library/user-event'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; import { setupServer } from 'msw/node'; import { ComponentType, PropsWithChildren, useState } from 'react'; import { Provider } from 'react-redux'; +import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; import { mockCalendarEntry, mockConfigEndpoint, @@ -34,14 +35,14 @@ import { createStore } from '../../../../../store'; import { initializeStore } from '../../../../../store/store'; import { MeetingDetailsShare } from './MeetingDetailsShare'; -jest.mock('@matrix-widget-toolkit/api', () => ({ - ...jest.requireActual('@matrix-widget-toolkit/api'), - extractWidgetApiParameters: jest.fn(), +vi.mock('@matrix-widget-toolkit/api', async () => ({ + ...(await vi.importActual( + '@matrix-widget-toolkit/api', + )), + extractWidgetApiParameters: vi.fn(), })); -const extractWidgetApiParameters = jest.mocked( - extractWidgetApiParametersMocked, -); +const extractWidgetApiParameters = vi.mocked(extractWidgetApiParametersMocked); const server = setupServer(); @@ -104,7 +105,7 @@ describe('', () => { wrapper: Wrapper, }); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should open the email dialog', async () => { diff --git a/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsContent/MeetingDetailsShare/ShareDialog.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsContent/MeetingDetailsShare/ShareDialog.test.tsx index 42904182..56fbf90c 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsContent/MeetingDetailsShare/ShareDialog.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsContent/MeetingDetailsShare/ShareDialog.test.tsx @@ -17,12 +17,13 @@ import { render, screen, within } from '@testing-library/react'; import { renderHook } from '@testing-library/react-hooks'; import userEvent from '@testing-library/user-event'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; import { act } from 'react-dom/test-utils'; +import { describe, expect, it, vi } from 'vitest'; import { ShareDialog, useShareDialog } from './ShareDialog'; describe('', () => { - const onClose = jest.fn(); + const onClose = vi.fn(); it('should render without exploring', () => { render( @@ -58,7 +59,7 @@ describe('', () => { />, ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should render children in the dialog', () => { diff --git a/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsHeader/DeleteMeetingDialog.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsHeader/DeleteMeetingDialog.test.tsx index c7249052..af81dfc5 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsHeader/DeleteMeetingDialog.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsHeader/DeleteMeetingDialog.test.tsx @@ -18,9 +18,10 @@ import { WidgetApiMockProvider } from '@matrix-widget-toolkit/react'; import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; import { render, screen, waitFor, within } from '@testing-library/react'; import userEvent from '@testing-library/user-event'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; import { ComponentType, PropsWithChildren, useState } from 'react'; import { Provider } from 'react-redux'; +import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; import { acknowledgeAllEvents, mockCalendarEntry, @@ -42,7 +43,7 @@ afterEach(() => widgetApi.stop()); beforeEach(() => (widgetApi = mockWidgetApi())); describe('', () => { - const onClose = jest.fn(); + const onClose = vi.fn(); let Wrapper: ComponentType>; beforeEach(() => { @@ -94,7 +95,7 @@ describe('', () => { { wrapper: Wrapper }, ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should delete the meeting', async () => { diff --git a/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsHeader/DeleteMeetingDialog.tsx b/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsHeader/DeleteMeetingDialog.tsx index a8453dfc..30ddc7ed 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsHeader/DeleteMeetingDialog.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsHeader/DeleteMeetingDialog.tsx @@ -24,7 +24,7 @@ import { isRecurringCalendarSourceEntry, } from '@nordeck/matrix-meetings-calendar'; import { createAsyncThunk, createSelector } from '@reduxjs/toolkit'; -import { isEqual } from 'lodash'; +import { isEqual } from 'lodash-es'; import { DispatchWithoutAction, Fragment, useCallback, useState } from 'react'; import { useTranslation } from 'react-i18next'; import { diff --git a/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsHeader/MeetingDetailsHeader.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsHeader/MeetingDetailsHeader.test.tsx index 5055dccc..0761ae3e 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsHeader/MeetingDetailsHeader.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsHeader/MeetingDetailsHeader.test.tsx @@ -19,10 +19,11 @@ import { WidgetApiMockProvider } from '@matrix-widget-toolkit/react'; import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; import { render, screen, waitFor, within } from '@testing-library/react'; import userEvent from '@testing-library/user-event'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; import { setupServer } from 'msw/node'; import { ComponentType, PropsWithChildren, useState } from 'react'; import { Provider } from 'react-redux'; +import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; import { acknowledgeAllEvents, mockCalendar, @@ -43,14 +44,14 @@ import { } from '../../ScheduleMeetingModal'; import { MeetingDetailsHeader } from './MeetingDetailsHeader'; -jest.mock('@matrix-widget-toolkit/api', () => ({ - ...jest.requireActual('@matrix-widget-toolkit/api'), - extractWidgetApiParameters: jest.fn(), +vi.mock('@matrix-widget-toolkit/api', async () => ({ + ...(await vi.importActual( + '@matrix-widget-toolkit/api', + )), + extractWidgetApiParameters: vi.fn(), })); -const extractWidgetApiParameters = jest.mocked( - extractWidgetApiParametersMocked, -); +const extractWidgetApiParameters = vi.mocked(extractWidgetApiParametersMocked); const server = setupServer(); @@ -65,11 +66,11 @@ afterEach(() => widgetApi.stop()); beforeEach(() => (widgetApi = mockWidgetApi())); describe('', () => { - const onClose = jest.fn(); + const onClose = vi.fn(); let Wrapper: ComponentType>; beforeEach(() => { - jest.mocked(extractWidgetApiParameters).mockReturnValue({ + vi.mocked(extractWidgetApiParameters).mockReturnValue({ clientOrigin: 'http://element.local', widgetId: '', }); @@ -96,7 +97,7 @@ describe('', () => { afterEach(() => { // Restore the spy on Date.now() - jest.restoreAllMocks(); + vi.restoreAllMocks(); }); it('should render without exploding', () => { @@ -120,7 +121,7 @@ describe('', () => { { wrapper: Wrapper }, ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should close the expended meeting dialog', async () => { diff --git a/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsHeader/MeetingDetailsJoinButton.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsHeader/MeetingDetailsJoinButton.test.tsx index 68e5b365..166c39d2 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsHeader/MeetingDetailsJoinButton.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsHeader/MeetingDetailsJoinButton.test.tsx @@ -19,18 +19,19 @@ import { WidgetApiMockProvider } from '@matrix-widget-toolkit/react'; import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; import { render, screen } from '@testing-library/react'; import userEvent from '@testing-library/user-event'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; import { ComponentType, PropsWithChildren } from 'react'; +import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; import { MeetingDetailsJoinButton } from './MeetingDetailsJoinButton'; -jest.mock('@matrix-widget-toolkit/api', () => ({ - ...jest.requireActual('@matrix-widget-toolkit/api'), - extractWidgetApiParameters: jest.fn(), +vi.mock('@matrix-widget-toolkit/api', async () => ({ + ...(await vi.importActual( + '@matrix-widget-toolkit/api', + )), + extractWidgetApiParameters: vi.fn(), })); -const extractWidgetApiParameters = jest.mocked( - extractWidgetApiParametersMocked, -); +const extractWidgetApiParameters = vi.mocked(extractWidgetApiParametersMocked); let widgetApi: MockedWidgetApi; @@ -62,7 +63,7 @@ describe('', () => { { wrapper: Wrapper }, ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should have no accessibility violations in breakout session mode', async () => { @@ -74,7 +75,7 @@ describe('', () => { { wrapper: Wrapper }, ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should navigate to the room', async () => { diff --git a/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsHeader/OpenXchangeButton/OpenXchangeButton.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsHeader/OpenXchangeButton/OpenXchangeButton.test.tsx index 4a83ba5d..5f1eca39 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsHeader/OpenXchangeButton/OpenXchangeButton.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsHeader/OpenXchangeButton/OpenXchangeButton.test.tsx @@ -17,10 +17,11 @@ import { WidgetApiMockProvider } from '@matrix-widget-toolkit/react'; import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; import { render, screen, waitFor } from '@testing-library/react'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; import { setupServer } from 'msw/node'; import { ComponentType, PropsWithChildren, useState } from 'react'; import { Provider } from 'react-redux'; +import { afterEach, beforeEach, describe, expect, it } from 'vitest'; import { mockConfigEndpoint } from '../../../../../lib/testUtils'; import { createStore } from '../../../../../store'; import { initializeStore } from '../../../../../store/store'; @@ -85,7 +86,7 @@ describe('', () => { ), ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should have no accessibility violations, if button is disabled', async () => { @@ -102,7 +103,7 @@ describe('', () => { screen.findByRole('button', { name: /edit/i }), ).resolves.toBeInTheDocument(); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should render button if external reference is present', async () => { diff --git a/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsHeader/OpenXchangeButton/index.ts b/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsHeader/OpenXchangeButton/index.ts index e9736f44..c1e98436 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsHeader/OpenXchangeButton/index.ts +++ b/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsHeader/OpenXchangeButton/index.ts @@ -14,5 +14,5 @@ * limitations under the License. */ -export { OpenXchangeButton } from './OpenXchangeButton'; export { getOpenXChangeExternalReference } from './openXchange'; +export { OpenXchangeButton } from './OpenXchangeButton'; diff --git a/matrix-meetings-widget/src/components/meetings/MeetingsCalendar/MeetingsCalendar.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingsCalendar/MeetingsCalendar.test.tsx index cd4b55f3..1305042c 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingsCalendar/MeetingsCalendar.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingsCalendar/MeetingsCalendar.test.tsx @@ -19,10 +19,11 @@ import { WidgetApiMockProvider } from '@matrix-widget-toolkit/react'; import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; import { render, screen, waitFor, within } from '@testing-library/react'; import userEvent from '@testing-library/user-event'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; import { setupServer } from 'msw/node'; import { ComponentType, PropsWithChildren, useState } from 'react'; import { Provider } from 'react-redux'; +import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; import { mockCalendar, mockConfigEndpoint, @@ -33,9 +34,11 @@ import { createStore } from '../../../store'; import { initializeStore } from '../../../store/store'; import { MeetingsCalendar } from './MeetingsCalendar'; -jest.mock('@matrix-widget-toolkit/api', () => ({ - ...jest.requireActual('@matrix-widget-toolkit/api'), - extractWidgetApiParameters: jest.fn(), +vi.mock('@matrix-widget-toolkit/api', async () => ({ + ...(await vi.importActual( + '@matrix-widget-toolkit/api', + )), + extractWidgetApiParameters: vi.fn(), })); const server = setupServer(); @@ -50,16 +53,13 @@ afterEach(() => widgetApi.stop()); beforeEach(() => (widgetApi = mockWidgetApi())); -// The DOM is quite complex and big, therefore we have to increase the timeout -jest.setTimeout(15000); - describe('', () => { - const onShowMore = jest.fn(); + const onShowMore = vi.fn(); let Wrapper: ComponentType>; beforeEach(() => { - jest.mocked(extractWidgetApiParameters).mockReturnValue({ + vi.mocked(extractWidgetApiParameters).mockReturnValue({ clientOrigin: 'http://element.local', widgetId: '', }); @@ -163,12 +163,12 @@ describe('', () => { // We mock the offsetHeight as js-dom is not providing layout causing // fullcalendar not being able to calculate the size of the events and // hiding them instead. - jest - .spyOn(HTMLElement.prototype, 'offsetHeight', 'get') - .mockImplementation(() => 10); + vi.spyOn(HTMLElement.prototype, 'offsetHeight', 'get').mockImplementation( + () => 10, + ); // We also mock getBoundingClientRect to support the more link - jest.spyOn(HTMLElement.prototype, 'getBoundingClientRect').mockReturnValue({ + vi.spyOn(HTMLElement.prototype, 'getBoundingClientRect').mockReturnValue({ bottom: 1, height: 1, left: 1, @@ -177,7 +177,7 @@ describe('', () => { width: 1, x: 1, y: 1, - toJSON: jest.fn(), + toJSON: vi.fn(), }); }); @@ -268,7 +268,7 @@ describe('', () => { // disabled aria-required-children because structure of roles is not correct // in fullcalendar expect( - await axe(container, { + await axe.run(container, { rules: { 'aria-required-children': { enabled: false }, }, @@ -346,7 +346,7 @@ describe('', () => { // disabled aria-required-children because structure of roles is not correct // in fullcalendar expect( - await axe(container, { + await axe.run(container, { rules: { 'aria-required-children': { enabled: false }, }, @@ -430,7 +430,7 @@ describe('', () => { // disabled aria-required-children because structure of roles is not correct // in fullcalendar expect( - await axe(container, { + await axe.run(container, { rules: { 'aria-required-children': { enabled: false }, }, @@ -507,7 +507,7 @@ describe('', () => { // disabled aria-required-children because structure of roles is not correct //in fullcalendar expect( - await axe(container, { + await axe.run(container, { rules: { 'aria-required-children': { enabled: false }, }, diff --git a/matrix-meetings-widget/src/components/meetings/MeetingsCalendar/MeetingsCalendar.tsx b/matrix-meetings-widget/src/components/meetings/MeetingsCalendar/MeetingsCalendar.tsx index 1e455ca2..937bfb16 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingsCalendar/MeetingsCalendar.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingsCalendar/MeetingsCalendar.tsx @@ -27,7 +27,7 @@ import deLocale from '@fullcalendar/core/locales/de'; import FullCalendar from '@fullcalendar/react'; import { useWidgetApi } from '@matrix-widget-toolkit/react'; import { unstable_useId as useId } from '@mui/utils'; -import { isEqual } from 'lodash'; +import { isEqual } from 'lodash-es'; import { DateTime } from 'luxon'; import { ReactElement, diff --git a/matrix-meetings-widget/src/components/meetings/MeetingsCalendar/MeetingsCalendarDetailsDialog.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingsCalendar/MeetingsCalendarDetailsDialog.test.tsx index 99cef319..5c18d797 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingsCalendar/MeetingsCalendarDetailsDialog.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingsCalendar/MeetingsCalendarDetailsDialog.test.tsx @@ -19,10 +19,19 @@ import { WidgetApiMockProvider } from '@matrix-widget-toolkit/react'; import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; import { render, screen, waitFor, within } from '@testing-library/react'; import userEvent from '@testing-library/user-event'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; import { setupServer } from 'msw/node'; import { ComponentType, PropsWithChildren, useState } from 'react'; import { Provider } from 'react-redux'; +import { + afterAll, + afterEach, + beforeAll, + beforeEach, + describe, + expect, + vi, +} from 'vitest'; import { mockCalendar, mockConfigEndpoint, @@ -34,12 +43,14 @@ import { createStore } from '../../../store'; import { initializeStore } from '../../../store/store'; import { MeetingsCalendarDetailsDialog } from './MeetingsCalendarDetailsDialog'; -jest.mock('@matrix-widget-toolkit/api', () => ({ - ...jest.requireActual('@matrix-widget-toolkit/api'), - extractWidgetApiParameters: jest.fn(), +vi.mock('@matrix-widget-toolkit/api', async () => ({ + ...(await vi.importActual( + '@matrix-widget-toolkit/api', + )), + extractWidgetApiParameters: vi.fn(), })); -jest.mock('@mui/material/useMediaQuery'); +vi.mock('@mui/material/useMediaQuery'); const server = setupServer(); @@ -54,12 +65,12 @@ afterEach(() => widgetApi.stop()); beforeEach(() => (widgetApi = mockWidgetApi())); describe('', () => { - const onClose = jest.fn(); + const onClose = vi.fn(); let Wrapper: ComponentType>; beforeEach(() => { - jest.mocked(extractWidgetApiParameters).mockReturnValue({ + vi.mocked(extractWidgetApiParameters).mockReturnValue({ clientOrigin: 'http://element.local', widgetId: '', }); @@ -176,7 +187,7 @@ describe('', () => { }), ).resolves.toBeInTheDocument(); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should show a specific recurrence-id', async () => { diff --git a/matrix-meetings-widget/src/components/meetings/MeetingsCalendar/MeetingsCalendarEvent.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingsCalendar/MeetingsCalendarEvent.test.tsx index f2addab2..15f65a8e 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingsCalendar/MeetingsCalendarEvent.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingsCalendar/MeetingsCalendarEvent.test.tsx @@ -17,9 +17,10 @@ import { WidgetApiMockProvider } from '@matrix-widget-toolkit/react'; import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; import { render, screen } from '@testing-library/react'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; import { ComponentType, PropsWithChildren, useState } from 'react'; import { Provider } from 'react-redux'; +import { afterEach, beforeEach, describe, expect, it } from 'vitest'; import { mockCalendarEntry, mockMeeting, diff --git a/matrix-meetings-widget/src/components/meetings/MeetingsFilter/MeetingsFilter.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingsFilter/MeetingsFilter.test.tsx index 2f2a9073..48beb359 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingsFilter/MeetingsFilter.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingsFilter/MeetingsFilter.test.tsx @@ -16,9 +16,10 @@ import { render, screen } from '@testing-library/react'; import userEvent from '@testing-library/user-event'; -import { axe } from 'jest-axe'; -import { last } from 'lodash'; +import axe from 'axe-core'; +import { last } from 'lodash-es'; import { ComponentType, PropsWithChildren } from 'react'; +import { beforeEach, describe, expect, it, vi } from 'vitest'; import { Filters } from '../../../reducer/meetingsApi'; import { LocalizationProvider } from '../../common/LocalizationProvider'; import { MeetingsFilter } from './MeetingsFilter'; @@ -40,7 +41,7 @@ describe('', () => { }); it('should render without exploding', () => { - render(, { + render(, { wrapper: Wrapper, }); expect( @@ -54,15 +55,15 @@ describe('', () => { it('should have no accessibility violations', async () => { const { container } = render( - , + , { wrapper: Wrapper }, ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should update the date', async () => { - const onFiltersChange = jest.fn(); + const onFiltersChange = vi.fn(); render( , @@ -95,7 +96,7 @@ describe('', () => { }, 10000); it('should update the text', async () => { - const onFiltersChange = jest.fn(); + const onFiltersChange = vi.fn(); render( , @@ -114,7 +115,7 @@ describe('', () => { }); it('should clear the text', async () => { - const onFiltersChange = jest.fn(); + const onFiltersChange = vi.fn(); filters = { startDate: '2020-01-01T00:00:00Z', @@ -141,7 +142,7 @@ describe('', () => { }); it('should update external filter updates', () => { - const onFiltersChange = jest.fn(); + const onFiltersChange = vi.fn(); const filters1 = { startDate: '2021-01-01T00:00:00.000Z', endDate: '2021-01-08T23:59:59.000Z', diff --git a/matrix-meetings-widget/src/components/meetings/MeetingsFilter/MeetingsFilter.tsx b/matrix-meetings-widget/src/components/meetings/MeetingsFilter/MeetingsFilter.tsx index aa50b7b3..91be52d7 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingsFilter/MeetingsFilter.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingsFilter/MeetingsFilter.tsx @@ -16,7 +16,7 @@ import SearchIcon from '@mui/icons-material/Search'; import { InputAdornment, Stack, TextField } from '@mui/material'; -import { isEqual } from 'lodash'; +import { isEqual } from 'lodash-es'; import { DateTime } from 'luxon'; import { ChangeEvent, diff --git a/matrix-meetings-widget/src/components/meetings/MeetingsList/MeetingsList.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingsList/MeetingsList.test.tsx index 64b6c64f..952f9ed0 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingsList/MeetingsList.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingsList/MeetingsList.test.tsx @@ -18,9 +18,10 @@ import { extractWidgetApiParameters as extractWidgetApiParametersMocked } from ' import { WidgetApiMockProvider } from '@matrix-widget-toolkit/react'; import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; import { render, screen, within } from '@testing-library/react'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; import { ComponentType, PropsWithChildren, useState } from 'react'; import { Provider } from 'react-redux'; +import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; import { mockCalendar, mockCreateBreakoutMeetingRoom, @@ -30,14 +31,14 @@ import { createStore } from '../../../store'; import { initializeStore } from '../../../store/store'; import { MeetingsList } from './MeetingsList'; -jest.mock('@matrix-widget-toolkit/api', () => ({ - ...jest.requireActual('@matrix-widget-toolkit/api'), - extractWidgetApiParameters: jest.fn(), +vi.mock('@matrix-widget-toolkit/api', async () => ({ + ...(await vi.importActual( + '@matrix-widget-toolkit/api', + )), + extractWidgetApiParameters: vi.fn(), })); -const extractWidgetApiParameters = jest.mocked( - extractWidgetApiParametersMocked, -); +const extractWidgetApiParameters = vi.mocked(extractWidgetApiParametersMocked); let widgetApi: MockedWidgetApi; @@ -301,7 +302,7 @@ describe('', () => { screen.findByRole('listitem', { name: 'Saturday, 01/01/2022' }), ).resolves.toBeInTheDocument(); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should have no accessibility violations, if empty state', async () => { @@ -321,7 +322,7 @@ describe('', () => { screen.findByRole('listitem', { name: /no meetings scheduled/i }), ).resolves.toBeInTheDocument(); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should filter list by date range', async () => { diff --git a/matrix-meetings-widget/src/components/meetings/MeetingsList/SectionHeadingDivider.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingsList/SectionHeadingDivider.test.tsx index 8d3e51a7..15eb4cab 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingsList/SectionHeadingDivider.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingsList/SectionHeadingDivider.test.tsx @@ -15,7 +15,8 @@ */ import { render, screen } from '@testing-library/react'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; +import { describe, expect, it } from 'vitest'; import { SectionHeadingDivider } from './SectionHeadingDivider'; describe('', () => { @@ -30,6 +31,6 @@ describe('', () => { it('should have no accessibility violations', async () => { const { container } = render(); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); }); diff --git a/matrix-meetings-widget/src/components/meetings/MeetingsNavigation/MeetingsNavigation.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingsNavigation/MeetingsNavigation.test.tsx index a6f9c87a..a65e9447 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingsNavigation/MeetingsNavigation.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingsNavigation/MeetingsNavigation.test.tsx @@ -17,12 +17,13 @@ import { useMediaQuery } from '@mui/material'; import { render, screen, within } from '@testing-library/react'; import userEvent from '@testing-library/user-event'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; import { ComponentType, PropsWithChildren } from 'react'; +import { beforeEach, describe, expect, it, vi } from 'vitest'; import { LocalizationProvider } from '../../common/LocalizationProvider'; import { MeetingsNavigation } from './MeetingsNavigation'; -jest.mock('@mui/material/useMediaQuery'); +vi.mock('@mui/material/useMediaQuery'); describe('', () => { let Wrapper: ComponentType>; @@ -35,9 +36,9 @@ describe('', () => { }); it('should render without exploding', async () => { - jest.mocked(useMediaQuery).mockReturnValue(true); + vi.mocked(useMediaQuery).mockReturnValue(true); - render(, { + render(, { wrapper: Wrapper, }); @@ -59,35 +60,35 @@ describe('', () => { }); it('should have no accessibility violations', async () => { - jest.mocked(useMediaQuery).mockReturnValue(true); + vi.mocked(useMediaQuery).mockReturnValue(true); const { container } = render( - , + , { wrapper: Wrapper }, ); await userEvent.click(screen.getByRole('combobox', { name: 'View' })); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should have no accessibility violations with disabled views', async () => { - jest.mocked(useMediaQuery).mockReturnValue(false); + vi.mocked(useMediaQuery).mockReturnValue(false); const { container } = render( - , + , { wrapper: Wrapper }, ); await userEvent.click(screen.getByRole('combobox', { name: 'View' })); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should select a different view', async () => { - const onViewChange = jest.fn(); + const onViewChange = vi.fn(); - jest.mocked(useMediaQuery).mockReturnValue(true); + vi.mocked(useMediaQuery).mockReturnValue(true); render(, { wrapper: Wrapper, @@ -103,9 +104,9 @@ describe('', () => { }); it('should disable some calendar views on a small screen', async () => { - jest.mocked(useMediaQuery).mockReturnValue(false); + vi.mocked(useMediaQuery).mockReturnValue(false); - render(, { + render(, { wrapper: Wrapper, }); @@ -142,9 +143,9 @@ describe('', () => { }); it('should switch to the day view if the screen becomes to small', () => { - const onViewChange = jest.fn(); + const onViewChange = vi.fn(); - jest.mocked(useMediaQuery).mockReturnValue(false); + vi.mocked(useMediaQuery).mockReturnValue(false); render(, { wrapper: Wrapper, diff --git a/matrix-meetings-widget/src/components/meetings/MeetingsPanel/BreakoutSessionsMessageForm.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingsPanel/BreakoutSessionsMessageForm.test.tsx index c445eae7..8c9b1170 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingsPanel/BreakoutSessionsMessageForm.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingsPanel/BreakoutSessionsMessageForm.test.tsx @@ -18,9 +18,10 @@ import { WidgetApiMockProvider } from '@matrix-widget-toolkit/react'; import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; import { render, screen, waitFor, within } from '@testing-library/react'; import userEvent from '@testing-library/user-event'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; import { ComponentType, PropsWithChildren, useMemo } from 'react'; import { Provider } from 'react-redux'; +import { afterEach, beforeEach, describe, expect, it } from 'vitest'; import { acknowledgeAllEvents } from '../../../lib/testUtils'; import { cancelRunningAwaitAcknowledgements } from '../../../reducer/meetingsApi/helpers'; import { createStore } from '../../../store'; @@ -79,7 +80,7 @@ describe('', () => { wrapper: Wrapper, }); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should send a message', async () => { diff --git a/matrix-meetings-widget/src/components/meetings/MeetingsPanel/CreateMeetingForm.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingsPanel/CreateMeetingForm.test.tsx index a3ba98cc..be45f4f0 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingsPanel/CreateMeetingForm.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingsPanel/CreateMeetingForm.test.tsx @@ -18,9 +18,10 @@ import { WidgetApiMockProvider } from '@matrix-widget-toolkit/react'; import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; import { render, screen, waitFor } from '@testing-library/react'; import userEvent from '@testing-library/user-event'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; import { ComponentType, PropsWithChildren, useState } from 'react'; import { Provider } from 'react-redux'; +import { afterEach, beforeEach, describe, expect, it } from 'vitest'; import { createStore } from '../../../store'; import { initializeStore } from '../../../store/store'; import { LocalizationProvider } from '../../common/LocalizationProvider'; @@ -66,7 +67,7 @@ describe('', () => { it('should have not accessibility violations', async () => { const { container } = render(, { wrapper: Wrapper }); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should create new meeting', async () => { diff --git a/matrix-meetings-widget/src/components/meetings/MeetingsPanel/MeetingsPanel.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingsPanel/MeetingsPanel.test.tsx index 918efc73..51ad1646 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingsPanel/MeetingsPanel.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingsPanel/MeetingsPanel.test.tsx @@ -20,9 +20,10 @@ import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; import { useMediaQuery } from '@mui/material'; import { render, screen, waitFor, within } from '@testing-library/react'; import userEvent from '@testing-library/user-event'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; import { ComponentType, PropsWithChildren, useState } from 'react'; import { Provider } from 'react-redux'; +import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; import { acknowledgeAllEvents, mockCalendar, @@ -38,14 +39,13 @@ import { LocalizationProvider } from '../../common/LocalizationProvider'; import { SetupBreakoutSessionsModalResult } from '../SetupBreakoutSessionsModal'; import { MeetingsPanel } from './MeetingsPanel'; -// The DOM is quite complex and big, therefore we have to increase the timeout -jest.setTimeout(15000); +vi.mock('@mui/material/useMediaQuery'); -jest.mock('@mui/material/useMediaQuery'); - -jest.mock('@matrix-widget-toolkit/api', () => ({ - ...jest.requireActual('@matrix-widget-toolkit/api'), - extractWidgetApiParameters: jest.fn(), +vi.mock('@matrix-widget-toolkit/api', async () => ({ + ...(await vi.importActual( + '@matrix-widget-toolkit/api', + )), + extractWidgetApiParameters: vi.fn(), })); function enableBreakoutSessionView() { @@ -76,23 +76,23 @@ afterEach(() => widgetApi.stop()); beforeEach(() => (widgetApi = mockWidgetApi())); -afterEach(() => jest.useRealTimers()); +afterEach(() => vi.useRealTimers()); describe('', () => { let Wrapper: ComponentType>; beforeEach(() => { localStorage.clear(); - jest.mocked(useMediaQuery).mockReturnValue(true); + vi.mocked(useMediaQuery).mockReturnValue(true); - jest.mocked(extractWidgetApiParametersMocked).mockReturnValue({ + vi.mocked(extractWidgetApiParametersMocked).mockReturnValue({ clientOrigin: 'http://element.local', widgetId: '', }); - jest - .spyOn(Date, 'now') - .mockImplementation(() => +new Date('2022-03-01T10:10:12.345Z')); + vi.spyOn(Date, 'now').mockImplementation( + () => +new Date('2022-03-01T10:10:12.345Z'), + ); mockCreateMeetingRoom(widgetApi, { parentRoomId: '!room-id', @@ -122,12 +122,12 @@ describe('', () => { // We mock the offsetHeight as js-dom is not providing layout causing // fullcalendar not being able to calculate the size of the events and // hiding them instead. - jest - .spyOn(HTMLElement.prototype, 'offsetHeight', 'get') - .mockImplementation(() => 10); + vi.spyOn(HTMLElement.prototype, 'offsetHeight', 'get').mockImplementation( + () => 10, + ); // We also mock getBoundingClientRect to support the more link - jest.spyOn(HTMLElement.prototype, 'getBoundingClientRect').mockReturnValue({ + vi.spyOn(HTMLElement.prototype, 'getBoundingClientRect').mockReturnValue({ bottom: 1, height: 1, left: 1, @@ -136,7 +136,7 @@ describe('', () => { width: 1, x: 1, y: 1, - toJSON: jest.fn(), + toJSON: vi.fn(), }); }); @@ -190,7 +190,7 @@ describe('', () => { screen.findByRole('listitem', { name: /my breakout session/i }), ).resolves.toBeInTheDocument(); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should have no accessibility violations, if list view', async () => { @@ -200,7 +200,7 @@ describe('', () => { screen.findByRole('listitem', { name: /an important meeting/i }), ).resolves.toBeInTheDocument(); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should have no accessibility violations, if list view with invitations', async () => { @@ -214,7 +214,7 @@ describe('', () => { screen.findByRole('button', { name: /invitations/i }), ).resolves.toBeInTheDocument(); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should have no accessibility violations, if day view', async () => { @@ -228,7 +228,7 @@ describe('', () => { // disabled aria-required-children because structure of roles is not correct // in fullcalendar expect( - await axe(container, { + await axe.run(container, { rules: { 'aria-required-children': { enabled: false }, }, @@ -247,7 +247,7 @@ describe('', () => { // disabled aria-required-children because structure of roles is not correct // in fullcalendar expect( - await axe(container, { + await axe.run(container, { rules: { 'aria-required-children': { enabled: false }, }, @@ -266,7 +266,7 @@ describe('', () => { // disabled aria-required-children because structure of roles is not correct // in fullcalendar expect( - await axe(container, { + await axe.run(container, { rules: { 'aria-required-children': { enabled: false }, }, @@ -285,7 +285,7 @@ describe('', () => { // disabled aria-required-children because structure of roles is not correct // in fullcalendar expect( - await axe(container, { + await axe.run(container, { rules: { 'aria-required-children': { enabled: false }, }, diff --git a/matrix-meetings-widget/src/components/meetings/MeetingsToolbar/MeetingsToolbar.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingsToolbar/MeetingsToolbar.test.tsx index daadf094..b64f1148 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingsToolbar/MeetingsToolbar.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingsToolbar/MeetingsToolbar.test.tsx @@ -18,9 +18,10 @@ import { WidgetApiMockProvider } from '@matrix-widget-toolkit/react'; import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; import { useMediaQuery } from '@mui/material'; import { render, screen, waitFor } from '@testing-library/react'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; import { ComponentType, PropsWithChildren, useState } from 'react'; import { Provider } from 'react-redux'; +import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; import { mockPowerLevelsEvent } from '../../../lib/testUtils'; import { Filters } from '../../../reducer/meetingsApi'; import { createStore } from '../../../store'; @@ -28,7 +29,7 @@ import { initializeStore } from '../../../store/store'; import { LocalizationProvider } from '../../common/LocalizationProvider'; import { MeetingsToolbar } from './MeetingsToolbar'; -jest.mock('@mui/material/useMediaQuery'); +vi.mock('@mui/material/useMediaQuery'); describe('', () => { let Wrapper: ComponentType>; @@ -38,7 +39,7 @@ describe('', () => { afterEach(() => widgetApi.stop()); beforeEach(() => { - jest.mocked(useMediaQuery).mockReturnValue(true); + vi.mocked(useMediaQuery).mockReturnValue(true); filters = { startDate: '2020-06-07T00:00:00.000+00:00', @@ -70,9 +71,9 @@ describe('', () => { render( , { wrapper: Wrapper }, @@ -109,9 +110,9 @@ describe('', () => { const { container } = render( , { wrapper: Wrapper }, @@ -124,9 +125,9 @@ describe('', () => { const { rerender } = render( , { wrapper: Wrapper }, @@ -138,14 +139,14 @@ describe('', () => { name: 'Previous day', }); - jest.mocked(useMediaQuery).mockReturnValue(false); + vi.mocked(useMediaQuery).mockReturnValue(false); rerender( , ); @@ -159,9 +160,9 @@ describe('', () => { render( , { wrapper: Wrapper }, diff --git a/matrix-meetings-widget/src/components/meetings/MeetingsToolbar/MeetingsToolbarButtons.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingsToolbar/MeetingsToolbarButtons.test.tsx index 4016b6a1..b2c8d239 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingsToolbar/MeetingsToolbarButtons.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingsToolbar/MeetingsToolbarButtons.test.tsx @@ -16,17 +16,18 @@ import { render, screen } from '@testing-library/react'; import userEvent from '@testing-library/user-event'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; +import { afterEach, describe, expect, it, vi } from 'vitest'; import { MeetingsToolbarButtons } from './MeetingsToolbarButtons'; -afterEach(() => jest.restoreAllMocks()); +afterEach(() => vi.restoreAllMocks()); describe('', () => { it('should render without exploding in list view', () => { render( , @@ -45,7 +46,7 @@ describe('', () => { render( , @@ -64,7 +65,7 @@ describe('', () => { render( , @@ -83,7 +84,7 @@ describe('', () => { render( , @@ -102,7 +103,7 @@ describe('', () => { render( , @@ -121,21 +122,21 @@ describe('', () => { const { container } = render( , ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should change the filter to the current week', async () => { - const onRangeChange = jest.fn(); + const onRangeChange = vi.fn(); - jest - .spyOn(Date, 'now') - .mockImplementation(() => +new Date('2020-06-15T13:00:00.000Z')); + vi.spyOn(Date, 'now').mockImplementation( + () => +new Date('2020-06-15T13:00:00.000Z'), + ); render( ', () => { }); it('should change the filter to the previous week', async () => { - const onRangeChange = jest.fn(); + const onRangeChange = vi.fn(); render( ', () => { }); it('should change the filter to the next week', async () => { - const onRangeChange = jest.fn(); + const onRangeChange = vi.fn(); render( ', () => { it('should render without exploding', () => { - render(); + render(); expect(screen.getByRole('textbox', { name: /Search/i })).toHaveValue(''); }); it('should have no accessibility violations', async () => { const { container } = render( - , + , ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should call onSearchChange when the search field is updated', async () => { - const onSearchChange = jest.fn(); + const onSearchChange = vi.fn(); render(); @@ -47,7 +48,7 @@ describe('', () => { it('should update the search when the filter changes', () => { const { rerender } = render( - , + , ); expect(screen.getByRole('textbox', { name: 'Search' })).toHaveValue( @@ -55,7 +56,7 @@ describe('', () => { ); rerender( - , + , ); expect(screen.getByRole('textbox', { name: 'Search' })).toHaveValue( 'Other text', diff --git a/matrix-meetings-widget/src/components/meetings/MeetingsToolbar/moveFilterRange.test.ts b/matrix-meetings-widget/src/components/meetings/MeetingsToolbar/moveFilterRange.test.ts index f7ac6424..16e495b5 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingsToolbar/moveFilterRange.test.ts +++ b/matrix-meetings-widget/src/components/meetings/MeetingsToolbar/moveFilterRange.test.ts @@ -14,9 +14,10 @@ * limitations under the License. */ +import { afterEach, describe, expect, it, vi } from 'vitest'; import { moveFilterRange } from './moveFilterRange'; -afterEach(() => jest.useRealTimers()); +afterEach(() => vi.useRealTimers()); describe('moveFilterRange', () => { it('move filter plus for day', () => { @@ -48,8 +49,8 @@ describe('moveFilterRange', () => { }); it('move filter today for day', () => { - jest.useFakeTimers(); - jest.setSystemTime(new Date('2020-06-15T13:00:00.000Z')); + vi.useFakeTimers(); + vi.setSystemTime(new Date('2020-06-15T13:00:00.000Z')); expect( moveFilterRange( @@ -93,8 +94,8 @@ describe('moveFilterRange', () => { }); it('move filter today for week', () => { - jest.useFakeTimers(); - jest.setSystemTime(new Date('2020-06-15T13:00:00.000Z')); + vi.useFakeTimers(); + vi.setSystemTime(new Date('2020-06-15T13:00:00.000Z')); expect( moveFilterRange( @@ -138,8 +139,8 @@ describe('moveFilterRange', () => { }); it('move filter today for work week', () => { - jest.useFakeTimers(); - jest.setSystemTime(new Date('2020-06-15T13:00:00.000Z')); + vi.useFakeTimers(); + vi.setSystemTime(new Date('2020-06-15T13:00:00.000Z')); expect( moveFilterRange( @@ -183,8 +184,8 @@ describe('moveFilterRange', () => { }); it('move filter today for month', () => { - jest.useFakeTimers(); - jest.setSystemTime(new Date('2020-07-15T13:00:00.000Z')); + vi.useFakeTimers(); + vi.setSystemTime(new Date('2020-07-15T13:00:00.000Z')); expect( moveFilterRange( @@ -228,8 +229,8 @@ describe('moveFilterRange', () => { }); it('move filter today for list', () => { - jest.useFakeTimers(); - jest.setSystemTime(new Date('2020-06-15T13:00:00.000Z')); + vi.useFakeTimers(); + vi.setSystemTime(new Date('2020-06-15T13:00:00.000Z')); expect( moveFilterRange( diff --git a/matrix-meetings-widget/src/components/meetings/MemberSelectionDropdown/MemberSelectionDropdown.test.tsx b/matrix-meetings-widget/src/components/meetings/MemberSelectionDropdown/MemberSelectionDropdown.test.tsx index 3b332541..83c1fc00 100644 --- a/matrix-meetings-widget/src/components/meetings/MemberSelectionDropdown/MemberSelectionDropdown.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MemberSelectionDropdown/MemberSelectionDropdown.test.tsx @@ -18,9 +18,10 @@ import { WidgetApiMockProvider } from '@matrix-widget-toolkit/react'; import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; import { render, screen } from '@testing-library/react'; import userEvent from '@testing-library/user-event'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; import { ComponentType, PropsWithChildren, useMemo } from 'react'; import { Provider } from 'react-redux'; +import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; import { MemberSelectionDropdown } from '.'; import { mockPowerLevelsEvent, mockRoomMember } from '../../../lib/testUtils'; import { createStore, initializeStore } from '../../../store/store'; @@ -71,7 +72,7 @@ describe('', () => { availableMembers={allMembers} selectedMembers={allMembers.filter((se) => se.userId === '@user-id')} label="Members" - onSelectedMembersUpdated={jest.fn()} + onSelectedMembersUpdated={vi.fn()} ownUserPopupContent="This is you" />, { wrapper: Wrapper }, @@ -97,7 +98,7 @@ describe('', () => { availableMembers={allMembers} selectedMembers={allMembers.filter((se) => se.userId === '@user-id')} label="Members" - onSelectedMembersUpdated={jest.fn()} + onSelectedMembersUpdated={vi.fn()} ownUserPopupContent="This is you" />, { wrapper: Wrapper }, @@ -107,7 +108,7 @@ describe('', () => { }); it('should add own member', async () => { - const onUpdate = jest.fn(); + const onUpdate = vi.fn(); render( ', () => { }); it('should not duplicate own member', async () => { - const onUpdate = jest.fn(); + const onUpdate = vi.fn(); render( ', () => { }); it('should not add own member if member event is missing', async () => { - const onUpdate = jest.fn(); + const onUpdate = vi.fn(); render( ', () => { }); it('should remove member', async () => { - const onUpdate = jest.fn(); + const onUpdate = vi.fn(); render( ', () => { }); it('should not remove own member', async () => { - const onUpdate = jest.fn(); + const onUpdate = vi.fn(); render( ', () => { }); it('should not remove member with higher power level', async () => { - const onUpdate = jest.fn(); + const onUpdate = vi.fn(); widgetApi.mockSendStateEvent( mockRoomMember({ @@ -267,7 +268,7 @@ describe('', () => { }); it('should be able to remove the member with higher power level if he has not joined the room yet', async () => { - const onUpdate = jest.fn(); + const onUpdate = vi.fn(); widgetApi.mockSendStateEvent( mockRoomMember({ @@ -335,7 +336,7 @@ describe('', () => { availableMembers={allMembers.slice(1)} selectedMembers={allMembers} label="Members" - onSelectedMembersUpdated={jest.fn()} + onSelectedMembersUpdated={vi.fn()} ownUserPopupContent="This is you" />, { wrapper: Wrapper }, @@ -353,7 +354,7 @@ describe('', () => { availableMembers={[]} selectedMembers={[]} label="Members" - onSelectedMembersUpdated={jest.fn()} + onSelectedMembersUpdated={vi.fn()} ownUserPopupContent="This is you" loading />, @@ -368,7 +369,7 @@ describe('', () => { availableMembers={[]} selectedMembers={[]} label="Members" - onSelectedMembersUpdated={jest.fn()} + onSelectedMembersUpdated={vi.fn()} ownUserPopupContent="This is you" loading={false} error diff --git a/matrix-meetings-widget/src/components/meetings/OpenMeetingRoomButton/OpenMeetingRoomButton.test.tsx b/matrix-meetings-widget/src/components/meetings/OpenMeetingRoomButton/OpenMeetingRoomButton.test.tsx index 1a6da692..f5f9d64c 100644 --- a/matrix-meetings-widget/src/components/meetings/OpenMeetingRoomButton/OpenMeetingRoomButton.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/OpenMeetingRoomButton/OpenMeetingRoomButton.test.tsx @@ -19,18 +19,19 @@ import { WidgetApiMockProvider } from '@matrix-widget-toolkit/react'; import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; import { render, screen } from '@testing-library/react'; import userEvent from '@testing-library/user-event'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; import { ComponentType, PropsWithChildren } from 'react'; +import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; import { OpenMeetingRoomButton } from './OpenMeetingRoomButton'; -jest.mock('@matrix-widget-toolkit/api', () => ({ - ...jest.requireActual('@matrix-widget-toolkit/api'), - extractWidgetApiParameters: jest.fn(), +vi.mock('@matrix-widget-toolkit/api', async () => ({ + ...(await vi.importActual( + '@matrix-widget-toolkit/api', + )), + extractWidgetApiParameters: vi.fn(), })); -const extractWidgetApiParameters = jest.mocked( - extractWidgetApiParametersMocked, -); +const extractWidgetApiParameters = vi.mocked(extractWidgetApiParametersMocked); let widgetApi: MockedWidgetApi; @@ -61,7 +62,7 @@ describe('', () => { wrapper: Wrapper, }); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should have no accessibility violations in breakout session mode', async () => { @@ -73,7 +74,7 @@ describe('', () => { { wrapper: Wrapper }, ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should navigate to the room', async () => { diff --git a/matrix-meetings-widget/src/components/meetings/RecurrenceEditor/CustomRecurringMeeting/CustomRecurringMeeting.test.tsx b/matrix-meetings-widget/src/components/meetings/RecurrenceEditor/CustomRecurringMeeting/CustomRecurringMeeting.test.tsx index 4817d676..557e9334 100644 --- a/matrix-meetings-widget/src/components/meetings/RecurrenceEditor/CustomRecurringMeeting/CustomRecurringMeeting.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/RecurrenceEditor/CustomRecurringMeeting/CustomRecurringMeeting.test.tsx @@ -16,28 +16,29 @@ import { fireEvent, render, screen, within } from '@testing-library/react'; import userEvent from '@testing-library/user-event'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; import { ComponentType, PropsWithChildren } from 'react'; import { Frequency } from 'rrule'; +import { beforeEach, describe, expect, it, vi } from 'vitest'; import { CustomRecurringMeeting } from '.'; import { LocalizationProvider } from '../../../common/LocalizationProvider'; import { CustomRuleMode } from '../state'; describe('', () => { - const onCustomFrequencyChange = jest.fn(); - const onCustomIntervalChange = jest.fn(); - const onCustomByWeekdayChange = jest.fn(); - const onCustomRuleModeChange = jest.fn(); - const onCustomMonthChange = jest.fn(); - const onCustomNthMonthdayChange = jest.fn(); - const onCustomWeekdayChange = jest.fn(); - const onCustomNthChange = jest.fn(); + const onCustomFrequencyChange = vi.fn(); + const onCustomIntervalChange = vi.fn(); + const onCustomByWeekdayChange = vi.fn(); + const onCustomRuleModeChange = vi.fn(); + const onCustomMonthChange = vi.fn(); + const onCustomNthMonthdayChange = vi.fn(); + const onCustomWeekdayChange = vi.fn(); + const onCustomNthChange = vi.fn(); let Wrapper: ComponentType>; beforeEach(() => { - jest - .spyOn(Date, 'now') - .mockImplementation(() => +new Date('2022-01-02T13:10:00.000Z')); + vi.spyOn(Date, 'now').mockImplementation( + () => +new Date('2022-01-02T13:10:00.000Z'), + ); Wrapper = ({ children }: PropsWithChildren<{}>) => { return {children}; @@ -104,7 +105,7 @@ describe('', () => { { wrapper: Wrapper }, ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should render with weekly frequency', () => { @@ -177,7 +178,7 @@ describe('', () => { { wrapper: Wrapper }, ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should render with monthly frequency in monthday mode', () => { @@ -314,7 +315,7 @@ describe('', () => { { wrapper: Wrapper }, ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should have no accessibility violations with monthly frequency in weekday mode', async () => { @@ -340,7 +341,7 @@ describe('', () => { { wrapper: Wrapper }, ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should render with yearly frequency in monthday mode', () => { @@ -489,7 +490,7 @@ describe('', () => { { wrapper: Wrapper }, ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should have no accessibility violations with yearly frequency in weekday mode', async () => { @@ -515,7 +516,7 @@ describe('', () => { { wrapper: Wrapper }, ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should change interval', () => { diff --git a/matrix-meetings-widget/src/components/meetings/RecurrenceEditor/CustomRecurringMeeting/CustomWeeklyRecurringMeeting.tsx b/matrix-meetings-widget/src/components/meetings/RecurrenceEditor/CustomRecurringMeeting/CustomWeeklyRecurringMeeting.tsx index 820587e4..490bd19f 100644 --- a/matrix-meetings-widget/src/components/meetings/RecurrenceEditor/CustomRecurringMeeting/CustomWeeklyRecurringMeeting.tsx +++ b/matrix-meetings-widget/src/components/meetings/RecurrenceEditor/CustomRecurringMeeting/CustomWeeklyRecurringMeeting.tsx @@ -23,7 +23,7 @@ import { useTheme, } from '@mui/material'; import { unstable_useId as useId } from '@mui/utils'; -import { sortBy } from 'lodash'; +import { sortBy } from 'lodash-es'; import React, { Dispatch, useCallback } from 'react'; import { useTranslation } from 'react-i18next'; import { localeWeekdays } from '../../../../lib/utils'; diff --git a/matrix-meetings-widget/src/components/meetings/RecurrenceEditor/RecurrenceEditor.test.tsx b/matrix-meetings-widget/src/components/meetings/RecurrenceEditor/RecurrenceEditor.test.tsx index eab6e00b..4bf08f87 100644 --- a/matrix-meetings-widget/src/components/meetings/RecurrenceEditor/RecurrenceEditor.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/RecurrenceEditor/RecurrenceEditor.test.tsx @@ -16,20 +16,21 @@ import { fireEvent, render, screen, within } from '@testing-library/react'; import userEvent from '@testing-library/user-event'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; import { ComponentType, PropsWithChildren } from 'react'; +import { beforeEach, describe, expect, it, vi } from 'vitest'; import { LocalizationProvider } from '../../common/LocalizationProvider'; import { RecurrenceEditor } from './RecurrenceEditor'; describe('', () => { - const onChange = jest.fn(); + const onChange = vi.fn(); const startDate = new Date('2022-01-02T13:10:00.000Z'); let Wrapper: ComponentType>; beforeEach(() => { - jest - .spyOn(Date, 'now') - .mockImplementation(() => +new Date('2022-01-01T13:10:00.000Z')); + vi.spyOn(Date, 'now').mockImplementation( + () => +new Date('2022-01-01T13:10:00.000Z'), + ); Wrapper = ({ children }: PropsWithChildren<{}>) => { return {children}; @@ -86,7 +87,7 @@ describe('', () => { { wrapper: Wrapper }, ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should render with daily preset', () => { @@ -117,7 +118,7 @@ describe('', () => { { wrapper: Wrapper }, ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should render with daily preset and repetition count', () => { @@ -272,7 +273,7 @@ describe('', () => { { wrapper: Wrapper }, ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should change preset to no repetition', async () => { diff --git a/matrix-meetings-widget/src/components/meetings/RecurrenceEditor/RecurringMeetingEnd/RecurringMeetingEnd.test.tsx b/matrix-meetings-widget/src/components/meetings/RecurrenceEditor/RecurringMeetingEnd/RecurringMeetingEnd.test.tsx index b69a7d10..40d6bd5d 100644 --- a/matrix-meetings-widget/src/components/meetings/RecurrenceEditor/RecurringMeetingEnd/RecurringMeetingEnd.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/RecurrenceEditor/RecurringMeetingEnd/RecurringMeetingEnd.test.tsx @@ -16,17 +16,18 @@ import { fireEvent, render, screen, within } from '@testing-library/react'; import userEvent from '@testing-library/user-event'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; import { DateTime } from 'luxon'; import { ComponentType, PropsWithChildren } from 'react'; +import { beforeEach, describe, expect, it, vi } from 'vitest'; import { RecurringMeetingEnd } from '.'; import { LocalizationProvider } from '../../../common/LocalizationProvider'; import { RecurrenceEnd } from '../state'; describe('', () => { - const onAfterMeetingCountChange = jest.fn(); - const onRecurrenceEndChange = jest.fn(); - const onUntilDateChange = jest.fn(); + const onAfterMeetingCountChange = vi.fn(); + const onRecurrenceEndChange = vi.fn(); + const onUntilDateChange = vi.fn(); const startDate = new Date('2022-01-01T13:10:00.000Z'); let Wrapper: ComponentType>; @@ -156,7 +157,7 @@ describe('', () => { { wrapper: Wrapper }, ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should select endless repetition', async () => { @@ -250,7 +251,7 @@ describe('', () => { { target: { value: '05/05/2022' } }, ); - expect(onUntilDateChange.mock.calls.at(-1).at(0).toJSDate()).toEqual( + expect(onUntilDateChange.mock.calls.at(-1)?.at(0).toJSDate()).toEqual( // Explicitly choose the end of the day, as until should be inclusive new Date('2022-05-05T23:59:59.999Z'), ); diff --git a/matrix-meetings-widget/src/components/meetings/RecurrenceEditor/state.ts b/matrix-meetings-widget/src/components/meetings/RecurrenceEditor/state.ts index 4b0a569f..0db4842b 100644 --- a/matrix-meetings-widget/src/components/meetings/RecurrenceEditor/state.ts +++ b/matrix-meetings-widget/src/components/meetings/RecurrenceEditor/state.ts @@ -19,7 +19,7 @@ import { normalizeNumeric, parseRRule, } from '@nordeck/matrix-meetings-calendar'; -import { isEqual, omit } from 'lodash'; +import { isEqual, omit } from 'lodash-es'; import { DateTime } from 'luxon'; import { Dispatch, useReducer } from 'react'; import { Frequency, Options, RRule } from 'rrule'; diff --git a/matrix-meetings-widget/src/components/meetings/ScheduleMeetingModal/ScheduleMeeting.test.tsx b/matrix-meetings-widget/src/components/meetings/ScheduleMeetingModal/ScheduleMeeting.test.tsx index 978aeb29..4598394b 100644 --- a/matrix-meetings-widget/src/components/meetings/ScheduleMeetingModal/ScheduleMeeting.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/ScheduleMeetingModal/ScheduleMeeting.test.tsx @@ -24,11 +24,12 @@ import { within, } from '@testing-library/react'; import userEvent from '@testing-library/user-event'; -import { axe } from 'jest-axe'; -import { repeat } from 'lodash'; +import axe from 'axe-core'; +import { repeat } from 'lodash-es'; import { setupServer } from 'msw/node'; import { ComponentType, PropsWithChildren, useMemo } from 'react'; import { Provider } from 'react-redux'; +import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; import { mockBreakoutSession, mockCalendar, @@ -44,8 +45,6 @@ import { initializeStore } from '../../../store/store'; import { LocalizationProvider } from '../../common/LocalizationProvider'; import { ScheduleMeeting } from './ScheduleMeeting'; -jest.setTimeout(15000); - const server = setupServer(); beforeAll(() => server.listen()); afterEach(() => server.resetHandlers()); @@ -58,7 +57,7 @@ afterEach(() => widgetApi.stop()); beforeEach(() => (widgetApi = mockWidgetApi())); describe('', () => { - const onMeetingChange = jest.fn(); + const onMeetingChange = vi.fn(); let Wrapper: ComponentType>; beforeEach(() => { @@ -71,9 +70,9 @@ describe('', () => { }), ); - jest - .spyOn(Date, 'now') - .mockImplementation(() => +new Date('2022-01-02T13:10:00.000Z')); + vi.spyOn(Date, 'now').mockImplementation( + () => +new Date('2022-01-02T13:10:00.000Z'), + ); Wrapper = ({ children }: PropsWithChildren<{}>) => { const store = useMemo(() => { @@ -157,16 +156,16 @@ describe('', () => { it('should have no accessibility violations', async () => { const { container } = render( - , + , { wrapper: Wrapper }, ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should have no accessibility violations, if input is invalid', async () => { const { container } = render( - , + , { wrapper: Wrapper }, ); @@ -179,7 +178,7 @@ describe('', () => { screen.getByRole('textbox', { name: 'Title (required)' }), ).toBeInvalid(); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should handle required fields', async () => { @@ -926,9 +925,9 @@ describe('', () => { }, }); - jest - .spyOn(Date, 'now') - .mockImplementation(() => +new Date('2022-01-01T13:30:00.000Z')); + vi.spyOn(Date, 'now').mockImplementation( + () => +new Date('2022-01-01T13:30:00.000Z'), + ); render( ', () => { }, }); - jest - .spyOn(Date, 'now') - .mockImplementation(() => +new Date('2022-01-02T13:30:00.000Z')); + vi.spyOn(Date, 'now').mockImplementation( + () => +new Date('2022-01-02T13:30:00.000Z'), + ); render( ', () => { beforeEach(() => { mockWidgetEndpoint(server); - jest - .spyOn(Date, 'now') - .mockImplementation(() => +new Date('2022-01-02T13:10:00.000Z')); + vi.spyOn(Date, 'now').mockImplementation( + () => +new Date('2022-01-02T13:10:00.000Z'), + ); Wrapper = ({ children }: PropsWithChildren<{}>) => { const store = useMemo(() => { diff --git a/matrix-meetings-widget/src/components/meetings/ScheduleMeetingModal/getMessagingPowerLevel.test.ts b/matrix-meetings-widget/src/components/meetings/ScheduleMeetingModal/getMessagingPowerLevel.test.ts index e3b04513..d5686cbd 100644 --- a/matrix-meetings-widget/src/components/meetings/ScheduleMeetingModal/getMessagingPowerLevel.test.ts +++ b/matrix-meetings-widget/src/components/meetings/ScheduleMeetingModal/getMessagingPowerLevel.test.ts @@ -15,14 +15,17 @@ */ import { getEnvironment as getEnvironmentMocked } from '@matrix-widget-toolkit/mui'; +import { describe, expect, it, vi } from 'vitest'; import { getMessagingPowerLevel } from './getMessagingPowerLevel'; -jest.mock('@matrix-widget-toolkit/mui', () => ({ - ...jest.requireActual('@matrix-widget-toolkit/mui'), - getEnvironment: jest.fn(), +vi.mock('@matrix-widget-toolkit/mui', async () => ({ + ...(await vi.importActual( + '@matrix-widget-toolkit/mui', + )), + getEnvironment: vi.fn(), })); -const getEnvironment = jest.mocked(getEnvironmentMocked); +const getEnvironment = vi.mocked(getEnvironmentMocked); describe('getMessagingPowerLevel', () => { it.each` diff --git a/matrix-meetings-widget/src/components/meetings/ScheduleMeetingModal/index.ts b/matrix-meetings-widget/src/components/meetings/ScheduleMeetingModal/index.ts index 6fb00609..4586b8b4 100644 --- a/matrix-meetings-widget/src/components/meetings/ScheduleMeetingModal/index.ts +++ b/matrix-meetings-widget/src/components/meetings/ScheduleMeetingModal/index.ts @@ -14,8 +14,8 @@ * limitations under the License. */ -export { ScheduleMeetingModal } from './ScheduleMeetingModal'; export { editMeetingThunk } from './editMeetingThunk'; +export { ScheduleMeetingModal } from './ScheduleMeetingModal'; export { CancelScheduleMeetingModal, SCHEDULE_MEETING_MODAL_ROUTE, diff --git a/matrix-meetings-widget/src/components/meetings/ScheduleMeetingModal/useUserSearchResults.ts b/matrix-meetings-widget/src/components/meetings/ScheduleMeetingModal/useUserSearchResults.ts index a6296073..eae07d14 100644 --- a/matrix-meetings-widget/src/components/meetings/ScheduleMeetingModal/useUserSearchResults.ts +++ b/matrix-meetings-widget/src/components/meetings/ScheduleMeetingModal/useUserSearchResults.ts @@ -15,7 +15,7 @@ */ import { useWidgetApi } from '@matrix-widget-toolkit/react'; -import { isError } from 'lodash'; +import { isError } from 'lodash-es'; import { useEffect, useState } from 'react'; type SearchResults = Array<{ diff --git a/matrix-meetings-widget/src/components/meetings/SetupBreakoutSessionsModal/BreakoutSessionGroupsForm/BreakoutSessionGroupForm.test.tsx b/matrix-meetings-widget/src/components/meetings/SetupBreakoutSessionsModal/BreakoutSessionGroupsForm/BreakoutSessionGroupForm.test.tsx index f4ab291a..9f2812c5 100644 --- a/matrix-meetings-widget/src/components/meetings/SetupBreakoutSessionsModal/BreakoutSessionGroupsForm/BreakoutSessionGroupForm.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/SetupBreakoutSessionsModal/BreakoutSessionGroupsForm/BreakoutSessionGroupForm.test.tsx @@ -22,9 +22,10 @@ import { WidgetApiMockProvider } from '@matrix-widget-toolkit/react'; import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; import { render, screen, waitFor, within } from '@testing-library/react'; import userEvent from '@testing-library/user-event'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; import { ComponentType, PropsWithChildren, useMemo } from 'react'; import { Provider } from 'react-redux'; +import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; import { mockRoomMember } from '../../../../lib/testUtils'; import { createStore, initializeStore } from '../../../../store/store'; import { BreakoutSessionGroupForm } from './BreakoutSessionGroupForm'; @@ -72,7 +73,7 @@ describe('', () => { title: 'My Group', members: ['@user-id', '@user-1'], }} - onGroupChange={jest.fn()} + onGroupChange={vi.fn()} selectableMemberEvents={allMemberEvents} />, { wrapper: Wrapper }, @@ -95,13 +96,13 @@ describe('', () => { title: 'My Group', members: ['@user-id', '@user-1'], }} - onGroupChange={jest.fn()} + onGroupChange={vi.fn()} selectableMemberEvents={allMemberEvents} />, { wrapper: Wrapper }, ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should show an error if the group title is empty', () => { @@ -112,7 +113,7 @@ describe('', () => { title: '', members: ['@user-id', '@user-1'], }} - onGroupChange={jest.fn()} + onGroupChange={vi.fn()} selectableMemberEvents={allMemberEvents} />, { wrapper: Wrapper }, @@ -129,7 +130,7 @@ describe('', () => { }); it('should notify on changes', async () => { - const onGroupChange = jest.fn(); + const onGroupChange = vi.fn(); render( ', () => { it('should render without exploding', () => { render( , { wrapper: Wrapper }, @@ -96,17 +97,17 @@ describe('', () => { it('should have no accessibility violations', async () => { const { container } = render( , { wrapper: Wrapper }, ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should adjust amount of groups', async () => { - const onGroupsChange = jest.fn(); + const onGroupsChange = vi.fn(); render( ', () => { }); it('should distribute remaining members into groups', async () => { - const onGroupsChange = jest.fn(); + const onGroupsChange = vi.fn(); render( ', () => { }); it('should show an error if there are to many groups', async () => { - const onGroupsChange = jest.fn(); + const onGroupsChange = vi.fn(); widgetApi.clearStateEvents(); diff --git a/matrix-meetings-widget/src/components/meetings/SetupBreakoutSessionsModal/BreakoutSessionGroupsForm/helpers.test.tsx b/matrix-meetings-widget/src/components/meetings/SetupBreakoutSessionsModal/BreakoutSessionGroupsForm/helpers.test.tsx index dad9b06a..5e31ed78 100644 --- a/matrix-meetings-widget/src/components/meetings/SetupBreakoutSessionsModal/BreakoutSessionGroupsForm/helpers.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/SetupBreakoutSessionsModal/BreakoutSessionGroupsForm/helpers.test.tsx @@ -14,6 +14,7 @@ * limitations under the License. */ +import { describe, expect, it, vi } from 'vitest'; import i18next from '../../../../i18n'; import { mockRoomMember } from '../../../../lib/testUtils'; import { @@ -22,8 +23,8 @@ import { initializeGroups, } from './helpers'; -jest.mock('lodash', () => { - const lodash = jest.requireActual('lodash'); +vi.mock('lodash-es', async () => { + const lodash = await vi.importActual('lodash-es'); return { ...lodash, // use reverse as shuffle to skip the randomness diff --git a/matrix-meetings-widget/src/components/meetings/SetupBreakoutSessionsModal/BreakoutSessionGroupsForm/helpers.ts b/matrix-meetings-widget/src/components/meetings/SetupBreakoutSessionsModal/BreakoutSessionGroupsForm/helpers.ts index 814671d6..009201d0 100644 --- a/matrix-meetings-widget/src/components/meetings/SetupBreakoutSessionsModal/BreakoutSessionGroupsForm/helpers.ts +++ b/matrix-meetings-widget/src/components/meetings/SetupBreakoutSessionsModal/BreakoutSessionGroupsForm/helpers.ts @@ -19,7 +19,7 @@ import { StateEvent, } from '@matrix-widget-toolkit/api'; import { TFunction } from 'i18next'; -import { range, shuffle } from 'lodash'; +import { range, shuffle } from 'lodash-es'; import { BreakoutSessionGroup } from './types'; /** diff --git a/matrix-meetings-widget/src/components/meetings/SetupBreakoutSessionsModal/BreakoutSessionGroupsForm/state.test.tsx b/matrix-meetings-widget/src/components/meetings/SetupBreakoutSessionsModal/BreakoutSessionGroupsForm/state.test.tsx index 9324b927..95f2ced3 100644 --- a/matrix-meetings-widget/src/components/meetings/SetupBreakoutSessionsModal/BreakoutSessionGroupsForm/state.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/SetupBreakoutSessionsModal/BreakoutSessionGroupsForm/state.test.tsx @@ -14,19 +14,11 @@ * limitations under the License. */ +import { describe, expect, it } from 'vitest'; import i18next from '../../../../i18n'; import { mockRoomMember } from '../../../../lib/testUtils'; import { initializer, reducer } from './state'; -jest.mock('lodash', () => { - const lodash = jest.requireActual('lodash'); - return { - ...lodash, - // use reverse as shuffle as it is - shuffle: lodash.reverse, - }; -}); - describe('reducer', () => { describe('initializer', () => { it('should work', () => { diff --git a/matrix-meetings-widget/src/components/meetings/SetupBreakoutSessionsModal/SetupBreakoutSessions.test.tsx b/matrix-meetings-widget/src/components/meetings/SetupBreakoutSessionsModal/SetupBreakoutSessions.test.tsx index f5a9ceeb..8bbf01cb 100644 --- a/matrix-meetings-widget/src/components/meetings/SetupBreakoutSessionsModal/SetupBreakoutSessions.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/SetupBreakoutSessionsModal/SetupBreakoutSessions.test.tsx @@ -24,11 +24,12 @@ import { within, } from '@testing-library/react'; import userEvent from '@testing-library/user-event'; -import { axe } from 'jest-axe'; -import { repeat } from 'lodash'; +import axe from 'axe-core'; +import { repeat } from 'lodash-es'; import { setupServer } from 'msw/node'; import { ComponentType, PropsWithChildren, useMemo } from 'react'; import { Provider } from 'react-redux'; +import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; import { mockMeeting, mockRoomMember, @@ -66,9 +67,9 @@ describe('', () => { }), ); - jest - .spyOn(Date, 'now') - .mockImplementation(() => +new Date('2022-01-02T13:10:00.000Z')); + vi.spyOn(Date, 'now').mockImplementation( + () => +new Date('2022-01-02T13:10:00.000Z'), + ); Wrapper = ({ children }: PropsWithChildren<{}>) => { const store = useMemo(() => { @@ -87,7 +88,7 @@ describe('', () => { }); it('should render without exploding', async () => { - const onBreakoutSessionsChange = jest.fn(); + const onBreakoutSessionsChange = vi.fn(); render( ', () => { it('should have no accessibility violations', async () => { const { container } = render( , { wrapper: Wrapper }, ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should have a date picker if meeting start and end date are different', async () => { render( ', () => { }, 10000); it('should adjust the breakout session end time if the start time is changed', async () => { - const onBreakoutSessionsChange = jest.fn(); + const onBreakoutSessionsChange = vi.fn(); render( ', () => { }); it('should warn if a group title is missing', async () => { - const onBreakoutSessionsChange = jest.fn(); + const onBreakoutSessionsChange = vi.fn(); render( ', () => { }); it('should warn if the start time is to early', () => { - const onBreakoutSessionsChange = jest.fn(); + const onBreakoutSessionsChange = vi.fn(); render( ', () => { }); it('should warn if the start time is to late', () => { - const onBreakoutSessionsChange = jest.fn(); + const onBreakoutSessionsChange = vi.fn(); render( ', () => { }); it('should warn if the start time is to early, when the meeting spans multiple days', () => { - const onBreakoutSessionsChange = jest.fn(); + const onBreakoutSessionsChange = vi.fn(); render( ', () => { }); it('should warn if the end time is to early', () => { - const onBreakoutSessionsChange = jest.fn(); + const onBreakoutSessionsChange = vi.fn(); render( ', () => { }); it('should warn if the end time is to late', () => { - const onBreakoutSessionsChange = jest.fn(); + const onBreakoutSessionsChange = vi.fn(); render( ', () => { }); it('should warn if the breakout session ends before it starts', () => { - const onBreakoutSessionsChange = jest.fn(); + const onBreakoutSessionsChange = vi.fn(); render( ', () => { }); it('should warn if the end time is to early, when the meeting spans multiple days', () => { - const onBreakoutSessionsChange = jest.fn(); + const onBreakoutSessionsChange = vi.fn(); render( ', () => { }); it('should limit the length of the title and description', async () => { - const onBreakoutSessionsChange = jest.fn(); + const onBreakoutSessionsChange = vi.fn(); render( ', () => { }), ); - jest - .spyOn(Date, 'now') - .mockImplementation(() => +new Date('2022-01-02T13:10:00.000Z')); + vi.spyOn(Date, 'now').mockImplementation( + () => +new Date('2022-01-02T13:10:00.000Z'), + ); widgetApi.getWidgetConfig.mockReturnValue({ data: { diff --git a/matrix-meetings-widget/src/components/meetings/WidgetsSelectionDropdown/WidgetsSelectionDropdown.test.tsx b/matrix-meetings-widget/src/components/meetings/WidgetsSelectionDropdown/WidgetsSelectionDropdown.test.tsx index f5d4fc56..e3a42135 100644 --- a/matrix-meetings-widget/src/components/meetings/WidgetsSelectionDropdown/WidgetsSelectionDropdown.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/WidgetsSelectionDropdown/WidgetsSelectionDropdown.test.tsx @@ -18,11 +18,12 @@ import { WidgetApiMockProvider } from '@matrix-widget-toolkit/react'; import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; import { render, screen, waitFor } from '@testing-library/react'; import userEvent from '@testing-library/user-event'; -import { axe } from 'jest-axe'; +import axe from 'axe-core'; import { rest } from 'msw'; import { setupServer } from 'msw/node'; import { ComponentType, PropsWithChildren, useMemo } from 'react'; import { Provider } from 'react-redux'; +import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; import { mockWidgetEndpoint } from '../../../lib/testUtils'; import { createStore } from '../../../store'; import { WidgetsSelectionDropdown } from './WidgetsSelectionDropdown'; @@ -57,7 +58,7 @@ describe('', () => { it('should render without exploding', async () => { render( , { wrapper: Wrapper }, @@ -90,16 +91,16 @@ describe('', () => { it('should have no accessibility violations, while loading', async () => { const { container } = render( - , + , { wrapper: Wrapper }, ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should have no accessibility violations, after load', async () => { const { container } = render( - , + , { wrapper: Wrapper }, ); @@ -107,11 +108,11 @@ describe('', () => { expect(screen.queryByRole('progressbar')).not.toBeInTheDocument(), ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should start empty', async () => { - const onChange = jest.fn(); + const onChange = vi.fn(); render( , @@ -126,7 +127,7 @@ describe('', () => { }); it('should start with all widgets selected if enabled', async () => { - const onChange = jest.fn(); + const onChange = vi.fn(); render( ', () => { ], }); - const onChange = jest.fn(); + const onChange = vi.fn(); render( ', () => { }); it('should select a widget', async () => { - const onChange = jest.fn(); + const onChange = vi.fn(); render( , @@ -193,7 +194,7 @@ describe('', () => { it('should show a message if all widgets are selected', async () => { render( , { wrapper: Wrapper }, @@ -220,7 +221,7 @@ describe('', () => { render( , { wrapper: Wrapper }, @@ -245,7 +246,7 @@ describe('', () => { render( , { wrapper: Wrapper }, diff --git a/matrix-meetings-widget/src/i18n.ts b/matrix-meetings-widget/src/i18n.ts index 07004429..aa73e5ac 100644 --- a/matrix-meetings-widget/src/i18n.ts +++ b/matrix-meetings-widget/src/i18n.ts @@ -14,20 +14,34 @@ * limitations under the License. */ -import { - WidgetApiLanguageDetector, - WidgetToolkitI18nBackend, -} from '@matrix-widget-toolkit/mui'; +import { extractWidgetParameters } from '@matrix-widget-toolkit/api'; +import { WidgetToolkitI18nBackend } from '@matrix-widget-toolkit/mui'; import i18n from 'i18next'; +import LanguageDetector, { + CustomDetector, +} from 'i18next-browser-languagedetector'; import ChainedBackend from 'i18next-chained-backend'; import HttpBackend from 'i18next-http-backend'; import { initReactI18next } from 'react-i18next'; import { registerDateRangeFormatter } from './dateRangeFormatter'; import { setLocale } from './lib/locale'; +const widgetApiLanguageDetector: CustomDetector = { + name: 'widgetApi', + lookup: () => { + const { clientLanguage } = extractWidgetParameters(); + return clientLanguage; + }, +}; + +const languageDetector = new LanguageDetector(undefined, { + order: ['widgetApi', 'navigator'], +}); +languageDetector.addDetector(widgetApiLanguageDetector); + i18n .use(ChainedBackend) - .use(WidgetApiLanguageDetector) + .use(languageDetector) .use(initReactI18next) .init({ fallbackLng: 'en', diff --git a/matrix-meetings-widget/src/index.tsx b/matrix-meetings-widget/src/index.tsx index 5c77ff58..dd8862d2 100644 --- a/matrix-meetings-widget/src/index.tsx +++ b/matrix-meetings-widget/src/index.tsx @@ -17,7 +17,7 @@ import { WidgetApiImpl } from '@matrix-widget-toolkit/api'; import { getEnvironment, getNonce } from '@matrix-widget-toolkit/mui'; import React from 'react'; -import ReactDOM from 'react-dom'; +import { createRoot } from 'react-dom/client'; import { BrowserRouter } from 'react-router-dom'; import AppContainer from './AppContainer'; import './i18n'; @@ -42,11 +42,11 @@ const widgetApiPromise = WidgetApiImpl.create({ capabilities: widgetCapabilities, }); -ReactDOM.render( - +const container = document.getElementById('root'); +const root = createRoot(container!); +root.render( , - document.getElementById('root'), ); diff --git a/matrix-meetings-widget/src/lib/locale.test.ts b/matrix-meetings-widget/src/lib/locale.test.ts index 04098857..36bf592c 100644 --- a/matrix-meetings-widget/src/lib/locale.test.ts +++ b/matrix-meetings-widget/src/lib/locale.test.ts @@ -15,6 +15,7 @@ */ import { Settings } from 'luxon'; +import { describe, it } from 'vitest'; import { setLocale } from './locale'; describe('setLocale', () => { diff --git a/matrix-meetings-widget/src/lib/matrix/model/nordeckMeetingMetadataEvent.test.ts b/matrix-meetings-widget/src/lib/matrix/model/nordeckMeetingMetadataEvent.test.ts index b70e2447..4f50eb75 100644 --- a/matrix-meetings-widget/src/lib/matrix/model/nordeckMeetingMetadataEvent.test.ts +++ b/matrix-meetings-widget/src/lib/matrix/model/nordeckMeetingMetadataEvent.test.ts @@ -14,6 +14,7 @@ * limitations under the License. */ +import { describe, expect, it } from 'vitest'; import { mockNordeckMeetingMetadataEvent } from '../../testUtils'; import { isValidNordeckMeetingMetadataEvent, diff --git a/matrix-meetings-widget/src/lib/matrix/model/reactionEvent.test.ts b/matrix-meetings-widget/src/lib/matrix/model/reactionEvent.test.ts index 793c10e3..efd55ac3 100644 --- a/matrix-meetings-widget/src/lib/matrix/model/reactionEvent.test.ts +++ b/matrix-meetings-widget/src/lib/matrix/model/reactionEvent.test.ts @@ -14,6 +14,7 @@ * limitations under the License. */ +import { describe, expect, it } from 'vitest'; import { isValidReactionEvent } from './reactionEvent'; describe('validateReactionEvent', () => { diff --git a/matrix-meetings-widget/src/lib/matrix/model/roomCreateEvent.test.ts b/matrix-meetings-widget/src/lib/matrix/model/roomCreateEvent.test.ts index 80bf32ce..3fd05161 100644 --- a/matrix-meetings-widget/src/lib/matrix/model/roomCreateEvent.test.ts +++ b/matrix-meetings-widget/src/lib/matrix/model/roomCreateEvent.test.ts @@ -14,6 +14,7 @@ * limitations under the License. */ +import { describe, expect, it } from 'vitest'; import { isValidRoomCreateEvent } from './roomCreateEvent'; describe('isValidRoomCreateEvent', () => { diff --git a/matrix-meetings-widget/src/lib/matrix/model/roomNameEvent.test.ts b/matrix-meetings-widget/src/lib/matrix/model/roomNameEvent.test.ts index e31e4460..0207c8af 100644 --- a/matrix-meetings-widget/src/lib/matrix/model/roomNameEvent.test.ts +++ b/matrix-meetings-widget/src/lib/matrix/model/roomNameEvent.test.ts @@ -14,6 +14,7 @@ * limitations under the License. */ +import { describe, expect, it } from 'vitest'; import { isValidRoomNameEvent } from './roomNameEvent'; describe('isValidRoomNameEvent', () => { diff --git a/matrix-meetings-widget/src/lib/matrix/model/roomTombstoneEvent.test.ts b/matrix-meetings-widget/src/lib/matrix/model/roomTombstoneEvent.test.ts index 16ad4034..08cc93e3 100644 --- a/matrix-meetings-widget/src/lib/matrix/model/roomTombstoneEvent.test.ts +++ b/matrix-meetings-widget/src/lib/matrix/model/roomTombstoneEvent.test.ts @@ -14,6 +14,7 @@ * limitations under the License. */ +import { describe, expect, it } from 'vitest'; import { isValidRoomTombstoneEvent } from './roomTombstoneEvent'; describe('isValidRoomTombstoneEvent', () => { diff --git a/matrix-meetings-widget/src/lib/matrix/model/roomTopicEvent.test.ts b/matrix-meetings-widget/src/lib/matrix/model/roomTopicEvent.test.ts index d6f7792d..9692760d 100644 --- a/matrix-meetings-widget/src/lib/matrix/model/roomTopicEvent.test.ts +++ b/matrix-meetings-widget/src/lib/matrix/model/roomTopicEvent.test.ts @@ -14,6 +14,7 @@ * limitations under the License. */ +import { describe, expect, it } from 'vitest'; import { isValidRoomTopicEvent } from './roomTopicEvent'; describe('isValidRoomTopicEvent', () => { diff --git a/matrix-meetings-widget/src/lib/matrix/model/spaceChildEvent.test.ts b/matrix-meetings-widget/src/lib/matrix/model/spaceChildEvent.test.ts index 20c7d4b2..0360835a 100644 --- a/matrix-meetings-widget/src/lib/matrix/model/spaceChildEvent.test.ts +++ b/matrix-meetings-widget/src/lib/matrix/model/spaceChildEvent.test.ts @@ -14,6 +14,7 @@ * limitations under the License. */ +import { describe, expect, it } from 'vitest'; import { isValidSpaceChildEvent } from './spaceChildEvent'; describe('isValidSpaceChildEvent', () => { diff --git a/matrix-meetings-widget/src/lib/matrix/model/spaceParentEvent.test.ts b/matrix-meetings-widget/src/lib/matrix/model/spaceParentEvent.test.ts index 874e677e..9c6992af 100644 --- a/matrix-meetings-widget/src/lib/matrix/model/spaceParentEvent.test.ts +++ b/matrix-meetings-widget/src/lib/matrix/model/spaceParentEvent.test.ts @@ -14,6 +14,7 @@ * limitations under the License. */ +import { describe, expect, it } from 'vitest'; import { isValidSpaceParentEvent } from './spaceParentEvent'; describe('isValidSpaceParentEvent', () => { diff --git a/matrix-meetings-widget/src/lib/matrix/model/validation.test.ts b/matrix-meetings-widget/src/lib/matrix/model/validation.test.ts index a6a99df1..ba926f3b 100644 --- a/matrix-meetings-widget/src/lib/matrix/model/validation.test.ts +++ b/matrix-meetings-widget/src/lib/matrix/model/validation.test.ts @@ -16,6 +16,7 @@ import { RoomEvent } from '@matrix-widget-toolkit/api'; import Joi from 'joi'; +import { beforeEach, describe, expect, it } from 'vitest'; import { isValidEvent } from './validation'; const exampleSchema = Joi.object({ diff --git a/matrix-meetings-widget/src/lib/matrix/model/widgetsEvent.test.ts b/matrix-meetings-widget/src/lib/matrix/model/widgetsEvent.test.ts index 019ca1dd..e0826f68 100644 --- a/matrix-meetings-widget/src/lib/matrix/model/widgetsEvent.test.ts +++ b/matrix-meetings-widget/src/lib/matrix/model/widgetsEvent.test.ts @@ -14,6 +14,7 @@ * limitations under the License. */ +import { describe, expect, it } from 'vitest'; import { isValidWidgetsEvent } from './widgetsEvent'; describe('isValidWidgetsEvent', () => { diff --git a/matrix-meetings-widget/src/lib/utils/generateFilterRange.test.ts b/matrix-meetings-widget/src/lib/utils/generateFilterRange.test.ts index e08ea24c..e819889c 100644 --- a/matrix-meetings-widget/src/lib/utils/generateFilterRange.test.ts +++ b/matrix-meetings-widget/src/lib/utils/generateFilterRange.test.ts @@ -15,6 +15,7 @@ */ import { mockDateTimeFormatTimeZone } from '@nordeck/matrix-meetings-calendar'; +import { describe, expect, it } from 'vitest'; import { setLocale } from '../locale'; import { generateFilterRange } from './generateFilterRange'; diff --git a/matrix-meetings-widget/src/lib/utils/getBotUserId.test.ts b/matrix-meetings-widget/src/lib/utils/getBotUserId.test.ts index a67e5b67..1a77f4e3 100644 --- a/matrix-meetings-widget/src/lib/utils/getBotUserId.test.ts +++ b/matrix-meetings-widget/src/lib/utils/getBotUserId.test.ts @@ -15,14 +15,17 @@ */ import { getEnvironment as getEnvironmentMocked } from '@matrix-widget-toolkit/mui'; +import { describe, expect, it, vi } from 'vitest'; import { getBotUserId, isBotUser } from './getBotUserId'; -jest.mock('@matrix-widget-toolkit/mui', () => ({ - ...jest.requireActual('@matrix-widget-toolkit/mui'), - getEnvironment: jest.fn(), +vi.mock('@matrix-widget-toolkit/mui', async () => ({ + ...(await vi.importActual( + '@matrix-widget-toolkit/mui', + )), + getEnvironment: vi.fn(), })); -const getEnvironment = jest.mocked(getEnvironmentMocked); +const getEnvironment = vi.mocked(getEnvironmentMocked); describe('getBotUserId', () => { it('should return undefined if not set', () => { diff --git a/matrix-meetings-widget/src/lib/utils/getInitialMeetingTimes.test.ts b/matrix-meetings-widget/src/lib/utils/getInitialMeetingTimes.test.ts index fd41ae27..729e42ce 100644 --- a/matrix-meetings-widget/src/lib/utils/getInitialMeetingTimes.test.ts +++ b/matrix-meetings-widget/src/lib/utils/getInitialMeetingTimes.test.ts @@ -15,6 +15,7 @@ */ import { DateTime } from 'luxon'; +import { afterEach, describe, expect, it, vi } from 'vitest'; import { mockMeeting } from '../testUtils'; import { getInitialMeetingTimes, @@ -22,11 +23,11 @@ import { } from './getInitialMeetingTimes'; describe('getInitialMeetingTimes', () => { - afterEach(() => jest.useRealTimers()); + afterEach(() => vi.useRealTimers()); it('should calculate start and end date of a new meeting', () => { - jest.useFakeTimers(); - jest.setSystemTime(new Date('2022-01-02T13:10:00.000Z')); + vi.useFakeTimers(); + vi.setSystemTime(new Date('2022-01-02T13:10:00.000Z')); const { initialStartDate, initialEndDate } = getInitialMeetingTimes({ meetingMinutes: 60, @@ -38,8 +39,8 @@ describe('getInitialMeetingTimes', () => { }); it('should provide callbacks for getting min and max date of a new meeting', () => { - jest.useFakeTimers(); - jest.setSystemTime(new Date('2022-01-02T13:10:00.000Z')); + vi.useFakeTimers(); + vi.setSystemTime(new Date('2022-01-02T13:10:00.000Z')); const { getMinStartDate, maxEndDate } = getInitialMeetingTimes({ meetingMinutes: 60, @@ -49,14 +50,14 @@ describe('getInitialMeetingTimes', () => { expect(getMinStartDate().toISO()).toEqual('2022-01-02T13:10:00.000Z'); expect(maxEndDate.toISO()).toEqual('9999-12-31T00:00:00.000Z'); - jest.setSystemTime(new Date('2022-01-02T13:20:00.000Z')); + vi.setSystemTime(new Date('2022-01-02T13:20:00.000Z')); expect(getMinStartDate().toISO()).toEqual('2022-01-02T13:20:00.000Z'); }); it('should provide callbacks for getting min and max date of a new meeting (with overridden min start date, in the past)', () => { - jest.useFakeTimers(); - jest.setSystemTime(new Date('2022-01-02T13:10:00.000Z')); + vi.useFakeTimers(); + vi.setSystemTime(new Date('2022-01-02T13:10:00.000Z')); const { getMinStartDate, maxEndDate } = getInitialMeetingTimes({ meetingMinutes: 60, @@ -69,8 +70,8 @@ describe('getInitialMeetingTimes', () => { }); it('should provide callbacks for getting min and max date of a new meeting (with overridden min start date, in the future)', () => { - jest.useFakeTimers(); - jest.setSystemTime(new Date('2022-01-01T10:00:00.000Z')); + vi.useFakeTimers(); + vi.setSystemTime(new Date('2022-01-01T10:00:00.000Z')); const { getMinStartDate, maxEndDate } = getInitialMeetingTimes({ meetingMinutes: 60, @@ -83,8 +84,8 @@ describe('getInitialMeetingTimes', () => { }); it('should calculate start and end date of a breakout session in a future meeting', () => { - jest.useFakeTimers(); - jest.setSystemTime(new Date('2022-01-02T13:10:00.000Z')); + vi.useFakeTimers(); + vi.setSystemTime(new Date('2022-01-02T13:10:00.000Z')); const { initialStartDate, initialEndDate } = getInitialMeetingTimes({ minutesToRound: 15, @@ -102,8 +103,8 @@ describe('getInitialMeetingTimes', () => { }); it('should calculate start and end date of a breakout session in a running meeting', () => { - jest.useFakeTimers(); - jest.setSystemTime(new Date('2022-01-02T13:10:00.000Z')); + vi.useFakeTimers(); + vi.setSystemTime(new Date('2022-01-02T13:10:00.000Z')); const { initialStartDate, initialEndDate } = getInitialMeetingTimes({ minutesToRound: 15, @@ -121,8 +122,8 @@ describe('getInitialMeetingTimes', () => { }); it('should provide callbacks for getting min and max date of breakout session in a future meeting', () => { - jest.useFakeTimers(); - jest.setSystemTime(new Date('2022-01-02T13:10:00.000Z')); + vi.useFakeTimers(); + vi.setSystemTime(new Date('2022-01-02T13:10:00.000Z')); const { getMinStartDate, maxEndDate } = getInitialMeetingTimes({ minutesToRound: 15, @@ -140,8 +141,8 @@ describe('getInitialMeetingTimes', () => { }); it('should provide callbacks for getting min and max date of breakout session in a running meeting', () => { - jest.useFakeTimers(); - jest.setSystemTime(new Date('2022-01-02T13:10:00.000Z')); + vi.useFakeTimers(); + vi.setSystemTime(new Date('2022-01-02T13:10:00.000Z')); const { getMinStartDate, maxEndDate } = getInitialMeetingTimes({ minutesToRound: 15, @@ -157,14 +158,14 @@ describe('getInitialMeetingTimes', () => { expect(getMinStartDate().toISO()).toEqual('2022-01-02T13:10:00.000Z'); expect(maxEndDate.toISO()).toEqual('2022-01-02T14:00:00.000Z'); - jest.setSystemTime(new Date('2022-01-02T13:20:00.000Z')); + vi.setSystemTime(new Date('2022-01-02T13:20:00.000Z')); expect(getMinStartDate().toISO()).toEqual('2022-01-02T13:20:00.000Z'); }); it('should provide callbacks for getting min and max date of breakout session in a ended meeting', () => { - jest.useFakeTimers(); - jest.setSystemTime(new Date('2022-01-02T13:10:00.000Z')); + vi.useFakeTimers(); + vi.setSystemTime(new Date('2022-01-02T13:10:00.000Z')); const { getMinStartDate, maxEndDate } = getInitialMeetingTimes({ minutesToRound: 15, diff --git a/matrix-meetings-widget/src/lib/utils/getWeekdayShift.test.ts b/matrix-meetings-widget/src/lib/utils/getWeekdayShift.test.ts index 2cb8abfa..daa0b440 100644 --- a/matrix-meetings-widget/src/lib/utils/getWeekdayShift.test.ts +++ b/matrix-meetings-widget/src/lib/utils/getWeekdayShift.test.ts @@ -14,6 +14,7 @@ * limitations under the License. */ +import { describe, expect, it } from 'vitest'; import { setLocale } from '../locale'; import { getWeekdayShift } from './getWeekdayShift'; diff --git a/matrix-meetings-widget/src/lib/utils/localeWeekdays.test.ts b/matrix-meetings-widget/src/lib/utils/localeWeekdays.test.ts index 1ef2ae40..d7790165 100644 --- a/matrix-meetings-widget/src/lib/utils/localeWeekdays.test.ts +++ b/matrix-meetings-widget/src/lib/utils/localeWeekdays.test.ts @@ -14,6 +14,7 @@ * limitations under the License. */ +import { describe, expect, it } from 'vitest'; import { setLocale } from '../locale'; import { localeWeekdays } from './localeWeekdays'; diff --git a/matrix-meetings-widget/src/lib/utils/meetingDateTimeUtils.test.ts b/matrix-meetings-widget/src/lib/utils/meetingDateTimeUtils.test.ts index d80bdf2b..862cb32e 100644 --- a/matrix-meetings-widget/src/lib/utils/meetingDateTimeUtils.test.ts +++ b/matrix-meetings-widget/src/lib/utils/meetingDateTimeUtils.test.ts @@ -14,6 +14,7 @@ * limitations under the License. */ +import { describe, expect, it } from 'vitest'; import { mockMeeting } from '../testUtils'; import { isMeetingSpanningMultipleDays, diff --git a/matrix-meetings-widget/src/reducer/meetingBotApi/meetingBotApi.test.ts b/matrix-meetings-widget/src/reducer/meetingBotApi/meetingBotApi.test.ts index dace30f4..3a15704c 100644 --- a/matrix-meetings-widget/src/reducer/meetingBotApi/meetingBotApi.test.ts +++ b/matrix-meetings-widget/src/reducer/meetingBotApi/meetingBotApi.test.ts @@ -17,6 +17,7 @@ import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; import { rest } from 'msw'; import { setupServer } from 'msw/node'; +import { afterAll, afterEach, beforeAll, describe, expect, it } from 'vitest'; import { createStore } from '../../store'; import { meetingBotApi } from './meetingBotApi'; diff --git a/matrix-meetings-widget/src/reducer/meetingsApi/helpers.test.ts b/matrix-meetings-widget/src/reducer/meetingsApi/helpers.test.ts index aa5d529e..ad6abbfc 100644 --- a/matrix-meetings-widget/src/reducer/meetingsApi/helpers.test.ts +++ b/matrix-meetings-widget/src/reducer/meetingsApi/helpers.test.ts @@ -15,6 +15,7 @@ */ import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; +import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; import { mockReaction } from '../../lib/testUtils'; import { awaitAcknowledgement, @@ -230,7 +231,7 @@ describe('withEventContext', () => { const data = { my: 'data' }; beforeEach(() => { - jest.spyOn(Intl, 'DateTimeFormat').mockImplementation( + vi.spyOn(Intl, 'DateTimeFormat').mockImplementation( () => ({ resolvedOptions: () => ({ timeZone: 'UTC+11' }), diff --git a/matrix-meetings-widget/src/reducer/meetingsApi/helpers.ts b/matrix-meetings-widget/src/reducer/meetingsApi/helpers.ts index 50795cf4..8cdc93a9 100644 --- a/matrix-meetings-widget/src/reducer/meetingsApi/helpers.ts +++ b/matrix-meetings-widget/src/reducer/meetingsApi/helpers.ts @@ -15,7 +15,7 @@ */ import { WidgetApi } from '@matrix-widget-toolkit/api'; -import { constant, times } from 'lodash'; +import { constant, times } from 'lodash-es'; import { Subject, firstValueFrom } from 'rxjs'; import { filter, take, takeUntil, timeout, toArray } from 'rxjs/operators'; import { isValidReactionEvent } from '../../lib/matrix'; diff --git a/matrix-meetings-widget/src/reducer/meetingsApi/index.ts b/matrix-meetings-widget/src/reducer/meetingsApi/index.ts index 395e7a90..fe694c47 100644 --- a/matrix-meetings-widget/src/reducer/meetingsApi/index.ts +++ b/matrix-meetings-widget/src/reducer/meetingsApi/index.ts @@ -14,7 +14,6 @@ * limitations under the License. */ -export { RoomEvents } from './RoomEvents'; export { isMeetingBreakOutRoom, isMeetingRoom, @@ -36,6 +35,7 @@ export { useUpdateMeetingPermissionsMutation, useUpdateMeetingWidgetsMutation, } from './meetingsApi'; +export { RoomEvents } from './RoomEvents'; export * from './selectors'; export type { CreateBreakoutSessionsOptions, diff --git a/matrix-meetings-widget/src/reducer/meetingsApi/meetingsApi.test.ts b/matrix-meetings-widget/src/reducer/meetingsApi/meetingsApi.test.ts index 14dd6838..f8a91955 100644 --- a/matrix-meetings-widget/src/reducer/meetingsApi/meetingsApi.test.ts +++ b/matrix-meetings-widget/src/reducer/meetingsApi/meetingsApi.test.ts @@ -16,6 +16,7 @@ import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; import { waitFor } from '@testing-library/react'; +import { afterEach, describe, expect, it, vi } from 'vitest'; import { acknowledgeAllEvents, mockCalendar, @@ -47,11 +48,13 @@ import { UpdateMeetingPermissionsOptions, } from './types'; -jest.mock('../../lib/utils', () => ({ - ...jest.requireActual('../../lib/utils'), - isBotUser: jest.fn(), +vi.mock('../../lib/utils', async () => ({ + ...(await vi.importActual( + '../../lib/utils', + )), + isBotUser: vi.fn(), })); -const isBotUser = jest.mocked(isBotUserMocked); +const isBotUser = vi.mocked(isBotUserMocked); let widgetApi: MockedWidgetApi; afterEach(() => widgetApi.stop()); diff --git a/matrix-meetings-widget/src/reducer/meetingsApi/meetingsApi.ts b/matrix-meetings-widget/src/reducer/meetingsApi/meetingsApi.ts index 69938ef3..e8c9ad18 100644 --- a/matrix-meetings-widget/src/reducer/meetingsApi/meetingsApi.ts +++ b/matrix-meetings-widget/src/reducer/meetingsApi/meetingsApi.ts @@ -30,7 +30,7 @@ import { } from '@reduxjs/toolkit'; import { QueryActionCreatorResult } from '@reduxjs/toolkit/dist/query/core/buildInitiate'; import { createApi, fakeBaseQuery } from '@reduxjs/toolkit/query/react'; -import { xor } from 'lodash'; +import { xor } from 'lodash-es'; import { Symbols } from 'matrix-widget-api'; import { bufferTime, filter } from 'rxjs/operators'; import { diff --git a/matrix-meetings-widget/src/reducer/meetingsApi/selectors/selectInvitedMeeting.ts b/matrix-meetings-widget/src/reducer/meetingsApi/selectors/selectInvitedMeeting.ts index 8113502a..80783602 100644 --- a/matrix-meetings-widget/src/reducer/meetingsApi/selectors/selectInvitedMeeting.ts +++ b/matrix-meetings-widget/src/reducer/meetingsApi/selectors/selectInvitedMeeting.ts @@ -15,7 +15,7 @@ */ import { getRoomMemberDisplayName } from '@matrix-widget-toolkit/api'; -import { isEqual } from 'lodash'; +import { isEqual } from 'lodash-es'; import { createSelectorCreator, defaultMemoize } from 'reselect'; import { RootState } from '../../../store'; import { isMeetingRoomOrBreakOutRoom } from '../helpers'; diff --git a/matrix-meetings-widget/src/reducer/meetingsApi/selectors/selectMeeting.ts b/matrix-meetings-widget/src/reducer/meetingsApi/selectors/selectMeeting.ts index 5a1088e8..dc0ef510 100644 --- a/matrix-meetings-widget/src/reducer/meetingsApi/selectors/selectMeeting.ts +++ b/matrix-meetings-widget/src/reducer/meetingsApi/selectors/selectMeeting.ts @@ -19,7 +19,7 @@ import { StateEvent, } from '@matrix-widget-toolkit/api'; import { getCalendarEvent } from '@nordeck/matrix-meetings-calendar'; -import { isEqual } from 'lodash'; +import { isEqual } from 'lodash-es'; import { DateTime } from 'luxon'; import { createSelectorCreator, defaultMemoize } from 'reselect'; import { NordeckMeetingMetadataEvent } from '../../../lib/matrix'; diff --git a/matrix-meetings-widget/src/reducer/meetingsApi/selectors/selectRoomPermissions.test.ts b/matrix-meetings-widget/src/reducer/meetingsApi/selectors/selectRoomPermissions.test.ts index 8cd008db..da7ee342 100644 --- a/matrix-meetings-widget/src/reducer/meetingsApi/selectors/selectRoomPermissions.test.ts +++ b/matrix-meetings-widget/src/reducer/meetingsApi/selectors/selectRoomPermissions.test.ts @@ -22,6 +22,7 @@ import { StateEvent, } from '@matrix-widget-toolkit/api'; import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; +import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; import { mockPowerLevelsEvent } from '../../../lib/testUtils'; import { createStore, RootState } from '../../../store'; import { initializeStore } from '../../../store/store'; @@ -30,16 +31,18 @@ import { makeSelectRoomPermissions, } from './selectRoomPermissions'; -jest.mock('@matrix-widget-toolkit/api', () => ({ - ...jest.requireActual('@matrix-widget-toolkit/api'), - hasActionPower: jest.fn(), - hasRoomEventPower: jest.fn(), - hasStateEventPower: jest.fn(), +vi.mock('@matrix-widget-toolkit/api', async () => ({ + ...(await vi.importActual( + '@matrix-widget-toolkit/api', + )), + hasActionPower: vi.fn(), + hasRoomEventPower: vi.fn(), + hasStateEventPower: vi.fn(), })); -const hasActionPower = jest.mocked(hasActionPowerMocked); -const hasRoomEventPower = jest.mocked(hasRoomEventPowerMocked); -const hasStateEventPower = jest.mocked(hasStateEventPowerMocked); +const hasActionPower = vi.mocked(hasActionPowerMocked); +const hasRoomEventPower = vi.mocked(hasRoomEventPowerMocked); +const hasStateEventPower = vi.mocked(hasStateEventPowerMocked); let widgetApi: MockedWidgetApi; @@ -124,7 +127,9 @@ describe('selectRoomPermissions', () => { beforeEach(async () => { // restore mocks - const orig = jest.requireActual('@matrix-widget-toolkit/api'); + const orig = await vi.importActual< + typeof import('@matrix-widget-toolkit/api') + >('@matrix-widget-toolkit/api'); hasRoomEventPower.mockImplementation(orig.hasRoomEventPower); hasStateEventPower.mockImplementation(orig.hasStateEventPower); hasActionPower.mockImplementation(orig.hasActionPower); diff --git a/matrix-meetings-widget/src/setupTests.ts b/matrix-meetings-widget/src/setupTests.ts index ad4b8274..f11bb2a1 100644 --- a/matrix-meetings-widget/src/setupTests.ts +++ b/matrix-meetings-widget/src/setupTests.ts @@ -18,35 +18,64 @@ // allows you to do things like: // expect(element).toHaveTextContent(/react/i) // learn more: https://github.com/testing-library/jest-dom -import '@testing-library/jest-dom'; -import { toHaveNoViolations } from 'jest-axe'; +import '@testing-library/jest-dom/vitest'; + +import { cleanup } from '@testing-library/react'; +import { AxeResults } from 'axe-core'; import { TextDecoder, TextEncoder } from 'util'; // Make sure to initialize i18n (see mock below) import { mockDateTimeFormatTimeZone } from '@nordeck/matrix-meetings-calendar'; +import { afterEach, beforeEach, expect, vi } from 'vitest'; import './i18n'; import { setLocale } from './lib/locale'; +// Prevent act warnings https://github.com/testing-library/react-testing-library/issues/1061 +// eslint-disable-next-line @typescript-eslint/no-explicit-any +(global as any).IS_REACT_ACT_ENVIRONMENT = true; + +// Add support for axe +expect.extend({ + toHaveNoViolations(results: AxeResults) { + const violations = results.violations ?? []; + + return { + pass: violations.length === 0, + actual: violations, + message() { + if (violations.length === 0) { + return ''; + } + + return `Expected no accessibility violations but received some. + +${violations + .map( + (violation) => `[${violation.impact}] ${violation.id} +${violation.description} +${violation.helpUrl} +`, + ) + .join('\n')} +`; + }, + }; + }, +}); + // Use a different configuration for i18next during tests -jest.mock('./i18n', () => { - const i18n = require('i18next'); - const en = { translation: require('../public/locales/en/translation.json') }; - const de = { translation: require('../public/locales/de/translation.json') }; - const { initReactI18next } = require('react-i18next'); - const { registerDateRangeFormatter } = require('./dateRangeFormatter'); +vi.mock('./i18n', async () => { + const i18n = await vi.importActual('i18next'); + const { initReactI18next } = + await vi.importActual('react-i18next'); i18n.use(initReactI18next).init({ fallbackLng: 'en', interpolation: { escapeValue: false, }, - resources: { - en, - de, - }, + resources: { en: {} }, }); - registerDateRangeFormatter(i18n); - return i18n; }); @@ -60,21 +89,18 @@ beforeEach(() => { // Provide mocks for the object URL related // functions that are not provided by jsdom. -window.URL.createObjectURL = jest.fn(); -window.URL.revokeObjectURL = jest.fn(); - -// Add support for jest-axe -expect.extend(toHaveNoViolations); +window.URL.createObjectURL = vi.fn(); +window.URL.revokeObjectURL = vi.fn(); // Tell MUI that we have a mouse available and that the UI should not fallback // to mobile/touch mode beforeEach(() => { - window.matchMedia = jest.fn().mockImplementation((query) => ({ + window.matchMedia = vi.fn().mockImplementation((query) => ({ matches: query === '(pointer: fine)', media: '', onchange: null, - addListener: jest.fn(), - removeListener: jest.fn(), + addListener: vi.fn(), + removeListener: vi.fn(), })); }); @@ -84,5 +110,9 @@ global.TextDecoder = TextDecoder as typeof global.TextDecoder; // Provide a mock for the Clipboard API Object.defineProperty(navigator, 'clipboard', { - value: { writeText: jest.fn() }, + value: { writeText: vi.fn() }, +}); + +afterEach(() => { + cleanup(); }); diff --git a/matrix-meetings-widget/src/store/StoreProvider.test.tsx b/matrix-meetings-widget/src/store/StoreProvider.test.tsx index 2be8c613..73d4ddb8 100644 --- a/matrix-meetings-widget/src/store/StoreProvider.test.tsx +++ b/matrix-meetings-widget/src/store/StoreProvider.test.tsx @@ -19,24 +19,25 @@ import { WidgetApiMockProvider } from '@matrix-widget-toolkit/react'; import { configureStore, createReducer } from '@reduxjs/toolkit'; import { render, screen } from '@testing-library/react'; import { TypedUseSelectorHook, useSelector } from 'react-redux'; +import { beforeEach, describe, expect, it, MockedFunction, vi } from 'vitest'; import { StoreProvider } from './StoreProvider'; import { createStore as createStoreMocked, initializeStore as initializeStoreMocked, } from './store'; -jest.mock('./store'); +vi.mock('./store'); -const createStore = createStoreMocked as jest.MockedFunction< +const createStore = createStoreMocked as MockedFunction< typeof createStoreMocked >; -const initializeStore = initializeStoreMocked as jest.MockedFunction< +const initializeStore = initializeStoreMocked as MockedFunction< typeof initializeStoreMocked >; describe('StoreProvider', () => { - const unsubscribe = jest.fn(); + const unsubscribe = vi.fn(); const widgetApi = {} as WidgetApi; const store = configureStore({ diff --git a/matrix-meetings-widget/src/store/acceptMeetingInvitations.test.ts b/matrix-meetings-widget/src/store/acceptMeetingInvitations.test.ts index a6421255..c943663f 100644 --- a/matrix-meetings-widget/src/store/acceptMeetingInvitations.test.ts +++ b/matrix-meetings-widget/src/store/acceptMeetingInvitations.test.ts @@ -15,6 +15,7 @@ */ import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; +import { afterEach, beforeEach, describe, expect, it } from 'vitest'; import { mockCreateMeetingRoom, mockNordeckMeetingMetadataEvent, diff --git a/matrix-meetings-widget/src/store/index.ts b/matrix-meetings-widget/src/store/index.ts index 3d4c5e95..1213b308 100644 --- a/matrix-meetings-widget/src/store/index.ts +++ b/matrix-meetings-widget/src/store/index.ts @@ -14,6 +14,6 @@ * limitations under the License. */ -export { StoreProvider } from './StoreProvider'; export { createStore, useAppDispatch, useAppSelector } from './store'; export type { AppDispatch, RootState, ThunkExtraArgument } from './store'; +export { StoreProvider } from './StoreProvider'; diff --git a/matrix-meetings-widget/src/vitest.d.ts b/matrix-meetings-widget/src/vitest.d.ts new file mode 100644 index 00000000..24c297bd --- /dev/null +++ b/matrix-meetings-widget/src/vitest.d.ts @@ -0,0 +1,27 @@ +/* + * Copyright 2024 Nordeck IT + Consulting GmbH + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import 'vitest'; + +interface AxeMatchers { + toHaveNoViolations: () => R; +} + +declare module 'vitest' { + // eslint-disable-next-line @typescript-eslint/no-explicit-any + interface Assertion extends AxeMatchers {} + interface AsymmetricMatchersContaining extends AxeMatchers {} +} diff --git a/matrix-meetings-widget/tsconfig.json b/matrix-meetings-widget/tsconfig.json index 338433a5..43d28f4c 100644 --- a/matrix-meetings-widget/tsconfig.json +++ b/matrix-meetings-widget/tsconfig.json @@ -1,5 +1,14 @@ -// Package specific tsconfig that extends the root one. { "extends": "../tsconfig.json", - "include": ["src"] + "compilerOptions": { + "rootDir": ".", + "noEmit": true, + "types": ["vite/client"] + }, + "include": ["src"], + "references": [ + { + "path": "./tsconfig.node.json" + } + ] } diff --git a/matrix-meetings-widget/tsconfig.node.json b/matrix-meetings-widget/tsconfig.node.json new file mode 100644 index 00000000..abcd7f0d --- /dev/null +++ b/matrix-meetings-widget/tsconfig.node.json @@ -0,0 +1,24 @@ +{ + "compilerOptions": { + "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.node.tsbuildinfo", + "target": "ES2022", + "lib": ["ES2023"], + "module": "ESNext", + "skipLibCheck": true, + + /* Bundler mode */ + "moduleResolution": "Bundler", + "allowImportingTsExtensions": true, + "isolatedModules": true, + "moduleDetection": "force", + "noEmit": true, + + /* Linting */ + "strict": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "noFallthroughCasesInSwitch": true, + "noUncheckedSideEffectImports": true + }, + "include": ["vite.config.ts"] +} diff --git a/matrix-meetings-widget/vite.config.ts b/matrix-meetings-widget/vite.config.ts new file mode 100644 index 00000000..122f4b62 --- /dev/null +++ b/matrix-meetings-widget/vite.config.ts @@ -0,0 +1,68 @@ +/* + * Copyright 2024 Nordeck IT + Consulting GmbH + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import basicSsl from '@vitejs/plugin-basic-ssl'; +import react from '@vitejs/plugin-react-swc'; +import { + Plugin, + PluginOption, + defineConfig, + searchForWorkspaceRoot, +} from 'vite'; + +const plugins: [Plugin | PluginOption] = [react()]; +let port = 5474; + +if (process.env.VITE_DEV_SSL === 'true') { + plugins.push(basicSsl()); + port = 5574; +} + +// https://vitejs.dev/config/ +export default defineConfig({ + esbuild: { + target: 'es2020', + }, + build: { + outDir: 'build', + commonjsOptions: { + strictRequires: true, + }, + }, + resolve: { + dedupe: [ + '@matrix-widget-toolkit/react', + '@mui/material', + 'react', + 'react-dom', + 'react-redux', + ], + }, + server: { + fs: { + allow: [searchForWorkspaceRoot(process.cwd())], + }, + port, + strictPort: true, + }, + preview: { + port: port - 1000, + strictPort: true, + }, + plugins, + // Use the env prefix from CRA for backward compatibility. + envPrefix: 'REACT_APP_', +}); diff --git a/matrix-meetings-widget/vitest.config.ts b/matrix-meetings-widget/vitest.config.ts new file mode 100644 index 00000000..22251d27 --- /dev/null +++ b/matrix-meetings-widget/vitest.config.ts @@ -0,0 +1,37 @@ +/* + * Copyright 2024 Nordeck IT + Consulting GmbH + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/// + +import { defineConfig } from 'vite'; + +export default defineConfig({ + test: { + environment: 'jsdom', + setupFiles: ['./src/setupTests.ts'], + exclude: ['build', 'lib'], + server: { + deps: { + inline: [ + '@matrix-widget-toolkit/api', + '@matrix-widget-toolkit/react', + '@matrix-widget-toolkit/mui', + '@nordeck/matrix-meetings-calendar', + ], + }, + }, + }, +}); diff --git a/package.json b/package.json index 9daad149..ea702c60 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,7 @@ { "name": "root", "private": true, + "type": "module", "workspaces": [ "matrix-meetings-widget", "matrix-meetings-bot", @@ -18,6 +19,7 @@ "lint-staged": "^15.2.2", "prettier": "^3.3.3", "prettier-plugin-organize-imports": "^4.1.0", + "typescript": "^5.6.3", "yarn-deduplicate": "^6.0.2" }, "scripts": { diff --git a/packages/calendar/package.json b/packages/calendar/package.json index b0fe4efc..998f8575 100644 --- a/packages/calendar/package.json +++ b/packages/calendar/package.json @@ -3,17 +3,21 @@ "description": "A calendar utils library", "license": "Apache-2.0", "private": true, + "type": "module", "version": "1.0.0", "source": "./src/index.ts", "module": "./src/index.ts", "types": "./src/index.ts", - "main": "lib/index.js", + "main": "./src/index.ts", + "files": [ + "./src/testing/*" + ], "scripts": { "docker:build": "echo \"Nothing to build\"", "build": "tsc", "depcheck": "depcheck", - "test": "jest --watch", - "test:all": "jest --coverage --watchAll=false", + "test": "vitest", + "test:all": "vitest run --coverage", "lint": "eslint .", "translate": "echo \"Nothing to translate\"", "generate-disclaimer": "echo \"Nothing to generate\"" @@ -21,22 +25,13 @@ "dependencies": { "i18next": "^23.7.16", "joi": "^17.13.3", - "lodash": "^4.17.20", + "lodash-es": "^4.17.21", "luxon": "^3.3.0", "rrule": "^2.8.1" }, "devDependencies": { - "@types/lodash": "^4.17.4", - "@types/luxon": "^3.2.0" - }, - "jest": { - "preset": "ts-jest", - "rootDir": ".", - "roots": [ - "/src" - ], - "setupFilesAfterEnv": [ - "/setupTests.ts" - ] + "@types/lodash-es": "^4.17.12", + "@types/luxon": "^3.2.0", + "vitest": "^2.1.4" } } diff --git a/packages/calendar/src/index.ts b/packages/calendar/src/index.ts index 259bfe8e..e74f7123 100644 --- a/packages/calendar/src/index.ts +++ b/packages/calendar/src/index.ts @@ -15,5 +15,4 @@ */ export * from './model'; -export * from './testing'; export * from './utils'; diff --git a/packages/calendar/src/testing/timezoneMockUtils.ts b/packages/calendar/src/testing/timezoneMockUtils.ts index 12901230..28a297f3 100644 --- a/packages/calendar/src/testing/timezoneMockUtils.ts +++ b/packages/calendar/src/testing/timezoneMockUtils.ts @@ -15,12 +15,13 @@ */ import { Settings } from 'luxon'; +import { vi } from 'vitest'; // store original instance const DateTimeFormat = Intl.DateTimeFormat; export function mockDateTimeFormatTimeZone(timeZone: string): void { - jest.spyOn(Intl, 'DateTimeFormat').mockImplementation((locale, options) => { + vi.spyOn(Intl, 'DateTimeFormat').mockImplementation((locale, options) => { const format = new DateTimeFormat(locale, { ...options, timeZone: options?.timeZone ?? timeZone, @@ -29,20 +30,16 @@ export function mockDateTimeFormatTimeZone(timeZone: string): void { // replace all uncommon whitespace characters with ' '. Relates to https://github.com/nodejs/node/pull/45068 // where the unicode standard decided to use U+2009 in some cases. This breaks some of our tests const originalFormatRange = format.formatRange; - jest - .spyOn(format, 'formatRange') - .mockImplementation((startDate, endDate) => - originalFormatRange - .call(format, startDate, endDate) - .replace(/\s+/g, ' '), - ); + vi.spyOn(format, 'formatRange').mockImplementation((startDate, endDate) => + originalFormatRange.call(format, startDate, endDate).replace(/\s+/g, ' '), + ); return format; }); // make sure getTimezoneOffset is based on the provided timezone and // not the system - jest.spyOn(Date.prototype, 'getTimezoneOffset').mockImplementation(function ( + vi.spyOn(Date.prototype, 'getTimezoneOffset').mockImplementation(function ( this: Date, ) { const dateInLocalTZ = new Date(this.toLocaleString('en-US', { timeZone })); diff --git a/packages/calendar/src/utils/calendarUtils/extractCalendarChange.ts b/packages/calendar/src/utils/calendarUtils/extractCalendarChange.ts index ece197d5..0e5e4e15 100644 --- a/packages/calendar/src/utils/calendarUtils/extractCalendarChange.ts +++ b/packages/calendar/src/utils/calendarUtils/extractCalendarChange.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { differenceWith, isEqual } from 'lodash'; +import { differenceWith, isEqual } from 'lodash-es'; import { CalendarEntry, DateTimeEntry } from '../../model'; import { formatICalDate, parseICalDate } from '../dateTimeUtils'; import { isRRuleEntry, isRRuleOverrideEntry, isSingleEntry } from './helpers'; diff --git a/packages/calendar/src/utils/calendarUtils/getCalendarEnd.ts b/packages/calendar/src/utils/calendarUtils/getCalendarEnd.ts index b596f8fd..e7475314 100644 --- a/packages/calendar/src/utils/calendarUtils/getCalendarEnd.ts +++ b/packages/calendar/src/utils/calendarUtils/getCalendarEnd.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { max } from 'lodash'; +import { max } from 'lodash-es'; import { DateTime } from 'luxon'; import { CalendarEntry } from '../../model'; import { parseICalDate } from '../dateTimeUtils'; diff --git a/packages/calendar/src/utils/format.ts b/packages/calendar/src/utils/format.ts index d4393894..af7396ec 100644 --- a/packages/calendar/src/utils/format.ts +++ b/packages/calendar/src/utils/format.ts @@ -15,7 +15,7 @@ */ import { TFunction } from 'i18next'; -import { sortBy } from 'lodash'; +import { sortBy } from 'lodash-es'; import { Info } from 'luxon'; import { Frequency, Options, RRule } from 'rrule'; import { isWeekdays, normalizeByWeekday, normalizeNumeric } from './helpers'; diff --git a/packages/calendar/tsconfig.json b/packages/calendar/tsconfig.json index f9d8bbb3..310cf31e 100644 --- a/packages/calendar/tsconfig.json +++ b/packages/calendar/tsconfig.json @@ -1,10 +1,8 @@ { "extends": "../../tsconfig.json", "compilerOptions": { - "module": "commonjs", "outDir": "lib", - "rootDir": "src", - "noEmit": false + "rootDir": "src" }, "include": ["src"] } diff --git a/packages/calendar/vite.config.ts b/packages/calendar/vite.config.ts new file mode 100644 index 00000000..fabcea94 --- /dev/null +++ b/packages/calendar/vite.config.ts @@ -0,0 +1,41 @@ +/* + * Copyright 2024 Nordeck IT + Consulting GmbH + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { defineConfig } from 'vite'; + +// https://vitejs.dev/config/ +export default defineConfig({ + esbuild: { + target: 'es2020', + }, + build: { + outDir: 'lib', + commonjsOptions: { + strictRequires: true, + }, + }, + resolve: { + dedupe: [ + '@matrix-widget-toolkit/react', + '@mui/material', + 'react', + 'react-dom', + 'react-redux', + ], + }, + // Use the env prefix from CRA for backward compatibility. + envPrefix: 'REACT_APP_', +}); diff --git a/tsconfig.json b/tsconfig.json index b1fccef9..fb6754a7 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,22 +1,21 @@ -// This is the root tsconfig that is extended by the individual packages { "compilerOptions": { - "target": "es6", - "lib": ["dom", "dom.iterable", "esnext"], + "target": "es2020", + "lib": ["dom", "dom.iterable", "esnext", "es2021.intl"], + "allowJs": true, + "skipLibCheck": true, "esModuleInterop": true, "allowSyntheticDefaultImports": true, "strict": true, - "module": "esnext", - "moduleResolution": "node", - "isolatedModules": true, - "noEmit": true, - "jsx": "react-jsx", - "skipLibCheck": true, - "noUnusedLocals": true, - "noUnusedParameters": true, "forceConsistentCasingInFileNames": true, "noFallthroughCasesInSwitch": true, - // TODO: this option was enabled with the typescript update, but this introduces some errors. we should to revert this to the default and fix the errors - "useUnknownInCatchVariables": false - } + "module": "esnext", + "moduleResolution": "bundler", + "resolveJsonModule": true, + "isolatedModules": true, + "noEmit": false, + "jsx": "react-jsx" + }, + "exclude": ["node_modules"], + "include": ["matrix-meetings-widget/src", "packages/*/src"] } diff --git a/vitest.workspace.ts b/vitest.workspace.ts new file mode 100644 index 00000000..1da6d59d --- /dev/null +++ b/vitest.workspace.ts @@ -0,0 +1,18 @@ +/* + * Copyright 2024 Nordeck IT + Consulting GmbH + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// These are all the packages using vitest. +export default ['matrix-meetings-widget', 'packages/*']; diff --git a/yarn.lock b/yarn.lock index 5b15ac05..d99ce1e7 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7,10 +7,10 @@ resolved "https://registry.yarnpkg.com/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz#bd9154aec9983f77b3a034ecaa015c2e4201f6cf" integrity sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA== -"@adobe/css-tools@^4.3.2": - version "4.3.3" - resolved "https://registry.yarnpkg.com/@adobe/css-tools/-/css-tools-4.3.3.tgz#90749bde8b89cd41764224f5aac29cd4138f75ff" - integrity sha512-rE0Pygv0sEZ4vBWHlAgJLGDU7Pm8xoO6p3wsEceb7GYAjScrOHpEo8KK/eVkAcnSM+slAEtXjA2JpdjLp4fJQQ== +"@adobe/css-tools@^4.4.0": + version "4.4.0" + resolved "https://registry.yarnpkg.com/@adobe/css-tools/-/css-tools-4.4.0.tgz#728c484f4e10df03d5a3acd0d8adcbbebff8ad63" + integrity sha512-Ff9+ksdQQB3rMncgqDK78uLznstjyfIf2Arnh22pW8kBpLs6rpKDwgnZT46hin5Hl1WzazzK64DOrhSwYpS7bQ== "@ampproject/remapping@^2.1.0": version "2.1.2" @@ -19,6 +19,14 @@ dependencies: "@jridgewell/trace-mapping" "^0.3.0" +"@ampproject/remapping@^2.2.0", "@ampproject/remapping@^2.3.0": + version "2.3.0" + resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.3.0.tgz#ed441b6fa600072520ce18b43d2c8cc8caecc7f4" + integrity sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw== + dependencies: + "@jridgewell/gen-mapping" "^0.3.5" + "@jridgewell/trace-mapping" "^0.3.24" + "@angular-devkit/core@16.1.8": version "16.1.8" resolved "https://registry.yarnpkg.com/@angular-devkit/core/-/core-16.1.8.tgz#f54bf179a78c6ea83ccd46687c54766d3ba674c9" @@ -99,11 +107,25 @@ "@babel/highlight" "^7.22.13" chalk "^2.4.2" +"@babel/code-frame@^7.25.9", "@babel/code-frame@^7.26.0": + version "7.26.2" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.26.2.tgz#4b5fab97d33338eff916235055f0ebc21e573a85" + integrity sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ== + dependencies: + "@babel/helper-validator-identifier" "^7.25.9" + js-tokens "^4.0.0" + picocolors "^1.0.0" + "@babel/compat-data@^7.13.11", "@babel/compat-data@^7.16.4", "@babel/compat-data@^7.16.8", "@babel/compat-data@^7.20.0": version "7.20.1" resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.20.1.tgz#f2e6ef7790d8c8dbf03d379502dcc246dcce0b30" integrity sha512-EWZ4mE2diW3QALKvDMiXnbZpRvlj+nayZ112nK93SnhqOtpdsbVD4W+2tEoT3YNBAG9RBR0ISY758ZkOgsn6pQ== +"@babel/compat-data@^7.25.9": + version "7.26.2" + resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.26.2.tgz#278b6b13664557de95b8f35b90d96785850bb56e" + integrity sha512-Z0WgzSEa+aUcdiJuCIqgujCshpMWgUpgOxXotrYPSA53hA3qopNaqcJpyr0hVb1FeWdnqFA35/fUtXgBK8srQg== + "@babel/core@^7.1.0", "@babel/core@^7.11.1", "@babel/core@^7.12.3", "@babel/core@^7.16.0", "@babel/core@^7.7.2", "@babel/core@^7.8.0": version "7.20.2" resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.20.2.tgz#8dc9b1620a673f92d3624bd926dc49a52cf25b92" @@ -125,6 +147,27 @@ json5 "^2.2.1" semver "^6.3.0" +"@babel/core@^7.11.6", "@babel/core@^7.23.9": + version "7.26.0" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.26.0.tgz#d78b6023cc8f3114ccf049eb219613f74a747b40" + integrity sha512-i1SLeK+DzNnQ3LL/CswPCa/E5u4lh1k6IAEphON8F+cXt0t9euTshDru0q7/IqMa1PMPz5RnHuHscF8/ZJsStg== + dependencies: + "@ampproject/remapping" "^2.2.0" + "@babel/code-frame" "^7.26.0" + "@babel/generator" "^7.26.0" + "@babel/helper-compilation-targets" "^7.25.9" + "@babel/helper-module-transforms" "^7.26.0" + "@babel/helpers" "^7.26.0" + "@babel/parser" "^7.26.0" + "@babel/template" "^7.25.9" + "@babel/traverse" "^7.25.9" + "@babel/types" "^7.26.0" + convert-source-map "^2.0.0" + debug "^4.1.0" + gensync "^1.0.0-beta.2" + json5 "^2.2.3" + semver "^6.3.1" + "@babel/eslint-parser@^7.16.3": version "7.17.0" resolved "https://registry.yarnpkg.com/@babel/eslint-parser/-/eslint-parser-7.17.0.tgz#eabb24ad9f0afa80e5849f8240d0e5facc2d90d6" @@ -144,6 +187,17 @@ "@jridgewell/trace-mapping" "^0.3.17" jsesc "^2.5.1" +"@babel/generator@^7.25.9", "@babel/generator@^7.26.0": + version "7.26.2" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.26.2.tgz#87b75813bec87916210e5e01939a4c823d6bb74f" + integrity sha512-zevQbhbau95nkoxSq3f/DC/SC+EEOUZd3DYqfSkMhY2/wfSeaHV1Ew4vk8e+x8lja31IbyuUa2uQ3JONqKbysw== + dependencies: + "@babel/parser" "^7.26.2" + "@babel/types" "^7.26.0" + "@jridgewell/gen-mapping" "^0.3.5" + "@jridgewell/trace-mapping" "^0.3.25" + jsesc "^3.0.2" + "@babel/helper-annotate-as-pure@^7.16.7": version "7.16.7" resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.16.7.tgz#bb2339a7534a9c128e3102024c60760a3a7f3862" @@ -169,6 +223,17 @@ browserslist "^4.21.3" semver "^6.3.0" +"@babel/helper-compilation-targets@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.25.9.tgz#55af025ce365be3cdc0c1c1e56c6af617ce88875" + integrity sha512-j9Db8Suy6yV/VHa4qzrj9yZfZxhLWQdVnRlXxmKLYlhWUVB1sB2G5sxuWYXk/whHD9iW76PmNzxZ4UCnTQTVEQ== + dependencies: + "@babel/compat-data" "^7.25.9" + "@babel/helper-validator-option" "^7.25.9" + browserslist "^4.24.0" + lru-cache "^5.1.1" + semver "^6.3.1" + "@babel/helper-create-class-features-plugin@^7.16.10", "@babel/helper-create-class-features-plugin@^7.16.7", "@babel/helper-create-class-features-plugin@^7.17.1": version "7.17.6" resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.17.6.tgz#3778c1ed09a7f3e65e6d6e0f6fbfcc53809d92c9" @@ -245,6 +310,14 @@ dependencies: "@babel/types" "^7.18.6" +"@babel/helper-module-imports@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.25.9.tgz#e7f8d20602ebdbf9ebbea0a0751fb0f2a4141715" + integrity sha512-tnUA4RsrmflIM6W6RFTLFSXITtl0wKjgpnLgXyowocVPrbYrLUXSBXDgTs8BlbmIzIdlBySRQjINYs2BAkiLtw== + dependencies: + "@babel/traverse" "^7.25.9" + "@babel/types" "^7.25.9" + "@babel/helper-module-transforms@^7.16.7", "@babel/helper-module-transforms@^7.20.2": version "7.20.2" resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.20.2.tgz#ac53da669501edd37e658602a21ba14c08748712" @@ -259,6 +332,15 @@ "@babel/traverse" "^7.20.1" "@babel/types" "^7.20.2" +"@babel/helper-module-transforms@^7.26.0": + version "7.26.0" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.26.0.tgz#8ce54ec9d592695e58d84cd884b7b5c6a2fdeeae" + integrity sha512-xO+xu6B5K2czEnQye6BHA7DolFFmS3LB7stHZFaOLb1pAwO1HWLS8fXA+eh0A2yIvltPVmx3eNNDBJA2SLHXFw== + dependencies: + "@babel/helper-module-imports" "^7.25.9" + "@babel/helper-validator-identifier" "^7.25.9" + "@babel/traverse" "^7.25.9" + "@babel/helper-optimise-call-expression@^7.16.7": version "7.16.7" resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.16.7.tgz#a34e3560605abbd31a18546bd2aad3e6d9a174f2" @@ -271,6 +353,11 @@ resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.18.6.tgz#9448974dd4fb1d80fefe72e8a0af37809cd30d6d" integrity sha512-gvZnm1YAAxh13eJdkb9EWHBnF3eAub3XTLCZEehHT2kWxiKVRL64+ae5Y6Ivne0mVHmMYKT+xWgZO+gQhuLUBg== +"@babel/helper-plugin-utils@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.25.9.tgz#9cbdd63a9443a2c92a725cca7ebca12cc8dd9f46" + integrity sha512-kSMlyUVdWe25rEsRGviIgOWnoT/nfABVWlqt9N19/dIPWViAOW2s9wznP5tURbs/IDuNk4gPy3YdYRgH3uxhBw== + "@babel/helper-remap-async-to-generator@^7.16.8": version "7.16.8" resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.16.8.tgz#29ffaade68a367e2ed09c90901986918d25e57e3" @@ -317,16 +404,31 @@ resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz#533f36457a25814cf1df6488523ad547d784a99f" integrity sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw== +"@babel/helper-string-parser@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.25.9.tgz#1aabb72ee72ed35789b4bbcad3ca2862ce614e8c" + integrity sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA== + "@babel/helper-validator-identifier@^7.16.7", "@babel/helper-validator-identifier@^7.19.1", "@babel/helper-validator-identifier@^7.22.20": version "7.22.20" resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz#c4ae002c61d2879e724581d96665583dbc1dc0e0" integrity sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A== +"@babel/helper-validator-identifier@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz#24b64e2c3ec7cd3b3c547729b8d16871f22cbdc7" + integrity sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ== + "@babel/helper-validator-option@^7.16.7", "@babel/helper-validator-option@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz#bf0d2b5a509b1f336099e4ff36e1a63aa5db4db8" integrity sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw== +"@babel/helper-validator-option@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.25.9.tgz#86e45bd8a49ab7e03f276577f96179653d41da72" + integrity sha512-e/zv1co8pp55dNdEcCynfj9X7nyUKUXoUEwfXqaZt0omVOmDe9oOTdKStH4GmAw6zxMFs50ZayuMfHDKlO7Tfw== + "@babel/helper-wrap-function@^7.16.8": version "7.16.8" resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.16.8.tgz#58afda087c4cd235de92f7ceedebca2c41274200" @@ -346,6 +448,14 @@ "@babel/traverse" "^7.20.1" "@babel/types" "^7.20.0" +"@babel/helpers@^7.26.0": + version "7.26.0" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.26.0.tgz#30e621f1eba5aa45fe6f4868d2e9154d884119a4" + integrity sha512-tbhNuIxNcVb21pInl3ZSjksLCvgdZy9KwJ8brv993QtIVKJBBkYXz4q4ZbAv31GdnC+R90np23L5FbEBlthAEw== + dependencies: + "@babel/template" "^7.25.9" + "@babel/types" "^7.26.0" + "@babel/highlight@^7.22.13": version "7.22.20" resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.22.20.tgz#4ca92b71d80554b01427815e06f2df965b9c1f54" @@ -360,6 +470,13 @@ resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.23.0.tgz#da950e622420bf96ca0d0f2909cdddac3acd8719" integrity sha512-vvPKKdMemU85V9WE/l5wZEmImpCtLqbnTvqDS2U1fJ96KrxoW7KrXhNsNCblQlg8Ck4b85yxdTyelsMUgFUXiw== +"@babel/parser@^7.23.9", "@babel/parser@^7.25.4", "@babel/parser@^7.25.9", "@babel/parser@^7.26.0", "@babel/parser@^7.26.2": + version "7.26.2" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.26.2.tgz#fd7b6f487cfea09889557ef5d4eeb9ff9a5abd11" + integrity sha512-DWMCZH9WA4Maitz2q21SRKHo9QXZxkDsbNZoVD62gusNtNBBqDg9i7uOhASfTfIGNzW+O+r7+jAlM8dwphcJKQ== + dependencies: + "@babel/types" "^7.26.0" + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.16.7": version "7.16.7" resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.16.7.tgz#4eda6d6c2a0aa79c70fa7b6da67763dfe2141050" @@ -592,6 +709,13 @@ dependencies: "@babel/helper-plugin-utils" "^7.18.6" +"@babel/plugin-syntax-jsx@^7.7.2": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.25.9.tgz#a34313a178ea56f1951599b929c1ceacee719290" + integrity sha512-ld6oezHQMZsZfp6pWtbjaNDF2tiiCYYDqQszHt5VV437lewP9aSi2Of99CK0D0XB21k7FLgnLcmQKyKzynfeAA== + dependencies: + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/plugin-syntax-logical-assignment-operators@^7.10.4", "@babel/plugin-syntax-logical-assignment-operators@^7.8.3": version "7.10.4" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz#ca91ef46303530448b906652bac2e9fe9941f699" @@ -1094,13 +1218,20 @@ core-js-pure "^3.0.0" regenerator-runtime "^0.13.4" -"@babel/runtime@^7.1.2", "@babel/runtime@^7.10.2", "@babel/runtime@^7.11.2", "@babel/runtime@^7.12.1", "@babel/runtime@^7.12.5", "@babel/runtime@^7.16.3", "@babel/runtime@^7.18.3", "@babel/runtime@^7.19.4", "@babel/runtime@^7.20.1", "@babel/runtime@^7.21.5", "@babel/runtime@^7.22.5", "@babel/runtime@^7.23.2", "@babel/runtime@^7.23.6", "@babel/runtime@^7.5.5", "@babel/runtime@^7.8.4", "@babel/runtime@^7.8.7", "@babel/runtime@^7.9.2": +"@babel/runtime@^7.1.2", "@babel/runtime@^7.10.2", "@babel/runtime@^7.11.2", "@babel/runtime@^7.12.1", "@babel/runtime@^7.12.5", "@babel/runtime@^7.16.3", "@babel/runtime@^7.18.3", "@babel/runtime@^7.20.1", "@babel/runtime@^7.22.5", "@babel/runtime@^7.23.2", "@babel/runtime@^7.23.6", "@babel/runtime@^7.5.5", "@babel/runtime@^7.8.4", "@babel/runtime@^7.8.7", "@babel/runtime@^7.9.2": version "7.23.6" resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.23.6.tgz#c05e610dc228855dc92ef1b53d07389ed8ab521d" integrity sha512-zHd0eUrf5GZoOWVCXp6koAKQTfZV07eit6bGPmJgnZdnSAvvZee6zniW2XMF7Cmc4ISOOnPy3QaSiIJGJkVEDQ== dependencies: regenerator-runtime "^0.14.0" +"@babel/runtime@^7.25.0", "@babel/runtime@^7.26.0": + version "7.26.0" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.26.0.tgz#8600c2f595f277c60815256418b85356a65173c1" + integrity sha512-FDSOghenHTiToteC/QRlv2q3DhPZ/oOXTBoirfWNx1Cx3TMVcGWQtMMmQcSvb/JjpNeGzx8Pq/b4fKEJuWm1sw== + dependencies: + regenerator-runtime "^0.14.0" + "@babel/template@^7.16.7", "@babel/template@^7.18.10", "@babel/template@^7.22.15", "@babel/template@^7.3.3": version "7.22.15" resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.22.15.tgz#09576efc3830f0430f4548ef971dde1350ef2f38" @@ -1110,6 +1241,15 @@ "@babel/parser" "^7.22.15" "@babel/types" "^7.22.15" +"@babel/template@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.25.9.tgz#ecb62d81a8a6f5dc5fe8abfc3901fc52ddf15016" + integrity sha512-9DGttpmPvIxBb/2uwpVo3dqJ+O6RooAFOS+lB+xDqoE2PVCE8nfoHMdZLpfCQRLwvohzXISPZcgxt80xLfsuwg== + dependencies: + "@babel/code-frame" "^7.25.9" + "@babel/parser" "^7.25.9" + "@babel/types" "^7.25.9" + "@babel/traverse@^7.13.0", "@babel/traverse@^7.16.7", "@babel/traverse@^7.16.8", "@babel/traverse@^7.20.1", "@babel/traverse@^7.23.2", "@babel/traverse@^7.7.2": version "7.23.2" resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.23.2.tgz#329c7a06735e144a506bdb2cad0268b7f46f4ad8" @@ -1126,6 +1266,19 @@ debug "^4.1.0" globals "^11.1.0" +"@babel/traverse@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.25.9.tgz#a50f8fe49e7f69f53de5bea7e413cd35c5e13c84" + integrity sha512-ZCuvfwOwlz/bawvAuvcj8rrithP2/N55Tzz342AkTvq4qaWbGfmCk/tKhNaV2cthijKrPAA8SRJV5WWe7IBMJw== + dependencies: + "@babel/code-frame" "^7.25.9" + "@babel/generator" "^7.25.9" + "@babel/parser" "^7.25.9" + "@babel/template" "^7.25.9" + "@babel/types" "^7.25.9" + debug "^4.3.1" + globals "^11.1.0" + "@babel/types@^7.0.0", "@babel/types@^7.12.6", "@babel/types@^7.16.0", "@babel/types@^7.16.7", "@babel/types@^7.16.8", "@babel/types@^7.18.6", "@babel/types@^7.20.0", "@babel/types@^7.20.2", "@babel/types@^7.22.15", "@babel/types@^7.22.5", "@babel/types@^7.23.0", "@babel/types@^7.3.0", "@babel/types@^7.3.3", "@babel/types@^7.4.4": version "7.23.0" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.23.0.tgz#8c1f020c9df0e737e4e247c0619f58c68458aaeb" @@ -1135,6 +1288,14 @@ "@babel/helper-validator-identifier" "^7.22.20" to-fast-properties "^2.0.0" +"@babel/types@^7.25.4", "@babel/types@^7.25.9", "@babel/types@^7.26.0": + version "7.26.0" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.26.0.tgz#deabd08d6b753bc8e0f198f8709fb575e31774ff" + integrity sha512-Z/yiTPj+lDVnF7lWeKCIJzaIkI0vYO87dMpZ4bg4TDrFe4XXLFWL1TbXU27gBP3QccxV9mZICCrnjnYlJjXHOA== + dependencies: + "@babel/helper-string-parser" "^7.25.9" + "@babel/helper-validator-identifier" "^7.25.9" + "@balena/dockerignore@^1.0.2": version "1.0.2" resolved "https://registry.yarnpkg.com/@balena/dockerignore/-/dockerignore-1.0.2.tgz#9ffe4726915251e8eb69f44ef3547e0da2c03e0d" @@ -1433,16 +1594,16 @@ dependencies: postcss-value-parser "^4.2.0" -"@emotion/babel-plugin@^11.11.0": - version "11.11.0" - resolved "https://registry.yarnpkg.com/@emotion/babel-plugin/-/babel-plugin-11.11.0.tgz#c2d872b6a7767a9d176d007f5b31f7d504bb5d6c" - integrity sha512-m4HEDZleaaCH+XgDDsPF15Ht6wTLsgDTeR3WYj9Q/k76JtWhrJjcP4+/XlG8LGT/Rol9qUfOIztXeA84ATpqPQ== +"@emotion/babel-plugin@^11.12.0": + version "11.12.0" + resolved "https://registry.yarnpkg.com/@emotion/babel-plugin/-/babel-plugin-11.12.0.tgz#7b43debb250c313101b3f885eba634f1d723fcc2" + integrity sha512-y2WQb+oP8Jqvvclh8Q55gLUyb7UFvgv7eJfsj7td5TToBrIUtPay2kMrZi4xjq9qw2vD0ZR5fSho0yqoFgX7Rw== 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" + "@emotion/hash" "^0.9.2" + "@emotion/memoize" "^0.9.0" + "@emotion/serialize" "^1.2.0" babel-plugin-macros "^3.1.0" convert-source-map "^1.5.0" escape-string-regexp "^4.0.0" @@ -1461,46 +1622,62 @@ "@emotion/weak-memoize" "^0.3.1" stylis "4.2.0" -"@emotion/hash@^0.9.1": - version "0.9.1" - resolved "https://registry.yarnpkg.com/@emotion/hash/-/hash-0.9.1.tgz#4ffb0055f7ef676ebc3a5a91fb621393294e2f43" - integrity sha512-gJB6HLm5rYwSLI6PQa+X1t5CFGrv1J1TWG+sOyMCeKz2ojaj6Fnl/rZEspogG+cvqbt4AE/2eIyD2QfLKTBNlQ== +"@emotion/cache@^11.13.0", "@emotion/cache@^11.13.1": + version "11.13.1" + resolved "https://registry.yarnpkg.com/@emotion/cache/-/cache-11.13.1.tgz#fecfc54d51810beebf05bf2a161271a1a91895d7" + integrity sha512-iqouYkuEblRcXmylXIwwOodiEK5Ifl7JcX7o6V4jI3iW4mLXX3dmt5xwBtIkJiQEXFAI+pC8X0i67yiPkH9Ucw== + dependencies: + "@emotion/memoize" "^0.9.0" + "@emotion/sheet" "^1.4.0" + "@emotion/utils" "^1.4.0" + "@emotion/weak-memoize" "^0.4.0" + stylis "4.2.0" -"@emotion/is-prop-valid@^1.2.1": - version "1.2.1" - resolved "https://registry.yarnpkg.com/@emotion/is-prop-valid/-/is-prop-valid-1.2.1.tgz#23116cf1ed18bfeac910ec6436561ecb1a3885cc" - integrity sha512-61Mf7Ufx4aDxx1xlDeOm8aFFigGHE4z+0sKCa+IHCeZKiyP9RLD0Mmx7m8b9/Cf37f7NAvQOOJAbQQGVr5uERw== +"@emotion/hash@^0.9.2": + version "0.9.2" + resolved "https://registry.yarnpkg.com/@emotion/hash/-/hash-0.9.2.tgz#ff9221b9f58b4dfe61e619a7788734bd63f6898b" + integrity sha512-MyqliTZGuOm3+5ZRSaaBGP3USLw6+EGykkwZns2EPC5g8jJ4z9OrdZY9apkl3+UP9+sdz76YYkwCKP5gh8iY3g== + +"@emotion/is-prop-valid@^1.3.0": + version "1.3.1" + resolved "https://registry.yarnpkg.com/@emotion/is-prop-valid/-/is-prop-valid-1.3.1.tgz#8d5cf1132f836d7adbe42cf0b49df7816fc88240" + integrity sha512-/ACwoqx7XQi9knQs/G0qKvv5teDMhD7bXYns9N/wM8ah8iNb8jZ2uNO0YOgiq2o2poIvVtJS2YALasQuMSQ7Kw== dependencies: - "@emotion/memoize" "^0.8.1" + "@emotion/memoize" "^0.9.0" "@emotion/memoize@^0.8.1": version "0.8.1" resolved "https://registry.yarnpkg.com/@emotion/memoize/-/memoize-0.8.1.tgz#c1ddb040429c6d21d38cc945fe75c818cfb68e17" integrity sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA== -"@emotion/react@^11.11.1": - version "11.11.1" - resolved "https://registry.yarnpkg.com/@emotion/react/-/react-11.11.1.tgz#b2c36afac95b184f73b08da8c214fdf861fa4157" - integrity sha512-5mlW1DquU5HaxjLkfkGN1GA/fvVGdyHURRiX/0FHl2cfIfRxSOfmxEH5YS43edp0OldZrZ+dkBKbngxcNCdZvA== +"@emotion/memoize@^0.9.0": + version "0.9.0" + resolved "https://registry.yarnpkg.com/@emotion/memoize/-/memoize-0.9.0.tgz#745969d649977776b43fc7648c556aaa462b4102" + integrity sha512-30FAj7/EoJ5mwVPOWhAyCX+FPfMDrVecJAM+Iw9NRoSl4BBAQeqj4cApHHUXOVvIPgLVDsCFoz/hGD+5QQD1GQ== + +"@emotion/react@^11.13.3": + version "11.13.3" + resolved "https://registry.yarnpkg.com/@emotion/react/-/react-11.13.3.tgz#a69d0de2a23f5b48e0acf210416638010e4bd2e4" + integrity sha512-lIsdU6JNrmYfJ5EbUCf4xW1ovy5wKQ2CkPRM4xogziOxH1nXxBSjpC9YqbFAP7circxMfYp+6x676BqWcEiixg== dependencies: "@babel/runtime" "^7.18.3" - "@emotion/babel-plugin" "^11.11.0" - "@emotion/cache" "^11.11.0" - "@emotion/serialize" "^1.1.2" - "@emotion/use-insertion-effect-with-fallbacks" "^1.0.1" - "@emotion/utils" "^1.2.1" - "@emotion/weak-memoize" "^0.3.1" + "@emotion/babel-plugin" "^11.12.0" + "@emotion/cache" "^11.13.0" + "@emotion/serialize" "^1.3.1" + "@emotion/use-insertion-effect-with-fallbacks" "^1.1.0" + "@emotion/utils" "^1.4.0" + "@emotion/weak-memoize" "^0.4.0" hoist-non-react-statics "^3.3.1" -"@emotion/serialize@^1.1.2": - version "1.1.2" - resolved "https://registry.yarnpkg.com/@emotion/serialize/-/serialize-1.1.2.tgz#017a6e4c9b8a803bd576ff3d52a0ea6fa5a62b51" - integrity sha512-zR6a/fkFP4EAcCMQtLOhIgpprZOwNmCldtpaISpvz348+DP4Mz8ZoKaGGCQpbzepNIUWbq4w6hNZkwDyKoS+HA== +"@emotion/serialize@^1.2.0", "@emotion/serialize@^1.3.0", "@emotion/serialize@^1.3.1", "@emotion/serialize@^1.3.2": + version "1.3.2" + resolved "https://registry.yarnpkg.com/@emotion/serialize/-/serialize-1.3.2.tgz#e1c1a2e90708d5d85d81ccaee2dfeb3cc0cccf7a" + integrity sha512-grVnMvVPK9yUVE6rkKfAJlYZgo0cu3l9iMC77V7DW6E1DUIrU68pSEXRmFZFOFB1QFo57TncmOcvcbMDWsL4yA== dependencies: - "@emotion/hash" "^0.9.1" - "@emotion/memoize" "^0.8.1" - "@emotion/unitless" "^0.8.1" - "@emotion/utils" "^1.2.1" + "@emotion/hash" "^0.9.2" + "@emotion/memoize" "^0.9.0" + "@emotion/unitless" "^0.10.0" + "@emotion/utils" "^1.4.1" csstype "^3.0.2" "@emotion/sheet@^1.2.2": @@ -1508,153 +1685,283 @@ resolved "https://registry.yarnpkg.com/@emotion/sheet/-/sheet-1.2.2.tgz#d58e788ee27267a14342303e1abb3d508b6d0fec" integrity sha512-0QBtGvaqtWi+nx6doRwDdBIzhNdZrXUppvTM4dtZZWEGTXL/XE/yJxLMGlDT1Gt+UHH5IX1n+jkXyytE/av7OA== -"@emotion/styled@^11.11.0": - version "11.11.0" - resolved "https://registry.yarnpkg.com/@emotion/styled/-/styled-11.11.0.tgz#26b75e1b5a1b7a629d7c0a8b708fbf5a9cdce346" - integrity sha512-hM5Nnvu9P3midq5aaXj4I+lnSfNi7Pmd4EWk1fOZ3pxookaQTNew6bp4JaCBYM4HVFZF9g7UjJmsUmC2JlxOng== +"@emotion/sheet@^1.4.0": + version "1.4.0" + resolved "https://registry.yarnpkg.com/@emotion/sheet/-/sheet-1.4.0.tgz#c9299c34d248bc26e82563735f78953d2efca83c" + integrity sha512-fTBW9/8r2w3dXWYM4HCB1Rdp8NLibOw2+XELH5m5+AkWiL/KqYX6dc0kKYlaYyKjrQ6ds33MCdMPEwgs2z1rqg== + +"@emotion/styled@^11.13.0": + version "11.13.0" + resolved "https://registry.yarnpkg.com/@emotion/styled/-/styled-11.13.0.tgz#633fd700db701472c7a5dbef54d6f9834e9fb190" + integrity sha512-tkzkY7nQhW/zC4hztlwucpT8QEZ6eUzpXDRhww/Eej4tFfO0FxQYWRyg/c5CCXa4d/f174kqeXYjuQRnhzf6dA== 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" - -"@emotion/unitless@^0.8.1": - version "0.8.1" - resolved "https://registry.yarnpkg.com/@emotion/unitless/-/unitless-0.8.1.tgz#182b5a4704ef8ad91bde93f7a860a88fd92c79a3" - integrity sha512-KOEGMu6dmJZtpadb476IsZBclKvILjopjUii3V+7MnXIQCYh8W3NgNcgwo21n9LXZX6EDIKvqfjYxXebDwxKmQ== - -"@emotion/use-insertion-effect-with-fallbacks@^1.0.1": - version "1.0.1" - resolved "https://registry.yarnpkg.com/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.0.1.tgz#08de79f54eb3406f9daaf77c76e35313da963963" - integrity sha512-jT/qyKZ9rzLErtrjGgdkMBn2OP8wl0G3sQlBb3YPryvKHsjvINUhVaPFfP+fpBcOkmrVOVEEHQFJ7nbj2TH2gw== + "@emotion/babel-plugin" "^11.12.0" + "@emotion/is-prop-valid" "^1.3.0" + "@emotion/serialize" "^1.3.0" + "@emotion/use-insertion-effect-with-fallbacks" "^1.1.0" + "@emotion/utils" "^1.4.0" + +"@emotion/unitless@^0.10.0": + version "0.10.0" + resolved "https://registry.yarnpkg.com/@emotion/unitless/-/unitless-0.10.0.tgz#2af2f7c7e5150f497bdabd848ce7b218a27cf745" + integrity sha512-dFoMUuQA20zvtVTuxZww6OHoJYgrzfKM1t52mVySDJnMSEa08ruEvdYQbhvyu6soU+NeLVd3yKfTfT0NeV6qGg== + +"@emotion/use-insertion-effect-with-fallbacks@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.1.0.tgz#1a818a0b2c481efba0cf34e5ab1e0cb2dcb9dfaf" + integrity sha512-+wBOcIV5snwGgI2ya3u99D7/FJquOIniQT1IKyDsBmEgwvpxMNeS65Oib7OnE2d2aY+3BU4OiH+0Wchf8yk3Hw== "@emotion/utils@^1.2.1": version "1.2.1" resolved "https://registry.yarnpkg.com/@emotion/utils/-/utils-1.2.1.tgz#bbab58465738d31ae4cb3dbb6fc00a5991f755e4" integrity sha512-Y2tGf3I+XVnajdItskUCn6LX+VUDmP6lTL4fcqsXAv43dnlbZiuW4MWQW38rW/BVWSE7Q/7+XQocmpnRYILUmg== +"@emotion/utils@^1.4.0", "@emotion/utils@^1.4.1": + version "1.4.1" + resolved "https://registry.yarnpkg.com/@emotion/utils/-/utils-1.4.1.tgz#b3adbb43de12ee2149541c4f1337d2eb7774f0ad" + integrity sha512-BymCXzCG3r72VKJxaYVwOXATqXIZ85cuvg0YOUDxMGNrKc1DJRZk8MgV5wyXRyEayIMd4FuXJIUgTBXvDNW5cA== + "@emotion/weak-memoize@^0.3.1": version "0.3.1" resolved "https://registry.yarnpkg.com/@emotion/weak-memoize/-/weak-memoize-0.3.1.tgz#d0fce5d07b0620caa282b5131c297bb60f9d87e6" integrity sha512-EsBwpc7hBUJWAsNPBmJy4hxWx12v6bshQsldrVmjxJoc3isbxhOrF2IcCpaXxfvq03NwkI7sbsOLXbYuqF/8Ww== +"@emotion/weak-memoize@^0.4.0": + version "0.4.0" + resolved "https://registry.yarnpkg.com/@emotion/weak-memoize/-/weak-memoize-0.4.0.tgz#5e13fac887f08c44f76b0ccaf3370eb00fec9bb6" + integrity sha512-snKqtPW01tN0ui7yu9rGv69aJXr/a/Ywvl11sUjNtEcRc+ng/mQriFL0wLXMef74iHa/EkftbDzU9F8iFbH+zg== + "@esbuild/aix-ppc64@0.20.2": version "0.20.2" resolved "https://registry.yarnpkg.com/@esbuild/aix-ppc64/-/aix-ppc64-0.20.2.tgz#a70f4ac11c6a1dfc18b8bbb13284155d933b9537" integrity sha512-D+EBOJHXdNZcLJRBkhENNG8Wji2kgc9AZ9KiPr1JuZjsNtyHzrsfLRrY0tk2H2aoFu6RANO1y1iPPUCDYWkb5g== +"@esbuild/aix-ppc64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz#c7184a326533fcdf1b8ee0733e21c713b975575f" + integrity sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ== + "@esbuild/android-arm64@0.20.2": version "0.20.2" resolved "https://registry.yarnpkg.com/@esbuild/android-arm64/-/android-arm64-0.20.2.tgz#db1c9202a5bc92ea04c7b6840f1bbe09ebf9e6b9" integrity sha512-mRzjLacRtl/tWU0SvD8lUEwb61yP9cqQo6noDZP/O8VkwafSYwZ4yWy24kan8jE/IMERpYncRt2dw438LP3Xmg== +"@esbuild/android-arm64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/android-arm64/-/android-arm64-0.21.5.tgz#09d9b4357780da9ea3a7dfb833a1f1ff439b4052" + integrity sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A== + "@esbuild/android-arm@0.20.2": version "0.20.2" resolved "https://registry.yarnpkg.com/@esbuild/android-arm/-/android-arm-0.20.2.tgz#3b488c49aee9d491c2c8f98a909b785870d6e995" integrity sha512-t98Ra6pw2VaDhqNWO2Oph2LXbz/EJcnLmKLGBJwEwXX/JAN83Fym1rU8l0JUWK6HkIbWONCSSatf4sf2NBRx/w== +"@esbuild/android-arm@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/android-arm/-/android-arm-0.21.5.tgz#9b04384fb771926dfa6d7ad04324ecb2ab9b2e28" + integrity sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg== + "@esbuild/android-x64@0.20.2": version "0.20.2" resolved "https://registry.yarnpkg.com/@esbuild/android-x64/-/android-x64-0.20.2.tgz#3b1628029e5576249d2b2d766696e50768449f98" integrity sha512-btzExgV+/lMGDDa194CcUQm53ncxzeBrWJcncOBxuC6ndBkKxnHdFJn86mCIgTELsooUmwUm9FkhSp5HYu00Rg== +"@esbuild/android-x64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/android-x64/-/android-x64-0.21.5.tgz#29918ec2db754cedcb6c1b04de8cd6547af6461e" + integrity sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA== + "@esbuild/darwin-arm64@0.20.2": version "0.20.2" resolved "https://registry.yarnpkg.com/@esbuild/darwin-arm64/-/darwin-arm64-0.20.2.tgz#6e8517a045ddd86ae30c6608c8475ebc0c4000bb" integrity sha512-4J6IRT+10J3aJH3l1yzEg9y3wkTDgDk7TSDFX+wKFiWjqWp/iCfLIYzGyasx9l0SAFPT1HwSCR+0w/h1ES/MjA== +"@esbuild/darwin-arm64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz#e495b539660e51690f3928af50a76fb0a6ccff2a" + integrity sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ== + "@esbuild/darwin-x64@0.20.2": version "0.20.2" resolved "https://registry.yarnpkg.com/@esbuild/darwin-x64/-/darwin-x64-0.20.2.tgz#90ed098e1f9dd8a9381695b207e1cff45540a0d0" integrity sha512-tBcXp9KNphnNH0dfhv8KYkZhjc+H3XBkF5DKtswJblV7KlT9EI2+jeA8DgBjp908WEuYll6pF+UStUCfEpdysA== +"@esbuild/darwin-x64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/darwin-x64/-/darwin-x64-0.21.5.tgz#c13838fa57372839abdddc91d71542ceea2e1e22" + integrity sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw== + "@esbuild/freebsd-arm64@0.20.2": version "0.20.2" resolved "https://registry.yarnpkg.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.20.2.tgz#d71502d1ee89a1130327e890364666c760a2a911" integrity sha512-d3qI41G4SuLiCGCFGUrKsSeTXyWG6yem1KcGZVS+3FYlYhtNoNgYrWcvkOoaqMhwXSMrZRl69ArHsGJ9mYdbbw== +"@esbuild/freebsd-arm64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.5.tgz#646b989aa20bf89fd071dd5dbfad69a3542e550e" + integrity sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g== + "@esbuild/freebsd-x64@0.20.2": version "0.20.2" resolved "https://registry.yarnpkg.com/@esbuild/freebsd-x64/-/freebsd-x64-0.20.2.tgz#aa5ea58d9c1dd9af688b8b6f63ef0d3d60cea53c" integrity sha512-d+DipyvHRuqEeM5zDivKV1KuXn9WeRX6vqSqIDgwIfPQtwMP4jaDsQsDncjTDDsExT4lR/91OLjRo8bmC1e+Cw== +"@esbuild/freebsd-x64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/freebsd-x64/-/freebsd-x64-0.21.5.tgz#aa615cfc80af954d3458906e38ca22c18cf5c261" + integrity sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ== + "@esbuild/linux-arm64@0.20.2": version "0.20.2" resolved "https://registry.yarnpkg.com/@esbuild/linux-arm64/-/linux-arm64-0.20.2.tgz#055b63725df678379b0f6db9d0fa85463755b2e5" integrity sha512-9pb6rBjGvTFNira2FLIWqDk/uaf42sSyLE8j1rnUpuzsODBq7FvpwHYZxQ/It/8b+QOS1RYfqgGFNLRI+qlq2A== +"@esbuild/linux-arm64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/linux-arm64/-/linux-arm64-0.21.5.tgz#70ac6fa14f5cb7e1f7f887bcffb680ad09922b5b" + integrity sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q== + "@esbuild/linux-arm@0.20.2": version "0.20.2" resolved "https://registry.yarnpkg.com/@esbuild/linux-arm/-/linux-arm-0.20.2.tgz#76b3b98cb1f87936fbc37f073efabad49dcd889c" integrity sha512-VhLPeR8HTMPccbuWWcEUD1Az68TqaTYyj6nfE4QByZIQEQVWBB8vup8PpR7y1QHL3CpcF6xd5WVBU/+SBEvGTg== +"@esbuild/linux-arm@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/linux-arm/-/linux-arm-0.21.5.tgz#fc6fd11a8aca56c1f6f3894f2bea0479f8f626b9" + integrity sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA== + "@esbuild/linux-ia32@0.20.2": version "0.20.2" resolved "https://registry.yarnpkg.com/@esbuild/linux-ia32/-/linux-ia32-0.20.2.tgz#c0e5e787c285264e5dfc7a79f04b8b4eefdad7fa" integrity sha512-o10utieEkNPFDZFQm9CoP7Tvb33UutoJqg3qKf1PWVeeJhJw0Q347PxMvBgVVFgouYLGIhFYG0UGdBumROyiig== +"@esbuild/linux-ia32@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/linux-ia32/-/linux-ia32-0.21.5.tgz#3271f53b3f93e3d093d518d1649d6d68d346ede2" + integrity sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg== + "@esbuild/linux-loong64@0.20.2": version "0.20.2" resolved "https://registry.yarnpkg.com/@esbuild/linux-loong64/-/linux-loong64-0.20.2.tgz#a6184e62bd7cdc63e0c0448b83801001653219c5" integrity sha512-PR7sp6R/UC4CFVomVINKJ80pMFlfDfMQMYynX7t1tNTeivQ6XdX5r2XovMmha/VjR1YN/HgHWsVcTRIMkymrgQ== +"@esbuild/linux-loong64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/linux-loong64/-/linux-loong64-0.21.5.tgz#ed62e04238c57026aea831c5a130b73c0f9f26df" + integrity sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg== + "@esbuild/linux-mips64el@0.20.2": version "0.20.2" resolved "https://registry.yarnpkg.com/@esbuild/linux-mips64el/-/linux-mips64el-0.20.2.tgz#d08e39ce86f45ef8fc88549d29c62b8acf5649aa" integrity sha512-4BlTqeutE/KnOiTG5Y6Sb/Hw6hsBOZapOVF6njAESHInhlQAghVVZL1ZpIctBOoTFbQyGW+LsVYZ8lSSB3wkjA== +"@esbuild/linux-mips64el@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/linux-mips64el/-/linux-mips64el-0.21.5.tgz#e79b8eb48bf3b106fadec1ac8240fb97b4e64cbe" + integrity sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg== + "@esbuild/linux-ppc64@0.20.2": version "0.20.2" resolved "https://registry.yarnpkg.com/@esbuild/linux-ppc64/-/linux-ppc64-0.20.2.tgz#8d252f0b7756ffd6d1cbde5ea67ff8fd20437f20" integrity sha512-rD3KsaDprDcfajSKdn25ooz5J5/fWBylaaXkuotBDGnMnDP1Uv5DLAN/45qfnf3JDYyJv/ytGHQaziHUdyzaAg== +"@esbuild/linux-ppc64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/linux-ppc64/-/linux-ppc64-0.21.5.tgz#5f2203860a143b9919d383ef7573521fb154c3e4" + integrity sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w== + "@esbuild/linux-riscv64@0.20.2": version "0.20.2" resolved "https://registry.yarnpkg.com/@esbuild/linux-riscv64/-/linux-riscv64-0.20.2.tgz#19f6dcdb14409dae607f66ca1181dd4e9db81300" integrity sha512-snwmBKacKmwTMmhLlz/3aH1Q9T8v45bKYGE3j26TsaOVtjIag4wLfWSiZykXzXuE1kbCE+zJRmwp+ZbIHinnVg== +"@esbuild/linux-riscv64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/linux-riscv64/-/linux-riscv64-0.21.5.tgz#07bcafd99322d5af62f618cb9e6a9b7f4bb825dc" + integrity sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA== + "@esbuild/linux-s390x@0.20.2": version "0.20.2" resolved "https://registry.yarnpkg.com/@esbuild/linux-s390x/-/linux-s390x-0.20.2.tgz#3c830c90f1a5d7dd1473d5595ea4ebb920988685" integrity sha512-wcWISOobRWNm3cezm5HOZcYz1sKoHLd8VL1dl309DiixxVFoFe/o8HnwuIwn6sXre88Nwj+VwZUvJf4AFxkyrQ== +"@esbuild/linux-s390x@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/linux-s390x/-/linux-s390x-0.21.5.tgz#b7ccf686751d6a3e44b8627ababc8be3ef62d8de" + integrity sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A== + "@esbuild/linux-x64@0.20.2": version "0.20.2" resolved "https://registry.yarnpkg.com/@esbuild/linux-x64/-/linux-x64-0.20.2.tgz#86eca35203afc0d9de0694c64ec0ab0a378f6fff" integrity sha512-1MdwI6OOTsfQfek8sLwgyjOXAu+wKhLEoaOLTjbijk6E2WONYpH9ZU2mNtR+lZ2B4uwr+usqGuVfFT9tMtGvGw== +"@esbuild/linux-x64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/linux-x64/-/linux-x64-0.21.5.tgz#6d8f0c768e070e64309af8004bb94e68ab2bb3b0" + integrity sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ== + "@esbuild/netbsd-x64@0.20.2": version "0.20.2" resolved "https://registry.yarnpkg.com/@esbuild/netbsd-x64/-/netbsd-x64-0.20.2.tgz#e771c8eb0e0f6e1877ffd4220036b98aed5915e6" integrity sha512-K8/DhBxcVQkzYc43yJXDSyjlFeHQJBiowJ0uVL6Tor3jGQfSGHNNJcWxNbOI8v5k82prYqzPuwkzHt3J1T1iZQ== +"@esbuild/netbsd-x64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/netbsd-x64/-/netbsd-x64-0.21.5.tgz#bbe430f60d378ecb88decb219c602667387a6047" + integrity sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg== + "@esbuild/openbsd-x64@0.20.2": version "0.20.2" resolved "https://registry.yarnpkg.com/@esbuild/openbsd-x64/-/openbsd-x64-0.20.2.tgz#9a795ae4b4e37e674f0f4d716f3e226dd7c39baf" integrity sha512-eMpKlV0SThJmmJgiVyN9jTPJ2VBPquf6Kt/nAoo6DgHAoN57K15ZghiHaMvqjCye/uU4X5u3YSMgVBI1h3vKrQ== +"@esbuild/openbsd-x64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/openbsd-x64/-/openbsd-x64-0.21.5.tgz#99d1cf2937279560d2104821f5ccce220cb2af70" + integrity sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow== + "@esbuild/sunos-x64@0.20.2": version "0.20.2" resolved "https://registry.yarnpkg.com/@esbuild/sunos-x64/-/sunos-x64-0.20.2.tgz#7df23b61a497b8ac189def6e25a95673caedb03f" integrity sha512-2UyFtRC6cXLyejf/YEld4Hajo7UHILetzE1vsRcGL3earZEW77JxrFjH4Ez2qaTiEfMgAXxfAZCm1fvM/G/o8w== +"@esbuild/sunos-x64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/sunos-x64/-/sunos-x64-0.21.5.tgz#08741512c10d529566baba837b4fe052c8f3487b" + integrity sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg== + "@esbuild/win32-arm64@0.20.2": version "0.20.2" resolved "https://registry.yarnpkg.com/@esbuild/win32-arm64/-/win32-arm64-0.20.2.tgz#f1ae5abf9ca052ae11c1bc806fb4c0f519bacf90" integrity sha512-GRibxoawM9ZCnDxnP3usoUDO9vUkpAxIIZ6GQI+IlVmr5kP3zUq+l17xELTHMWTWzjxa2guPNyrpq1GWmPvcGQ== +"@esbuild/win32-arm64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/win32-arm64/-/win32-arm64-0.21.5.tgz#675b7385398411240735016144ab2e99a60fc75d" + integrity sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A== + "@esbuild/win32-ia32@0.20.2": version "0.20.2" resolved "https://registry.yarnpkg.com/@esbuild/win32-ia32/-/win32-ia32-0.20.2.tgz#241fe62c34d8e8461cd708277813e1d0ba55ce23" integrity sha512-HfLOfn9YWmkSKRQqovpnITazdtquEW8/SoHW7pWpuEeguaZI4QnCRW6b+oZTztdBnZOS2hqJ6im/D5cPzBTTlQ== +"@esbuild/win32-ia32@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/win32-ia32/-/win32-ia32-0.21.5.tgz#1bfc3ce98aa6ca9a0969e4d2af72144c59c1193b" + integrity sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA== + "@esbuild/win32-x64@0.20.2": version "0.20.2" resolved "https://registry.yarnpkg.com/@esbuild/win32-x64/-/win32-x64-0.20.2.tgz#9c907b21e30a52db959ba4f80bb01a0cc403d5cc" integrity sha512-N49X4lJX27+l9jbLKSqZ6bKNjzQvHaT8IIFUy+YIqmXQdjYCToGWwOItDrfby14c78aDd5NHQl29xingXfCdLQ== +"@esbuild/win32-x64@0.21.5": + version "0.21.5" + resolved "https://registry.yarnpkg.com/@esbuild/win32-x64/-/win32-x64-0.21.5.tgz#acad351d582d157bb145535db2a6ff53dd514b5c" + integrity sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw== + "@eslint-community/eslint-utils@^4.2.0": version "4.4.0" resolved "https://registry.yarnpkg.com/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz#a23514e8fb9af1269d5f7788aa556798d61c6b59" @@ -1714,10 +2021,10 @@ resolved "https://registry.yarnpkg.com/@floating-ui/utils/-/utils-0.1.1.tgz#1a5b1959a528e374e8037c4396c3e825d6cf4a83" integrity sha512-m0G6wlnhm/AX0H12IOWtK8gASEMffnX08RtKkCgTdHb9JpHKGloI7icFfLg9ZmQeavcvR0PKmzxClyuFPSjKWw== -"@fontsource/inter@^5.0.13": - version "5.0.14" - resolved "https://registry.yarnpkg.com/@fontsource/inter/-/inter-5.0.14.tgz#7e5795b4ef685974945a57dc5a582cc6e4994abf" - integrity sha512-5H+rWUemTnUrtF5Dov2zDq+RWDIoXCmSrupNIfI5x7udZnoUTNhr+k9sYxtNS22mIngUQHZUPexTMj0/7P0Ucg== +"@fontsource/inter@^5.1.0": + version "5.1.0" + resolved "https://registry.yarnpkg.com/@fontsource/inter/-/inter-5.1.0.tgz#ab629b2c662457022d2d6a29854b8dc8ba538c47" + integrity sha512-zKZR3kf1G0noIes1frLfOHP5EXVVm0M7sV/l9f/AaYf+M/DId35FO4LkigWjqWYjTJZGgplhdv4cB+ssvCqr5A== "@fullcalendar/core@^6.1.14": version "6.1.14" @@ -1786,6 +2093,18 @@ resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz#4a2868d75d6d6963e423bcf90b7fd1be343409d3" integrity sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA== +"@isaacs/cliui@^8.0.2": + version "8.0.2" + resolved "https://registry.yarnpkg.com/@isaacs/cliui/-/cliui-8.0.2.tgz#b37667b7bc181c168782259bab42474fbf52b550" + integrity sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA== + dependencies: + string-width "^5.1.2" + string-width-cjs "npm:string-width@^4.2.0" + strip-ansi "^7.0.1" + strip-ansi-cjs "npm:strip-ansi@^6.0.1" + wrap-ansi "^8.1.0" + wrap-ansi-cjs "npm:wrap-ansi@^7.0.0" + "@istanbuljs/load-nyc-config@^1.0.0": version "1.1.0" resolved "https://registry.yarnpkg.com/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz#fd3db1d59ecf7cf121e80650bb86712f9b55eced" @@ -1797,7 +2116,7 @@ js-yaml "^3.13.1" resolve-from "^5.0.0" -"@istanbuljs/schema@^0.1.2": +"@istanbuljs/schema@^0.1.2", "@istanbuljs/schema@^0.1.3": version "0.1.3" resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.3.tgz#e45e384e4b8ec16bce2fd903af78450f6bf7ec98" integrity sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA== @@ -1814,6 +2133,18 @@ jest-util "^27.5.1" slash "^3.0.0" +"@jest/console@^29.7.0": + version "29.7.0" + resolved "https://registry.yarnpkg.com/@jest/console/-/console-29.7.0.tgz#cd4822dbdb84529265c5a2bdb529a3c9cc950ffc" + integrity sha512-5Ni4CU7XHQi32IJ398EEP4RrB8eV09sXP2ROqD4bksHrnTree52PsxvX8tpL8LvTZ3pFzXyPbNQReSN41CAhOg== + 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" + "@jest/core@^27.5.1": version "27.5.1" resolved "https://registry.yarnpkg.com/@jest/core/-/core-27.5.1.tgz#267ac5f704e09dc52de2922cbf3af9edcd64b626" @@ -1848,6 +2179,40 @@ slash "^3.0.0" strip-ansi "^6.0.0" +"@jest/core@^29.7.0": + version "29.7.0" + resolved "https://registry.yarnpkg.com/@jest/core/-/core-29.7.0.tgz#b6cccc239f30ff36609658c5a5e2291757ce448f" + integrity sha512-n7aeXWKMnGtDA48y8TLWJPJmLmmZ642Ceo78cYWEpiD7FzDgmNDV/GCVRorPABdXLJZ/9wzzgZAlHjXjxDHGsg== + 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" + "@jest/environment@^27.5.1": version "27.5.1" resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-27.5.1.tgz#d7425820511fe7158abbecc010140c3fd3be9c74" @@ -1858,6 +2223,31 @@ "@types/node" "*" jest-mock "^27.5.1" +"@jest/environment@^29.7.0": + version "29.7.0" + resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-29.7.0.tgz#24d61f54ff1f786f3cd4073b4b94416383baf2a7" + integrity sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw== + dependencies: + "@jest/fake-timers" "^29.7.0" + "@jest/types" "^29.6.3" + "@types/node" "*" + jest-mock "^29.7.0" + +"@jest/expect-utils@^29.7.0": + version "29.7.0" + resolved "https://registry.yarnpkg.com/@jest/expect-utils/-/expect-utils-29.7.0.tgz#023efe5d26a8a70f21677d0a1afc0f0a44e3a1c6" + integrity sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA== + dependencies: + jest-get-type "^29.6.3" + +"@jest/expect@^29.7.0": + version "29.7.0" + resolved "https://registry.yarnpkg.com/@jest/expect/-/expect-29.7.0.tgz#76a3edb0cb753b70dfbfe23283510d3d45432bf2" + integrity sha512-8uMeAMycttpva3P1lBHB8VciS9V0XAr3GymPpipdyQXbBcuhkLQOSe8E/p92RyAdToS6ZD1tFkX+CkhoECE0dQ== + dependencies: + expect "^29.7.0" + jest-snapshot "^29.7.0" + "@jest/fake-timers@^27.5.1": version "27.5.1" resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-27.5.1.tgz#76979745ce0579c8a94a4678af7a748eda8ada74" @@ -1870,6 +2260,18 @@ jest-mock "^27.5.1" jest-util "^27.5.1" +"@jest/fake-timers@^29.7.0": + version "29.7.0" + resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-29.7.0.tgz#fd91bf1fffb16d7d0d24a426ab1a47a49881a565" + 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" + "@jest/globals@^27.5.1": version "27.5.1" resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-27.5.1.tgz#7ac06ce57ab966566c7963431cef458434601b2b" @@ -1879,6 +2281,16 @@ "@jest/types" "^27.5.1" expect "^27.5.1" +"@jest/globals@^29.7.0": + version "29.7.0" + resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-29.7.0.tgz#8d9290f9ec47ff772607fa864ca1d5a2efae1d4d" + integrity sha512-mpiz3dutLbkW2MNFubUGUEVLkTGiqW6yLVTA+JbP6fI6J5iL9Y0Nlg8k95pcF8ctKwCS7WVxteBs29hhfAotzQ== + dependencies: + "@jest/environment" "^29.7.0" + "@jest/expect" "^29.7.0" + "@jest/types" "^29.6.3" + jest-mock "^29.7.0" + "@jest/reporters@^27.5.1": version "27.5.1" resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-27.5.1.tgz#ceda7be96170b03c923c37987b64015812ffec04" @@ -1910,12 +2322,42 @@ terminal-link "^2.0.0" v8-to-istanbul "^8.1.0" -"@jest/schemas@^29.0.0": - version "29.0.0" - resolved "https://registry.yarnpkg.com/@jest/schemas/-/schemas-29.0.0.tgz#5f47f5994dd4ef067fb7b4188ceac45f77fe952a" - integrity sha512-3Ab5HgYIIAnS0HjqJHQYZS+zXc4tUmTmBH3z83ajI6afXp8X3ZtdLX+nXx+I7LNkJD7uN9LAVhgnjDgZa2z0kA== +"@jest/reporters@^29.7.0": + version "29.7.0" + resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-29.7.0.tgz#04b262ecb3b8faa83b0b3d321623972393e8f4c7" + integrity sha512-DApq0KJbJOEzAFYjHADNNxAE3KbhxQB1y5Kplb5Waqw6zVbuWatSnMjE5gs8FUgEPmNsnZA3NCWl9NG0ia04Pg== dependencies: - "@sinclair/typebox" "^0.24.1" + "@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" + +"@jest/schemas@^29.6.3": + version "29.6.3" + resolved "https://registry.yarnpkg.com/@jest/schemas/-/schemas-29.6.3.tgz#430b5ce8a4e0044a7e3819663305a7b3091c8e03" + integrity sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA== + dependencies: + "@sinclair/typebox" "^0.27.8" "@jest/source-map@^27.5.1": version "27.5.1" @@ -1926,6 +2368,15 @@ graceful-fs "^4.2.9" source-map "^0.6.0" +"@jest/source-map@^29.6.3": + version "29.6.3" + resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-29.6.3.tgz#d90ba772095cf37a34a5eb9413f1b562a08554c4" + integrity sha512-MHjT95QuipcPrpLM+8JMSzFx6eHp5Bm+4XeFDJlwsvVBjmKNiIAvasGK2fxz2WbGRlnvqehFbh07MMa7n3YJnw== + dependencies: + "@jridgewell/trace-mapping" "^0.3.18" + callsites "^3.0.0" + graceful-fs "^4.2.9" + "@jest/test-result@^27.5.1": version "27.5.1" resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-27.5.1.tgz#56a6585fa80f7cdab72b8c5fc2e871d03832f5bb" @@ -1936,6 +2387,16 @@ "@types/istanbul-lib-coverage" "^2.0.0" collect-v8-coverage "^1.0.0" +"@jest/test-result@^29.7.0": + version "29.7.0" + resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-29.7.0.tgz#8db9a80aa1a097bb2262572686734baed9b1657c" + integrity sha512-Fdx+tv6x1zlkJPcWXmMDAG2HBnaR9XPSd5aDWQVsfrZmLVT3lU1cwyxLgRmXR9yrq4NBoEm9BMsfgFzTQAbJYA== + dependencies: + "@jest/console" "^29.7.0" + "@jest/types" "^29.6.3" + "@types/istanbul-lib-coverage" "^2.0.0" + collect-v8-coverage "^1.0.0" + "@jest/test-sequencer@^27.5.1": version "27.5.1" resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-27.5.1.tgz#4057e0e9cea4439e544c6353c6affe58d095745b" @@ -1946,6 +2407,16 @@ jest-haste-map "^27.5.1" jest-runtime "^27.5.1" +"@jest/test-sequencer@^29.7.0": + version "29.7.0" + resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-29.7.0.tgz#6cef977ce1d39834a3aea887a1726628a6f072ce" + integrity sha512-GQwJ5WZVrKnOJuiYiAF52UNUJXgTZx1NHjFSEB0qEMmSZKAkdMoIzw/Cj6x6NF4AvV23AUqDpFzQkN/eYCYTxw== + dependencies: + "@jest/test-result" "^29.7.0" + graceful-fs "^4.2.9" + jest-haste-map "^29.7.0" + slash "^3.0.0" + "@jest/transform@^27.5.1": version "27.5.1" resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-27.5.1.tgz#6c3501dcc00c4c08915f292a600ece5ecfe1f409" @@ -1967,6 +2438,27 @@ source-map "^0.6.1" write-file-atomic "^3.0.0" +"@jest/transform@^29.7.0": + version "29.7.0" + resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-29.7.0.tgz#df2dd9c346c7d7768b8a06639994640c642e284c" + integrity sha512-ok/BTPFzFKVMwO5eOHRrvnBVHdRy9IrsrW1GpMaQ9MCnilNLXQKmAX8s1YXDFaai9xJpac2ySzV0YeRRECr2Vw== + 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" + "@jest/types@^27.5.1": version "27.5.1" resolved "https://registry.yarnpkg.com/@jest/types/-/types-27.5.1.tgz#3c79ec4a8ba61c170bf937bcf9e98a9df175ec80" @@ -1978,6 +2470,18 @@ "@types/yargs" "^16.0.0" chalk "^4.0.0" +"@jest/types@^29.6.3": + version "29.6.3" + resolved "https://registry.yarnpkg.com/@jest/types/-/types-29.6.3.tgz#1131f8cf634e7e84c5e77bab12f052af585fba59" + 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" + "@jridgewell/gen-mapping@^0.3.0", "@jridgewell/gen-mapping@^0.3.2": version "0.3.2" resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz#c1aedc61e853f2bb9f5dfe6d4442d3b565b253b9" @@ -1987,16 +2491,35 @@ "@jridgewell/sourcemap-codec" "^1.4.10" "@jridgewell/trace-mapping" "^0.3.9" +"@jridgewell/gen-mapping@^0.3.5": + version "0.3.5" + resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz#dcce6aff74bdf6dad1a95802b69b04a2fcb1fb36" + integrity sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg== + dependencies: + "@jridgewell/set-array" "^1.2.1" + "@jridgewell/sourcemap-codec" "^1.4.10" + "@jridgewell/trace-mapping" "^0.3.24" + "@jridgewell/resolve-uri@3.1.0", "@jridgewell/resolve-uri@^3.0.3": version "3.1.0" resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz#2203b118c157721addfe69d47b70465463066d78" integrity sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w== +"@jridgewell/resolve-uri@^3.1.0": + version "3.1.2" + resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz#7a0ee601f60f99a20c7c7c5ff0c80388c1189bd6" + integrity sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw== + "@jridgewell/set-array@^1.0.1": version "1.1.2" resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.1.2.tgz#7c6cf998d6d20b914c0a55a91ae928ff25965e72" integrity sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw== +"@jridgewell/set-array@^1.2.1": + version "1.2.1" + resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.2.1.tgz#558fb6472ed16a4c850b889530e6b36438c49280" + integrity sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A== + "@jridgewell/source-map@^0.3.2": version "0.3.2" resolved "https://registry.yarnpkg.com/@jridgewell/source-map/-/source-map-0.3.2.tgz#f45351aaed4527a298512ec72f81040c998580fb" @@ -2015,6 +2538,11 @@ resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz#d7c6e6755c78567a951e04ab52ef0fd26de59f32" integrity sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg== +"@jridgewell/sourcemap-codec@^1.4.14", "@jridgewell/sourcemap-codec@^1.5.0": + version "1.5.0" + resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz#3188bcb273a414b0d215fd22a58540b989b9409a" + integrity sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ== + "@jridgewell/trace-mapping@0.3.9": version "0.3.9" resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz#6534fd5933a53ba7cbf3a17615e273a0d1273ff9" @@ -2031,6 +2559,14 @@ "@jridgewell/resolve-uri" "3.1.0" "@jridgewell/sourcemap-codec" "1.4.14" +"@jridgewell/trace-mapping@^0.3.12", "@jridgewell/trace-mapping@^0.3.18", "@jridgewell/trace-mapping@^0.3.23", "@jridgewell/trace-mapping@^0.3.24", "@jridgewell/trace-mapping@^0.3.25": + version "0.3.25" + resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz#15f190e98895f3fc23276ee14bc76b675c2e50f0" + integrity sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ== + dependencies: + "@jridgewell/resolve-uri" "^3.1.0" + "@jridgewell/sourcemap-codec" "^1.4.14" + "@lukeed/csprng@^1.0.0": version "1.0.1" resolved "https://registry.yarnpkg.com/@lukeed/csprng/-/csprng-1.0.1.tgz#625e93a0edb2c830e3c52ce2d67b9d53377c6a66" @@ -2066,58 +2602,59 @@ https-proxy-agent "^5.0.1" node-downloader-helper "^2.1.5" -"@matrix-widget-toolkit/api@^3.2.2": - version "3.2.2" - resolved "https://registry.yarnpkg.com/@matrix-widget-toolkit/api/-/api-3.2.2.tgz#e77f9eccab4e1092d054285d79926eea97416045" - integrity sha512-O2ZG6LSAV8zErrdxLTUOsW+XouC7bgjEpk0Ij/fFObopxF3lI5rV5cFgo+7p8bcPcI6dLP6NSOr7rz08mfQu6A== +"@matrix-widget-toolkit/api@^3.4.2": + version "3.4.2" + resolved "https://registry.yarnpkg.com/@matrix-widget-toolkit/api/-/api-3.4.2.tgz#ce42a841c8cb51d8c6a61016e9fdff3703a734b9" + integrity sha512-zATxVBtlxsEN1VeIp4NGNpy/SdHPdKXaN+NbVMYG1CU3PryVENngCWjr5038fMpem2ZpLtyjxyUSvPlRKT8kbw== dependencies: - matrix-widget-api "^1.6.0" - qs "^6.11.2" + matrix-widget-api "^1.9.0" + qs "^6.13.0" rxjs "^7.8.1" -"@matrix-widget-toolkit/mui@^1.1.6": - version "1.1.6" - resolved "https://registry.yarnpkg.com/@matrix-widget-toolkit/mui/-/mui-1.1.6.tgz#889593e2fe9b46ce5d5744fee0c7640fa83aaf23" - integrity sha512-dWMkxu03x172pHVNkT62KM1thyK0Pa4jHztPW/sg7VPfKAUKGU1pt2w6Jp/tsMp8i3vPr5sW5bKT68Byue5s2g== - dependencies: - "@emotion/cache" "^11.11.0" - "@emotion/react" "^11.11.1" - "@emotion/styled" "^11.11.0" - "@fontsource/inter" "^5.0.13" - "@matrix-widget-toolkit/api" "^3.2.2" - "@matrix-widget-toolkit/react" "^1.0.6" - "@mui/icons-material" "^5.14.14" - "@mui/material" "^5.14.14" - "@mui/utils" "^5.14.13" - i18next "^23.5.1" - i18next-browser-languagedetector "^7.1.0" - i18next-resources-to-backend "^1.1.3" - lodash "^4.17.21" - matrix-widget-api "^1.6.0" - react "^17.0.2" - react-i18next "^13.3.0" - react-use "^17.4.0" - -"@matrix-widget-toolkit/react@^1.0.5", "@matrix-widget-toolkit/react@^1.0.6": - version "1.0.6" - resolved "https://registry.yarnpkg.com/@matrix-widget-toolkit/react/-/react-1.0.6.tgz#1cc3f18b17dc0ee8ade81e341e1849e74a37d8a1" - integrity sha512-bIwZYtnBRi7NdZf1xM4kthH3jaAd+zxWx43bQxqNpjShKg8KYyNWmW29dMQ/55Dyd6G1XheWctt+H9B+z8VJ7g== +"@matrix-widget-toolkit/mui@^2.0.6": + version "2.0.6" + resolved "https://registry.yarnpkg.com/@matrix-widget-toolkit/mui/-/mui-2.0.6.tgz#ef6fe6644f1021d9a21ee5204f45ba45a3dbe205" + integrity sha512-NKkiBytqm2na1COPwd8rw0QILtq2BohbwnFH62ieDPm4ithiAnMLIrL/LklRRQfLzyTb/I10nN/V2PNWgm6byA== + dependencies: + "@emotion/cache" "^11.13.1" + "@emotion/react" "^11.13.3" + "@emotion/styled" "^11.13.0" + "@fontsource/inter" "^5.1.0" + "@matrix-widget-toolkit/api" "^3.4.2" + "@matrix-widget-toolkit/react" "^2.0.3" + "@mui/icons-material" "^6.1.4" + "@mui/material" "^6.1.4" + "@mui/utils" "^6.0.2" + i18next "^23.16.0" + i18next-browser-languagedetector "^8.0.0" + i18next-resources-to-backend "^1.2.1" + lodash-es "^4.17.21" + matrix-widget-api "^1.9.0" + react "^18.2.0" + react-i18next "^15.0.3" + react-use "^17.5.1" + +"@matrix-widget-toolkit/react@^2.0.3": + version "2.0.3" + resolved "https://registry.yarnpkg.com/@matrix-widget-toolkit/react/-/react-2.0.3.tgz#148cf31c4571e7f5dc0eabf176d7432fde54b577" + integrity sha512-YoWurD8To9HyX19EEi026+O3O/nOqyu95qUoKxvPLNv8IINrStdGrp6yBHqiQ4jKh7oKgdAXO4AsqZwauAaLaw== dependencies: - "@matrix-widget-toolkit/api" "^3.2.2" - matrix-widget-api "^1.6.0" - react "^17.0.2" + "@matrix-widget-toolkit/api" "^3.4.2" + matrix-widget-api "^1.9.0" + react "^18.2.0" react-error-boundary "^3.1.4" - react-use "^17.4.0" + react-use "^17.5.1" -"@matrix-widget-toolkit/testing@^2.3.2": - version "2.3.2" - resolved "https://registry.yarnpkg.com/@matrix-widget-toolkit/testing/-/testing-2.3.2.tgz#f8658db473c1fe08d8f5d5da151038ad0fff6ea2" - integrity sha512-4Tie1Bp+CVuaqinRp40odNIitmD2IFj4rQuew/955J5dWVUsKkVGxAHa2ZsMciqGWg++N2Otao2veya30qnasw== +"@matrix-widget-toolkit/testing@^3.0.1": + version "3.0.1" + resolved "https://registry.yarnpkg.com/@matrix-widget-toolkit/testing/-/testing-3.0.1.tgz#b0eaad61470b304a79f4ed6a44eebf517eb33ea9" + integrity sha512-DTTouK2mZd6lWO4vJNNdkP2WYhVTXuAvTYF+0WayzffFrHHQHdm2mIoFUrBXY+0786X5ERbtYTOdb5Hy3x54lw== dependencies: - "@matrix-widget-toolkit/api" "^3.2.2" - lodash "^4.17.21" - matrix-widget-api "^1.6.0" + "@matrix-widget-toolkit/api" "^3.4.2" + lodash-es "^4.17.21" + matrix-widget-api "^1.9.0" rxjs "^7.8.1" + vitest "^2.1.3" "@microsoft/tsdoc@^0.14.2": version "0.14.2" @@ -2164,13 +2701,25 @@ resolved "https://registry.yarnpkg.com/@mui/core-downloads-tracker/-/core-downloads-tracker-5.15.3.tgz#40fc854d7cf5505a182a4e121149dfe21cd277ef" integrity sha512-sWeihiVyxdJjpLkp8SHkTy9kt2M/o11M60G1MzwljGL2BXdM3Ktzqv5QaQHdi00y7Y1ulvtI3GOSxP2xU8mQJw== -"@mui/icons-material@^5.14.14", "@mui/icons-material@^5.15.3": +"@mui/core-downloads-tracker@^6.1.6": + version "6.1.6" + resolved "https://registry.yarnpkg.com/@mui/core-downloads-tracker/-/core-downloads-tracker-6.1.6.tgz#73d96e75689b2af922a989123149a3497c8a96fa" + integrity sha512-nz1SlR9TdBYYPz4qKoNasMPRiGb4PaIHFkzLzhju0YVYS5QSuFF2+n7CsiHMIDcHv3piPu/xDWI53ruhOqvZwQ== + +"@mui/icons-material@^5.15.3": version "5.15.3" resolved "https://registry.yarnpkg.com/@mui/icons-material/-/icons-material-5.15.3.tgz#eee07582ea3ad913982b7843ff1612d0fad21278" integrity sha512-7LEs8AnO2Se/XYH+CcJndRsGAE+M8KAExiiQHf0V11poqmPVGcbbY82Ry2IUYf9+rOilCVnWI18ErghZ625BPQ== dependencies: "@babel/runtime" "^7.23.6" +"@mui/icons-material@^6.1.4": + version "6.1.6" + resolved "https://registry.yarnpkg.com/@mui/icons-material/-/icons-material-6.1.6.tgz#bfaf32874a9f9ec88c07d1ca132d1a0671e9ed7c" + integrity sha512-5r9urIL2lxXb/sPN3LFfFYEibsXJUb986HhhIeu1gOcte460pwdSiEhBSxkAuyT8Dj7jvu9MjqSBmSumQELo8A== + dependencies: + "@babel/runtime" "^7.26.0" + "@mui/lab@^5.0.0-alpha.159": version "5.0.0-alpha.159" resolved "https://registry.yarnpkg.com/@mui/lab/-/lab-5.0.0-alpha.159.tgz#d2b97b3e6b1b51d11d85f46096618490fe6d4e67" @@ -2184,7 +2733,7 @@ clsx "^2.0.0" prop-types "^15.8.1" -"@mui/material@^5.14.14", "@mui/material@^5.15.3": +"@mui/material@^5.15.3": version "5.15.3" resolved "https://registry.yarnpkg.com/@mui/material/-/material-5.15.3.tgz#b77f1ac1275e5bf13b735e8224bdd301aab918c4" integrity sha512-DODBBMouyq1B5f3YkEWL9vO8pGCxuEGqtfpltF6peMJzz/78tJFyLQsDas9MNLC/8AdFu2BQdkK7wox5UBPTAA== @@ -2202,6 +2751,24 @@ react-is "^18.2.0" react-transition-group "^4.4.5" +"@mui/material@^6.1.4": + version "6.1.6" + resolved "https://registry.yarnpkg.com/@mui/material/-/material-6.1.6.tgz#505d7300401f6af38426006d7fb3b8707dc10fbc" + integrity sha512-1yvejiQ/601l5AK3uIdUlAVElyCxoqKnl7QA+2oFB/2qYPWfRwDgavW/MoywS5Y2gZEslcJKhe0s2F3IthgFgw== + dependencies: + "@babel/runtime" "^7.26.0" + "@mui/core-downloads-tracker" "^6.1.6" + "@mui/system" "^6.1.6" + "@mui/types" "^7.2.19" + "@mui/utils" "^6.1.6" + "@popperjs/core" "^2.11.8" + "@types/react-transition-group" "^4.4.11" + clsx "^2.1.1" + csstype "^3.1.3" + prop-types "^15.8.1" + react-is "^18.3.1" + react-transition-group "^4.4.5" + "@mui/private-theming@^5.15.3": version "5.15.3" resolved "https://registry.yarnpkg.com/@mui/private-theming/-/private-theming-5.15.3.tgz#2db0177d847dc6b28721d93308ed05d434a77c53" @@ -2211,6 +2778,15 @@ "@mui/utils" "^5.15.3" prop-types "^15.8.1" +"@mui/private-theming@^6.1.6": + version "6.1.6" + resolved "https://registry.yarnpkg.com/@mui/private-theming/-/private-theming-6.1.6.tgz#9966bf2eca3d626cddd6e173752f46d344c7d7d1" + integrity sha512-ioAiFckaD/fJSnTrUMWgjl9HYBWt7ixCh7zZw7gDZ+Tae7NuprNV6QJK95EidDT7K0GetR2rU3kAeIR61Myttw== + dependencies: + "@babel/runtime" "^7.26.0" + "@mui/utils" "^6.1.6" + prop-types "^15.8.1" + "@mui/styled-engine@^5.15.3": version "5.15.3" resolved "https://registry.yarnpkg.com/@mui/styled-engine/-/styled-engine-5.15.3.tgz#85cb294d701b1a3f197bfc90e87ec0685a0943b2" @@ -2221,6 +2797,18 @@ csstype "^3.1.2" prop-types "^15.8.1" +"@mui/styled-engine@^6.1.6": + version "6.1.6" + resolved "https://registry.yarnpkg.com/@mui/styled-engine/-/styled-engine-6.1.6.tgz#61996621a0297aac16061e1739a738a899613fd6" + integrity sha512-I+yS1cSuSvHnZDBO7e7VHxTWpj+R7XlSZvTC4lS/OIbUNJOMMSd3UDP6V2sfwzAdmdDNBi7NGCRv2SZ6O9hGDA== + dependencies: + "@babel/runtime" "^7.26.0" + "@emotion/cache" "^11.13.1" + "@emotion/serialize" "^1.3.2" + "@emotion/sheet" "^1.4.0" + csstype "^3.1.3" + prop-types "^15.8.1" + "@mui/system@^5.15.3": version "5.15.3" resolved "https://registry.yarnpkg.com/@mui/system/-/system-5.15.3.tgz#062d0d6b5259c3dc0e1d4026b85ffcc3acf8637b" @@ -2235,12 +2823,31 @@ csstype "^3.1.2" prop-types "^15.8.1" +"@mui/system@^6.1.6": + version "6.1.6" + resolved "https://registry.yarnpkg.com/@mui/system/-/system-6.1.6.tgz#d335d6952092f3c758c8b78c2d993aa13ef58175" + integrity sha512-qOf1VUE9wK8syiB0BBCp82oNBAVPYdj4Trh+G1s+L+ImYiKlubWhhqlnvWt3xqMevR+D2h1CXzA1vhX2FvA+VQ== + dependencies: + "@babel/runtime" "^7.26.0" + "@mui/private-theming" "^6.1.6" + "@mui/styled-engine" "^6.1.6" + "@mui/types" "^7.2.19" + "@mui/utils" "^6.1.6" + clsx "^2.1.1" + csstype "^3.1.3" + prop-types "^15.8.1" + "@mui/types@^7.2.12": version "7.2.12" resolved "https://registry.yarnpkg.com/@mui/types/-/types-7.2.12.tgz#602acbb5aa3eb56a31f569a19f87f75d33de5c01" integrity sha512-3kaHiNm9khCAo0pVe0RenketDSFoZGAlVZ4zDjB/QNZV0XiCj+sh1zkX0VVhQPgYJDlBEzAag+MHJ1tU3vf0Zw== -"@mui/utils@^5.14.13", "@mui/utils@^5.14.16", "@mui/utils@^5.14.18", "@mui/utils@^5.15.3": +"@mui/types@^7.2.19": + version "7.2.19" + resolved "https://registry.yarnpkg.com/@mui/types/-/types-7.2.19.tgz#c941954dd24393fdce5f07830d44440cf4ab6c80" + integrity sha512-6XpZEM/Q3epK9RN8ENoXuygnqUQxE+siN/6rGRi2iwJPgBUR25mphYQ9ZI87plGh58YoZ5pp40bFvKYOCDJ3tA== + +"@mui/utils@^5.14.16", "@mui/utils@^5.14.18", "@mui/utils@^5.15.3": version "5.15.3" resolved "https://registry.yarnpkg.com/@mui/utils/-/utils-5.15.3.tgz#421043be5279d31ca9b221a6398feb7c9d61209b" integrity sha512-mT3LiSt9tZWCdx1pl7q4Q5tNo6gdZbvJel286ZHGuj6LQQXjWNAh8qiF9d+LogvNUI+D7eLkTnj605d1zoazfg== @@ -2250,6 +2857,18 @@ prop-types "^15.8.1" react-is "^18.2.0" +"@mui/utils@^6.0.2", "@mui/utils@^6.1.6": + version "6.1.6" + resolved "https://registry.yarnpkg.com/@mui/utils/-/utils-6.1.6.tgz#4b9fd34da3a1dd4700fe506a20ca7da3933ba48e" + integrity sha512-sBS6D9mJECtELASLM+18WUcXF6RH3zNxBRFeyCRg8wad6NbyNrdxLuwK+Ikvc38sTZwBzAz691HmSofLqHd9sQ== + dependencies: + "@babel/runtime" "^7.26.0" + "@mui/types" "^7.2.19" + "@types/prop-types" "^15.7.13" + clsx "^2.1.1" + prop-types "^15.8.1" + react-is "^18.3.1" + "@mui/x-date-pickers@^6.18.6": version "6.18.6" resolved "https://registry.yarnpkg.com/@mui/x-date-pickers/-/x-date-pickers-6.18.6.tgz#416e0b83dd2774547e3c864c89bedf2f4ca3e05a" @@ -2404,6 +3023,11 @@ resolved "https://registry.yarnpkg.com/@open-draft/until/-/until-1.0.3.tgz#db9cc719191a62e7d9200f6e7bab21c5b848adca" integrity sha512-Aq58f5HiWdyDlFffbbSjAlv596h/cOnt2DO1w3DOC7OJ5EHs0hd/nycJfiu9RJbT6Yk6F1knnRRXNSpxoIVZ9Q== +"@pkgjs/parseargs@^0.11.0": + version "0.11.0" + resolved "https://registry.yarnpkg.com/@pkgjs/parseargs/-/parseargs-0.11.0.tgz#a77ea742fab25775145434eb1d2328cf5013ac33" + integrity sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg== + "@playwright/test@^1.44.0": version "1.44.0" resolved "https://registry.yarnpkg.com/@playwright/test/-/test-1.44.0.tgz#ac7a764b5ee6a80558bdc0fcbc525fcb81f83465" @@ -2426,6 +3050,11 @@ schema-utils "^3.0.0" source-map "^0.7.3" +"@polka/url@^1.0.0-next.24": + version "1.0.0-next.28" + resolved "https://registry.yarnpkg.com/@polka/url/-/url-1.0.0-next.28.tgz#d45e01c4a56f143ee69c54dd6b12eade9e270a73" + integrity sha512-8LduaNlMZGwdZ6qWrKlfa+2M4gahzFkprZiAt2TF8uS0qQgBizKXpXURqvTJ4WtmupWxaLqjRb2UCTe72mu+Aw== + "@popperjs/core@^2.11.8": version "2.11.8" resolved "https://registry.yarnpkg.com/@popperjs/core/-/core-2.11.8.tgz#6b79032e760a0899cd4204710beede972a3a185f" @@ -2483,6 +3112,96 @@ estree-walker "^1.0.1" picomatch "^2.2.2" +"@rollup/rollup-android-arm-eabi@4.24.4": + version "4.24.4" + resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.24.4.tgz#c460b54c50d42f27f8254c435a4f3b3e01910bc8" + integrity sha512-jfUJrFct/hTA0XDM5p/htWKoNNTbDLY0KRwEt6pyOA6k2fmk0WVwl65PdUdJZgzGEHWx+49LilkcSaumQRyNQw== + +"@rollup/rollup-android-arm64@4.24.4": + version "4.24.4" + resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.24.4.tgz#96e01f3a04675d8d5973ab8d3fd6bc3be21fa5e1" + integrity sha512-j4nrEO6nHU1nZUuCfRKoCcvh7PIywQPUCBa2UsootTHvTHIoIu2BzueInGJhhvQO/2FTRdNYpf63xsgEqH9IhA== + +"@rollup/rollup-darwin-arm64@4.24.4": + version "4.24.4" + resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.24.4.tgz#9b2ec23b17b47cbb2f771b81f86ede3ac6730bce" + integrity sha512-GmU/QgGtBTeraKyldC7cDVVvAJEOr3dFLKneez/n7BvX57UdhOqDsVwzU7UOnYA7AAOt+Xb26lk79PldDHgMIQ== + +"@rollup/rollup-darwin-x64@4.24.4": + version "4.24.4" + resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.24.4.tgz#f30e4ee6929e048190cf10e0daa8e8ae035b6e46" + integrity sha512-N6oDBiZCBKlwYcsEPXGDE4g9RoxZLK6vT98M8111cW7VsVJFpNEqvJeIPfsCzbf0XEakPslh72X0gnlMi4Ddgg== + +"@rollup/rollup-freebsd-arm64@4.24.4": + version "4.24.4" + resolved "https://registry.yarnpkg.com/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.24.4.tgz#c54b2373ec5bcf71f08c4519c7ae80a0b6c8e03b" + integrity sha512-py5oNShCCjCyjWXCZNrRGRpjWsF0ic8f4ieBNra5buQz0O/U6mMXCpC1LvrHuhJsNPgRt36tSYMidGzZiJF6mw== + +"@rollup/rollup-freebsd-x64@4.24.4": + version "4.24.4" + resolved "https://registry.yarnpkg.com/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.24.4.tgz#3bc53aa29d5a34c28ba8e00def76aa612368458e" + integrity sha512-L7VVVW9FCnTTp4i7KrmHeDsDvjB4++KOBENYtNYAiYl96jeBThFfhP6HVxL74v4SiZEVDH/1ILscR5U9S4ms4g== + +"@rollup/rollup-linux-arm-gnueabihf@4.24.4": + version "4.24.4" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.24.4.tgz#c85aedd1710c9e267ee86b6d1ce355ecf7d9e8d9" + integrity sha512-10ICosOwYChROdQoQo589N5idQIisxjaFE/PAnX2i0Zr84mY0k9zul1ArH0rnJ/fpgiqfu13TFZR5A5YJLOYZA== + +"@rollup/rollup-linux-arm-musleabihf@4.24.4": + version "4.24.4" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.24.4.tgz#e77313408bf13995aecde281aec0cceb08747e42" + integrity sha512-ySAfWs69LYC7QhRDZNKqNhz2UKN8LDfbKSMAEtoEI0jitwfAG2iZwVqGACJT+kfYvvz3/JgsLlcBP+WWoKCLcw== + +"@rollup/rollup-linux-arm64-gnu@4.24.4": + version "4.24.4" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.24.4.tgz#633f632397b3662108cfaa1abca2a80b85f51102" + integrity sha512-uHYJ0HNOI6pGEeZ/5mgm5arNVTI0nLlmrbdph+pGXpC9tFHFDQmDMOEqkmUObRfosJqpU8RliYoGz06qSdtcjg== + +"@rollup/rollup-linux-arm64-musl@4.24.4": + version "4.24.4" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.24.4.tgz#63edd72b29c4cced93e16113a68e1be9fef88907" + integrity sha512-38yiWLemQf7aLHDgTg85fh3hW9stJ0Muk7+s6tIkSUOMmi4Xbv5pH/5Bofnsb6spIwD5FJiR+jg71f0CH5OzoA== + +"@rollup/rollup-linux-powerpc64le-gnu@4.24.4": + version "4.24.4" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.24.4.tgz#a9418a4173df80848c0d47df0426a0bf183c4e75" + integrity sha512-q73XUPnkwt9ZNF2xRS4fvneSuaHw2BXuV5rI4cw0fWYVIWIBeDZX7c7FWhFQPNTnE24172K30I+dViWRVD9TwA== + +"@rollup/rollup-linux-riscv64-gnu@4.24.4": + version "4.24.4" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.24.4.tgz#bc9c195db036a27e5e3339b02f51526b4ce1e988" + integrity sha512-Aie/TbmQi6UXokJqDZdmTJuZBCU3QBDA8oTKRGtd4ABi/nHgXICulfg1KI6n9/koDsiDbvHAiQO3YAUNa/7BCw== + +"@rollup/rollup-linux-s390x-gnu@4.24.4": + version "4.24.4" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.24.4.tgz#1651fdf8144ae89326c01da5d52c60be63e71a82" + integrity sha512-P8MPErVO/y8ohWSP9JY7lLQ8+YMHfTI4bAdtCi3pC2hTeqFJco2jYspzOzTUB8hwUWIIu1xwOrJE11nP+0JFAQ== + +"@rollup/rollup-linux-x64-gnu@4.24.4": + version "4.24.4" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.24.4.tgz#e473de5e4acb95fcf930a35cbb7d3e8080e57a6f" + integrity sha512-K03TljaaoPK5FOyNMZAAEmhlyO49LaE4qCsr0lYHUKyb6QacTNF9pnfPpXnFlFD3TXuFbFbz7tJ51FujUXkXYA== + +"@rollup/rollup-linux-x64-musl@4.24.4": + version "4.24.4" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.24.4.tgz#0af12dd2578c29af4037f0c834b4321429dd5b01" + integrity sha512-VJYl4xSl/wqG2D5xTYncVWW+26ICV4wubwN9Gs5NrqhJtayikwCXzPL8GDsLnaLU3WwhQ8W02IinYSFJfyo34Q== + +"@rollup/rollup-win32-arm64-msvc@4.24.4": + version "4.24.4" + resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.24.4.tgz#e48e78cdd45313b977c1390f4bfde7ab79be8871" + integrity sha512-ku2GvtPwQfCqoPFIJCqZ8o7bJcj+Y54cZSr43hHca6jLwAiCbZdBUOrqE6y29QFajNAzzpIOwsckaTFmN6/8TA== + +"@rollup/rollup-win32-ia32-msvc@4.24.4": + version "4.24.4" + resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.24.4.tgz#a3fc8536d243fe161c796acb93eba43c250f311c" + integrity sha512-V3nCe+eTt/W6UYNr/wGvO1fLpHUrnlirlypZfKCT1fG6hWfqhPgQV/K/mRBXBpxc0eKLIF18pIOFVPh0mqHjlg== + +"@rollup/rollup-win32-x64-msvc@4.24.4": + version "4.24.4" + resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.24.4.tgz#e2a9d1fd56524103a6cc8a54404d9d3ebc73c454" + integrity sha512-LTw1Dfd0mBIEqUVCxbvTE/LLo+9ZxVC9k99v1v4ahg9Aak6FpqOfNu5kRkeTAn0wphoC4JU7No1/rL+bBCEwhg== + "@rushstack/eslint-patch@^1.1.0": version "1.1.0" resolved "https://registry.yarnpkg.com/@rushstack/eslint-patch/-/eslint-patch-1.1.0.tgz#7f698254aadf921e48dda8c0a6b304026b8a9323" @@ -2513,10 +3232,10 @@ resolved "https://registry.yarnpkg.com/@sideway/pinpoint/-/pinpoint-2.0.0.tgz#cff8ffadc372ad29fd3f78277aeb29e632cc70df" integrity sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ== -"@sinclair/typebox@^0.24.1": - version "0.24.51" - resolved "https://registry.yarnpkg.com/@sinclair/typebox/-/typebox-0.24.51.tgz#645f33fe4e02defe26f2f5c0410e1c094eac7f5f" - integrity sha512-1P1OROm/rdubP5aFDSZQILU0vrLCJ4fvHt6EoqHEM+2D/G5MK3bIaymUKLit8Js9gbns5UyJnkP/TZROLw4tUA== +"@sinclair/typebox@^0.27.8": + version "0.27.8" + resolved "https://registry.yarnpkg.com/@sinclair/typebox/-/typebox-0.27.8.tgz#6667fac16c436b5434a387a34dedb013198f6e6e" + integrity sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA== "@sinonjs/commons@^1.7.0": version "1.8.3" @@ -2525,6 +3244,20 @@ dependencies: type-detect "4.0.8" +"@sinonjs/commons@^3.0.0": + version "3.0.1" + resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-3.0.1.tgz#1029357e44ca901a615585f6d27738dbc89084cd" + integrity sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ== + dependencies: + type-detect "4.0.8" + +"@sinonjs/fake-timers@^10.0.2": + version "10.3.0" + resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz#55fdff1ecab9f354019129daf4df0dd4d923ea66" + integrity sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA== + dependencies: + "@sinonjs/commons" "^3.0.0" + "@sinonjs/fake-timers@^8.0.1": version "8.1.0" resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-8.1.0.tgz#3fdc2b6cb58935b21bfb8d1625eb1300484316e7" @@ -2650,6 +3383,101 @@ "@svgr/plugin-svgo" "^5.5.0" loader-utils "^2.0.0" +"@swc/core-darwin-arm64@1.8.0": + version "1.8.0" + resolved "https://registry.yarnpkg.com/@swc/core-darwin-arm64/-/core-darwin-arm64-1.8.0.tgz#4dc9e0918c9c2907f670fdb101f35574d4024892" + integrity sha512-TIus1/SE/Ud4g84hCnchcagu+LfyndSDy5r5qf64nflojejDidPU9Fp1InzQhQpEgIpntnZID/KFCP5rQnvsIw== + +"@swc/core-darwin-x64@1.8.0": + version "1.8.0" + resolved "https://registry.yarnpkg.com/@swc/core-darwin-x64/-/core-darwin-x64-1.8.0.tgz#ff06624452ee9081735671f5bed93fb776c5524e" + integrity sha512-yCb1FHCX/HUmNRGB1X3CFJ1WPKXMosZVUe3K2TrosCGvytwgaLoW5FS0bZg5Qv6cEUERQBg75cJnOUPwLLRCVg== + +"@swc/core-linux-arm-gnueabihf@1.8.0": + version "1.8.0" + resolved "https://registry.yarnpkg.com/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.8.0.tgz#2c093ff8733fbc10804e3fe74ddb1252740ad0d3" + integrity sha512-6TdjVdiLaSW+eGiHKEojMDlx673nowrPHa6nM6toWgRzy8tIZgjPOguVKJDoMnoHuvO7SkOLCUiMRw0rTskypA== + +"@swc/core-linux-arm64-gnu@1.8.0": + version "1.8.0" + resolved "https://registry.yarnpkg.com/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.8.0.tgz#70e0772a29be00b80e381a528262b1a846a47a1b" + integrity sha512-TU2YcTornnyZiJUabRuk7Xtvzaep11FwK77IkFomjN9/Os5s25B8ea652c2fAQMe9RsM84FPVmX303ohxavjKQ== + +"@swc/core-linux-arm64-musl@1.8.0": + version "1.8.0" + resolved "https://registry.yarnpkg.com/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.8.0.tgz#651647747f820f4667ad926c965b396bb82122fa" + integrity sha512-2CdPTEKxx2hJIj/B0fn8L8k2coo/FDS95smzXyi2bov5FcrP6Ohboq8roFBYgj38fkHusXjY8qt+cCH7yXWAdg== + +"@swc/core-linux-x64-gnu@1.8.0": + version "1.8.0" + resolved "https://registry.yarnpkg.com/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.8.0.tgz#745a3113bc48ee867631a77bb239ec598a2fc8f2" + integrity sha512-14StQBifCs/AMsySdU95OmwNJr9LOVqo6rcTFt2b7XaWpe/AyeuMJFxcndLgUewksJHpfepzCTwNdbcYmuNo6A== + +"@swc/core-linux-x64-musl@1.8.0": + version "1.8.0" + resolved "https://registry.yarnpkg.com/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.8.0.tgz#547c8176971cd1c3746d9d5feda3bacf2f95074a" + integrity sha512-qemJnAQlYqKCfWNqVv5SG8uGvw8JotwU86cuFUkq35oTB+dsSFM3b83+B1giGTKKFOh2nfWT7bvPXTKk+aUjew== + +"@swc/core-win32-arm64-msvc@1.8.0": + version "1.8.0" + resolved "https://registry.yarnpkg.com/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.8.0.tgz#363340f0fcb0d9e7b9e6d4167171ae64be0a114d" + integrity sha512-fXt5vZbnrVdXZzGj2qRnZtY3uh+NtLCaFjS2uD9w8ssdbjhbDZYlJCj2JINOjv35ttEfAD2goiYmVa5P/Ypl+g== + +"@swc/core-win32-ia32-msvc@1.8.0": + version "1.8.0" + resolved "https://registry.yarnpkg.com/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.8.0.tgz#95ce2aecbe794e6357214b44bac6d5d1ad296bcc" + integrity sha512-W4FA2vSJ+bGYiTj6gspxghSdKQNLfLMo65AH07u797x7I+YJj8amnFY/fQRlroDv5Dez/FHTv14oPlTlNFUpIw== + +"@swc/core-win32-x64-msvc@1.8.0": + version "1.8.0" + resolved "https://registry.yarnpkg.com/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.8.0.tgz#2b31cb9db381d6863727190bb4b1a7be7ce78ce8" + integrity sha512-Il4y8XwKDV0Bnk0IpA00kGcSQC6I9XOIinW5egTutnwIDfDE+qsD0j+0isW5H76GetY3/Ze0lVxeOXLAUgpegA== + +"@swc/core@^1.7.26": + version "1.8.0" + resolved "https://registry.yarnpkg.com/@swc/core/-/core-1.8.0.tgz#ae9290e6d138abc7c3d6b50fe5223d3c601f9155" + integrity sha512-EF8C5lp1RKMp3426tAKwQyVbg4Zcn/2FDax3cz8EcOXYQJM/ctB687IvBm9Ciej1wMcQ/dMRg+OB4Xl8BGLBoA== + dependencies: + "@swc/counter" "^0.1.3" + "@swc/types" "^0.1.14" + optionalDependencies: + "@swc/core-darwin-arm64" "1.8.0" + "@swc/core-darwin-x64" "1.8.0" + "@swc/core-linux-arm-gnueabihf" "1.8.0" + "@swc/core-linux-arm64-gnu" "1.8.0" + "@swc/core-linux-arm64-musl" "1.8.0" + "@swc/core-linux-x64-gnu" "1.8.0" + "@swc/core-linux-x64-musl" "1.8.0" + "@swc/core-win32-arm64-msvc" "1.8.0" + "@swc/core-win32-ia32-msvc" "1.8.0" + "@swc/core-win32-x64-msvc" "1.8.0" + +"@swc/counter@^0.1.3": + version "0.1.3" + resolved "https://registry.yarnpkg.com/@swc/counter/-/counter-0.1.3.tgz#cc7463bd02949611c6329596fccd2b0ec782b0e9" + integrity sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ== + +"@swc/types@^0.1.14": + version "0.1.14" + resolved "https://registry.yarnpkg.com/@swc/types/-/types-0.1.14.tgz#0a0a3f60f801c5d7d52ab02fd5f924d9c6dbcb0d" + integrity sha512-PbSmTiYCN+GMrvfjrMo9bdY+f2COnwbdnoMw7rqU/PI5jXpKjxOGZ0qqZCImxnT81NkNsKnmEpvu+hRXLBeCJg== + dependencies: + "@swc/counter" "^0.1.3" + +"@testing-library/dom@^10.4.0": + version "10.4.0" + resolved "https://registry.yarnpkg.com/@testing-library/dom/-/dom-10.4.0.tgz#82a9d9462f11d240ecadbf406607c6ceeeff43a8" + integrity sha512-pemlzrSESWbdAloYml3bAJMEfNh1Z7EduzqPKprCH5S341frlpYnUEW0H72dLxa6IsYr+mPno20GiSm+h9dEdQ== + dependencies: + "@babel/code-frame" "^7.10.4" + "@babel/runtime" "^7.12.5" + "@types/aria-query" "^5.0.1" + aria-query "5.3.0" + chalk "^4.1.0" + dom-accessibility-api "^0.5.9" + lz-string "^1.5.0" + pretty-format "^27.0.2" + "@testing-library/dom@^8.0.0": version "8.20.1" resolved "https://registry.yarnpkg.com/@testing-library/dom/-/dom-8.20.1.tgz#2e52a32e46fc88369eef7eef634ac2a192decd9f" @@ -2664,13 +3492,12 @@ lz-string "^1.5.0" pretty-format "^27.0.2" -"@testing-library/jest-dom@^6.4.5": - version "6.4.5" - resolved "https://registry.yarnpkg.com/@testing-library/jest-dom/-/jest-dom-6.4.5.tgz#badb40296477149136dabef32b572ddd3b56adf1" - integrity sha512-AguB9yvTXmCnySBP1lWjfNNUwpbElsaQ567lt2VdGqAdHtpieLgjmcVyv1q7PMIvLbgpDdkWV5Ydv3FEejyp2A== +"@testing-library/jest-dom@^6.6.3": + version "6.6.3" + resolved "https://registry.yarnpkg.com/@testing-library/jest-dom/-/jest-dom-6.6.3.tgz#26ba906cf928c0f8172e182c6fe214eb4f9f2bd2" + integrity sha512-IteBhl4XqYNkM54f4ejhLRJiZNqcSCoXUOG2CPK7qbD322KjQozM4kHQOfkG2oln9b9HTYqs+Sae8vBATubxxA== dependencies: - "@adobe/css-tools" "^4.3.2" - "@babel/runtime" "^7.9.2" + "@adobe/css-tools" "^4.4.0" aria-query "^5.0.0" chalk "^3.0.0" css.escape "^1.5.1" @@ -2686,7 +3513,7 @@ "@babel/runtime" "^7.12.5" react-error-boundary "^3.1.0" -"@testing-library/react@^12.1.5": +"@testing-library/react@12": version "12.1.5" resolved "https://registry.yarnpkg.com/@testing-library/react/-/react-12.1.5.tgz#bb248f72f02a5ac9d949dea07279095fa577963b" integrity sha512-OfTXCJUFgjd/digLUuPxa0+/3ZxsQmE7ub9kcbW/wi96Bh3o/p5vrETcBGfP17NWPGqeYYl5LTRpwyGoMC4ysg== @@ -2731,9 +3558,9 @@ integrity sha512-yOlFc+7UtL/89t2ZhjPvvB/DeAr3r+Dq58IgzsFkOAvVC6NMJXmCGjbptdXdR9qsX7pKcTL+s87FtYREi2dEEQ== "@types/aria-query@^5.0.1": - version "5.0.1" - resolved "https://registry.yarnpkg.com/@types/aria-query/-/aria-query-5.0.1.tgz#3286741fb8f1e1580ac28784add4c7a1d49bdfbc" - integrity sha512-XTIieEY+gvJ39ChLcB4If5zHtPxt3Syj5rgZR+e1ctpmK8NjPf0zFqsz4JpLJT0xla9GFDKjy8Cpu331nrmE1Q== + version "5.0.4" + resolved "https://registry.yarnpkg.com/@types/aria-query/-/aria-query-5.0.4.tgz#1a31c3d378850d2778dabb6374d036dcba4ba708" + integrity sha512-rfT93uj5s0PRL7EzccGMs3brplhcrghnDoV26NqKhCAS1hVo+WdNsPvE/yb6ilfr5hi2MEk6d5EWJTKdxg8jVw== "@types/babel__core@^7.0.0", "@types/babel__core@^7.1.14": version "7.1.18" @@ -2853,6 +3680,11 @@ resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.39.tgz#e177e699ee1b8c22d23174caaa7422644389509f" integrity sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw== +"@types/estree@1.0.6": + version "1.0.6" + resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.6.tgz#628effeeae2064a1b4e79f78e81d87b7e5fc7b50" + integrity sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw== + "@types/events@^3.0.0": version "3.0.0" resolved "https://registry.yarnpkg.com/@types/events/-/events-3.0.0.tgz#2862f3f58a9a7f7c3e78d79f130dd4d71c25c2a7" @@ -2885,6 +3717,13 @@ dependencies: "@types/node" "*" +"@types/graceful-fs@^4.1.3": + version "4.1.9" + resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.9.tgz#2a06bc0f68a20ab37b3e36aa238be6abdf49e8b4" + integrity sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ== + dependencies: + "@types/node" "*" + "@types/hoist-non-react-statics@^3.3.1": version "3.3.1" resolved "https://registry.yarnpkg.com/@types/hoist-non-react-statics/-/hoist-non-react-statics-3.3.1.tgz#1124aafe5118cb591977aeb1ceaaed1070eb039f" @@ -2924,21 +3763,13 @@ dependencies: "@types/istanbul-lib-report" "*" -"@types/jest-axe@^3.5.9": - version "3.5.9" - resolved "https://registry.yarnpkg.com/@types/jest-axe/-/jest-axe-3.5.9.tgz#97b1317371a48707ca93825d4c990b0d07690d99" - integrity sha512-z98CzR0yVDalCEuhGXXO4/zN4HHuSebAukXDjTLJyjEAgoUf1H1i+sr7SUB/mz8CRS/03/XChsx0dcLjHkndoQ== - dependencies: - "@types/jest" "*" - axe-core "^3.5.5" - -"@types/jest@*", "@types/jest@^27.5.2": - version "27.5.2" - resolved "https://registry.yarnpkg.com/@types/jest/-/jest-27.5.2.tgz#ec49d29d926500ffb9fd22b84262e862049c026c" - integrity sha512-mpT8LJJ4CMeeahobofYWIjFo0xonRS/HfxnVEPMPFSQdGUt1uHCnoPT7Zhb+sjDU2wz0oKV0OLUR0WzrHNgfeA== +"@types/jest@^29.5.14": + version "29.5.14" + resolved "https://registry.yarnpkg.com/@types/jest/-/jest-29.5.14.tgz#2b910912fa1d6856cadcd0c1f95af7df1d6049e5" + integrity sha512-ZN+4sdnLUbo8EVvVc2ao0GFW6oVrQRPn4K2lglySj7APvSrgzxHiNNK99us4WDMi57xxA2yggblIAMNhXOotLQ== dependencies: - jest-matcher-utils "^27.0.0" - pretty-format "^27.0.0" + expect "^29.0.0" + pretty-format "^29.0.0" "@types/js-cookie@^2.2.6": version "2.2.7" @@ -2960,10 +3791,17 @@ resolved "https://registry.yarnpkg.com/@types/json5/-/json5-0.0.29.tgz#ee28707ae94e11d2b827bcbe5270bcea7f3e71ee" integrity sha1-7ihweulOEdK4J7y+UnC86n8+ce4= -"@types/lodash@^4.17.4": - version "4.17.4" - resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.17.4.tgz#0303b64958ee070059e3a7184048a55159fe20b7" - integrity sha512-wYCP26ZLxaT3R39kiN2+HcJ4kTd3U1waI/cY7ivWYqFP6pW3ZNpvi6Wd6PHZx7T/t8z0vlkXMg3QYLa7DZ/IJQ== +"@types/lodash-es@^4.17.12": + version "4.17.12" + resolved "https://registry.yarnpkg.com/@types/lodash-es/-/lodash-es-4.17.12.tgz#65f6d1e5f80539aa7cfbfc962de5def0cf4f341b" + integrity sha512-0NgftHUcV4v34VhXm8QBSftKVXtbkBG3ViCjs6+eJ5a6y6Mi/jiFGPc1sC7QK+9BFhWrURE3EOggmWaSxL9OzQ== + dependencies: + "@types/lodash" "*" + +"@types/lodash@*": + version "4.17.13" + resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.17.13.tgz#786e2d67cfd95e32862143abe7463a7f90c300eb" + integrity sha512-lfx+dftrEZcdBPczf9d0Qv0x+j/rfNCMuC6OcfXmO8gkfeNAY88PgKUbvG56whcN23gc27yenwF6oJZXGFpYxg== "@types/luxon@^3.2.0": version "3.2.0" @@ -3039,6 +3877,11 @@ resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.11.tgz#2596fb352ee96a1379c657734d4b913a613ad563" integrity sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng== +"@types/prop-types@^15.7.13": + version "15.7.13" + resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.13.tgz#2af91918ee12d9d32914feb13f5326658461b451" + integrity sha512-hCZTSvwbzWGvhqxp/RqVqwU999pBf2vp7hzIjiYOsl8wqOmUxkQ6ddw1cV3l8811+kdUFus/q4d1Y3E3SyEifA== + "@types/q@^1.5.1": version "1.5.4" resolved "https://registry.yarnpkg.com/@types/q/-/q-1.5.4.tgz#15925414e0ad2cd765bfef58842f7e26a7accb24" @@ -3054,13 +3897,20 @@ resolved "https://registry.yarnpkg.com/@types/range-parser/-/range-parser-1.2.4.tgz#cd667bcfdd025213aafb7ca5915a932590acdcdc" integrity sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw== -"@types/react-dom@<18.0.0", "@types/react-dom@^17.0.19": +"@types/react-dom@<18.0.0": version "17.0.25" resolved "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-17.0.25.tgz#e0e5b3571e1069625b3a3da2b279379aa33a0cb5" integrity sha512-urx7A7UxkZQmThYA4So0NelOVjx3V4rNFVJwp0WZlbIK5eM4rNJDiN3R/E9ix0MBh6kAEojk/9YL+Te6D9zHNA== dependencies: "@types/react" "^17" +"@types/react-dom@^18.3.1": + version "18.3.1" + resolved "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-18.3.1.tgz#1e4654c08a9cdcfb6594c780ac59b55aad42fe07" + integrity sha512-qW1Mfv8taImTthu4KoXgDfLuk4bydU6Q/TkADnDWWHwi4NX4BR+LWfTp2sVmTqRrsHvyDDTelgelxJ+SsejKKQ== + dependencies: + "@types/react" "*" + "@types/react-i18next@^8.1.0": version "8.1.0" resolved "https://registry.yarnpkg.com/@types/react-i18next/-/react-i18next-8.1.0.tgz#5faacbfe7dc0f24729c1df6914610bfe861a50de" @@ -3075,7 +3925,14 @@ dependencies: "@types/react" "*" -"@types/react@*", "@types/react@^17", "@types/react@^17.0.53": +"@types/react-transition-group@^4.4.11": + version "4.4.11" + resolved "https://registry.yarnpkg.com/@types/react-transition-group/-/react-transition-group-4.4.11.tgz#d963253a611d757de01ebb241143b1017d5d63d5" + integrity sha512-RM05tAniPZ5DZPzzNFP+DmrcOdD0efDUxMy3145oljWSl3x9ZV5vhme98gTxFrj2lhXvmGNnUiuDyJgY9IKkNA== + dependencies: + "@types/react" "*" + +"@types/react@*", "@types/react@^17": version "17.0.53" resolved "https://registry.yarnpkg.com/@types/react/-/react-17.0.53.tgz#10d4d5999b8af3d6bc6a9369d7eb953da82442ab" integrity sha512-1yIpQR2zdYu1Z/dc1OxC+MA6GR240u3gcnP4l6mvj/PJiVaqHsQPmWttsvHsfnhfPbU2FuGmo0wSITPygjBmsw== @@ -3084,6 +3941,14 @@ "@types/scheduler" "*" csstype "^3.0.2" +"@types/react@^18.3.12": + version "18.3.12" + resolved "https://registry.yarnpkg.com/@types/react/-/react-18.3.12.tgz#99419f182ccd69151813b7ee24b792fe08774f60" + integrity sha512-D2wOSq/d6Agt28q7rSI3jhU7G6aiuzljDGZ2hTZHIkrTLUI+AF3WMeKkEZ9nN2fkBAlcktT6vcZjDFiIhMYEQw== + dependencies: + "@types/prop-types" "*" + csstype "^3.0.2" + "@types/resolve@1.17.1": version "1.17.1" resolved "https://registry.yarnpkg.com/@types/resolve/-/resolve-1.17.1.tgz#3afd6ad8967c77e4376c598a82ddd58f46ec45d6" @@ -3214,6 +4079,13 @@ dependencies: "@types/yargs-parser" "*" +"@types/yargs@^17.0.8": + version "17.0.33" + resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-17.0.33.tgz#8c32303da83eec050a84b3c7ae7b9f922d13e32d" + integrity sha512-WpxBCKWPLr4xSsHgz511rFJAM+wS28w2zEO1QDNY5zM/S8ok70NNfztH0xwhqKyaK0OHCbN98LDAZuy1ctxDkA== + dependencies: + "@types/yargs-parser" "*" + "@typescript-eslint/eslint-plugin@^5.5.0": version "5.62.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.62.0.tgz#aeef0328d172b9e37d9bab6dbc13b87ed88977db" @@ -3310,6 +4182,108 @@ resolved "https://registry.yarnpkg.com/@ungap/structured-clone/-/structured-clone-1.2.0.tgz#756641adb587851b5ccb3e095daf27ae581c8406" integrity sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ== +"@vitejs/plugin-basic-ssl@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@vitejs/plugin-basic-ssl/-/plugin-basic-ssl-1.1.0.tgz#8b840305a6b48e8764803435ec0c716fa27d3802" + integrity sha512-wO4Dk/rm8u7RNhOf95ZzcEmC9rYOncYgvq4z3duaJrCgjN8BxAnDVyndanfcJZ0O6XZzHz6Q0hTimxTg8Y9g/A== + +"@vitejs/plugin-react-swc@^3.7.1": + version "3.7.1" + resolved "https://registry.yarnpkg.com/@vitejs/plugin-react-swc/-/plugin-react-swc-3.7.1.tgz#bc5af48ef35c525d623fa14177c912cbaa86a846" + integrity sha512-vgWOY0i1EROUK0Ctg1hwhtC3SdcDjZcdit4Ups4aPkDcB1jYhmo+RMYWY87cmXMhvtD5uf8lV89j2w16vkdSVg== + dependencies: + "@swc/core" "^1.7.26" + +"@vitest/coverage-v8@^2.1.4": + version "2.1.4" + resolved "https://registry.yarnpkg.com/@vitest/coverage-v8/-/coverage-v8-2.1.4.tgz#c0df11cda12b3a04570e8065754917d35baa0c55" + integrity sha512-FPKQuJfR6VTfcNMcGpqInmtJuVXFSCd9HQltYncfR01AzXhLucMEtQ5SinPdZxsT5x/5BK7I5qFJ5/ApGCmyTQ== + dependencies: + "@ampproject/remapping" "^2.3.0" + "@bcoe/v8-coverage" "^0.2.3" + debug "^4.3.7" + istanbul-lib-coverage "^3.2.2" + istanbul-lib-report "^3.0.1" + istanbul-lib-source-maps "^5.0.6" + istanbul-reports "^3.1.7" + magic-string "^0.30.12" + magicast "^0.3.5" + std-env "^3.7.0" + test-exclude "^7.0.1" + tinyrainbow "^1.2.0" + +"@vitest/expect@2.1.4": + version "2.1.4" + resolved "https://registry.yarnpkg.com/@vitest/expect/-/expect-2.1.4.tgz#48f4f53a01092a3bdc118cff245f79ef388bdd8e" + integrity sha512-DOETT0Oh1avie/D/o2sgMHGrzYUFFo3zqESB2Hn70z6QB1HrS2IQ9z5DfyTqU8sg4Bpu13zZe9V4+UTNQlUeQA== + dependencies: + "@vitest/spy" "2.1.4" + "@vitest/utils" "2.1.4" + chai "^5.1.2" + tinyrainbow "^1.2.0" + +"@vitest/mocker@2.1.4": + version "2.1.4" + resolved "https://registry.yarnpkg.com/@vitest/mocker/-/mocker-2.1.4.tgz#0dc07edb9114f7f080a0181fbcdb16cd4a2d855d" + integrity sha512-Ky/O1Lc0QBbutJdW0rqLeFNbuLEyS+mIPiNdlVlp2/yhJ0SbyYqObS5IHdhferJud8MbbwMnexg4jordE5cCoQ== + dependencies: + "@vitest/spy" "2.1.4" + estree-walker "^3.0.3" + magic-string "^0.30.12" + +"@vitest/pretty-format@2.1.4", "@vitest/pretty-format@^2.1.4": + version "2.1.4" + resolved "https://registry.yarnpkg.com/@vitest/pretty-format/-/pretty-format-2.1.4.tgz#fc31993bdc1ef5a6c1a4aa6844e7ba55658a4f9f" + integrity sha512-L95zIAkEuTDbUX1IsjRl+vyBSLh3PwLLgKpghl37aCK9Jvw0iP+wKwIFhfjdUtA2myLgjrG6VU6JCFLv8q/3Ww== + dependencies: + tinyrainbow "^1.2.0" + +"@vitest/runner@2.1.4": + version "2.1.4" + resolved "https://registry.yarnpkg.com/@vitest/runner/-/runner-2.1.4.tgz#f9346500bdd0be1c926daaac5d683bae87ceda2c" + integrity sha512-sKRautINI9XICAMl2bjxQM8VfCMTB0EbsBc/EDFA57V6UQevEKY/TOPOF5nzcvCALltiLfXWbq4MaAwWx/YxIA== + dependencies: + "@vitest/utils" "2.1.4" + pathe "^1.1.2" + +"@vitest/snapshot@2.1.4": + version "2.1.4" + resolved "https://registry.yarnpkg.com/@vitest/snapshot/-/snapshot-2.1.4.tgz#ef8c3f605fbc23a32773256d37d3fdfd9b23d353" + integrity sha512-3Kab14fn/5QZRog5BPj6Rs8dc4B+mim27XaKWFWHWA87R56AKjHTGcBFKpvZKDzC4u5Wd0w/qKsUIio3KzWW4Q== + dependencies: + "@vitest/pretty-format" "2.1.4" + magic-string "^0.30.12" + pathe "^1.1.2" + +"@vitest/spy@2.1.4": + version "2.1.4" + resolved "https://registry.yarnpkg.com/@vitest/spy/-/spy-2.1.4.tgz#4e90f9783437c5841a27c80f8fd84d7289a6100a" + integrity sha512-4JOxa+UAizJgpZfaCPKK2smq9d8mmjZVPMt2kOsg/R8QkoRzydHH1qHxIYNvr1zlEaFj4SXiaaJWxq/LPLKaLg== + dependencies: + tinyspy "^3.0.2" + +"@vitest/ui@^2.1.4": + version "2.1.4" + resolved "https://registry.yarnpkg.com/@vitest/ui/-/ui-2.1.4.tgz#fcd0928c1d24301e4e5c2d3783150a0c391966ff" + integrity sha512-Zd9e5oU063c+j9N9XzGJagCLNvG71x/2tOme3Js4JEZKX55zsgxhJwUgLI8hkN6NjMLpdJO8d7nVUUuPGAA58Q== + dependencies: + "@vitest/utils" "2.1.4" + fflate "^0.8.2" + flatted "^3.3.1" + pathe "^1.1.2" + sirv "^3.0.0" + tinyglobby "^0.2.9" + tinyrainbow "^1.2.0" + +"@vitest/utils@2.1.4": + version "2.1.4" + resolved "https://registry.yarnpkg.com/@vitest/utils/-/utils-2.1.4.tgz#6d67ac966647a21ce8bc497472ce230de3b64537" + integrity sha512-MXDnZn0Awl2S86PSNIim5PWXgIAx8CIkzu35mBdSApUip6RFOGXBCf3YFyeEu8n1IHk4bWD46DeYFu9mQlFIRg== + dependencies: + "@vitest/pretty-format" "2.1.4" + loupe "^3.1.2" + tinyrainbow "^1.2.0" + "@vue/compiler-core@3.3.6": version "3.3.6" resolved "https://registry.yarnpkg.com/@vue/compiler-core/-/compiler-core-3.3.6.tgz#ffc14517e0a7269983b9a93994df9669e9e03506" @@ -3709,7 +4683,7 @@ ansi-styles@^5.0.0: resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-5.2.0.tgz#07449690ad45777d1924ac2abb2fc8895dba836b" integrity sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA== -ansi-styles@^6.0.0, ansi-styles@^6.2.1: +ansi-styles@^6.0.0, ansi-styles@^6.1.0, ansi-styles@^6.2.1: version "6.2.1" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-6.2.1.tgz#0e62320cf99c21afff3b3012192546aacbfb05c5" integrity sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug== @@ -3778,13 +4752,20 @@ argparse@^2.0.1: resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== -aria-query@5.1.3, aria-query@^5.0.0: +aria-query@5.1.3: version "5.1.3" resolved "https://registry.yarnpkg.com/aria-query/-/aria-query-5.1.3.tgz#19db27cd101152773631396f7a95a3b58c22c35e" integrity sha512-R5iJ5lkuHybztUfuOAznmboyjWq8O6sqNqtK7CLOqdydi54VNbORp49mb14KbWgG1QD3JFO9hJdZ+y4KutfdOQ== dependencies: deep-equal "^2.0.5" +aria-query@5.3.0: + version "5.3.0" + resolved "https://registry.yarnpkg.com/aria-query/-/aria-query-5.3.0.tgz#650c569e41ad90b51b3d7df5e5eed1c7549c103e" + integrity sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A== + dependencies: + dequal "^2.0.3" + aria-query@^4.2.2: version "4.2.2" resolved "https://registry.yarnpkg.com/aria-query/-/aria-query-4.2.2.tgz#0d2ca6c9aceb56b8977e9fed6aed7e15bbd2f83b" @@ -3793,6 +4774,11 @@ aria-query@^4.2.2: "@babel/runtime" "^7.10.2" "@babel/runtime-corejs3" "^7.10.2" +aria-query@^5.0.0: + version "5.3.2" + resolved "https://registry.yarnpkg.com/aria-query/-/aria-query-5.3.2.tgz#93f81a43480e33a338f19163a3d10a50c01dcd59" + integrity sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw== + array-buffer-byte-length@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz#1e5583ec16763540a27ae52eed99ff899223568f" @@ -3883,6 +4869,11 @@ assert-plus@1.0.0, assert-plus@^1.0.0: resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" integrity sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU= +assertion-error@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/assertion-error/-/assertion-error-2.0.1.tgz#f641a196b335690b1070bf00b6e7593fec190bf7" + integrity sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA== + ast-types-flow@^0.0.7: version "0.0.7" resolved "https://registry.yarnpkg.com/ast-types-flow/-/ast-types-flow-0.0.7.tgz#f70b735c6bca1a5c9c22d982c3e39e7feba3bdad" @@ -3949,15 +4940,10 @@ aws4@^1.8.0: resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.11.0.tgz#d61f46d83b2519250e2784daf5b09479a8b41c59" integrity sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA== -axe-core@4.7.2: - version "4.7.2" - resolved "https://registry.yarnpkg.com/axe-core/-/axe-core-4.7.2.tgz#040a7342b20765cb18bb50b628394c21bccc17a0" - integrity sha512-zIURGIS1E1Q4pcrMjp+nnEh+16G56eG/MUllJH8yEvw7asDo7Ac9uhC9KIH5jzpITueEZolfYglnCGIuSBz39g== - -axe-core@^3.5.5: - version "3.5.6" - resolved "https://registry.yarnpkg.com/axe-core/-/axe-core-3.5.6.tgz#e762a90d7f6dbd244ceacb4e72760ff8aad521b5" - integrity sha512-LEUDjgmdJoA3LqklSTwKYqkjcZ4HKc4ddIYGSAiSkr46NTjzg2L9RNB+lekO9P7Dlpa87+hBtzc2Fzn/+GUWMQ== +axe-core@^4.10.2: + version "4.10.2" + resolved "https://registry.yarnpkg.com/axe-core/-/axe-core-4.10.2.tgz#85228e3e1d8b8532a27659b332e39b7fa0e022df" + integrity sha512-RE3mdQ7P3FRSe7eqCWoeQ/Z9QXrtniSjp1wUjt5nRC3WIpz5rSCve6o3fsZ2aCpJtrZjSZgjwXAoTO5k4tEI0w== axe-core@^4.3.5, axe-core@~4.9.1: version "4.9.1" @@ -3988,6 +4974,19 @@ babel-jest@^27.4.2, babel-jest@^27.5.1: graceful-fs "^4.2.9" slash "^3.0.0" +babel-jest@^29.7.0: + version "29.7.0" + resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-29.7.0.tgz#f4369919225b684c56085998ac63dbd05be020d5" + integrity sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg== + 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" + babel-loader@^8.2.3: version "8.3.0" resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-8.3.0.tgz#124936e841ba4fe8176786d6ff28add1f134d6a8" @@ -4026,6 +5025,16 @@ babel-plugin-jest-hoist@^27.5.1: "@types/babel__core" "^7.0.0" "@types/babel__traverse" "^7.0.6" +babel-plugin-jest-hoist@^29.6.3: + version "29.6.3" + resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.6.3.tgz#aadbe943464182a8922c3c927c3067ff40d24626" + integrity sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg== + dependencies: + "@babel/template" "^7.3.3" + "@babel/types" "^7.3.3" + "@types/babel__core" "^7.1.14" + "@types/babel__traverse" "^7.0.6" + babel-plugin-macros@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz#9ef6dc74deb934b4db344dc973ee851d148c50c1" @@ -4095,6 +5104,14 @@ babel-preset-jest@^27.5.1: babel-plugin-jest-hoist "^27.5.1" babel-preset-current-node-syntax "^1.0.0" +babel-preset-jest@^29.6.3: + version "29.6.3" + resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-29.6.3.tgz#fa05fa510e7d493896d7b0dd2033601c840f171c" + integrity sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA== + dependencies: + babel-plugin-jest-hoist "^29.6.3" + babel-preset-current-node-syntax "^1.0.0" + babel-preset-react-app@^10.0.1: version "10.0.1" resolved "https://registry.yarnpkg.com/babel-preset-react-app/-/babel-preset-react-app-10.0.1.tgz#ed6005a20a24f2c88521809fa9aea99903751584" @@ -4345,12 +5362,15 @@ browserslist@^4.0.0, browserslist@^4.14.5, browserslist@^4.16.6, browserslist@^4 node-releases "^2.0.13" update-browserslist-db "^1.0.11" -bs-logger@0.x: - version "0.2.6" - resolved "https://registry.yarnpkg.com/bs-logger/-/bs-logger-0.2.6.tgz#eb7d365307a72cf974cc6cda76b68354ad336bd8" - integrity sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog== +browserslist@^4.24.0: + version "4.24.2" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.24.2.tgz#f5845bc91069dbd55ee89faf9822e1d885d16580" + integrity sha512-ZIc+Q62revdMcqC6aChtW4jz3My3klmCO1fEmINZY/8J3EpBg5/A/D0AKmBveUh6pgoeycoMkVMko84tuYS+Gg== dependencies: - fast-json-stable-stringify "2.x" + caniuse-lite "^1.0.30001669" + electron-to-chromium "^1.5.41" + node-releases "^2.0.18" + update-browserslist-db "^1.1.1" bser@2.1.1: version "2.1.1" @@ -4422,6 +5442,11 @@ bytes@3.1.2: resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.2.tgz#8b0beeb98605adf1b128fa4386403c009e0221a5" integrity sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg== +cac@^6.7.14: + version "6.7.14" + resolved "https://registry.yarnpkg.com/cac/-/cac-6.7.14.tgz#804e1e6f506ee363cb0e3ccbb09cad5dd9870959" + integrity sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ== + call-bind@^1.0.0, call-bind@^1.0.2, call-bind@^1.0.5, call-bind@^1.0.6, call-bind@^1.0.7: version "1.0.7" resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.7.tgz#06016599c40c56498c18769d2730be242b6fa3b9" @@ -4490,6 +5515,11 @@ caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001426, caniuse-lite@^1.0.30001517: resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001587.tgz#a0bce920155fa56a1885a69c74e1163fc34b4881" integrity sha512-HMFNotUmLXn71BQxg8cijvqxnIAofforZOwGsxyXJ0qugTdspUF4sPSJ2vhgprHCB996tIDzEq1ubumPDV8ULA== +caniuse-lite@^1.0.30001669: + version "1.0.30001679" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001679.tgz#18c573b72f72ba70822194f6c39e7888597f9e32" + integrity sha512-j2YqID/YwpLnKzCmBOS4tlZdWprXm3ZmQLBH9ZBXFOhoxLA46fwyBvx6toCBWBmnuwUY/qB3kEU6gFx8qgCroA== + case-sensitive-paths-webpack-plugin@^2.4.0: version "2.4.0" resolved "https://registry.yarnpkg.com/case-sensitive-paths-webpack-plugin/-/case-sensitive-paths-webpack-plugin-2.4.0.tgz#db64066c6422eed2e08cc14b986ca43796dbc6d4" @@ -4500,6 +5530,17 @@ caseless@~0.12.0: resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" integrity sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw= +chai@^5.1.2: + version "5.1.2" + resolved "https://registry.yarnpkg.com/chai/-/chai-5.1.2.tgz#3afbc340b994ae3610ca519a6c70ace77ad4378d" + integrity sha512-aGtmf24DW6MLHHG5gCx4zaI3uBq3KRtxeVs0DjFH6Z0rDNbsvTxFASFvdj79pxjxZ8/5u3PIiN3IwEIQkiiuPw== + dependencies: + assertion-error "^2.0.1" + check-error "^2.1.1" + deep-eql "^5.0.1" + loupe "^3.1.0" + pathval "^2.0.0" + chalk@4, chalk@4.1.2, chalk@^4.0.0, chalk@^4.0.2, chalk@^4.1.0, chalk@^4.1.1, chalk@^4.1.2: version "4.1.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" @@ -4550,6 +5591,11 @@ chardet@^0.7.0: resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA== +check-error@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/check-error/-/check-error-2.1.1.tgz#87eb876ae71ee388fa0471fe423f494be1d96ccc" + integrity sha512-OAlb+T7V4Op9OwdkjmguYRqncdlx5JiofwOAUkmTF+jNdHwzTaTs4sRAGpzLF3oOz5xAyDGrPgeIDFQmDOTiJw== + check-types@^11.1.1: version "11.1.2" resolved "https://registry.yarnpkg.com/check-types/-/check-types-11.1.2.tgz#86a7c12bf5539f6324eb0e70ca8896c0e38f3e2f" @@ -4739,6 +5785,11 @@ clsx@^2.0.0: resolved "https://registry.yarnpkg.com/clsx/-/clsx-2.0.0.tgz#12658f3fd98fafe62075595a5c30e43d18f3d00b" integrity sha512-rQ1+kcj+ttHG0MKVGBUXwayCCF1oh39BF5COIpRzuCEv8Mwjv0XucrI2ExNTOn9IlLifGClWQcU9BrZORvtw6Q== +clsx@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/clsx/-/clsx-2.1.1.tgz#eed397c9fd8bd882bfb18deab7102049a2f32999" + integrity sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA== + co@^4.6.0: version "4.6.0" resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" @@ -4949,11 +6000,6 @@ cookie-signature@1.0.6: resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c" integrity sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ== -cookie@0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.6.0.tgz#2798b04b071b0ecbff0dbb62a505a8efa4e19051" - integrity sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw== - cookie@0.7.1: version "0.7.1" resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.7.1.tgz#2f73c42142d5d5cf71310a74fc4ae61670e5dbc9" @@ -5070,6 +6116,19 @@ crc32-stream@^4.0.2: crc-32 "^1.2.0" readable-stream "^3.4.0" +create-jest@^29.7.0: + version "29.7.0" + resolved "https://registry.yarnpkg.com/create-jest/-/create-jest-29.7.0.tgz#a355c5b3cb1e1af02ba177fe7afd7feee49a5320" + integrity sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q== + 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" + create-require@^1.1.0: version "1.1.1" resolved "https://registry.yarnpkg.com/create-require/-/create-require-1.1.1.tgz#c1d7e8f1e5f6cfc9ff65f9cd352d37348756c333" @@ -5089,13 +6148,6 @@ cross-fetch@4.0.0: dependencies: node-fetch "^2.6.12" -cross-fetch@^3.0.4: - version "3.1.6" - resolved "https://registry.yarnpkg.com/cross-fetch/-/cross-fetch-3.1.6.tgz#bae05aa31a4da760969756318feeee6e70f15d6c" - integrity sha512-riRvo06crlE8HiqOwIpQhxwdOk4fOeR7FVM/wXoxchFEqMNUjvbs3bfo4OTgMEMHzppd4DxFBDbyySj8Cv781g== - dependencies: - node-fetch "^2.6.11" - cross-spawn@^5.1.0: version "5.1.0" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-5.1.0.tgz#e8bd0efee58fcff6f8f94510a0a554bbfa235449" @@ -5249,7 +6301,7 @@ css-what@^6.1.0: css.escape@^1.5.1: version "1.5.1" resolved "https://registry.yarnpkg.com/css.escape/-/css.escape-1.5.1.tgz#42e27d4fa04ae32f931a4b4d4191fa9cddee97cb" - integrity sha1-QuJ9T6BK4y+TGktNQZH6nN3ul8s= + integrity sha512-YUifsXXuknHlUsmlgyY0PKzgPOr7/FjCePfHNt0jxm83wHZi44VDMQ7/fGNkjY3/jV1MC+1CmZbaHzugyeRtpg== cssdb@^6.3.1: version "6.4.0" @@ -5339,6 +6391,11 @@ csstype@^3.0.2, csstype@^3.1.2: resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.2.tgz#1d4bf9d572f11c14031f0436e1c10bc1f571f50b" integrity sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ== +csstype@^3.1.3: + version "3.1.3" + resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.3.tgz#d80ff294d114fb0e6ac500fbf85b60137d7eff81" + integrity sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw== + csv-generate@^3.4.3: version "3.4.3" resolved "https://registry.yarnpkg.com/csv-generate/-/csv-generate-3.4.3.tgz#bc42d943b45aea52afa896874291da4b9108ffff" @@ -5411,6 +6468,13 @@ debug@^3.1.1, debug@^3.2.7: dependencies: ms "^2.1.1" +debug@^4.3.7: + version "4.3.7" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.7.tgz#87945b4151a011d76d95a198d7111c865c360a52" + integrity sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ== + dependencies: + ms "^2.1.3" + decamelize-keys@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/decamelize-keys/-/decamelize-keys-1.1.0.tgz#d171a87933252807eb3cb61dc1c1445d078df2d9" @@ -5434,6 +6498,16 @@ dedent@^0.7.0: resolved "https://registry.yarnpkg.com/dedent/-/dedent-0.7.0.tgz#2495ddbaf6eb874abb0e1be9df22d2e5a544326c" integrity sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw= +dedent@^1.0.0: + version "1.5.3" + resolved "https://registry.yarnpkg.com/dedent/-/dedent-1.5.3.tgz#99aee19eb9bae55a67327717b6e848d0bf777e5a" + integrity sha512-NHQtfOOW68WD8lgypbLA5oT+Bt0xXJhiYvoR6SmmNXZfpzOGXwdKWmcwG8N7PwVVWV3eF/68nmD9BaJSsTBhyQ== + +deep-eql@^5.0.1: + version "5.0.2" + resolved "https://registry.yarnpkg.com/deep-eql/-/deep-eql-5.0.2.tgz#4b756d8d770a9257300825d52a2c2cff99c3a341" + integrity sha512-h5k/5U50IJJFpzfL6nO9jaaumfjO/f2NjK/oYB2Djzm4p9L+3T9qWpZqZ2hAbLPuuYq9wrU08WQyBTL5GbPk5Q== + deep-equal@^1.0.1: version "1.1.1" resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.1.1.tgz#b5c98c942ceffaf7cb051e24e1434a25a2e6076a" @@ -5585,6 +6659,11 @@ deps-regex@^0.2.0: resolved "https://registry.yarnpkg.com/deps-regex/-/deps-regex-0.2.0.tgz#3ee7ddae5fd784f3accf29d5a711aa6e10044137" integrity sha512-PwuBojGMQAYbWkMXOY9Pd/NWCDNHVH12pnS7WHqZkTSeMESe4hwnKKRp0yR87g37113x4JPbo/oIvXY+s/f56Q== +dequal@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/dequal/-/dequal-2.0.3.tgz#2644214f1997d39ed0ee0ece72335490a7ac67be" + integrity sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA== + destroy@1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.2.0.tgz#4803735509ad8be552934c67df614f94e66fa015" @@ -5637,10 +6716,10 @@ diff-sequences@^27.5.1: resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-27.5.1.tgz#eaecc0d327fd68c8d9672a1e64ab8dccb2ef5327" integrity sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ== -diff-sequences@^29.2.0: - version "29.2.0" - resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-29.2.0.tgz#4c55b5b40706c7b5d2c5c75999a50c56d214e8f6" - integrity sha512-413SY5JpYeSBZxmenGEmCVQ8mCgtFJF0w9PROdaS6z987XC2Pd2GOKqOITLtMftmyFZqgtCOb/QA7/Z3ZXfzIw== +diff-sequences@^29.6.3: + version "29.6.3" + resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-29.6.3.tgz#4deaf894d11407c51efc8418012f9e70b84ea921" + integrity sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q== diff@^4.0.1: version "4.0.2" @@ -5720,9 +6799,9 @@ doctrine@^3.0.0: esutils "^2.0.2" dom-accessibility-api@^0.5.9: - version "0.5.10" - resolved "https://registry.yarnpkg.com/dom-accessibility-api/-/dom-accessibility-api-0.5.10.tgz#caa6d08f60388d0bb4539dd75fe458a9a1d0014c" - integrity sha512-Xu9mD0UjrJisTmv7lmVSDMagQcU9R5hwAbxsaAE/35XPnPLJobbuREfV/rraiSaEj/UOvgrzQs66zyTWTlyd+g== + version "0.5.16" + resolved "https://registry.yarnpkg.com/dom-accessibility-api/-/dom-accessibility-api-0.5.16.tgz#5a7429e6066eb3664d911e33fb0e45de8eb08453" + integrity sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg== dom-accessibility-api@^0.6.3: version "0.6.3" @@ -5870,6 +6949,11 @@ duplexer@^0.1.2: resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.2.tgz#3abe43aef3835f8ae077d136ddce0f276b0400e6" integrity sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg== +eastasianwidth@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/eastasianwidth/-/eastasianwidth-0.2.0.tgz#696ce2ec0aa0e6ea93a397ffcf24aa7840c827cb" + integrity sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA== + ecc-jsbn@~0.1.1: version "0.1.2" resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz#3a83a904e54353287874c564b7549386849a98c9" @@ -5895,6 +6979,16 @@ electron-to-chromium@^1.4.477: resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.498.tgz#cef35341123f62a35ba7084e439c911d25e0d81b" integrity sha512-4LODxAzKGVy7CJyhhN5mebwe7U2L29P+0G+HUriHnabm0d7LSff8Yn7t+Wq+2/9ze2Fu1dhX7mww090xfv7qXQ== +electron-to-chromium@^1.5.41: + version "1.5.55" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.55.tgz#73684752aa2e1aa49cafb355a41386c6637e76a9" + integrity sha512-6maZ2ASDOTBtjt9FhqYPRnbvKU5tjG0IN9SztUOWYw2AzNDNpKJYLJmlK0/En4Hs/aiWnB+JZ+gW19PIGszgKg== + +emittery@^0.13.1: + version "0.13.1" + resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.13.1.tgz#c04b8c3457490e0847ae51fced3af52d338e3dad" + integrity sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ== + emittery@^0.8.1: version "0.8.1" resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.8.1.tgz#bb23cc86d03b30aa75a7f734819dee2e1ba70860" @@ -6092,11 +7186,45 @@ esbuild@^0.20.1: "@esbuild/win32-ia32" "0.20.2" "@esbuild/win32-x64" "0.20.2" +esbuild@^0.21.3: + version "0.21.5" + resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.21.5.tgz#9ca301b120922959b766360d8ac830da0d02997d" + integrity sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw== + optionalDependencies: + "@esbuild/aix-ppc64" "0.21.5" + "@esbuild/android-arm" "0.21.5" + "@esbuild/android-arm64" "0.21.5" + "@esbuild/android-x64" "0.21.5" + "@esbuild/darwin-arm64" "0.21.5" + "@esbuild/darwin-x64" "0.21.5" + "@esbuild/freebsd-arm64" "0.21.5" + "@esbuild/freebsd-x64" "0.21.5" + "@esbuild/linux-arm" "0.21.5" + "@esbuild/linux-arm64" "0.21.5" + "@esbuild/linux-ia32" "0.21.5" + "@esbuild/linux-loong64" "0.21.5" + "@esbuild/linux-mips64el" "0.21.5" + "@esbuild/linux-ppc64" "0.21.5" + "@esbuild/linux-riscv64" "0.21.5" + "@esbuild/linux-s390x" "0.21.5" + "@esbuild/linux-x64" "0.21.5" + "@esbuild/netbsd-x64" "0.21.5" + "@esbuild/openbsd-x64" "0.21.5" + "@esbuild/sunos-x64" "0.21.5" + "@esbuild/win32-arm64" "0.21.5" + "@esbuild/win32-ia32" "0.21.5" + "@esbuild/win32-x64" "0.21.5" + escalade@^3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== +escalade@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.2.0.tgz#011a3f69856ba189dffa7dc8fcce99d2a87903e5" + integrity sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA== + escape-html@~1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" @@ -6404,6 +7532,13 @@ estree-walker@^2.0.2: resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-2.0.2.tgz#52f010178c2a4c117a7757cfe942adb7d2da4cac" integrity sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w== +estree-walker@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-3.0.3.tgz#67c3e549ec402a487b4fc193d1953a524752340d" + integrity sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g== + dependencies: + "@types/estree" "^1.0.0" + esutils@^2.0.2: version "2.0.3" resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" @@ -6491,6 +7626,11 @@ expand-tilde@^2.0.0, expand-tilde@^2.0.2: dependencies: homedir-polyfill "^1.0.1" +expect-type@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/expect-type/-/expect-type-1.1.0.tgz#a146e414250d13dfc49eafcfd1344a4060fa4c75" + integrity sha512-bFi65yM+xZgk+u/KRIpekdSYkTB5W1pEf0Lt8Q8Msh7b+eQ7LXVtIB1Bkm4fvclDEL1b2CZkMhv2mOeF8tMdkA== + expect@^27.5.1: version "27.5.1" resolved "https://registry.yarnpkg.com/expect/-/expect-27.5.1.tgz#83ce59f1e5bdf5f9d2b94b61d2050db48f3fef74" @@ -6501,6 +7641,17 @@ expect@^27.5.1: jest-matcher-utils "^27.5.1" jest-message-util "^27.5.1" +expect@^29.0.0, expect@^29.7.0: + version "29.7.0" + resolved "https://registry.yarnpkg.com/expect/-/expect-29.7.0.tgz#578874590dcb3214514084c08115d8aee61e11bc" + integrity sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw== + 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" + express@4.21.1, express@^4.17.1, express@^4.18.2, express@^4.20.0: version "4.21.1" resolved "https://registry.yarnpkg.com/express/-/express-4.21.1.tgz#9dae5dda832f16b4eec941a4e44aa89ec481b281" @@ -6588,7 +7739,7 @@ fast-glob@^3.2.11, fast-glob@^3.2.9: merge2 "^1.3.0" micromatch "^4.0.4" -fast-json-stable-stringify@2.x, fast-json-stable-stringify@^2.0.0, fast-json-stable-stringify@^2.1.0: +fast-json-stable-stringify@^2.0.0, fast-json-stable-stringify@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== @@ -6598,11 +7749,6 @@ fast-levenshtein@^2.0.6, fast-levenshtein@~2.0.6: resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= -fast-loops@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/fast-loops/-/fast-loops-1.1.3.tgz#ce96adb86d07e7bf9b4822ab9c6fac9964981f75" - integrity sha512-8EZzEP0eKkEEVX+drtd9mtuQ+/QrlfW/5MlwcwK5Nds6EkZ/tRzEexkzUY2mIssnAyVLT+TKHuRXmFNNXYUd6g== - fast-redact@^3.1.1: version "3.1.2" resolved "https://registry.yarnpkg.com/fast-redact/-/fast-redact-3.1.2.tgz#d58e69e9084ce9fa4c1a6fa98a3e1ecf5d7839aa" @@ -6644,6 +7790,16 @@ fb-watchman@^2.0.0: dependencies: bser "2.1.1" +fdir@^6.4.2: + version "6.4.2" + resolved "https://registry.yarnpkg.com/fdir/-/fdir-6.4.2.tgz#ddaa7ce1831b161bc3657bb99cb36e1622702689" + integrity sha512-KnhMXsKSPZlAhp7+IjUkRZKPb4fUyccpDrdFXbi4QL1qkmFh9kVY09Yox+n4MaOb3lHZ1Tv829C3oaaXoMYPDQ== + +fflate@^0.8.2: + version "0.8.2" + resolved "https://registry.yarnpkg.com/fflate/-/fflate-0.8.2.tgz#fc8631f5347812ad6028bbe4a2308b2792aa1dea" + integrity sha512-cPJU47OaAoCbg0pBvzsgpTPhmhqI5eJjh/JIu8tPj5q+T7iLvW/JAYUqmE7KOB4R1ZyEhzBaIQpQpardBF5z8A== + figures@^3.0.0: version "3.2.0" resolved "https://registry.yarnpkg.com/figures/-/figures-3.2.0.tgz#625c18bd293c604dc4a8ddb2febf0c88341746af" @@ -6685,19 +7841,6 @@ fill-range@^7.1.1: dependencies: to-regex-range "^5.0.1" -finalhandler@1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.2.0.tgz#7d23fe5731b207b4640e4fcd00aec1f9207a7b32" - integrity sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg== - dependencies: - debug "2.6.9" - encodeurl "~1.0.2" - escape-html "~1.0.3" - on-finished "2.4.1" - parseurl "~1.3.3" - statuses "2.0.1" - unpipe "~1.0.0" - finalhandler@1.3.1: version "1.3.1" resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.3.1.tgz#0c575f1d1d324ddd1da35ad7ece3df7d19088019" @@ -6786,6 +7929,11 @@ flatted@^3.1.0: resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.1.1.tgz#c4b489e80096d9df1dfc97c79871aea7c617c469" integrity sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA== +flatted@^3.3.1: + version "3.3.1" + resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.3.1.tgz#21db470729a6734d4997002f439cb308987f567a" + integrity sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw== + follow-redirects@^1.0.0: version "1.15.6" resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.6.tgz#7f815c0cda4249c74ff09e95ef97c23b5fd0399b" @@ -6798,6 +7946,14 @@ for-each@^0.3.3: dependencies: is-callable "^1.1.3" +foreground-child@^3.1.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/foreground-child/-/foreground-child-3.3.0.tgz#0ac8644c06e431439f8561db8ecf29a7b5519c77" + integrity sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg== + dependencies: + cross-spawn "^7.0.0" + signal-exit "^4.0.1" + forever-agent@~0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" @@ -6969,6 +8125,11 @@ fsevents@2.3.2, fsevents@^2.3.2, fsevents@~2.3.2: resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== +fsevents@~2.3.3: + version "2.3.3" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6" + integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw== + function-bind@^1.1.1, function-bind@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.2.tgz#2c02d864d97f3ea6c8830c464cbd11ab6eab7a1c" @@ -7004,7 +8165,7 @@ get-east-asian-width@^1.0.0: resolved "https://registry.yarnpkg.com/get-east-asian-width/-/get-east-asian-width-1.2.0.tgz#5e6ebd9baee6fb8b7b6bd505221065f0cd91f64e" integrity sha512-2nk+7SIVb14QrgXFHcm84tD4bKQz0RxPuMT8Ag5KPOq7J5fEmAg0UbXdTOSHqNuHSU28k55qnceesxXRZGzKWA== -get-intrinsic@^1.0.2, get-intrinsic@^1.1.1, get-intrinsic@^1.1.3, get-intrinsic@^1.2.1, get-intrinsic@^1.2.2, get-intrinsic@^1.2.4: +get-intrinsic@^1.1.1, get-intrinsic@^1.1.3, get-intrinsic@^1.2.1, get-intrinsic@^1.2.2, get-intrinsic@^1.2.4: version "1.2.4" resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.2.4.tgz#e385f5a4b5227d449c3eabbad05494ef0abbeadd" integrity sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ== @@ -7095,6 +8256,18 @@ glob-to-regexp@^0.4.1: resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz#c75297087c851b9a578bd217dd59a92f59fe546e" integrity sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw== +glob@^10.4.1: + version "10.4.5" + resolved "https://registry.yarnpkg.com/glob/-/glob-10.4.5.tgz#f4d9f0b90ffdbab09c9d77f5f29b4262517b0956" + integrity sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg== + dependencies: + foreground-child "^3.1.0" + jackspeak "^3.1.2" + minimatch "^9.0.4" + minipass "^7.1.2" + package-json-from-dist "^1.0.0" + path-scurry "^1.11.1" + glob@^7.0.0, glob@^7.0.5, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6: version "7.2.3" resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" @@ -7562,12 +8735,12 @@ hyphenate-style-name@^1.0.3: resolved "https://registry.yarnpkg.com/hyphenate-style-name/-/hyphenate-style-name-1.0.4.tgz#691879af8e220aea5750e8827db4ef62a54e361d" integrity sha512-ygGZLjmXfPHj+ZWh6LwbC37l43MhfztxetbFCoYTM2VjkIUpeHgSNn7QIyVFj7YQ1Wl9Cbw5sholVJPzWvC2MQ== -i18next-browser-languagedetector@^7.1.0: - version "7.1.0" - resolved "https://registry.yarnpkg.com/i18next-browser-languagedetector/-/i18next-browser-languagedetector-7.1.0.tgz#01876fac51f86b78975e79b48ccb62e2313a2d7d" - integrity sha512-cr2k7u1XJJ4HTOjM9GyOMtbOA47RtUoWRAtt52z43r3AoMs2StYKyjS3URPhzHaf+mn10hY9dZWamga5WPQjhA== +i18next-browser-languagedetector@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/i18next-browser-languagedetector/-/i18next-browser-languagedetector-8.0.0.tgz#b6fdd9b43af67c47f2c26c9ba27710a1eaf31e2f" + integrity sha512-zhXdJXTTCoG39QsrOCiOabnWj2jecouOqbchu3EfhtSHxIB5Uugnm9JaizenOy39h7ne3+fLikIjeW88+rgszw== dependencies: - "@babel/runtime" "^7.19.4" + "@babel/runtime" "^7.23.2" i18next-chained-backend@^4.6.2: version "4.6.2" @@ -7617,12 +8790,19 @@ i18next-parser@^8.13.0: vinyl-fs "^4.0.0" vue-template-compiler "^2.6.11" -i18next-resources-to-backend@^1.1.3: - version "1.1.4" - resolved "https://registry.yarnpkg.com/i18next-resources-to-backend/-/i18next-resources-to-backend-1.1.4.tgz#d139ca0cacc270dcc90b7926e192f4cd5aa4db60" - integrity sha512-hMyr9AOmIea17AOaVe1srNxK/l3mbk81P7Uf3fdcjlw3ehZy3UNTd0OP3EEi6yu4J02kf9jzhCcjokz6AFlEOg== +i18next-resources-to-backend@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/i18next-resources-to-backend/-/i18next-resources-to-backend-1.2.1.tgz#fded121e63e3139ce839c9901b9449dbbea7351d" + integrity sha512-okHbVA+HZ7n1/76MsfhPqDou0fptl2dAlhRDu2ideXloRRduzHsqDOznJBef+R3DFZnbvWoBW+KxJ7fnFjd6Yw== + dependencies: + "@babel/runtime" "^7.23.2" + +i18next@^23.16.0: + version "23.16.5" + resolved "https://registry.yarnpkg.com/i18next/-/i18next-23.16.5.tgz#53d48ae9f985fd73fc1fcb96e6c7d90ababf0831" + integrity sha512-KTlhE3EP9x6pPTAW7dy0WKIhoCpfOGhRQlO+jttQLgzVaoOjWwBWramu7Pp0i+8wDNduuzXfe3kkVbzrKyrbTA== dependencies: - "@babel/runtime" "^7.21.5" + "@babel/runtime" "^7.23.2" i18next@^23.5.1, i18next@^23.7.16: version "23.7.16" @@ -7726,13 +8906,12 @@ ini@^1.3.4, ini@^1.3.5: resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c" integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew== -inline-style-prefixer@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/inline-style-prefixer/-/inline-style-prefixer-7.0.0.tgz#991d550735d42069f528ac1bcdacd378d1305442" - integrity sha512-I7GEdScunP1dQ6IM2mQWh6v0mOYdYmH3Bp31UecKdrcUgcURTcctSe1IECdUznSHKSmsHtjrT3CwCPI1pyxfUQ== +inline-style-prefixer@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/inline-style-prefixer/-/inline-style-prefixer-7.0.1.tgz#9310f3cfa2c6f3901d1480f373981c02691781e8" + integrity sha512-lhYo5qNTQp3EvSSp3sRvXMbVQTLrvGV6DycRMJ5dm2BLMiJ30wpXKdDdgX+GmJZ5uQMucwRKHamXSst3Sj/Giw== dependencies: css-in-js-utils "^3.1.0" - fast-loops "^1.1.3" inquirer@8.2.4: version "8.2.4" @@ -8157,6 +9336,11 @@ istanbul-lib-coverage@^3.0.0, istanbul-lib-coverage@^3.2.0: resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz#189e7909d0a39fa5a3dfad5b03f71947770191d3" integrity sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw== +istanbul-lib-coverage@^3.2.2: + version "3.2.2" + resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz#2d166c4b0644d43a39f04bf6c2edd1e585f31756" + integrity sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg== + istanbul-lib-instrument@^5.0.4, istanbul-lib-instrument@^5.1.0: version "5.2.1" resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz#d10c8885c2125574e1c231cacadf955675e1ce3d" @@ -8168,6 +9352,17 @@ istanbul-lib-instrument@^5.0.4, istanbul-lib-instrument@^5.1.0: istanbul-lib-coverage "^3.2.0" semver "^6.3.0" +istanbul-lib-instrument@^6.0.0: + version "6.0.3" + resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.3.tgz#fa15401df6c15874bcb2105f773325d78c666765" + integrity sha512-Vtgk7L/R2JHyyGW07spoFlB8/lpjiOLTjMdms6AFMraYt3BaJauod/NGrfnVG/y4Ix1JEuMRPDPEj2ua+zz1/Q== + dependencies: + "@babel/core" "^7.23.9" + "@babel/parser" "^7.23.9" + "@istanbuljs/schema" "^0.1.3" + istanbul-lib-coverage "^3.2.0" + semver "^7.5.4" + istanbul-lib-report@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#7518fe52ea44de372f460a76b5ecda9ffb73d8a6" @@ -8177,6 +9372,15 @@ istanbul-lib-report@^3.0.0: make-dir "^3.0.0" supports-color "^7.1.0" +istanbul-lib-report@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz#908305bac9a5bd175ac6a74489eafd0fc2445a7d" + integrity sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw== + dependencies: + istanbul-lib-coverage "^3.0.0" + make-dir "^4.0.0" + supports-color "^7.1.0" + istanbul-lib-source-maps@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.0.tgz#75743ce6d96bb86dc7ee4352cf6366a23f0b1ad9" @@ -8186,6 +9390,15 @@ istanbul-lib-source-maps@^4.0.0: istanbul-lib-coverage "^3.0.0" source-map "^0.6.1" +istanbul-lib-source-maps@^5.0.6: + version "5.0.6" + resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-5.0.6.tgz#acaef948df7747c8eb5fbf1265cb980f6353a441" + integrity sha512-yg2d+Em4KizZC5niWhQaIomgf5WlL4vOOjZ5xGCmF8SnPE/mDWWXgvRExdcpCgh9lLRRa1/fSYp2ymmbJ1pI+A== + dependencies: + "@jridgewell/trace-mapping" "^0.3.23" + debug "^4.1.1" + istanbul-lib-coverage "^3.0.0" + istanbul-reports@^3.1.3: version "3.1.5" resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.1.5.tgz#cc9a6ab25cb25659810e4785ed9d9fb742578bae" @@ -8194,11 +9407,28 @@ istanbul-reports@^3.1.3: html-escaper "^2.0.0" istanbul-lib-report "^3.0.0" +istanbul-reports@^3.1.7: + version "3.1.7" + resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.1.7.tgz#daed12b9e1dca518e15c056e1e537e741280fa0b" + integrity sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g== + dependencies: + html-escaper "^2.0.0" + istanbul-lib-report "^3.0.0" + iterare@1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/iterare/-/iterare-1.2.1.tgz#139c400ff7363690e33abffa33cbba8920f00042" integrity sha512-RKYVTCjAnRthyJes037NX/IiqeidgN1xc3j1RjFfECFp28A1GVwK9nA+i0rJPaHqSZwygLzRnFlzUuHFoWWy+Q== +jackspeak@^3.1.2: + version "3.4.3" + resolved "https://registry.yarnpkg.com/jackspeak/-/jackspeak-3.4.3.tgz#8833a9d89ab4acde6188942bd1c53b6390ed5a8a" + integrity sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw== + dependencies: + "@isaacs/cliui" "^8.0.2" + optionalDependencies: + "@pkgjs/parseargs" "^0.11.0" + jake@^10.8.5: version "10.8.5" resolved "https://registry.yarnpkg.com/jake/-/jake-10.8.5.tgz#f2183d2c59382cb274226034543b9c03b8164c46" @@ -8209,16 +9439,6 @@ jake@^10.8.5: filelist "^1.0.1" minimatch "^3.0.4" -jest-axe@^8.0.0: - version "8.0.0" - resolved "https://registry.yarnpkg.com/jest-axe/-/jest-axe-8.0.0.tgz#4d89a1756bda2999a4271e851370981319389155" - integrity sha512-4kNcNn7J0jPO4jANEYZOHeQ/tSBvkXS+MxTbX1CKbXGd0+ZbRGDn/v/8IYWI/MmYX15iLVyYRnRev9X3ksePWA== - dependencies: - axe-core "4.7.2" - chalk "4.1.2" - jest-matcher-utils "29.2.2" - lodash.merge "4.6.2" - jest-changed-files@^27.5.1: version "27.5.1" resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-27.5.1.tgz#a348aed00ec9bf671cc58a66fcbe7c3dfd6a68f5" @@ -8228,6 +9448,15 @@ jest-changed-files@^27.5.1: execa "^5.0.0" throat "^6.0.1" +jest-changed-files@^29.7.0: + version "29.7.0" + resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-29.7.0.tgz#1c06d07e77c78e1585d020424dedc10d6e17ac3a" + integrity sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w== + dependencies: + execa "^5.0.0" + jest-util "^29.7.0" + p-limit "^3.1.0" + jest-circus@^27.5.1: version "27.5.1" resolved "https://registry.yarnpkg.com/jest-circus/-/jest-circus-27.5.1.tgz#37a5a4459b7bf4406e53d637b49d22c65d125ecc" @@ -8253,6 +9482,32 @@ jest-circus@^27.5.1: stack-utils "^2.0.3" throat "^6.0.1" +jest-circus@^29.7.0: + version "29.7.0" + resolved "https://registry.yarnpkg.com/jest-circus/-/jest-circus-29.7.0.tgz#b6817a45fcc835d8b16d5962d0c026473ee3668a" + integrity sha512-3E1nCMgipcTkCocFwM90XXQab9bS+GMsjdpmPrlelaxwD93Ad8iVEjX/vvHPdLPnFf+L40u+5+iutRdA1N9myw== + 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" + jest-cli@^27.5.1: version "27.5.1" resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-27.5.1.tgz#278794a6e6458ea8029547e6c6cbf673bd30b145" @@ -8271,6 +9526,23 @@ jest-cli@^27.5.1: prompts "^2.0.1" yargs "^16.2.0" +jest-cli@^29.7.0: + version "29.7.0" + resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-29.7.0.tgz#5592c940798e0cae677eec169264f2d839a37995" + integrity sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg== + 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" + jest-config@^27.5.1: version "27.5.1" resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-27.5.1.tgz#5c387de33dca3f99ad6357ddeccd91bf3a0e4a41" @@ -8301,6 +9573,34 @@ jest-config@^27.5.1: slash "^3.0.0" strip-json-comments "^3.1.1" +jest-config@^29.7.0: + version "29.7.0" + resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-29.7.0.tgz#bcbda8806dbcc01b1e316a46bb74085a84b0245f" + integrity sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ== + 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" + jest-diff@^27.5.1: version "27.5.1" resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-27.5.1.tgz#a07f5011ac9e6643cf8a95a462b7b1ecf6680def" @@ -8311,15 +9611,15 @@ jest-diff@^27.5.1: jest-get-type "^27.5.1" pretty-format "^27.5.1" -jest-diff@^29.2.1: - version "29.2.1" - resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-29.2.1.tgz#027e42f5a18b693fb2e88f81b0ccab533c08faee" - integrity sha512-gfh/SMNlQmP3MOUgdzxPOd4XETDJifADpT937fN1iUGz+9DgOu2eUPHH25JDkLVcLwwqxv3GzVyK4VBUr9fjfA== +jest-diff@^29.7.0: + version "29.7.0" + resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-29.7.0.tgz#017934a66ebb7ecf6f205e84699be10afd70458a" + integrity sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw== dependencies: chalk "^4.0.0" - diff-sequences "^29.2.0" - jest-get-type "^29.2.0" - pretty-format "^29.2.1" + diff-sequences "^29.6.3" + jest-get-type "^29.6.3" + pretty-format "^29.7.0" jest-docblock@^27.5.1: version "27.5.1" @@ -8328,6 +9628,13 @@ jest-docblock@^27.5.1: dependencies: detect-newline "^3.0.0" +jest-docblock@^29.7.0: + version "29.7.0" + resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-29.7.0.tgz#8fddb6adc3cdc955c93e2a87f61cfd350d5d119a" + integrity sha512-q617Auw3A612guyaFgsbFeYpNP5t2aoUNLwBUbc/0kD1R4t9ixDbyFTHd1nok4epoVFpr7PmeWHrhvuV3XaJ4g== + dependencies: + detect-newline "^3.0.0" + jest-each@^27.5.1: version "27.5.1" resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-27.5.1.tgz#5bc87016f45ed9507fed6e4702a5b468a5b2c44e" @@ -8339,6 +9646,17 @@ jest-each@^27.5.1: jest-util "^27.5.1" pretty-format "^27.5.1" +jest-each@^29.7.0: + version "29.7.0" + resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-29.7.0.tgz#162a9b3f2328bdd991beaabffbb74745e56577d1" + integrity sha512-gns+Er14+ZrEoC5fhOfYCY1LOHHr0TI+rQUHZS8Ttw2l7gl+80eHc/gFf2Ktkw0+SIACDTeWvpFcv3B04VembQ== + 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" + jest-environment-jsdom@^27.5.1: version "27.5.1" resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-27.5.1.tgz#ea9ccd1fc610209655a77898f86b2b559516a546" @@ -8364,23 +9682,27 @@ jest-environment-node@^27.5.1: jest-mock "^27.5.1" jest-util "^27.5.1" -jest-fetch-mock@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/jest-fetch-mock/-/jest-fetch-mock-3.0.3.tgz#31749c456ae27b8919d69824f1c2bd85fe0a1f3b" - integrity sha512-Ux1nWprtLrdrH4XwE7O7InRY6psIi3GOsqNESJgMJ+M5cv4A8Lh7SN9d2V2kKRZ8ebAfcd1LNyZguAOb6JiDqw== +jest-environment-node@^29.7.0: + version "29.7.0" + resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-29.7.0.tgz#0b93e111dda8ec120bc8300e6d1fb9576e164376" + integrity sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw== dependencies: - cross-fetch "^3.0.4" - promise-polyfill "^8.1.3" + "@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" jest-get-type@^27.5.1: version "27.5.1" resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-27.5.1.tgz#3cd613c507b0f7ace013df407a1c1cd578bcb4f1" integrity sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw== -jest-get-type@^29.2.0: - version "29.2.0" - resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-29.2.0.tgz#726646f927ef61d583a3b3adb1ab13f3a5036408" - integrity sha512-uXNJlg8hKFEnDgFsrCjznB+sTxdkuqiCL6zMgA75qEbAJjJYTs9XPrvDctrEig2GDow22T/LvHgO57iJhXB/UA== +jest-get-type@^29.6.3: + version "29.6.3" + resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-29.6.3.tgz#36f499fdcea197c1045a127319c0481723908fd1" + integrity sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw== jest-haste-map@^27.5.1: version "27.5.1" @@ -8402,6 +9724,25 @@ jest-haste-map@^27.5.1: optionalDependencies: fsevents "^2.3.2" +jest-haste-map@^29.7.0: + version "29.7.0" + resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-29.7.0.tgz#3c2396524482f5a0506376e6c858c3bbcc17b104" + integrity sha512-fP8u2pyfqx0K1rGn1R9pyE0/KTn+G7PxktWidOBTqFPLYX0b9ksaMFkhK5vrS3DVun09pckLdlx90QthlW7AmA== + 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" + optionalDependencies: + fsevents "^2.3.2" + jest-jasmine2@^27.5.1: version "27.5.1" resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-27.5.1.tgz#a037b0034ef49a9f3d71c4375a796f3b230d1ac4" @@ -8433,17 +9774,15 @@ jest-leak-detector@^27.5.1: jest-get-type "^27.5.1" pretty-format "^27.5.1" -jest-matcher-utils@29.2.2: - version "29.2.2" - resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-29.2.2.tgz#9202f8e8d3a54733266784ce7763e9a08688269c" - integrity sha512-4DkJ1sDPT+UX2MR7Y3od6KtvRi9Im1ZGLGgdLFLm4lPexbTaCgJW5NN3IOXlQHF7NSHY/VHhflQ+WoKtD/vyCw== +jest-leak-detector@^29.7.0: + version "29.7.0" + resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-29.7.0.tgz#5b7ec0dadfdfec0ca383dc9aa016d36b5ea4c728" + integrity sha512-kYA8IJcSYtST2BY9I+SMC32nDpBT3J2NvWJx8+JCuCdl/CR1I4EKUJROiP8XtCcxqgTTBGJNdbB1A8XRKbTetw== dependencies: - chalk "^4.0.0" - jest-diff "^29.2.1" - jest-get-type "^29.2.0" - pretty-format "^29.2.1" + jest-get-type "^29.6.3" + pretty-format "^29.7.0" -jest-matcher-utils@^27.0.0, jest-matcher-utils@^27.5.1: +jest-matcher-utils@^27.5.1: version "27.5.1" resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz#9c0cdbda8245bc22d2331729d1091308b40cf8ab" integrity sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw== @@ -8453,6 +9792,16 @@ jest-matcher-utils@^27.0.0, jest-matcher-utils@^27.5.1: jest-get-type "^27.5.1" pretty-format "^27.5.1" +jest-matcher-utils@^29.7.0: + version "29.7.0" + resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-29.7.0.tgz#ae8fec79ff249fd592ce80e3ee474e83a6c44f12" + integrity sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g== + dependencies: + chalk "^4.0.0" + jest-diff "^29.7.0" + jest-get-type "^29.6.3" + pretty-format "^29.7.0" + jest-message-util@^27.5.1: version "27.5.1" resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-27.5.1.tgz#bdda72806da10d9ed6425e12afff38cd1458b6cf" @@ -8468,6 +9817,21 @@ jest-message-util@^27.5.1: slash "^3.0.0" stack-utils "^2.0.3" +jest-message-util@^29.7.0: + version "29.7.0" + resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-29.7.0.tgz#8bc392e204e95dfe7564abbe72a404e28e51f7f3" + 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" + jest-mock@^27.5.1: version "27.5.1" resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-27.5.1.tgz#19948336d49ef4d9c52021d34ac7b5f36ff967d6" @@ -8476,6 +9840,15 @@ jest-mock@^27.5.1: "@jest/types" "^27.5.1" "@types/node" "*" +jest-mock@^29.7.0: + version "29.7.0" + resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-29.7.0.tgz#4e836cf60e99c6fcfabe9f99d017f3fdd50a6347" + integrity sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw== + dependencies: + "@jest/types" "^29.6.3" + "@types/node" "*" + jest-util "^29.7.0" + jest-pnp-resolver@^1.2.2: version "1.2.2" resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz#b704ac0ae028a89108a4d040b3f919dfddc8e33c" @@ -8486,6 +9859,11 @@ jest-regex-util@^27.0.0, jest-regex-util@^27.5.1: resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-27.5.1.tgz#4da143f7e9fd1e542d4aa69617b38e4a78365b95" integrity sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg== +jest-regex-util@^29.6.3: + version "29.6.3" + resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-29.6.3.tgz#4a556d9c776af68e1c5f48194f4d0327d24e8a52" + integrity sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg== + jest-resolve-dependencies@^27.5.1: version "27.5.1" resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-27.5.1.tgz#d811ecc8305e731cc86dd79741ee98fed06f1da8" @@ -8495,6 +9873,14 @@ jest-resolve-dependencies@^27.5.1: jest-regex-util "^27.5.1" jest-snapshot "^27.5.1" +jest-resolve-dependencies@^29.7.0: + version "29.7.0" + resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-29.7.0.tgz#1b04f2c095f37fc776ff40803dc92921b1e88428" + integrity sha512-un0zD/6qxJ+S0et7WxeI3H5XSe9lTBBR7bOHCHXkKR6luG5mwDDlIzVQ0V5cZCuoTgEdcdwzTghYkTWfubi+nA== + dependencies: + jest-regex-util "^29.6.3" + jest-snapshot "^29.7.0" + jest-resolve@^27.4.2, jest-resolve@^27.5.1: version "27.5.1" resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-27.5.1.tgz#a2f1c5a0796ec18fe9eb1536ac3814c23617b384" @@ -8511,6 +9897,21 @@ jest-resolve@^27.4.2, jest-resolve@^27.5.1: resolve.exports "^1.1.0" slash "^3.0.0" +jest-resolve@^29.7.0: + version "29.7.0" + resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-29.7.0.tgz#64d6a8992dd26f635ab0c01e5eef4399c6bcbc30" + integrity sha512-IOVhZSrg+UvVAshDSDtHyFCCBUl/Q3AAJv8iZ6ZjnZ74xzvwuzLXid9IIIPgTnY62SJjfuupMKZsZQRsCvxEgA== + 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" + jest-runner@^27.5.1: version "27.5.1" resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-27.5.1.tgz#071b27c1fa30d90540805c5645a0ec167c7b62e5" @@ -8538,6 +9939,33 @@ jest-runner@^27.5.1: source-map-support "^0.5.6" throat "^6.0.1" +jest-runner@^29.7.0: + version "29.7.0" + resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-29.7.0.tgz#809af072d408a53dcfd2e849a4c976d3132f718e" + integrity sha512-fsc4N6cPCAahybGBfTRcq5wFR6fpLznMg47sY5aDpsoejOcVYFb07AHuSnR0liMcPTgBsA3ZJL6kFOjPdoNipQ== + 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" + jest-runtime@^27.5.1: version "27.5.1" resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-27.5.1.tgz#4896003d7a334f7e8e4a53ba93fb9bcd3db0a1af" @@ -8566,6 +9994,34 @@ jest-runtime@^27.5.1: slash "^3.0.0" strip-bom "^4.0.0" +jest-runtime@^29.7.0: + version "29.7.0" + resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-29.7.0.tgz#efecb3141cf7d3767a3a0cc8f7c9990587d3d817" + integrity sha512-gUnLjgwdGqW7B4LvOIkbKs9WGbn+QLqRQQ9juC6HndeDiezIwhDP+mhMwHWCEcfQ5RUXa6OPnFF8BJh5xegwwQ== + 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" + jest-serializer@^27.5.1: version "27.5.1" resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-27.5.1.tgz#81438410a30ea66fd57ff730835123dea1fb1f64" @@ -8602,7 +10058,33 @@ jest-snapshot@^27.5.1: pretty-format "^27.5.1" semver "^7.3.2" -jest-util@^27.0.0, jest-util@^27.5.1: +jest-snapshot@^29.7.0: + version "29.7.0" + resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-29.7.0.tgz#c2c574c3f51865da1bb329036778a69bf88a6be5" + integrity sha512-Rm0BMWtxBcioHr1/OX5YCP8Uov4riHvKPknOGs804Zg9JGZgmIBkbtlxJC/7Z4msKYVbIJtfU+tKb8xlYNfdkw== + 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" + +jest-util@^27.5.1: version "27.5.1" resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-27.5.1.tgz#3ba9771e8e31a0b85da48fe0b0891fb86c01c2f9" integrity sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw== @@ -8614,6 +10096,18 @@ jest-util@^27.0.0, jest-util@^27.5.1: graceful-fs "^4.2.9" picomatch "^2.2.3" +jest-util@^29.7.0: + version "29.7.0" + resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-29.7.0.tgz#23c2b62bfb22be82b44de98055802ff3710fc0bc" + 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" + jest-validate@^27.5.1: version "27.5.1" resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-27.5.1.tgz#9197d54dc0bdb52260b8db40b46ae668e04df067" @@ -8626,6 +10120,18 @@ jest-validate@^27.5.1: leven "^3.1.0" pretty-format "^27.5.1" +jest-validate@^29.7.0: + version "29.7.0" + resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-29.7.0.tgz#7bf705511c64da591d46b15fce41400d52147d9c" + integrity sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw== + 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" + jest-watch-typeahead@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/jest-watch-typeahead/-/jest-watch-typeahead-1.0.0.tgz#4de2ca1eb596acb1889752afbab84b74fcd99173" @@ -8652,6 +10158,20 @@ jest-watcher@^27.0.0, jest-watcher@^27.5.1: jest-util "^27.5.1" string-length "^4.0.1" +jest-watcher@^29.7.0: + version "29.7.0" + resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-29.7.0.tgz#7810d30d619c3a62093223ce6bb359ca1b28a2f2" + integrity sha512-49Fg7WXkU3Vl2h6LbLtMQ/HyB6rXSIX7SqvBLQmssRBGN9I0PNvPmAmCWSOY6SOvrjhI/F7/bGAv9RtnsPA03g== + 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" + jest-worker@^26.2.1: version "26.6.2" resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-26.6.2.tgz#7f72cbc4d643c365e27b9fd775f9d0eaa9c7a8ed" @@ -8670,6 +10190,16 @@ jest-worker@^27.0.2, jest-worker@^27.3.1, jest-worker@^27.4.5, jest-worker@^27.5 merge-stream "^2.0.0" supports-color "^8.0.0" +jest-worker@^29.7.0: + version "29.7.0" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-29.7.0.tgz#acad073acbbaeb7262bd5389e1bcf43e10058d4a" + integrity sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw== + dependencies: + "@types/node" "*" + jest-util "^29.7.0" + merge-stream "^2.0.0" + supports-color "^8.0.0" + jest@^27.4.3: version "27.5.1" resolved "https://registry.yarnpkg.com/jest/-/jest-27.5.1.tgz#dadf33ba70a779be7a6fc33015843b51494f63fc" @@ -8679,6 +10209,16 @@ jest@^27.4.3: import-local "^3.0.2" jest-cli "^27.5.1" +jest@^29.7.0: + version "29.7.0" + resolved "https://registry.yarnpkg.com/jest/-/jest-29.7.0.tgz#994676fc24177f088f1c5e3737f5697204ff2613" + integrity sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw== + dependencies: + "@jest/core" "^29.7.0" + "@jest/types" "^29.6.3" + import-local "^3.0.2" + jest-cli "^29.7.0" + joi@^17.13.3: version "17.13.3" resolved "https://registry.yarnpkg.com/joi/-/joi-17.13.3.tgz#0f5cc1169c999b30d344366d384b12d92558bcec" @@ -8763,6 +10303,11 @@ jsesc@^2.5.1: resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== +jsesc@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-3.0.2.tgz#bb8b09a6597ba426425f2e4a07245c3d00b9343e" + integrity sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g== + jsesc@~0.5.0: version "0.5.0" resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" @@ -8798,11 +10343,6 @@ json-stringify-safe@~5.0.1: resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" integrity sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus= -json5@2.x, json5@^2.1.2, json5@^2.2.0, json5@^2.2.1, json5@^2.2.2, json5@^2.2.3: - version "2.2.3" - resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" - integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== - json5@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.2.tgz#63d98d60f21b313b77c4d6da18bfa69d80e1d593" @@ -8810,6 +10350,11 @@ json5@^1.0.1: dependencies: minimist "^1.2.0" +json5@^2.1.2, json5@^2.2.0, json5@^2.2.1, json5@^2.2.2, json5@^2.2.3: + version "2.2.3" + resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" + integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== + jsonc-parser@3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/jsonc-parser/-/jsonc-parser-3.2.0.tgz#31ff3f4c2b9793f89c67212627c51c6394f88e76" @@ -9036,6 +10581,11 @@ locate-path@^6.0.0: dependencies: p-locate "^5.0.0" +lodash-es@^4.17.21: + version "4.17.21" + resolved "https://registry.yarnpkg.com/lodash-es/-/lodash-es-4.17.21.tgz#43e626c46e6591b7750beb2b50117390c609e3ee" + integrity sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw== + lodash.debounce@^4.0.8: version "4.0.8" resolved "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af" @@ -9061,12 +10611,12 @@ lodash.isplainobject@^4.0.6: resolved "https://registry.yarnpkg.com/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz#7c526a52d89b45c45cc690b88163be0497f550cb" integrity sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA== -lodash.memoize@4.x, lodash.memoize@^4.1.2: +lodash.memoize@^4.1.2: version "4.1.2" resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" integrity sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag== -lodash.merge@4.6.2, lodash.merge@^4.6.2: +lodash.merge@^4.6.2: version "4.6.2" resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== @@ -9122,6 +10672,11 @@ loose-envify@^1.1.0, loose-envify@^1.4.0: dependencies: js-tokens "^3.0.0 || ^4.0.0" +loupe@^3.1.0, loupe@^3.1.2: + version "3.1.2" + resolved "https://registry.yarnpkg.com/loupe/-/loupe-3.1.2.tgz#c86e0696804a02218f2206124c45d8b15291a240" + integrity sha512-23I4pFZHmAemUnz8WZXbYRSKYj801VDaNv9ETuMh7IrMc7VuVVSo+Z9iLE3ni30+U48iDWfi30d3twAXBYmnCg== + lowdb@1: version "1.0.0" resolved "https://registry.yarnpkg.com/lowdb/-/lowdb-1.0.0.tgz#5243be6b22786ccce30e50c9a33eac36b20c8064" @@ -9145,6 +10700,11 @@ lru-cache@^10.0.1: resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.0.1.tgz#0a3be479df549cca0e5d693ac402ff19537a6b7a" integrity sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g== +lru-cache@^10.2.0: + version "10.4.3" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.4.3.tgz#410fc8a17b70e598013df257c2446b7f3383f119" + integrity sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ== + lru-cache@^4.0.1: version "4.1.5" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.5.tgz#8bbe50ea85bed59bc9e33dcab8235ee9bcf443cd" @@ -9153,6 +10713,13 @@ lru-cache@^4.0.1: pseudomap "^1.0.2" yallist "^2.1.2" +lru-cache@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" + integrity sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w== + dependencies: + yallist "^3.0.2" + lru-cache@^6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94" @@ -9201,6 +10768,13 @@ magic-string@^0.25.0, magic-string@^0.25.7: dependencies: sourcemap-codec "^1.4.8" +magic-string@^0.30.12: + version "0.30.12" + resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.30.12.tgz#9eb11c9d072b9bcb4940a5b2c2e1a217e4ee1a60" + integrity sha512-Ea8I3sQMVXr8JhN4z+H/d8zwo+tYDgHE9+5G4Wnrwhs0gaK9fXTKx0Tw5Xwsd/bCPTTZNRAdpyzvoeORe9LYpw== + dependencies: + "@jridgewell/sourcemap-codec" "^1.5.0" + magic-string@^0.30.5: version "0.30.5" resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.30.5.tgz#1994d980bd1c8835dc6e78db7cbd4ae4f24746f9" @@ -9208,6 +10782,15 @@ magic-string@^0.30.5: dependencies: "@jridgewell/sourcemap-codec" "^1.4.15" +magicast@^0.3.5: + version "0.3.5" + resolved "https://registry.yarnpkg.com/magicast/-/magicast-0.3.5.tgz#8301c3c7d66704a0771eb1bad74274f0ec036739" + integrity sha512-L0WhttDl+2BOsybvEOLK7fW3UA0OQ0IQ2d6Zl2x/a6vVRs3bAY0ECOSHHeL5jD+SbOpOCUEi0y1DgHEn9Qn1AQ== + dependencies: + "@babel/parser" "^7.25.4" + "@babel/types" "^7.25.4" + source-map-js "^1.2.0" + make-dir@^3.0.0, make-dir@^3.0.2, make-dir@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f" @@ -9215,11 +10798,25 @@ make-dir@^3.0.0, make-dir@^3.0.2, make-dir@^3.1.0: dependencies: semver "^6.0.0" -make-error@1.x, make-error@^1.1.1: +make-dir@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-4.0.0.tgz#c3c2307a771277cd9638305f915c29ae741b614e" + integrity sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw== + dependencies: + semver "^7.5.3" + +make-error@^1.1.1: version "1.3.6" resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.6.tgz#2eb2e37ea9b67c4891f684a1394799af484cf7a2" integrity sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw== +makeerror@1.0.12: + version "1.0.12" + resolved "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.12.tgz#3e5dd2079a82e812e983cc6610c4a2cb0eaa801a" + integrity sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg== + dependencies: + tmpl "1.0.5" + makeerror@1.0.x: version "1.0.11" resolved "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.11.tgz#e01a5c9109f2af79660e4e8b9587790184f5a96c" @@ -9269,7 +10866,7 @@ matcher-collection@^2.0.0: request-promise "^4.2.6" sanitize-html "^2.11.0" -matrix-widget-api@^1.5.0, matrix-widget-api@^1.6.0: +matrix-widget-api@^1.5.0: version "1.6.0" resolved "https://registry.yarnpkg.com/matrix-widget-api/-/matrix-widget-api-1.6.0.tgz#f0075411edffc6de339580ade7e6e6e6edb01af4" integrity sha512-VXIJyAZ/WnBmT4C7ePqevgMYGneKMCP/0JuCOqntSsaNlCRHJvwvTxmqUU+ufOpzIF5gYNyIrAjbgrEbK3iqJQ== @@ -9277,6 +10874,14 @@ matrix-widget-api@^1.5.0, matrix-widget-api@^1.6.0: "@types/events" "^3.0.0" events "^3.2.0" +matrix-widget-api@^1.9.0: + version "1.9.0" + resolved "https://registry.yarnpkg.com/matrix-widget-api/-/matrix-widget-api-1.9.0.tgz#884136b405bd3c56e4ea285095c9e01ec52b6b1f" + integrity sha512-au8mqralNDqrEvaVAkU37bXOb8I9SCe+ACdPk11QWw58FKstVq31q2wRz+qWA6J+42KJ6s1DggWbG/S3fEs3jw== + dependencies: + "@types/events" "^3.0.0" + events "^3.2.0" + mdn-data@2.0.14: version "2.0.14" resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.14.tgz#7113fc4281917d63ce29b43446f701e68c25ba50" @@ -9421,6 +11026,13 @@ minimatch@^8.0.2: dependencies: brace-expansion "^2.0.1" +minimatch@^9.0.4: + version "9.0.5" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.5.tgz#d74f9dd6b57d83d8e98cfb82133b03978bc929e5" + integrity sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow== + dependencies: + brace-expansion "^2.0.1" + minimist-options@^4.0.2: version "4.1.0" resolved "https://registry.yarnpkg.com/minimist-options/-/minimist-options-4.1.0.tgz#c0655713c53a8a2ebd77ffa247d342c40f010619" @@ -9445,6 +11057,11 @@ minipass@^5.0.0: resolved "https://registry.yarnpkg.com/minipass/-/minipass-5.0.0.tgz#3e9788ffb90b694a5d0ec94479a45b5d8738133d" integrity sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ== +"minipass@^5.0.0 || ^6.0.2 || ^7.0.0", minipass@^7.1.2: + version "7.1.2" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.1.2.tgz#93a9626ce5e5e66bd4db86849e7515e92340a707" + integrity sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw== + mixme@^0.5.1: version "0.5.4" resolved "https://registry.yarnpkg.com/mixme/-/mixme-0.5.4.tgz#8cb3bd0cd32a513c161bf1ca99d143f0bcf2eff3" @@ -9488,6 +11105,11 @@ morgan@^1.10.0: on-finished "~2.3.0" on-headers "~1.0.2" +mrmime@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/mrmime/-/mrmime-2.0.0.tgz#151082a6e06e59a9a39b46b3e14d5cfe92b3abb4" + integrity sha512-eu38+hdgojoyq63s+yTpN4XMBdt5l8HhMhc4VKLO9KM5caLIBvUm4thi7fFaxyTmCKeNnXZ5pAlBwCUnhA09uw== + ms@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" @@ -9498,7 +11120,7 @@ ms@2.1.2: resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== -ms@2.1.3, ms@^2.1.1: +ms@2.1.3, ms@^2.1.1, ms@^2.1.3: version "2.1.3" resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== @@ -9580,16 +11202,16 @@ nan@^2.17.0: resolved "https://registry.yarnpkg.com/nan/-/nan-2.17.0.tgz#c0150a2368a182f033e9aa5195ec76ea41a199cb" integrity sha512-2ZTgtl0nJsO0KQCjEpxcIr5D+Yv90plTitZt9JBfQvVJDS5seMl3FOvsh3+9CoYWXf/1l5OaZzzF6nDm4cagaQ== -nano-css@^5.6.1: - version "5.6.1" - resolved "https://registry.yarnpkg.com/nano-css/-/nano-css-5.6.1.tgz#964120cb1af6cccaa6d0717a473ccd876b34c197" - integrity sha512-T2Mhc//CepkTa3X4pUhKgbEheJHYAxD0VptuqFhDbGMUWVV2m+lkNiW/Ieuj35wrfC8Zm0l7HvssQh7zcEttSw== +nano-css@^5.6.2: + version "5.6.2" + resolved "https://registry.yarnpkg.com/nano-css/-/nano-css-5.6.2.tgz#584884ddd7547278f6d6915b6805069742679a32" + integrity sha512-+6bHaC8dSDGALM1HJjOHVXpuastdu2xFoZlC77Jh4cg+33Zcgm+Gxd+1xsnpZK14eyHObSp82+ll5y3SX75liw== dependencies: "@jridgewell/sourcemap-codec" "^1.4.15" css-tree "^1.1.2" csstype "^3.1.2" fastest-stable-stringify "^2.0.2" - inline-style-prefixer "^7.0.0" + inline-style-prefixer "^7.0.1" rtl-css-js "^1.16.1" stacktrace-js "^2.0.2" stylis "^4.3.0" @@ -9599,6 +11221,11 @@ nanoid@^3.3.6: resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.6.tgz#443380c856d6e9f9824267d960b4236ad583ea4c" integrity sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA== +nanoid@^3.3.7: + version "3.3.7" + resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.7.tgz#d0c301a691bc8d54efa0a2226ccf3fe2fd656bd8" + integrity sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g== + natural-compare-lite@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz#17b09581988979fddafe0201e931ba933c96cbb4" @@ -9649,7 +11276,7 @@ node-emoji@1.11.0: dependencies: lodash "^4.17.21" -node-fetch@^2.6.1, node-fetch@^2.6.11, node-fetch@^2.6.12, node-fetch@^2.6.7, node-fetch@^2.7.0: +node-fetch@^2.6.1, node-fetch@^2.6.12, node-fetch@^2.6.7, node-fetch@^2.7.0: version "2.7.0" resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.7.0.tgz#d0f0fa6e3e2dc1d27efcd8ad99d550bda94d187d" integrity sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A== @@ -9671,6 +11298,11 @@ node-releases@^2.0.13: resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.13.tgz#d5ed1627c23e3461e819b02e57b75e4899b1c81d" integrity sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ== +node-releases@^2.0.18: + version "2.0.18" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.18.tgz#f010e8d35e2fe8d6b2944f03f70213ecedc4ca3f" + integrity sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g== + noms@0.0.0: version "0.0.0" resolved "https://registry.yarnpkg.com/noms/-/noms-0.0.0.tgz#da8ebd9f3af9d6760919b27d9cdc8092a7332859" @@ -9759,7 +11391,7 @@ object-hash@^2.2.0: resolved "https://registry.yarnpkg.com/object-hash/-/object-hash-2.2.0.tgz#5ad518581eefc443bd763472b8ff2e9c2c0d54a5" integrity sha512-gScRMn0bS5fH+IuwyIFgnh9zBdo4DV+6GhygmWM9HyNJSgS0hScp1f5vjtm7oIIOiT9trXrShAkLFSc2IqKNgw== -object-inspect@^1.12.0, object-inspect@^1.13.1, object-inspect@^1.9.0: +object-inspect@^1.12.0, object-inspect@^1.13.1: version "1.13.2" resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.13.2.tgz#dea0088467fb991e67af4058147a24824a3043ff" integrity sha512-IRZSRuzJiynemAXPYtPe5BoI/RESNYR7TYm50MC5Mqbd3Jmw5y790sErYw3V6SryFJD64b74qQQs9wn5Bg/k3g== @@ -9972,7 +11604,7 @@ p-limit@^2.0.0, p-limit@^2.2.0: dependencies: p-try "^2.0.0" -p-limit@^3.0.2: +p-limit@^3.0.2, p-limit@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b" integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ== @@ -10037,6 +11669,11 @@ p-try@^2.0.0: resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== +package-json-from-dist@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz#4f1471a010827a86f94cfd9b0727e36d267de505" + integrity sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw== + param-case@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/param-case/-/param-case-3.0.4.tgz#7d17fe4aa12bde34d4a77d91acfb6219caad01c5" @@ -10148,6 +11785,14 @@ path-posix@^1.0.0: resolved "https://registry.yarnpkg.com/path-posix/-/path-posix-1.0.0.tgz#06b26113f56beab042545a23bfa88003ccac260f" integrity sha1-BrJhE/Vr6rBCVFojv6iAA8ysJg8= +path-scurry@^1.11.1: + version "1.11.1" + resolved "https://registry.yarnpkg.com/path-scurry/-/path-scurry-1.11.1.tgz#7960a668888594a0720b12a911d1a742ab9f11d2" + integrity sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA== + dependencies: + lru-cache "^10.2.0" + minipass "^5.0.0 || ^6.0.2 || ^7.0.0" + path-scurry@^1.6.1: version "1.7.0" resolved "https://registry.yarnpkg.com/path-scurry/-/path-scurry-1.7.0.tgz#99c741a2cfbce782294a39994d63748b5a24f6db" @@ -10176,6 +11821,16 @@ path-type@^4.0.0: resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== +pathe@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/pathe/-/pathe-1.1.2.tgz#6c4cb47a945692e48a1ddd6e4094d170516437ec" + integrity sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ== + +pathval@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/pathval/-/pathval-2.0.0.tgz#7e2550b422601d4f6b8e26f1301bc8f15a741a25" + integrity sha512-vE7JKRyES09KiunauX7nd2Q9/L7lhok4smP9RZTDeD4MVs72Dp2qNFVz39Nz5a0FVEW0BJR6C0DYrq6unoziZA== + peberminta@^0.9.0: version "0.9.0" resolved "https://registry.yarnpkg.com/peberminta/-/peberminta-0.9.0.tgz#8ec9bc0eb84b7d368126e71ce9033501dca2a352" @@ -10196,11 +11851,21 @@ picocolors@^1.0.0: resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== +picocolors@^1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.1.1.tgz#3d321af3eab939b083c8f929a1d12cda81c26b6b" + integrity sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA== + picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.2, picomatch@^2.2.3, picomatch@^2.3.1: version "2.3.1" resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== +picomatch@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-4.0.2.tgz#77c742931e8f3b8820946c76cd0c1f13730d1dab" + integrity sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg== + pidtree@0.6.0: version "0.6.0" resolved "https://registry.yarnpkg.com/pidtree/-/pidtree-0.6.0.tgz#90ad7b6d42d5841e69e0a2419ef38f8883aa057c" @@ -10845,6 +12510,15 @@ postcss@^8.3.11, postcss@^8.3.5, postcss@^8.4.31, postcss@^8.4.4, postcss@^8.4.5 picocolors "^1.0.0" source-map-js "^1.0.2" +postcss@^8.4.43: + version "8.4.47" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.47.tgz#5bf6c9a010f3e724c503bf03ef7947dcb0fea365" + integrity sha512-56rxCq7G/XfB4EkXq9Egn5GCqugWvDFjafDOThIdMBsI15iqPqR5r15TfSr1YPYeEI19YeaXMCbY6u88Y76GLQ== + dependencies: + nanoid "^3.3.7" + picocolors "^1.1.0" + source-map-js "^1.2.1" + postgres@^3.4.1: version "3.4.3" resolved "https://registry.yarnpkg.com/postgres/-/postgres-3.4.3.tgz#52a0712cd6c2dae5e9f8c35b5c7b33434caa66ed" @@ -10903,7 +12577,7 @@ pretty-error@^4.0.0: lodash "^4.17.20" renderkid "^3.0.0" -pretty-format@^27.0.0, pretty-format@^27.0.2, pretty-format@^27.5.1: +pretty-format@^27.0.2, pretty-format@^27.5.1: version "27.5.1" resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-27.5.1.tgz#2181879fdea51a7a5851fb39d920faa63f01d88e" integrity sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ== @@ -10912,12 +12586,12 @@ pretty-format@^27.0.0, pretty-format@^27.0.2, pretty-format@^27.5.1: ansi-styles "^5.0.0" react-is "^17.0.1" -pretty-format@^29.2.1: - version "29.2.1" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-29.2.1.tgz#86e7748fe8bbc96a6a4e04fa99172630907a9611" - integrity sha512-Y41Sa4aLCtKAXvwuIpTvcFBkyeYp2gdFWzXGA+ZNES3VwURIB165XO/z7CjETwzCCS53MjW/rLMyyqEnTtaOfA== +pretty-format@^29.0.0, pretty-format@^29.7.0: + version "29.7.0" + resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-29.7.0.tgz#ca42c758310f365bfa71a0bda0a807160b776812" + integrity sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ== dependencies: - "@jest/schemas" "^29.0.0" + "@jest/schemas" "^29.6.3" ansi-styles "^5.0.0" react-is "^18.0.0" @@ -10941,11 +12615,6 @@ promise-map-series@^0.3.0: resolved "https://registry.yarnpkg.com/promise-map-series/-/promise-map-series-0.3.0.tgz#41873ca3652bb7a042b387d538552da9b576f8a1" integrity sha512-3npG2NGhTc8BWBolLLf8l/92OxMGaRLbqvIh9wjCHhDXNvk4zsxaTaCpiCunW09qWPrN2zeNSNwRLVBrQQtutA== -promise-polyfill@^8.1.3: - version "8.2.0" - resolved "https://registry.yarnpkg.com/promise-polyfill/-/promise-polyfill-8.2.0.tgz#367394726da7561457aba2133c9ceefbd6267da0" - integrity sha512-k/TC0mIcPVF6yHhUvwAp7cvL6I2fFV7TzF1DuGPI8mBh4QQazf36xCKEHKTZKRysEoTQoQdKyP25J8MPJp7j5g== - promise@^8.1.0: version "8.1.0" resolved "https://registry.yarnpkg.com/promise/-/promise-8.1.0.tgz#697c25c3dfe7435dd79fcd58c38a135888eaf05e" @@ -11017,19 +12686,17 @@ punycode@^2.1.0, punycode@^2.1.1: resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== +pure-rand@^6.0.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/pure-rand/-/pure-rand-6.1.0.tgz#d173cf23258231976ccbdb05247c9787957604f2" + integrity sha512-bVWawvoZoBYpp6yIoQtQXHZjmz35RSVHnUOTefl8Vcjr8snTPY1wnpSPMWekcFwbxI6gtmT7rSYPFvz71ldiOA== + q@^1.1.2: version "1.5.1" resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" integrity sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc= -qs@6.11.0: - version "6.11.0" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.11.0.tgz#fd0d963446f7a65e1367e01abd85429453f0c37a" - integrity sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q== - dependencies: - side-channel "^1.0.4" - -qs@6.13.0, qs@^6.11.2: +qs@6.13.0, qs@^6.13.0: version "6.13.0" resolved "https://registry.yarnpkg.com/qs/-/qs-6.13.0.tgz#6ca3bd58439f7e245655798997787b0d88a51906" integrity sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg== @@ -11146,14 +12813,13 @@ react-dev-utils@^12.0.1: strip-ansi "^6.0.1" text-table "^0.2.0" -react-dom@^17.0.2: - version "17.0.2" - resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-17.0.2.tgz#ecffb6845e3ad8dbfcdc498f0d0a939736502c23" - integrity sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA== +react-dom@^18.3.1: + version "18.3.1" + resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-18.3.1.tgz#c2265d79511b57d479b3dd3fdfa51536494c5cb4" + integrity sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw== dependencies: loose-envify "^1.1.0" - object-assign "^4.1.1" - scheduler "^0.20.2" + scheduler "^0.23.2" react-error-boundary@^3.1.0, react-error-boundary@^3.1.4: version "3.1.4" @@ -11175,12 +12841,12 @@ react-i18next@*, react-i18next@^14.0.0: "@babel/runtime" "^7.22.5" html-parse-stringify "^3.0.1" -react-i18next@^13.3.0: - version "13.5.0" - resolved "https://registry.yarnpkg.com/react-i18next/-/react-i18next-13.5.0.tgz#44198f747628267a115c565f0c736a50a76b1ab0" - integrity sha512-CFJ5NDGJ2MUyBohEHxljOq/39NQ972rh1ajnadG9BjTk+UXbHLq4z5DKEbEQBDoIhUmmbuS/fIMJKo6VOax1HA== +react-i18next@^15.0.3: + version "15.1.1" + resolved "https://registry.yarnpkg.com/react-i18next/-/react-i18next-15.1.1.tgz#30bc76b39ded6ee37f1457677e46e6d6f11d9f64" + integrity sha512-R/Vg9wIli2P3FfeI8o1eNJUJue5LWpFsQePCHdQDmX0Co3zkr6kdT8gAseb/yGeWbNz1Txc4bKDQuZYsC0kQfw== dependencies: - "@babel/runtime" "^7.22.5" + "@babel/runtime" "^7.25.0" html-parse-stringify "^3.0.1" react-is@^16.13.1, react-is@^16.7.0: @@ -11198,6 +12864,11 @@ react-is@^18.0.0, react-is@^18.2.0: resolved "https://registry.yarnpkg.com/react-is/-/react-is-18.2.0.tgz#199431eeaaa2e09f86427efbb4f1473edb47609b" integrity sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w== +react-is@^18.3.1: + version "18.3.1" + resolved "https://registry.yarnpkg.com/react-is/-/react-is-18.3.1.tgz#e83557dc12eae63a99e003a46388b1dcbb44db7e" + integrity sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg== + react-redux@^8.1.3: version "8.1.3" resolved "https://registry.yarnpkg.com/react-redux/-/react-redux-8.1.3.tgz#4fdc0462d0acb59af29a13c27ffef6f49ab4df46" @@ -11300,10 +12971,10 @@ react-universal-interface@^0.6.2: resolved "https://registry.yarnpkg.com/react-universal-interface/-/react-universal-interface-0.6.2.tgz#5e8d438a01729a4dbbcbeeceb0b86be146fe2b3b" integrity sha512-dg8yXdcQmvgR13RIlZbTRQOoUrDciFVoSBZILwjE2LFISxZZ8loVJKAkuzswl5js8BHda79bIb2b84ehU8IjXw== -react-use@^17.4.0, react-use@^17.4.2: - version "17.4.2" - resolved "https://registry.yarnpkg.com/react-use/-/react-use-17.4.2.tgz#26d43c774ccb733a17a87be62e12fbcbc5654173" - integrity sha512-1jPtmWLD8OJJNYCdYLJEH/HM+bPDfJuyGwCYeJFgPmWY8ttwpgZnW5QnzgM55CYUByUiTjHxsGOnEpLl6yQaoQ== +react-use@^17.5.1: + version "17.5.1" + resolved "https://registry.yarnpkg.com/react-use/-/react-use-17.5.1.tgz#19fc2ae079775d8450339e9fa8dbe25b17f2263c" + integrity sha512-LG/uPEVRflLWMwi3j/sZqR00nF6JGqTTDblkXK2nzXsIvij06hXl1V/MZIlwj1OKIQUtlh1l9jK8gLsRyCQxMg== dependencies: "@types/js-cookie" "^2.2.6" "@xobotyi/scrollbar-width" "^1.9.5" @@ -11311,7 +12982,7 @@ react-use@^17.4.0, react-use@^17.4.2: fast-deep-equal "^3.1.3" fast-shallow-equal "^1.0.0" js-cookie "^2.2.1" - nano-css "^5.6.1" + nano-css "^5.6.2" react-universal-interface "^0.6.2" resize-observer-polyfill "^1.5.1" screenfull "^5.1.0" @@ -11320,13 +12991,12 @@ react-use@^17.4.0, react-use@^17.4.2: ts-easing "^0.2.0" tslib "^2.1.0" -react@^17.0.2: - version "17.0.2" - resolved "https://registry.yarnpkg.com/react/-/react-17.0.2.tgz#d0b5cc516d29eb3eee383f75b62864cfb6800037" - integrity sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA== +react@^18.2.0, react@^18.3.1: + version "18.3.1" + resolved "https://registry.yarnpkg.com/react/-/react-18.3.1.tgz#49ab892009c53933625bd16b2533fc754cab2891" + integrity sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ== dependencies: loose-envify "^1.1.0" - object-assign "^4.1.1" read-pkg-up@^7.0.1: version "7.0.1" @@ -11496,7 +13166,7 @@ regex-parser@^2.2.11: resolved "https://registry.yarnpkg.com/regex-parser/-/regex-parser-2.2.11.tgz#3b37ec9049e19479806e878cabe7c1ca83ccfe58" integrity sha512-jbD/FT0+9MBU2XAZluI7w2OBs1RBi6p9M83nkoZayQXXU9e8Robt69FcZc7wU4eJD/YFTjn1JdCk3rbMJajz8Q== -regexp.prototype.flags@^1.2.0, regexp.prototype.flags@^1.3.1, regexp.prototype.flags@^1.4.3, regexp.prototype.flags@^1.5.1: +regexp.prototype.flags@^1.2.0, regexp.prototype.flags@^1.3.1, regexp.prototype.flags@^1.4.3: version "1.5.2" resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.5.2.tgz#138f644a3350f981a858c44f6bb1a61ff59be334" integrity sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw== @@ -11506,6 +13176,16 @@ regexp.prototype.flags@^1.2.0, regexp.prototype.flags@^1.3.1, regexp.prototype.f es-errors "^1.3.0" set-function-name "^2.0.1" +regexp.prototype.flags@^1.5.1: + version "1.5.3" + resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.5.3.tgz#b3ae40b1d2499b8350ab2c3fe6ef3845d3a96f42" + integrity sha512-vqlC04+RQoFalODCbCumG2xIOvapzVMHwsyIGM/SIE8fRhFFsXeH8/QQ+s0T0kDAhKc4k30s73/0ydkHQz6HlQ== + dependencies: + call-bind "^1.0.7" + define-properties "^1.2.1" + es-errors "^1.3.0" + set-function-name "^2.0.2" + regexpu-core@^4.7.1: version "4.7.1" resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-4.7.1.tgz#2dea5a9a07233298fbf0db91fa9abc4c6e0f8ad6" @@ -11687,6 +13367,11 @@ resolve.exports@^1.1.0: resolved "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-1.1.0.tgz#5ce842b94b05146c0e03076985d1d0e7e48c90c9" integrity sha512-J1l+Zxxp4XK3LUDZ9m60LRJF/mAe4z6a4xyabPHk7pvK5t35dACV32iIjJDFeWZFfZlO29w6SZ67knR0tHzJtQ== +resolve.exports@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-2.0.2.tgz#f8c934b8e6a13f539e38b7098e2e36134f01e800" + integrity sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg== + resolve@^1.1.6, resolve@^1.10.0, resolve@^1.14.2, resolve@^1.19.0, resolve@^1.20.0, resolve@^1.22.0, resolve@^1.22.3: version "1.22.8" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.8.tgz#b6c87a9f2aa06dfab52e3d70ac8cde321fa5a48d" @@ -11783,6 +13468,33 @@ rollup@^2.43.1: optionalDependencies: fsevents "~2.3.2" +rollup@^4.20.0: + version "4.24.4" + resolved "https://registry.yarnpkg.com/rollup/-/rollup-4.24.4.tgz#fdc76918de02213c95447c9ffff5e35dddb1d058" + integrity sha512-vGorVWIsWfX3xbcyAS+I047kFKapHYivmkaT63Smj77XwvLSJos6M1xGqZnBPFQFBRZDOcG1QnYEIxAvTr/HjA== + dependencies: + "@types/estree" "1.0.6" + optionalDependencies: + "@rollup/rollup-android-arm-eabi" "4.24.4" + "@rollup/rollup-android-arm64" "4.24.4" + "@rollup/rollup-darwin-arm64" "4.24.4" + "@rollup/rollup-darwin-x64" "4.24.4" + "@rollup/rollup-freebsd-arm64" "4.24.4" + "@rollup/rollup-freebsd-x64" "4.24.4" + "@rollup/rollup-linux-arm-gnueabihf" "4.24.4" + "@rollup/rollup-linux-arm-musleabihf" "4.24.4" + "@rollup/rollup-linux-arm64-gnu" "4.24.4" + "@rollup/rollup-linux-arm64-musl" "4.24.4" + "@rollup/rollup-linux-powerpc64le-gnu" "4.24.4" + "@rollup/rollup-linux-riscv64-gnu" "4.24.4" + "@rollup/rollup-linux-s390x-gnu" "4.24.4" + "@rollup/rollup-linux-x64-gnu" "4.24.4" + "@rollup/rollup-linux-x64-musl" "4.24.4" + "@rollup/rollup-win32-arm64-msvc" "4.24.4" + "@rollup/rollup-win32-ia32-msvc" "4.24.4" + "@rollup/rollup-win32-x64-msvc" "4.24.4" + fsevents "~2.3.2" + rrule@^2.8.1: version "2.8.1" resolved "https://registry.yarnpkg.com/rrule/-/rrule-2.8.1.tgz#e8341a9ce3e68ce5b8da4d502e893cd9f286805e" @@ -11883,13 +13595,12 @@ saxes@^5.0.1: dependencies: xmlchars "^2.2.0" -scheduler@^0.20.2: - version "0.20.2" - resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.20.2.tgz#4baee39436e34aa93b4874bddcbf0fe8b8b50e91" - integrity sha512-2eWfGgAqqWFGqtdMmcL5zCMK1U8KlXv8SQFGglL3CEtd0aDVDWgeF/YoCmvln55m5zSk3J/20hTaSBeSObsQDQ== +scheduler@^0.23.2: + version "0.23.2" + resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.23.2.tgz#414ba64a3b282892e944cf2108ecc078d115cdc3" + integrity sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ== dependencies: loose-envify "^1.1.0" - object-assign "^4.1.1" schema-utils@2.7.0: version "2.7.0" @@ -11962,36 +13673,17 @@ semver-compare@^1.0.0: resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.2.tgz#48d55db737c3287cd4835e17fa13feace1c41ef8" integrity sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g== -semver@7.x, semver@^7.3.2, semver@^7.3.5, semver@^7.3.7, semver@^7.5.0, semver@^7.5.3, semver@^7.5.4: - version "7.5.4" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.4.tgz#483986ec4ed38e1c6c48c34894a9182dbff68a6e" - integrity sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA== - dependencies: - lru-cache "^6.0.0" - -semver@^6.0.0, semver@^6.1.1, semver@^6.1.2, semver@^6.3.0: +semver@^6.0.0, semver@^6.1.1, semver@^6.1.2, semver@^6.3.0, semver@^6.3.1: version "6.3.1" resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== -send@0.18.0: - version "0.18.0" - resolved "https://registry.yarnpkg.com/send/-/send-0.18.0.tgz#670167cc654b05f5aa4a767f9113bb371bc706be" - integrity sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg== +semver@^7.3.2, semver@^7.3.5, semver@^7.3.7, semver@^7.5.0, semver@^7.5.3, semver@^7.5.4: + version "7.5.4" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.4.tgz#483986ec4ed38e1c6c48c34894a9182dbff68a6e" + integrity sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA== dependencies: - debug "2.6.9" - depd "2.0.0" - destroy "1.2.0" - encodeurl "~1.0.2" - escape-html "~1.0.3" - etag "~1.8.1" - fresh "0.5.2" - http-errors "2.0.0" - mime "1.6.0" - ms "2.1.3" - on-finished "2.4.1" - range-parser "~1.2.1" - statuses "2.0.1" + lru-cache "^6.0.0" send@0.19.0: version "0.19.0" @@ -12039,16 +13731,6 @@ serve-index@^1.9.1: mime-types "~2.1.17" parseurl "~1.3.2" -serve-static@1.16.0: - version "1.16.0" - resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.16.0.tgz#2bf4ed49f8af311b519c46f272bf6ac3baf38a92" - integrity sha512-pDLK8zwl2eKaYrs8mrPZBJua4hMplRWJ1tIFksVC3FtBEBnl8dxgeHtsaMS8DhS9i4fLObaon6ABoc4/hQGdPA== - dependencies: - encodeurl "~1.0.2" - escape-html "~1.0.3" - parseurl "~1.3.3" - send "0.18.0" - serve-static@1.16.2: version "1.16.2" resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.16.2.tgz#b6a5343da47f6bdd2673848bf45754941e803296" @@ -12081,7 +13763,7 @@ set-function-length@^1.2.1: gopd "^1.0.1" has-property-descriptors "^1.0.2" -set-function-name@^2.0.1: +set-function-name@^2.0.1, set-function-name@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/set-function-name/-/set-function-name-2.0.2.tgz#16a705c5a0dc2f5e638ca96d8a8cd4e1c2b90985" integrity sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ== @@ -12161,16 +13843,30 @@ side-channel@^1.0.4, side-channel@^1.0.6: get-intrinsic "^1.2.4" object-inspect "^1.13.1" -signal-exit@^3.0.2, signal-exit@^3.0.3: +siginfo@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/siginfo/-/siginfo-2.0.0.tgz#32e76c70b79724e3bb567cb9d543eb858ccfaf30" + integrity sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g== + +signal-exit@^3.0.2, signal-exit@^3.0.3, signal-exit@^3.0.7: version "3.0.7" resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== -signal-exit@^4.1.0: +signal-exit@^4.0.1, signal-exit@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-4.1.0.tgz#952188c1cbd546070e2dd20d0f41c0ae0530cb04" integrity sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw== +sirv@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/sirv/-/sirv-3.0.0.tgz#f8d90fc528f65dff04cb597a88609d4e8a4361ce" + integrity sha512-BPwJGUeDaDCHihkORDchNyyTvWFhcusy1XMmhEVTQTwGeybFbp8YEmB+njbPnth1FibULBSBVwCQni25XlCUDg== + dependencies: + "@polka/url" "^1.0.0-next.24" + mrmime "^2.0.0" + totalist "^3.0.0" + sisteransi@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.5.tgz#134d681297756437cc05ca01370d3a7a571075ed" @@ -12247,6 +13943,11 @@ source-map-js@^1.0.1, source-map-js@^1.0.2: resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.0.2.tgz#adbc361d9c62df380125e7f161f71c826f1e490c" integrity sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw== +source-map-js@^1.2.0, source-map-js@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.2.1.tgz#1ce5650fddd87abc099eda37dcff024c2667ae46" + integrity sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA== + source-map-loader@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/source-map-loader/-/source-map-loader-3.0.1.tgz#9ae5edc7c2d42570934be4c95d1ccc6352eba52d" @@ -12256,6 +13957,14 @@ source-map-loader@^3.0.0: iconv-lite "^0.6.3" source-map-js "^1.0.1" +source-map-support@0.5.13: + version "0.5.13" + resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.13.tgz#31b24a9c2e73c2de85066c0feb7d44767ed52932" + integrity sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w== + dependencies: + buffer-from "^1.0.0" + source-map "^0.6.0" + source-map-support@0.5.21, source-map-support@^0.5.6, source-map-support@~0.5.20: version "0.5.21" resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f" @@ -12426,6 +14135,11 @@ stack-utils@^2.0.3: dependencies: escape-string-regexp "^2.0.0" +stackback@0.0.2: + version "0.0.2" + resolved "https://registry.yarnpkg.com/stackback/-/stackback-0.0.2.tgz#1ac8a0d9483848d1695e418b6d031a3c3ce68e3b" + integrity sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw== + stackframe@^1.1.1: version "1.2.0" resolved "https://registry.yarnpkg.com/stackframe/-/stackframe-1.2.0.tgz#52429492d63c62eb989804c11552e3d22e779303" @@ -12458,6 +14172,11 @@ statuses@2.0.1: resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" integrity sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow= +std-env@^3.7.0: + version "3.7.0" + resolved "https://registry.yarnpkg.com/std-env/-/std-env-3.7.0.tgz#c9f7386ced6ecf13360b6c6c55b8aaa4ef7481d2" + integrity sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg== + stealthy-require@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/stealthy-require/-/stealthy-require-1.1.1.tgz#35b09875b4ff49f26a777e509b3090a3226bf24b" @@ -12544,6 +14263,15 @@ string-natural-compare@^3.0.1: resolved "https://registry.yarnpkg.com/string-natural-compare/-/string-natural-compare-3.0.1.tgz#7a42d58474454963759e8e8b7ae63d71c1e7fdf4" integrity sha512-n3sPwynL1nwKi3WJ6AIsClwBMa0zTi54fn2oLU6ndfTSIO05xaznjSf15PcBZU6FNWbmN5Q6cxT4V5hGvB4taw== +"string-width-cjs@npm:string-width@^4.2.0": + version "4.2.3" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" + integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== + dependencies: + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^6.0.1" + string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: version "4.2.3" resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" @@ -12553,6 +14281,15 @@ string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: is-fullwidth-code-point "^3.0.0" strip-ansi "^6.0.1" +string-width@^5.0.1, string-width@^5.1.2: + version "5.1.2" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-5.1.2.tgz#14f8daec6d81e7221d2a357e668cab73bdbca794" + integrity sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA== + dependencies: + eastasianwidth "^0.2.0" + emoji-regex "^9.2.2" + strip-ansi "^7.0.1" + string-width@^7.0.0: version "7.1.0" resolved "https://registry.yarnpkg.com/string-width/-/string-width-7.1.0.tgz#d994252935224729ea3719c49f7206dc9c46550a" @@ -12622,6 +14359,13 @@ stringify-object@^3.3.0: is-obj "^1.0.1" is-regexp "^1.0.0" +"strip-ansi-cjs@npm:strip-ansi@^6.0.1": + version "6.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" + integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== + dependencies: + ansi-regex "^5.0.1" + strip-ansi@^6.0.0, strip-ansi@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" @@ -12930,6 +14674,15 @@ test-exclude@^6.0.0: glob "^7.1.4" minimatch "^3.0.4" +test-exclude@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-7.0.1.tgz#20b3ba4906ac20994e275bbcafd68d510264c2a2" + integrity sha512-pFYqmTw68LXVjeWJMST4+borgQP2AyMNbg1BpZh9LbyhUeNkeaPF9gzfPGUAnSMV3qPYdWUwDIjjCLiSDOl7vg== + dependencies: + "@istanbuljs/schema" "^0.1.2" + glob "^10.4.1" + minimatch "^9.0.4" + testcontainers@^10.9.0: version "10.9.0" resolved "https://registry.yarnpkg.com/testcontainers/-/testcontainers-10.9.0.tgz#9d5b2ef189ed32a0be376d013017ba8593a09e93" @@ -13001,6 +14754,39 @@ timsort@^0.3.0: resolved "https://registry.yarnpkg.com/timsort/-/timsort-0.3.0.tgz#405411a8e7e6339fe64db9a234de11dc31e02bd4" integrity sha1-QFQRqOfmM5/mTbmiNN4R3DHgK9Q= +tinybench@^2.9.0: + version "2.9.0" + resolved "https://registry.yarnpkg.com/tinybench/-/tinybench-2.9.0.tgz#103c9f8ba6d7237a47ab6dd1dcff77251863426b" + integrity sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg== + +tinyexec@^0.3.1: + version "0.3.1" + resolved "https://registry.yarnpkg.com/tinyexec/-/tinyexec-0.3.1.tgz#0ab0daf93b43e2c211212396bdb836b468c97c98" + integrity sha512-WiCJLEECkO18gwqIp6+hJg0//p23HXp4S+gGtAKu3mI2F2/sXC4FvHvXvB0zJVVaTPhx1/tOwdbRsa1sOBIKqQ== + +tinyglobby@^0.2.9: + version "0.2.10" + resolved "https://registry.yarnpkg.com/tinyglobby/-/tinyglobby-0.2.10.tgz#e712cf2dc9b95a1f5c5bbd159720e15833977a0f" + integrity sha512-Zc+8eJlFMvgatPZTl6A9L/yht8QqdmUNtURHaKZLmKBE12hNPSrqNkUp2cs3M/UKmNVVAMFQYSjYIVHDjW5zew== + dependencies: + fdir "^6.4.2" + picomatch "^4.0.2" + +tinypool@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/tinypool/-/tinypool-1.0.1.tgz#c64233c4fac4304e109a64340178760116dbe1fe" + integrity sha512-URZYihUbRPcGv95En+sz6MfghfIc2OJ1sv/RmhWZLouPY0/8Vo80viwPvg3dlaS9fuq7fQMEfgRRK7BBZThBEA== + +tinyrainbow@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/tinyrainbow/-/tinyrainbow-1.2.0.tgz#5c57d2fc0fb3d1afd78465c33ca885d04f02abb5" + integrity sha512-weEDEq7Z5eTHPDh4xjX789+fHfF+P8boiFB+0vbWzpbnbsEr/GRaohi/uMKxg8RZMXnl1ItAi/IUHWMsjDV7kQ== + +tinyspy@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/tinyspy/-/tinyspy-3.0.2.tgz#86dd3cf3d737b15adcf17d7887c84a75201df20a" + integrity sha512-n1cw8k1k0x4pgA2+9XrOkFydTerNcJ1zWCO5Nn9scWHTD+5tp8dghT2x1uduQePZTZgd3Tupf+x9BxJjeJi77Q== + tmp@^0.0.33: version "0.0.33" resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" @@ -13015,7 +14801,7 @@ tmp@^0.2.1: dependencies: rimraf "^3.0.0" -tmpl@1.0.x: +tmpl@1.0.5, tmpl@1.0.x: version "1.0.5" resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.5.tgz#8683e0b902bb9c20c4f726e3c0b69f36518c07cc" integrity sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw== @@ -13049,6 +14835,11 @@ toidentifier@1.0.1: resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.1.tgz#3be34321a88a820ed1bd80dfaa33e479fbb8dd35" integrity sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA== +totalist@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/totalist/-/totalist-3.0.1.tgz#ba3a3d600c915b1a97872348f79c127475f6acf8" + integrity sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ== + tough-cookie@^2.3.3, tough-cookie@~2.5.0: version "2.5.0" resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.5.0.tgz#cd9fb2a0aa1d5a12b473bd9fb96fa3dcff65ade2" @@ -13105,20 +14896,6 @@ ts-easing@^0.2.0: resolved "https://registry.yarnpkg.com/ts-easing/-/ts-easing-0.2.0.tgz#c8a8a35025105566588d87dbda05dd7fbfa5a4ec" integrity sha512-Z86EW+fFFh/IFB1fqQ3/+7Zpf9t2ebOAxNI/V6Wo7r5gqiqtxmgTlQ1qbqQcjLKYeSHPTsEmvlJUDg/EuL0uHQ== -ts-jest@^27.1.5: - version "27.1.5" - resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-27.1.5.tgz#0ddf1b163fbaae3d5b7504a1e65c914a95cff297" - integrity sha512-Xv6jBQPoBEvBq/5i2TeSG9tt/nqkbpcurrEG1b+2yfBrcJelOZF9Ml6dmyMh7bcW9JyFbRYpR5rxROSlBLTZHA== - dependencies: - bs-logger "0.x" - fast-json-stable-stringify "2.x" - jest-util "^27.0.0" - json5 "2.x" - lodash.memoize "4.x" - make-error "1.x" - semver "7.x" - yargs-parser "20.x" - ts-mockito@^2.6.1: version "2.6.1" resolved "https://registry.yarnpkg.com/ts-mockito/-/ts-mockito-2.6.1.tgz#bc9ee2619033934e6fad1c4455aca5b5ace34e73" @@ -13304,6 +15081,11 @@ typescript@^5.0.4, typescript@^5.4.5: resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.4.5.tgz#42ccef2c571fdbd0f6718b1d1f5e6e5ef006f611" integrity sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ== +typescript@^5.6.3: + version "5.6.3" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.6.3.tgz#5f3449e31c9d94febb17de03cc081dd56d81db5b" + integrity sha512-hjcS1mhfuyi4WW8IWtjP7brDrG2cuDZukyrYrSauoXGNgx0S7zceP07adYkJycEr56BOUTNPzbInooiN3fn1qw== + uid@2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/uid/-/uid-2.0.2.tgz#4b5782abf0f2feeefc00fa88006b2b3b7af3e3b9" @@ -13407,6 +15189,14 @@ update-browserslist-db@^1.0.11: escalade "^3.1.1" picocolors "^1.0.0" +update-browserslist-db@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.1.1.tgz#80846fba1d79e82547fb661f8d141e0945755fe5" + integrity sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A== + dependencies: + escalade "^3.2.0" + picocolors "^1.1.0" + uri-js@^4.2.2: version "4.4.1" resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e" @@ -13484,6 +15274,15 @@ v8-to-istanbul@^8.1.0: convert-source-map "^1.6.0" source-map "^0.7.3" +v8-to-istanbul@^9.0.1: + version "9.3.0" + resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-9.3.0.tgz#b9572abfa62bd556c16d75fdebc1a411d5ff3175" + integrity sha512-kiGUalWN+rgBJ/1OHZsBtU4rXZOfj/7rKQxULKlIzwzQSvMJUUNgPwJEEh7gU6xEVxC0ahoOBvN2YI8GH6FNgA== + dependencies: + "@jridgewell/trace-mapping" "^0.3.12" + "@types/istanbul-lib-coverage" "^2.0.1" + convert-source-map "^2.0.0" + validate-npm-package-license@^3.0.1: version "3.0.4" resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" @@ -13567,6 +15366,53 @@ vinyl@^3.0.0, vinyl@~3.0.0: replace-ext "^2.0.0" teex "^1.0.1" +vite-node@2.1.4: + version "2.1.4" + resolved "https://registry.yarnpkg.com/vite-node/-/vite-node-2.1.4.tgz#97ffb6de913fd8d42253afe441f9512e9dbdfd5c" + integrity sha512-kqa9v+oi4HwkG6g8ufRnb5AeplcRw8jUF6/7/Qz1qRQOXHImG8YnLbB+LLszENwFnoBl9xIf9nVdCFzNd7GQEg== + dependencies: + cac "^6.7.14" + debug "^4.3.7" + pathe "^1.1.2" + vite "^5.0.0" + +vite@^5.0.0, vite@^5.4.10: + version "5.4.10" + resolved "https://registry.yarnpkg.com/vite/-/vite-5.4.10.tgz#d358a7bd8beda6cf0f3b7a450a8c7693a4f80c18" + integrity sha512-1hvaPshuPUtxeQ0hsVH3Mud0ZanOLwVTneA1EgbAM5LhaZEqyPWGRQ7BtaMvUrTDeEaC8pxtj6a6jku3x4z6SQ== + dependencies: + esbuild "^0.21.3" + postcss "^8.4.43" + rollup "^4.20.0" + optionalDependencies: + fsevents "~2.3.3" + +vitest@^2.1.3, vitest@^2.1.4: + version "2.1.4" + resolved "https://registry.yarnpkg.com/vitest/-/vitest-2.1.4.tgz#ba8f4589fb639cf5a9e6af54781667312b3e8230" + integrity sha512-eDjxbVAJw1UJJCHr5xr/xM86Zx+YxIEXGAR+bmnEID7z9qWfoxpHw0zdobz+TQAFOLT+nEXz3+gx6nUJ7RgmlQ== + dependencies: + "@vitest/expect" "2.1.4" + "@vitest/mocker" "2.1.4" + "@vitest/pretty-format" "^2.1.4" + "@vitest/runner" "2.1.4" + "@vitest/snapshot" "2.1.4" + "@vitest/spy" "2.1.4" + "@vitest/utils" "2.1.4" + chai "^5.1.2" + debug "^4.3.7" + expect-type "^1.1.0" + magic-string "^0.30.12" + pathe "^1.1.2" + std-env "^3.7.0" + tinybench "^2.9.0" + tinyexec "^0.3.1" + tinypool "^1.0.1" + tinyrainbow "^1.2.0" + vite "^5.0.0" + vite-node "2.1.4" + why-is-node-running "^2.3.0" + void-elements@3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/void-elements/-/void-elements-3.1.0.tgz#614f7fbf8d801f0bb5f0661f5b2f5785750e4f09" @@ -13611,6 +15457,13 @@ walker@^1.0.7: dependencies: makeerror "1.0.x" +walker@^1.0.8: + version "1.0.8" + resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.8.tgz#bd498db477afe573dc04185f011d3ab8a8d7653f" + integrity sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ== + dependencies: + makeerror "1.0.12" + watchpack@^2.4.0: version "2.4.0" resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-2.4.0.tgz#fa33032374962c78113f93c7f2fb4c54c9862a5d" @@ -13897,6 +15750,14 @@ which@^2.0.1: dependencies: isexe "^2.0.0" +why-is-node-running@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/why-is-node-running/-/why-is-node-running-2.3.0.tgz#a3f69a97107f494b3cdc3bdddd883a7d65cebf04" + integrity sha512-hUrmaWBdVDcxvYqnyh09zunKzROWjbZTiNy8dBEjkS7ehEDQibXJ7XvlmtbwuTclUiIyN+CyXQD4Vmko8fNm8w== + dependencies: + siginfo "^2.0.0" + stackback "0.0.2" + wildcard@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/wildcard/-/wildcard-2.0.0.tgz#a77d20e5200c6faaac979e4b3aadc7b3dd7f8fec" @@ -14083,6 +15944,15 @@ workbox-window@6.5.0: "@types/trusted-types" "^2.0.2" workbox-core "6.5.0" +"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" + integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== + dependencies: + ansi-styles "^4.0.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" + wrap-ansi@^6.0.1, wrap-ansi@^6.2.0: version "6.2.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-6.2.0.tgz#e9393ba07102e6c91a3b221478f0257cd2856e53" @@ -14101,6 +15971,15 @@ wrap-ansi@^7.0.0: string-width "^4.1.0" strip-ansi "^6.0.0" +wrap-ansi@^8.1.0: + version "8.1.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-8.1.0.tgz#56dc22368ee570face1b49819975d9b9a5ead214" + integrity sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ== + dependencies: + ansi-styles "^6.1.0" + string-width "^5.0.1" + strip-ansi "^7.0.1" + wrap-ansi@^9.0.0: version "9.0.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-9.0.0.tgz#1a3dc8b70d85eeb8398ddfb1e4a02cd186e58b3e" @@ -14125,6 +16004,14 @@ write-file-atomic@^3.0.0: signal-exit "^3.0.2" typedarray-to-buffer "^3.1.5" +write-file-atomic@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-4.0.2.tgz#a9df01ae5b77858a027fd2e80768ee433555fcfd" + integrity sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg== + dependencies: + imurmurhash "^0.1.4" + signal-exit "^3.0.7" + ws@^7.4.6: version "7.5.10" resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.10.tgz#58b5c20dc281633f6c19113f39b349bd8bd558d9" @@ -14165,6 +16052,11 @@ yallist@^2.1.2: resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" integrity sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI= +yallist@^3.0.2: + version "3.1.1" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" + integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== + yallist@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" @@ -14180,11 +16072,6 @@ yaml@^1.10.0, yaml@^1.10.2, yaml@^1.7.2: resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b" integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg== -yargs-parser@20.x, yargs-parser@^20.2.2: - version "20.2.9" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" - integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== - yargs-parser@21.1.1, yargs-parser@^21.1.1: version "21.1.1" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.1.1.tgz#9096bceebf990d21bb31fa9516e0ede294a77d35" @@ -14198,6 +16085,11 @@ yargs-parser@^18.1.2, yargs-parser@^18.1.3: camelcase "^5.0.0" decamelize "^1.2.0" +yargs-parser@^20.2.2: + version "20.2.9" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" + integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== + yargs@^15.1.0: version "15.4.1" resolved "https://registry.yarnpkg.com/yargs/-/yargs-15.4.1.tgz#0d87a16de01aee9d8bec2bfbf74f67851730f4f8" From ca56ddcebc0046e1c45781442325b9dd3ec7cd94 Mon Sep 17 00:00:00 2001 From: Michael Weimann Date: Fri, 8 Nov 2024 14:47:14 +0100 Subject: [PATCH 02/15] WiP Signed-off-by: Michael Weimann --- matrix-meetings-bot/tsconfig.json | 1 + packages/calendar/package.json | 21 ++++++++++++++++++--- packages/calendar/tsconfig.json | 3 ++- packages/calendar/vite.config.ts | 9 +++++++++ 4 files changed, 30 insertions(+), 4 deletions(-) diff --git a/matrix-meetings-bot/tsconfig.json b/matrix-meetings-bot/tsconfig.json index 4cf75feb..940f9c80 100644 --- a/matrix-meetings-bot/tsconfig.json +++ b/matrix-meetings-bot/tsconfig.json @@ -4,6 +4,7 @@ "experimentalDecorators": true, "emitDecoratorMetadata": true, "module": "commonjs", + "moduleResolution": "node", "target": "es6", "lib": ["esnext"], "noImplicitAny": true, diff --git a/packages/calendar/package.json b/packages/calendar/package.json index 998f8575..671490d6 100644 --- a/packages/calendar/package.json +++ b/packages/calendar/package.json @@ -6,12 +6,26 @@ "type": "module", "version": "1.0.0", "source": "./src/index.ts", - "module": "./src/index.ts", - "types": "./src/index.ts", - "main": "./src/index.ts", + "module": "./lib/index.js", + "types": "./lib/index.d.ts", + "main": "./lib/index.cjs", "files": [ "./src/testing/*" ], + "exports": { + ".": { + "module": "./lib/index.js", + "import": { + "types": "./lib/index.d.ts", + "default": "./lib/index.js" + }, + "require": { + "types": "./lib/index.d.cts", + "default": "./lib/index.cjs" + } + }, + "./package.json": "./package.json" + }, "scripts": { "docker:build": "echo \"Nothing to build\"", "build": "tsc", @@ -32,6 +46,7 @@ "devDependencies": { "@types/lodash-es": "^4.17.12", "@types/luxon": "^3.2.0", + "vite": "^5.4.10", "vitest": "^2.1.4" } } diff --git a/packages/calendar/tsconfig.json b/packages/calendar/tsconfig.json index 310cf31e..49b33d54 100644 --- a/packages/calendar/tsconfig.json +++ b/packages/calendar/tsconfig.json @@ -2,7 +2,8 @@ "extends": "../../tsconfig.json", "compilerOptions": { "outDir": "lib", - "rootDir": "src" + "rootDir": "src", + "declaration": true }, "include": ["src"] } diff --git a/packages/calendar/vite.config.ts b/packages/calendar/vite.config.ts index fabcea94..61ad20d8 100644 --- a/packages/calendar/vite.config.ts +++ b/packages/calendar/vite.config.ts @@ -14,6 +14,7 @@ * limitations under the License. */ +import { resolve } from 'path' import { defineConfig } from 'vite'; // https://vitejs.dev/config/ @@ -22,6 +23,14 @@ export default defineConfig({ target: 'es2020', }, build: { + + lib: { + entry: resolve(__dirname, 'src/index.ts'), + formats: ['cjs', 'es', ], + name: 'Calendar', + fileName: 'index', + }, + outDir: 'lib', commonjsOptions: { strictRequires: true, From 88b89755d9a6ce02617662d2293d22b3928f5427 Mon Sep 17 00:00:00 2001 From: MTRNord Date: Fri, 8 Nov 2024 15:02:24 +0100 Subject: [PATCH 03/15] Fix bot Signed-off-by: MTRNord --- matrix-meetings-bot/package.json | 2 +- .../src/client/MeetingClient.ts | 2 +- .../src/client/WidgetClient.ts | 2 +- .../src/service/WidgetLayoutService.ts | 2 +- .../src/util/extractOxRrule.ts | 2 +- matrix-meetings-bot/test/ArrayOps.test.ts | 2 +- .../test/MeetingService.test.ts | 2 +- matrix-meetings-bot/tsconfig.json | 4 ++-- matrix-meetings-widget/src/index.tsx | 3 ++- package.json | 7 +++--- packages/calendar/package.json | 22 +++---------------- .../calendarUtils/extractCalendarChange.ts | 2 +- .../src/utils/calendarUtils/getCalendarEnd.ts | 2 +- packages/calendar/src/utils/format.ts | 2 +- packages/calendar/tsconfig.json | 2 ++ packages/calendar/vite.config.ts | 5 ++--- 16 files changed, 25 insertions(+), 38 deletions(-) diff --git a/matrix-meetings-bot/package.json b/matrix-meetings-bot/package.json index d44d01e5..65b2ea80 100644 --- a/matrix-meetings-bot/package.json +++ b/matrix-meetings-bot/package.json @@ -48,7 +48,7 @@ "i18next-fs-backend": "^2.3.1", "i18next-http-middleware": "^3.6.0", "joi": "^17.13.3", - "lodash-es": "^4.17.21", + "lodash": "^4.17.21", "luxon": "^3.3.0", "matrix-bot-sdk": "npm:@nordeck/matrix-bot-sdk@0.7.1-crypto.beta.12", "mime-types": "^2.1.35", diff --git a/matrix-meetings-bot/src/client/MeetingClient.ts b/matrix-meetings-bot/src/client/MeetingClient.ts index 52cdc1fa..6315a15a 100644 --- a/matrix-meetings-bot/src/client/MeetingClient.ts +++ b/matrix-meetings-bot/src/client/MeetingClient.ts @@ -15,7 +15,7 @@ */ import { Injectable, Logger } from '@nestjs/common'; -import * as _ from 'lodash-es'; +import * as _ from 'lodash'; import { MatrixClient, PowerLevelsEventContent, diff --git a/matrix-meetings-bot/src/client/WidgetClient.ts b/matrix-meetings-bot/src/client/WidgetClient.ts index a3b541e3..58c2b0d6 100644 --- a/matrix-meetings-bot/src/client/WidgetClient.ts +++ b/matrix-meetings-bot/src/client/WidgetClient.ts @@ -16,7 +16,7 @@ import { Inject, Injectable } from '@nestjs/common'; import fs from 'fs'; -import * as _ from 'lodash-es'; +import * as _ from 'lodash'; import { MatrixClient } from 'matrix-bot-sdk'; import mime from 'mime-types'; import path from 'path'; diff --git a/matrix-meetings-bot/src/service/WidgetLayoutService.ts b/matrix-meetings-bot/src/service/WidgetLayoutService.ts index cbea05ff..3c6ec7a1 100644 --- a/matrix-meetings-bot/src/service/WidgetLayoutService.ts +++ b/matrix-meetings-bot/src/service/WidgetLayoutService.ts @@ -15,7 +15,7 @@ */ import { Inject, Injectable, Logger } from '@nestjs/common'; -import _ from 'lodash-es'; +import _ from 'lodash'; import { ModuleProviderToken } from '../ModuleProviderToken'; import { WidgetLayoutConfig, diff --git a/matrix-meetings-bot/src/util/extractOxRrule.ts b/matrix-meetings-bot/src/util/extractOxRrule.ts index ccdc0611..ac5472c4 100644 --- a/matrix-meetings-bot/src/util/extractOxRrule.ts +++ b/matrix-meetings-bot/src/util/extractOxRrule.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { first } from 'lodash-es'; +import { first } from 'lodash'; import { MeetingCreateDto } from '../dto/MeetingCreateDto'; import { MeetingUpdateDetailsDto } from '../dto/MeetingUpdateDetailsDto'; import { extractOpenXChangeExternalReference } from '../model/ExternalData'; diff --git a/matrix-meetings-bot/test/ArrayOps.test.ts b/matrix-meetings-bot/test/ArrayOps.test.ts index 17054363..313070cd 100644 --- a/matrix-meetings-bot/test/ArrayOps.test.ts +++ b/matrix-meetings-bot/test/ArrayOps.test.ts @@ -14,8 +14,8 @@ * limitations under the License. */ +import { describe, expect, test } from 'vitest'; import { ArrayOps } from '../src/ArrayOps'; -import {describe, test, expect} from 'vitest'; describe('ArrayOps suite', () => { const arr = [1, 2, 3, 4, 5]; diff --git a/matrix-meetings-bot/test/MeetingService.test.ts b/matrix-meetings-bot/test/MeetingService.test.ts index 063a41de..2f34423a 100644 --- a/matrix-meetings-bot/test/MeetingService.test.ts +++ b/matrix-meetings-bot/test/MeetingService.test.ts @@ -15,7 +15,7 @@ */ import fetch from 'jest-fetch-mock'; -import _, { last } from 'lodash-es'; +import _, { last } from 'lodash'; import { MatrixClient, PowerLevelsEventContent, diff --git a/matrix-meetings-bot/tsconfig.json b/matrix-meetings-bot/tsconfig.json index 940f9c80..7e9add66 100644 --- a/matrix-meetings-bot/tsconfig.json +++ b/matrix-meetings-bot/tsconfig.json @@ -4,7 +4,6 @@ "experimentalDecorators": true, "emitDecoratorMetadata": true, "module": "commonjs", - "moduleResolution": "node", "target": "es6", "lib": ["esnext"], "noImplicitAny": true, @@ -13,7 +12,8 @@ "declaration": true, "resolveJsonModule": true, "esModuleInterop": true, - "skipLibCheck": true + "skipLibCheck": true, + "moduleResolution": "node" }, "include": ["./src/**/*"] } diff --git a/matrix-meetings-widget/src/index.tsx b/matrix-meetings-widget/src/index.tsx index dd8862d2..a536be6c 100644 --- a/matrix-meetings-widget/src/index.tsx +++ b/matrix-meetings-widget/src/index.tsx @@ -44,7 +44,8 @@ const widgetApiPromise = WidgetApiImpl.create({ const container = document.getElementById('root'); const root = createRoot(container!); -root.render( +root.render( + diff --git a/package.json b/package.json index ea702c60..5d7f5a91 100644 --- a/package.json +++ b/package.json @@ -3,10 +3,10 @@ "private": true, "type": "module", "workspaces": [ + "packages/*", "matrix-meetings-widget", "matrix-meetings-bot", - "e2e", - "packages/*" + "e2e" ], "devDependencies": { "@changesets/cli": "^2.27.3", @@ -56,5 +56,6 @@ "*.{json,js,jsx,ts,tsx}": [ "bash -c \"yarn translate --fail-on-update\"" ] - } + }, + "packageManager": "yarn@1.22.22+sha1.ac34549e6aa8e7ead463a7407e1c7390f61a6610" } diff --git a/packages/calendar/package.json b/packages/calendar/package.json index 671490d6..82b14349 100644 --- a/packages/calendar/package.json +++ b/packages/calendar/package.json @@ -3,29 +3,13 @@ "description": "A calendar utils library", "license": "Apache-2.0", "private": true, - "type": "module", "version": "1.0.0", "source": "./src/index.ts", - "module": "./lib/index.js", - "types": "./lib/index.d.ts", - "main": "./lib/index.cjs", + "types": "./src/index.ts", + "main": "./lib/index.js", "files": [ "./src/testing/*" ], - "exports": { - ".": { - "module": "./lib/index.js", - "import": { - "types": "./lib/index.d.ts", - "default": "./lib/index.js" - }, - "require": { - "types": "./lib/index.d.cts", - "default": "./lib/index.cjs" - } - }, - "./package.json": "./package.json" - }, "scripts": { "docker:build": "echo \"Nothing to build\"", "build": "tsc", @@ -39,7 +23,7 @@ "dependencies": { "i18next": "^23.7.16", "joi": "^17.13.3", - "lodash-es": "^4.17.21", + "lodash": "^4.17.21", "luxon": "^3.3.0", "rrule": "^2.8.1" }, diff --git a/packages/calendar/src/utils/calendarUtils/extractCalendarChange.ts b/packages/calendar/src/utils/calendarUtils/extractCalendarChange.ts index 0e5e4e15..ece197d5 100644 --- a/packages/calendar/src/utils/calendarUtils/extractCalendarChange.ts +++ b/packages/calendar/src/utils/calendarUtils/extractCalendarChange.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { differenceWith, isEqual } from 'lodash-es'; +import { differenceWith, isEqual } from 'lodash'; import { CalendarEntry, DateTimeEntry } from '../../model'; import { formatICalDate, parseICalDate } from '../dateTimeUtils'; import { isRRuleEntry, isRRuleOverrideEntry, isSingleEntry } from './helpers'; diff --git a/packages/calendar/src/utils/calendarUtils/getCalendarEnd.ts b/packages/calendar/src/utils/calendarUtils/getCalendarEnd.ts index e7475314..b596f8fd 100644 --- a/packages/calendar/src/utils/calendarUtils/getCalendarEnd.ts +++ b/packages/calendar/src/utils/calendarUtils/getCalendarEnd.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { max } from 'lodash-es'; +import { max } from 'lodash'; import { DateTime } from 'luxon'; import { CalendarEntry } from '../../model'; import { parseICalDate } from '../dateTimeUtils'; diff --git a/packages/calendar/src/utils/format.ts b/packages/calendar/src/utils/format.ts index af7396ec..d4393894 100644 --- a/packages/calendar/src/utils/format.ts +++ b/packages/calendar/src/utils/format.ts @@ -15,7 +15,7 @@ */ import { TFunction } from 'i18next'; -import { sortBy } from 'lodash-es'; +import { sortBy } from 'lodash'; import { Info } from 'luxon'; import { Frequency, Options, RRule } from 'rrule'; import { isWeekdays, normalizeByWeekday, normalizeNumeric } from './helpers'; diff --git a/packages/calendar/tsconfig.json b/packages/calendar/tsconfig.json index 49b33d54..1b842e31 100644 --- a/packages/calendar/tsconfig.json +++ b/packages/calendar/tsconfig.json @@ -1,6 +1,8 @@ { "extends": "../../tsconfig.json", "compilerOptions": { + "module": "CommonJS", + "moduleResolution": "node", "outDir": "lib", "rootDir": "src", "declaration": true diff --git a/packages/calendar/vite.config.ts b/packages/calendar/vite.config.ts index 61ad20d8..61f6c5e8 100644 --- a/packages/calendar/vite.config.ts +++ b/packages/calendar/vite.config.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { resolve } from 'path' +import { resolve } from 'path'; import { defineConfig } from 'vite'; // https://vitejs.dev/config/ @@ -23,10 +23,9 @@ export default defineConfig({ target: 'es2020', }, build: { - lib: { entry: resolve(__dirname, 'src/index.ts'), - formats: ['cjs', 'es', ], + formats: ['cjs', 'es'], name: 'Calendar', fileName: 'index', }, From 63dc47540085de5ef8bf19d42437f6376e591764 Mon Sep 17 00:00:00 2001 From: MTRNord Date: Fri, 8 Nov 2024 15:22:57 +0100 Subject: [PATCH 04/15] Make widget work as well Signed-off-by: MTRNord --- matrix-meetings-bot/package.json | 2 +- matrix-meetings-widget/package.json | 6 +++--- packages/calendar/package.json | 4 ++-- yarn.lock | 8 -------- 4 files changed, 6 insertions(+), 14 deletions(-) diff --git a/matrix-meetings-bot/package.json b/matrix-meetings-bot/package.json index 65b2ea80..329956d8 100644 --- a/matrix-meetings-bot/package.json +++ b/matrix-meetings-bot/package.json @@ -65,7 +65,7 @@ "devDependencies": { "@nestjs/cli": "^10.1.14", "@types/jest": "^29.5.14", - "@types/lodash-es": "^4.17.12", + "@types/lodash": "^4.17.12", "@types/luxon": "^3.2.0", "@types/mime-types": "^2.1.4", "@types/mustache": "^4.2.5", diff --git a/matrix-meetings-widget/package.json b/matrix-meetings-widget/package.json index 49e7391e..38a4359b 100644 --- a/matrix-meetings-widget/package.json +++ b/matrix-meetings-widget/package.json @@ -26,9 +26,9 @@ "i18next-chained-backend": "^4.6.2", "i18next-http-backend": "^2.5.2", "joi": "^17.13.3", - "lodash-es": "^4.17.21", + "lodash": "^4.17.21", "luxon": "^3.3.0", - "matrix-widget-api": "^1.5.0", + "matrix-widget-api": "^1.9.0", "mustache": "^4.2.0", "react": "^18.3.1", "react-dom": "^18.3.1", @@ -50,7 +50,7 @@ "@testing-library/react": "12", "@testing-library/react-hooks": "^8.0.1", "@testing-library/user-event": "^14.5.2", - "@types/lodash-es": "^4.17.12", + "@types/lodash": "^4.17.12", "@types/luxon": "^3.2.0", "@types/mustache": "^4.2.5", "@types/node": "^20.4.6", diff --git a/packages/calendar/package.json b/packages/calendar/package.json index 82b14349..40dd9aa9 100644 --- a/packages/calendar/package.json +++ b/packages/calendar/package.json @@ -5,7 +5,7 @@ "private": true, "version": "1.0.0", "source": "./src/index.ts", - "types": "./src/index.ts", + "module": "./src/index.ts", "main": "./lib/index.js", "files": [ "./src/testing/*" @@ -28,7 +28,7 @@ "rrule": "^2.8.1" }, "devDependencies": { - "@types/lodash-es": "^4.17.12", + "@types/lodash": "^4.17.12", "@types/luxon": "^3.2.0", "vite": "^5.4.10", "vitest": "^2.1.4" diff --git a/yarn.lock b/yarn.lock index d99ce1e7..517b1642 100644 --- a/yarn.lock +++ b/yarn.lock @@ -10866,14 +10866,6 @@ matcher-collection@^2.0.0: request-promise "^4.2.6" sanitize-html "^2.11.0" -matrix-widget-api@^1.5.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/matrix-widget-api/-/matrix-widget-api-1.6.0.tgz#f0075411edffc6de339580ade7e6e6e6edb01af4" - integrity sha512-VXIJyAZ/WnBmT4C7ePqevgMYGneKMCP/0JuCOqntSsaNlCRHJvwvTxmqUU+ufOpzIF5gYNyIrAjbgrEbK3iqJQ== - dependencies: - "@types/events" "^3.0.0" - events "^3.2.0" - matrix-widget-api@^1.9.0: version "1.9.0" resolved "https://registry.yarnpkg.com/matrix-widget-api/-/matrix-widget-api-1.9.0.tgz#884136b405bd3c56e4ea285095c9e01ec52b6b1f" From d2f628c8ccf9f6aa318ee954a80532919c9d2b0f Mon Sep 17 00:00:00 2001 From: Michael Weimann Date: Mon, 11 Nov 2024 08:48:45 +0100 Subject: [PATCH 05/15] Remove craco script Signed-off-by: Michael Weimann --- .../scripts/craco/ignoreRRuleWarnings.js | 38 ------------------- 1 file changed, 38 deletions(-) delete mode 100644 matrix-meetings-widget/scripts/craco/ignoreRRuleWarnings.js diff --git a/matrix-meetings-widget/scripts/craco/ignoreRRuleWarnings.js b/matrix-meetings-widget/scripts/craco/ignoreRRuleWarnings.js deleted file mode 100644 index 8598f208..00000000 --- a/matrix-meetings-widget/scripts/craco/ignoreRRuleWarnings.js +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright 2022 Nordeck IT + Consulting GmbH - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/** - * Ignore warnings raised by the source-map-loader due to a bug in the rrule module. - * See: https://github.com/jakubroztocil/rrule/issues/522 - */ -function overrideWebpackConfig({ webpackConfig }) { - webpackConfig.ignoreWarnings = [ - ...(webpackConfig.ignoreWarnings ?? []), - function ignoreSourceMapsLoaderWarnings(warning) { - return ( - warning.module && - (warning.module.resource.includes('node_modules/rrule') || - warning.module.resource.includes('node_modules\\rrule')) && - warning.details && - warning.details.includes('source-map-loader') - ); - }, - ]; - - return webpackConfig; -} - -module.exports = { overrideWebpackConfig }; From 92ad45ceced4c7b321d80d28fdd44dd1fdbd156e Mon Sep 17 00:00:00 2001 From: Michael Weimann Date: Mon, 11 Nov 2024 12:56:26 +0100 Subject: [PATCH 06/15] Fix tsc errors Signed-off-by: Michael Weimann --- matrix-meetings-widget/package.json | 3 +- .../CockpitPanel/CockpitPanel.test.tsx | 11 +- .../common/AdapterLuxonWeekday.test.ts | 1 + .../MeetingInvitationGuard.test.tsx | 1 + .../OpenXchangeMenuButtonItem.test.tsx | 10 +- .../openXchange.test.ts | 1 + .../common/PageLoader/PageLoader.test.tsx | 1 + .../withRoomIdInvitedMeeting.test.tsx | 1 + .../withRoomIdMeeting.test.tsx | 1 + .../meetings/MeetingCard/MeetingCard.test.tsx | 11 +- .../meetings/MeetingCard/MeetingCard.tsx | 2 +- .../MeetingCard/TooltipToggleButton.tsx | 33 +-- .../MeetingCardShareMeetingContent.test.tsx | 11 +- .../useDownloadIcsFile.test.tsx | 12 +- .../useJitsiDialInInformation.test.tsx | 9 + .../useMeetingEmail.test.tsx | 11 +- .../MeetingDetailsContent.test.tsx | 11 +- .../MeetingDetailsParticipants.test.tsx | 12 +- .../MeetingDetailsShare.test.tsx | 11 +- .../MeetingDetailsHeader.test.tsx | 11 +- .../OpenXchangeButton.test.tsx | 10 +- .../OpenXchangeButton/openXchange.test.ts | 1 + .../MeetingsCalendar.test.tsx | 11 +- .../MeetingsCalendarDetailsDialog.test.tsx | 1 + .../MeetingsCalendarEvent.test.tsx | 4 +- .../MeetingsList/selectDayMeetingIds.test.ts | 1 + .../meetings/MeetingsPanel/ToggleListView.tsx | 4 +- .../MeetingsToolbar/MeetingsToolbar.test.tsx | 2 +- .../MemberSelectionDropdown.test.tsx | 2 +- .../MemberSelectionDropdown.tsx | 5 +- .../meetings/RecurrenceEditor/state.test.ts | 1 + .../RecurrenceEditor/utils/defaults.test.ts | 1 + .../RecurrenceEditor/utils/format.test.ts | 1 + .../RecurrenceEditor/utils/helper.test.ts | 1 + .../ScheduleMeeting.test.tsx | 11 +- .../ScheduleMeetingModal/ScheduleMeeting.tsx | 2 +- .../ScheduleMeetingModal.test.tsx | 11 +- .../editMeetingThunk.test.tsx | 1 + .../useUserSearchResults.test.tsx | 1 + .../SetupBreakoutSessions.test.tsx | 11 +- .../SetupBreakoutSessionsModal.test.tsx | 11 +- .../WidgetsSelectionDropdown.test.tsx | 11 +- .../WidgetsSelectionDropdown.tsx | 3 +- matrix-meetings-widget/src/lib/locale.test.ts | 2 +- matrix-meetings-widget/src/lib/testUtils.ts | 8 +- .../src/lib/utils/generateFilterRange.test.ts | 2 +- .../meetingBotApi/meetingBotApi.test.ts | 10 +- .../reducer/meetingBotApi/meetingBotApi.ts | 30 ++- .../reducer/meetingsApi/meetingsApi.test.ts | 2 +- .../src/reducer/meetingsApi/meetingsApi.ts | 56 ++++- .../selectAllInvitedMeetingIds.test.ts | 1 + .../selectors/selectAllMeetingIds.test.ts | 1 + .../selectHasBreakoutSessions.test.ts | 1 + .../selectors/selectInvitedMeeting.test.ts | 1 + .../selectors/selectMeeting.test.ts | 1 + .../selectors/selectRoomType.test.ts | 1 + matrix-meetings-widget/src/setupTests.ts | 2 +- matrix-meetings-widget/tsconfig.node.json | 2 +- yarn.lock | 208 +++--------------- 59 files changed, 351 insertions(+), 248 deletions(-) diff --git a/matrix-meetings-widget/package.json b/matrix-meetings-widget/package.json index 38a4359b..d61bcf2a 100644 --- a/matrix-meetings-widget/package.json +++ b/matrix-meetings-widget/package.json @@ -40,10 +40,9 @@ "reselect": "^4.1.8", "rrule": "^2.8.1", "rxjs": "^7.8.1", - "timezones-ical-library": "^1.7.2" + "timezones-ical-library": "^1.8.3" }, "devDependencies": { - "@craco/craco": "^7.1.0", "@matrix-widget-toolkit/testing": "^3.0.1", "@testing-library/dom": "^10.4.0", "@testing-library/jest-dom": "^6.6.3", diff --git a/matrix-meetings-widget/src/components/cockpit/CockpitPanel/CockpitPanel.test.tsx b/matrix-meetings-widget/src/components/cockpit/CockpitPanel/CockpitPanel.test.tsx index 5406a069..564511a7 100644 --- a/matrix-meetings-widget/src/components/cockpit/CockpitPanel/CockpitPanel.test.tsx +++ b/matrix-meetings-widget/src/components/cockpit/CockpitPanel/CockpitPanel.test.tsx @@ -23,7 +23,16 @@ import axe from 'axe-core'; import { setupServer } from 'msw/node'; import { ComponentType, PropsWithChildren, useState } from 'react'; import { Provider } from 'react-redux'; -import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; +import { + afterAll, + afterEach, + beforeAll, + beforeEach, + describe, + expect, + it, + vi, +} from 'vitest'; import { mockCalendar, mockConfigEndpoint, diff --git a/matrix-meetings-widget/src/components/common/AdapterLuxonWeekday.test.ts b/matrix-meetings-widget/src/components/common/AdapterLuxonWeekday.test.ts index a626ceb0..210ccb1d 100644 --- a/matrix-meetings-widget/src/components/common/AdapterLuxonWeekday.test.ts +++ b/matrix-meetings-widget/src/components/common/AdapterLuxonWeekday.test.ts @@ -15,6 +15,7 @@ */ import { DateTime } from 'luxon'; +import { beforeEach, describe, expect, it } from 'vitest'; import { setLocale } from '../../lib/locale'; import { AdapterLuxonWeekday } from './AdapterLuxonWeekday'; diff --git a/matrix-meetings-widget/src/components/common/MeetingInvitationGuard/MeetingInvitationGuard.test.tsx b/matrix-meetings-widget/src/components/common/MeetingInvitationGuard/MeetingInvitationGuard.test.tsx index 210e778b..95932026 100644 --- a/matrix-meetings-widget/src/components/common/MeetingInvitationGuard/MeetingInvitationGuard.test.tsx +++ b/matrix-meetings-widget/src/components/common/MeetingInvitationGuard/MeetingInvitationGuard.test.tsx @@ -18,6 +18,7 @@ import { WidgetApiMockProvider } from '@matrix-widget-toolkit/react'; import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; import { render, screen, within } from '@testing-library/react'; import { ComponentType, PropsWithChildren } from 'react'; +import { afterEach, beforeEach, describe, expect, it } from 'vitest'; import { mockMeeting } from '../../../lib/testUtils'; import { Meeting } from '../../../reducer/meetingsApi'; import { MeetingInvitationGuard } from './MeetingInvitationGuard'; diff --git a/matrix-meetings-widget/src/components/common/MenuButton/OpenXchangeMenuButtonItem/OpenXchangeMenuButtonItem.test.tsx b/matrix-meetings-widget/src/components/common/MenuButton/OpenXchangeMenuButtonItem/OpenXchangeMenuButtonItem.test.tsx index 8df72c66..d4c620ec 100644 --- a/matrix-meetings-widget/src/components/common/MenuButton/OpenXchangeMenuButtonItem/OpenXchangeMenuButtonItem.test.tsx +++ b/matrix-meetings-widget/src/components/common/MenuButton/OpenXchangeMenuButtonItem/OpenXchangeMenuButtonItem.test.tsx @@ -23,7 +23,15 @@ import axe from 'axe-core'; import { setupServer } from 'msw/node'; import { ComponentType, PropsWithChildren, useState } from 'react'; import { Provider } from 'react-redux'; -import { afterEach, beforeEach, describe, expect, it } from 'vitest'; +import { + afterAll, + afterEach, + beforeAll, + beforeEach, + describe, + expect, + it, +} from 'vitest'; import { mockConfigEndpoint } from '../../../../lib/testUtils'; import { createStore } from '../../../../store'; import { initializeStore } from '../../../../store/store'; diff --git a/matrix-meetings-widget/src/components/common/MenuButton/OpenXchangeMenuButtonItem/openXchange.test.ts b/matrix-meetings-widget/src/components/common/MenuButton/OpenXchangeMenuButtonItem/openXchange.test.ts index 0f375234..8f4ecf2e 100644 --- a/matrix-meetings-widget/src/components/common/MenuButton/OpenXchangeMenuButtonItem/openXchange.test.ts +++ b/matrix-meetings-widget/src/components/common/MenuButton/OpenXchangeMenuButtonItem/openXchange.test.ts @@ -15,6 +15,7 @@ */ import { StateEvent } from '@matrix-widget-toolkit/api'; +import { describe, expect, it } from 'vitest'; import { NordeckMeetingMetadataEvent } from '../../../../lib/matrix'; import { mockNordeckMeetingMetadataEvent } from '../../../../lib/testUtils'; import { diff --git a/matrix-meetings-widget/src/components/common/PageLoader/PageLoader.test.tsx b/matrix-meetings-widget/src/components/common/PageLoader/PageLoader.test.tsx index 6f783bee..ad7c2f32 100644 --- a/matrix-meetings-widget/src/components/common/PageLoader/PageLoader.test.tsx +++ b/matrix-meetings-widget/src/components/common/PageLoader/PageLoader.test.tsx @@ -15,6 +15,7 @@ */ import { render, screen } from '@testing-library/react'; +import { describe, expect, it } from 'vitest'; import { PageLoader } from './PageLoader'; describe('', () => { diff --git a/matrix-meetings-widget/src/components/common/withRoomMeeting/withRoomIdInvitedMeeting.test.tsx b/matrix-meetings-widget/src/components/common/withRoomMeeting/withRoomIdInvitedMeeting.test.tsx index baab09cd..0b610f54 100644 --- a/matrix-meetings-widget/src/components/common/withRoomMeeting/withRoomIdInvitedMeeting.test.tsx +++ b/matrix-meetings-widget/src/components/common/withRoomMeeting/withRoomIdInvitedMeeting.test.tsx @@ -18,6 +18,7 @@ import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; import { render, screen } from '@testing-library/react'; import { ComponentType, PropsWithChildren, useMemo } from 'react'; import { Provider } from 'react-redux'; +import { afterEach, beforeEach, describe, expect, it } from 'vitest'; import { mockCreateMeetingInvitation } from '../../../lib/testUtils'; import { MeetingInvitation } from '../../../reducer/meetingsApi'; import { createStore } from '../../../store'; diff --git a/matrix-meetings-widget/src/components/common/withRoomMeeting/withRoomIdMeeting.test.tsx b/matrix-meetings-widget/src/components/common/withRoomMeeting/withRoomIdMeeting.test.tsx index f2707e3b..073e0c9a 100644 --- a/matrix-meetings-widget/src/components/common/withRoomMeeting/withRoomIdMeeting.test.tsx +++ b/matrix-meetings-widget/src/components/common/withRoomMeeting/withRoomIdMeeting.test.tsx @@ -18,6 +18,7 @@ import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; import { render, screen } from '@testing-library/react'; import { ComponentType, PropsWithChildren, useMemo } from 'react'; import { Provider } from 'react-redux'; +import { afterEach, beforeEach, describe, expect, it } from 'vitest'; import { mockCalendar, mockCreateMeetingRoom, diff --git a/matrix-meetings-widget/src/components/meetings/MeetingCard/MeetingCard.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingCard/MeetingCard.test.tsx index 841a145b..b45bda6b 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingCard/MeetingCard.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingCard/MeetingCard.test.tsx @@ -23,7 +23,16 @@ import axe from 'axe-core'; import { setupServer } from 'msw/node'; import { ComponentType, PropsWithChildren, useState } from 'react'; import { Provider } from 'react-redux'; -import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; +import { + afterAll, + afterEach, + beforeAll, + beforeEach, + describe, + expect, + it, + vi, +} from 'vitest'; import { acknowledgeAllEvents, mockCalendar, diff --git a/matrix-meetings-widget/src/components/meetings/MeetingCard/MeetingCard.tsx b/matrix-meetings-widget/src/components/meetings/MeetingCard/MeetingCard.tsx index 0e475fc3..c2e944bb 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingCard/MeetingCard.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingCard/MeetingCard.tsx @@ -95,7 +95,7 @@ export const MeetingCard = withRoomIdMeeting( const closeAction = useCallback(() => setAction(Actions.None), []); const handleChangeAction = useCallback( - async (_, value: Actions) => { + async (_: React.MouseEvent, value: Actions) => { if (Object.values(Actions).includes(value)) { setAction(value); } else { diff --git a/matrix-meetings-widget/src/components/meetings/MeetingCard/TooltipToggleButton.tsx b/matrix-meetings-widget/src/components/meetings/MeetingCard/TooltipToggleButton.tsx index bebf9b36..1e74d16c 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingCard/TooltipToggleButton.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingCard/TooltipToggleButton.tsx @@ -16,7 +16,7 @@ import ToggleButton, { ToggleButtonProps } from '@mui/material/ToggleButton'; import Tooltip, { TooltipProps } from '@mui/material/Tooltip'; -import { forwardRef, VFC } from 'react'; +import { forwardRef } from 'react'; type TooltipToggleButtonProps = ToggleButtonProps & { TooltipProps: Omit; @@ -30,18 +30,19 @@ type TooltipToggleButtonProps = ToggleButtonProps & { }; // Catch props and forward to ToggleButton -export const TooltipToggleButton: VFC = forwardRef( - ({ TooltipProps, expandedId, ...props }, ref) => { - const { selected } = props; - return ( - - - - ); - }, -); +export const TooltipToggleButton = forwardRef< + HTMLButtonElement, + TooltipToggleButtonProps +>(({ TooltipProps, expandedId, ...props }, ref) => { + const { selected } = props; + return ( + + + + ); +}); diff --git a/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/MeetingCardShareMeetingContent.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/MeetingCardShareMeetingContent.test.tsx index df5c4538..88220eac 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/MeetingCardShareMeetingContent.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/MeetingCardShareMeetingContent.test.tsx @@ -24,7 +24,16 @@ import { rest } from 'msw'; import { setupServer } from 'msw/node'; import { ComponentType, PropsWithChildren, useState } from 'react'; import { Provider } from 'react-redux'; -import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; +import { + afterAll, + afterEach, + beforeAll, + beforeEach, + describe, + expect, + it, + vi, +} from 'vitest'; import { mockCalendarEntry, mockConfigEndpoint, diff --git a/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/useDownloadIcsFile.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/useDownloadIcsFile.test.tsx index 086f37d9..96218e17 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/useDownloadIcsFile.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/useDownloadIcsFile.test.tsx @@ -21,7 +21,17 @@ import { renderHook } from '@testing-library/react-hooks'; import { setupServer } from 'msw/node'; import { ComponentType, PropsWithChildren, useState } from 'react'; import { Provider } from 'react-redux'; -import { afterEach, beforeEach, describe, expect, it, Mock, vi } from 'vitest'; +import { + afterAll, + afterEach, + beforeAll, + beforeEach, + describe, + expect, + it, + Mock, + vi, +} from 'vitest'; import { mockCalendarEntry, mockConfigEndpoint, diff --git a/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/useJitsiDialInInformation.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/useJitsiDialInInformation.test.tsx index 12fd807f..b52ef2ee 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/useJitsiDialInInformation.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/useJitsiDialInInformation.test.tsx @@ -20,6 +20,15 @@ import { rest } from 'msw'; import { setupServer } from 'msw/node'; import { ComponentType, PropsWithChildren, useState } from 'react'; import { Provider } from 'react-redux'; +import { + afterAll, + afterEach, + beforeAll, + beforeEach, + describe, + expect, + it, +} from 'vitest'; import { mockConfigEndpoint, mockMeetingSharingInformationEndpoint, diff --git a/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/useMeetingEmail.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/useMeetingEmail.test.tsx index b0ca8266..5c639b88 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/useMeetingEmail.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/useMeetingEmail.test.tsx @@ -21,7 +21,16 @@ import { renderHook } from '@testing-library/react-hooks'; import { setupServer } from 'msw/node'; import { ComponentType, PropsWithChildren, useState } from 'react'; import { Provider } from 'react-redux'; -import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; +import { + afterAll, + afterEach, + beforeAll, + beforeEach, + describe, + expect, + it, + vi, +} from 'vitest'; import { mockCalendarEntry, mockConfigEndpoint, diff --git a/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsContent/MeetingDetailsContent.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsContent/MeetingDetailsContent.test.tsx index c979a11b..92ba4762 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsContent/MeetingDetailsContent.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsContent/MeetingDetailsContent.test.tsx @@ -22,7 +22,16 @@ import axe from 'axe-core'; import { setupServer } from 'msw/node'; import { ComponentType, PropsWithChildren, useState } from 'react'; import { Provider } from 'react-redux'; -import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; +import { + afterAll, + afterEach, + beforeAll, + beforeEach, + describe, + expect, + it, + vi, +} from 'vitest'; import { mockCalendar, mockConfigEndpoint, diff --git a/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsContent/MeetingDetailsParticipants.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsContent/MeetingDetailsParticipants.test.tsx index df6a9488..1deeb294 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsContent/MeetingDetailsParticipants.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsContent/MeetingDetailsParticipants.test.tsx @@ -19,10 +19,20 @@ import { WidgetApiMockProvider } from '@matrix-widget-toolkit/react'; import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; import { render, screen, within } from '@testing-library/react'; import axe from 'axe-core'; +// @ts-ignore Disabled during migration. Should be re-enabled at some point import { setupServer } from 'msw/lib/node'; import { ComponentType, PropsWithChildren, useState } from 'react'; import { Provider } from 'react-redux'; -import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; +import { + afterAll, + afterEach, + beforeAll, + beforeEach, + describe, + expect, + it, + vi, +} from 'vitest'; import { mockConfigEndpoint, mockCreateMeetingRoom, diff --git a/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsContent/MeetingDetailsShare/MeetingDetailsShare.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsContent/MeetingDetailsShare/MeetingDetailsShare.test.tsx index ad7415a9..be20b6af 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsContent/MeetingDetailsShare/MeetingDetailsShare.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsContent/MeetingDetailsShare/MeetingDetailsShare.test.tsx @@ -23,7 +23,16 @@ import axe from 'axe-core'; import { setupServer } from 'msw/node'; import { ComponentType, PropsWithChildren, useState } from 'react'; import { Provider } from 'react-redux'; -import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; +import { + afterAll, + afterEach, + beforeAll, + beforeEach, + describe, + expect, + it, + vi, +} from 'vitest'; import { mockCalendarEntry, mockConfigEndpoint, diff --git a/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsHeader/MeetingDetailsHeader.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsHeader/MeetingDetailsHeader.test.tsx index 0761ae3e..74123dcd 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsHeader/MeetingDetailsHeader.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsHeader/MeetingDetailsHeader.test.tsx @@ -23,7 +23,16 @@ import axe from 'axe-core'; import { setupServer } from 'msw/node'; import { ComponentType, PropsWithChildren, useState } from 'react'; import { Provider } from 'react-redux'; -import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; +import { + afterAll, + afterEach, + beforeAll, + beforeEach, + describe, + expect, + it, + vi, +} from 'vitest'; import { acknowledgeAllEvents, mockCalendar, diff --git a/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsHeader/OpenXchangeButton/OpenXchangeButton.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsHeader/OpenXchangeButton/OpenXchangeButton.test.tsx index 5f1eca39..3db92c2b 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsHeader/OpenXchangeButton/OpenXchangeButton.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsHeader/OpenXchangeButton/OpenXchangeButton.test.tsx @@ -21,7 +21,15 @@ import axe from 'axe-core'; import { setupServer } from 'msw/node'; import { ComponentType, PropsWithChildren, useState } from 'react'; import { Provider } from 'react-redux'; -import { afterEach, beforeEach, describe, expect, it } from 'vitest'; +import { + afterAll, + afterEach, + beforeAll, + beforeEach, + describe, + expect, + it, +} from 'vitest'; import { mockConfigEndpoint } from '../../../../../lib/testUtils'; import { createStore } from '../../../../../store'; import { initializeStore } from '../../../../../store/store'; diff --git a/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsHeader/OpenXchangeButton/openXchange.test.ts b/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsHeader/OpenXchangeButton/openXchange.test.ts index d6de9b15..c23fcc1e 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsHeader/OpenXchangeButton/openXchange.test.ts +++ b/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsHeader/OpenXchangeButton/openXchange.test.ts @@ -15,6 +15,7 @@ */ import { StateEvent } from '@matrix-widget-toolkit/api'; +import { describe, expect, it } from 'vitest'; import { NordeckMeetingMetadataEvent } from '../../../../../lib/matrix'; import { mockNordeckMeetingMetadataEvent } from '../../../../../lib/testUtils'; import { diff --git a/matrix-meetings-widget/src/components/meetings/MeetingsCalendar/MeetingsCalendar.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingsCalendar/MeetingsCalendar.test.tsx index 1305042c..96606e98 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingsCalendar/MeetingsCalendar.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingsCalendar/MeetingsCalendar.test.tsx @@ -23,7 +23,16 @@ import axe from 'axe-core'; import { setupServer } from 'msw/node'; import { ComponentType, PropsWithChildren, useState } from 'react'; import { Provider } from 'react-redux'; -import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; +import { + afterAll, + afterEach, + beforeAll, + beforeEach, + describe, + expect, + it, + vi, +} from 'vitest'; import { mockCalendar, mockConfigEndpoint, diff --git a/matrix-meetings-widget/src/components/meetings/MeetingsCalendar/MeetingsCalendarDetailsDialog.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingsCalendar/MeetingsCalendarDetailsDialog.test.tsx index 5c18d797..1cc2c291 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingsCalendar/MeetingsCalendarDetailsDialog.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingsCalendar/MeetingsCalendarDetailsDialog.test.tsx @@ -30,6 +30,7 @@ import { beforeEach, describe, expect, + it, vi, } from 'vitest'; import { diff --git a/matrix-meetings-widget/src/components/meetings/MeetingsCalendar/MeetingsCalendarEvent.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingsCalendar/MeetingsCalendarEvent.test.tsx index 15f65a8e..809a17dc 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingsCalendar/MeetingsCalendarEvent.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingsCalendar/MeetingsCalendarEvent.test.tsx @@ -140,7 +140,7 @@ describe('', () => { ); expect(screen.getByText('An important meeting')).toBeInTheDocument(); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should have no accessibility violations for month view', async () => { @@ -154,7 +154,7 @@ describe('', () => { ); expect(screen.getByText('An important meeting')).toBeInTheDocument(); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should provide a label text for the event button', () => { diff --git a/matrix-meetings-widget/src/components/meetings/MeetingsList/selectDayMeetingIds.test.ts b/matrix-meetings-widget/src/components/meetings/MeetingsList/selectDayMeetingIds.test.ts index 9e8d6b68..bd061954 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingsList/selectDayMeetingIds.test.ts +++ b/matrix-meetings-widget/src/components/meetings/MeetingsList/selectDayMeetingIds.test.ts @@ -15,6 +15,7 @@ */ import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; +import { afterEach, beforeEach, describe, expect, it } from 'vitest'; import { mockCalendar, mockCreateMeetingRoom } from '../../../lib/testUtils'; import { createStore } from '../../../store'; import { RootState, initializeStore } from '../../../store/store'; diff --git a/matrix-meetings-widget/src/components/meetings/MeetingsPanel/ToggleListView.tsx b/matrix-meetings-widget/src/components/meetings/MeetingsPanel/ToggleListView.tsx index ec941beb..f98df3ff 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingsPanel/ToggleListView.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingsPanel/ToggleListView.tsx @@ -17,7 +17,7 @@ import CalendarMonthIcon from '@mui/icons-material/CalendarMonth'; import NotificationsIcon from '@mui/icons-material/Notifications'; import { Badge, Box, ToggleButton, ToggleButtonGroup } from '@mui/material'; -import { Dispatch, useCallback } from 'react'; +import { Dispatch, MouseEvent, useCallback } from 'react'; import { useTranslation } from 'react-i18next'; import { ellipsis } from '../../../lib/ellipsis'; @@ -38,7 +38,7 @@ export function ToggleListView({ const { t } = useTranslation(); const handleChangeInvitationsView = useCallback( - (_, value: string) => { + (_: MouseEvent, value: string) => { onChange(value === 'invitations'); }, [onChange], diff --git a/matrix-meetings-widget/src/components/meetings/MeetingsToolbar/MeetingsToolbar.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingsToolbar/MeetingsToolbar.test.tsx index b64f1148..31497efb 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingsToolbar/MeetingsToolbar.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingsToolbar/MeetingsToolbar.test.tsx @@ -118,7 +118,7 @@ describe('', () => { { wrapper: Wrapper }, ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('hide next, prev and today button when viewport is too small', () => { diff --git a/matrix-meetings-widget/src/components/meetings/MemberSelectionDropdown/MemberSelectionDropdown.test.tsx b/matrix-meetings-widget/src/components/meetings/MemberSelectionDropdown/MemberSelectionDropdown.test.tsx index 83c1fc00..d8f62366 100644 --- a/matrix-meetings-widget/src/components/meetings/MemberSelectionDropdown/MemberSelectionDropdown.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MemberSelectionDropdown/MemberSelectionDropdown.test.tsx @@ -104,7 +104,7 @@ describe('', () => { { wrapper: Wrapper }, ); - expect(await axe(container)).toHaveNoViolations(); + expect(await axe.run(container)).toHaveNoViolations(); }); it('should add own member', async () => { diff --git a/matrix-meetings-widget/src/components/meetings/MemberSelectionDropdown/MemberSelectionDropdown.tsx b/matrix-meetings-widget/src/components/meetings/MemberSelectionDropdown/MemberSelectionDropdown.tsx index eae25f86..752f0697 100644 --- a/matrix-meetings-widget/src/components/meetings/MemberSelectionDropdown/MemberSelectionDropdown.tsx +++ b/matrix-meetings-widget/src/components/meetings/MemberSelectionDropdown/MemberSelectionDropdown.tsx @@ -28,6 +28,7 @@ import { ListItemProps, ListItemText, TextField, + TextFieldProps, Tooltip, Typography, } from '@mui/material'; @@ -242,7 +243,7 @@ export function MemberSelectionDropdown({ ); const renderInput = useCallback( - (props) => { + (props: TextFieldProps) => { return ( )} - {props.InputProps.endAdornment} + {props.InputProps?.endAdornment} ), }} diff --git a/matrix-meetings-widget/src/components/meetings/RecurrenceEditor/state.test.ts b/matrix-meetings-widget/src/components/meetings/RecurrenceEditor/state.test.ts index b6067faa..72738213 100644 --- a/matrix-meetings-widget/src/components/meetings/RecurrenceEditor/state.test.ts +++ b/matrix-meetings-widget/src/components/meetings/RecurrenceEditor/state.test.ts @@ -16,6 +16,7 @@ import { DateTime } from 'luxon'; import { Frequency } from 'rrule'; +import { describe, expect, it } from 'vitest'; import { CustomRuleMode, RecurrenceEnd, diff --git a/matrix-meetings-widget/src/components/meetings/RecurrenceEditor/utils/defaults.test.ts b/matrix-meetings-widget/src/components/meetings/RecurrenceEditor/utils/defaults.test.ts index 81fb84eb..8e84b427 100644 --- a/matrix-meetings-widget/src/components/meetings/RecurrenceEditor/utils/defaults.test.ts +++ b/matrix-meetings-widget/src/components/meetings/RecurrenceEditor/utils/defaults.test.ts @@ -15,6 +15,7 @@ */ import { Frequency } from 'rrule'; +import { describe, expect, it } from 'vitest'; import { getDefaultCustomRuleProperties, getDefaultRecurringMeetingEnd, diff --git a/matrix-meetings-widget/src/components/meetings/RecurrenceEditor/utils/format.test.ts b/matrix-meetings-widget/src/components/meetings/RecurrenceEditor/utils/format.test.ts index e47c7793..20304843 100644 --- a/matrix-meetings-widget/src/components/meetings/RecurrenceEditor/utils/format.test.ts +++ b/matrix-meetings-widget/src/components/meetings/RecurrenceEditor/utils/format.test.ts @@ -18,6 +18,7 @@ import { parseRRule } from '@nordeck/matrix-meetings-calendar'; import { changeLanguage, t } from 'i18next'; import { Settings } from 'luxon'; import { Frequency } from 'rrule'; +import { afterEach, describe, expect, it } from 'vitest'; import { formatRRuleText, stringifyRRule } from './format'; describe('parseRRule', () => { diff --git a/matrix-meetings-widget/src/components/meetings/RecurrenceEditor/utils/helper.test.ts b/matrix-meetings-widget/src/components/meetings/RecurrenceEditor/utils/helper.test.ts index 469d4191..9c96c0b9 100644 --- a/matrix-meetings-widget/src/components/meetings/RecurrenceEditor/utils/helper.test.ts +++ b/matrix-meetings-widget/src/components/meetings/RecurrenceEditor/utils/helper.test.ts @@ -14,6 +14,7 @@ * limitations under the License. */ +import { describe, expect, it } from 'vitest'; import { setLocale } from '../../../../lib/locale'; import { convertWeekdayFromLocaleToRRule } from './helpers'; diff --git a/matrix-meetings-widget/src/components/meetings/ScheduleMeetingModal/ScheduleMeeting.test.tsx b/matrix-meetings-widget/src/components/meetings/ScheduleMeetingModal/ScheduleMeeting.test.tsx index 4598394b..0cab63e9 100644 --- a/matrix-meetings-widget/src/components/meetings/ScheduleMeetingModal/ScheduleMeeting.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/ScheduleMeetingModal/ScheduleMeeting.test.tsx @@ -29,7 +29,16 @@ import { repeat } from 'lodash-es'; import { setupServer } from 'msw/node'; import { ComponentType, PropsWithChildren, useMemo } from 'react'; import { Provider } from 'react-redux'; -import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; +import { + afterAll, + afterEach, + beforeAll, + beforeEach, + describe, + expect, + it, + vi, +} from 'vitest'; import { mockBreakoutSession, mockCalendar, diff --git a/matrix-meetings-widget/src/components/meetings/ScheduleMeetingModal/ScheduleMeeting.tsx b/matrix-meetings-widget/src/components/meetings/ScheduleMeetingModal/ScheduleMeeting.tsx index 72ff6306..2f311933 100644 --- a/matrix-meetings-widget/src/components/meetings/ScheduleMeetingModal/ScheduleMeeting.tsx +++ b/matrix-meetings-widget/src/components/meetings/ScheduleMeetingModal/ScheduleMeeting.tsx @@ -274,7 +274,7 @@ export const ScheduleMeeting = ({ }, []); const handleChangeMessagingPermissions = useCallback( - (_, checked: boolean) => { + (_: ChangeEvent, checked: boolean) => { setIsDirty(true); setIsMessagingEnabled(checked); }, diff --git a/matrix-meetings-widget/src/components/meetings/ScheduleMeetingModal/ScheduleMeetingModal.test.tsx b/matrix-meetings-widget/src/components/meetings/ScheduleMeetingModal/ScheduleMeetingModal.test.tsx index 164ae2f7..22c22127 100644 --- a/matrix-meetings-widget/src/components/meetings/ScheduleMeetingModal/ScheduleMeetingModal.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/ScheduleMeetingModal/ScheduleMeetingModal.test.tsx @@ -29,7 +29,16 @@ import { setupServer } from 'msw/node'; import { ComponentType, PropsWithChildren, useMemo } from 'react'; import { Provider } from 'react-redux'; import { Subject } from 'rxjs'; -import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; +import { + afterAll, + afterEach, + beforeAll, + beforeEach, + describe, + expect, + it, + vi, +} from 'vitest'; import { mockCalendar, mockMeeting, diff --git a/matrix-meetings-widget/src/components/meetings/ScheduleMeetingModal/editMeetingThunk.test.tsx b/matrix-meetings-widget/src/components/meetings/ScheduleMeetingModal/editMeetingThunk.test.tsx index 7ab4731b..731285f9 100644 --- a/matrix-meetings-widget/src/components/meetings/ScheduleMeetingModal/editMeetingThunk.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/ScheduleMeetingModal/editMeetingThunk.test.tsx @@ -14,6 +14,7 @@ * limitations under the License. */ +import { describe, expect, it } from 'vitest'; import { mockMeeting, mockRoomMember } from '../../../lib/testUtils'; import { Meeting } from '../../../reducer/meetingsApi'; import { diffMeeting } from './editMeetingThunk'; diff --git a/matrix-meetings-widget/src/components/meetings/ScheduleMeetingModal/useUserSearchResults.test.tsx b/matrix-meetings-widget/src/components/meetings/ScheduleMeetingModal/useUserSearchResults.test.tsx index d993cbc4..08c1859a 100644 --- a/matrix-meetings-widget/src/components/meetings/ScheduleMeetingModal/useUserSearchResults.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/ScheduleMeetingModal/useUserSearchResults.test.tsx @@ -19,6 +19,7 @@ import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; import { renderHook } from '@testing-library/react-hooks'; import { ComponentType, PropsWithChildren, useState } from 'react'; import { Provider } from 'react-redux'; +import { afterEach, beforeEach, describe, expect, it } from 'vitest'; import { createStore } from '../../../store'; import { initializeStore } from '../../../store/store'; import { useUserSearchResults } from './useUserSearchResults'; diff --git a/matrix-meetings-widget/src/components/meetings/SetupBreakoutSessionsModal/SetupBreakoutSessions.test.tsx b/matrix-meetings-widget/src/components/meetings/SetupBreakoutSessionsModal/SetupBreakoutSessions.test.tsx index 8bbf01cb..3510e55a 100644 --- a/matrix-meetings-widget/src/components/meetings/SetupBreakoutSessionsModal/SetupBreakoutSessions.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/SetupBreakoutSessionsModal/SetupBreakoutSessions.test.tsx @@ -29,7 +29,16 @@ import { repeat } from 'lodash-es'; import { setupServer } from 'msw/node'; import { ComponentType, PropsWithChildren, useMemo } from 'react'; import { Provider } from 'react-redux'; -import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; +import { + afterAll, + afterEach, + beforeAll, + beforeEach, + describe, + expect, + it, + vi, +} from 'vitest'; import { mockMeeting, mockRoomMember, diff --git a/matrix-meetings-widget/src/components/meetings/SetupBreakoutSessionsModal/SetupBreakoutSessionsModal.test.tsx b/matrix-meetings-widget/src/components/meetings/SetupBreakoutSessionsModal/SetupBreakoutSessionsModal.test.tsx index a58d39c7..8e579c53 100644 --- a/matrix-meetings-widget/src/components/meetings/SetupBreakoutSessionsModal/SetupBreakoutSessionsModal.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/SetupBreakoutSessionsModal/SetupBreakoutSessionsModal.test.tsx @@ -23,7 +23,16 @@ import { setupServer } from 'msw/node'; import { ComponentType, PropsWithChildren, useMemo } from 'react'; import { Provider } from 'react-redux'; import { Subject } from 'rxjs'; -import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; +import { + afterAll, + afterEach, + beforeAll, + beforeEach, + describe, + expect, + it, + vi, +} from 'vitest'; import { mockMeeting, mockRoomMember, diff --git a/matrix-meetings-widget/src/components/meetings/WidgetsSelectionDropdown/WidgetsSelectionDropdown.test.tsx b/matrix-meetings-widget/src/components/meetings/WidgetsSelectionDropdown/WidgetsSelectionDropdown.test.tsx index e3a42135..d8a8de7c 100644 --- a/matrix-meetings-widget/src/components/meetings/WidgetsSelectionDropdown/WidgetsSelectionDropdown.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/WidgetsSelectionDropdown/WidgetsSelectionDropdown.test.tsx @@ -23,7 +23,16 @@ import { rest } from 'msw'; import { setupServer } from 'msw/node'; import { ComponentType, PropsWithChildren, useMemo } from 'react'; import { Provider } from 'react-redux'; -import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; +import { + afterAll, + afterEach, + beforeAll, + beforeEach, + describe, + expect, + it, + vi, +} from 'vitest'; import { mockWidgetEndpoint } from '../../../lib/testUtils'; import { createStore } from '../../../store'; import { WidgetsSelectionDropdown } from './WidgetsSelectionDropdown'; diff --git a/matrix-meetings-widget/src/components/meetings/WidgetsSelectionDropdown/WidgetsSelectionDropdown.tsx b/matrix-meetings-widget/src/components/meetings/WidgetsSelectionDropdown/WidgetsSelectionDropdown.tsx index fe20cbf4..f3457f78 100644 --- a/matrix-meetings-widget/src/components/meetings/WidgetsSelectionDropdown/WidgetsSelectionDropdown.tsx +++ b/matrix-meetings-widget/src/components/meetings/WidgetsSelectionDropdown/WidgetsSelectionDropdown.tsx @@ -17,6 +17,7 @@ import { Autocomplete, AutocompleteRenderGetTagProps, + AutocompleteRenderInputParams, Chip, CircularProgress, InputAdornment, @@ -110,7 +111,7 @@ export function WidgetsSelectionDropdown({ }, [availableWidgets.length, isError, t]); const renderInput = useCallback( - (props) => { + (props: AutocompleteRenderInputParams) => { return ( { diff --git a/matrix-meetings-widget/src/lib/testUtils.ts b/matrix-meetings-widget/src/lib/testUtils.ts index d6279700..11415ab8 100644 --- a/matrix-meetings-widget/src/lib/testUtils.ts +++ b/matrix-meetings-widget/src/lib/testUtils.ts @@ -21,10 +21,8 @@ import { StateEvent, } from '@matrix-widget-toolkit/api'; import { MockedWidgetApi } from '@matrix-widget-toolkit/testing'; -import { - formatICalDate, - mockCalendar, -} from '@nordeck/matrix-meetings-calendar'; +import { formatICalDate } from '@nordeck/matrix-meetings-calendar'; +import { mockCalendar } from '@nordeck/matrix-meetings-calendar/src/testing'; import { rest } from 'msw'; import { SetupServer } from 'msw/node'; import { AvailableWidget } from '../reducer/meetingBotApi'; @@ -667,4 +665,4 @@ export function mockBreakoutSession({ export { mockCalendar, mockCalendarEntry, -} from '@nordeck/matrix-meetings-calendar'; +} from '@nordeck/matrix-meetings-calendar/src/testing'; diff --git a/matrix-meetings-widget/src/lib/utils/generateFilterRange.test.ts b/matrix-meetings-widget/src/lib/utils/generateFilterRange.test.ts index e819889c..11cc8c51 100644 --- a/matrix-meetings-widget/src/lib/utils/generateFilterRange.test.ts +++ b/matrix-meetings-widget/src/lib/utils/generateFilterRange.test.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { mockDateTimeFormatTimeZone } from '@nordeck/matrix-meetings-calendar'; +import { mockDateTimeFormatTimeZone } from '@nordeck/matrix-meetings-calendar/src/testing'; import { describe, expect, it } from 'vitest'; import { setLocale } from '../locale'; import { generateFilterRange } from './generateFilterRange'; diff --git a/matrix-meetings-widget/src/reducer/meetingBotApi/meetingBotApi.test.ts b/matrix-meetings-widget/src/reducer/meetingBotApi/meetingBotApi.test.ts index 3a15704c..58908358 100644 --- a/matrix-meetings-widget/src/reducer/meetingBotApi/meetingBotApi.test.ts +++ b/matrix-meetings-widget/src/reducer/meetingBotApi/meetingBotApi.test.ts @@ -17,7 +17,15 @@ import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; import { rest } from 'msw'; import { setupServer } from 'msw/node'; -import { afterAll, afterEach, beforeAll, describe, expect, it } from 'vitest'; +import { + afterAll, + afterEach, + beforeAll, + beforeEach, + describe, + expect, + it, +} from 'vitest'; import { createStore } from '../../store'; import { meetingBotApi } from './meetingBotApi'; diff --git a/matrix-meetings-widget/src/reducer/meetingBotApi/meetingBotApi.ts b/matrix-meetings-widget/src/reducer/meetingBotApi/meetingBotApi.ts index ad06be46..f325c727 100644 --- a/matrix-meetings-widget/src/reducer/meetingBotApi/meetingBotApi.ts +++ b/matrix-meetings-widget/src/reducer/meetingBotApi/meetingBotApi.ts @@ -116,7 +116,7 @@ export const meetingBotApi = createApi({ } catch (e) { return { error: { - error: e.message, + error: e instanceof Error ? e.message : JSON.stringify(e), status: 'PARSING_ERROR', originalStatus: response.meta?.response?.status ?? 0, data: response.data, @@ -127,7 +127,13 @@ export const meetingBotApi = createApi({ return { error: response.error as FetchBaseQueryError }; } catch (error) { - return { error: { error: error.message, status: 'CUSTOM_ERROR' } }; + return { + error: { + error: + error instanceof Error ? error.message : JSON.stringify(error), + status: 'CUSTOM_ERROR', + }, + }; } }, }), @@ -147,7 +153,7 @@ export const meetingBotApi = createApi({ } catch (e) { return { error: { - error: e.message, + error: e instanceof Error ? e.message : JSON.stringify(e), status: 'PARSING_ERROR', originalStatus: response.meta?.response?.status ?? 0, data: response.data, @@ -158,7 +164,13 @@ export const meetingBotApi = createApi({ return { error: response.error as FetchBaseQueryError }; } catch (error) { - return { error: { error: error.message, status: 'CUSTOM_ERROR' } }; + return { + error: { + error: + error instanceof Error ? error.message : JSON.stringify(error), + status: 'CUSTOM_ERROR', + }, + }; } }, }), @@ -191,7 +203,7 @@ export const meetingBotApi = createApi({ } catch (e) { return { error: { - error: e.message, + error: e instanceof Error ? e.message : JSON.stringify(e), status: 'PARSING_ERROR', originalStatus: response.meta?.response?.status ?? 0, data: response.data, @@ -202,7 +214,13 @@ export const meetingBotApi = createApi({ return { error: response.error as FetchBaseQueryError }; } catch (error) { - return { error: { error: error.message, status: 'CUSTOM_ERROR' } }; + return { + error: { + error: + error instanceof Error ? error.message : JSON.stringify(error), + status: 'CUSTOM_ERROR', + }, + }; } }, }), diff --git a/matrix-meetings-widget/src/reducer/meetingsApi/meetingsApi.test.ts b/matrix-meetings-widget/src/reducer/meetingsApi/meetingsApi.test.ts index f8a91955..8e48c453 100644 --- a/matrix-meetings-widget/src/reducer/meetingsApi/meetingsApi.test.ts +++ b/matrix-meetings-widget/src/reducer/meetingsApi/meetingsApi.test.ts @@ -16,7 +16,7 @@ import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; import { waitFor } from '@testing-library/react'; -import { afterEach, describe, expect, it, vi } from 'vitest'; +import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; import { acknowledgeAllEvents, mockCalendar, diff --git a/matrix-meetings-widget/src/reducer/meetingsApi/meetingsApi.ts b/matrix-meetings-widget/src/reducer/meetingsApi/meetingsApi.ts index e8c9ad18..0705a282 100644 --- a/matrix-meetings-widget/src/reducer/meetingsApi/meetingsApi.ts +++ b/matrix-meetings-widget/src/reducer/meetingsApi/meetingsApi.ts @@ -175,7 +175,12 @@ export const meetingsApi = createApi({ }, }; } catch (error) { - return { error: { message: error.message } }; + return { + error: { + message: + error instanceof Error ? error.message : JSON.stringify(error), + }, + }; } }, }), @@ -217,7 +222,12 @@ export const meetingsApi = createApi({ }, }; } catch (error) { - return { error: { message: error.message } }; + return { + error: { + message: + error instanceof Error ? error.message : JSON.stringify(error), + }, + }; } }, }), @@ -246,7 +256,12 @@ export const meetingsApi = createApi({ }, }; } catch (error) { - return { error: { message: error.message } }; + return { + error: { + message: + error instanceof Error ? error.message : JSON.stringify(error), + }, + }; } }, }), @@ -282,7 +297,12 @@ export const meetingsApi = createApi({ }, }; } catch (error) { - return { error: { message: error.message } }; + return { + error: { + message: + error instanceof Error ? error.message : JSON.stringify(error), + }, + }; } }, }), @@ -342,7 +362,12 @@ export const meetingsApi = createApi({ }, }; } catch (error) { - return { error: { message: error.message } }; + return { + error: { + message: + error instanceof Error ? error.message : JSON.stringify(error), + }, + }; } }, }), @@ -402,7 +427,12 @@ export const meetingsApi = createApi({ }, }; } catch (error) { - return { error: { message: error.message } }; + return { + error: { + message: + error instanceof Error ? error.message : JSON.stringify(error), + }, + }; } }, }), @@ -437,7 +467,12 @@ export const meetingsApi = createApi({ }, }; } catch (error) { - return { error: { message: error.message } }; + return { + error: { + message: + error instanceof Error ? error.message : JSON.stringify(error), + }, + }; } }, }), @@ -470,7 +505,12 @@ export const meetingsApi = createApi({ }, }; } catch (error) { - return { error: { message: error.message } }; + return { + error: { + message: + error instanceof Error ? error.message : JSON.stringify(error), + }, + }; } }, }), diff --git a/matrix-meetings-widget/src/reducer/meetingsApi/selectors/selectAllInvitedMeetingIds.test.ts b/matrix-meetings-widget/src/reducer/meetingsApi/selectors/selectAllInvitedMeetingIds.test.ts index 30a34bcc..31c27516 100644 --- a/matrix-meetings-widget/src/reducer/meetingsApi/selectors/selectAllInvitedMeetingIds.test.ts +++ b/matrix-meetings-widget/src/reducer/meetingsApi/selectors/selectAllInvitedMeetingIds.test.ts @@ -15,6 +15,7 @@ */ import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; +import { afterEach, beforeEach, describe, expect, it } from 'vitest'; import { mockCreateMeetingInvitation, mockCreateMeetingRoom, diff --git a/matrix-meetings-widget/src/reducer/meetingsApi/selectors/selectAllMeetingIds.test.ts b/matrix-meetings-widget/src/reducer/meetingsApi/selectors/selectAllMeetingIds.test.ts index 57444ac3..6558e454 100644 --- a/matrix-meetings-widget/src/reducer/meetingsApi/selectors/selectAllMeetingIds.test.ts +++ b/matrix-meetings-widget/src/reducer/meetingsApi/selectors/selectAllMeetingIds.test.ts @@ -15,6 +15,7 @@ */ import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; +import { afterEach, beforeEach, describe, expect, it } from 'vitest'; import { mockCalendar, mockCreateBreakoutMeetingRoom, diff --git a/matrix-meetings-widget/src/reducer/meetingsApi/selectors/selectHasBreakoutSessions.test.ts b/matrix-meetings-widget/src/reducer/meetingsApi/selectors/selectHasBreakoutSessions.test.ts index 66cb6309..3d1ceb23 100644 --- a/matrix-meetings-widget/src/reducer/meetingsApi/selectors/selectHasBreakoutSessions.test.ts +++ b/matrix-meetings-widget/src/reducer/meetingsApi/selectors/selectHasBreakoutSessions.test.ts @@ -15,6 +15,7 @@ */ import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; +import { afterEach, beforeEach, describe, expect, it } from 'vitest'; import { mockCreateBreakoutMeetingRoom, mockCreateMeetingRoom, diff --git a/matrix-meetings-widget/src/reducer/meetingsApi/selectors/selectInvitedMeeting.test.ts b/matrix-meetings-widget/src/reducer/meetingsApi/selectors/selectInvitedMeeting.test.ts index a2bb72ae..0d74686e 100644 --- a/matrix-meetings-widget/src/reducer/meetingsApi/selectors/selectInvitedMeeting.test.ts +++ b/matrix-meetings-widget/src/reducer/meetingsApi/selectors/selectInvitedMeeting.test.ts @@ -15,6 +15,7 @@ */ import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; +import { afterEach, beforeEach, describe, expect, it } from 'vitest'; import { mockCreateMeetingInvitation, mockRoomCreate, diff --git a/matrix-meetings-widget/src/reducer/meetingsApi/selectors/selectMeeting.test.ts b/matrix-meetings-widget/src/reducer/meetingsApi/selectors/selectMeeting.test.ts index aa65168c..4f6efcb6 100644 --- a/matrix-meetings-widget/src/reducer/meetingsApi/selectors/selectMeeting.test.ts +++ b/matrix-meetings-widget/src/reducer/meetingsApi/selectors/selectMeeting.test.ts @@ -15,6 +15,7 @@ */ import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; +import { afterEach, beforeEach, describe, expect, it } from 'vitest'; import { mockCalendar, mockCalendarEntry, diff --git a/matrix-meetings-widget/src/reducer/meetingsApi/selectors/selectRoomType.test.ts b/matrix-meetings-widget/src/reducer/meetingsApi/selectors/selectRoomType.test.ts index 50542a50..eebcb18b 100644 --- a/matrix-meetings-widget/src/reducer/meetingsApi/selectors/selectRoomType.test.ts +++ b/matrix-meetings-widget/src/reducer/meetingsApi/selectors/selectRoomType.test.ts @@ -15,6 +15,7 @@ */ import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; +import { afterEach, beforeEach, describe, expect, it } from 'vitest'; import { mockCreateBreakoutMeetingRoom, mockCreateMeetingRoom, diff --git a/matrix-meetings-widget/src/setupTests.ts b/matrix-meetings-widget/src/setupTests.ts index f11bb2a1..b1655ecf 100644 --- a/matrix-meetings-widget/src/setupTests.ts +++ b/matrix-meetings-widget/src/setupTests.ts @@ -24,7 +24,7 @@ import { cleanup } from '@testing-library/react'; import { AxeResults } from 'axe-core'; import { TextDecoder, TextEncoder } from 'util'; // Make sure to initialize i18n (see mock below) -import { mockDateTimeFormatTimeZone } from '@nordeck/matrix-meetings-calendar'; +import { mockDateTimeFormatTimeZone } from '@nordeck/matrix-meetings-calendar/src/testing'; import { afterEach, beforeEach, expect, vi } from 'vitest'; import './i18n'; import { setLocale } from './lib/locale'; diff --git a/matrix-meetings-widget/tsconfig.node.json b/matrix-meetings-widget/tsconfig.node.json index abcd7f0d..1e3ba724 100644 --- a/matrix-meetings-widget/tsconfig.node.json +++ b/matrix-meetings-widget/tsconfig.node.json @@ -1,5 +1,6 @@ { "compilerOptions": { + "composite": true, "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.node.tsbuildinfo", "target": "ES2022", "lib": ["ES2023"], @@ -11,7 +12,6 @@ "allowImportingTsExtensions": true, "isolatedModules": true, "moduleDetection": "force", - "noEmit": true, /* Linting */ "strict": true, diff --git a/yarn.lock b/yarn.lock index 517b1642..4a9dc703 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1510,26 +1510,6 @@ resolved "https://registry.yarnpkg.com/@colors/colors/-/colors-1.5.0.tgz#bb504579c1cae923e6576a4f5da43d25f97bdbd9" integrity sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ== -"@craco/craco@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@craco/craco/-/craco-7.1.0.tgz#12bd394c7f0334e214302e4d35a1768f68042fbb" - integrity sha512-oRAcPIKYrfPXp9rSzlsDNeOaVtDiKhoyqSXUoqiK24jCkHr4T8m/a2f74yXIzCbIheoUWDOIfWZyRgFgT+cpqA== - dependencies: - autoprefixer "^10.4.12" - cosmiconfig "^7.0.1" - cosmiconfig-typescript-loader "^1.0.0" - cross-spawn "^7.0.3" - lodash "^4.17.21" - semver "^7.3.7" - webpack-merge "^5.8.0" - -"@cspotcode/source-map-support@^0.8.0": - version "0.8.1" - resolved "https://registry.yarnpkg.com/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz#00629c35a688e05a88b1cda684fb9d5e73f000a1" - integrity sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw== - dependencies: - "@jridgewell/trace-mapping" "0.3.9" - "@csstools/normalize.css@*": version "12.0.0" resolved "https://registry.yarnpkg.com/@csstools/normalize.css/-/normalize.css-12.0.0.tgz#a9583a75c3f150667771f30b60d9f059473e62c4" @@ -2500,7 +2480,7 @@ "@jridgewell/sourcemap-codec" "^1.4.10" "@jridgewell/trace-mapping" "^0.3.24" -"@jridgewell/resolve-uri@3.1.0", "@jridgewell/resolve-uri@^3.0.3": +"@jridgewell/resolve-uri@3.1.0": version "3.1.0" resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz#2203b118c157721addfe69d47b70465463066d78" integrity sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w== @@ -2543,14 +2523,6 @@ resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz#3188bcb273a414b0d215fd22a58540b989b9409a" integrity sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ== -"@jridgewell/trace-mapping@0.3.9": - version "0.3.9" - resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz#6534fd5933a53ba7cbf3a17615e273a0d1273ff9" - integrity sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ== - dependencies: - "@jridgewell/resolve-uri" "^3.0.3" - "@jridgewell/sourcemap-codec" "^1.4.10" - "@jridgewell/trace-mapping@^0.3.0", "@jridgewell/trace-mapping@^0.3.17", "@jridgewell/trace-mapping@^0.3.9": version "0.3.18" resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz#25783b2086daf6ff1dcb53c9249ae480e4dd4cd6" @@ -3537,26 +3509,6 @@ resolved "https://registry.yarnpkg.com/@trysound/sax/-/sax-0.2.0.tgz#cccaab758af56761eb7bf37af6f03f326dd798ad" integrity sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA== -"@tsconfig/node10@^1.0.7": - version "1.0.9" - resolved "https://registry.yarnpkg.com/@tsconfig/node10/-/node10-1.0.9.tgz#df4907fc07a886922637b15e02d4cebc4c0021b2" - integrity sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA== - -"@tsconfig/node12@^1.0.7": - version "1.0.11" - resolved "https://registry.yarnpkg.com/@tsconfig/node12/-/node12-1.0.11.tgz#ee3def1f27d9ed66dac6e46a295cffb0152e058d" - integrity sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag== - -"@tsconfig/node14@^1.0.0": - version "1.0.3" - resolved "https://registry.yarnpkg.com/@tsconfig/node14/-/node14-1.0.3.tgz#e4386316284f00b98435bf40f72f75a09dabf6c1" - integrity sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow== - -"@tsconfig/node16@^1.0.2": - version "1.0.3" - resolved "https://registry.yarnpkg.com/@tsconfig/node16/-/node16-1.0.3.tgz#472eaab5f15c1ffdd7f8628bd4c4f753995ec79e" - integrity sha512-yOlFc+7UtL/89t2ZhjPvvB/DeAr3r+Dq58IgzsFkOAvVC6NMJXmCGjbptdXdR9qsX7pKcTL+s87FtYREi2dEEQ== - "@types/aria-query@^5.0.1": version "5.0.4" resolved "https://registry.yarnpkg.com/@types/aria-query/-/aria-query-5.0.4.tgz#1a31c3d378850d2778dabb6374d036dcba4ba708" @@ -3798,7 +3750,7 @@ dependencies: "@types/lodash" "*" -"@types/lodash@*": +"@types/lodash@*", "@types/lodash@^4.17.12": version "4.17.13" resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.17.13.tgz#786e2d67cfd95e32862143abe7463a7f90c300eb" integrity sha512-lfx+dftrEZcdBPczf9d0Qv0x+j/rfNCMuC6OcfXmO8gkfeNAY88PgKUbvG56whcN23gc27yenwF6oJZXGFpYxg== @@ -3995,9 +3947,9 @@ "@types/node" "*" "@types/set-cookie-parser@^2.4.0": - version "2.4.7" - resolved "https://registry.yarnpkg.com/@types/set-cookie-parser/-/set-cookie-parser-2.4.7.tgz#4a341ed1d3a922573ee54db70b6f0a6d818290e7" - integrity sha512-+ge/loa0oTozxip6zmhRIk8Z/boU51wl9Q6QdLZcokIGMzY5lFXYy/x7Htj2HTC6/KZP1hUbZ1ekx8DYXICvWg== + version "2.4.10" + resolved "https://registry.yarnpkg.com/@types/set-cookie-parser/-/set-cookie-parser-2.4.10.tgz#ad3a807d6d921db9720621ea3374c5d92020bcbc" + integrity sha512-GGmQVGpQWUe5qglJozEjZV/5dyxbOOZ0LHe/lqyWssB88Y4svNfst0uqBVscdDeIKl5Jy5+aPSvy7mI9tYRguw== dependencies: "@types/node" "*" @@ -4545,17 +4497,12 @@ acorn-walk@^7.0.0, acorn-walk@^7.1.1: resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-7.2.0.tgz#0de889a601203909b0fbe07b8938dc21d2e967bc" integrity sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA== -acorn-walk@^8.1.1: - version "8.2.0" - resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.2.0.tgz#741210f2e2426454508853a2f44d0ab83b7f69c1" - integrity sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA== - acorn@^7.0.0, acorn@^7.1.1: version "7.4.1" resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== -acorn@^8.2.4, acorn@^8.4.1, acorn@^8.5.0, acorn@^8.7.1, acorn@^8.9.0: +acorn@^8.2.4, acorn@^8.5.0, acorn@^8.7.1, acorn@^8.9.0: version "8.10.0" resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.10.0.tgz#8be5b3907a67221a81ab23c7889c4c5526b62ec5" integrity sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw== @@ -4730,11 +4677,6 @@ archiver@^5.3.2: tar-stream "^2.2.0" zip-stream "^4.1.0" -arg@^4.1.0: - version "4.1.3" - resolved "https://registry.yarnpkg.com/arg/-/arg-4.1.3.tgz#269fc7ad5b8e42cb63c896d5666017261c144089" - integrity sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA== - arg@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/arg/-/arg-5.0.1.tgz#eb0c9a8f77786cad2af8ff2b862899842d7b6adb" @@ -4911,7 +4853,7 @@ atomic-sleep@^1.0.0: resolved "https://registry.yarnpkg.com/atomic-sleep/-/atomic-sleep-1.0.0.tgz#eb85b77a601fc932cfe432c5acd364a9e2c9075b" integrity sha512-kNOjDqAh7px0XWNI+4QbzoiR/nTkHAWNud2uvnJquD1/x5a7EQZMJT0AczqK0Qn67oY/TTQ1LbUKajZpp3I9tQ== -autoprefixer@^10.4.12, autoprefixer@^10.4.2: +autoprefixer@^10.4.2: version "10.4.13" resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-10.4.13.tgz#b5136b59930209a321e9fa3dca2e7c4d223e83a8" integrity sha512-49vKpMqcZYsJjwotvt4+h/BCjJVnhGwcLpDt5xkcaOG3eLrG/HUYLagrihYsQ+qrIBgIzX1Rw7a6L8I/ZA1Atg== @@ -5756,15 +5698,6 @@ cliui@^8.0.1: strip-ansi "^6.0.1" wrap-ansi "^7.0.0" -clone-deep@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/clone-deep/-/clone-deep-4.0.1.tgz#c19fd9bdbbf85942b4fd979c84dcf7d5f07c2387" - integrity sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ== - dependencies: - is-plain-object "^2.0.4" - kind-of "^6.0.2" - shallow-clone "^3.0.0" - clone-stats@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/clone-stats/-/clone-stats-1.0.0.tgz#b3782dff8bb5474e18b9b6bf0fdfe782f8777680" @@ -6065,14 +5998,6 @@ cors@2.8.5: object-assign "^4" vary "^1" -cosmiconfig-typescript-loader@^1.0.0: - version "1.0.9" - resolved "https://registry.yarnpkg.com/cosmiconfig-typescript-loader/-/cosmiconfig-typescript-loader-1.0.9.tgz#69c523f7e8c3d9f27f563d02bbeadaf2f27212d3" - integrity sha512-tRuMRhxN4m1Y8hP9SNYfz7jRwt8lZdWxdjg/ohg5esKmsndJIn4yT96oJVcf5x0eA11taXl+sIp+ielu529k6g== - dependencies: - cosmiconfig "^7" - ts-node "^10.7.0" - cosmiconfig@^6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-6.0.0.tgz#da4fee853c52f6b1e6935f41c1a2fc50bd4a9982" @@ -6084,7 +6009,7 @@ cosmiconfig@^6.0.0: path-type "^4.0.0" yaml "^1.7.2" -cosmiconfig@^7, cosmiconfig@^7.0.0, cosmiconfig@^7.0.1, cosmiconfig@^7.1.0: +cosmiconfig@^7.0.0, cosmiconfig@^7.0.1, cosmiconfig@^7.1.0: version "7.1.0" resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-7.1.0.tgz#1443b9afa596b670082ea46cbd8f6a62b84635f6" integrity sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA== @@ -6129,11 +6054,6 @@ create-jest@^29.7.0: jest-util "^29.7.0" prompts "^2.0.1" -create-require@^1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/create-require/-/create-require-1.1.1.tgz#c1d7e8f1e5f6cfc9ff65f9cd352d37348756c333" - integrity sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ== - cross-env@^7.0.3: version "7.0.3" resolved "https://registry.yarnpkg.com/cross-env/-/cross-env-7.0.3.tgz#865264b29677dc015ba8418918965dd232fc54cf" @@ -6454,7 +6374,7 @@ debug@2.6.9, debug@^2.2.0, debug@^2.6.0, debug@^2.6.9: dependencies: ms "2.0.0" -debug@4, debug@4.3.4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.3, debug@^4.3.4: +debug@4, debug@4.3.4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4: version "4.3.4" resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== @@ -6468,7 +6388,7 @@ debug@^3.1.1, debug@^3.2.7: dependencies: ms "^2.1.1" -debug@^4.3.7: +debug@^4.3.3, debug@^4.3.7: version "4.3.7" resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.7.tgz#87945b4151a011d76d95a198d7111c865c360a52" integrity sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ== @@ -6721,11 +6641,6 @@ diff-sequences@^29.6.3: resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-29.6.3.tgz#4deaf894d11407c51efc8418012f9e70b84ea921" integrity sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q== -diff@^4.0.1: - version "4.0.2" - resolved "https://registry.yarnpkg.com/diff/-/diff-4.0.2.tgz#60f3aecb89d5fae520c11aa19efc2bb982aade7d" - integrity sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A== - dir-glob@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" @@ -9164,13 +9079,6 @@ is-plain-obj@^4.0.0: resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-4.0.0.tgz#06c0999fd7574edf5a906ba5644ad0feb3a84d22" integrity sha512-NXRbBtUdBioI73y/HmOhogw/U5msYPC9DAtGkJXeFcFWSFZw0mCUsPxk/snTuJHzNKA8kLBK4rH97RMB1BfCXw== -is-plain-object@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" - integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og== - dependencies: - isobject "^3.0.1" - is-plain-object@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-5.0.0.tgz#4427f50ab3429e9025ea7d52e9043a9ef4159344" @@ -9321,11 +9229,6 @@ isexe@^2.0.0: resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= -isobject@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" - integrity sha1-TkMekrEalzFjaqH5yNHMvP2reN8= - isstream@~0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" @@ -10805,11 +10708,6 @@ make-dir@^4.0.0: dependencies: semver "^7.5.3" -make-error@^1.1.1: - version "1.3.6" - resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.6.tgz#2eb2e37ea9b67c4891f684a1394799af484cf7a2" - integrity sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw== - makeerror@1.0.12: version "1.0.12" resolved "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.12.tgz#3e5dd2079a82e812e983cc6610c4a2cb0eaa801a" @@ -11118,9 +11016,9 @@ ms@2.1.3, ms@^2.1.1, ms@^2.1.3: integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== msw@^1.3.2: - version "1.3.3" - resolved "https://registry.yarnpkg.com/msw/-/msw-1.3.3.tgz#0b6f173db07292e1cf096b435878932dcf78f208" - integrity sha512-CiPyRFiYJCXYyH/vwxT7m+sa4VZHuUH6cGwRBj0kaTjBGpsk4EnL47YzhoA859htVCF2vzqZuOsomIUlFqg9GQ== + version "1.3.5" + resolved "https://registry.yarnpkg.com/msw/-/msw-1.3.5.tgz#708396f33a751d690eb8ee1d08713f5e9a77f27c" + integrity sha512-nG3fpmBXxFbKSIdk6miPuL3KjU6WMxgoW4tG1YgnP1M+TRG3Qn7b7R0euKAHq4vpwARHb18ZyfZljSxsTnMX2w== dependencies: "@mswjs/cookies" "^0.2.2" "@mswjs/interceptors" "^0.17.10" @@ -11137,7 +11035,7 @@ msw@^1.3.2: js-levenshtein "^1.1.6" node-fetch "^2.6.7" outvariant "^1.4.0" - path-to-regexp "^6.2.0" + path-to-regexp "^6.3.0" strict-event-emitter "^0.4.3" type-fest "^2.19.0" yargs "^17.3.1" @@ -11570,7 +11468,12 @@ outdent@^0.5.0: resolved "https://registry.yarnpkg.com/outdent/-/outdent-0.5.0.tgz#9e10982fdc41492bb473ad13840d22f9655be2ff" integrity sha512-/jHxFIzoMXdqPzTaCpFzAAWhpkSjZPF4Vsn6jAfNpmbH/ymsmd7Qc6VE9BGn0L6YMj6uwpQLxCECpus4ukKS9Q== -outvariant@^1.2.1, outvariant@^1.4.0: +outvariant@^1.2.1: + version "1.4.3" + resolved "https://registry.yarnpkg.com/outvariant/-/outvariant-1.4.3.tgz#221c1bfc093e8fec7075497e7799fdbf43d14873" + integrity sha512-+Sl2UErvtsoajRDKCE5/dBz4DIvHXQQnAxtQTF04OJxY0+DyZXSo5P5Bb7XYWOh81syohlYL24hbDwxedPUJCA== + +outvariant@^1.4.0: version "1.4.2" resolved "https://registry.yarnpkg.com/outvariant/-/outvariant-1.4.2.tgz#f54f19240eeb7f15b28263d5147405752d8e2066" integrity sha512-Ou3dJ6bA/UJ5GVHxah4LnqDwZRwAmWxrG3wtrHrbGnP4RnLCtA64A4F+ae7Y8ww660JaddSoArUR5HjipWSHAQ== @@ -11803,10 +11706,10 @@ path-to-regexp@3.2.0: resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-3.2.0.tgz#fa7877ecbc495c601907562222453c43cc204a5f" integrity sha512-jczvQbCUS7XmS7o+y1aEO9OBVFeZBQ1MDSEqmO7xSoPgOPoowY/SxLpZ6Vh97/8qHZOteiCKb7gkG9gA2ZUxJA== -path-to-regexp@^6.2.0: - version "6.2.0" - resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-6.2.0.tgz#f7b3803336104c346889adece614669230645f38" - integrity sha512-f66KywYG6+43afgE/8j/GoiNyygk/bnoCbps++3ErRKsIYkGGupyv07R2Ok5m9i67Iqc+T2g1eAUGUPzWhYTyg== +path-to-regexp@^6.3.0: + version "6.3.0" + resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-6.3.0.tgz#2b6a26a337737a8e1416f9272ed0766b1c0389f4" + integrity sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ== path-type@^4.0.0: version "4.0.0" @@ -13739,9 +13642,9 @@ set-blocking@^2.0.0: integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc= set-cookie-parser@^2.4.6: - version "2.6.0" - resolved "https://registry.yarnpkg.com/set-cookie-parser/-/set-cookie-parser-2.6.0.tgz#131921e50f62ff1a66a461d7d62d7b21d5d15a51" - integrity sha512-RVnVQxTXuerk653XfuliOxBP81Sf0+qfQE73LIYKcyMYHG94AuH0kgrQpRDuTZnSmjpysHmzxJXKNfa6PjFhyQ== + version "2.7.1" + resolved "https://registry.yarnpkg.com/set-cookie-parser/-/set-cookie-parser-2.7.1.tgz#3016f150072202dfbe90fadee053573cc89d2943" + integrity sha512-IOc8uWeOZgnb3ptbCURJWNjWUPcO3ZnTTdzsurqERrP6nPyv+paC55vJM0LpOlT2ne+Ix+9+CRG1MNLlyZ4GjQ== set-function-length@^1.2.1: version "1.2.2" @@ -13780,13 +13683,6 @@ setprototypeof@1.2.0: resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.2.0.tgz#66c9a24a73f9fc28cbe66b09fed3d33dcaf1b424" integrity sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw== -shallow-clone@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/shallow-clone/-/shallow-clone-3.0.1.tgz#8f2981ad92531f55035b01fb230769a40e02efa3" - integrity sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA== - dependencies: - kind-of "^6.0.2" - shebang-command@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" @@ -14736,10 +14632,10 @@ thunky@^1.0.2: resolved "https://registry.yarnpkg.com/thunky/-/thunky-1.1.0.tgz#5abaf714a9405db0504732bbccd2cedd9ef9537d" integrity sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA== -timezones-ical-library@^1.7.2: - version "1.7.2" - resolved "https://registry.yarnpkg.com/timezones-ical-library/-/timezones-ical-library-1.7.2.tgz#6e8e5441c3c0d84abacdeeba7242218a69303520" - integrity sha512-QxZd7SowEZ5/Kg6ZJuBYI2BUqmyDj5HdI9RSWSQtzYm3UeVd5ziFpEBjw715zCzQca6V4xIiHc5j95tUzDTOyg== +timezones-ical-library@^1.8.3: + version "1.8.3" + resolved "https://registry.yarnpkg.com/timezones-ical-library/-/timezones-ical-library-1.8.3.tgz#36d89a19d3d973592ebdd184accfca73338ae984" + integrity sha512-aXpr/l5Vxfrpf2s9OUoS8Qoj+DG9ykq1YWMzWk4tG1TwxKLnrFWiAgOKrQbBtPEynVtkU1aB1TftTX/SkvSzdQ== timsort@^0.3.0: version "0.3.0" @@ -14895,25 +14791,6 @@ ts-mockito@^2.6.1: dependencies: lodash "^4.17.5" -ts-node@^10.7.0: - version "10.9.1" - resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-10.9.1.tgz#e73de9102958af9e1f0b168a6ff320e25adcff4b" - 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" - tsconfig-paths-webpack-plugin@4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/tsconfig-paths-webpack-plugin/-/tsconfig-paths-webpack-plugin-4.1.0.tgz#3c6892c5e7319c146eee1e7302ed9e6f2be4f763" @@ -15252,11 +15129,6 @@ uuid@^8.3.2: resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== -v8-compile-cache-lib@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz#6336e8d71965cb3d35a1bbb7868445a7c05264bf" - integrity sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg== - v8-to-istanbul@^8.1.0: version "8.1.1" resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-8.1.1.tgz#77b752fd3975e31bbcef938f85e9bd1c7a8d60ed" @@ -15562,14 +15434,6 @@ webpack-manifest-plugin@^4.0.2: tapable "^2.0.0" webpack-sources "^2.2.0" -webpack-merge@^5.8.0: - version "5.8.0" - resolved "https://registry.yarnpkg.com/webpack-merge/-/webpack-merge-5.8.0.tgz#2b39dbf22af87776ad744c390223731d30a68f61" - integrity sha512-/SaI7xY0831XwP6kzuwhKWVKDP9t1QY1h65lAFLbZqMPIuYcD9QAW4u9STIbU9kaJbPBB/geU/gLr1wDjOhQ+Q== - dependencies: - clone-deep "^4.0.1" - wildcard "^2.0.0" - webpack-node-externals@3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/webpack-node-externals/-/webpack-node-externals-3.0.0.tgz#1a3407c158d547a9feb4229a9e3385b7b60c9917" @@ -15750,11 +15614,6 @@ why-is-node-running@^2.3.0: siginfo "^2.0.0" stackback "0.0.2" -wildcard@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/wildcard/-/wildcard-2.0.0.tgz#a77d20e5200c6faaac979e4b3aadc7b3dd7f8fec" - integrity sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw== - windows-release@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/windows-release/-/windows-release-4.0.0.tgz#4725ec70217d1bf6e02c7772413b29cdde9ec377" @@ -16135,11 +15994,6 @@ yarn-deduplicate@^6.0.2: semver "^7.5.0" tslib "^2.5.0" -yn@3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/yn/-/yn-3.1.1.tgz#1e87401a09d767c1d5eab26a6e4c185182d2eb50" - integrity sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q== - yocto-queue@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" From c2d4823b9e2f328089633e1939cc567ba2469e2a Mon Sep 17 00:00:00 2001 From: Michael Weimann Date: Mon, 11 Nov 2024 13:08:48 +0100 Subject: [PATCH 07/15] Fix eslint Signed-off-by: Michael Weimann --- .eslintrc.mjs => .eslintrc.cjs | 6 ++---- e2e/src/widgetSetup.spec.ts | 1 + matrix-meetings-bot/package.json | 2 +- .../src/components/meetings/MeetingCard/MeetingCard.tsx | 4 ++-- 4 files changed, 6 insertions(+), 7 deletions(-) rename .eslintrc.mjs => .eslintrc.cjs (94%) diff --git a/.eslintrc.mjs b/.eslintrc.cjs similarity index 94% rename from .eslintrc.mjs rename to .eslintrc.cjs index 1877bb5f..b8d51671 100644 --- a/.eslintrc.mjs +++ b/.eslintrc.cjs @@ -14,11 +14,9 @@ * limitations under the License. */ -import path from 'path'; +const path = require('path'); -const __dirname = path.dirname(__filename); - -export default { +module.exports = { plugins: ['promise', 'notice'], extends: [ 'react-app', diff --git a/e2e/src/widgetSetup.spec.ts b/e2e/src/widgetSetup.spec.ts index 14519558..a8eb06da 100644 --- a/e2e/src/widgetSetup.spec.ts +++ b/e2e/src/widgetSetup.spec.ts @@ -78,6 +78,7 @@ test.describe('Meeting Widget Setup', () => { // Wait for a moment and give the bot a chance to initialize the room. There // is no better way to observe that the bot has completed its work. + // eslint-disable-next-line await alicePage.waitForTimeout(1000); expect(await aliceElementWebPage.getWidgets()).toEqual(['NeoDateFix']); diff --git a/matrix-meetings-bot/package.json b/matrix-meetings-bot/package.json index 329956d8..bf24a04e 100644 --- a/matrix-meetings-bot/package.json +++ b/matrix-meetings-bot/package.json @@ -20,7 +20,7 @@ "start:debug": "PORT=3001 nest start --debug --watch", "copyfiles": "copyfiles -E -u 1 src/static/locales/**/*.json lib", "copyImages": "copyfiles -E -u 1 src/static/images/* lib", - "lint": "eslint . --no-error-on-unmatched-pattern", + "lint": "eslint . --max-warnings=0", "translate": "i18next 'src/**/*.{ts,tsx}'", "test": "jest --watch", "test:all": "jest --coverage --watchAll=false", diff --git a/matrix-meetings-widget/src/components/meetings/MeetingCard/MeetingCard.tsx b/matrix-meetings-widget/src/components/meetings/MeetingCard/MeetingCard.tsx index c2e944bb..9c1fa701 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingCard/MeetingCard.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingCard/MeetingCard.tsx @@ -32,7 +32,7 @@ import { } from '@mui/material'; import { unstable_useId as useId, visuallyHidden } from '@mui/utils'; import { isRecurringCalendarSourceEntry } from '@nordeck/matrix-meetings-calendar'; -import { ReactNode, useCallback, useState } from 'react'; +import { MouseEvent, ReactNode, useCallback, useState } from 'react'; import { Trans, useTranslation } from 'react-i18next'; import { ellipsis } from '../../../lib/ellipsis'; import { @@ -95,7 +95,7 @@ export const MeetingCard = withRoomIdMeeting( const closeAction = useCallback(() => setAction(Actions.None), []); const handleChangeAction = useCallback( - async (_: React.MouseEvent, value: Actions) => { + async (_: MouseEvent, value: Actions) => { if (Object.values(Actions).includes(value)) { setAction(value); } else { From c47751ca0cbe209832f95a1cc247f9843de7c38d Mon Sep 17 00:00:00 2001 From: Michael Weimann Date: Mon, 11 Nov 2024 13:20:44 +0100 Subject: [PATCH 08/15] Fix dependencies Signed-off-by: Michael Weimann --- matrix-meetings-bot/package.json | 4 +- matrix-meetings-widget/package.json | 10 +- yarn.lock | 4189 +-------------------------- 3 files changed, 161 insertions(+), 4042 deletions(-) diff --git a/matrix-meetings-bot/package.json b/matrix-meetings-bot/package.json index bf24a04e..d861a8df 100644 --- a/matrix-meetings-bot/package.json +++ b/matrix-meetings-bot/package.json @@ -14,7 +14,7 @@ "docker:inspect": "docker inspect nordeck/matrix-meetings-bot", "prestart": "yarn build", "build": "nest build && yarn copyfiles && yarn copyImages", - "depcheck": "depcheck", + "depcheck": "depcheck --ignores=\"typescript\"", "start": "PORT=3001 nest start", "start:dev": "PORT=3001 nest start --watch", "start:debug": "PORT=3001 nest start --debug --watch", @@ -64,7 +64,6 @@ }, "devDependencies": { "@nestjs/cli": "^10.1.14", - "@types/jest": "^29.5.14", "@types/lodash": "^4.17.12", "@types/luxon": "^3.2.0", "@types/mime-types": "^2.1.4", @@ -77,6 +76,7 @@ "eslint": "^8.57.0", "i18next-parser": "^8.13.0", "jest": "^29.7.0", + "jest-fetch-mock": "^3.0.3", "ts-mockito": "^2.6.1", "typescript": "^5.4.5" }, diff --git a/matrix-meetings-widget/package.json b/matrix-meetings-widget/package.json index d61bcf2a..0cd0ac59 100644 --- a/matrix-meetings-widget/package.json +++ b/matrix-meetings-widget/package.json @@ -23,10 +23,11 @@ "@nordeck/matrix-meetings-calendar": "1.0.0", "@reduxjs/toolkit": "^1.9.7", "i18next": "^23.7.16", + "i18next-browser-languagedetector": "^8.0.0", "i18next-chained-backend": "^4.6.2", "i18next-http-backend": "^2.5.2", "joi": "^17.13.3", - "lodash": "^4.17.21", + "lodash-es": "^4.17.21", "luxon": "^3.3.0", "matrix-widget-api": "^1.9.0", "mustache": "^4.2.0", @@ -44,12 +45,11 @@ }, "devDependencies": { "@matrix-widget-toolkit/testing": "^3.0.1", - "@testing-library/dom": "^10.4.0", "@testing-library/jest-dom": "^6.6.3", "@testing-library/react": "12", "@testing-library/react-hooks": "^8.0.1", "@testing-library/user-event": "^14.5.2", - "@types/lodash": "^4.17.12", + "@types/lodash-es": "^4.17.12", "@types/luxon": "^3.2.0", "@types/mustache": "^4.2.5", "@types/node": "^20.4.6", @@ -61,12 +61,10 @@ "@vitest/coverage-v8": "^2.1.4", "@vitest/ui": "^2.1.4", "axe-core": "^4.10.2", - "cross-env": "^7.0.3", "dotenv-cli": "^7.4.2", "eslint": "^8.57.0", "i18next-parser": "^8.13.0", "msw": "^1.3.2", - "react-scripts": "5.0.1", "typescript": "^5.4.5", "vite": "^5.4.10", "vitest": "^2.1.4" @@ -86,7 +84,7 @@ "dev:https": "VITE_DEV_SSL=true vite", "build": "vite build", "tsc": "tsc", - "depcheck": "depcheck", + "depcheck": "depcheck --ignores=\"@vitest/coverage-v8\"", "test": "vitest", "test:all": "vitest run --coverage", "lint": "eslint . --max-warnings=0", diff --git a/yarn.lock b/yarn.lock index 4a9dc703..bdeadb85 100644 --- a/yarn.lock +++ b/yarn.lock @@ -83,15 +83,6 @@ ora "5.4.1" rxjs "7.8.1" -"@apideck/better-ajv-errors@^0.3.1": - version "0.3.3" - resolved "https://registry.yarnpkg.com/@apideck/better-ajv-errors/-/better-ajv-errors-0.3.3.tgz#ab0b1e981e1749bf59736cf7ebe25cfc9f949c15" - integrity sha512-9o+HO2MbJhJHjDYZaDxJmSDckvDpiuItEsrIShV0DXeCshXWRHhqYyU/PKHMkuClOmFnZhRd6wzv4vpDu/dRKg== - dependencies: - json-schema "^0.4.0" - jsonpointer "^5.0.0" - leven "^3.1.0" - "@axe-core/playwright@^4.9.1": version "4.9.1" resolved "https://registry.yarnpkg.com/@axe-core/playwright/-/playwright-4.9.1.tgz#9c17c2976464d31d96d310c56df8ba100d87d772" @@ -99,7 +90,7 @@ dependencies: axe-core "~4.9.1" -"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.10.4", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.16.0", "@babel/code-frame@^7.16.7", "@babel/code-frame@^7.18.6", "@babel/code-frame@^7.22.13", "@babel/code-frame@^7.8.3": +"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.10.4", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.16.7", "@babel/code-frame@^7.18.6", "@babel/code-frame@^7.22.13": version "7.22.13" resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.22.13.tgz#e3c1c099402598483b7a8c46a721d1038803755e" integrity sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w== @@ -126,27 +117,6 @@ resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.26.2.tgz#278b6b13664557de95b8f35b90d96785850bb56e" integrity sha512-Z0WgzSEa+aUcdiJuCIqgujCshpMWgUpgOxXotrYPSA53hA3qopNaqcJpyr0hVb1FeWdnqFA35/fUtXgBK8srQg== -"@babel/core@^7.1.0", "@babel/core@^7.11.1", "@babel/core@^7.12.3", "@babel/core@^7.16.0", "@babel/core@^7.7.2", "@babel/core@^7.8.0": - version "7.20.2" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.20.2.tgz#8dc9b1620a673f92d3624bd926dc49a52cf25b92" - integrity sha512-w7DbG8DtMrJcFOi4VrLm+8QM4az8Mo+PuLBKLp2zrYRCow8W/f9xiXm5sN53C8HksCyDQwCKha9JiDoIyPjT2g== - dependencies: - "@ampproject/remapping" "^2.1.0" - "@babel/code-frame" "^7.18.6" - "@babel/generator" "^7.20.2" - "@babel/helper-compilation-targets" "^7.20.0" - "@babel/helper-module-transforms" "^7.20.2" - "@babel/helpers" "^7.20.1" - "@babel/parser" "^7.20.2" - "@babel/template" "^7.18.10" - "@babel/traverse" "^7.20.1" - "@babel/types" "^7.20.2" - convert-source-map "^1.7.0" - debug "^4.1.0" - gensync "^1.0.0-beta.2" - json5 "^2.2.1" - semver "^6.3.0" - "@babel/core@^7.11.6", "@babel/core@^7.23.9": version "7.26.0" resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.26.0.tgz#d78b6023cc8f3114ccf049eb219613f74a747b40" @@ -168,6 +138,27 @@ json5 "^2.2.3" semver "^6.3.1" +"@babel/core@^7.12.3", "@babel/core@^7.16.0": + version "7.20.2" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.20.2.tgz#8dc9b1620a673f92d3624bd926dc49a52cf25b92" + integrity sha512-w7DbG8DtMrJcFOi4VrLm+8QM4az8Mo+PuLBKLp2zrYRCow8W/f9xiXm5sN53C8HksCyDQwCKha9JiDoIyPjT2g== + dependencies: + "@ampproject/remapping" "^2.1.0" + "@babel/code-frame" "^7.18.6" + "@babel/generator" "^7.20.2" + "@babel/helper-compilation-targets" "^7.20.0" + "@babel/helper-module-transforms" "^7.20.2" + "@babel/helpers" "^7.20.1" + "@babel/parser" "^7.20.2" + "@babel/template" "^7.18.10" + "@babel/traverse" "^7.20.1" + "@babel/types" "^7.20.2" + convert-source-map "^1.7.0" + debug "^4.1.0" + gensync "^1.0.0-beta.2" + json5 "^2.2.1" + semver "^6.3.0" + "@babel/eslint-parser@^7.16.3": version "7.17.0" resolved "https://registry.yarnpkg.com/@babel/eslint-parser/-/eslint-parser-7.17.0.tgz#eabb24ad9f0afa80e5849f8240d0e5facc2d90d6" @@ -303,7 +294,7 @@ dependencies: "@babel/types" "^7.16.7" -"@babel/helper-module-imports@^7.10.4", "@babel/helper-module-imports@^7.12.13", "@babel/helper-module-imports@^7.16.7", "@babel/helper-module-imports@^7.18.6": +"@babel/helper-module-imports@^7.12.13", "@babel/helper-module-imports@^7.16.7", "@babel/helper-module-imports@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz#1e3ebdbbd08aad1437b428c50204db13c5a3ca6e" integrity sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA== @@ -972,13 +963,6 @@ dependencies: "@babel/helper-plugin-utils" "^7.16.7" -"@babel/plugin-transform-react-constant-elements@^7.12.1": - version "7.16.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-constant-elements/-/plugin-transform-react-constant-elements-7.16.7.tgz#19e9e4c2df2f6c3e6b3aea11778297d81db8df62" - integrity sha512-lF+cfsyTgwWkcw715J88JhMYJ5GpysYNLhLP1PkvkhTRN7B3e74R/1KsDxFxhRpSn0UUD3IWM4GvdBR2PEbbQQ== - dependencies: - "@babel/helper-plugin-utils" "^7.16.7" - "@babel/plugin-transform-react-display-name@^7.16.0", "@babel/plugin-transform-react-display-name@^7.16.7": version "7.16.7" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.16.7.tgz#7b6d40d232f4c0f550ea348593db3b21e2404340" @@ -1098,7 +1082,7 @@ "@babel/helper-create-regexp-features-plugin" "^7.16.7" "@babel/helper-plugin-utils" "^7.16.7" -"@babel/preset-env@^7.11.0", "@babel/preset-env@^7.12.1", "@babel/preset-env@^7.16.4": +"@babel/preset-env@^7.16.4": version "7.16.11" resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.16.11.tgz#5dd88fd885fae36f88fd7c8342475c9f0abe2982" integrity sha512-qcmWG8R7ZW6WBRPZK//y+E3Cli151B20W1Rv7ln27vuPaXU/8TKms6jFdiJtF7UDTxcrb7mZd88tAeK9LjdT8g== @@ -1189,7 +1173,7 @@ "@babel/types" "^7.4.4" esutils "^2.0.2" -"@babel/preset-react@^7.12.5", "@babel/preset-react@^7.16.0": +"@babel/preset-react@^7.16.0": version "7.16.7" resolved "https://registry.yarnpkg.com/@babel/preset-react/-/preset-react-7.16.7.tgz#4c18150491edc69c183ff818f9f2aecbe5d93852" integrity sha512-fWpyI8UM/HE6DfPBzD8LnhQ/OcH8AgTaqcqP2nGOXEUV+VKBR5JRN9hCk9ai+zQQ57vtm9oWeXguBCPNUjytgA== @@ -1218,7 +1202,7 @@ core-js-pure "^3.0.0" regenerator-runtime "^0.13.4" -"@babel/runtime@^7.1.2", "@babel/runtime@^7.10.2", "@babel/runtime@^7.11.2", "@babel/runtime@^7.12.1", "@babel/runtime@^7.12.5", "@babel/runtime@^7.16.3", "@babel/runtime@^7.18.3", "@babel/runtime@^7.20.1", "@babel/runtime@^7.22.5", "@babel/runtime@^7.23.2", "@babel/runtime@^7.23.6", "@babel/runtime@^7.5.5", "@babel/runtime@^7.8.4", "@babel/runtime@^7.8.7", "@babel/runtime@^7.9.2": +"@babel/runtime@^7.1.2", "@babel/runtime@^7.10.2", "@babel/runtime@^7.12.1", "@babel/runtime@^7.12.5", "@babel/runtime@^7.16.3", "@babel/runtime@^7.18.3", "@babel/runtime@^7.20.1", "@babel/runtime@^7.22.5", "@babel/runtime@^7.23.2", "@babel/runtime@^7.23.6", "@babel/runtime@^7.5.5", "@babel/runtime@^7.8.4", "@babel/runtime@^7.8.7", "@babel/runtime@^7.9.2": version "7.23.6" resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.23.6.tgz#c05e610dc228855dc92ef1b53d07389ed8ab521d" integrity sha512-zHd0eUrf5GZoOWVCXp6koAKQTfZV07eit6bGPmJgnZdnSAvvZee6zniW2XMF7Cmc4ISOOnPy3QaSiIJGJkVEDQ== @@ -1250,7 +1234,7 @@ "@babel/parser" "^7.25.9" "@babel/types" "^7.25.9" -"@babel/traverse@^7.13.0", "@babel/traverse@^7.16.7", "@babel/traverse@^7.16.8", "@babel/traverse@^7.20.1", "@babel/traverse@^7.23.2", "@babel/traverse@^7.7.2": +"@babel/traverse@^7.13.0", "@babel/traverse@^7.16.7", "@babel/traverse@^7.16.8", "@babel/traverse@^7.20.1", "@babel/traverse@^7.23.2": version "7.23.2" resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.23.2.tgz#329c7a06735e144a506bdb2cad0268b7f46f4ad8" integrity sha512-azpe59SQ48qG6nu2CzcMLbxUudtN+dOM9kDbUqGq3HXUJRlo7i8fvPoxQUzYgLZ4cMVmuZgm8vvBpNeRhd6XSw== @@ -1279,7 +1263,7 @@ debug "^4.3.1" globals "^11.1.0" -"@babel/types@^7.0.0", "@babel/types@^7.12.6", "@babel/types@^7.16.0", "@babel/types@^7.16.7", "@babel/types@^7.16.8", "@babel/types@^7.18.6", "@babel/types@^7.20.0", "@babel/types@^7.20.2", "@babel/types@^7.22.15", "@babel/types@^7.22.5", "@babel/types@^7.23.0", "@babel/types@^7.3.0", "@babel/types@^7.3.3", "@babel/types@^7.4.4": +"@babel/types@^7.0.0", "@babel/types@^7.16.0", "@babel/types@^7.16.7", "@babel/types@^7.16.8", "@babel/types@^7.18.6", "@babel/types@^7.20.0", "@babel/types@^7.20.2", "@babel/types@^7.22.15", "@babel/types@^7.22.5", "@babel/types@^7.23.0", "@babel/types@^7.3.0", "@babel/types@^7.3.3", "@babel/types@^7.4.4": version "7.23.0" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.23.0.tgz#8c1f020c9df0e737e4e247c0619f58c68458aaeb" integrity sha512-0oIyUfKoI3mSqMvsxBdclDwxXKXAUA8v/apZbc+iSyARYou1o8ZGDxbUYyLFoW2arqS2jDGqJuZvv1d/io1axg== @@ -1510,70 +1494,6 @@ resolved "https://registry.yarnpkg.com/@colors/colors/-/colors-1.5.0.tgz#bb504579c1cae923e6576a4f5da43d25f97bdbd9" integrity sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ== -"@csstools/normalize.css@*": - version "12.0.0" - resolved "https://registry.yarnpkg.com/@csstools/normalize.css/-/normalize.css-12.0.0.tgz#a9583a75c3f150667771f30b60d9f059473e62c4" - integrity sha512-M0qqxAcwCsIVfpFQSlGN5XjXWu8l5JDZN+fPt1LeW5SZexQTgnaEvgXAY+CeygRw0EeppWHi12JxESWiWrB0Sg== - -"@csstools/postcss-color-function@^1.0.2": - version "1.0.2" - resolved "https://registry.yarnpkg.com/@csstools/postcss-color-function/-/postcss-color-function-1.0.2.tgz#0843fe19be08eeb22e5d2242a6ac06f8b87b9ed2" - integrity sha512-uayvFqfa0hITPwVduxRYNL9YBD/anTqula0tu2llalaxblEd7QPuETSN3gB5PvTYxSfd0d8kS4Fypgo5JaUJ6A== - dependencies: - "@csstools/postcss-progressive-custom-properties" "^1.1.0" - postcss-value-parser "^4.2.0" - -"@csstools/postcss-font-format-keywords@^1.0.0": - version "1.0.0" - resolved "https://registry.yarnpkg.com/@csstools/postcss-font-format-keywords/-/postcss-font-format-keywords-1.0.0.tgz#7e7df948a83a0dfb7eb150a96e2390ac642356a1" - integrity sha512-oO0cZt8do8FdVBX8INftvIA4lUrKUSCcWUf9IwH9IPWOgKT22oAZFXeHLoDK7nhB2SmkNycp5brxfNMRLIhd6Q== - dependencies: - postcss-value-parser "^4.2.0" - -"@csstools/postcss-hwb-function@^1.0.0": - version "1.0.0" - resolved "https://registry.yarnpkg.com/@csstools/postcss-hwb-function/-/postcss-hwb-function-1.0.0.tgz#d6785c1c5ba8152d1d392c66f3a6a446c6034f6d" - integrity sha512-VSTd7hGjmde4rTj1rR30sokY3ONJph1reCBTUXqeW1fKwETPy1x4t/XIeaaqbMbC5Xg4SM/lyXZ2S8NELT2TaA== - dependencies: - postcss-value-parser "^4.2.0" - -"@csstools/postcss-ic-unit@^1.0.0": - version "1.0.0" - resolved "https://registry.yarnpkg.com/@csstools/postcss-ic-unit/-/postcss-ic-unit-1.0.0.tgz#f484db59fc94f35a21b6d680d23b0ec69b286b7f" - integrity sha512-i4yps1mBp2ijrx7E96RXrQXQQHm6F4ym1TOD0D69/sjDjZvQ22tqiEvaNw7pFZTUO5b9vWRHzbHzP9+UKuw+bA== - dependencies: - "@csstools/postcss-progressive-custom-properties" "^1.1.0" - postcss-value-parser "^4.2.0" - -"@csstools/postcss-is-pseudo-class@^2.0.0": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@csstools/postcss-is-pseudo-class/-/postcss-is-pseudo-class-2.0.0.tgz#219a1c1d84de7d9e9b7e662a57fdc194eac38ea7" - integrity sha512-WnfZlyuh/CW4oS530HBbrKq0G8BKl/bsNr5NMFoubBFzJfvFRGJhplCgIJYWUidLuL3WJ/zhMtDIyNFTqhx63Q== - dependencies: - postcss-selector-parser "^6.0.9" - -"@csstools/postcss-normalize-display-values@^1.0.0": - version "1.0.0" - resolved "https://registry.yarnpkg.com/@csstools/postcss-normalize-display-values/-/postcss-normalize-display-values-1.0.0.tgz#ce698f688c28517447aedf15a9037987e3d2dc97" - integrity sha512-bX+nx5V8XTJEmGtpWTO6kywdS725t71YSLlxWt78XoHUbELWgoCXeOFymRJmL3SU1TLlKSIi7v52EWqe60vJTQ== - dependencies: - postcss-value-parser "^4.2.0" - -"@csstools/postcss-oklab-function@^1.0.1": - version "1.0.1" - resolved "https://registry.yarnpkg.com/@csstools/postcss-oklab-function/-/postcss-oklab-function-1.0.1.tgz#a12348eae202d4ded908a06aa92cf19a946b6cec" - integrity sha512-Bnly2FWWSTZX20hDJLYHpurhp1ot+ZGvojLOsrHa9frzOVruOv4oPYMZ6wQomi9KsbZZ+Af/CuRYaGReTyGtEg== - dependencies: - "@csstools/postcss-progressive-custom-properties" "^1.1.0" - postcss-value-parser "^4.2.0" - -"@csstools/postcss-progressive-custom-properties@^1.1.0", "@csstools/postcss-progressive-custom-properties@^1.2.0": - version "1.2.0" - resolved "https://registry.yarnpkg.com/@csstools/postcss-progressive-custom-properties/-/postcss-progressive-custom-properties-1.2.0.tgz#7d53b773de50874c3885918dcb10cac97bf66ed5" - integrity sha512-YLpFPK5OaLIRKZhUfnrZPT9s9cmtqltIOg7W6jPcxmiDpnZ4lk+odfufZttOAgcg6IHWvNLgcITSLpJxIQB/qQ== - dependencies: - postcss-value-parser "^4.2.0" - "@emotion/babel-plugin@^11.12.0": version "11.12.0" resolved "https://registry.yarnpkg.com/@emotion/babel-plugin/-/babel-plugin-11.12.0.tgz#7b43debb250c313101b3f885eba634f1d723fcc2" @@ -2101,18 +2021,6 @@ resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.3.tgz#e45e384e4b8ec16bce2fd903af78450f6bf7ec98" integrity sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA== -"@jest/console@^27.5.1": - version "27.5.1" - resolved "https://registry.yarnpkg.com/@jest/console/-/console-27.5.1.tgz#260fe7239602fe5130a94f1aa386eff54b014bba" - integrity sha512-kZ/tNpS3NXn0mlXXXPNuDZnb4c0oZ20r4K5eemM2k30ZC3G0T02nXUvyhf5YdbXWHPEJLc9qGLxEZ216MdL+Zg== - dependencies: - "@jest/types" "^27.5.1" - "@types/node" "*" - chalk "^4.0.0" - jest-message-util "^27.5.1" - jest-util "^27.5.1" - slash "^3.0.0" - "@jest/console@^29.7.0": version "29.7.0" resolved "https://registry.yarnpkg.com/@jest/console/-/console-29.7.0.tgz#cd4822dbdb84529265c5a2bdb529a3c9cc950ffc" @@ -2125,40 +2033,6 @@ jest-util "^29.7.0" slash "^3.0.0" -"@jest/core@^27.5.1": - version "27.5.1" - resolved "https://registry.yarnpkg.com/@jest/core/-/core-27.5.1.tgz#267ac5f704e09dc52de2922cbf3af9edcd64b626" - integrity sha512-AK6/UTrvQD0Cd24NSqmIA6rKsu0tKIxfiCducZvqxYdmMisOYAsdItspT+fQDQYARPf8XgjAFZi0ogW2agH5nQ== - dependencies: - "@jest/console" "^27.5.1" - "@jest/reporters" "^27.5.1" - "@jest/test-result" "^27.5.1" - "@jest/transform" "^27.5.1" - "@jest/types" "^27.5.1" - "@types/node" "*" - ansi-escapes "^4.2.1" - chalk "^4.0.0" - emittery "^0.8.1" - exit "^0.1.2" - graceful-fs "^4.2.9" - jest-changed-files "^27.5.1" - jest-config "^27.5.1" - jest-haste-map "^27.5.1" - jest-message-util "^27.5.1" - jest-regex-util "^27.5.1" - jest-resolve "^27.5.1" - jest-resolve-dependencies "^27.5.1" - jest-runner "^27.5.1" - jest-runtime "^27.5.1" - jest-snapshot "^27.5.1" - jest-util "^27.5.1" - jest-validate "^27.5.1" - jest-watcher "^27.5.1" - micromatch "^4.0.4" - rimraf "^3.0.0" - slash "^3.0.0" - strip-ansi "^6.0.0" - "@jest/core@^29.7.0": version "29.7.0" resolved "https://registry.yarnpkg.com/@jest/core/-/core-29.7.0.tgz#b6cccc239f30ff36609658c5a5e2291757ce448f" @@ -2193,16 +2067,6 @@ slash "^3.0.0" strip-ansi "^6.0.0" -"@jest/environment@^27.5.1": - version "27.5.1" - resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-27.5.1.tgz#d7425820511fe7158abbecc010140c3fd3be9c74" - integrity sha512-/WQjhPJe3/ghaol/4Bq480JKXV/Rfw8nQdN7f41fM8VDHLcxKXou6QyXAh3EFr9/bVG3x74z1NWDkP87EiY8gA== - dependencies: - "@jest/fake-timers" "^27.5.1" - "@jest/types" "^27.5.1" - "@types/node" "*" - jest-mock "^27.5.1" - "@jest/environment@^29.7.0": version "29.7.0" resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-29.7.0.tgz#24d61f54ff1f786f3cd4073b4b94416383baf2a7" @@ -2228,18 +2092,6 @@ expect "^29.7.0" jest-snapshot "^29.7.0" -"@jest/fake-timers@^27.5.1": - version "27.5.1" - resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-27.5.1.tgz#76979745ce0579c8a94a4678af7a748eda8ada74" - integrity sha512-/aPowoolwa07k7/oM3aASneNeBGCmGQsc3ugN4u6s4C/+s5M64MFo/+djTdiwcbQlRfFElGuDXWzaWj6QgKObQ== - dependencies: - "@jest/types" "^27.5.1" - "@sinonjs/fake-timers" "^8.0.1" - "@types/node" "*" - jest-message-util "^27.5.1" - jest-mock "^27.5.1" - jest-util "^27.5.1" - "@jest/fake-timers@^29.7.0": version "29.7.0" resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-29.7.0.tgz#fd91bf1fffb16d7d0d24a426ab1a47a49881a565" @@ -2252,15 +2104,6 @@ jest-mock "^29.7.0" jest-util "^29.7.0" -"@jest/globals@^27.5.1": - version "27.5.1" - resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-27.5.1.tgz#7ac06ce57ab966566c7963431cef458434601b2b" - integrity sha512-ZEJNB41OBQQgGzgyInAv0UUfDDj3upmHydjieSxFvTRuZElrx7tXg/uVQ5hYVEwiXs3+aMsAeEc9X7xiSKCm4Q== - dependencies: - "@jest/environment" "^27.5.1" - "@jest/types" "^27.5.1" - expect "^27.5.1" - "@jest/globals@^29.7.0": version "29.7.0" resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-29.7.0.tgz#8d9290f9ec47ff772607fa864ca1d5a2efae1d4d" @@ -2271,37 +2114,6 @@ "@jest/types" "^29.6.3" jest-mock "^29.7.0" -"@jest/reporters@^27.5.1": - version "27.5.1" - resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-27.5.1.tgz#ceda7be96170b03c923c37987b64015812ffec04" - integrity sha512-cPXh9hWIlVJMQkVk84aIvXuBB4uQQmFqZiacloFuGiP3ah1sbCxCosidXFDfqG8+6fO1oR2dTJTlsOy4VFmUfw== - dependencies: - "@bcoe/v8-coverage" "^0.2.3" - "@jest/console" "^27.5.1" - "@jest/test-result" "^27.5.1" - "@jest/transform" "^27.5.1" - "@jest/types" "^27.5.1" - "@types/node" "*" - chalk "^4.0.0" - collect-v8-coverage "^1.0.0" - exit "^0.1.2" - glob "^7.1.2" - graceful-fs "^4.2.9" - istanbul-lib-coverage "^3.0.0" - istanbul-lib-instrument "^5.1.0" - istanbul-lib-report "^3.0.0" - istanbul-lib-source-maps "^4.0.0" - istanbul-reports "^3.1.3" - jest-haste-map "^27.5.1" - jest-resolve "^27.5.1" - jest-util "^27.5.1" - jest-worker "^27.5.1" - slash "^3.0.0" - source-map "^0.6.0" - string-length "^4.0.1" - terminal-link "^2.0.0" - v8-to-istanbul "^8.1.0" - "@jest/reporters@^29.7.0": version "29.7.0" resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-29.7.0.tgz#04b262ecb3b8faa83b0b3d321623972393e8f4c7" @@ -2339,15 +2151,6 @@ dependencies: "@sinclair/typebox" "^0.27.8" -"@jest/source-map@^27.5.1": - version "27.5.1" - resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-27.5.1.tgz#6608391e465add4205eae073b55e7f279e04e8cf" - integrity sha512-y9NIHUYF3PJRlHk98NdC/N1gl88BL08aQQgu4k4ZopQkCw9t9cV8mtl3TV8b/YCB8XaVTFrmUTAJvjsntDireg== - dependencies: - callsites "^3.0.0" - graceful-fs "^4.2.9" - source-map "^0.6.0" - "@jest/source-map@^29.6.3": version "29.6.3" resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-29.6.3.tgz#d90ba772095cf37a34a5eb9413f1b562a08554c4" @@ -2357,16 +2160,6 @@ callsites "^3.0.0" graceful-fs "^4.2.9" -"@jest/test-result@^27.5.1": - version "27.5.1" - resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-27.5.1.tgz#56a6585fa80f7cdab72b8c5fc2e871d03832f5bb" - integrity sha512-EW35l2RYFUcUQxFJz5Cv5MTOxlJIQs4I7gxzi2zVU7PJhOwfYq1MdC5nhSmYjX1gmMmLPvB3sIaC+BkcHRBfag== - dependencies: - "@jest/console" "^27.5.1" - "@jest/types" "^27.5.1" - "@types/istanbul-lib-coverage" "^2.0.0" - collect-v8-coverage "^1.0.0" - "@jest/test-result@^29.7.0": version "29.7.0" resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-29.7.0.tgz#8db9a80aa1a097bb2262572686734baed9b1657c" @@ -2377,16 +2170,6 @@ "@types/istanbul-lib-coverage" "^2.0.0" collect-v8-coverage "^1.0.0" -"@jest/test-sequencer@^27.5.1": - version "27.5.1" - resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-27.5.1.tgz#4057e0e9cea4439e544c6353c6affe58d095745b" - integrity sha512-LCheJF7WB2+9JuCS7VB/EmGIdQuhtqjRNI9A43idHv3E4KltCTsPsLxvdaubFHSYwY/fNjMWjl6vNRhDiN7vpQ== - dependencies: - "@jest/test-result" "^27.5.1" - graceful-fs "^4.2.9" - jest-haste-map "^27.5.1" - jest-runtime "^27.5.1" - "@jest/test-sequencer@^29.7.0": version "29.7.0" resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-29.7.0.tgz#6cef977ce1d39834a3aea887a1726628a6f072ce" @@ -2397,27 +2180,6 @@ jest-haste-map "^29.7.0" slash "^3.0.0" -"@jest/transform@^27.5.1": - version "27.5.1" - resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-27.5.1.tgz#6c3501dcc00c4c08915f292a600ece5ecfe1f409" - integrity sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw== - dependencies: - "@babel/core" "^7.1.0" - "@jest/types" "^27.5.1" - babel-plugin-istanbul "^6.1.1" - chalk "^4.0.0" - convert-source-map "^1.4.0" - fast-json-stable-stringify "^2.0.0" - graceful-fs "^4.2.9" - jest-haste-map "^27.5.1" - jest-regex-util "^27.5.1" - jest-util "^27.5.1" - micromatch "^4.0.4" - pirates "^4.0.4" - slash "^3.0.0" - source-map "^0.6.1" - write-file-atomic "^3.0.0" - "@jest/transform@^29.7.0": version "29.7.0" resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-29.7.0.tgz#df2dd9c346c7d7768b8a06639994640c642e284c" @@ -2439,17 +2201,6 @@ slash "^3.0.0" write-file-atomic "^4.0.2" -"@jest/types@^27.5.1": - version "27.5.1" - resolved "https://registry.yarnpkg.com/@jest/types/-/types-27.5.1.tgz#3c79ec4a8ba61c170bf937bcf9e98a9df175ec80" - integrity sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw== - dependencies: - "@types/istanbul-lib-coverage" "^2.0.0" - "@types/istanbul-reports" "^3.0.0" - "@types/node" "*" - "@types/yargs" "^16.0.0" - chalk "^4.0.0" - "@jest/types@^29.6.3": version "29.6.3" resolved "https://registry.yarnpkg.com/@jest/types/-/types-29.6.3.tgz#1131f8cf634e7e84c5e77bab12f052af585fba59" @@ -3007,21 +2758,6 @@ dependencies: playwright "1.44.0" -"@pmmmwh/react-refresh-webpack-plugin@^0.5.3": - version "0.5.4" - resolved "https://registry.yarnpkg.com/@pmmmwh/react-refresh-webpack-plugin/-/react-refresh-webpack-plugin-0.5.4.tgz#df0d0d855fc527db48aac93c218a0bf4ada41f99" - integrity sha512-zZbZeHQDnoTlt2AF+diQT0wsSXpvWiaIOZwBRdltNFhG1+I3ozyaw7U/nBiUwyJ0D+zwdXp0E3bWOl38Ag2BMw== - dependencies: - ansi-html-community "^0.0.8" - common-path-prefix "^3.0.0" - core-js-pure "^3.8.1" - error-stack-parser "^2.0.6" - find-up "^5.0.0" - html-entities "^2.1.0" - loader-utils "^2.0.0" - schema-utils "^3.0.0" - source-map "^0.7.3" - "@polka/url@^1.0.0-next.24": version "1.0.0-next.28" resolved "https://registry.yarnpkg.com/@polka/url/-/url-1.0.0-next.28.tgz#d45e01c4a56f143ee69c54dd6b12eade9e270a73" @@ -3047,43 +2783,6 @@ resolved "https://registry.yarnpkg.com/@remix-run/router/-/router-1.16.1.tgz#73db3c48b975eeb06d0006481bde4f5f2d17d1cd" integrity sha512-es2g3dq6Nb07iFxGk5GuHN20RwBZOsuDQN7izWIisUcv9r+d2C5jQxqmgkdebXgReWfiyUabcki6Fg77mSNrig== -"@rollup/plugin-babel@^5.2.0": - version "5.3.1" - resolved "https://registry.yarnpkg.com/@rollup/plugin-babel/-/plugin-babel-5.3.1.tgz#04bc0608f4aa4b2e4b1aebf284344d0f68fda283" - integrity sha512-WFfdLWU/xVWKeRQnKmIAQULUI7Il0gZnBIH/ZFO069wYIfPu+8zrfp/KMW0atmELoRDq8FbiP3VCss9MhCut7Q== - dependencies: - "@babel/helper-module-imports" "^7.10.4" - "@rollup/pluginutils" "^3.1.0" - -"@rollup/plugin-node-resolve@^11.2.1": - version "11.2.1" - resolved "https://registry.yarnpkg.com/@rollup/plugin-node-resolve/-/plugin-node-resolve-11.2.1.tgz#82aa59397a29cd4e13248b106e6a4a1880362a60" - integrity sha512-yc2n43jcqVyGE2sqV5/YCmocy9ArjVAP/BeXyTtADTBBX6V0e5UMqwO8CdQ0kzjb6zu5P1qMzsScCMRvE9OlVg== - dependencies: - "@rollup/pluginutils" "^3.1.0" - "@types/resolve" "1.17.1" - builtin-modules "^3.1.0" - deepmerge "^4.2.2" - is-module "^1.0.0" - resolve "^1.19.0" - -"@rollup/plugin-replace@^2.4.1": - version "2.4.2" - resolved "https://registry.yarnpkg.com/@rollup/plugin-replace/-/plugin-replace-2.4.2.tgz#a2d539314fbc77c244858faa523012825068510a" - integrity sha512-IGcu+cydlUMZ5En85jxHH4qj2hta/11BHq95iHEyb2sbgiN0eCdzvUcHw5gt9pBL5lTi4JDYJ1acCoMGpTvEZg== - dependencies: - "@rollup/pluginutils" "^3.1.0" - magic-string "^0.25.7" - -"@rollup/pluginutils@^3.1.0": - version "3.1.0" - resolved "https://registry.yarnpkg.com/@rollup/pluginutils/-/pluginutils-3.1.0.tgz#706b4524ee6dc8b103b3c995533e5ad680c02b9b" - integrity sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg== - dependencies: - "@types/estree" "0.0.39" - estree-walker "^1.0.1" - picomatch "^2.2.2" - "@rollup/rollup-android-arm-eabi@4.24.4": version "4.24.4" resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.24.4.tgz#c460b54c50d42f27f8254c435a4f3b3e01910bc8" @@ -3209,13 +2908,6 @@ resolved "https://registry.yarnpkg.com/@sinclair/typebox/-/typebox-0.27.8.tgz#6667fac16c436b5434a387a34dedb013198f6e6e" integrity sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA== -"@sinonjs/commons@^1.7.0": - version "1.8.3" - resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-1.8.3.tgz#3802ddd21a50a949b6721ddd72da36e67e7f1b2d" - integrity sha512-xkNcLAn/wZaX14RPlwizcKicDk9G3F8m2nU3L7Ukm5zBgTwiT0wsoFAHx9Jq56fJA1z/7uKGtCRu16sOUCLIHQ== - dependencies: - type-detect "4.0.8" - "@sinonjs/commons@^3.0.0": version "3.0.1" resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-3.0.1.tgz#1029357e44ca901a615585f6d27738dbc89084cd" @@ -3230,131 +2922,11 @@ dependencies: "@sinonjs/commons" "^3.0.0" -"@sinonjs/fake-timers@^8.0.1": - version "8.1.0" - resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-8.1.0.tgz#3fdc2b6cb58935b21bfb8d1625eb1300484316e7" - integrity sha512-OAPJUAtgeINhh/TAlUID4QTs53Njm7xzddaVlEs/SXwgtiD1tW22zAB/W1wdqfrpmikgaWQ9Fw6Ws+hsiRm5Vg== - dependencies: - "@sinonjs/commons" "^1.7.0" - "@supercharge/promise-pool@^3.2.0": version "3.2.0" resolved "https://registry.yarnpkg.com/@supercharge/promise-pool/-/promise-pool-3.2.0.tgz#a6ab4afdf798e453a6bb51c4ae340852e1266af8" integrity sha512-pj0cAALblTZBPtMltWOlZTQSLT07jIaFNeM8TWoJD1cQMgDB9mcMlVMoetiB35OzNJpqQ2b+QEtwiR9f20mADg== -"@surma/rollup-plugin-off-main-thread@^2.2.3": - version "2.2.3" - resolved "https://registry.yarnpkg.com/@surma/rollup-plugin-off-main-thread/-/rollup-plugin-off-main-thread-2.2.3.tgz#ee34985952ca21558ab0d952f00298ad2190c053" - integrity sha512-lR8q/9W7hZpMWweNiAKU7NQerBnzQQLvi8qnTDU/fxItPhtZVMbPV3lbCwjhIlNBe9Bbr5V+KHshvWmVSG9cxQ== - dependencies: - ejs "^3.1.6" - json5 "^2.2.0" - magic-string "^0.25.0" - string.prototype.matchall "^4.0.6" - -"@svgr/babel-plugin-add-jsx-attribute@^5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-5.4.0.tgz#81ef61947bb268eb9d50523446f9c638fb355906" - integrity sha512-ZFf2gs/8/6B8PnSofI0inYXr2SDNTDScPXhN7k5EqD4aZ3gi6u+rbmZHVB8IM3wDyx8ntKACZbtXSm7oZGRqVg== - -"@svgr/babel-plugin-remove-jsx-attribute@^5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-remove-jsx-attribute/-/babel-plugin-remove-jsx-attribute-5.4.0.tgz#6b2c770c95c874654fd5e1d5ef475b78a0a962ef" - integrity sha512-yaS4o2PgUtwLFGTKbsiAy6D0o3ugcUhWK0Z45umJ66EPWunAz9fuFw2gJuje6wqQvQWOTJvIahUwndOXb7QCPg== - -"@svgr/babel-plugin-remove-jsx-empty-expression@^5.0.1": - version "5.0.1" - resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-remove-jsx-empty-expression/-/babel-plugin-remove-jsx-empty-expression-5.0.1.tgz#25621a8915ed7ad70da6cea3d0a6dbc2ea933efd" - integrity sha512-LA72+88A11ND/yFIMzyuLRSMJ+tRKeYKeQ+mR3DcAZ5I4h5CPWN9AHyUzJbWSYp/u2u0xhmgOe0+E41+GjEueA== - -"@svgr/babel-plugin-replace-jsx-attribute-value@^5.0.1": - version "5.0.1" - resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-replace-jsx-attribute-value/-/babel-plugin-replace-jsx-attribute-value-5.0.1.tgz#0b221fc57f9fcd10e91fe219e2cd0dd03145a897" - integrity sha512-PoiE6ZD2Eiy5mK+fjHqwGOS+IXX0wq/YDtNyIgOrc6ejFnxN4b13pRpiIPbtPwHEc+NT2KCjteAcq33/F1Y9KQ== - -"@svgr/babel-plugin-svg-dynamic-title@^5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-svg-dynamic-title/-/babel-plugin-svg-dynamic-title-5.4.0.tgz#139b546dd0c3186b6e5db4fefc26cb0baea729d7" - integrity sha512-zSOZH8PdZOpuG1ZVx/cLVePB2ibo3WPpqo7gFIjLV9a0QsuQAzJiwwqmuEdTaW2pegyBE17Uu15mOgOcgabQZg== - -"@svgr/babel-plugin-svg-em-dimensions@^5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-svg-em-dimensions/-/babel-plugin-svg-em-dimensions-5.4.0.tgz#6543f69526632a133ce5cabab965deeaea2234a0" - integrity sha512-cPzDbDA5oT/sPXDCUYoVXEmm3VIoAWAPT6mSPTJNbQaBNUuEKVKyGH93oDY4e42PYHRW67N5alJx/eEol20abw== - -"@svgr/babel-plugin-transform-react-native-svg@^5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-transform-react-native-svg/-/babel-plugin-transform-react-native-svg-5.4.0.tgz#00bf9a7a73f1cad3948cdab1f8dfb774750f8c80" - integrity sha512-3eYP/SaopZ41GHwXma7Rmxcv9uRslRDTY1estspeB1w1ueZWd/tPlMfEOoccYpEMZU3jD4OU7YitnXcF5hLW2Q== - -"@svgr/babel-plugin-transform-svg-component@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-transform-svg-component/-/babel-plugin-transform-svg-component-5.5.0.tgz#583a5e2a193e214da2f3afeb0b9e8d3250126b4a" - integrity sha512-q4jSH1UUvbrsOtlo/tKcgSeiCHRSBdXoIoqX1pgcKK/aU3JD27wmMKwGtpB8qRYUYoyXvfGxUVKchLuR5pB3rQ== - -"@svgr/babel-preset@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@svgr/babel-preset/-/babel-preset-5.5.0.tgz#8af54f3e0a8add7b1e2b0fcd5a882c55393df327" - integrity sha512-4FiXBjvQ+z2j7yASeGPEi8VD/5rrGQk4Xrq3EdJmoZgz/tpqChpo5hgXDvmEauwtvOc52q8ghhZK4Oy7qph4ig== - dependencies: - "@svgr/babel-plugin-add-jsx-attribute" "^5.4.0" - "@svgr/babel-plugin-remove-jsx-attribute" "^5.4.0" - "@svgr/babel-plugin-remove-jsx-empty-expression" "^5.0.1" - "@svgr/babel-plugin-replace-jsx-attribute-value" "^5.0.1" - "@svgr/babel-plugin-svg-dynamic-title" "^5.4.0" - "@svgr/babel-plugin-svg-em-dimensions" "^5.4.0" - "@svgr/babel-plugin-transform-react-native-svg" "^5.4.0" - "@svgr/babel-plugin-transform-svg-component" "^5.5.0" - -"@svgr/core@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@svgr/core/-/core-5.5.0.tgz#82e826b8715d71083120fe8f2492ec7d7874a579" - integrity sha512-q52VOcsJPvV3jO1wkPtzTuKlvX7Y3xIcWRpCMtBF3MrteZJtBfQw/+u0B1BHy5ColpQc1/YVTrPEtSYIMNZlrQ== - dependencies: - "@svgr/plugin-jsx" "^5.5.0" - camelcase "^6.2.0" - cosmiconfig "^7.0.0" - -"@svgr/hast-util-to-babel-ast@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@svgr/hast-util-to-babel-ast/-/hast-util-to-babel-ast-5.5.0.tgz#5ee52a9c2533f73e63f8f22b779f93cd432a5461" - integrity sha512-cAaR/CAiZRB8GP32N+1jocovUtvlj0+e65TB50/6Lcime+EA49m/8l+P2ko+XPJ4dw3xaPS3jOL4F2X4KWxoeQ== - dependencies: - "@babel/types" "^7.12.6" - -"@svgr/plugin-jsx@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@svgr/plugin-jsx/-/plugin-jsx-5.5.0.tgz#1aa8cd798a1db7173ac043466d7b52236b369000" - integrity sha512-V/wVh33j12hGh05IDg8GpIUXbjAPnTdPTKuP4VNLggnwaHMPNQNae2pRnyTAILWCQdz5GyMqtO488g7CKM8CBA== - dependencies: - "@babel/core" "^7.12.3" - "@svgr/babel-preset" "^5.5.0" - "@svgr/hast-util-to-babel-ast" "^5.5.0" - svg-parser "^2.0.2" - -"@svgr/plugin-svgo@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@svgr/plugin-svgo/-/plugin-svgo-5.5.0.tgz#02da55d85320549324e201c7b2e53bf431fcc246" - integrity sha512-r5swKk46GuQl4RrVejVwpeeJaydoxkdwkM1mBKOgJLBUJPGaLci6ylg/IjhrRsREKDkr4kbMWdgOtbXEh0fyLQ== - dependencies: - cosmiconfig "^7.0.0" - deepmerge "^4.2.2" - svgo "^1.2.2" - -"@svgr/webpack@^5.5.0": - version "5.5.0" - resolved "https://registry.yarnpkg.com/@svgr/webpack/-/webpack-5.5.0.tgz#aae858ee579f5fa8ce6c3166ef56c6a1b381b640" - integrity sha512-DOBOK255wfQxguUta2INKkzPj6AIS6iafZYiYmHn6W3pHlycSRRlvWKCfLDG10fXfLWqE3DJHgRUOyJYmARa7g== - dependencies: - "@babel/core" "^7.12.3" - "@babel/plugin-transform-react-constant-elements" "^7.12.1" - "@babel/preset-env" "^7.12.1" - "@babel/preset-react" "^7.12.5" - "@svgr/core" "^5.5.0" - "@svgr/plugin-jsx" "^5.5.0" - "@svgr/plugin-svgo" "^5.5.0" - loader-utils "^2.0.0" - "@swc/core-darwin-arm64@1.8.0": version "1.8.0" resolved "https://registry.yarnpkg.com/@swc/core-darwin-arm64/-/core-darwin-arm64-1.8.0.tgz#4dc9e0918c9c2907f670fdb101f35574d4024892" @@ -3436,20 +3008,6 @@ dependencies: "@swc/counter" "^0.1.3" -"@testing-library/dom@^10.4.0": - version "10.4.0" - resolved "https://registry.yarnpkg.com/@testing-library/dom/-/dom-10.4.0.tgz#82a9d9462f11d240ecadbf406607c6ceeeff43a8" - integrity sha512-pemlzrSESWbdAloYml3bAJMEfNh1Z7EduzqPKprCH5S341frlpYnUEW0H72dLxa6IsYr+mPno20GiSm+h9dEdQ== - dependencies: - "@babel/code-frame" "^7.10.4" - "@babel/runtime" "^7.12.5" - "@types/aria-query" "^5.0.1" - aria-query "5.3.0" - chalk "^4.1.0" - dom-accessibility-api "^0.5.9" - lz-string "^1.5.0" - pretty-format "^27.0.2" - "@testing-library/dom@^8.0.0": version "8.20.1" resolved "https://registry.yarnpkg.com/@testing-library/dom/-/dom-8.20.1.tgz#2e52a32e46fc88369eef7eef634ac2a192decd9f" @@ -3499,22 +3057,12 @@ resolved "https://registry.yarnpkg.com/@testing-library/user-event/-/user-event-14.5.2.tgz#db7257d727c891905947bd1c1a99da20e03c2ebd" integrity sha512-YAh82Wh4TIrxYLmfGcixwD18oIjyC1pFQC2Y01F2lzV2HTMiYrI0nze0FD0ocB//CKS/7jIUgae+adPqxK5yCQ== -"@tootallnate/once@1": - version "1.1.2" - resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-1.1.2.tgz#ccb91445360179a04e7fe6aff78c00ffc1eeaf82" - integrity sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw== - -"@trysound/sax@0.2.0": - version "0.2.0" - resolved "https://registry.yarnpkg.com/@trysound/sax/-/sax-0.2.0.tgz#cccaab758af56761eb7bf37af6f03f326dd798ad" - integrity sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA== - "@types/aria-query@^5.0.1": version "5.0.4" resolved "https://registry.yarnpkg.com/@types/aria-query/-/aria-query-5.0.4.tgz#1a31c3d378850d2778dabb6374d036dcba4ba708" integrity sha512-rfT93uj5s0PRL7EzccGMs3brplhcrghnDoV26NqKhCAS1hVo+WdNsPvE/yb6ilfr5hi2MEk6d5EWJTKdxg8jVw== -"@types/babel__core@^7.0.0", "@types/babel__core@^7.1.14": +"@types/babel__core@^7.1.14": version "7.1.18" resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.18.tgz#1a29abcc411a9c05e2094c98f9a1b7da6cdf49f8" integrity sha512-S7unDjm/C7z2A2R9NzfKCK1I+BAALDtxEmsJBwlB3EzNfb929ykjL++1CK9LO++EIp2fQrC8O+BwjKvz6UeDyQ== @@ -3540,7 +3088,7 @@ "@babel/parser" "^7.1.0" "@babel/types" "^7.0.0" -"@types/babel__traverse@*", "@types/babel__traverse@^7.0.4", "@types/babel__traverse@^7.0.6": +"@types/babel__traverse@*", "@types/babel__traverse@^7.0.6": version "7.14.2" resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.14.2.tgz#ffcd470bbb3f8bf30481678fb5502278ca833a43" integrity sha512-K2waXdXBi2302XUdcHcR1jCeU0LL4TD9HRs/gk0N2Xvrht+G/BfJa4QObBQZfhMdxiCpV3COl5Nfq4uKTeTnJA== @@ -3555,21 +3103,6 @@ "@types/connect" "*" "@types/node" "*" -"@types/bonjour@^3.5.9": - version "3.5.10" - resolved "https://registry.yarnpkg.com/@types/bonjour/-/bonjour-3.5.10.tgz#0f6aadfe00ea414edc86f5d106357cda9701e275" - integrity sha512-p7ienRMiS41Nu2/igbJxxLDWrSZ0WxM8UQgCeO9KhoVF7cOVFkrKsiDr1EsJIla8vV3oEEjGcz11jc5yimhzZw== - dependencies: - "@types/node" "*" - -"@types/connect-history-api-fallback@^1.3.5": - version "1.3.5" - resolved "https://registry.yarnpkg.com/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.3.5.tgz#d1f7a8a09d0ed5a57aee5ae9c18ab9b803205dae" - integrity sha512-h8QJa8xSb1WD4fpKBDcATDNGXghFj6/3GRWG6dhmRcu0RX1Ubasur2Uvx5aeEwlf0MwblEC2bMzzMQntxnw/Cw== - dependencies: - "@types/express-serve-static-core" "*" - "@types/node" "*" - "@types/connect@*": version "3.4.35" resolved "https://registry.yarnpkg.com/@types/connect/-/connect-3.4.35.tgz#5fcf6ae445e4021d1fc2219a4873cc73a3bb2ad1" @@ -3614,7 +3147,7 @@ "@types/eslint" "*" "@types/estree" "*" -"@types/eslint@*", "@types/eslint@^7.28.2": +"@types/eslint@*": version "7.29.0" resolved "https://registry.yarnpkg.com/@types/eslint/-/eslint-7.29.0.tgz#e56ddc8e542815272720bb0b4ccc2aff9c3e1c78" integrity sha512-VNcvioYDH8/FxaeTKkM4/TiTwt6pBV9E3OfGmvaw8tPl0rrHCJ4Ll15HRT+pMiFAf/MLQvAzC+6RzUMEL9Ceng== @@ -3627,11 +3160,6 @@ resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.0.tgz#5fb2e536c1ae9bf35366eed879e827fa59ca41c2" integrity sha512-WulqXMDUTYAXCjZnk6JtIHPigp55cVtDgDrO2gHRwhyJto21+1zbVCtOYB2L1F9w4qCQ0rOGWBnBe0FNTiEJIQ== -"@types/estree@0.0.39": - version "0.0.39" - resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.39.tgz#e177e699ee1b8c22d23174caaa7422644389509f" - integrity sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw== - "@types/estree@1.0.6": version "1.0.6" resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.6.tgz#628effeeae2064a1b4e79f78e81d87b7e5fc7b50" @@ -3642,7 +3170,7 @@ resolved "https://registry.yarnpkg.com/@types/events/-/events-3.0.0.tgz#2862f3f58a9a7f7c3e78d79f130dd4d71c25c2a7" integrity sha512-EaObqwIvayI5a8dCzhFrjKzVwKLxjoG9T6Ppd5CEo07LRKfQ8Yokw54r5+Wq7FaBQ+yXRvQAYPrHwya1/UFt9g== -"@types/express-serve-static-core@*", "@types/express-serve-static-core@^4.17.33": +"@types/express-serve-static-core@^4.17.33": version "4.17.39" resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-4.17.39.tgz#2107afc0a4b035e6cb00accac3bdf2d76ae408c8" integrity sha512-BiEUfAiGCOllomsRAZOiMFP7LAnrifHpt56pc4Z7l9K6ACyN06Ns1JLMBxwkfLOjJRlSf06NwWsT7yzfpaVpyQ== @@ -3652,7 +3180,7 @@ "@types/range-parser" "*" "@types/send" "*" -"@types/express@*", "@types/express@^4.17.13", "@types/express@^4.17.20": +"@types/express@^4.17.20": version "4.17.20" resolved "https://registry.yarnpkg.com/@types/express/-/express-4.17.20.tgz#e7c9b40276d29e38a4e3564d7a3d65911e2aa433" integrity sha512-rOaqlkgEvOW495xErXMsmyX3WKBInbhG5eqojXYi3cGUaLoRDlXa5d52fkfWZT963AZ3v2eZ4MbKE6WpDAGVsw== @@ -3662,13 +3190,6 @@ "@types/qs" "*" "@types/serve-static" "*" -"@types/graceful-fs@^4.1.2": - version "4.1.5" - resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.5.tgz#21ffba0d98da4350db64891f92a9e5db3cdb4e15" - integrity sha512-anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw== - dependencies: - "@types/node" "*" - "@types/graceful-fs@^4.1.3": version "4.1.9" resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.9.tgz#2a06bc0f68a20ab37b3e36aa238be6abdf49e8b4" @@ -3684,18 +3205,6 @@ "@types/react" "*" hoist-non-react-statics "^3.3.0" -"@types/html-minifier-terser@^6.0.0": - version "6.1.0" - resolved "https://registry.yarnpkg.com/@types/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz#4fc33a00c1d0c16987b1a20cf92d20614c55ac35" - integrity sha512-oh/6byDPnL1zeNXFrDXFLyZjkr1MsBG667IM792caf1L2UPOOMf65NFzjUH/ltyfwjAGfs1rsX1eftK0jC/KIg== - -"@types/http-proxy@^1.17.8": - version "1.17.8" - resolved "https://registry.yarnpkg.com/@types/http-proxy/-/http-proxy-1.17.8.tgz#968c66903e7e42b483608030ee85800f22d03f55" - integrity sha512-5kPLG5BKpWYkw/LVOGWpiq3nEVqxiN32rTgI53Sk12/xHFQ2rG3ehI9IO+O3W2QoKeyB92dJkoka8SUm6BX1pA== - dependencies: - "@types/node" "*" - "@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0", "@types/istanbul-lib-coverage@^2.0.1": version "2.0.3" resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz#4ba8ddb720221f432e443bd5f9117fd22cfd4762" @@ -3715,14 +3224,6 @@ dependencies: "@types/istanbul-lib-report" "*" -"@types/jest@^29.5.14": - version "29.5.14" - resolved "https://registry.yarnpkg.com/@types/jest/-/jest-29.5.14.tgz#2b910912fa1d6856cadcd0c1f95af7df1d6049e5" - integrity sha512-ZN+4sdnLUbo8EVvVc2ao0GFW6oVrQRPn4K2lglySj7APvSrgzxHiNNK99us4WDMi57xxA2yggblIAMNhXOotLQ== - dependencies: - expect "^29.0.0" - pretty-format "^29.0.0" - "@types/js-cookie@^2.2.6": version "2.2.7" resolved "https://registry.yarnpkg.com/@types/js-cookie/-/js-cookie-2.2.7.tgz#226a9e31680835a6188e887f3988e60c04d3f6a3" @@ -3733,7 +3234,7 @@ resolved "https://registry.yarnpkg.com/@types/js-levenshtein/-/js-levenshtein-1.1.3.tgz#a6fd0bdc8255b274e5438e0bfb25f154492d1106" integrity sha512-jd+Q+sD20Qfu9e2aEXogiO3vpOC1PYJOUdyN9gvs4Qrvkg4wF43L5OhqrPeokdv8TL0/mXoYfpkcoGZMNN2pkQ== -"@types/json-schema@*", "@types/json-schema@^7.0.4", "@types/json-schema@^7.0.5", "@types/json-schema@^7.0.8", "@types/json-schema@^7.0.9": +"@types/json-schema@*", "@types/json-schema@^7.0.8", "@types/json-schema@^7.0.9": version "7.0.12" resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.12.tgz#d70faba7039d5fca54c83c7dbab41051d2b6f6cb" integrity sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA== @@ -3819,11 +3320,6 @@ resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0" integrity sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA== -"@types/prettier@^2.1.5": - version "2.4.4" - resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.4.4.tgz#5d9b63132df54d8909fce1c3f8ca260fdd693e17" - integrity sha512-ReVR2rLTV1kvtlWFyuot+d1pkpG2Fw/XKE3PDAdj57rbM97ttSp9JZ2UsP+2EHTylra9cUf6JA7tGwW1INzUrA== - "@types/prop-types@*", "@types/prop-types@^15.7.11": version "15.7.11" resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.11.tgz#2596fb352ee96a1379c657734d4b913a613ad563" @@ -3834,11 +3330,6 @@ resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.13.tgz#2af91918ee12d9d32914feb13f5326658461b451" integrity sha512-hCZTSvwbzWGvhqxp/RqVqwU999pBf2vp7hzIjiYOsl8wqOmUxkQ6ddw1cV3l8811+kdUFus/q4d1Y3E3SyEifA== -"@types/q@^1.5.1": - version "1.5.4" - resolved "https://registry.yarnpkg.com/@types/q/-/q-1.5.4.tgz#15925414e0ad2cd765bfef58842f7e26a7accb24" - integrity sha512-1HcDas8SEj4z1Wc696tH56G8OlRaH/sqZOynNNB+HF0WOeXPaxTtbYzJY2oEfiUxjSKjhCKr+MvR7dCHcEelug== - "@types/qs@*": version "6.9.7" resolved "https://registry.yarnpkg.com/@types/qs/-/qs-6.9.7.tgz#63bb7d067db107cc1e457c303bc25d511febf6cb" @@ -3901,18 +3392,6 @@ "@types/prop-types" "*" csstype "^3.0.2" -"@types/resolve@1.17.1": - version "1.17.1" - resolved "https://registry.yarnpkg.com/@types/resolve/-/resolve-1.17.1.tgz#3afd6ad8967c77e4376c598a82ddd58f46ec45d6" - integrity sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw== - dependencies: - "@types/node" "*" - -"@types/retry@^0.12.0": - version "0.12.1" - resolved "https://registry.yarnpkg.com/@types/retry/-/retry-0.12.1.tgz#d8f1c0d0dc23afad6dc16a9e993a0865774b4065" - integrity sha512-xoDlM2S4ortawSWORYqsdU+2rxdh4LRW9ytc3zmT37RIKQh6IHyKwwtKhKis9ah8ol07DCkZxPt8BBvPjC6v4g== - "@types/scheduler@*": version "0.16.2" resolved "https://registry.yarnpkg.com/@types/scheduler/-/scheduler-0.16.2.tgz#1a62f89525723dde24ba1b01b092bf5df8ad4d39" @@ -3931,13 +3410,6 @@ "@types/mime" "^1" "@types/node" "*" -"@types/serve-index@^1.9.1": - version "1.9.1" - resolved "https://registry.yarnpkg.com/@types/serve-index/-/serve-index-1.9.1.tgz#1b5e85370a192c01ec6cec4735cf2917337a6278" - integrity sha512-d/Hs3nWDxNL2xAczmOVZNj92YZCS6RGxfBPjKzuu/XirCgXdpKEb88dYNbrYGint6IVWLNP+yonwVAuRC0T2Dg== - dependencies: - "@types/express" "*" - "@types/serve-static@*": version "1.13.10" resolved "https://registry.yarnpkg.com/@types/serve-static/-/serve-static-1.13.10.tgz#f5e0ce8797d2d7cc5ebeda48a52c96c4fa47a8d9" @@ -3953,13 +3425,6 @@ dependencies: "@types/node" "*" -"@types/sockjs@^0.3.33": - version "0.3.33" - resolved "https://registry.yarnpkg.com/@types/sockjs/-/sockjs-0.3.33.tgz#570d3a0b99ac995360e3136fd6045113b1bd236f" - integrity sha512-f0KEEe05NvUnat+boPTZ0dgaLZ4SfSouXUgv5noUiefG2ajgKjmETo9ZJyuqsl7dfl2aHlLJUiki6B4ZYldiiw== - dependencies: - "@types/node" "*" - "@types/ssh2-streams@*": version "0.1.9" resolved "https://registry.yarnpkg.com/@types/ssh2-streams/-/ssh2-streams-0.1.9.tgz#8ca51b26f08750a780f82ee75ff18d7160c07a87" @@ -3992,11 +3457,6 @@ resolved "https://registry.yarnpkg.com/@types/symlink-or-copy/-/symlink-or-copy-1.2.0.tgz#4151a81b4052c80bc2becbae09f3a9ec010a9c7a" integrity sha512-Lja2xYuuf2B3knEsga8ShbOdsfNOtzT73GyJmZyY7eGl2+ajOqrs8yM5ze0fsSoYwvA6bw7/Qr7OZ7PEEmYwWg== -"@types/trusted-types@^2.0.2": - version "2.0.2" - resolved "https://registry.yarnpkg.com/@types/trusted-types/-/trusted-types-2.0.2.tgz#fc25ad9943bcac11cceb8168db4f275e0e72e756" - integrity sha512-F5DIZ36YVLE+PN+Zwws4kJogq47hNgX3Nx6WyDJ3kcplxyke3XIzB8uK5n/Lpm1HBsbGzd6nmGehL8cPekP+Tg== - "@types/use-sync-external-store@^0.0.3": version "0.0.3" resolved "https://registry.yarnpkg.com/@types/use-sync-external-store/-/use-sync-external-store-0.0.3.tgz#b6725d5f4af24ace33b36fafd295136e75509f43" @@ -4012,25 +3472,11 @@ resolved "https://registry.yarnpkg.com/@types/validator/-/validator-13.11.8.tgz#bb1162ec0fe6f87c95ca812f15b996fcc5e1e2dc" integrity sha512-c/hzNDBh7eRF+KbCf+OoZxKbnkpaK/cKp9iLQWqB7muXtM+MtL9SUUH8vCFcLn6dH1Qm05jiexK0ofWY7TfOhQ== -"@types/ws@^8.2.2": - version "8.5.1" - resolved "https://registry.yarnpkg.com/@types/ws/-/ws-8.5.1.tgz#79136958b48bc73d5165f286707ceb9f04471599" - integrity sha512-UxlLOfkuQnT2YSBCNq0x86SGOUxas6gAySFeDe2DcnEnA8655UIPoCDorWZCugcvKIL8IUI4oueUfJ1hhZSE2A== - dependencies: - "@types/node" "*" - "@types/yargs-parser@*": version "20.2.1" resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-20.2.1.tgz#3b9ce2489919d9e4fea439b76916abc34b2df129" integrity sha512-7tFImggNeNBVMsn0vLrpn1H1uPrUBdnARPTpZoitY37ZrdJREzf7I16tMrlK3hen349gr1NYh8CmZQa7CTG6Aw== -"@types/yargs@^16.0.0": - version "16.0.4" - resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-16.0.4.tgz#26aad98dd2c2a38e421086ea9ad42b9e51642977" - integrity sha512-T8Yc9wt/5LbJyCaLiHPReJa0kApcIgJ7Bn735GjItUfh08Z1pJvu8QZqb9s+mMvKV6WUQRV7K2R46YbjMXTTJw== - dependencies: - "@types/yargs-parser" "*" - "@types/yargs@^17.0.8": version "17.0.33" resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-17.0.33.tgz#8c32303da83eec050a84b3c7ae7b9f922d13e32d" @@ -4445,11 +3891,6 @@ resolved "https://registry.yarnpkg.com/@zxing/text-encoding/-/text-encoding-0.9.0.tgz#fb50ffabc6c7c66a0c96b4c03e3d9be74864b70b" integrity sha512-U/4aVJ2mxI0aDNI8Uq0wEhMgY+u4CNtEb0om3+y3+niDAsoTCOB33UF0sxpzqzdqXLqmvc+vZyAt4O8pPdfkwA== -abab@^2.0.3, abab@^2.0.5: - version "2.0.5" - resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.5.tgz#c0b678fb32d60fc1219c784d6a826fe385aeb79a" - integrity sha512-9IK9EadsbHo6jLWIpxpR6pL0sazTXV6+SQv25ZB+F7Bj9mJNaOc4nCRabwd5M/JwmUa8idz6Eci6eKfJryPs6Q== - abort-controller@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/abort-controller/-/abort-controller-3.0.0.tgz#eaf54d53b62bae4138e809ca225c8439a6efb392" @@ -4457,7 +3898,7 @@ abort-controller@^3.0.0: dependencies: event-target-shim "^5.0.0" -accepts@~1.3.4, accepts@~1.3.5, accepts@~1.3.8: +accepts@~1.3.8: version "1.3.8" resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.8.tgz#0bf0be125b67014adcb0b0921e62db7bffe16b2e" integrity sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw== @@ -4465,14 +3906,6 @@ accepts@~1.3.4, accepts@~1.3.5, accepts@~1.3.8: mime-types "~2.1.34" negotiator "0.6.3" -acorn-globals@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-6.0.0.tgz#46cdd39f0f8ff08a876619b55f5ac8a6dc770b45" - integrity sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg== - dependencies: - acorn "^7.1.1" - acorn-walk "^7.1.1" - acorn-import-assertions@^1.9.0: version "1.9.0" resolved "https://registry.yarnpkg.com/acorn-import-assertions/-/acorn-import-assertions-1.9.0.tgz#507276249d684797c84e0734ef84860334cfb1ac" @@ -4483,43 +3916,11 @@ acorn-jsx@^5.3.2: resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== -acorn-node@^1.6.1: - version "1.8.2" - resolved "https://registry.yarnpkg.com/acorn-node/-/acorn-node-1.8.2.tgz#114c95d64539e53dede23de8b9d96df7c7ae2af8" - integrity sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A== - dependencies: - acorn "^7.0.0" - acorn-walk "^7.0.0" - xtend "^4.0.2" - -acorn-walk@^7.0.0, acorn-walk@^7.1.1: - version "7.2.0" - resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-7.2.0.tgz#0de889a601203909b0fbe07b8938dc21d2e967bc" - integrity sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA== - -acorn@^7.0.0, acorn@^7.1.1: - version "7.4.1" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" - integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== - -acorn@^8.2.4, acorn@^8.5.0, acorn@^8.7.1, acorn@^8.9.0: +acorn@^8.5.0, acorn@^8.7.1, acorn@^8.9.0: version "8.10.0" resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.10.0.tgz#8be5b3907a67221a81ab23c7889c4c5526b62ec5" integrity sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw== -address@^1.0.1, address@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/address/-/address-1.1.2.tgz#bf1116c9c758c51b7a933d296b72c221ed9428b6" - integrity sha512-aT6camzM4xEA54YVJYSqxz1kv4IHnQZRtThJJHhUMRExaU5spC7jX5ugSwTaTgJliIgs4VhZOk7htClvQ/LmRA== - -adjust-sourcemap-loader@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/adjust-sourcemap-loader/-/adjust-sourcemap-loader-4.0.0.tgz#fc4a0fd080f7d10471f30a7320f25560ade28c99" - integrity sha512-OXwN5b9pCUXNQHJpwwD2qP40byEmSgzj8B4ydSN0uMNYWiFmJ6x6KwUllMmfk8Rwu/HJDFR7U8ubsWBoN0Xp0A== - dependencies: - loader-utils "^2.0.0" - regex-parser "^2.2.11" - agent-base@6: version "6.0.2" resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-6.0.2.tgz#49fff58577cfee3f37176feab4c22e00f86d7f77" @@ -4527,34 +3928,19 @@ agent-base@6: dependencies: debug "4" -aggregate-error@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.1.0.tgz#92670ff50f5359bdb7a3e0d40d0ec30c5737687a" - integrity sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA== - dependencies: - clean-stack "^2.0.0" - indent-string "^4.0.0" - -ajv-formats@2.1.1, ajv-formats@^2.1.1: +ajv-formats@2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/ajv-formats/-/ajv-formats-2.1.1.tgz#6e669400659eb74973bbf2e33327180a0996b520" integrity sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA== dependencies: ajv "^8.0.0" -ajv-keywords@^3.4.1, ajv-keywords@^3.5.2: +ajv-keywords@^3.5.2: version "3.5.2" resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.5.2.tgz#31f29da5ab6e00d1c2d329acf7b5929614d5014d" integrity sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ== -ajv-keywords@^5.0.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-5.1.0.tgz#69d4d385a4733cdbeab44964a1170a88f87f0e16" - integrity sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw== - dependencies: - fast-deep-equal "^3.1.3" - -ajv@8.12.0, ajv@^8.0.0, ajv@^8.6.0, ajv@^8.8.0: +ajv@8.12.0, ajv@^8.0.0: version "8.12.0" resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.12.0.tgz#d1a0527323e22f53562c567c00991577dfbe19d1" integrity sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA== @@ -4564,7 +3950,7 @@ ajv@8.12.0, ajv@^8.0.0, ajv@^8.6.0, ajv@^8.8.0: require-from-string "^2.0.2" uri-js "^4.2.2" -ajv@^6.12.2, ajv@^6.12.3, ajv@^6.12.4, ajv@^6.12.5: +ajv@^6.12.3, ajv@^6.12.4, ajv@^6.12.5: version "6.12.6" resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== @@ -4584,7 +3970,7 @@ ansi-colors@4.1.3, ansi-colors@^4.1.1, ansi-colors@^4.1.3: resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.3.tgz#37611340eb2243e70cc604cad35d63270d48781b" integrity sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw== -ansi-escapes@^4.2.1, ansi-escapes@^4.3.1: +ansi-escapes@^4.2.1: version "4.3.2" resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz#6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e" integrity sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ== @@ -4596,11 +3982,6 @@ ansi-escapes@^6.2.0: resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-6.2.1.tgz#76c54ce9b081dad39acec4b5d53377913825fb0f" integrity sha512-4nJ3yixlEthEJ9Rk4vPcdBRkZvQZlYyu8j4/Mqz5sgIkddmEnH2Yj2ZrnP9S3tQOvSNRUIgVNF/1yPpRAGNRig== -ansi-html-community@^0.0.8: - version "0.0.8" - resolved "https://registry.yarnpkg.com/ansi-html-community/-/ansi-html-community-0.0.8.tgz#69fbc4d6ccbe383f9736934ae34c3f8290f1bf41" - integrity sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw== - ansi-regex@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" @@ -4677,11 +4058,6 @@ archiver@^5.3.2: tar-stream "^2.2.0" zip-stream "^4.1.0" -arg@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/arg/-/arg-5.0.1.tgz#eb0c9a8f77786cad2af8ff2b862899842d7b6adb" - integrity sha512-e0hDa9H2Z9AwFkk2qDlwhoMYE4eToKarchkQHovNdLTCYMHZHeRjI71crOh+dio4K6u1IcwubQqo79Ga4CyAQA== - argparse@^1.0.7: version "1.0.10" resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" @@ -4701,13 +4077,6 @@ aria-query@5.1.3: dependencies: deep-equal "^2.0.5" -aria-query@5.3.0: - version "5.3.0" - resolved "https://registry.yarnpkg.com/aria-query/-/aria-query-5.3.0.tgz#650c569e41ad90b51b3d7df5e5eed1c7549c103e" - integrity sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A== - dependencies: - dequal "^2.0.3" - aria-query@^4.2.2: version "4.2.2" resolved "https://registry.yarnpkg.com/aria-query/-/aria-query-4.2.2.tgz#0d2ca6c9aceb56b8977e9fed6aed7e15bbd2f83b" @@ -4739,11 +4108,6 @@ array-flatten@1.1.1: resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" integrity sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg== -array-flatten@^2.1.0: - version "2.1.2" - resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-2.1.2.tgz#24ef80a28c1a893617e2149b0c6d0d788293b099" - integrity sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ== - array-includes@^3.1.3, array-includes@^3.1.4: version "3.1.4" resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.4.tgz#f5b493162c760f3539631f005ba2bb46acb45ba9" @@ -4794,11 +4158,6 @@ arrify@^2.0.1: resolved "https://registry.yarnpkg.com/arrify/-/arrify-2.0.1.tgz#c9655e9331e0abcd588d2a7cad7e9956f66701fa" integrity sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug== -asap@~2.0.6: - version "2.0.6" - resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" - integrity sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY= - asn1@^0.2.6, asn1@~0.2.3: version "0.2.6" resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.6.tgz#0d3a7bb6e64e02a90c0303b31f292868ea09a08d" @@ -4826,14 +4185,7 @@ async-lock@^1.4.0, async-lock@^1.4.1: resolved "https://registry.yarnpkg.com/async-lock/-/async-lock-1.4.1.tgz#56b8718915a9b68b10fce2f2a9a3dddf765ef53f" integrity sha512-Az2ZTpuytrtqENulXwO3GGv1Bztugx6TT37NIo7imr/Qo0gsYiGtSdBa2B6fsXhTpVZDNfu1Qn3pk531e3q+nQ== -async@^2.6.2: - version "2.6.4" - resolved "https://registry.yarnpkg.com/async/-/async-2.6.4.tgz#706b7ff6084664cd7eae713f6f965433b5504221" - integrity sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA== - dependencies: - lodash "^4.17.14" - -async@^3.2.3, async@^3.2.4: +async@^3.2.4: version "3.2.5" resolved "https://registry.yarnpkg.com/async/-/async-3.2.5.tgz#ebd52a8fdaf7a2289a24df399f8d8485c8a46b66" integrity sha512-baNZyqaaLhyLVKm/DlvdW051MSgO6b8eVfIezl9E5PqWxFgzLm/wQntEW4zOytVburDEr0JlALEpdOFwvErLsg== @@ -4843,28 +4195,11 @@ asynckit@^0.4.0: resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" integrity sha1-x57Zf380y48robyXkLzDZkdLS3k= -at-least-node@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/at-least-node/-/at-least-node-1.0.0.tgz#602cd4b46e844ad4effc92a8011a3c46e0238dc2" - integrity sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg== - atomic-sleep@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/atomic-sleep/-/atomic-sleep-1.0.0.tgz#eb85b77a601fc932cfe432c5acd364a9e2c9075b" integrity sha512-kNOjDqAh7px0XWNI+4QbzoiR/nTkHAWNud2uvnJquD1/x5a7EQZMJT0AczqK0Qn67oY/TTQ1LbUKajZpp3I9tQ== -autoprefixer@^10.4.2: - version "10.4.13" - resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-10.4.13.tgz#b5136b59930209a321e9fa3dca2e7c4d223e83a8" - integrity sha512-49vKpMqcZYsJjwotvt4+h/BCjJVnhGwcLpDt5xkcaOG3eLrG/HUYLagrihYsQ+qrIBgIzX1Rw7a6L8I/ZA1Atg== - dependencies: - browserslist "^4.21.4" - caniuse-lite "^1.0.30001426" - fraction.js "^4.2.0" - normalize-range "^0.1.2" - picocolors "^1.0.0" - postcss-value-parser "^4.2.0" - available-typed-arrays@^1.0.7: version "1.0.7" resolved "https://registry.yarnpkg.com/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz#a5cc375d6a03c2efc87a553f3e0b1522def14846" @@ -4902,20 +4237,6 @@ b4a@^1.6.4: resolved "https://registry.yarnpkg.com/b4a/-/b4a-1.6.4.tgz#ef1c1422cae5ce6535ec191baeed7567443f36c9" integrity sha512-fpWrvyVHEKyeEvbKZTVOeZF3VSKKWtJxFIxX/jaVPf+cLbGUSitjb49pHLqPV2BUNNZ0LcoeEGfE/YCpyDYHIw== -babel-jest@^27.4.2, babel-jest@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-27.5.1.tgz#a1bf8d61928edfefd21da27eb86a695bfd691444" - integrity sha512-cdQ5dXjGRd0IBRATiQ4mZGlGlRE8kJpjPOixdNRdT+m3UcNqmYWN6rK6nvtXYfY3D76cb8s/O1Ss8ea24PIwcg== - dependencies: - "@jest/transform" "^27.5.1" - "@jest/types" "^27.5.1" - "@types/babel__core" "^7.1.14" - babel-plugin-istanbul "^6.1.1" - babel-preset-jest "^27.5.1" - chalk "^4.0.0" - graceful-fs "^4.2.9" - slash "^3.0.0" - babel-jest@^29.7.0: version "29.7.0" resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-29.7.0.tgz#f4369919225b684c56085998ac63dbd05be020d5" @@ -4929,16 +4250,6 @@ babel-jest@^29.7.0: graceful-fs "^4.2.9" slash "^3.0.0" -babel-loader@^8.2.3: - version "8.3.0" - resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-8.3.0.tgz#124936e841ba4fe8176786d6ff28add1f134d6a8" - integrity sha512-H8SvsMF+m9t15HNLMipppzkC+Y2Yq+v3SonZyU70RBL/h1gxPkH08Ot8pEE9Z4Kd+czyWJClmFS8qzIP9OZ04Q== - dependencies: - find-cache-dir "^3.3.1" - loader-utils "^2.0.0" - make-dir "^3.1.0" - schema-utils "^2.6.5" - babel-plugin-dynamic-import-node@^2.3.3: version "2.3.3" resolved "https://registry.yarnpkg.com/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz#84fda19c976ec5c6defef57f9427b3def66e17a3" @@ -4957,16 +4268,6 @@ babel-plugin-istanbul@^6.1.1: istanbul-lib-instrument "^5.0.4" test-exclude "^6.0.0" -babel-plugin-jest-hoist@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.5.1.tgz#9be98ecf28c331eb9f5df9c72d6f89deb8181c2e" - integrity sha512-50wCwD5EMNW4aRpOwtqzyZHIewTYNxLA4nhB+09d8BIssfNfzBRhkBIHiaPv1Si226TQSvp8gxAJm2iY2qs2hQ== - dependencies: - "@babel/template" "^7.3.3" - "@babel/types" "^7.3.3" - "@types/babel__core" "^7.0.0" - "@types/babel__traverse" "^7.0.6" - babel-plugin-jest-hoist@^29.6.3: version "29.6.3" resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.6.3.tgz#aadbe943464182a8922c3c927c3067ff40d24626" @@ -4986,11 +4287,6 @@ babel-plugin-macros@^3.1.0: cosmiconfig "^7.0.0" resolve "^1.19.0" -babel-plugin-named-asset-import@^0.3.8: - version "0.3.8" - resolved "https://registry.yarnpkg.com/babel-plugin-named-asset-import/-/babel-plugin-named-asset-import-0.3.8.tgz#6b7fa43c59229685368683c28bc9734f24524cc2" - integrity sha512-WXiAc++qo7XcJ1ZnTYGtLxmBCVbddAml3CEXgWaBzNzLNoxtQ8AiGEFDMOhot9XjTCQbvP5E77Fj9Gk924f00Q== - babel-plugin-polyfill-corejs2@^0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.0.tgz#407082d0d355ba565af24126fb6cb8e9115251fd" @@ -5038,14 +4334,6 @@ babel-preset-current-node-syntax@^1.0.0: "@babel/plugin-syntax-optional-chaining" "^7.8.3" "@babel/plugin-syntax-top-level-await" "^7.8.3" -babel-preset-jest@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-27.5.1.tgz#91f10f58034cb7989cb4f962b69fa6eef6a6bc81" - integrity sha512-Nptf2FzlPCWYuJg41HBqXVT8ym6bXOevuCTbhxlUpjwtysGaIWFvDEjp4y+G7fl13FgOdjs7P/DmErqH7da0Ag== - dependencies: - babel-plugin-jest-hoist "^27.5.1" - babel-preset-current-node-syntax "^1.0.0" - babel-preset-jest@^29.6.3: version "29.6.3" resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-29.6.3.tgz#fa05fa510e7d493896d7b0dd2033601c840f171c" @@ -5131,11 +4419,6 @@ basic-auth@~2.0.1: dependencies: safe-buffer "5.1.2" -batch@0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/batch/-/batch-0.6.1.tgz#dc34314f4e679318093fc760272525f94bf25c16" - integrity sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY= - bcrypt-pbkdf@^1.0.0, bcrypt-pbkdf@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e" @@ -5150,21 +4433,6 @@ better-path-resolve@1.0.0: dependencies: is-windows "^1.0.0" -bfj@^7.0.2: - version "7.0.2" - resolved "https://registry.yarnpkg.com/bfj/-/bfj-7.0.2.tgz#1988ce76f3add9ac2913fd8ba47aad9e651bfbb2" - integrity sha512-+e/UqUzwmzJamNF50tBV6tZPTORow7gQ96iFow+8b562OdMpEK0BcJEq2OSPEDmAbSMBQ7PKZ87ubFkgxpYWgw== - dependencies: - bluebird "^3.5.5" - check-types "^11.1.1" - hoopy "^0.1.4" - tryer "^1.0.1" - -big.js@^5.2.2: - version "5.2.2" - resolved "https://registry.yarnpkg.com/big.js/-/big.js-5.2.2.tgz#65f0af382f578bcdc742bd9c281e9cb2d7768328" - integrity sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ== - binary-extensions@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.1.0.tgz#30fa40c9e7fe07dbc895678cd287024dea241dd9" @@ -5188,7 +4456,7 @@ bl@^5.0.0: inherits "^2.0.4" readable-stream "^3.4.0" -bluebird@^3.5.0, bluebird@^3.5.5: +bluebird@^3.5.0: version "3.7.2" resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.2.tgz#9f229c15be272454ffa973ace0dbee79a1b0c36f" integrity sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg== @@ -5211,19 +4479,7 @@ body-parser@1.20.3: type-is "~1.6.18" unpipe "1.0.0" -bonjour@^3.5.0: - version "3.5.0" - resolved "https://registry.yarnpkg.com/bonjour/-/bonjour-3.5.0.tgz#8e890a183d8ee9a2393b3844c691a42bcf7bc9f5" - integrity sha1-jokKGD2O6aI5OzhExpGkK897yfU= - dependencies: - array-flatten "^2.1.0" - deep-equal "^1.0.1" - dns-equal "^1.0.0" - dns-txt "^2.0.2" - multicast-dns "^6.0.1" - multicast-dns-service-types "^1.1.0" - -boolbase@^1.0.0, boolbase@~1.0.0: +boolbase@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" integrity sha1-aN/1++YMUes3cl6p4+0xDcwed24= @@ -5289,12 +4545,7 @@ broccoli-plugin@^4.0.7: rimraf "^3.0.2" symlink-or-copy "^1.3.1" -browser-process-hrtime@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz#3c9b4b7d782c8121e56f10106d84c0d0ffc94626" - integrity sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow== - -browserslist@^4.0.0, browserslist@^4.14.5, browserslist@^4.16.6, browserslist@^4.18.1, browserslist@^4.19.1, browserslist@^4.21.10, browserslist@^4.21.3, browserslist@^4.21.4: +browserslist@^4.14.5, browserslist@^4.21.10, browserslist@^4.21.3: version "4.21.10" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.21.10.tgz#dbbac576628c13d3b2231332cb2ec5a46e015bb0" integrity sha512-bipEBdZfVH5/pwrvqc+Ub0kUPVfGUhlKxbvfD+z1BDnPEO/X98ruXGA1WP5ASpAFKan7Qr6j736IacbZQuAlKQ== @@ -5331,11 +4582,6 @@ buffer-from@^1.0.0: resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5" integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ== -buffer-indexof@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/buffer-indexof/-/buffer-indexof-1.1.1.tgz#52fabcc6a606d1a00302802648ef68f639da268c" - integrity sha512-4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g== - buffer@^5.5.0: version "5.7.1" resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.7.1.tgz#ba62e7c13133053582197160851a8f648e99eed0" @@ -5357,11 +4603,6 @@ buildcheck@~0.0.6: resolved "https://registry.yarnpkg.com/buildcheck/-/buildcheck-0.0.6.tgz#89aa6e417cfd1e2196e3f8fe915eb709d2fe4238" integrity sha512-8f9ZJCUXyT1M35Jx7MkBgmBMo3oHTTBIPLiY9xyL0pl3T5RwcPEY8cUHr5LBNfu/fk6c2T4DJZuVM/8ZZT2D2A== -builtin-modules@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-3.1.0.tgz#aad97c15131eb76b65b50ef208e7584cd76a7484" - integrity sha512-k0KL0aWZuBt2lrxrcASWDfwOLMnodeQjodT/1SxEQAXsHANgo6ZC/VEaSEHCXt7aSTZ4/4H5LKa+tBXmW7Vtvw== - busboy@^1.0.0: version "1.6.0" resolved "https://registry.yarnpkg.com/busboy/-/busboy-1.6.0.tgz#966ea36a9502e43cdb9146962523b92f531f6893" @@ -5374,11 +4615,6 @@ byline@^5.0.0: resolved "https://registry.yarnpkg.com/byline/-/byline-5.0.0.tgz#741c5216468eadc457b03410118ad77de8c1ddb1" integrity sha512-s6webAy+R4SR8XVuJWt2V2rGvhnrhxN+9S15GNuTK3wKPOXFF6RNc+8ug2XhH+2s4f+uudG4kUVYmYOQWL2g0Q== -bytes@3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048" - integrity sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg= - bytes@3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.2.tgz#8b0beeb98605adf1b128fa4386403c009e0221a5" @@ -5410,19 +4646,6 @@ callsites@^3.0.0: resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== -camel-case@^4.1.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/camel-case/-/camel-case-4.1.2.tgz#9728072a954f805228225a6deea6b38461e1bd5a" - integrity sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw== - dependencies: - pascal-case "^3.1.2" - tslib "^2.0.3" - -camelcase-css@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/camelcase-css/-/camelcase-css-2.0.1.tgz#ee978f6947914cc30c6b44741b6ed1df7f043fd5" - integrity sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA== - camelcase-keys@^6.2.2: version "6.2.2" resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-6.2.2.tgz#5e755d6ba51aa223ec7d3d52f25778210f9dc3c0" @@ -5437,22 +4660,12 @@ camelcase@^5.0.0, camelcase@^5.3.1: resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== -camelcase@^6.2.0, camelcase@^6.2.1, camelcase@^6.3.0: +camelcase@^6.2.0, camelcase@^6.3.0: version "6.3.0" resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== -caniuse-api@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/caniuse-api/-/caniuse-api-3.0.0.tgz#5e4d90e2274961d46291997df599e3ed008ee4c0" - integrity sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw== - dependencies: - browserslist "^4.0.0" - caniuse-lite "^1.0.0" - lodash.memoize "^4.1.2" - lodash.uniq "^4.5.0" - -caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001426, caniuse-lite@^1.0.30001517: +caniuse-lite@^1.0.30001517: version "1.0.30001587" resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001587.tgz#a0bce920155fa56a1885a69c74e1163fc34b4881" integrity sha512-HMFNotUmLXn71BQxg8cijvqxnIAofforZOwGsxyXJ0qugTdspUF4sPSJ2vhgprHCB996tIDzEq1ubumPDV8ULA== @@ -5462,11 +4675,6 @@ caniuse-lite@^1.0.30001669: resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001679.tgz#18c573b72f72ba70822194f6c39e7888597f9e32" integrity sha512-j2YqID/YwpLnKzCmBOS4tlZdWprXm3ZmQLBH9ZBXFOhoxLA46fwyBvx6toCBWBmnuwUY/qB3kEU6gFx8qgCroA== -case-sensitive-paths-webpack-plugin@^2.4.0: - version "2.4.0" - resolved "https://registry.yarnpkg.com/case-sensitive-paths-webpack-plugin/-/case-sensitive-paths-webpack-plugin-2.4.0.tgz#db64066c6422eed2e08cc14b986ca43796dbc6d4" - integrity sha512-roIFONhcxog0JSSWbvVAh3OocukmSgpqOH6YpMkCvav/ySIV3JKg4Dc8vYtQjYi/UxpNE36r/9v+VqTQqgkYmw== - caseless@~0.12.0: version "0.12.0" resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" @@ -5483,7 +4691,7 @@ chai@^5.1.2: loupe "^3.1.0" pathval "^2.0.0" -chalk@4, chalk@4.1.2, chalk@^4.0.0, chalk@^4.0.2, chalk@^4.1.0, chalk@^4.1.1, chalk@^4.1.2: +chalk@4, chalk@4.1.2, chalk@^4.0.0, chalk@^4.1.0, chalk@^4.1.1, chalk@^4.1.2: version "4.1.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== @@ -5496,7 +4704,7 @@ chalk@5.3.0: resolved "https://registry.yarnpkg.com/chalk/-/chalk-5.3.0.tgz#67c20a7ebef70e7f3970a01f90fa210cb6860385" integrity sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w== -chalk@^2.1.0, chalk@^2.4.1, chalk@^2.4.2: +chalk@^2.1.0, chalk@^2.4.2: version "2.4.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== @@ -5518,11 +4726,6 @@ char-regex@^1.0.2: resolved "https://registry.yarnpkg.com/char-regex/-/char-regex-1.0.2.tgz#d744358226217f981ed58f479b1d6bcc29545dcf" integrity sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw== -char-regex@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/char-regex/-/char-regex-2.0.1.tgz#6dafdb25f9d3349914079f010ba8d0e6ff9cd01e" - integrity sha512-oSvEeo6ZUD7NepqAat3RqoucZ5SeqLJgOvVIwkafu6IP3V0pO38s/ypdVUmDDK6qIIHNlYHJAKX9E7R7HoKElw== - charcodes@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/charcodes/-/charcodes-0.2.0.tgz#5208d327e6cc05f99eb80ffc814707572d1f14e4" @@ -5538,11 +4741,6 @@ check-error@^2.1.1: resolved "https://registry.yarnpkg.com/check-error/-/check-error-2.1.1.tgz#87eb876ae71ee388fa0471fe423f494be1d96ccc" integrity sha512-OAlb+T7V4Op9OwdkjmguYRqncdlx5JiofwOAUkmTF+jNdHwzTaTs4sRAGpzLF3oOz5xAyDGrPgeIDFQmDOTiJw== -check-types@^11.1.1: - version "11.1.2" - resolved "https://registry.yarnpkg.com/check-types/-/check-types-11.1.2.tgz#86a7c12bf5539f6324eb0e70ca8896c0e38f3e2f" - integrity sha512-tzWzvgePgLORb9/3a0YenggReLKAIb2owL03H2Xdoe5pKcUyWRSEQ8xfCar8t2SIAuEDwtmx2da1YB52YuHQMQ== - cheerio-select@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/cheerio-select/-/cheerio-select-2.1.0.tgz#4d8673286b8126ca2a8e42740d5e3c4884ae21b4" @@ -5618,18 +4816,6 @@ class-validator@^0.14.1: libphonenumber-js "^1.10.53" validator "^13.9.0" -clean-css@^5.2.2: - version "5.2.4" - resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-5.2.4.tgz#982b058f8581adb2ae062520808fb2429bd487a4" - integrity sha512-nKseG8wCzEuji/4yrgM/5cthL9oTDc5UOQyFMvW/Q53oP6gLH690o1NbuTh6Y18nujr7BxlsFuS7gXLnLzKJGg== - dependencies: - source-map "~0.6.0" - -clean-stack@^2.0.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b" - integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A== - cli-cursor@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-3.1.0.tgz#264305a7ae490d1d03bf0c9ba7c925d1753af307" @@ -5728,15 +4914,6 @@ co@^4.6.0: resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" integrity sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ= -coa@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/coa/-/coa-2.0.2.tgz#43f6c21151b4ef2bf57187db0d73de229e3e7ec3" - integrity sha512-q5/jG+YQnSy4nRTV4F7lPepBJZ8qBNJJDBuJdoejDyLXgmL7IEo+Le2JDZudFTFt7mrCqIRaSjws4ygRCTCAXA== - dependencies: - "@types/q" "^1.5.1" - chalk "^2.4.1" - q "^1.1.2" - collect-v8-coverage@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz#cc2c8e94fc18bbdffe64d6534570c8a673b27f59" @@ -5761,17 +4938,12 @@ color-name@1.1.3: resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= -color-name@^1.1.4, color-name@~1.1.4: +color-name@~1.1.4: version "1.1.4" resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== -colord@^2.9.1: - version "2.9.2" - resolved "https://registry.yarnpkg.com/colord/-/colord-2.9.2.tgz#25e2bacbbaa65991422c07ea209e2089428effb1" - integrity sha512-Uqbg+J445nc1TKn4FoDPS6ZZqAvEDnwrH42yo8B40JSOgSLxMZ/gt3h4nmCtPLQeXhjJJkqBx7SCY35WnIixaQ== - -colorette@^2.0.10, colorette@^2.0.20: +colorette@^2.0.20: version "2.0.20" resolved "https://registry.yarnpkg.com/colorette/-/colorette-2.0.20.tgz#9eb793e6833067f7235902fcd3b09917a000a95a" integrity sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w== @@ -5781,7 +4953,7 @@ colors@1.4.0: resolved "https://registry.yarnpkg.com/colors/-/colors-1.4.0.tgz#c50491479d4c1bdaed2c9ced32cf7c7dc2360f78" integrity sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA== -combined-stream@^1.0.6, combined-stream@^1.0.8, combined-stream@~1.0.6: +combined-stream@^1.0.6, combined-stream@~1.0.6: version "1.0.8" resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== @@ -5808,16 +4980,6 @@ commander@^2.20.0: resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== -commander@^7.2.0: - version "7.2.0" - resolved "https://registry.yarnpkg.com/commander/-/commander-7.2.0.tgz#a36cb57d0b501ce108e4d20559a150a391d97ab7" - integrity sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw== - -commander@^8.3.0: - version "8.3.0" - resolved "https://registry.yarnpkg.com/commander/-/commander-8.3.0.tgz#4837ea1b2da67b9c616a67afbb0fafee567bca66" - integrity sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww== - comment-json@4.2.3: version "4.2.3" resolved "https://registry.yarnpkg.com/comment-json/-/comment-json-4.2.3.tgz#50b487ebbf43abe44431f575ebda07d30d015365" @@ -5829,21 +4991,6 @@ comment-json@4.2.3: has-own-prop "^2.0.0" repeat-string "^1.6.1" -common-path-prefix@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/common-path-prefix/-/common-path-prefix-3.0.0.tgz#7d007a7e07c58c4b4d5f433131a19141b29f11e0" - integrity sha512-QE33hToZseCH3jS0qN96O/bSh3kaw/h+Tq7ngyY9eWDUnTlTNUyqfqvCXioLe5Na5jFsL78ra/wuBU4iuEgd4w== - -common-tags@^1.8.0: - version "1.8.0" - resolved "https://registry.yarnpkg.com/common-tags/-/common-tags-1.8.0.tgz#8e3153e542d4a39e9b10554434afaaf98956a937" - integrity sha512-6P6g0uetGpW/sdyUy/iQQCbFF0kWVMSIVSyYz7Zgjcgh8mgw8PQzDNZeyZ5DQ2gM7LBoZPHmnjz8rUthkBG5tw== - -commondir@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" - integrity sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs= - compress-commons@^4.1.0: version "4.1.1" resolved "https://registry.yarnpkg.com/compress-commons/-/compress-commons-4.1.1.tgz#df2a09a7ed17447642bad10a85cc9a19e5c42a7d" @@ -5854,26 +5001,6 @@ compress-commons@^4.1.0: normalize-path "^3.0.0" readable-stream "^3.6.0" -compressible@~2.0.16: - version "2.0.18" - resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.18.tgz#af53cca6b070d4c3c0750fbd77286a6d7cc46fba" - integrity sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg== - dependencies: - mime-db ">= 1.43.0 < 2" - -compression@^1.7.4: - version "1.7.4" - resolved "https://registry.yarnpkg.com/compression/-/compression-1.7.4.tgz#95523eff170ca57c29a0ca41e6fe131f41e5bb8f" - integrity sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ== - dependencies: - accepts "~1.3.5" - bytes "3.0.0" - compressible "~2.0.16" - debug "2.6.9" - on-headers "~1.0.2" - safe-buffer "5.1.2" - vary "~1.1.2" - concat-map@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" @@ -5894,11 +5021,6 @@ confusing-browser-globals@^1.0.11: resolved "https://registry.yarnpkg.com/confusing-browser-globals/-/confusing-browser-globals-1.0.11.tgz#ae40e9b57cdd3915408a2805ebd3a5585608dc81" integrity sha512-JsPKdmh8ZkmnHxDk55FZ1TqVLvEQTvoByJZRN9jzI0UjxK/QgAmsphz7PGtqgPieQZ/CQcHWXCR7ATDNhGe+YA== -connect-history-api-fallback@^1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz#8b32089359308d111115d81cad3fceab888f97bc" - integrity sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg== - consola@^2.15.0: version "2.15.3" resolved "https://registry.yarnpkg.com/consola/-/consola-2.15.3.tgz#2e11f98d6a4be71ff72e0bdf07bd23e12cb61550" @@ -5916,7 +5038,7 @@ content-type@~1.0.4, content-type@~1.0.5: resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.5.tgz#8b773162656d1d1086784c8f23a54ce6d73d7918" integrity sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA== -convert-source-map@^1.4.0, convert-source-map@^1.5.0, convert-source-map@^1.6.0, convert-source-map@^1.7.0: +convert-source-map@^1.5.0, convert-source-map@^1.7.0: version "1.8.0" resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.8.0.tgz#f3373c32d21b4d780dd8004514684fb791ca4369" integrity sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA== @@ -5970,16 +5092,11 @@ core-js-compat@^3.20.2, core-js-compat@^3.21.0: dependencies: browserslist "^4.21.10" -core-js-pure@^3.0.0, core-js-pure@^3.8.1: +core-js-pure@^3.0.0: version "3.21.1" resolved "https://registry.yarnpkg.com/core-js-pure/-/core-js-pure-3.21.1.tgz#8c4d1e78839f5f46208de7230cebfb72bc3bdb51" integrity sha512-12VZfFIu+wyVbBebyHmRTuEE/tZrB4tJToWcwAMcsp3h4+sHR+fMJWbKpYiCRWlhFBq+KNyO8rIV9rTkeVmznQ== -core-js@^3.19.2: - version "3.21.1" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.21.1.tgz#f2e0ddc1fc43da6f904706e8e955bc19d06a0d94" - integrity sha512-FRq5b/VMrWlrmCzwRrpDYNxyHP9BcAZC+xHJaqTgIE5091ZV1NTmyh0sGOg5XqpnHvR0svdy0sv1gWA1zmhxig== - core-util-is@1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" @@ -5998,17 +5115,6 @@ cors@2.8.5: object-assign "^4" vary "^1" -cosmiconfig@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-6.0.0.tgz#da4fee853c52f6b1e6935f41c1a2fc50bd4a9982" - integrity sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg== - dependencies: - "@types/parse-json" "^4.0.0" - import-fresh "^3.1.0" - parse-json "^5.0.0" - path-type "^4.0.0" - yaml "^1.7.2" - cosmiconfig@^7.0.0, cosmiconfig@^7.0.1, cosmiconfig@^7.1.0: version "7.1.0" resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-7.1.0.tgz#1443b9afa596b670082ea46cbd8f6a62b84635f6" @@ -6054,13 +5160,6 @@ create-jest@^29.7.0: jest-util "^29.7.0" prompts "^2.0.1" -cross-env@^7.0.3: - version "7.0.3" - resolved "https://registry.yarnpkg.com/cross-env/-/cross-env-7.0.3.tgz#865264b29677dc015ba8418918965dd232fc54cf" - integrity sha512-+/HKd6EgcQCJGh2PSjZuUitQBQynKor4wrFbRg4DtAgS1aWO+gU52xpH7M9ScGgXSYmAVS9bIJ8EzuaGw0oNAw== - dependencies: - cross-spawn "^7.0.1" - cross-fetch@4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/cross-fetch/-/cross-fetch-4.0.0.tgz#f037aef1580bb3a1a35164ea2a848ba81b445983" @@ -6068,6 +5167,13 @@ cross-fetch@4.0.0: dependencies: node-fetch "^2.6.12" +cross-fetch@^3.0.4: + version "3.1.8" + resolved "https://registry.yarnpkg.com/cross-fetch/-/cross-fetch-3.1.8.tgz#0327eba65fd68a7d119f8fb2bf9334a1a7956f82" + integrity sha512-cvA+JwZoU0Xq+h6WkMvAUqPEYy92Obet6UdKLfW60qn99ftItKjB5T+BkyWOFWe2pUyfQ+IJHmpOTznqk1M6Kg== + dependencies: + node-fetch "^2.6.12" + cross-spawn@^5.1.0: version "5.1.0" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-5.1.0.tgz#e8bd0efee58fcff6f8f94510a0a554bbfa235449" @@ -6077,7 +5183,7 @@ cross-spawn@^5.1.0: shebang-command "^1.2.0" which "^1.2.9" -cross-spawn@^7.0.0, cross-spawn@^7.0.1, cross-spawn@^7.0.2, cross-spawn@^7.0.3: +cross-spawn@^7.0.0, cross-spawn@^7.0.2, cross-spawn@^7.0.3: version "7.0.3" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== @@ -6086,32 +5192,6 @@ cross-spawn@^7.0.0, cross-spawn@^7.0.1, cross-spawn@^7.0.2, cross-spawn@^7.0.3: shebang-command "^2.0.0" which "^2.0.1" -crypto-random-string@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/crypto-random-string/-/crypto-random-string-2.0.0.tgz#ef2a7a966ec11083388369baa02ebead229b30d5" - integrity sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA== - -css-blank-pseudo@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/css-blank-pseudo/-/css-blank-pseudo-3.0.3.tgz#36523b01c12a25d812df343a32c322d2a2324561" - integrity sha512-VS90XWtsHGqoM0t4KpH053c4ehxZ2E6HtGI7x68YFV0pTo/QmkV/YFA+NnlvK8guxZVNWGQhVNJGC39Q8XF4OQ== - dependencies: - postcss-selector-parser "^6.0.9" - -css-declaration-sorter@^6.0.3: - version "6.1.4" - resolved "https://registry.yarnpkg.com/css-declaration-sorter/-/css-declaration-sorter-6.1.4.tgz#b9bfb4ed9a41f8dcca9bf7184d849ea94a8294b4" - integrity sha512-lpfkqS0fctcmZotJGhnxkIyJWvBXgpyi2wsFd4J8VB7wzyrT6Ch/3Q+FMNJpjK4gu1+GN5khOnpU2ZVKrLbhCw== - dependencies: - timsort "^0.3.0" - -css-has-pseudo@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/css-has-pseudo/-/css-has-pseudo-3.0.4.tgz#57f6be91ca242d5c9020ee3e51bbb5b89fc7af73" - integrity sha512-Vse0xpR1K9MNlp2j5w1pgWIJtm1a8qS0JwS9goFYcImjlHEmywP9VUF05aGBXzGpDJF86QXk4L0ypBmwPhGArw== - dependencies: - postcss-selector-parser "^6.0.9" - css-in-js-utils@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/css-in-js-utils/-/css-in-js-utils-3.1.0.tgz#640ae6a33646d401fc720c54fc61c42cd76ae2bb" @@ -6119,63 +5199,6 @@ css-in-js-utils@^3.1.0: dependencies: hyphenate-style-name "^1.0.3" -css-loader@^6.5.1: - version "6.6.0" - resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-6.6.0.tgz#c792ad5510bd1712618b49381bd0310574fafbd3" - integrity sha512-FK7H2lisOixPT406s5gZM1S3l8GrfhEBT3ZiL2UX1Ng1XWs0y2GPllz/OTyvbaHe12VgQrIXIzuEGVlbUhodqg== - dependencies: - icss-utils "^5.1.0" - postcss "^8.4.5" - postcss-modules-extract-imports "^3.0.0" - postcss-modules-local-by-default "^4.0.0" - postcss-modules-scope "^3.0.0" - postcss-modules-values "^4.0.0" - postcss-value-parser "^4.2.0" - semver "^7.3.5" - -css-minimizer-webpack-plugin@^3.2.0: - version "3.4.1" - resolved "https://registry.yarnpkg.com/css-minimizer-webpack-plugin/-/css-minimizer-webpack-plugin-3.4.1.tgz#ab78f781ced9181992fe7b6e4f3422e76429878f" - integrity sha512-1u6D71zeIfgngN2XNRJefc/hY7Ybsxd74Jm4qngIXyUEk7fss3VUzuHxLAq/R8NAba4QU9OUSaMZlbpRc7bM4Q== - dependencies: - cssnano "^5.0.6" - jest-worker "^27.0.2" - postcss "^8.3.5" - schema-utils "^4.0.0" - serialize-javascript "^6.0.0" - source-map "^0.6.1" - -css-prefers-color-scheme@^6.0.3: - version "6.0.3" - resolved "https://registry.yarnpkg.com/css-prefers-color-scheme/-/css-prefers-color-scheme-6.0.3.tgz#ca8a22e5992c10a5b9d315155e7caee625903349" - integrity sha512-4BqMbZksRkJQx2zAjrokiGMd07RqOa2IxIrrN10lyBe9xhn9DEvjUK79J6jkeiv9D9hQFXKb6g1jwU62jziJZA== - -css-select-base-adapter@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/css-select-base-adapter/-/css-select-base-adapter-0.1.1.tgz#3b2ff4972cc362ab88561507a95408a1432135d7" - integrity sha512-jQVeeRG70QI08vSTwf1jHxp74JoZsr2XSgETae8/xC8ovSnL2WF87GTLO86Sbwdt2lK4Umg4HnnwMO4YF3Ce7w== - -css-select@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/css-select/-/css-select-2.1.0.tgz#6a34653356635934a81baca68d0255432105dbef" - integrity sha512-Dqk7LQKpwLoH3VovzZnkzegqNSuAziQyNZUcrdDM401iY+R5NkGBXGmtO05/yaXQziALuPogeG0b7UAgjnTJTQ== - dependencies: - boolbase "^1.0.0" - css-what "^3.2.1" - domutils "^1.7.0" - nth-check "^1.0.2" - -css-select@^4.1.3: - version "4.2.1" - resolved "https://registry.yarnpkg.com/css-select/-/css-select-4.2.1.tgz#9e665d6ae4c7f9d65dbe69d0316e3221fb274cdd" - integrity sha512-/aUslKhzkTNCQUB2qTX84lVmfia9NyjP3WpDGtj/WxhwBzWBYUV3DgUpurHTme8UTPcPlAD1DJ+b0nN/t50zDQ== - dependencies: - boolbase "^1.0.0" - css-what "^5.1.0" - domhandler "^4.3.0" - domutils "^2.8.0" - nth-check "^2.0.1" - css-select@^5.1.0: version "5.1.0" resolved "https://registry.yarnpkg.com/css-select/-/css-select-5.1.0.tgz#b8ebd6554c3637ccc76688804ad3f6a6fdaea8a6" @@ -6187,15 +5210,7 @@ css-select@^5.1.0: domutils "^3.0.1" nth-check "^2.0.1" -css-tree@1.0.0-alpha.37: - version "1.0.0-alpha.37" - resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-1.0.0-alpha.37.tgz#98bebd62c4c1d9f960ec340cf9f7522e30709a22" - integrity sha512-DMxWJg0rnz7UgxKT0Q1HU/L9BeJI0M6ksor0OgqOnF+aRCDWg/N2641HmVyU9KVIu0OVVWOb2IpC9A+BJRnejg== - dependencies: - mdn-data "2.0.4" - source-map "^0.6.1" - -css-tree@^1.1.2, css-tree@^1.1.3: +css-tree@^1.1.2: version "1.1.3" resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-1.1.3.tgz#eb4870fb6fd7707327ec95c2ff2ab09b5e8db91d" integrity sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q== @@ -6203,16 +5218,6 @@ css-tree@^1.1.2, css-tree@^1.1.3: mdn-data "2.0.14" source-map "^0.6.1" -css-what@^3.2.1: - version "3.4.2" - resolved "https://registry.yarnpkg.com/css-what/-/css-what-3.4.2.tgz#ea7026fcb01777edbde52124e21f327e7ae950e4" - integrity sha512-ACUm3L0/jiZTqfzRM3Hi9Q8eZqd6IK37mMWPLz9PJxkLWllYeRf+EHUSHYEtFop2Eqytaq1FizFVh7XfBnXCDQ== - -css-what@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/css-what/-/css-what-5.1.0.tgz#3f7b707aadf633baf62c2ceb8579b545bb40f7fe" - integrity sha512-arSMRWIIFY0hV8pIxZMEfmMI47Wj3R/aWpZDDxWYCPEiOMv6tfOrnpDtgxBYPEQD4V0Y/958+1TdC3iWTFcUPw== - css-what@^6.1.0: version "6.1.0" resolved "https://registry.yarnpkg.com/css-what/-/css-what-6.1.0.tgz#fb5effcf76f1ddea2c81bdfaa4de44e79bac70f4" @@ -6223,89 +5228,6 @@ css.escape@^1.5.1: resolved "https://registry.yarnpkg.com/css.escape/-/css.escape-1.5.1.tgz#42e27d4fa04ae32f931a4b4d4191fa9cddee97cb" integrity sha512-YUifsXXuknHlUsmlgyY0PKzgPOr7/FjCePfHNt0jxm83wHZi44VDMQ7/fGNkjY3/jV1MC+1CmZbaHzugyeRtpg== -cssdb@^6.3.1: - version "6.4.0" - resolved "https://registry.yarnpkg.com/cssdb/-/cssdb-6.4.0.tgz#54899b9042e302be3090b8510ea71fefd08c9e6b" - integrity sha512-8NMWrur/ewSNrRNZndbtOTXc2Xb2b+NCTPHj8VErFYvJUlgsMAiBGaFaxG6hjy9zbCjj2ZLwSQrMM+tormO8qA== - -cssesc@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee" - integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg== - -cssnano-preset-default@^5.1.12: - version "5.1.12" - resolved "https://registry.yarnpkg.com/cssnano-preset-default/-/cssnano-preset-default-5.1.12.tgz#64e2ad8e27a279e1413d2d2383ef89a41c909be9" - integrity sha512-rO/JZYyjW1QNkWBxMGV28DW7d98UDLaF759frhli58QFehZ+D/LSmwQ2z/ylBAe2hUlsIWTq6NYGfQPq65EF9w== - dependencies: - css-declaration-sorter "^6.0.3" - cssnano-utils "^3.0.2" - postcss-calc "^8.2.0" - postcss-colormin "^5.2.5" - postcss-convert-values "^5.0.4" - postcss-discard-comments "^5.0.3" - postcss-discard-duplicates "^5.0.3" - postcss-discard-empty "^5.0.3" - postcss-discard-overridden "^5.0.4" - postcss-merge-longhand "^5.0.6" - postcss-merge-rules "^5.0.6" - postcss-minify-font-values "^5.0.4" - postcss-minify-gradients "^5.0.6" - postcss-minify-params "^5.0.5" - postcss-minify-selectors "^5.1.3" - postcss-normalize-charset "^5.0.3" - postcss-normalize-display-values "^5.0.3" - postcss-normalize-positions "^5.0.4" - postcss-normalize-repeat-style "^5.0.4" - postcss-normalize-string "^5.0.4" - postcss-normalize-timing-functions "^5.0.3" - postcss-normalize-unicode "^5.0.4" - postcss-normalize-url "^5.0.5" - postcss-normalize-whitespace "^5.0.4" - postcss-ordered-values "^5.0.5" - postcss-reduce-initial "^5.0.3" - postcss-reduce-transforms "^5.0.4" - postcss-svgo "^5.0.4" - postcss-unique-selectors "^5.0.4" - -cssnano-utils@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/cssnano-utils/-/cssnano-utils-3.0.2.tgz#d82b4991a27ba6fec644b39bab35fe027137f516" - integrity sha512-KhprijuQv2sP4kT92sSQwhlK3SJTbDIsxcfIEySB0O+3m9esFOai7dP9bMx5enHAh2MwarVIcnwiWoOm01RIbQ== - -cssnano@^5.0.6: - version "5.0.17" - resolved "https://registry.yarnpkg.com/cssnano/-/cssnano-5.0.17.tgz#ff45713c05cfc780a1aeb3e663b6f224d091cabf" - integrity sha512-fmjLP7k8kL18xSspeXTzRhaFtRI7DL9b8IcXR80JgtnWBpvAzHT7sCR/6qdn0tnxIaINUN6OEQu83wF57Gs3Xw== - dependencies: - cssnano-preset-default "^5.1.12" - lilconfig "^2.0.3" - yaml "^1.10.2" - -csso@^4.0.2, csso@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/csso/-/csso-4.2.0.tgz#ea3a561346e8dc9f546d6febedd50187cf389529" - integrity sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA== - dependencies: - css-tree "^1.1.2" - -cssom@^0.4.4: - version "0.4.4" - resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.4.4.tgz#5a66cf93d2d0b661d80bf6a44fb65f5c2e4e0a10" - integrity sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw== - -cssom@~0.3.6: - version "0.3.8" - resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.3.8.tgz#9f1276f5b2b463f2114d3f2c75250af8c1a36f4a" - integrity sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg== - -cssstyle@^2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/cssstyle/-/cssstyle-2.3.0.tgz#ff665a0ddbdc31864b09647f34163443d90b0852" - integrity sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A== - dependencies: - cssom "~0.3.6" - csstype@^3.0.2, csstype@^3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.2.tgz#1d4bf9d572f11c14031f0436e1c10bc1f571f50b" @@ -6353,21 +5275,12 @@ dashdash@^1.12.0: dependencies: assert-plus "^1.0.0" -data-urls@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/data-urls/-/data-urls-2.0.0.tgz#156485a72963a970f5d5821aaf642bef2bf2db9b" - integrity sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ== - dependencies: - abab "^2.0.3" - whatwg-mimetype "^2.3.0" - whatwg-url "^8.0.0" - de-indent@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/de-indent/-/de-indent-1.0.2.tgz#b2038e846dc33baa5796128d0804b455b8c1e21d" integrity sha1-sgOOhG3DO6pXlhKNCAS0VbjB4h0= -debug@2.6.9, debug@^2.2.0, debug@^2.6.0, debug@^2.6.9: +debug@2.6.9, debug@^2.2.0, debug@^2.6.9: version "2.6.9" resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== @@ -6381,7 +5294,7 @@ debug@4, debug@4.3.4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, de dependencies: ms "2.1.2" -debug@^3.1.1, debug@^3.2.7: +debug@^3.2.7: version "3.2.7" resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" integrity sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ== @@ -6408,16 +5321,6 @@ decamelize@^1.1.0, decamelize@^1.2.0: resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" integrity sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA== -decimal.js@^10.2.1: - version "10.3.1" - resolved "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.3.1.tgz#d8c3a444a9c6774ba60ca6ad7261c3a94fd5e783" - integrity sha512-V0pfhfr8suzyPGOx3nmq4aHqabehUZn6Ch9kyFpV79TGDTWFmHqUqXdabR7QHqxzrYolF4+tVmJhUG4OURg5dQ== - -dedent@^0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/dedent/-/dedent-0.7.0.tgz#2495ddbaf6eb874abb0e1be9df22d2e5a544326c" - integrity sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw= - dedent@^1.0.0: version "1.5.3" resolved "https://registry.yarnpkg.com/dedent/-/dedent-1.5.3.tgz#99aee19eb9bae55a67327717b6e848d0bf777e5a" @@ -6428,18 +5331,6 @@ deep-eql@^5.0.1: resolved "https://registry.yarnpkg.com/deep-eql/-/deep-eql-5.0.2.tgz#4b756d8d770a9257300825d52a2c2cff99c3a341" integrity sha512-h5k/5U50IJJFpzfL6nO9jaaumfjO/f2NjK/oYB2Djzm4p9L+3T9qWpZqZ2hAbLPuuYq9wrU08WQyBTL5GbPk5Q== -deep-equal@^1.0.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.1.1.tgz#b5c98c942ceffaf7cb051e24e1434a25a2e6076a" - integrity sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g== - dependencies: - is-arguments "^1.0.4" - is-date-object "^1.0.1" - is-regex "^1.0.4" - object-is "^1.0.1" - object-keys "^1.1.1" - regexp.prototype.flags "^1.2.0" - deep-equal@^2.0.5: version "2.2.3" resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-2.2.3.tgz#af89dafb23a396c7da3e862abc0be27cf51d56e1" @@ -6464,7 +5355,7 @@ deep-equal@^2.0.5: which-collection "^1.0.1" which-typed-array "^1.1.13" -deep-is@^0.1.3, deep-is@~0.1.3: +deep-is@^0.1.3: version "0.1.3" resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ= @@ -6474,13 +5365,6 @@ deepmerge@^4.2.2, deepmerge@^4.3.1: resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.3.1.tgz#44b5f2147cd3b00d4b56137685966f26fd25dd4a" integrity sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A== -default-gateway@^6.0.3: - version "6.0.3" - resolved "https://registry.yarnpkg.com/default-gateway/-/default-gateway-6.0.3.tgz#819494c888053bdb743edbf343d6cdf7f2943a71" - integrity sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg== - dependencies: - execa "^5.0.0" - defaults@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/defaults/-/defaults-1.0.3.tgz#c656051e9817d9ff08ed881477f3fe4019f3ef7d" @@ -6497,11 +5381,6 @@ define-data-property@^1.0.1, define-data-property@^1.1.4: es-errors "^1.3.0" gopd "^1.0.1" -define-lazy-prop@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz#3f7ae421129bcaaac9bc74905c98a0009ec9ee7f" - integrity sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og== - define-properties@^1.1.3, define-properties@^1.1.4, define-properties@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.2.1.tgz#10781cc616eb951a80a034bafcaa7377f6af2b6c" @@ -6511,25 +5390,6 @@ define-properties@^1.1.3, define-properties@^1.1.4, define-properties@^1.2.1: has-property-descriptors "^1.0.0" object-keys "^1.1.1" -defined@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/defined/-/defined-1.0.0.tgz#c98d9bcef75674188e110969151199e39b1fa693" - integrity sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM= - -del@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/del/-/del-6.0.0.tgz#0b40d0332cea743f1614f818be4feb717714c952" - integrity sha512-1shh9DQ23L16oXSZKB2JxpL7iMy2E0S9d517ptA1P8iw0alkPtQcrKH7ru31rYtKwF499HkTu+DRzq3TCKDFRQ== - dependencies: - globby "^11.0.1" - graceful-fs "^4.2.4" - is-glob "^4.0.1" - is-path-cwd "^2.2.0" - is-path-inside "^3.0.2" - p-map "^4.0.0" - rimraf "^3.0.2" - slash "^3.0.0" - delayed-stream@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" @@ -6569,21 +5429,11 @@ depd@2.0.0, depd@~2.0.0: resolved "https://registry.yarnpkg.com/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df" integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw== -depd@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" - integrity sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak= - deps-regex@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/deps-regex/-/deps-regex-0.2.0.tgz#3ee7ddae5fd784f3accf29d5a711aa6e10044137" integrity sha512-PwuBojGMQAYbWkMXOY9Pd/NWCDNHVH12pnS7WHqZkTSeMESe4hwnKKRp0yR87g37113x4JPbo/oIvXY+s/f56Q== -dequal@^2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/dequal/-/dequal-2.0.3.tgz#2644214f1997d39ed0ee0ece72335490a7ac67be" - integrity sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA== - destroy@1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.2.0.tgz#4803735509ad8be552934c67df614f94e66fa015" @@ -6604,38 +5454,6 @@ detect-newline@^3.0.0: resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-3.1.0.tgz#576f5dfc63ae1a192ff192d8ad3af6308991b651" integrity sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA== -detect-node@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/detect-node/-/detect-node-2.0.4.tgz#014ee8f8f669c5c58023da64b8179c083a28c46c" - integrity sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw== - -detect-port-alt@^1.1.6: - version "1.1.6" - resolved "https://registry.yarnpkg.com/detect-port-alt/-/detect-port-alt-1.1.6.tgz#24707deabe932d4a3cf621302027c2b266568275" - integrity sha512-5tQykt+LqfJFBEYaDITx7S7cR7mJ/zQmLXZ2qt5w04ainYZw6tBf9dBunMjVeVOdYVRUzUOE4HkY5J7+uttb5Q== - dependencies: - address "^1.0.1" - debug "^2.6.0" - -detective@^5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/detective/-/detective-5.2.0.tgz#feb2a77e85b904ecdea459ad897cc90a99bd2a7b" - integrity sha512-6SsIx+nUUbuK0EthKjv0zrdnajCCXVYGmbYYiYjFVpzcjwEs/JMDZ8tPRG29J/HhN56t3GJp2cGSWDRjjot8Pg== - dependencies: - acorn-node "^1.6.1" - defined "^1.0.0" - minimist "^1.1.1" - -didyoumean@^1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/didyoumean/-/didyoumean-1.2.2.tgz#989346ffe9e839b4555ecf5666edea0d3e8ad037" - integrity sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw== - -diff-sequences@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-27.5.1.tgz#eaecc0d327fd68c8d9672a1e64ab8dccb2ef5327" - integrity sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ== - diff-sequences@^29.6.3: version "29.6.3" resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-29.6.3.tgz#4deaf894d11407c51efc8418012f9e70b84ea921" @@ -6648,31 +5466,6 @@ dir-glob@^3.0.1: dependencies: path-type "^4.0.0" -dlv@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/dlv/-/dlv-1.1.3.tgz#5c198a8a11453596e751494d49874bc7732f2e79" - integrity sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA== - -dns-equal@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/dns-equal/-/dns-equal-1.0.0.tgz#b39e7f1da6eb0a75ba9c17324b34753c47e0654d" - integrity sha1-s55/HabrCnW6nBcySzR1PEfgZU0= - -dns-packet@^1.3.1: - version "1.3.4" - resolved "https://registry.yarnpkg.com/dns-packet/-/dns-packet-1.3.4.tgz#e3455065824a2507ba886c55a89963bb107dec6f" - integrity sha512-BQ6F4vycLXBvdrJZ6S3gZewt6rcrks9KBgM9vrhW+knGRqc8uEdT7fuCwloc7nny5xNoMJ17HGH0R/6fpo8ECA== - dependencies: - ip "^1.1.0" - safe-buffer "^5.0.1" - -dns-txt@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/dns-txt/-/dns-txt-2.0.2.tgz#b91d806f5d27188e4ab3e7d107d881a1cc4642b6" - integrity sha1-uR2Ab10nGI5Ks+fRB9iBocxGQrY= - dependencies: - buffer-indexof "^1.0.0" - docker-compose@^0.24.6: version "0.24.8" resolved "https://registry.yarnpkg.com/docker-compose/-/docker-compose-0.24.8.tgz#6c125e6b9e04cf68ced47e2596ef2bb93ee9694e" @@ -6723,13 +5516,6 @@ dom-accessibility-api@^0.6.3: resolved "https://registry.yarnpkg.com/dom-accessibility-api/-/dom-accessibility-api-0.6.3.tgz#993e925cc1d73f2c662e7d75dd5a5445259a8fd8" integrity sha512-7ZgogeTnjuHbo+ct10G9Ffp0mif17idi0IyWNVA/wcwcm7NPOD/WEHVP3n7n3MhXqxoIYm8d6MuZohYWIZ4T3w== -dom-converter@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/dom-converter/-/dom-converter-0.2.0.tgz#6721a9daee2e293682955b6afe416771627bb768" - integrity sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA== - dependencies: - utila "~0.4" - dom-helpers@^5.0.1: version "5.2.1" resolved "https://registry.yarnpkg.com/dom-helpers/-/dom-helpers-5.2.1.tgz#d9400536b2bf8225ad98fe052e029451ac40e902" @@ -6738,23 +5524,6 @@ dom-helpers@^5.0.1: "@babel/runtime" "^7.8.7" csstype "^3.0.2" -dom-serializer@0: - version "0.2.2" - resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.2.2.tgz#1afb81f533717175d478655debc5e332d9f9bb51" - integrity sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g== - dependencies: - domelementtype "^2.0.1" - entities "^2.0.0" - -dom-serializer@^1.0.1: - version "1.3.2" - resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-1.3.2.tgz#6206437d32ceefaec7161803230c7a20bc1b4d91" - integrity sha512-5c54Bk5Dw4qAxNOI1pFEizPSjVsx5+bpJKmL2kPn8JhBUq2q09tTCa3mjijun2NfK78NMouDYNMBkOrPZiS+ig== - dependencies: - domelementtype "^2.0.1" - domhandler "^4.2.0" - entities "^2.0.0" - dom-serializer@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-2.0.0.tgz#e41b802e1eedf9f6cae183ce5e622d789d7d8e53" @@ -6764,30 +5533,11 @@ dom-serializer@^2.0.0: domhandler "^5.0.2" entities "^4.2.0" -domelementtype@1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.3.1.tgz#d048c44b37b0d10a7f2a3d5fee3f4333d790481f" - integrity sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w== - -domelementtype@^2.0.1, domelementtype@^2.2.0, domelementtype@^2.3.0: +domelementtype@^2.3.0: version "2.3.0" resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.3.0.tgz#5c45e8e869952626331d7aab326d01daf65d589d" integrity sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw== -domexception@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/domexception/-/domexception-2.0.1.tgz#fb44aefba793e1574b0af6aed2801d057529f304" - integrity sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg== - dependencies: - webidl-conversions "^5.0.0" - -domhandler@^4.0.0, domhandler@^4.2.0, domhandler@^4.3.0: - version "4.3.1" - resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-4.3.1.tgz#8d792033416f59d68bc03a5aa7b018c1ca89279c" - integrity sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ== - dependencies: - domelementtype "^2.2.0" - domhandler@^5.0.1, domhandler@^5.0.2, domhandler@^5.0.3: version "5.0.3" resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-5.0.3.tgz#cc385f7f751f1d1fc650c21374804254538c7d31" @@ -6795,23 +5545,6 @@ domhandler@^5.0.1, domhandler@^5.0.2, domhandler@^5.0.3: dependencies: domelementtype "^2.3.0" -domutils@^1.7.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.7.0.tgz#56ea341e834e06e6748af7a1cb25da67ea9f8c2a" - integrity sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg== - dependencies: - dom-serializer "0" - domelementtype "1" - -domutils@^2.5.2, domutils@^2.8.0: - version "2.8.0" - resolved "https://registry.yarnpkg.com/domutils/-/domutils-2.8.0.tgz#4437def5db6e2d1f5d6ee859bd95ca7d02048135" - integrity sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A== - dependencies: - dom-serializer "^1.0.1" - domelementtype "^2.2.0" - domhandler "^4.2.0" - domutils@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/domutils/-/domutils-3.0.1.tgz#696b3875238338cb186b6c0612bd4901c89a4f1c" @@ -6821,14 +5554,6 @@ domutils@^3.0.1: domelementtype "^2.3.0" domhandler "^5.0.1" -dot-case@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/dot-case/-/dot-case-3.0.4.tgz#9b2b670d00a431667a8a75ba29cd1b98809ce751" - integrity sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w== - dependencies: - no-case "^3.0.4" - tslib "^2.0.3" - dotenv-cli@^7.4.2: version "7.4.2" resolved "https://registry.yarnpkg.com/dotenv-cli/-/dotenv-cli-7.4.2.tgz#c158a818de08e1fbc51d310f628cbace9075b734" @@ -6844,26 +5569,11 @@ dotenv-expand@10.0.0, dotenv-expand@^10.0.0: resolved "https://registry.yarnpkg.com/dotenv-expand/-/dotenv-expand-10.0.0.tgz#12605d00fb0af6d0a592e6558585784032e4ef37" integrity sha512-GopVGCpVS1UKH75VKHGuQFqS1Gusej0z4FyQkPdwjil2gNIv+LNsqBlboOzpJFZKVT95GkCyWJbBSdFEFUWI2A== -dotenv-expand@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/dotenv-expand/-/dotenv-expand-5.1.0.tgz#3fbaf020bfd794884072ea26b1e9791d45a629f0" - integrity sha512-YXQl1DSa4/PQyRfgrv6aoNjhasp/p4qs9FjJ4q4cQk+8m4r6k4ZSiEyytKG8f8W9gi8WsQtIObNmKd+tMzNTmA== - dotenv@16.4.5, dotenv@^16.3.0: version "16.4.5" resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-16.4.5.tgz#cdd3b3b604cb327e286b4762e13502f717cb099f" integrity sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg== -dotenv@^10.0.0: - version "10.0.0" - resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-10.0.0.tgz#3d4227b8fb95f81096cdd2b66653fb2c7085ba81" - integrity sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q== - -duplexer@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.2.tgz#3abe43aef3835f8ae077d136ddce0f276b0400e6" - integrity sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg== - eastasianwidth@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/eastasianwidth/-/eastasianwidth-0.2.0.tgz#696ce2ec0aa0e6ea93a397ffcf24aa7840c827cb" @@ -6882,13 +5592,6 @@ ee-first@1.1.1: resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow== -ejs@^3.1.6: - version "3.1.10" - resolved "https://registry.yarnpkg.com/ejs/-/ejs-3.1.10.tgz#69ab8358b14e896f80cc39e62087b88500c3ac3b" - integrity sha512-UeJmFfOrAQS8OJWPZ4qtgHyWExa088/MtK5UEyoJGFH67cDEXkZSviOiKRCZ4Xij0zxI3JECgYs3oKx+AizQBA== - dependencies: - jake "^10.8.5" - electron-to-chromium@^1.4.477: version "1.4.498" resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.498.tgz#cef35341123f62a35ba7084e439c911d25e0d81b" @@ -6904,11 +5607,6 @@ emittery@^0.13.1: resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.13.1.tgz#c04b8c3457490e0847ae51fced3af52d338e3dad" integrity sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ== -emittery@^0.8.1: - version "0.8.1" - resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.8.1.tgz#bb23cc86d03b30aa75a7f734819dee2e1ba70860" - integrity sha512-uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg== - emoji-regex@^10.3.0: version "10.3.0" resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-10.3.0.tgz#76998b9268409eb3dae3de989254d456e70cfe23" @@ -6924,11 +5622,6 @@ emoji-regex@^9.2.2: resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-9.2.2.tgz#840c8803b0d8047f4ff0cf963176b32d4ef3ed72" integrity sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg== -emojis-list@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-3.0.0.tgz#5570662046ad29e2e916e71aae260abdff4f6a78" - integrity sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q== - encodeurl@~1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" @@ -6966,11 +5659,6 @@ ensure-posix-path@^1.1.0: resolved "https://registry.yarnpkg.com/ensure-posix-path/-/ensure-posix-path-1.1.1.tgz#3c62bdb19fa4681544289edb2b382adc029179ce" integrity sha512-VWU0/zXzVbeJNXvME/5EmLuEj2TauvoaTz6aFYK1Z92JCBlDlZ3Gu0tuGR42kpW1754ywTs+QB0g5TP0oj9Zaw== -entities@^2.0.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/entities/-/entities-2.2.0.tgz#098dc90ebb83d8dffa089d55256b351d34c4da55" - integrity sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A== - entities@^4.2.0, entities@^4.4.0: version "4.4.0" resolved "https://registry.yarnpkg.com/entities/-/entities-4.4.0.tgz#97bdaba170339446495e653cfd2db78962900174" @@ -6995,7 +5683,7 @@ error-stack-parser@^2.0.6: dependencies: stackframe "^1.1.1" -es-abstract@^1.17.0-next.1, es-abstract@^1.17.2, es-abstract@^1.19.0, es-abstract@^1.19.1, es-abstract@^1.19.2, es-abstract@^1.19.5: +es-abstract@^1.19.0, es-abstract@^1.19.1, es-abstract@^1.19.2, es-abstract@^1.19.5: version "1.20.1" resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.20.1.tgz#027292cd6ef44bd12b1913b828116f54787d1814" integrity sha512-WEm2oBhfoI2sImeM4OF2zE2V3BYdSF+KnSi9Sidz51fQHd7+JuF8Xgcj9/0o+OWeIeIS/MiuNnlruQrJf16GQA== @@ -7160,18 +5848,6 @@ escape-string-regexp@^4.0.0: resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== -escodegen@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-2.0.0.tgz#5e32b12833e8aa8fa35e1bf0befa89380484c7dd" - integrity sha512-mmHKys/C8BFUGI+MAWNcSYoORYLMdPzjrknd2Vc+bUsjN5bXcr8EhrNB+UTqfL1y3I9c4fw2ihgtMPQLBRiQxw== - dependencies: - esprima "^4.0.1" - estraverse "^5.2.0" - esutils "^2.0.2" - optionator "^0.8.1" - optionalDependencies: - source-map "~0.6.1" - eslint-config-prettier@^9.1.0: version "9.1.0" resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-9.1.0.tgz#31af3d94578645966c082fcb71a5846d3c94867f" @@ -7344,18 +6020,7 @@ eslint-visitor-keys@^3.3.0, eslint-visitor-keys@^3.4.1, eslint-visitor-keys@^3.4 resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz#0cd72fe8550e3c2eae156a96a4dddcd1c8ac5800" integrity sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag== -eslint-webpack-plugin@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/eslint-webpack-plugin/-/eslint-webpack-plugin-3.1.1.tgz#83dad2395e5f572d6f4d919eedaa9cf902890fcb" - integrity sha512-xSucskTN9tOkfW7so4EaiFIkulWLXwCB/15H917lR6pTv0Zot6/fetFucmENRb7J5whVSFKIvwnrnsa78SG2yg== - dependencies: - "@types/eslint" "^7.28.2" - jest-worker "^27.3.1" - micromatch "^4.0.4" - normalize-path "^3.0.0" - schema-utils "^3.1.1" - -eslint@^8.3.0, eslint@^8.57.0: +eslint@^8.57.0: version "8.57.0" resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.57.0.tgz#c786a6fd0e0b68941aaf624596fb987089195668" integrity sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ== @@ -7437,11 +6102,6 @@ estraverse@^5.1.0, estraverse@^5.2.0, estraverse@^5.3.0: resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123" integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA== -estree-walker@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-1.0.1.tgz#31bc5d612c96b704106b477e6dd5d8aa138cb700" - integrity sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg== - estree-walker@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-2.0.2.tgz#52f010178c2a4c117a7757cfe942adb7d2da4cac" @@ -7469,11 +6129,6 @@ event-target-shim@^5.0.0: resolved "https://registry.yarnpkg.com/event-target-shim/-/event-target-shim-5.0.1.tgz#5d4d3ebdf9583d63a5333ce2deb7480ab2b05789" integrity sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ== -eventemitter3@^4.0.0: - version "4.0.7" - resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.7.tgz#2de9b68f6528d5644ef5c59526a1b4a07306169f" - integrity sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw== - eventemitter3@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-5.0.1.tgz#53f5ffd0a492ac800721bb42c66b841de96423c4" @@ -7546,17 +6201,7 @@ expect-type@^1.1.0: resolved "https://registry.yarnpkg.com/expect-type/-/expect-type-1.1.0.tgz#a146e414250d13dfc49eafcfd1344a4060fa4c75" integrity sha512-bFi65yM+xZgk+u/KRIpekdSYkTB5W1pEf0Lt8Q8Msh7b+eQ7LXVtIB1Bkm4fvclDEL1b2CZkMhv2mOeF8tMdkA== -expect@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/expect/-/expect-27.5.1.tgz#83ce59f1e5bdf5f9d2b94b61d2050db48f3fef74" - integrity sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw== - dependencies: - "@jest/types" "^27.5.1" - jest-get-type "^27.5.1" - jest-matcher-utils "^27.5.1" - jest-message-util "^27.5.1" - -expect@^29.0.0, expect@^29.7.0: +expect@^29.7.0: version "29.7.0" resolved "https://registry.yarnpkg.com/expect/-/expect-29.7.0.tgz#578874590dcb3214514084c08115d8aee61e11bc" integrity sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw== @@ -7567,7 +6212,7 @@ expect@^29.0.0, expect@^29.7.0: jest-message-util "^29.7.0" jest-util "^29.7.0" -express@4.21.1, express@^4.17.1, express@^4.18.2, express@^4.20.0: +express@4.21.1, express@^4.18.2, express@^4.20.0: version "4.21.1" resolved "https://registry.yarnpkg.com/express/-/express-4.21.1.tgz#9dae5dda832f16b4eec941a4e44aa89ec481b281" integrity sha512-YSFlK1Ee0/GC8QaO91tHcDxJiE/X4FbpAyQWkxAvG6AXCuR65YzK8ua6D9hvi/TzUfZMpc+BwuM1IPw8fmQBiQ== @@ -7643,7 +6288,7 @@ fast-fifo@^1.1.0, fast-fifo@^1.2.0: resolved "https://registry.yarnpkg.com/fast-fifo/-/fast-fifo-1.3.2.tgz#286e31de96eb96d38a97899815740ba2a4f3640c" integrity sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ== -fast-glob@^3.2.11, fast-glob@^3.2.9: +fast-glob@^3.2.9: version "3.2.11" resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.11.tgz#a1172ad95ceb8a16e20caa5c5e56480e5129c1d9" integrity sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew== @@ -7659,7 +6304,7 @@ fast-json-stable-stringify@^2.0.0, fast-json-stable-stringify@^2.1.0: resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== -fast-levenshtein@^2.0.6, fast-levenshtein@~2.0.6: +fast-levenshtein@^2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= @@ -7691,13 +6336,6 @@ fastq@^1.13.0, fastq@^1.6.0: dependencies: reusify "^1.0.4" -faye-websocket@^0.11.3: - version "0.11.4" - resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.11.4.tgz#7f0d9275cfdd86a1c963dc8b65fcc451edcbb1da" - integrity sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g== - dependencies: - websocket-driver ">=0.5.1" - fb-watchman@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.1.tgz#fc84fb39d2709cf3ff6d743706157bb5708a8a85" @@ -7729,26 +6367,6 @@ file-entry-cache@^6.0.1: dependencies: flat-cache "^3.0.4" -file-loader@^6.2.0: - version "6.2.0" - resolved "https://registry.yarnpkg.com/file-loader/-/file-loader-6.2.0.tgz#baef7cf8e1840df325e4390b4484879480eebe4d" - integrity sha512-qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw== - dependencies: - loader-utils "^2.0.0" - schema-utils "^3.0.0" - -filelist@^1.0.1: - version "1.0.4" - resolved "https://registry.yarnpkg.com/filelist/-/filelist-1.0.4.tgz#f78978a1e944775ff9e62e744424f215e58352b5" - integrity sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q== - dependencies: - minimatch "^5.0.1" - -filesize@^8.0.6: - version "8.0.7" - resolved "https://registry.yarnpkg.com/filesize/-/filesize-8.0.7.tgz#695e70d80f4e47012c132d57a059e80c6b580bd8" - integrity sha512-pjmC+bkIF8XI7fWaH8KxHcZL3DPybs1roSKP4rKDvy20tAWwIObE4+JIseG2byfGKhud5ZnM4YSGKBz7Sh0ndQ== - fill-range@^7.1.1: version "7.1.1" resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.1.1.tgz#44265d3cac07e3ea7dc247516380643754a05292" @@ -7769,15 +6387,6 @@ finalhandler@1.3.1: statuses "2.0.1" unpipe "~1.0.0" -find-cache-dir@^3.3.1: - version "3.3.1" - resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-3.3.1.tgz#89b33fad4a4670daa94f855f7fbe31d6d84fe880" - integrity sha512-t2GDMt3oGC/v+BMwzmllWDuJF/xcDtE5j/fCGbqDD7OLuJkj0cfh1YSA5VKPvwMeLFLNDBkwOKZ2X85jGLVftQ== - dependencies: - commondir "^1.0.1" - make-dir "^3.0.2" - pkg-dir "^4.1.0" - find-root@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/find-root/-/find-root-1.1.0.tgz#abcfc8ba76f708c42a97b3d685b7e9450bfb9ce4" @@ -7790,13 +6399,6 @@ find-up@^2.1.0: dependencies: locate-path "^2.0.0" -find-up@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" - integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg== - dependencies: - locate-path "^3.0.0" - find-up@^4.0.0, find-up@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" @@ -7849,11 +6451,6 @@ flatted@^3.3.1: resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.3.1.tgz#21db470729a6734d4997002f439cb308987f567a" integrity sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw== -follow-redirects@^1.0.0: - version "1.15.6" - resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.6.tgz#7f815c0cda4249c74ff09e95ef97c23b5fd0399b" - integrity sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA== - for-each@^0.3.3: version "0.3.3" resolved "https://registry.yarnpkg.com/for-each/-/for-each-0.3.3.tgz#69b447e88a0a5d32c3e7084f3f1710034b21376e" @@ -7892,34 +6489,6 @@ fork-ts-checker-webpack-plugin@8.0.0: semver "^7.3.5" tapable "^2.2.1" -fork-ts-checker-webpack-plugin@^6.5.0: - version "6.5.3" - resolved "https://registry.yarnpkg.com/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-6.5.3.tgz#eda2eff6e22476a2688d10661688c47f611b37f3" - integrity sha512-SbH/l9ikmMWycd5puHJKTkZJKddF4iRLyW3DeZ08HTI7NGyLS38MXd/KGgeWumQO7YNQbW2u/NtPT2YowbPaGQ== - dependencies: - "@babel/code-frame" "^7.8.3" - "@types/json-schema" "^7.0.5" - chalk "^4.1.0" - chokidar "^3.4.2" - cosmiconfig "^6.0.0" - deepmerge "^4.2.2" - fs-extra "^9.0.0" - glob "^7.1.6" - memfs "^3.1.2" - minimatch "^3.0.4" - schema-utils "2.7.0" - semver "^7.3.2" - tapable "^1.0.0" - -form-data@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-3.0.1.tgz#ebd53791b78356a99af9a300d4282c4d5eb9755f" - integrity sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg== - dependencies: - asynckit "^0.4.0" - combined-stream "^1.0.8" - mime-types "^2.1.12" - form-data@~2.3.2: version "2.3.3" resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.3.tgz#dcce52c05f644f298c6a7ab936bd724ceffbf3a6" @@ -7934,11 +6503,6 @@ forwarded@0.2.0: resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.2.0.tgz#2269936428aad4c15c7ebe9779a84bf0b2a81811" integrity sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow== -fraction.js@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/fraction.js/-/fraction.js-4.2.0.tgz#448e5109a313a3527f5a3ab2119ec4cf0e0e2950" - integrity sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA== - fresh@0.5.2: version "0.5.2" resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" @@ -7985,16 +6549,6 @@ fs-extra@^8.0.1, fs-extra@^8.1.0: jsonfile "^4.0.0" universalify "^0.1.0" -fs-extra@^9.0.0, fs-extra@^9.0.1: - version "9.1.0" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-9.1.0.tgz#5954460c764a8da2094ba3554bf839e6b9a7c86d" - integrity sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ== - dependencies: - at-least-node "^1.0.0" - graceful-fs "^4.2.0" - jsonfile "^6.0.1" - universalify "^2.0.0" - fs-merger@^3.2.1: version "3.2.1" resolved "https://registry.yarnpkg.com/fs-merger/-/fs-merger-3.2.1.tgz#a225b11ae530426138294b8fbb19e82e3d4e0b3b" @@ -8091,11 +6645,6 @@ get-intrinsic@^1.1.1, get-intrinsic@^1.1.3, get-intrinsic@^1.2.1, get-intrinsic@ has-symbols "^1.0.3" hasown "^2.0.0" -get-own-enumerable-property-symbols@^3.0.0: - version "3.0.2" - resolved "https://registry.yarnpkg.com/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz#b5fde77f22cbe35f390b4e089922c50bce6ef664" - integrity sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g== - get-package-type@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/get-package-type/-/get-package-type-0.1.0.tgz#8de2d803cff44df3bc6c456e6668b36c3926e11a" @@ -8183,7 +6732,7 @@ glob@^10.4.1: package-json-from-dist "^1.0.0" path-scurry "^1.11.1" -glob@^7.0.0, glob@^7.0.5, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6: +glob@^7.0.0, glob@^7.0.5, glob@^7.1.3, glob@^7.1.4: version "7.2.3" resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== @@ -8214,13 +6763,6 @@ global-modules@^1.0.0: is-windows "^1.0.1" resolve-dir "^1.0.0" -global-modules@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-2.0.0.tgz#997605ad2345f27f51539bea26574421215c7780" - integrity sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A== - dependencies: - global-prefix "^3.0.0" - global-prefix@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/global-prefix/-/global-prefix-1.0.2.tgz#dbf743c6c14992593c655568cb66ed32c0122ebe" @@ -8232,15 +6774,6 @@ global-prefix@^1.0.1: is-windows "^1.0.1" which "^1.2.14" -global-prefix@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/global-prefix/-/global-prefix-3.0.0.tgz#fc85f73064df69f50421f47f883fe5b913ba9b97" - integrity sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg== - dependencies: - ini "^1.3.5" - kind-of "^6.0.2" - which "^1.3.1" - globals@^11.1.0: version "11.12.0" resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" @@ -8253,7 +6786,7 @@ globals@^13.19.0, globals@^13.23.0: dependencies: type-fest "^0.20.2" -globby@^11.0.0, globby@^11.0.1, globby@^11.0.4, globby@^11.1.0: +globby@^11.0.0, globby@^11.1.0: version "11.1.0" resolved "https://registry.yarnpkg.com/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b" integrity sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g== @@ -8272,7 +6805,7 @@ gopd@^1.0.1: dependencies: get-intrinsic "^1.1.3" -graceful-fs@^4.1.2, graceful-fs@^4.1.3, graceful-fs@^4.1.5, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.10, graceful-fs@^4.2.11, graceful-fs@^4.2.4, graceful-fs@^4.2.6, graceful-fs@^4.2.8, graceful-fs@^4.2.9: +graceful-fs@^4.1.2, graceful-fs@^4.1.3, graceful-fs@^4.1.5, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.10, graceful-fs@^4.2.11, graceful-fs@^4.2.4, graceful-fs@^4.2.8, graceful-fs@^4.2.9: version "4.2.11" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3" integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ== @@ -8299,18 +6832,6 @@ gulp-sort@^2.0.0: dependencies: through2 "^2.0.1" -gzip-size@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/gzip-size/-/gzip-size-6.0.0.tgz#065367fd50c239c0671cbcbad5be3e2eeb10e462" - integrity sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q== - dependencies: - duplexer "^0.1.2" - -handle-thing@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/handle-thing/-/handle-thing-2.0.1.tgz#857f79ce359580c340d43081cc648970d0bb234e" - integrity sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg== - har-schema@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92" @@ -8329,11 +6850,6 @@ hard-rejection@^2.1.0: resolved "https://registry.yarnpkg.com/hard-rejection/-/hard-rejection-2.1.0.tgz#1c6eda5c1685c63942766d79bb40ae773cecd883" integrity sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA== -harmony-reflect@^1.4.6: - version "1.6.1" - resolved "https://registry.yarnpkg.com/harmony-reflect/-/harmony-reflect-1.6.1.tgz#c108d4f2bb451efef7a37861fdbdae72c9bdefa9" - integrity sha512-WJTeyp0JzGtHcuMsi7rw2VwtkvLa+JyfEKJCFyfcS0+CDkjQ5lHPu7zEhFZP+PDSRrEgXa5Ah0l1MbgbE41XjA== - has-bigints@^1.0.1, has-bigints@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/has-bigints/-/has-bigints-1.0.2.tgz#0871bd3e3d51626f6ca0966668ba35d5602d6eaa" @@ -8366,7 +6882,7 @@ has-proto@^1.0.1: resolved "https://registry.yarnpkg.com/has-proto/-/has-proto-1.0.3.tgz#b31ddfe9b0e6e9914536a6ab286426d0214f77fd" integrity sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q== -has-symbols@^1.0.1, has-symbols@^1.0.2, has-symbols@^1.0.3: +has-symbols@^1.0.2, has-symbols@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.3.tgz#bb7b2c4349251dce87b125f7bdf874aa7c8b39f8" integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A== @@ -8400,7 +6916,7 @@ hasown@^2.0.0: dependencies: function-bind "^1.1.2" -he@^1.1.0, he@^1.2.0: +he@^1.1.0: version "1.2.0" resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== @@ -8439,34 +6955,12 @@ homedir-polyfill@^1.0.1: dependencies: parse-passwd "^1.0.0" -hoopy@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/hoopy/-/hoopy-0.1.4.tgz#609207d661100033a9a9402ad3dea677381c1b1d" - integrity sha512-HRcs+2mr52W0K+x8RzcLzuPPmVIKMSv97RGHy0Ea9y/mpcaK+xTrjICA04KAHi4GRzxliNqNJEFYWHghy3rSfQ== - hosted-git-info@^2.1.4: version "2.8.9" resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9" integrity sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw== -hpack.js@^2.1.6: - version "2.1.6" - resolved "https://registry.yarnpkg.com/hpack.js/-/hpack.js-2.1.6.tgz#87774c0949e513f42e84575b3c45681fade2a0b2" - integrity sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI= - dependencies: - inherits "^2.0.1" - obuf "^1.0.0" - readable-stream "^2.0.1" - wbuf "^1.1.0" - -html-encoding-sniffer@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz#42a6dc4fd33f00281176e8b23759ca4e4fa185f3" - integrity sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ== - dependencies: - whatwg-encoding "^1.0.5" - -html-entities@^2.1.0, html-entities@^2.3.2, html-entities@^2.5.2: +html-entities@^2.5.2: version "2.5.2" resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-2.5.2.tgz#201a3cf95d3a15be7099521620d19dfb4f65359f" integrity sha512-K//PSRMQk4FZ78Kyau+mZurHn3FH0Vwr+H36eE0rPbeYkRRi9YxceYPhuN60UwWorxyKHhqoAJl2OFKa4BVtaA== @@ -8476,19 +6970,6 @@ html-escaper@^2.0.0: resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453" integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg== -html-minifier-terser@^6.0.2: - version "6.1.0" - resolved "https://registry.yarnpkg.com/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz#bfc818934cc07918f6b3669f5774ecdfd48f32ab" - integrity sha512-YXxSlJBZTP7RS3tWnQw74ooKa6L9b9i9QYXY21eUEvhZ3u9XLfv6OnFsQq6RxkhHygsaUMvYsZRV5rU/OVNZxw== - dependencies: - camel-case "^4.1.2" - clean-css "^5.2.2" - commander "^8.3.0" - he "^1.2.0" - param-case "^3.0.4" - relateurl "^0.2.7" - terser "^5.10.0" - html-parse-stringify@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/html-parse-stringify/-/html-parse-stringify-3.0.1.tgz#dfc1017347ce9f77c8141a507f233040c59c55d2" @@ -8507,32 +6988,11 @@ html-to-text@^9.0.5: htmlparser2 "^8.0.2" selderee "^0.11.0" -html-webpack-plugin@^5.5.0: - version "5.5.0" - resolved "https://registry.yarnpkg.com/html-webpack-plugin/-/html-webpack-plugin-5.5.0.tgz#c3911936f57681c1f9f4d8b68c158cd9dfe52f50" - integrity sha512-sy88PC2cRTVxvETRgUHFrL4No3UxvcH8G1NepGhqaTT+GXN2kTamqasot0inS5hXeg1cMbFDt27zzo9p35lZVw== - dependencies: - "@types/html-minifier-terser" "^6.0.0" - html-minifier-terser "^6.0.2" - lodash "^4.17.21" - pretty-error "^4.0.0" - tapable "^2.0.0" - htmlencode@^0.0.4: version "0.0.4" resolved "https://registry.yarnpkg.com/htmlencode/-/htmlencode-0.0.4.tgz#f7e2d6afbe18a87a78e63ba3308e753766740e3f" integrity sha1-9+LWr74YqHp45jujMI51N2Z0Dj8= -htmlparser2@^6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-6.1.0.tgz#c4d762b6c3371a05dbe65e94ae43a9f845fb8fb7" - integrity sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A== - dependencies: - domelementtype "^2.0.1" - domhandler "^4.0.0" - domutils "^2.5.2" - entities "^2.0.0" - htmlparser2@^8.0.0, htmlparser2@^8.0.1, htmlparser2@^8.0.2: version "8.0.2" resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-8.0.2.tgz#f002151705b383e62433b5cf466f5b716edaec21" @@ -8543,11 +7003,6 @@ htmlparser2@^8.0.0, htmlparser2@^8.0.1, htmlparser2@^8.0.2: domutils "^3.0.1" entities "^4.4.0" -http-deceiver@^1.2.7: - version "1.2.7" - resolved "https://registry.yarnpkg.com/http-deceiver/-/http-deceiver-1.2.7.tgz#fa7168944ab9a519d337cb0bec7284dc3e723d87" - integrity sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc= - http-errors@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-2.0.0.tgz#b7774a1486ef73cf7667ac9ae0858c012c57b9d3" @@ -8559,50 +7014,6 @@ http-errors@2.0.0: statuses "2.0.1" toidentifier "1.0.1" -http-errors@~1.6.2: - version "1.6.3" - resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.6.3.tgz#8b55680bb4be283a0b5bf4ea2e38580be1d9320d" - integrity sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0= - dependencies: - depd "~1.1.2" - inherits "2.0.3" - setprototypeof "1.1.0" - statuses ">= 1.4.0 < 2" - -http-parser-js@>=0.5.1: - version "0.5.2" - resolved "https://registry.yarnpkg.com/http-parser-js/-/http-parser-js-0.5.2.tgz#da2e31d237b393aae72ace43882dd7e270a8ff77" - integrity sha512-opCO9ASqg5Wy2FNo7A0sxy71yGbbkJJXLdgMK04Tcypw9jr2MgWbyubb0+WdmDmGnFflO7fRbqbaihh/ENDlRQ== - -http-proxy-agent@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz#8a8c8ef7f5932ccf953c296ca8291b95aa74aa3a" - integrity sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg== - dependencies: - "@tootallnate/once" "1" - agent-base "6" - debug "4" - -http-proxy-middleware@^2.0.0: - version "2.0.3" - resolved "https://registry.yarnpkg.com/http-proxy-middleware/-/http-proxy-middleware-2.0.3.tgz#5df04f69a89f530c2284cd71eeaa51ba52243289" - integrity sha512-1bloEwnrHMnCoO/Gcwbz7eSVvW50KPES01PecpagI+YLNLci4AcuKJrujW4Mc3sBLpFxMSlsLNHS5Nl/lvrTPA== - dependencies: - "@types/http-proxy" "^1.17.8" - http-proxy "^1.18.1" - is-glob "^4.0.1" - is-plain-obj "^3.0.0" - micromatch "^4.0.2" - -http-proxy@^1.18.1: - version "1.18.1" - resolved "https://registry.yarnpkg.com/http-proxy/-/http-proxy-1.18.1.tgz#401541f0534884bbf95260334e72f88ee3976549" - integrity sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ== - dependencies: - eventemitter3 "^4.0.0" - follow-redirects "^1.0.0" - requires-port "^1.0.0" - http-signature@~1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1" @@ -8612,7 +7023,7 @@ http-signature@~1.2.0: jsprim "^1.2.2" sshpk "^1.7.0" -https-proxy-agent@^5.0.0, https-proxy-agent@^5.0.1: +https-proxy-agent@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz#c59ef224a04fe8b754f3db0063a25ea30d0005d6" integrity sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA== @@ -8740,23 +7151,6 @@ iconv-lite@^0.6.3: dependencies: safer-buffer ">= 2.1.2 < 3.0.0" -icss-utils@^5.0.0, icss-utils@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/icss-utils/-/icss-utils-5.1.0.tgz#c6be6858abd013d768e98366ae47e25d5887b1ae" - integrity sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA== - -idb@^6.1.4: - version "6.1.5" - resolved "https://registry.yarnpkg.com/idb/-/idb-6.1.5.tgz#dbc53e7adf1ac7c59f9b2bf56e00b4ea4fce8c7b" - integrity sha512-IJtugpKkiVXQn5Y+LteyBCNk1N8xpGV3wWZk9EVtZWH8DYkjBn0bX1XnGP9RkyZF0sAcywa6unHqSWKe7q4LGw== - -identity-obj-proxy@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/identity-obj-proxy/-/identity-obj-proxy-3.0.0.tgz#94d2bda96084453ef36fbc5aaec37e0f79f1fc14" - integrity sha1-lNK9qWCERT7zb7xarsN+D3nx/BQ= - dependencies: - harmony-reflect "^1.4.6" - ieee754@^1.1.13, ieee754@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" @@ -8767,12 +7161,12 @@ ignore@^5.2.0, ignore@^5.2.4: resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.2.4.tgz#a291c0c6178ff1b960befe47fcdec301674a6324" integrity sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ== -immer@^9.0.21, immer@^9.0.7: +immer@^9.0.21: version "9.0.21" resolved "https://registry.yarnpkg.com/immer/-/immer-9.0.21.tgz#1e025ea31a40f24fb064f1fef23e931496330176" integrity sha512-bc4NBHqOqSfRW7POMkHd51LvClaeMXpm8dx0e8oE2GORbq5aRK7Bxl4FyzVLdGtLmvLKL7BTDBG5ACQm4HWjTA== -import-fresh@^3.1.0, import-fresh@^3.2.1: +import-fresh@^3.2.1: version "3.2.2" resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.2.2.tgz#fc129c160c5d68235507f4331a6baad186bdbc3e" integrity sha512-cTPNrlvJT6twpYy+YmKUKrTSjWFs3bjYjAhCwm+z4EOCubZxAuO+hHpRN64TqjEaYSHs7tJAE0w1CKMGmsG/lw== @@ -8811,12 +7205,7 @@ inherits@2, inherits@2.0.4, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, i resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== -inherits@2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" - integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4= - -ini@^1.3.4, ini@^1.3.5: +ini@^1.3.4: version "1.3.8" resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c" integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew== @@ -8884,21 +7273,11 @@ interpret@^1.0.0: resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.4.0.tgz#665ab8bc4da27a774a40584e812e3e0fa45b1a1e" integrity sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA== -ip@^1.1.0: - version "1.1.9" - resolved "https://registry.yarnpkg.com/ip/-/ip-1.1.9.tgz#8dfbcc99a754d07f425310b86a99546b1151e396" - integrity sha512-cyRxvOEpNHNtchU3Ln9KC/auJgup87llfQpQ+t5ghoC/UhL16SWzbueiCsdTnWmqAWl7LadfuwhlqmtOaqMHdQ== - ipaddr.js@1.9.1: version "1.9.1" resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz#bff38543eeb8984825079ff3a2a8e6cbd46781b3" integrity sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g== -ipaddr.js@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-2.0.1.tgz#eca256a7a877e917aeb368b0a7497ddf42ef81c0" - integrity sha512-1qTgH9NG+IIJ4yfKs2e6Pp1bZg8wbDbKHT21HrLIeYBTRLgMYKnMTPAuI3Lcs61nfx5h1xlXnbJtH1kX5/d/ng== - is-arguments@^1.0.4, is-arguments@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/is-arguments/-/is-arguments-1.1.1.tgz#15b3f88fda01f2a97fec84ca761a560f123efa9b" @@ -8961,11 +7340,6 @@ is-date-object@^1.0.1, is-date-object@^1.0.5: dependencies: has-tostringtag "^1.0.0" -is-docker@^2.0.0, is-docker@^2.1.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-2.2.1.tgz#33eeabe23cfe86f14bde4408a02c0cfb853acdaa" - integrity sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ== - is-extglob@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" @@ -9017,11 +7391,6 @@ is-map@^2.0.2, is-map@^2.0.3: resolved "https://registry.yarnpkg.com/is-map/-/is-map-2.0.3.tgz#ede96b7fe1e270b3c4465e3a465658764926d62e" integrity sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw== -is-module@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-module/-/is-module-1.0.0.tgz#3258fb69f78c14d5b815d664336b4cffb6441591" - integrity sha1-Mlj7afeMFNW4FdZkM2tM/7ZEFZE= - is-negated-glob@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-negated-glob/-/is-negated-glob-1.0.0.tgz#6910bca5da8c95e784b5751b976cf5a10fee36d2" @@ -9049,17 +7418,7 @@ is-number@^7.0.0: resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== -is-obj@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-1.0.1.tgz#3e4729ac1f5fde025cd7d83a896dab9f4f67db0f" - integrity sha1-PkcprB9f3gJc19g6iW2rn09n2w8= - -is-path-cwd@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-2.2.0.tgz#67d43b82664a7b5191fd9119127eb300048a9fdb" - integrity sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ== - -is-path-inside@^3.0.2, is-path-inside@^3.0.3: +is-path-inside@^3.0.3: version "3.0.3" resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-3.0.3.tgz#d231362e53a07ff2b0e0ea7fed049161ffd16283" integrity sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ== @@ -9069,11 +7428,6 @@ is-plain-obj@^1.1.0: resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" integrity sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg== -is-plain-obj@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-3.0.0.tgz#af6f2ea14ac5a646183a5bbdb5baabbc156ad9d7" - integrity sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA== - is-plain-obj@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-4.0.0.tgz#06c0999fd7574edf5a906ba5644ad0feb3a84d22" @@ -9084,17 +7438,12 @@ is-plain-object@^5.0.0: resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-5.0.0.tgz#4427f50ab3429e9025ea7d52e9043a9ef4159344" integrity sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q== -is-potential-custom-element-name@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz#171ed6f19e3ac554394edf78caa05784a45bebb5" - integrity sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ== - is-promise@^2.1.0: version "2.2.2" resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.2.2.tgz#39ab959ccbf9a774cf079f7b40c7a26f763135f1" integrity sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ== -is-regex@^1.0.4, is-regex@^1.1.4: +is-regex@^1.1.4: version "1.1.4" resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.4.tgz#eef5663cd59fa4c0ae339505323df6854bb15958" integrity sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg== @@ -9102,16 +7451,6 @@ is-regex@^1.0.4, is-regex@^1.1.4: call-bind "^1.0.2" has-tostringtag "^1.0.0" -is-regexp@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-regexp/-/is-regexp-1.0.0.tgz#fd2d883545c46bac5a633e7b9a09e87fa2cb5069" - integrity sha1-/S2INUXEa6xaYz57mgnof6LLUGk= - -is-root@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-root/-/is-root-2.1.0.tgz#809e18129cf1129644302a4f8544035d51984a9c" - integrity sha512-AGOriNp96vNBd3HtU+RzFEc75FfR5ymiYv8E553I71SCeXBiMsVDUtdio1OEFvrPyLIQ9tVR5RxXIFe5PUFjMg== - is-set@^2.0.2, is-set@^2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/is-set/-/is-set-2.0.3.tgz#8ab209ea424608141372ded6e0cb200ef1d9d01d" @@ -9162,7 +7501,7 @@ is-typed-array@^1.1.3: dependencies: which-typed-array "^1.1.14" -is-typedarray@^1.0.0, is-typedarray@~1.0.0: +is-typedarray@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo= @@ -9202,13 +7541,6 @@ is-windows@^1.0.0, is-windows@^1.0.1: resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA== -is-wsl@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-2.2.0.tgz#74a4c76e77ca9fd3f932f290c17ea326cd157271" - integrity sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww== - dependencies: - is-docker "^2.0.0" - isarray@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" @@ -9244,7 +7576,7 @@ istanbul-lib-coverage@^3.2.2: resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz#2d166c4b0644d43a39f04bf6c2edd1e585f31756" integrity sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg== -istanbul-lib-instrument@^5.0.4, istanbul-lib-instrument@^5.1.0: +istanbul-lib-instrument@^5.0.4: version "5.2.1" resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz#d10c8885c2125574e1c231cacadf955675e1ce3d" integrity sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg== @@ -9332,25 +7664,6 @@ jackspeak@^3.1.2: optionalDependencies: "@pkgjs/parseargs" "^0.11.0" -jake@^10.8.5: - version "10.8.5" - resolved "https://registry.yarnpkg.com/jake/-/jake-10.8.5.tgz#f2183d2c59382cb274226034543b9c03b8164c46" - integrity sha512-sVpxYeuAhWt0OTWITwT98oyV0GsXyMlXCF+3L1SuafBVUIr/uILGRB+NqwkzhgXKvoJpDIpQvqkUALgdmQsQxw== - dependencies: - async "^3.2.3" - chalk "^4.0.2" - filelist "^1.0.1" - minimatch "^3.0.4" - -jest-changed-files@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-27.5.1.tgz#a348aed00ec9bf671cc58a66fcbe7c3dfd6a68f5" - integrity sha512-buBLMiByfWGCoMsLLzGUUSpAmIAGnbR2KJoMN10ziLhOLvP4e0SlypHnAel8iqQXTrcbmfEY9sSqae5sgUsTvw== - dependencies: - "@jest/types" "^27.5.1" - execa "^5.0.0" - throat "^6.0.1" - jest-changed-files@^29.7.0: version "29.7.0" resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-29.7.0.tgz#1c06d07e77c78e1585d020424dedc10d6e17ac3a" @@ -9360,31 +7673,6 @@ jest-changed-files@^29.7.0: jest-util "^29.7.0" p-limit "^3.1.0" -jest-circus@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-circus/-/jest-circus-27.5.1.tgz#37a5a4459b7bf4406e53d637b49d22c65d125ecc" - integrity sha512-D95R7x5UtlMA5iBYsOHFFbMD/GVA4R/Kdq15f7xYWUfWHBto9NYRsOvnSauTgdF+ogCpJ4tyKOXhUifxS65gdw== - dependencies: - "@jest/environment" "^27.5.1" - "@jest/test-result" "^27.5.1" - "@jest/types" "^27.5.1" - "@types/node" "*" - chalk "^4.0.0" - co "^4.6.0" - dedent "^0.7.0" - expect "^27.5.1" - is-generator-fn "^2.0.0" - jest-each "^27.5.1" - jest-matcher-utils "^27.5.1" - jest-message-util "^27.5.1" - jest-runtime "^27.5.1" - jest-snapshot "^27.5.1" - jest-util "^27.5.1" - pretty-format "^27.5.1" - slash "^3.0.0" - stack-utils "^2.0.3" - throat "^6.0.1" - jest-circus@^29.7.0: version "29.7.0" resolved "https://registry.yarnpkg.com/jest-circus/-/jest-circus-29.7.0.tgz#b6817a45fcc835d8b16d5962d0c026473ee3668a" @@ -9411,24 +7699,6 @@ jest-circus@^29.7.0: slash "^3.0.0" stack-utils "^2.0.3" -jest-cli@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-27.5.1.tgz#278794a6e6458ea8029547e6c6cbf673bd30b145" - integrity sha512-Hc6HOOwYq4/74/c62dEE3r5elx8wjYqxY0r0G/nFrLDPMFRu6RA/u8qINOIkvhxG7mMQ5EJsOGfRpI8L6eFUVw== - dependencies: - "@jest/core" "^27.5.1" - "@jest/test-result" "^27.5.1" - "@jest/types" "^27.5.1" - chalk "^4.0.0" - exit "^0.1.2" - graceful-fs "^4.2.9" - import-local "^3.0.2" - jest-config "^27.5.1" - jest-util "^27.5.1" - jest-validate "^27.5.1" - prompts "^2.0.1" - yargs "^16.2.0" - jest-cli@^29.7.0: version "29.7.0" resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-29.7.0.tgz#5592c940798e0cae677eec169264f2d839a37995" @@ -9446,36 +7716,6 @@ jest-cli@^29.7.0: jest-validate "^29.7.0" yargs "^17.3.1" -jest-config@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-27.5.1.tgz#5c387de33dca3f99ad6357ddeccd91bf3a0e4a41" - integrity sha512-5sAsjm6tGdsVbW9ahcChPAFCk4IlkQUknH5AvKjuLTSlcO/wCZKyFdn7Rg0EkC+OGgWODEy2hDpWB1PgzH0JNA== - dependencies: - "@babel/core" "^7.8.0" - "@jest/test-sequencer" "^27.5.1" - "@jest/types" "^27.5.1" - babel-jest "^27.5.1" - chalk "^4.0.0" - ci-info "^3.2.0" - deepmerge "^4.2.2" - glob "^7.1.1" - graceful-fs "^4.2.9" - jest-circus "^27.5.1" - jest-environment-jsdom "^27.5.1" - jest-environment-node "^27.5.1" - jest-get-type "^27.5.1" - jest-jasmine2 "^27.5.1" - jest-regex-util "^27.5.1" - jest-resolve "^27.5.1" - jest-runner "^27.5.1" - jest-util "^27.5.1" - jest-validate "^27.5.1" - micromatch "^4.0.4" - parse-json "^5.2.0" - pretty-format "^27.5.1" - slash "^3.0.0" - strip-json-comments "^3.1.1" - jest-config@^29.7.0: version "29.7.0" resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-29.7.0.tgz#bcbda8806dbcc01b1e316a46bb74085a84b0245f" @@ -9504,16 +7744,6 @@ jest-config@^29.7.0: slash "^3.0.0" strip-json-comments "^3.1.1" -jest-diff@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-27.5.1.tgz#a07f5011ac9e6643cf8a95a462b7b1ecf6680def" - integrity sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw== - dependencies: - chalk "^4.0.0" - diff-sequences "^27.5.1" - jest-get-type "^27.5.1" - pretty-format "^27.5.1" - jest-diff@^29.7.0: version "29.7.0" resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-29.7.0.tgz#017934a66ebb7ecf6f205e84699be10afd70458a" @@ -9524,13 +7754,6 @@ jest-diff@^29.7.0: jest-get-type "^29.6.3" pretty-format "^29.7.0" -jest-docblock@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-27.5.1.tgz#14092f364a42c6108d42c33c8cf30e058e25f6c0" - integrity sha512-rl7hlABeTsRYxKiUfpHrQrG4e2obOiTQWfMEH3PxPjOtdsfLQO4ReWSZaQ7DETm4xu07rl4q/h4zcKXyU0/OzQ== - dependencies: - detect-newline "^3.0.0" - jest-docblock@^29.7.0: version "29.7.0" resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-29.7.0.tgz#8fddb6adc3cdc955c93e2a87f61cfd350d5d119a" @@ -9538,17 +7761,6 @@ jest-docblock@^29.7.0: dependencies: detect-newline "^3.0.0" -jest-each@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-27.5.1.tgz#5bc87016f45ed9507fed6e4702a5b468a5b2c44e" - integrity sha512-1Ff6p+FbhT/bXQnEouYy00bkNSY7OUpfIcmdl8vZ31A1UUaurOLPA8a8BbJOF2RDUElwJhmeaV7LnagI+5UwNQ== - dependencies: - "@jest/types" "^27.5.1" - chalk "^4.0.0" - jest-get-type "^27.5.1" - jest-util "^27.5.1" - pretty-format "^27.5.1" - jest-each@^29.7.0: version "29.7.0" resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-29.7.0.tgz#162a9b3f2328bdd991beaabffbb74745e56577d1" @@ -9560,31 +7772,6 @@ jest-each@^29.7.0: jest-util "^29.7.0" pretty-format "^29.7.0" -jest-environment-jsdom@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-27.5.1.tgz#ea9ccd1fc610209655a77898f86b2b559516a546" - integrity sha512-TFBvkTC1Hnnnrka/fUb56atfDtJ9VMZ94JkjTbggl1PEpwrYtUBKMezB3inLmWqQsXYLcMwNoDQwoBTAvFfsfw== - dependencies: - "@jest/environment" "^27.5.1" - "@jest/fake-timers" "^27.5.1" - "@jest/types" "^27.5.1" - "@types/node" "*" - jest-mock "^27.5.1" - jest-util "^27.5.1" - jsdom "^16.6.0" - -jest-environment-node@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-27.5.1.tgz#dedc2cfe52fab6b8f5714b4808aefa85357a365e" - integrity sha512-Jt4ZUnxdOsTGwSRAfKEnE6BcwsSPNOijjwifq5sDFSA2kesnXTvNqKHYgM0hDq3549Uf/KzdXNYn4wMZJPlFLw== - dependencies: - "@jest/environment" "^27.5.1" - "@jest/fake-timers" "^27.5.1" - "@jest/types" "^27.5.1" - "@types/node" "*" - jest-mock "^27.5.1" - jest-util "^27.5.1" - jest-environment-node@^29.7.0: version "29.7.0" resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-29.7.0.tgz#0b93e111dda8ec120bc8300e6d1fb9576e164376" @@ -9597,36 +7784,19 @@ jest-environment-node@^29.7.0: jest-mock "^29.7.0" jest-util "^29.7.0" -jest-get-type@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-27.5.1.tgz#3cd613c507b0f7ace013df407a1c1cd578bcb4f1" - integrity sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw== +jest-fetch-mock@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/jest-fetch-mock/-/jest-fetch-mock-3.0.3.tgz#31749c456ae27b8919d69824f1c2bd85fe0a1f3b" + integrity sha512-Ux1nWprtLrdrH4XwE7O7InRY6psIi3GOsqNESJgMJ+M5cv4A8Lh7SN9d2V2kKRZ8ebAfcd1LNyZguAOb6JiDqw== + dependencies: + cross-fetch "^3.0.4" + promise-polyfill "^8.1.3" jest-get-type@^29.6.3: version "29.6.3" resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-29.6.3.tgz#36f499fdcea197c1045a127319c0481723908fd1" integrity sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw== -jest-haste-map@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-27.5.1.tgz#9fd8bd7e7b4fa502d9c6164c5640512b4e811e7f" - integrity sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng== - dependencies: - "@jest/types" "^27.5.1" - "@types/graceful-fs" "^4.1.2" - "@types/node" "*" - anymatch "^3.0.3" - fb-watchman "^2.0.0" - graceful-fs "^4.2.9" - jest-regex-util "^27.5.1" - jest-serializer "^27.5.1" - jest-util "^27.5.1" - jest-worker "^27.5.1" - micromatch "^4.0.4" - walker "^1.0.7" - optionalDependencies: - fsevents "^2.3.2" - jest-haste-map@^29.7.0: version "29.7.0" resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-29.7.0.tgz#3c2396524482f5a0506376e6c858c3bbcc17b104" @@ -9646,37 +7816,6 @@ jest-haste-map@^29.7.0: optionalDependencies: fsevents "^2.3.2" -jest-jasmine2@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-27.5.1.tgz#a037b0034ef49a9f3d71c4375a796f3b230d1ac4" - integrity sha512-jtq7VVyG8SqAorDpApwiJJImd0V2wv1xzdheGHRGyuT7gZm6gG47QEskOlzsN1PG/6WNaCo5pmwMHDf3AkG2pQ== - dependencies: - "@jest/environment" "^27.5.1" - "@jest/source-map" "^27.5.1" - "@jest/test-result" "^27.5.1" - "@jest/types" "^27.5.1" - "@types/node" "*" - chalk "^4.0.0" - co "^4.6.0" - expect "^27.5.1" - is-generator-fn "^2.0.0" - jest-each "^27.5.1" - jest-matcher-utils "^27.5.1" - jest-message-util "^27.5.1" - jest-runtime "^27.5.1" - jest-snapshot "^27.5.1" - jest-util "^27.5.1" - pretty-format "^27.5.1" - throat "^6.0.1" - -jest-leak-detector@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-27.5.1.tgz#6ec9d54c3579dd6e3e66d70e3498adf80fde3fb8" - integrity sha512-POXfWAMvfU6WMUXftV4HolnJfnPOGEu10fscNCA76KBpRRhcMN2c8d3iT2pxQS3HLbA+5X4sOUPzYO2NUyIlHQ== - dependencies: - jest-get-type "^27.5.1" - pretty-format "^27.5.1" - jest-leak-detector@^29.7.0: version "29.7.0" resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-29.7.0.tgz#5b7ec0dadfdfec0ca383dc9aa016d36b5ea4c728" @@ -9685,16 +7824,6 @@ jest-leak-detector@^29.7.0: jest-get-type "^29.6.3" pretty-format "^29.7.0" -jest-matcher-utils@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz#9c0cdbda8245bc22d2331729d1091308b40cf8ab" - integrity sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw== - dependencies: - chalk "^4.0.0" - jest-diff "^27.5.1" - jest-get-type "^27.5.1" - pretty-format "^27.5.1" - jest-matcher-utils@^29.7.0: version "29.7.0" resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-29.7.0.tgz#ae8fec79ff249fd592ce80e3ee474e83a6c44f12" @@ -9705,25 +7834,10 @@ jest-matcher-utils@^29.7.0: jest-get-type "^29.6.3" pretty-format "^29.7.0" -jest-message-util@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-27.5.1.tgz#bdda72806da10d9ed6425e12afff38cd1458b6cf" - integrity sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g== - dependencies: - "@babel/code-frame" "^7.12.13" - "@jest/types" "^27.5.1" - "@types/stack-utils" "^2.0.0" - chalk "^4.0.0" - graceful-fs "^4.2.9" - micromatch "^4.0.4" - pretty-format "^27.5.1" - slash "^3.0.0" - stack-utils "^2.0.3" - -jest-message-util@^29.7.0: - version "29.7.0" - resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-29.7.0.tgz#8bc392e204e95dfe7564abbe72a404e28e51f7f3" - integrity sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w== +jest-message-util@^29.7.0: + version "29.7.0" + resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-29.7.0.tgz#8bc392e204e95dfe7564abbe72a404e28e51f7f3" + integrity sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w== dependencies: "@babel/code-frame" "^7.12.13" "@jest/types" "^29.6.3" @@ -9735,14 +7849,6 @@ jest-message-util@^29.7.0: slash "^3.0.0" stack-utils "^2.0.3" -jest-mock@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-27.5.1.tgz#19948336d49ef4d9c52021d34ac7b5f36ff967d6" - integrity sha512-K4jKbY1d4ENhbrG2zuPWaQBvDly+iZ2yAW+T1fATN78hc0sInwn7wZB8XtlNnvHug5RMwV897Xm4LqmPM4e2Og== - dependencies: - "@jest/types" "^27.5.1" - "@types/node" "*" - jest-mock@^29.7.0: version "29.7.0" resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-29.7.0.tgz#4e836cf60e99c6fcfabe9f99d017f3fdd50a6347" @@ -9757,25 +7863,11 @@ jest-pnp-resolver@^1.2.2: resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz#b704ac0ae028a89108a4d040b3f919dfddc8e33c" integrity sha512-olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w== -jest-regex-util@^27.0.0, jest-regex-util@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-27.5.1.tgz#4da143f7e9fd1e542d4aa69617b38e4a78365b95" - integrity sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg== - jest-regex-util@^29.6.3: version "29.6.3" resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-29.6.3.tgz#4a556d9c776af68e1c5f48194f4d0327d24e8a52" integrity sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg== -jest-resolve-dependencies@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-27.5.1.tgz#d811ecc8305e731cc86dd79741ee98fed06f1da8" - integrity sha512-QQOOdY4PE39iawDn5rzbIePNigfe5B9Z91GDD1ae/xNDlu9kaat8QQ5EKnNmVWPV54hUdxCVwwj6YMgR2O7IOg== - dependencies: - "@jest/types" "^27.5.1" - jest-regex-util "^27.5.1" - jest-snapshot "^27.5.1" - jest-resolve-dependencies@^29.7.0: version "29.7.0" resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-29.7.0.tgz#1b04f2c095f37fc776ff40803dc92921b1e88428" @@ -9784,22 +7876,6 @@ jest-resolve-dependencies@^29.7.0: jest-regex-util "^29.6.3" jest-snapshot "^29.7.0" -jest-resolve@^27.4.2, jest-resolve@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-27.5.1.tgz#a2f1c5a0796ec18fe9eb1536ac3814c23617b384" - integrity sha512-FFDy8/9E6CV83IMbDpcjOhumAQPDyETnU2KZ1O98DwTnz8AOBsW/Xv3GySr1mOZdItLR+zDZ7I/UdTFbgSOVCw== - dependencies: - "@jest/types" "^27.5.1" - chalk "^4.0.0" - graceful-fs "^4.2.9" - jest-haste-map "^27.5.1" - jest-pnp-resolver "^1.2.2" - jest-util "^27.5.1" - jest-validate "^27.5.1" - resolve "^1.20.0" - resolve.exports "^1.1.0" - slash "^3.0.0" - jest-resolve@^29.7.0: version "29.7.0" resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-29.7.0.tgz#64d6a8992dd26f635ab0c01e5eef4399c6bcbc30" @@ -9815,33 +7891,6 @@ jest-resolve@^29.7.0: resolve.exports "^2.0.0" slash "^3.0.0" -jest-runner@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-27.5.1.tgz#071b27c1fa30d90540805c5645a0ec167c7b62e5" - integrity sha512-g4NPsM4mFCOwFKXO4p/H/kWGdJp9V8kURY2lX8Me2drgXqG7rrZAx5kv+5H7wtt/cdFIjhqYx1HrlqWHaOvDaQ== - dependencies: - "@jest/console" "^27.5.1" - "@jest/environment" "^27.5.1" - "@jest/test-result" "^27.5.1" - "@jest/transform" "^27.5.1" - "@jest/types" "^27.5.1" - "@types/node" "*" - chalk "^4.0.0" - emittery "^0.8.1" - graceful-fs "^4.2.9" - jest-docblock "^27.5.1" - jest-environment-jsdom "^27.5.1" - jest-environment-node "^27.5.1" - jest-haste-map "^27.5.1" - jest-leak-detector "^27.5.1" - jest-message-util "^27.5.1" - jest-resolve "^27.5.1" - jest-runtime "^27.5.1" - jest-util "^27.5.1" - jest-worker "^27.5.1" - source-map-support "^0.5.6" - throat "^6.0.1" - jest-runner@^29.7.0: version "29.7.0" resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-29.7.0.tgz#809af072d408a53dcfd2e849a4c976d3132f718e" @@ -9869,34 +7918,6 @@ jest-runner@^29.7.0: p-limit "^3.1.0" source-map-support "0.5.13" -jest-runtime@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-27.5.1.tgz#4896003d7a334f7e8e4a53ba93fb9bcd3db0a1af" - integrity sha512-o7gxw3Gf+H2IGt8fv0RiyE1+r83FJBRruoA+FXrlHw6xEyBsU8ugA6IPfTdVyA0w8HClpbK+DGJxH59UrNMx8A== - dependencies: - "@jest/environment" "^27.5.1" - "@jest/fake-timers" "^27.5.1" - "@jest/globals" "^27.5.1" - "@jest/source-map" "^27.5.1" - "@jest/test-result" "^27.5.1" - "@jest/transform" "^27.5.1" - "@jest/types" "^27.5.1" - chalk "^4.0.0" - cjs-module-lexer "^1.0.0" - collect-v8-coverage "^1.0.0" - execa "^5.0.0" - glob "^7.1.3" - graceful-fs "^4.2.9" - jest-haste-map "^27.5.1" - jest-message-util "^27.5.1" - jest-mock "^27.5.1" - jest-regex-util "^27.5.1" - jest-resolve "^27.5.1" - jest-snapshot "^27.5.1" - jest-util "^27.5.1" - slash "^3.0.0" - strip-bom "^4.0.0" - jest-runtime@^29.7.0: version "29.7.0" resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-29.7.0.tgz#efecb3141cf7d3767a3a0cc8f7c9990587d3d817" @@ -9925,42 +7946,6 @@ jest-runtime@^29.7.0: slash "^3.0.0" strip-bom "^4.0.0" -jest-serializer@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-27.5.1.tgz#81438410a30ea66fd57ff730835123dea1fb1f64" - integrity sha512-jZCyo6iIxO1aqUxpuBlwTDMkzOAJS4a3eYz3YzgxxVQFwLeSA7Jfq5cbqCY+JLvTDrWirgusI/0KwxKMgrdf7w== - dependencies: - "@types/node" "*" - graceful-fs "^4.2.9" - -jest-snapshot@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-27.5.1.tgz#b668d50d23d38054a51b42c4039cab59ae6eb6a1" - integrity sha512-yYykXI5a0I31xX67mgeLw1DZ0bJB+gpq5IpSuCAoyDi0+BhgU/RIrL+RTzDmkNTchvDFWKP8lp+w/42Z3us5sA== - dependencies: - "@babel/core" "^7.7.2" - "@babel/generator" "^7.7.2" - "@babel/plugin-syntax-typescript" "^7.7.2" - "@babel/traverse" "^7.7.2" - "@babel/types" "^7.0.0" - "@jest/transform" "^27.5.1" - "@jest/types" "^27.5.1" - "@types/babel__traverse" "^7.0.4" - "@types/prettier" "^2.1.5" - babel-preset-current-node-syntax "^1.0.0" - chalk "^4.0.0" - expect "^27.5.1" - graceful-fs "^4.2.9" - jest-diff "^27.5.1" - jest-get-type "^27.5.1" - jest-haste-map "^27.5.1" - jest-matcher-utils "^27.5.1" - jest-message-util "^27.5.1" - jest-util "^27.5.1" - natural-compare "^1.4.0" - pretty-format "^27.5.1" - semver "^7.3.2" - jest-snapshot@^29.7.0: version "29.7.0" resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-29.7.0.tgz#c2c574c3f51865da1bb329036778a69bf88a6be5" @@ -9987,18 +7972,6 @@ jest-snapshot@^29.7.0: pretty-format "^29.7.0" semver "^7.5.3" -jest-util@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-27.5.1.tgz#3ba9771e8e31a0b85da48fe0b0891fb86c01c2f9" - integrity sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw== - dependencies: - "@jest/types" "^27.5.1" - "@types/node" "*" - chalk "^4.0.0" - ci-info "^3.2.0" - graceful-fs "^4.2.9" - picomatch "^2.2.3" - jest-util@^29.7.0: version "29.7.0" resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-29.7.0.tgz#23c2b62bfb22be82b44de98055802ff3710fc0bc" @@ -10011,18 +7984,6 @@ jest-util@^29.7.0: graceful-fs "^4.2.9" picomatch "^2.2.3" -jest-validate@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-27.5.1.tgz#9197d54dc0bdb52260b8db40b46ae668e04df067" - integrity sha512-thkNli0LYTmOI1tDB3FI1S1RTp/Bqyd9pTarJwL87OIBFuqEb5Apv5EaApEudYg4g86e3CT6kM0RowkhtEnCBQ== - dependencies: - "@jest/types" "^27.5.1" - camelcase "^6.2.0" - chalk "^4.0.0" - jest-get-type "^27.5.1" - leven "^3.1.0" - pretty-format "^27.5.1" - jest-validate@^29.7.0: version "29.7.0" resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-29.7.0.tgz#7bf705511c64da591d46b15fce41400d52147d9c" @@ -10035,32 +7996,6 @@ jest-validate@^29.7.0: leven "^3.1.0" pretty-format "^29.7.0" -jest-watch-typeahead@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/jest-watch-typeahead/-/jest-watch-typeahead-1.0.0.tgz#4de2ca1eb596acb1889752afbab84b74fcd99173" - integrity sha512-jxoszalAb394WElmiJTFBMzie/RDCF+W7Q29n5LzOPtcoQoHWfdUtHFkbhgf5NwWe8uMOxvKb/g7ea7CshfkTw== - dependencies: - ansi-escapes "^4.3.1" - chalk "^4.0.0" - jest-regex-util "^27.0.0" - jest-watcher "^27.0.0" - slash "^4.0.0" - string-length "^5.0.1" - strip-ansi "^7.0.1" - -jest-watcher@^27.0.0, jest-watcher@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-27.5.1.tgz#71bd85fb9bde3a2c2ec4dc353437971c43c642a2" - integrity sha512-z676SuD6Z8o8qbmEGhoEUFOM1+jfEiL3DXHK/xgEiG2EyNYfFG60jluWcupY6dATjfEsKQuibReS1djInQnoVw== - dependencies: - "@jest/test-result" "^27.5.1" - "@jest/types" "^27.5.1" - "@types/node" "*" - ansi-escapes "^4.2.1" - chalk "^4.0.0" - jest-util "^27.5.1" - string-length "^4.0.1" - jest-watcher@^29.7.0: version "29.7.0" resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-29.7.0.tgz#7810d30d619c3a62093223ce6bb359ca1b28a2f2" @@ -10075,16 +8010,7 @@ jest-watcher@^29.7.0: jest-util "^29.7.0" string-length "^4.0.1" -jest-worker@^26.2.1: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-26.6.2.tgz#7f72cbc4d643c365e27b9fd775f9d0eaa9c7a8ed" - integrity sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ== - dependencies: - "@types/node" "*" - merge-stream "^2.0.0" - supports-color "^7.0.0" - -jest-worker@^27.0.2, jest-worker@^27.3.1, jest-worker@^27.4.5, jest-worker@^27.5.1: +jest-worker@^27.4.5: version "27.5.1" resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-27.5.1.tgz#8d146f0900e8973b106b6f73cc1e9a8cb86f8db0" integrity sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg== @@ -10103,15 +8029,6 @@ jest-worker@^29.7.0: merge-stream "^2.0.0" supports-color "^8.0.0" -jest@^27.4.3: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest/-/jest-27.5.1.tgz#dadf33ba70a779be7a6fc33015843b51494f63fc" - integrity sha512-Yn0mADZB89zTtjkPJEXwrac3LHudkQMR+Paqa8uxJHCBr9agxztUifWCyiYrjhMPBoUVBjyny0I7XH6ozDr7QQ== - dependencies: - "@jest/core" "^27.5.1" - import-local "^3.0.2" - jest-cli "^27.5.1" - jest@^29.7.0: version "29.7.0" resolved "https://registry.yarnpkg.com/jest/-/jest-29.7.0.tgz#994676fc24177f088f1c5e3737f5697204ff2613" @@ -10168,39 +8085,6 @@ jsbn@~0.1.0: resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" integrity sha1-peZUwuWi3rXyAdls77yoDA7y9RM= -jsdom@^16.6.0: - version "16.7.0" - resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-16.7.0.tgz#918ae71965424b197c819f8183a754e18977b710" - integrity sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw== - dependencies: - abab "^2.0.5" - acorn "^8.2.4" - acorn-globals "^6.0.0" - cssom "^0.4.4" - cssstyle "^2.3.0" - data-urls "^2.0.0" - decimal.js "^10.2.1" - domexception "^2.0.1" - escodegen "^2.0.0" - form-data "^3.0.0" - html-encoding-sniffer "^2.0.1" - http-proxy-agent "^4.0.1" - https-proxy-agent "^5.0.0" - is-potential-custom-element-name "^1.0.1" - nwsapi "^2.2.0" - parse5 "6.0.1" - saxes "^5.0.1" - symbol-tree "^3.2.4" - tough-cookie "^4.0.0" - w3c-hr-time "^1.0.2" - w3c-xmlserializer "^2.0.0" - webidl-conversions "^6.1.0" - whatwg-encoding "^1.0.5" - whatwg-mimetype "^2.3.0" - whatwg-url "^8.5.0" - ws "^7.4.6" - xml-name-validator "^3.0.0" - jsesc@^2.5.1: version "2.5.2" resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" @@ -10231,7 +8115,7 @@ json-schema-traverse@^1.0.0: resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2" integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== -json-schema@0.4.0, json-schema@^0.4.0: +json-schema@0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.4.0.tgz#f7de4cf6efab838ebaeb3236474cbba5a1930ab5" integrity sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA== @@ -10253,7 +8137,7 @@ json5@^1.0.1: dependencies: minimist "^1.2.0" -json5@^2.1.2, json5@^2.2.0, json5@^2.2.1, json5@^2.2.2, json5@^2.2.3: +json5@^2.2.1, json5@^2.2.2, json5@^2.2.3: version "2.2.3" resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== @@ -10279,11 +8163,6 @@ jsonfile@^6.0.1: optionalDependencies: graceful-fs "^4.1.6" -jsonpointer@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/jsonpointer/-/jsonpointer-5.0.0.tgz#f802669a524ec4805fa7389eadbc9921d5dc8072" - integrity sha512-PNYZIdMjVIvVgDSYKTT63Y+KZ6IZvGRNNWcxwD+GNnUz1MKPfv30J8ueCjdwcN0nDx2SlshgyB7Oy0epAzVRRg== - jsprim@^1.2.2: version "1.4.2" resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.2.tgz#712c65533a15c878ba59e9ed5f0e26d5b77c5feb" @@ -10302,7 +8181,7 @@ jsprim@^1.2.2: array-includes "^3.1.3" object.assign "^4.1.2" -kind-of@^6.0.2, kind-of@^6.0.3: +kind-of@^6.0.3: version "6.0.3" resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd" integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw== @@ -10317,11 +8196,6 @@ kleur@^4.1.4: resolved "https://registry.yarnpkg.com/kleur/-/kleur-4.1.5.tgz#95106101795f7050c6c650f350c683febddb1780" integrity sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ== -klona@^2.0.4, klona@^2.0.5: - version "2.0.5" - resolved "https://registry.yarnpkg.com/klona/-/klona-2.0.5.tgz#d166574d90076395d9963aa7a928fabb8d76afbc" - integrity sha512-pJiBpiXMbt7dkzXe8Ghj/u4FfXOOa98fPW+bihOJ4SjnoijweJrNThJfd3ifXpXhREjpoF2mZVH1GfS9LV3kHQ== - language-subtag-registry@~0.3.2: version "0.3.21" resolved "https://registry.yarnpkg.com/language-subtag-registry/-/language-subtag-registry-0.3.21.tgz#04ac218bea46f04cb039084602c6da9e788dd45a" @@ -10364,14 +8238,6 @@ levn@^0.4.1: prelude-ls "^1.2.1" type-check "~0.4.0" -levn@~0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee" - integrity sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4= - dependencies: - prelude-ls "~1.1.2" - type-check "~0.3.2" - libphonenumber-js@^1.10.53: version "1.10.53" resolved "https://registry.yarnpkg.com/libphonenumber-js/-/libphonenumber-js-1.10.53.tgz#8dbfe1355ef1a3d8e13b8d92849f7db7ebddc98f" @@ -10382,11 +8248,6 @@ lilconfig@3.0.0: resolved "https://registry.yarnpkg.com/lilconfig/-/lilconfig-3.0.0.tgz#f8067feb033b5b74dab4602a5f5029420be749bc" integrity sha512-K2U4W2Ff5ibV7j7ydLr+zLAkIg5JJ4lPn1Ltsdt+Tz/IjQ8buJ55pZAxoP34lqIiwtF9iAvtLv3JGv7CAyAg+g== -lilconfig@^2.0.3, lilconfig@^2.0.4: - version "2.1.0" - resolved "https://registry.yarnpkg.com/lilconfig/-/lilconfig-2.1.0.tgz#78e23ac89ebb7e1bfbf25b18043de756548e7f52" - integrity sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ== - lilconfig@^3.0.0: version "3.1.1" resolved "https://registry.yarnpkg.com/lilconfig/-/lilconfig-3.1.1.tgz#9d8a246fa753106cfc205fd2d77042faca56e5e3" @@ -10440,20 +8301,6 @@ loader-runner@^4.2.0: resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-4.2.0.tgz#d7022380d66d14c5fb1d496b89864ebcfd478384" integrity sha512-92+huvxMvYlMzMt0iIOukcwYBFpkYJdpl2xsZ7LrlayO7E8SOv+JJUEK17B/dJIHAOLMfh2dZZ/Y18WgmGtYNw== -loader-utils@^2.0.0: - version "2.0.4" - resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-2.0.4.tgz#8b5cb38b5c34a9a018ee1fc0e6a066d1dfcc528c" - integrity sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw== - dependencies: - big.js "^5.2.2" - emojis-list "^3.0.0" - json5 "^2.1.2" - -loader-utils@^3.2.0: - version "3.2.1" - resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-3.2.1.tgz#4fb104b599daafd82ef3e1a41fb9265f87e1f576" - integrity sha512-ZvFw1KWS3GVyYBYb7qkmRM/WwL2TQQBxgCK62rlvm4WpVQ23Nb4tYjApUlfjrEGvOs7KHEsmyUn75OHZrJMWPw== - locate-path@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" @@ -10462,14 +8309,6 @@ locate-path@^2.0.0: p-locate "^2.0.0" path-exists "^3.0.0" -locate-path@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" - integrity sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A== - dependencies: - p-locate "^3.0.0" - path-exists "^3.0.0" - locate-path@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0" @@ -10514,21 +8353,11 @@ lodash.isplainobject@^4.0.6: resolved "https://registry.yarnpkg.com/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz#7c526a52d89b45c45cc690b88163be0497f550cb" integrity sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA== -lodash.memoize@^4.1.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" - integrity sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag== - lodash.merge@^4.6.2: version "4.6.2" resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== -lodash.sortby@^4.7.0: - version "4.7.0" - resolved "https://registry.yarnpkg.com/lodash.sortby/-/lodash.sortby-4.7.0.tgz#edd14c824e2cc9c1e0b0a1b42bb5210516a42438" - integrity sha1-7dFMgk4sycHgsKG0K7UhBRakJDg= - lodash.startcase@^4.4.0: version "4.4.0" resolved "https://registry.yarnpkg.com/lodash.startcase/-/lodash.startcase-4.4.0.tgz#9436e34ed26093ed7ffae1936144350915d9add8" @@ -10539,12 +8368,7 @@ lodash.union@^4.6.0: resolved "https://registry.yarnpkg.com/lodash.union/-/lodash.union-4.6.0.tgz#48bb5088409f16f1821666641c44dd1aaae3cd88" integrity sha512-c4pB2CdGrGdjMKYLA+XiRDO7Y0PRQbm/Gzg8qMj+QH+pFVAoTp5sBpO0odL3FjoPCGjK96p6qsP+yQoiLoOBcw== -lodash.uniq@^4.5.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" - integrity sha1-0CJTc662Uq3BvILklFM5qEJ1R3M= - -lodash@4, lodash@4.17.21, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.20, lodash@^4.17.21, lodash@^4.17.5, lodash@^4.7.0: +lodash@4, lodash@4.17.21, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.21, lodash@^4.17.5: version "4.17.21" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== @@ -10591,13 +8415,6 @@ lowdb@1: pify "^3.0.0" steno "^0.4.1" -lower-case@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-2.0.2.tgz#6fa237c63dbdc4a82ca0fd882e4722dc5e634e28" - integrity sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg== - dependencies: - tslib "^2.0.3" - lru-cache@^10.0.1: version "10.0.1" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.0.1.tgz#0a3be479df549cca0e5d693ac402ff19537a6b7a" @@ -10664,13 +8481,6 @@ magic-string@0.30.1: dependencies: "@jridgewell/sourcemap-codec" "^1.4.15" -magic-string@^0.25.0, magic-string@^0.25.7: - version "0.25.9" - resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.25.9.tgz#de7f9faf91ef8a1c91d02c2e5314c8277dbcdd1c" - integrity sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ== - dependencies: - sourcemap-codec "^1.4.8" - magic-string@^0.30.12: version "0.30.12" resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.30.12.tgz#9eb11c9d072b9bcb4940a5b2c2e1a217e4ee1a60" @@ -10694,7 +8504,7 @@ magicast@^0.3.5: "@babel/types" "^7.25.4" source-map-js "^1.2.0" -make-dir@^3.0.0, make-dir@^3.0.2, make-dir@^3.1.0: +make-dir@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f" integrity sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw== @@ -10715,13 +8525,6 @@ makeerror@1.0.12: dependencies: tmpl "1.0.5" -makeerror@1.0.x: - version "1.0.11" - resolved "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.11.tgz#e01a5c9109f2af79660e4e8b9587790184f5a96c" - integrity sha1-4BpckQnyr3lmDk6LlYd5AYT1qWw= - dependencies: - tmpl "1.0.x" - map-obj@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" @@ -10777,17 +8580,12 @@ mdn-data@2.0.14: resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.14.tgz#7113fc4281917d63ce29b43446f701e68c25ba50" integrity sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow== -mdn-data@2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.4.tgz#699b3c38ac6f1d728091a64650b65d388502fd5b" - integrity sha512-iV3XNKw06j5Q7mi6h+9vbx23Tv7JkjEVgKHW4pimwyDGWm0OIQntJJ+u1C6mg6mK1EaTv42XQ7w76yuzH7M2cA== - media-typer@0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" integrity sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ== -memfs@^3.1.2, memfs@^3.4.1, memfs@^3.4.3: +memfs@^3.4.1: version "3.6.0" resolved "https://registry.yarnpkg.com/memfs/-/memfs-3.6.0.tgz#d7a2110f86f79dd950a8b6df6d57bc984aa185f6" integrity sha512-EGowvkkgbMcIChjMTMkESFDbZeSh8xZ7kNSF0hAiAN4Jh6jgHCRS0Ga/+C8y6Au+oqpezRHCfPsmJ2+DwAgiwQ== @@ -10844,12 +8642,12 @@ micromatch@4.0.5, micromatch@^4.0.2, micromatch@^4.0.4: braces "^3.0.2" picomatch "^2.3.1" -mime-db@1.52.0, "mime-db@>= 1.43.0 < 2": +mime-db@1.52.0: version "1.52.0" resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70" integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== -mime-types@^2.1.12, mime-types@^2.1.27, mime-types@^2.1.31, mime-types@^2.1.35, mime-types@~2.1.17, mime-types@~2.1.19, mime-types@~2.1.24, mime-types@~2.1.34: +mime-types@^2.1.12, mime-types@^2.1.27, mime-types@^2.1.35, mime-types@~2.1.19, mime-types@~2.1.24, mime-types@~2.1.34: version "2.1.35" resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a" integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== @@ -10876,14 +8674,7 @@ min-indent@^1.0.0: resolved "https://registry.yarnpkg.com/min-indent/-/min-indent-1.0.1.tgz#a63f681673b30571fbe8bc25686ae746eefa9869" integrity sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg== -mini-css-extract-plugin@^2.4.5: - version "2.5.3" - resolved "https://registry.yarnpkg.com/mini-css-extract-plugin/-/mini-css-extract-plugin-2.5.3.tgz#c5c79f9b22ce9b4f164e9492267358dbe35376d9" - integrity sha512-YseMB8cs8U/KCaAGQoqYmfUuhhGW0a9p9XvWXrxVOkE3/IiISTLw4ALNt7JR5B2eYauFM+PQGSbXMDmVbR7Tfw== - dependencies: - schema-utils "^4.0.0" - -minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1: +minimalistic-assert@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" integrity sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A== @@ -10895,7 +8686,7 @@ minimatch@^3.0.2, minimatch@^3.0.3, minimatch@^3.0.4, minimatch@^3.0.5, minimatc dependencies: brace-expansion "^1.1.7" -minimatch@^5.0.1, minimatch@^5.1.0: +minimatch@^5.1.0: version "5.1.0" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.1.0.tgz#1717b464f4971b144f6aabe8f2d0b8e4511e09c7" integrity sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg== @@ -10932,7 +8723,7 @@ minimist-options@^4.0.2: is-plain-obj "^1.1.0" kind-of "^6.0.3" -minimist@^1.1.1, minimist@^1.2.0, minimist@^1.2.6: +minimist@^1.2.0, minimist@^1.2.6: version "1.2.8" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== @@ -10962,7 +8753,7 @@ mkdirp-classic@^0.5.2: resolved "https://registry.yarnpkg.com/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz#fa10c9115cc6d8865be221ba47ee9bed78601113" integrity sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A== -mkdirp@^0.5.4, mkdirp@^0.5.5, mkdirp@~0.5.1: +mkdirp@^0.5.4: version "0.5.6" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.6.tgz#7def03d2432dcae4ba1d611445c48396062255f6" integrity sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw== @@ -11053,19 +8844,6 @@ multer@1.4.4-lts.1: type-is "^1.6.4" xtend "^4.0.0" -multicast-dns-service-types@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/multicast-dns-service-types/-/multicast-dns-service-types-1.1.0.tgz#899f11d9686e5e05cb91b35d5f0e63b773cfc901" - integrity sha1-iZ8R2WhuXgXLkbNdXw5jt3PPyQE= - -multicast-dns@^6.0.1: - version "6.2.3" - resolved "https://registry.yarnpkg.com/multicast-dns/-/multicast-dns-6.2.3.tgz#a0ec7bd9055c4282f790c3c82f4e28db3b31b229" - integrity sha512-ji6J5enbMyGRHIAkAOu3WdV8nggqviKCEKtXcOqfphZZtQrmHKycfynJ2V7eVPUA4NhJ6V7Wf4TmGbTwKE9B6g== - dependencies: - dns-packet "^1.3.1" - thunky "^1.0.2" - multimatch@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/multimatch/-/multimatch-5.0.0.tgz#932b800963cea7a31a033328fa1e0c3a1874dbe6" @@ -11141,14 +8919,6 @@ nestjs-pino@^4.1.0: resolved "https://registry.yarnpkg.com/nestjs-pino/-/nestjs-pino-4.1.0.tgz#dc671b8cad5fa3862b49464d0a553b23215ac16a" integrity sha512-I6zcddauD2TNMRbsraEIxNUvHcz0El5QRUYH5eY1+pBzj7R17U+Yoyypoc+akVdSLWJ1r0kDYAZPy2mlhXv6vw== -no-case@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/no-case/-/no-case-3.0.4.tgz#d361fd5c9800f558551a8369fc0dcd4662b6124d" - integrity sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg== - dependencies: - lower-case "^2.0.2" - tslib "^2.0.3" - node-abort-controller@^3.0.1: version "3.1.1" resolved "https://registry.yarnpkg.com/node-abort-controller/-/node-abort-controller-3.1.1.tgz#a94377e964a9a37ac3976d848cb5c765833b8548" @@ -11173,11 +8943,6 @@ node-fetch@^2.6.1, node-fetch@^2.6.12, node-fetch@^2.6.7, node-fetch@^2.7.0: dependencies: whatwg-url "^5.0.0" -node-forge@^1.2.0: - version "1.3.1" - resolved "https://registry.yarnpkg.com/node-forge/-/node-forge-1.3.1.tgz#be8da2af243b2417d5f646a770663a92b7e9ded3" - integrity sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA== - node-int64@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" @@ -11216,16 +8981,6 @@ normalize-path@3.0.0, normalize-path@^3.0.0, normalize-path@~3.0.0: resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== -normalize-range@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/normalize-range/-/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942" - integrity sha1-LRDAa9/TEuqXd2laTShDlFa3WUI= - -normalize-url@^6.0.1: - version "6.1.0" - resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-6.1.0.tgz#40d0885b535deffe3f3147bec877d05fe4c5668a" - integrity sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A== - now-and-later@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/now-and-later/-/now-and-later-3.0.0.tgz#cdc045dc5b894b35793cf276cc3206077bb7302d" @@ -11247,13 +9002,6 @@ npm-run-path@^5.1.0: dependencies: path-key "^4.0.0" -nth-check@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-1.0.2.tgz#b2bd295c37e3dd58a3bf0700376663ba4d9cf05c" - integrity sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg== - dependencies: - boolbase "~1.0.0" - nth-check@^2.0.1: version "2.1.1" resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-2.1.1.tgz#c9eab428effce36cd6b92c924bdb000ef1f1ed1d" @@ -11261,11 +9009,6 @@ nth-check@^2.0.1: dependencies: boolbase "^1.0.0" -nwsapi@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.0.tgz#204879a9e3d068ff2a55139c2c772780681a38b7" - integrity sha512-h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ== - oauth-sign@~0.9.0: version "0.9.0" resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455" @@ -11276,17 +9019,12 @@ object-assign@^4, object-assign@^4.1.0, object-assign@^4.1.1: resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= -object-hash@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/object-hash/-/object-hash-2.2.0.tgz#5ad518581eefc443bd763472b8ff2e9c2c0d54a5" - integrity sha512-gScRMn0bS5fH+IuwyIFgnh9zBdo4DV+6GhygmWM9HyNJSgS0hScp1f5vjtm7oIIOiT9trXrShAkLFSc2IqKNgw== - object-inspect@^1.12.0, object-inspect@^1.13.1: version "1.13.2" resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.13.2.tgz#dea0088467fb991e67af4058147a24824a3043ff" integrity sha512-IRZSRuzJiynemAXPYtPe5BoI/RESNYR7TYm50MC5Mqbd3Jmw5y790sErYw3V6SryFJD64b74qQQs9wn5Bg/k3g== -object-is@^1.0.1, object-is@^1.1.5: +object-is@^1.1.5: version "1.1.6" resolved "https://registry.yarnpkg.com/object-is/-/object-is-1.1.6.tgz#1a6a53aed2dd8f7e6775ff870bea58545956ab07" integrity sha512-F8cZ+KfGlSGi09lJT7/Nd6KJZ9ygtvYC0/UYYLI9nmQKLMnydpB9yvbv9K1uSkEu7FU9vYPmVwLg328tX+ot3Q== @@ -11327,14 +9065,6 @@ object.fromentries@^2.0.5: define-properties "^1.1.3" es-abstract "^1.19.1" -object.getownpropertydescriptors@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.0.tgz#369bf1f9592d8ab89d712dced5cb81c7c5352649" - integrity sha512-Z53Oah9A3TdLoblT7VKJaTDdXdT+lQO+cNpKVnya5JDe9uLvzu1YyY1yFDFrcxrlRgWrEFH0jJtD/IbuwjcEVg== - dependencies: - define-properties "^1.1.3" - es-abstract "^1.17.0-next.1" - object.hasown@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/object.hasown/-/object.hasown-1.1.0.tgz#7232ed266f34d197d15cac5880232f7a4790afe5" @@ -11343,7 +9073,7 @@ object.hasown@^1.1.0: define-properties "^1.1.3" es-abstract "^1.19.1" -object.values@^1.1.0, object.values@^1.1.5: +object.values@^1.1.5: version "1.1.5" resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.1.5.tgz#959f63e3ce9ef108720333082131e4a459b716ac" integrity sha512-QUZRW0ilQ3PnPpbNtgdNV1PDbEqLIiSFB3l+EnGtBQ/8SUTLj1PZwtQHABZtLgwpJZTSZhuGLOGk57Drx2IvYg== @@ -11352,11 +9082,6 @@ object.values@^1.1.0, object.values@^1.1.5: define-properties "^1.1.3" es-abstract "^1.19.1" -obuf@^1.0.0, obuf@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/obuf/-/obuf-1.1.2.tgz#09bea3343d41859ebd446292d11c9d4db619084e" - integrity sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg== - on-exit-leak-free@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/on-exit-leak-free/-/on-exit-leak-free-2.1.0.tgz#5c703c968f7e7f851885f6459bf8a8a57edc9cc4" @@ -11402,27 +9127,6 @@ onetime@^6.0.0: dependencies: mimic-fn "^4.0.0" -open@^8.0.9, open@^8.4.0: - version "8.4.0" - resolved "https://registry.yarnpkg.com/open/-/open-8.4.0.tgz#345321ae18f8138f82565a910fdc6b39e8c244f8" - integrity sha512-XgFPPM+B28FtCCgSb9I+s9szOC1vZRSwgWsRUA5ylIxRTgKozqjOCrVOqGsYABPYK5qnfqClxZTFBa8PKt2v6Q== - dependencies: - define-lazy-prop "^2.0.0" - is-docker "^2.1.1" - is-wsl "^2.2.0" - -optionator@^0.8.1: - version "0.8.3" - resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.3.tgz#84fa1d036fe9d3c7e21d99884b601167ec8fb495" - integrity sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA== - dependencies: - deep-is "~0.1.3" - fast-levenshtein "~2.0.6" - levn "~0.3.0" - prelude-ls "~1.1.2" - type-check "~0.3.2" - word-wrap "~1.2.3" - optionator@^0.9.3: version "0.9.3" resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.3.tgz#007397d44ed1872fdc6ed31360190f81814e2c64" @@ -11492,7 +9196,7 @@ p-limit@^1.1.0: dependencies: p-try "^1.0.0" -p-limit@^2.0.0, p-limit@^2.2.0: +p-limit@^2.2.0: version "2.3.0" resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== @@ -11513,13 +9217,6 @@ p-locate@^2.0.0: dependencies: p-limit "^1.1.0" -p-locate@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" - integrity sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ== - dependencies: - p-limit "^2.0.0" - p-locate@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07" @@ -11539,21 +9236,6 @@ p-map@^2.0.0: resolved "https://registry.yarnpkg.com/p-map/-/p-map-2.1.0.tgz#310928feef9c9ecc65b68b17693018a665cea175" integrity sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw== -p-map@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/p-map/-/p-map-4.0.0.tgz#bb2f95a5eda2ec168ec9274e06a747c3e2904d2b" - integrity sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ== - dependencies: - aggregate-error "^3.0.0" - -p-retry@^4.5.0: - version "4.6.1" - resolved "https://registry.yarnpkg.com/p-retry/-/p-retry-4.6.1.tgz#8fcddd5cdf7a67a0911a9cf2ef0e5df7f602316c" - integrity sha512-e2xXGNhZOZ0lfgR9kL34iGlU8N/KO0xZnQxVEwdeOvpqNDQfdnxIYizvWtK8RglUa3bGqI8g0R/BdfzLMxRkiA== - dependencies: - "@types/retry" "^0.12.0" - retry "^0.13.1" - p-try@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" @@ -11569,14 +9251,6 @@ package-json-from-dist@^1.0.0: resolved "https://registry.yarnpkg.com/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz#4f1471a010827a86f94cfd9b0727e36d267de505" integrity sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw== -param-case@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/param-case/-/param-case-3.0.4.tgz#7d17fe4aa12bde34d4a77d91acfb6219caad01c5" - integrity sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A== - dependencies: - dot-case "^3.0.4" - tslib "^2.0.3" - parent-module@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" @@ -11612,11 +9286,6 @@ parse5-htmlparser2-tree-adapter@^7.0.0: domhandler "^5.0.2" parse5 "^7.0.0" -parse5@6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/parse5/-/parse5-6.0.1.tgz#e1a1c085c569b3dc08321184f19a39cc27f7c30b" - integrity sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw== - parse5@^7.0.0: version "7.1.2" resolved "https://registry.yarnpkg.com/parse5/-/parse5-7.1.2.tgz#0736bebbfd77793823240a23b7fc5e010b7f8e32" @@ -11632,19 +9301,11 @@ parseley@^0.12.0: leac "^0.6.0" peberminta "^0.9.0" -parseurl@~1.3.2, parseurl@~1.3.3: +parseurl@~1.3.3: version "1.3.3" resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ== -pascal-case@^3.1.2: - version "3.1.2" - resolved "https://registry.yarnpkg.com/pascal-case/-/pascal-case-3.1.2.tgz#b48e0ef2b98e205e7c1dae747d0b1508237660eb" - integrity sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g== - dependencies: - no-case "^3.0.4" - tslib "^2.0.3" - path-exists@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" @@ -11736,11 +9397,6 @@ performance-now@^2.1.0: resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns= -picocolors@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-0.2.1.tgz#570670f793646851d1ba135996962abad587859f" - integrity sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA== - picocolors@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" @@ -11751,7 +9407,7 @@ picocolors@^1.1.0: resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.1.1.tgz#3d321af3eab939b083c8f929a1d12cda81c26b6b" integrity sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA== -picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.2, picomatch@^2.2.3, picomatch@^2.3.1: +picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.3, picomatch@^2.3.1: version "2.3.1" resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== @@ -11821,20 +9477,13 @@ pirates@^4.0.4: resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.5.tgz#feec352ea5c3268fb23a37c702ab1699f35a5f3b" integrity sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ== -pkg-dir@^4.1.0, pkg-dir@^4.2.0: +pkg-dir@^4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3" integrity sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ== dependencies: find-up "^4.0.0" -pkg-up@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/pkg-up/-/pkg-up-3.1.0.tgz#100ec235cc150e4fd42519412596a28512a0def5" - integrity sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA== - dependencies: - find-up "^3.0.0" - playwright-core@1.44.0: version "1.44.0" resolved "https://registry.yarnpkg.com/playwright-core/-/playwright-core-1.44.0.tgz#316c4f0bca0551ffb88b6eb1c97bc0d2d861b0d5" @@ -11861,542 +9510,12 @@ pluralize@8.0.0: resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-8.0.0.tgz#1a6fa16a38d12a1901e0320fa017051c539ce3b1" integrity sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA== -portfinder@^1.0.28: - version "1.0.28" - resolved "https://registry.yarnpkg.com/portfinder/-/portfinder-1.0.28.tgz#67c4622852bd5374dd1dd900f779f53462fac778" - integrity sha512-Se+2isanIcEqf2XMHjyUKskczxbPH7dQnlMjXX6+dybayyHvAf/TCgyMRlzf/B6QDhAEFOGes0pzRo3by4AbMA== - dependencies: - async "^2.6.2" - debug "^3.1.1" - mkdirp "^0.5.5" - possible-typed-array-names@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz#89bb63c6fada2c3e90adc4a647beeeb39cc7bf8f" integrity sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q== -postcss-attribute-case-insensitive@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-5.0.0.tgz#39cbf6babf3ded1e4abf37d09d6eda21c644105c" - integrity sha512-b4g9eagFGq9T5SWX4+USfVyjIb3liPnjhHHRMP7FMB2kFVpYyfEscV0wP3eaXhKlcHKUut8lt5BGoeylWA/dBQ== - dependencies: - postcss-selector-parser "^6.0.2" - -postcss-browser-comments@^4: - version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-browser-comments/-/postcss-browser-comments-4.0.0.tgz#bcfc86134df5807f5d3c0eefa191d42136b5e72a" - integrity sha512-X9X9/WN3KIvY9+hNERUqX9gncsgBA25XaeR+jshHz2j8+sYyHktHw1JdKuMjeLpGktXidqDhA7b/qm1mrBDmgg== - -postcss-calc@^8.2.0: - version "8.2.4" - resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-8.2.4.tgz#77b9c29bfcbe8a07ff6693dc87050828889739a5" - integrity sha512-SmWMSJmB8MRnnULldx0lQIyhSNvuDl9HfrZkaqqE/WHAhToYsAvDq+yAsA/kIyINDszOp3Rh0GFoNuH5Ypsm3Q== - dependencies: - postcss-selector-parser "^6.0.9" - postcss-value-parser "^4.2.0" - -postcss-clamp@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-clamp/-/postcss-clamp-4.0.0.tgz#766d3dbaa2dc56e8bea1b690291b632c0c5bf728" - integrity sha512-FsMmeBZtymFN7Jtlnw9is8I4nB+qEEb/qS0ZLTIqcKiwZyHBq44Yhv29Q+VQsTGHYFqIr/s/9tqvNM7j+j1d+g== - dependencies: - postcss-value-parser "^4.2.0" - -postcss-color-functional-notation@^4.2.2: - version "4.2.2" - resolved "https://registry.yarnpkg.com/postcss-color-functional-notation/-/postcss-color-functional-notation-4.2.2.tgz#f59ccaeb4ee78f1b32987d43df146109cc743073" - integrity sha512-DXVtwUhIk4f49KK5EGuEdgx4Gnyj6+t2jBSEmxvpIK9QI40tWrpS2Pua8Q7iIZWBrki2QOaeUdEaLPPa91K0RQ== - dependencies: - postcss-value-parser "^4.2.0" - -postcss-color-hex-alpha@^8.0.3: - version "8.0.3" - resolved "https://registry.yarnpkg.com/postcss-color-hex-alpha/-/postcss-color-hex-alpha-8.0.3.tgz#61a0fd151d28b128aa6a8a21a2dad24eebb34d52" - integrity sha512-fESawWJCrBV035DcbKRPAVmy21LpoyiXdPTuHUfWJ14ZRjY7Y7PA6P4g8z6LQGYhU1WAxkTxjIjurXzoe68Glw== - dependencies: - postcss-value-parser "^4.2.0" - -postcss-color-rebeccapurple@^7.0.2: - version "7.0.2" - resolved "https://registry.yarnpkg.com/postcss-color-rebeccapurple/-/postcss-color-rebeccapurple-7.0.2.tgz#5d397039424a58a9ca628762eb0b88a61a66e079" - integrity sha512-SFc3MaocHaQ6k3oZaFwH8io6MdypkUtEy/eXzXEB1vEQlO3S3oDc/FSZA8AsS04Z25RirQhlDlHLh3dn7XewWw== - dependencies: - postcss-value-parser "^4.2.0" - -postcss-colormin@^5.2.5: - version "5.2.5" - resolved "https://registry.yarnpkg.com/postcss-colormin/-/postcss-colormin-5.2.5.tgz#d1fc269ac2ad03fe641d462b5d1dada35c69968a" - integrity sha512-+X30aDaGYq81mFqwyPpnYInsZQnNpdxMX0ajlY7AExCexEFkPVV+KrO7kXwayqEWL2xwEbNQ4nUO0ZsRWGnevg== - dependencies: - browserslist "^4.16.6" - caniuse-api "^3.0.0" - colord "^2.9.1" - postcss-value-parser "^4.2.0" - -postcss-convert-values@^5.0.4: - version "5.0.4" - resolved "https://registry.yarnpkg.com/postcss-convert-values/-/postcss-convert-values-5.0.4.tgz#3e74dd97c581f475ae7b4500bc0a7c4fb3a6b1b6" - integrity sha512-bugzSAyjIexdObovsPZu/sBCTHccImJxLyFgeV0MmNBm/Lw5h5XnjfML6gzEmJ3A6nyfCW7hb1JXzcsA4Zfbdw== - dependencies: - postcss-value-parser "^4.2.0" - -postcss-custom-media@^8.0.0: - version "8.0.0" - resolved "https://registry.yarnpkg.com/postcss-custom-media/-/postcss-custom-media-8.0.0.tgz#1be6aff8be7dc9bf1fe014bde3b71b92bb4552f1" - integrity sha512-FvO2GzMUaTN0t1fBULDeIvxr5IvbDXcIatt6pnJghc736nqNgsGao5NT+5+WVLAQiTt6Cb3YUms0jiPaXhL//g== - -postcss-custom-properties@^12.1.4: - version "12.1.4" - resolved "https://registry.yarnpkg.com/postcss-custom-properties/-/postcss-custom-properties-12.1.4.tgz#e3d8a8000f28094453b836dff5132385f2862285" - integrity sha512-i6AytuTCoDLJkWN/MtAIGriJz3j7UX6bV7Z5t+KgFz+dwZS15/mlTJY1S0kRizlk6ba0V8u8hN50Fz5Nm7tdZw== - dependencies: - postcss-value-parser "^4.2.0" - -postcss-custom-selectors@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/postcss-custom-selectors/-/postcss-custom-selectors-6.0.0.tgz#022839e41fbf71c47ae6e316cb0e6213012df5ef" - integrity sha512-/1iyBhz/W8jUepjGyu7V1OPcGbc636snN1yXEQCinb6Bwt7KxsiU7/bLQlp8GwAXzCh7cobBU5odNn/2zQWR8Q== - dependencies: - postcss-selector-parser "^6.0.4" - -postcss-dir-pseudo-class@^6.0.4: - version "6.0.4" - resolved "https://registry.yarnpkg.com/postcss-dir-pseudo-class/-/postcss-dir-pseudo-class-6.0.4.tgz#9afe49ea631f0cb36fa0076e7c2feb4e7e3f049c" - integrity sha512-I8epwGy5ftdzNWEYok9VjW9whC4xnelAtbajGv4adql4FIF09rnrxnA9Y8xSHN47y7gqFIv10C5+ImsLeJpKBw== - dependencies: - postcss-selector-parser "^6.0.9" - -postcss-discard-comments@^5.0.3: - version "5.0.3" - resolved "https://registry.yarnpkg.com/postcss-discard-comments/-/postcss-discard-comments-5.0.3.tgz#011acb63418d600fdbe18804e1bbecb543ad2f87" - integrity sha512-6W5BemziRoqIdAKT+1QjM4bNcJAQ7z7zk073730NHg4cUXh3/rQHHj7pmYxUB9aGhuRhBiUf0pXvIHkRwhQP0Q== - -postcss-discard-duplicates@^5.0.3: - version "5.0.3" - resolved "https://registry.yarnpkg.com/postcss-discard-duplicates/-/postcss-discard-duplicates-5.0.3.tgz#10f202a4cfe9d407b73dfea7a477054d21ea0c1f" - integrity sha512-vPtm1Mf+kp7iAENTG7jI1MN1lk+fBqL5y+qxyi4v3H+lzsXEdfS3dwUZD45KVhgzDEgduur8ycB4hMegyMTeRw== - -postcss-discard-empty@^5.0.3: - version "5.0.3" - resolved "https://registry.yarnpkg.com/postcss-discard-empty/-/postcss-discard-empty-5.0.3.tgz#ec185af4a3710b88933b0ff751aa157b6041dd6a" - integrity sha512-xGJugpaXKakwKI7sSdZjUuN4V3zSzb2Y0LOlmTajFbNinEjTfVs9PFW2lmKBaC/E64WwYppfqLD03P8l9BuueA== - -postcss-discard-overridden@^5.0.4: - version "5.0.4" - resolved "https://registry.yarnpkg.com/postcss-discard-overridden/-/postcss-discard-overridden-5.0.4.tgz#cc999d6caf18ea16eff8b2b58f48ec3ddee35c9c" - integrity sha512-3j9QH0Qh1KkdxwiZOW82cId7zdwXVQv/gRXYDnwx5pBtR1sTkU4cXRK9lp5dSdiM0r0OICO/L8J6sV1/7m0kHg== - -postcss-double-position-gradients@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/postcss-double-position-gradients/-/postcss-double-position-gradients-3.1.0.tgz#a8614fb3a2a4b8877bffb8961b770e00322bbad1" - integrity sha512-oz73I08yMN3oxjj0s8mED1rG+uOYoK3H8N9RjQofyg52KBRNmePJKg3fVwTpL2U5ZFbCzXoZBsUD/CvZdlqE4Q== - dependencies: - "@csstools/postcss-progressive-custom-properties" "^1.1.0" - postcss-value-parser "^4.2.0" - -postcss-env-function@^4.0.5: - version "4.0.5" - resolved "https://registry.yarnpkg.com/postcss-env-function/-/postcss-env-function-4.0.5.tgz#b9614d50abd91e4c88a114644a9766880dabe393" - integrity sha512-gPUJc71ji9XKyl0WSzAalBeEA/89kU+XpffpPxSaaaZ1c48OL36r1Ep5R6+9XAPkIiDlSvVAwP4io12q/vTcvA== - dependencies: - postcss-value-parser "^4.2.0" - -postcss-flexbugs-fixes@^5.0.2: - version "5.0.2" - resolved "https://registry.yarnpkg.com/postcss-flexbugs-fixes/-/postcss-flexbugs-fixes-5.0.2.tgz#2028e145313074fc9abe276cb7ca14e5401eb49d" - integrity sha512-18f9voByak7bTktR2QgDveglpn9DTbBWPUzSOe9g0N4WR/2eSt6Vrcbf0hmspvMI6YWGywz6B9f7jzpFNJJgnQ== - -postcss-focus-visible@^6.0.4: - version "6.0.4" - resolved "https://registry.yarnpkg.com/postcss-focus-visible/-/postcss-focus-visible-6.0.4.tgz#50c9ea9afa0ee657fb75635fabad25e18d76bf9e" - integrity sha512-QcKuUU/dgNsstIK6HELFRT5Y3lbrMLEOwG+A4s5cA+fx3A3y/JTq3X9LaOj3OC3ALH0XqyrgQIgey/MIZ8Wczw== - dependencies: - postcss-selector-parser "^6.0.9" - -postcss-focus-within@^5.0.4: - version "5.0.4" - resolved "https://registry.yarnpkg.com/postcss-focus-within/-/postcss-focus-within-5.0.4.tgz#5b1d2ec603195f3344b716c0b75f61e44e8d2e20" - integrity sha512-vvjDN++C0mu8jz4af5d52CB184ogg/sSxAFS+oUJQq2SuCe7T5U2iIsVJtsCp2d6R4j0jr5+q3rPkBVZkXD9fQ== - dependencies: - postcss-selector-parser "^6.0.9" - -postcss-font-variant@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/postcss-font-variant/-/postcss-font-variant-5.0.0.tgz#efd59b4b7ea8bb06127f2d031bfbb7f24d32fa66" - integrity sha512-1fmkBaCALD72CK2a9i468mA/+tr9/1cBxRRMXOUaZqO43oWPR5imcyPjXwuv7PXbCid4ndlP5zWhidQVVa3hmA== - -postcss-gap-properties@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/postcss-gap-properties/-/postcss-gap-properties-3.0.3.tgz#6401bb2f67d9cf255d677042928a70a915e6ba60" - integrity sha512-rPPZRLPmEKgLk/KlXMqRaNkYTUpE7YC+bOIQFN5xcu1Vp11Y4faIXv6/Jpft6FMnl6YRxZqDZG0qQOW80stzxQ== - -postcss-image-set-function@^4.0.6: - version "4.0.6" - resolved "https://registry.yarnpkg.com/postcss-image-set-function/-/postcss-image-set-function-4.0.6.tgz#bcff2794efae778c09441498f40e0c77374870a9" - integrity sha512-KfdC6vg53GC+vPd2+HYzsZ6obmPqOk6HY09kttU19+Gj1nC3S3XBVEXDHxkhxTohgZqzbUb94bKXvKDnYWBm/A== - dependencies: - postcss-value-parser "^4.2.0" - -postcss-initial@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/postcss-initial/-/postcss-initial-4.0.1.tgz#529f735f72c5724a0fb30527df6fb7ac54d7de42" - integrity sha512-0ueD7rPqX8Pn1xJIjay0AZeIuDoF+V+VvMt/uOnn+4ezUKhZM/NokDeP6DwMNyIoYByuN/94IQnt5FEkaN59xQ== - -postcss-js@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-js/-/postcss-js-4.0.0.tgz#31db79889531b80dc7bc9b0ad283e418dce0ac00" - integrity sha512-77QESFBwgX4irogGVPgQ5s07vLvFqWr228qZY+w6lW599cRlK/HmnlivnnVUxkjHnCu4J16PDMHcH+e+2HbvTQ== - dependencies: - camelcase-css "^2.0.1" - -postcss-lab-function@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/postcss-lab-function/-/postcss-lab-function-4.1.1.tgz#8b37dfcb9ca4ff82bbe7192c7ba3cc2bccbc0ef1" - integrity sha512-j3Z0WQCimY2tMle++YcmygnnVbt6XdnrCV1FO2IpzaCSmtTF2oO8h4ZYUA1Q+QHYroIiaWPvNHt9uBR4riCksQ== - dependencies: - "@csstools/postcss-progressive-custom-properties" "^1.1.0" - postcss-value-parser "^4.2.0" - -postcss-load-config@^3.1.0: - version "3.1.3" - resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-3.1.3.tgz#21935b2c43b9a86e6581a576ca7ee1bde2bd1d23" - integrity sha512-5EYgaM9auHGtO//ljHH+v/aC/TQ5LHXtL7bQajNAUBKUVKiYE8rYpFms7+V26D9FncaGe2zwCoPQsFKb5zF/Hw== - dependencies: - lilconfig "^2.0.4" - yaml "^1.10.2" - -postcss-loader@^6.2.1: - version "6.2.1" - resolved "https://registry.yarnpkg.com/postcss-loader/-/postcss-loader-6.2.1.tgz#0895f7346b1702103d30fdc66e4d494a93c008ef" - integrity sha512-WbbYpmAaKcux/P66bZ40bpWsBucjx/TTgVVzRZ9yUO8yQfVBlameJ0ZGVaPfH64hNSBh63a+ICP5nqOpBA0w+Q== - dependencies: - cosmiconfig "^7.0.0" - klona "^2.0.5" - semver "^7.3.5" - -postcss-logical@^5.0.4: - version "5.0.4" - resolved "https://registry.yarnpkg.com/postcss-logical/-/postcss-logical-5.0.4.tgz#ec75b1ee54421acc04d5921576b7d8db6b0e6f73" - integrity sha512-RHXxplCeLh9VjinvMrZONq7im4wjWGlRJAqmAVLXyZaXwfDWP73/oq4NdIp+OZwhQUMj0zjqDfM5Fj7qby+B4g== - -postcss-media-minmax@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/postcss-media-minmax/-/postcss-media-minmax-5.0.0.tgz#7140bddec173e2d6d657edbd8554a55794e2a5b5" - integrity sha512-yDUvFf9QdFZTuCUg0g0uNSHVlJ5X1lSzDZjPSFaiCWvjgsvu8vEVxtahPrLMinIDEEGnx6cBe6iqdx5YWz08wQ== - -postcss-merge-longhand@^5.0.6: - version "5.0.6" - resolved "https://registry.yarnpkg.com/postcss-merge-longhand/-/postcss-merge-longhand-5.0.6.tgz#090e60d5d3b3caad899f8774f8dccb33217d2166" - integrity sha512-rkmoPwQO6ymJSmWsX6l2hHeEBQa7C4kJb9jyi5fZB1sE8nSCv7sqchoYPixRwX/yvLoZP2y6FA5kcjiByeJqDg== - dependencies: - postcss-value-parser "^4.2.0" - stylehacks "^5.0.3" - -postcss-merge-rules@^5.0.6: - version "5.0.6" - resolved "https://registry.yarnpkg.com/postcss-merge-rules/-/postcss-merge-rules-5.0.6.tgz#26b37411fe1e80202fcef61cab027265b8925f2b" - integrity sha512-nzJWJ9yXWp8AOEpn/HFAW72WKVGD2bsLiAmgw4hDchSij27bt6TF+sIK0cJUBAYT3SGcjtGGsOR89bwkkMuMgQ== - dependencies: - browserslist "^4.16.6" - caniuse-api "^3.0.0" - cssnano-utils "^3.0.2" - postcss-selector-parser "^6.0.5" - -postcss-minify-font-values@^5.0.4: - version "5.0.4" - resolved "https://registry.yarnpkg.com/postcss-minify-font-values/-/postcss-minify-font-values-5.0.4.tgz#627d824406b0712243221891f40a44fffe1467fd" - integrity sha512-RN6q3tyuEesvyCYYFCRGJ41J1XFvgV+dvYGHr0CeHv8F00yILlN8Slf4t8XW4IghlfZYCeyRrANO6HpJ948ieA== - dependencies: - postcss-value-parser "^4.2.0" - -postcss-minify-gradients@^5.0.6: - version "5.0.6" - resolved "https://registry.yarnpkg.com/postcss-minify-gradients/-/postcss-minify-gradients-5.0.6.tgz#b07cef51a93f075e94053fd972ff1cba2eaf6503" - integrity sha512-E/dT6oVxB9nLGUTiY/rG5dX9taugv9cbLNTFad3dKxOO+BQg25Q/xo2z2ddG+ZB1CbkZYaVwx5blY8VC7R/43A== - dependencies: - colord "^2.9.1" - cssnano-utils "^3.0.2" - postcss-value-parser "^4.2.0" - -postcss-minify-params@^5.0.5: - version "5.0.5" - resolved "https://registry.yarnpkg.com/postcss-minify-params/-/postcss-minify-params-5.0.5.tgz#86cb624358cd45c21946f8c317893f0449396646" - integrity sha512-YBNuq3Rz5LfLFNHb9wrvm6t859b8qIqfXsWeK7wROm3jSKNpO1Y5e8cOyBv6Acji15TgSrAwb3JkVNCqNyLvBg== - dependencies: - browserslist "^4.16.6" - cssnano-utils "^3.0.2" - postcss-value-parser "^4.2.0" - -postcss-minify-selectors@^5.1.3: - version "5.1.3" - resolved "https://registry.yarnpkg.com/postcss-minify-selectors/-/postcss-minify-selectors-5.1.3.tgz#6ac12d52aa661fd509469d87ab2cebb0a1e3a1b5" - integrity sha512-9RJfTiQEKA/kZhMaEXND893nBqmYQ8qYa/G+uPdVnXF6D/FzpfI6kwBtWEcHx5FqDbA79O9n6fQJfrIj6M8jvQ== - dependencies: - postcss-selector-parser "^6.0.5" - -postcss-modules-extract-imports@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz#cda1f047c0ae80c97dbe28c3e76a43b88025741d" - integrity sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw== - -postcss-modules-local-by-default@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.0.tgz#ebbb54fae1598eecfdf691a02b3ff3b390a5a51c" - integrity sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ== - dependencies: - icss-utils "^5.0.0" - postcss-selector-parser "^6.0.2" - postcss-value-parser "^4.1.0" - -postcss-modules-scope@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz#9ef3151456d3bbfa120ca44898dfca6f2fa01f06" - integrity sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg== - dependencies: - postcss-selector-parser "^6.0.4" - -postcss-modules-values@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz#d7c5e7e68c3bb3c9b27cbf48ca0bb3ffb4602c9c" - integrity sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ== - dependencies: - icss-utils "^5.0.0" - -postcss-nested@5.0.6: - version "5.0.6" - resolved "https://registry.yarnpkg.com/postcss-nested/-/postcss-nested-5.0.6.tgz#466343f7fc8d3d46af3e7dba3fcd47d052a945bc" - integrity sha512-rKqm2Fk0KbA8Vt3AdGN0FB9OBOMDVajMG6ZCf/GoHgdxUJ4sBFp0A/uMIRm+MJUdo33YXEtjqIz8u7DAp8B7DA== - dependencies: - postcss-selector-parser "^6.0.6" - -postcss-nesting@^10.1.2: - version "10.1.2" - resolved "https://registry.yarnpkg.com/postcss-nesting/-/postcss-nesting-10.1.2.tgz#2e5f811b3d75602ea18a95dd445bde5297145141" - integrity sha512-dJGmgmsvpzKoVMtDMQQG/T6FSqs6kDtUDirIfl4KnjMCiY9/ETX8jdKyCd20swSRAbUYkaBKV20pxkzxoOXLqQ== - dependencies: - postcss-selector-parser "^6.0.8" - -postcss-normalize-charset@^5.0.3: - version "5.0.3" - resolved "https://registry.yarnpkg.com/postcss-normalize-charset/-/postcss-normalize-charset-5.0.3.tgz#719fb9f9ca9835fcbd4fed8d6e0d72a79e7b5472" - integrity sha512-iKEplDBco9EfH7sx4ut7R2r/dwTnUqyfACf62Unc9UiyFuI7uUqZZtY+u+qp7g8Qszl/U28HIfcsI3pEABWFfA== - -postcss-normalize-display-values@^5.0.3: - version "5.0.3" - resolved "https://registry.yarnpkg.com/postcss-normalize-display-values/-/postcss-normalize-display-values-5.0.3.tgz#94cc82e20c51cc4ffba6b36e9618adc1e50db8c1" - integrity sha512-FIV5FY/qs4Ja32jiDb5mVj5iWBlS3N8tFcw2yg98+8MkRgyhtnBgSC0lxU+16AMHbjX5fbSJgw5AXLMolonuRQ== - dependencies: - postcss-value-parser "^4.2.0" - -postcss-normalize-positions@^5.0.4: - version "5.0.4" - resolved "https://registry.yarnpkg.com/postcss-normalize-positions/-/postcss-normalize-positions-5.0.4.tgz#4001f38c99675437b83277836fb4291887fcc6cc" - integrity sha512-qynirjBX0Lc73ROomZE3lzzmXXTu48/QiEzKgMeqh28+MfuHLsuqC9po4kj84igZqqFGovz8F8hf44hA3dPYmQ== - dependencies: - postcss-value-parser "^4.2.0" - -postcss-normalize-repeat-style@^5.0.4: - version "5.0.4" - resolved "https://registry.yarnpkg.com/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-5.0.4.tgz#d005adf9ee45fae78b673031a376c0c871315145" - integrity sha512-Innt+wctD7YpfeDR7r5Ik6krdyppyAg2HBRpX88fo5AYzC1Ut/l3xaxACG0KsbX49cO2n5EB13clPwuYVt8cMA== - dependencies: - postcss-value-parser "^4.2.0" - -postcss-normalize-string@^5.0.4: - version "5.0.4" - resolved "https://registry.yarnpkg.com/postcss-normalize-string/-/postcss-normalize-string-5.0.4.tgz#b5e00a07597e7aa8a871817bfeac2bfaa59c3333" - integrity sha512-Dfk42l0+A1CDnVpgE606ENvdmksttLynEqTQf5FL3XGQOyqxjbo25+pglCUvziicTxjtI2NLUR6KkxyUWEVubQ== - dependencies: - postcss-value-parser "^4.2.0" - -postcss-normalize-timing-functions@^5.0.3: - version "5.0.3" - resolved "https://registry.yarnpkg.com/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-5.0.3.tgz#47210227bfcba5e52650d7a18654337090de7072" - integrity sha512-QRfjvFh11moN4PYnJ7hia4uJXeFotyK3t2jjg8lM9mswleGsNw2Lm3I5wO+l4k1FzK96EFwEVn8X8Ojrp2gP4g== - dependencies: - postcss-value-parser "^4.2.0" - -postcss-normalize-unicode@^5.0.4: - version "5.0.4" - resolved "https://registry.yarnpkg.com/postcss-normalize-unicode/-/postcss-normalize-unicode-5.0.4.tgz#02866096937005cdb2c17116c690f29505a1623d" - integrity sha512-W79Regn+a+eXTzB+oV/8XJ33s3pDyFTND2yDuUCo0Xa3QSy1HtNIfRVPXNubHxjhlqmMFADr3FSCHT84ITW3ig== - dependencies: - browserslist "^4.16.6" - postcss-value-parser "^4.2.0" - -postcss-normalize-url@^5.0.5: - version "5.0.5" - resolved "https://registry.yarnpkg.com/postcss-normalize-url/-/postcss-normalize-url-5.0.5.tgz#c39efc12ff119f6f45f0b4f516902b12c8080e3a" - integrity sha512-Ws3tX+PcekYlXh+ycAt0wyzqGthkvVtZ9SZLutMVvHARxcpu4o7vvXcNoiNKyjKuWecnjS6HDI3fjBuDr5MQxQ== - dependencies: - normalize-url "^6.0.1" - postcss-value-parser "^4.2.0" - -postcss-normalize-whitespace@^5.0.4: - version "5.0.4" - resolved "https://registry.yarnpkg.com/postcss-normalize-whitespace/-/postcss-normalize-whitespace-5.0.4.tgz#1d477e7da23fecef91fc4e37d462272c7b55c5ca" - integrity sha512-wsnuHolYZjMwWZJoTC9jeI2AcjA67v4UuidDrPN9RnX8KIZfE+r2Nd6XZRwHVwUiHmRvKQtxiqo64K+h8/imaw== - dependencies: - postcss-value-parser "^4.2.0" - -postcss-normalize@^10.0.1: - version "10.0.1" - resolved "https://registry.yarnpkg.com/postcss-normalize/-/postcss-normalize-10.0.1.tgz#464692676b52792a06b06880a176279216540dd7" - integrity sha512-+5w18/rDev5mqERcG3W5GZNMJa1eoYYNGo8gB7tEwaos0ajk3ZXAI4mHGcNT47NE+ZnZD1pEpUOFLvltIwmeJA== - dependencies: - "@csstools/normalize.css" "*" - postcss-browser-comments "^4" - sanitize.css "*" - -postcss-opacity-percentage@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/postcss-opacity-percentage/-/postcss-opacity-percentage-1.1.2.tgz#bd698bb3670a0a27f6d657cc16744b3ebf3b1145" - integrity sha512-lyUfF7miG+yewZ8EAk9XUBIlrHyUE6fijnesuz+Mj5zrIHIEw6KcIZSOk/elVMqzLvREmXB83Zi/5QpNRYd47w== - -postcss-ordered-values@^5.0.5: - version "5.0.5" - resolved "https://registry.yarnpkg.com/postcss-ordered-values/-/postcss-ordered-values-5.0.5.tgz#e878af822a130c3f3709737e24cb815ca7c6d040" - integrity sha512-mfY7lXpq+8bDEHfP+muqibDPhZ5eP9zgBEF9XRvoQgXcQe2Db3G1wcvjbnfjXG6wYsl+0UIjikqq4ym1V2jGMQ== - dependencies: - cssnano-utils "^3.0.2" - postcss-value-parser "^4.2.0" - -postcss-overflow-shorthand@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/postcss-overflow-shorthand/-/postcss-overflow-shorthand-3.0.3.tgz#ebcfc0483a15bbf1b27fdd9b3c10125372f4cbc2" - integrity sha512-CxZwoWup9KXzQeeIxtgOciQ00tDtnylYIlJBBODqkgS/PU2jISuWOL/mYLHmZb9ZhZiCaNKsCRiLp22dZUtNsg== - -postcss-page-break@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/postcss-page-break/-/postcss-page-break-3.0.4.tgz#7fbf741c233621622b68d435babfb70dd8c1ee5f" - integrity sha512-1JGu8oCjVXLa9q9rFTo4MbeeA5FMe00/9C7lN4va606Rdb+HkxXtXsmEDrIraQ11fGz/WvKWa8gMuCKkrXpTsQ== - -postcss-place@^7.0.4: - version "7.0.4" - resolved "https://registry.yarnpkg.com/postcss-place/-/postcss-place-7.0.4.tgz#eb026650b7f769ae57ca4f938c1addd6be2f62c9" - integrity sha512-MrgKeiiu5OC/TETQO45kV3npRjOFxEHthsqGtkh3I1rPbZSbXGD/lZVi9j13cYh+NA8PIAPyk6sGjT9QbRyvSg== - dependencies: - postcss-value-parser "^4.2.0" - -postcss-preset-env@^7.0.1: - version "7.4.1" - resolved "https://registry.yarnpkg.com/postcss-preset-env/-/postcss-preset-env-7.4.1.tgz#ca6131c6e0d0e0bcc429dbef3e8f8d03250041ea" - integrity sha512-UvBVvPJ2vb4odAtckSbryndyBz+Me1q8wawqq0qznpDXy188I+8W5Sa929sCPqw2/NSYnqpHJbo41BKso3+I9A== - dependencies: - "@csstools/postcss-color-function" "^1.0.2" - "@csstools/postcss-font-format-keywords" "^1.0.0" - "@csstools/postcss-hwb-function" "^1.0.0" - "@csstools/postcss-ic-unit" "^1.0.0" - "@csstools/postcss-is-pseudo-class" "^2.0.0" - "@csstools/postcss-normalize-display-values" "^1.0.0" - "@csstools/postcss-oklab-function" "^1.0.1" - "@csstools/postcss-progressive-custom-properties" "^1.2.0" - autoprefixer "^10.4.2" - browserslist "^4.19.1" - css-blank-pseudo "^3.0.3" - css-has-pseudo "^3.0.4" - css-prefers-color-scheme "^6.0.3" - cssdb "^6.3.1" - postcss-attribute-case-insensitive "^5.0.0" - postcss-clamp "^4.0.0" - postcss-color-functional-notation "^4.2.2" - postcss-color-hex-alpha "^8.0.3" - postcss-color-rebeccapurple "^7.0.2" - postcss-custom-media "^8.0.0" - postcss-custom-properties "^12.1.4" - postcss-custom-selectors "^6.0.0" - postcss-dir-pseudo-class "^6.0.4" - postcss-double-position-gradients "^3.1.0" - postcss-env-function "^4.0.5" - postcss-focus-visible "^6.0.4" - postcss-focus-within "^5.0.4" - postcss-font-variant "^5.0.0" - postcss-gap-properties "^3.0.3" - postcss-image-set-function "^4.0.6" - postcss-initial "^4.0.1" - postcss-lab-function "^4.1.1" - postcss-logical "^5.0.4" - postcss-media-minmax "^5.0.0" - postcss-nesting "^10.1.2" - postcss-opacity-percentage "^1.1.2" - postcss-overflow-shorthand "^3.0.3" - postcss-page-break "^3.0.4" - postcss-place "^7.0.4" - postcss-pseudo-class-any-link "^7.1.1" - postcss-replace-overflow-wrap "^4.0.0" - postcss-selector-not "^5.0.0" - -postcss-pseudo-class-any-link@^7.1.1: - version "7.1.1" - resolved "https://registry.yarnpkg.com/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-7.1.1.tgz#534eb1dadd9945eb07830dbcc06fb4d5d865b8e0" - integrity sha512-JRoLFvPEX/1YTPxRxp1JO4WxBVXJYrSY7NHeak5LImwJ+VobFMwYDQHvfTXEpcn+7fYIeGkC29zYFhFWIZD8fg== - dependencies: - postcss-selector-parser "^6.0.9" - -postcss-reduce-initial@^5.0.3: - version "5.0.3" - resolved "https://registry.yarnpkg.com/postcss-reduce-initial/-/postcss-reduce-initial-5.0.3.tgz#68891594defd648253703bbd8f1093162f19568d" - integrity sha512-c88TkSnQ/Dnwgb4OZbKPOBbCaauwEjbECP5uAuFPOzQ+XdjNjRH7SG0dteXrpp1LlIFEKK76iUGgmw2V0xeieA== - dependencies: - browserslist "^4.16.6" - caniuse-api "^3.0.0" - -postcss-reduce-transforms@^5.0.4: - version "5.0.4" - resolved "https://registry.yarnpkg.com/postcss-reduce-transforms/-/postcss-reduce-transforms-5.0.4.tgz#717e72d30befe857f7d2784dba10eb1157863712" - integrity sha512-VIJB9SFSaL8B/B7AXb7KHL6/GNNbbCHslgdzS9UDfBZYIA2nx8NLY7iD/BXFSO/1sRUILzBTfHCoW5inP37C5g== - dependencies: - postcss-value-parser "^4.2.0" - -postcss-replace-overflow-wrap@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-replace-overflow-wrap/-/postcss-replace-overflow-wrap-4.0.0.tgz#d2df6bed10b477bf9c52fab28c568b4b29ca4319" - integrity sha512-KmF7SBPphT4gPPcKZc7aDkweHiKEEO8cla/GjcBK+ckKxiZslIu3C4GCRW3DNfL0o7yW7kMQu9xlZ1kXRXLXtw== - -postcss-selector-not@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/postcss-selector-not/-/postcss-selector-not-5.0.0.tgz#ac5fc506f7565dd872f82f5314c0f81a05630dc7" - integrity sha512-/2K3A4TCP9orP4TNS7u3tGdRFVKqz/E6pX3aGnriPG0jU78of8wsUcqE4QAhWEU0d+WnMSF93Ah3F//vUtK+iQ== - dependencies: - balanced-match "^1.0.0" - -postcss-selector-parser@^6.0.2, postcss-selector-parser@^6.0.4, postcss-selector-parser@^6.0.5, postcss-selector-parser@^6.0.6, postcss-selector-parser@^6.0.8, postcss-selector-parser@^6.0.9: - version "6.0.9" - resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.9.tgz#ee71c3b9ff63d9cd130838876c13a2ec1a992b2f" - integrity sha512-UO3SgnZOVTwu4kyLR22UQ1xZh086RyNZppb7lLAKBFK8a32ttG5i87Y/P3+2bRSjZNyJ1B7hfFNo273tKe9YxQ== - dependencies: - cssesc "^3.0.0" - util-deprecate "^1.0.2" - -postcss-svgo@^5.0.4: - version "5.0.4" - resolved "https://registry.yarnpkg.com/postcss-svgo/-/postcss-svgo-5.0.4.tgz#cfa8682f47b88f7cd75108ec499e133b43102abf" - integrity sha512-yDKHvULbnZtIrRqhZoA+rxreWpee28JSRH/gy9727u0UCgtpv1M/9WEWY3xySlFa0zQJcqf6oCBJPR5NwkmYpg== - dependencies: - postcss-value-parser "^4.2.0" - svgo "^2.7.0" - -postcss-unique-selectors@^5.0.4: - version "5.0.4" - resolved "https://registry.yarnpkg.com/postcss-unique-selectors/-/postcss-unique-selectors-5.0.4.tgz#08e188126b634ddfa615fb1d6c262bafdd64826e" - integrity sha512-5ampwoSDJCxDPoANBIlMgoBcYUHnhaiuLYJR5pj1DLnYQvMRVyFuTA5C3Bvt+aHtiqWpJkD/lXT50Vo1D0ZsAQ== - dependencies: - postcss-selector-parser "^6.0.5" - -postcss-value-parser@^4.1.0, postcss-value-parser@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz#723c09920836ba6d3e5af019f92bc0971c02e514" - integrity sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ== - -postcss@^7.0.35: - version "7.0.39" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.39.tgz#9624375d965630e2e1f2c02a935c82a59cb48309" - integrity sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA== - dependencies: - picocolors "^0.2.1" - source-map "^0.6.1" - -postcss@^8.3.11, postcss@^8.3.5, postcss@^8.4.31, postcss@^8.4.4, postcss@^8.4.5, postcss@^8.4.6: +postcss@^8.3.11, postcss@^8.4.31: version "8.4.31" resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.31.tgz#92b451050a9f914da6755af352bdc0192508656d" integrity sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ== @@ -12439,11 +9558,6 @@ prelude-ls@^1.2.1: resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== -prelude-ls@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" - integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ= - prettier-plugin-organize-imports@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/prettier-plugin-organize-imports/-/prettier-plugin-organize-imports-4.1.0.tgz#f3d3764046a8e7ba6491431158b9be6ffd83b90f" @@ -12459,20 +9573,7 @@ prettier@^3.3.3: resolved "https://registry.yarnpkg.com/prettier/-/prettier-3.3.3.tgz#30c54fe0be0d8d12e6ae61dbb10109ea00d53105" integrity sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew== -pretty-bytes@^5.3.0, pretty-bytes@^5.4.1: - version "5.6.0" - resolved "https://registry.yarnpkg.com/pretty-bytes/-/pretty-bytes-5.6.0.tgz#356256f643804773c82f64723fe78c92c62beaeb" - integrity sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg== - -pretty-error@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/pretty-error/-/pretty-error-4.0.0.tgz#90a703f46dd7234adb46d0f84823e9d1cb8f10d6" - integrity sha512-AoJ5YMAcXKYxKhuJGdcvse+Voc6v1RgnsR3nWcYU7q4t6z0Q6T86sv5Zq8VIRbOWWFpvdGE83LtdSMNd+6Y0xw== - dependencies: - lodash "^4.17.20" - renderkid "^3.0.0" - -pretty-format@^27.0.2, pretty-format@^27.5.1: +pretty-format@^27.0.2: version "27.5.1" resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-27.5.1.tgz#2181879fdea51a7a5851fb39d920faa63f01d88e" integrity sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ== @@ -12481,7 +9582,7 @@ pretty-format@^27.0.2, pretty-format@^27.5.1: ansi-styles "^5.0.0" react-is "^17.0.1" -pretty-format@^29.0.0, pretty-format@^29.7.0: +pretty-format@^29.7.0: version "29.7.0" resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-29.7.0.tgz#ca42c758310f365bfa71a0bda0a807160b776812" integrity sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ== @@ -12510,14 +9611,12 @@ promise-map-series@^0.3.0: resolved "https://registry.yarnpkg.com/promise-map-series/-/promise-map-series-0.3.0.tgz#41873ca3652bb7a042b387d538552da9b576f8a1" integrity sha512-3npG2NGhTc8BWBolLLf8l/92OxMGaRLbqvIh9wjCHhDXNvk4zsxaTaCpiCunW09qWPrN2zeNSNwRLVBrQQtutA== -promise@^8.1.0: - version "8.1.0" - resolved "https://registry.yarnpkg.com/promise/-/promise-8.1.0.tgz#697c25c3dfe7435dd79fcd58c38a135888eaf05e" - integrity sha512-W04AqnILOL/sPRXziNicCjSNRruLAuIHEOVBazepu0545DDNGYHz7ar9ZgZ1fMU8/MA4mVxp5rkBWRi6OXIy3Q== - dependencies: - asap "~2.0.6" +promise-polyfill@^8.1.3: + version "8.3.0" + resolved "https://registry.yarnpkg.com/promise-polyfill/-/promise-polyfill-8.3.0.tgz#9284810268138d103807b11f4e23d5e945a4db63" + integrity sha512-H5oELycFml5yto/atYqmjyigJoAo3+OXwolYiH7OfQuYlAqhxNvTfiNMbV9hsC6Yp83yE5r2KTVmtrG6R9i6Pg== -prompts@^2.0.1, prompts@^2.4.2: +prompts@^2.0.1: version "2.4.2" resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.4.2.tgz#7b57e73b3a48029ad10ebd44f74b01722a4cb069" integrity sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q== @@ -12563,7 +9662,7 @@ pseudomap@^1.0.2: resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" integrity sha1-8FKijacOYYkX7wqKw0wa5aaChrM= -psl@^1.1.28, psl@^1.1.33: +psl@^1.1.28: version "1.8.0" resolved "https://registry.yarnpkg.com/psl/-/psl-1.8.0.tgz#9326f8bcfb013adcc005fdff056acce020e51c24" integrity sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ== @@ -12586,11 +9685,6 @@ pure-rand@^6.0.0: resolved "https://registry.yarnpkg.com/pure-rand/-/pure-rand-6.1.0.tgz#d173cf23258231976ccbdb05247c9787957604f2" integrity sha512-bVWawvoZoBYpp6yIoQtQXHZjmz35RSVHnUOTefl8Vcjr8snTPY1wnpSPMWekcFwbxI6gtmT7rSYPFvz71ldiOA== -q@^1.1.2: - version "1.5.1" - resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" - integrity sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc= - qs@6.13.0, qs@^6.13.0: version "6.13.0" resolved "https://registry.yarnpkg.com/qs/-/qs-6.13.0.tgz#6ca3bd58439f7e245655798997787b0d88a51906" @@ -12623,11 +9717,6 @@ quick-lru@^4.0.1: resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-4.0.1.tgz#5b8878f113a58217848c6482026c73e1ba57727f" integrity sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g== -quick-lru@^5.1.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-5.1.1.tgz#366493e6b3e42a3a6885e2e99d18f80fb7a8c932" - integrity sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA== - quick-temp@^0.1.8: version "0.1.8" resolved "https://registry.yarnpkg.com/quick-temp/-/quick-temp-0.1.8.tgz#bab02a242ab8fb0dd758a3c9776b32f9a5d94408" @@ -12637,13 +9726,6 @@ quick-temp@^0.1.8: rimraf "^2.5.4" underscore.string "~3.3.4" -raf@^3.4.1: - version "3.4.1" - resolved "https://registry.yarnpkg.com/raf/-/raf-3.4.1.tgz#0742e99a4a6552f445d73e3ee0328af0ff1ede39" - integrity sha512-Sq4CW4QhwOHE8ucn6J34MqtZCeWFP2aQSmrlroYgqAV1PjStIhJXxYuTgUIfkEk7zTLjmIjLmU5q+fbD1NnOJA== - dependencies: - performance-now "^2.1.0" - randombytes@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a" @@ -12651,7 +9733,7 @@ randombytes@^2.1.0: dependencies: safe-buffer "^5.1.0" -range-parser@^1.2.1, range-parser@~1.2.1: +range-parser@~1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== @@ -12666,48 +9748,6 @@ raw-body@2.5.2: iconv-lite "0.4.24" unpipe "1.0.0" -react-app-polyfill@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/react-app-polyfill/-/react-app-polyfill-3.0.0.tgz#95221e0a9bd259e5ca6b177c7bb1cb6768f68fd7" - integrity sha512-sZ41cxiU5llIB003yxxQBYrARBqe0repqPTTYBTmMqTz9szeBbE37BehCE891NZsmdZqqP+xWKdT3eo3vOzN8w== - dependencies: - core-js "^3.19.2" - object-assign "^4.1.1" - promise "^8.1.0" - raf "^3.4.1" - regenerator-runtime "^0.13.9" - whatwg-fetch "^3.6.2" - -react-dev-utils@^12.0.1: - version "12.0.1" - resolved "https://registry.yarnpkg.com/react-dev-utils/-/react-dev-utils-12.0.1.tgz#ba92edb4a1f379bd46ccd6bcd4e7bc398df33e73" - integrity sha512-84Ivxmr17KjUupyqzFode6xKhjwuEJDROWKJy/BthkL7Wn6NJ8h4WE6k/exAv6ImS+0oZLRRW5j/aINMHyeGeQ== - dependencies: - "@babel/code-frame" "^7.16.0" - address "^1.1.2" - browserslist "^4.18.1" - chalk "^4.1.2" - cross-spawn "^7.0.3" - detect-port-alt "^1.1.6" - escape-string-regexp "^4.0.0" - filesize "^8.0.6" - find-up "^5.0.0" - fork-ts-checker-webpack-plugin "^6.5.0" - global-modules "^2.0.0" - globby "^11.0.4" - gzip-size "^6.0.0" - immer "^9.0.7" - is-root "^2.1.0" - loader-utils "^3.2.0" - open "^8.4.0" - pkg-up "^3.1.0" - prompts "^2.4.2" - react-error-overlay "^6.0.11" - recursive-readdir "^2.2.2" - shell-quote "^1.7.3" - strip-ansi "^6.0.1" - text-table "^0.2.0" - react-dom@^18.3.1: version "18.3.1" resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-18.3.1.tgz#c2265d79511b57d479b3dd3fdfa51536494c5cb4" @@ -12723,11 +9763,6 @@ react-error-boundary@^3.1.0, react-error-boundary@^3.1.4: dependencies: "@babel/runtime" "^7.12.5" -react-error-overlay@^6.0.11: - version "6.0.11" - resolved "https://registry.yarnpkg.com/react-error-overlay/-/react-error-overlay-6.0.11.tgz#92835de5841c5cf08ba00ddd2d677b6d17ff9adb" - integrity sha512-/6UZ2qgEyH2aqzYZgQPxEnz33NJ2gNsnHA2o5+o4wW9bLM/JYQitNP9xPhsXwC08hMMovfGe/8retsdDsczPRg== - react-i18next@*, react-i18next@^14.0.0: version "14.0.0" resolved "https://registry.yarnpkg.com/react-i18next/-/react-i18next-14.0.0.tgz#eb39d2245fd1024237828c955f770e409a1ccb12" @@ -12776,11 +9811,6 @@ react-redux@^8.1.3: react-is "^18.0.0" use-sync-external-store "^1.0.0" -react-refresh@^0.11.0: - version "0.11.0" - resolved "https://registry.yarnpkg.com/react-refresh/-/react-refresh-0.11.0.tgz#77198b944733f0f1f1a90e791de4541f9f074046" - integrity sha512-F27qZr8uUqwhWZboondsPx8tnC3Ct3SxZA3V5WyEvujRyyNv0VYPhoBg1gZ8/MV5tubQp76Trw8lTv9hzRBa+A== - react-router-dom@^6.23.1: version "6.23.1" resolved "https://registry.yarnpkg.com/react-router-dom/-/react-router-dom-6.23.1.tgz#30cbf266669693e9492aa4fc0dde2541ab02322f" @@ -12796,61 +9826,6 @@ react-router@6.23.1: dependencies: "@remix-run/router" "1.16.1" -react-scripts@5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/react-scripts/-/react-scripts-5.0.1.tgz#6285dbd65a8ba6e49ca8d651ce30645a6d980003" - integrity sha512-8VAmEm/ZAwQzJ+GOMLbBsTdDKOpuZh7RPs0UymvBR2vRk4iZWCskjbFnxqjrzoIvlNNRZ3QJFx6/qDSi6zSnaQ== - dependencies: - "@babel/core" "^7.16.0" - "@pmmmwh/react-refresh-webpack-plugin" "^0.5.3" - "@svgr/webpack" "^5.5.0" - babel-jest "^27.4.2" - babel-loader "^8.2.3" - babel-plugin-named-asset-import "^0.3.8" - babel-preset-react-app "^10.0.1" - bfj "^7.0.2" - browserslist "^4.18.1" - camelcase "^6.2.1" - case-sensitive-paths-webpack-plugin "^2.4.0" - css-loader "^6.5.1" - css-minimizer-webpack-plugin "^3.2.0" - dotenv "^10.0.0" - dotenv-expand "^5.1.0" - eslint "^8.3.0" - eslint-config-react-app "^7.0.1" - eslint-webpack-plugin "^3.1.1" - file-loader "^6.2.0" - fs-extra "^10.0.0" - html-webpack-plugin "^5.5.0" - identity-obj-proxy "^3.0.0" - jest "^27.4.3" - jest-resolve "^27.4.2" - jest-watch-typeahead "^1.0.0" - mini-css-extract-plugin "^2.4.5" - postcss "^8.4.4" - postcss-flexbugs-fixes "^5.0.2" - postcss-loader "^6.2.1" - postcss-normalize "^10.0.1" - postcss-preset-env "^7.0.1" - prompts "^2.4.2" - react-app-polyfill "^3.0.0" - react-dev-utils "^12.0.1" - react-refresh "^0.11.0" - resolve "^1.20.0" - resolve-url-loader "^4.0.0" - sass-loader "^12.3.0" - semver "^7.3.5" - source-map-loader "^3.0.0" - style-loader "^3.3.1" - tailwindcss "^3.0.2" - terser-webpack-plugin "^5.2.5" - webpack "^5.64.4" - webpack-dev-server "^4.6.0" - webpack-manifest-plugin "^4.0.2" - workbox-webpack-plugin "^6.4.1" - optionalDependencies: - fsevents "^2.3.2" - react-transition-group@^4.4.5: version "4.4.5" resolved "https://registry.yarnpkg.com/react-transition-group/-/react-transition-group-4.4.5.tgz#e53d4e3f3344da8521489fbef8f2581d42becdd1" @@ -12922,7 +9897,7 @@ read-yaml-file@^1.1.0: pify "^4.0.1" strip-bom "^3.0.0" -readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.5, readable-stream@^2.2.2, readable-stream@~2.3.6: +readable-stream@^2.0.0, readable-stream@^2.0.5, readable-stream@^2.2.2, readable-stream@~2.3.6: version "2.3.7" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57" integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw== @@ -12935,7 +9910,7 @@ readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.5, readable string_decoder "~1.1.1" util-deprecate "~1.0.1" -readable-stream@^3.0.6, readable-stream@^3.1.1, readable-stream@^3.4.0, readable-stream@^3.5.0, readable-stream@^3.6.0: +readable-stream@^3.1.1, readable-stream@^3.4.0, readable-stream@^3.5.0, readable-stream@^3.6.0: version "3.6.0" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198" integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA== @@ -12990,13 +9965,6 @@ rechoir@^0.6.2: dependencies: resolve "^1.1.6" -recursive-readdir@^2.2.2: - version "2.2.3" - resolved "https://registry.yarnpkg.com/recursive-readdir/-/recursive-readdir-2.2.3.tgz#e726f328c0d69153bcabd5c322d3195252379372" - integrity sha512-8HrF5ZsXk5FAH9dgsx3BlUer73nIhuj+9OrQwEbLTPOBzGkL1lsFCR01am+v+0m2Cmbs1nP12hLDl5FA7EszKA== - dependencies: - minimatch "^3.0.5" - redent@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/redent/-/redent-3.0.0.tgz#e557b7998316bb53c9f1f56fa626352c6963059f" @@ -13039,7 +10007,7 @@ regenerate@^1.4.0: resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.2.tgz#b9346d8827e8f5a32f7ba29637d398b69014848a" integrity sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A== -regenerator-runtime@^0.13.4, regenerator-runtime@^0.13.9: +regenerator-runtime@^0.13.4: version "0.13.11" resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz#f6dca3e7ceec20590d07ada785636a90cdca17f9" integrity sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg== @@ -13056,12 +10024,7 @@ regenerator-transform@^0.14.2: dependencies: "@babel/runtime" "^7.8.4" -regex-parser@^2.2.11: - version "2.2.11" - resolved "https://registry.yarnpkg.com/regex-parser/-/regex-parser-2.2.11.tgz#3b37ec9049e19479806e878cabe7c1ca83ccfe58" - integrity sha512-jbD/FT0+9MBU2XAZluI7w2OBs1RBi6p9M83nkoZayQXXU9e8Robt69FcZc7wU4eJD/YFTjn1JdCk3rbMJajz8Q== - -regexp.prototype.flags@^1.2.0, regexp.prototype.flags@^1.3.1, regexp.prototype.flags@^1.4.3: +regexp.prototype.flags@^1.3.1, regexp.prototype.flags@^1.4.3: version "1.5.2" resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.5.2.tgz#138f644a3350f981a858c44f6bb1a61ff59be334" integrity sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw== @@ -13105,27 +10068,11 @@ regjsparser@^0.6.4: dependencies: jsesc "~0.5.0" -relateurl@^0.2.7: - version "0.2.7" - resolved "https://registry.yarnpkg.com/relateurl/-/relateurl-0.2.7.tgz#54dbf377e51440aca90a4cd274600d3ff2d888a9" - integrity sha1-VNvzd+UUQKypCkzSdGANP/LYiKk= - remove-trailing-separator@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" integrity sha1-wkvOKig62tW8P1jg1IJJuSN52O8= -renderkid@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/renderkid/-/renderkid-3.0.0.tgz#5fd823e4d6951d37358ecc9a58b1f06836b6268a" - integrity sha512-q/7VIQA8lmM1hF+jn+sFSPWGlMkSAeNYcPLmDQx2zzuiDfaLrOmumR8iaUKlenFgh0XRPIUeSPlH3A+AW3Z5pg== - dependencies: - css-select "^4.1.3" - dom-converter "^0.2.0" - htmlparser2 "^6.1.0" - lodash "^4.17.21" - strip-ansi "^6.0.1" - repeat-string@^1.6.1: version "1.6.1" resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" @@ -13199,11 +10146,6 @@ require-package-name@^2.0.1: resolved "https://registry.yarnpkg.com/require-package-name/-/require-package-name-2.0.1.tgz#c11e97276b65b8e2923f75dabf5fb2ef0c3841b9" integrity sha1-wR6XJ2tluOKSP3Xav1+y7ww4Qbk= -requires-port@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff" - integrity sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8= - reselect@^4.1.8: version "4.1.8" resolved "https://registry.yarnpkg.com/reselect/-/reselect-4.1.8.tgz#3f5dc671ea168dccdeb3e141236f69f02eaec524" @@ -13246,28 +10188,12 @@ resolve-options@^2.0.0: dependencies: value-or-function "^4.0.0" -resolve-url-loader@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/resolve-url-loader/-/resolve-url-loader-4.0.0.tgz#d50d4ddc746bb10468443167acf800dcd6c3ad57" - integrity sha512-05VEMczVREcbtT7Bz+C+96eUO5HDNvdthIiMB34t7FcF8ehcu4wC0sSgPUubs3XW2Q3CNLJk/BJrCU9wVRymiA== - dependencies: - adjust-sourcemap-loader "^4.0.0" - convert-source-map "^1.7.0" - loader-utils "^2.0.0" - postcss "^7.0.35" - source-map "0.6.1" - -resolve.exports@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-1.1.0.tgz#5ce842b94b05146c0e03076985d1d0e7e48c90c9" - integrity sha512-J1l+Zxxp4XK3LUDZ9m60LRJF/mAe4z6a4xyabPHk7pvK5t35dACV32iIjJDFeWZFfZlO29w6SZ67knR0tHzJtQ== - resolve.exports@^2.0.0: version "2.0.2" resolved "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-2.0.2.tgz#f8c934b8e6a13f539e38b7098e2e36134f01e800" integrity sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg== -resolve@^1.1.6, resolve@^1.10.0, resolve@^1.14.2, resolve@^1.19.0, resolve@^1.20.0, resolve@^1.22.0, resolve@^1.22.3: +resolve@^1.1.6, resolve@^1.10.0, resolve@^1.14.2, resolve@^1.19.0, resolve@^1.20.0, resolve@^1.22.3: version "1.22.8" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.8.tgz#b6c87a9f2aa06dfab52e3d70ac8cde321fa5a48d" integrity sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw== @@ -13305,11 +10231,6 @@ retry@^0.12.0: resolved "https://registry.yarnpkg.com/retry/-/retry-0.12.0.tgz#1b42a6266a21f07421d1b0b54b7dc167b01c013b" integrity sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow== -retry@^0.13.1: - version "0.13.1" - resolved "https://registry.yarnpkg.com/retry/-/retry-0.13.1.tgz#185b1587acf67919d63b357349e03537b2484658" - integrity sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg== - reusify@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" @@ -13346,23 +10267,6 @@ rimraf@^3.0.0, rimraf@^3.0.2: dependencies: glob "^7.1.3" -rollup-plugin-terser@^7.0.0: - version "7.0.2" - resolved "https://registry.yarnpkg.com/rollup-plugin-terser/-/rollup-plugin-terser-7.0.2.tgz#e8fbba4869981b2dc35ae7e8a502d5c6c04d324d" - integrity sha512-w3iIaU4OxcF52UUXiZNsNeuXIMDvFrr+ZXK6bFZ0Q60qyVfq4uLptoS4bbq3paG3x216eQllFZX7zt6TIImguQ== - dependencies: - "@babel/code-frame" "^7.10.4" - jest-worker "^26.2.1" - serialize-javascript "^4.0.0" - terser "^5.0.0" - -rollup@^2.43.1: - version "2.79.2" - resolved "https://registry.yarnpkg.com/rollup/-/rollup-2.79.2.tgz#f150e4a5db4b121a21a747d762f701e5e9f49090" - integrity sha512-fS6iqSPZDs3dr/y7Od6y5nha8dW1YnbgtsyotCVvoFGKbERG++CVRFv1meyGDE1SNItQA8BrnCw7ScdAhRJ3XQ== - optionalDependencies: - fsevents "~2.3.2" - rollup@^4.20.0: version "4.24.4" resolved "https://registry.yarnpkg.com/rollup/-/rollup-4.24.4.tgz#fdc76918de02213c95447c9ffff5e35dddb1d058" @@ -13438,7 +10342,7 @@ safe-buffer@5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== -safe-buffer@5.2.1, safe-buffer@>=5.1.0, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.2, safe-buffer@~5.2.0: +safe-buffer@5.2.1, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.2, safe-buffer@~5.2.0: version "5.2.1" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== @@ -13465,31 +10369,6 @@ sanitize-html@^2.11.0: parse-srcset "^1.0.2" postcss "^8.3.11" -sanitize.css@*: - version "13.0.0" - resolved "https://registry.yarnpkg.com/sanitize.css/-/sanitize.css-13.0.0.tgz#2675553974b27964c75562ade3bd85d79879f173" - integrity sha512-ZRwKbh/eQ6w9vmTjkuG0Ioi3HBwPFce0O+v//ve+aOq1oeCy7jMV2qzzAlpsNuqpqCBjjriM1lbtZbF/Q8jVyA== - -sass-loader@^12.3.0: - version "12.6.0" - resolved "https://registry.yarnpkg.com/sass-loader/-/sass-loader-12.6.0.tgz#5148362c8e2cdd4b950f3c63ac5d16dbfed37bcb" - integrity sha512-oLTaH0YCtX4cfnJZxKSLAyglED0naiYfNG1iXfU5w1LNZ+ukoA5DtyDIN5zmKVZwYNJP4KRc5Y3hkWga+7tYfA== - dependencies: - klona "^2.0.4" - neo-async "^2.6.2" - -sax@~1.2.4: - version "1.2.4" - resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" - integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== - -saxes@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/saxes/-/saxes-5.0.1.tgz#eebab953fa3b7608dbe94e5dadb15c888fa6696d" - integrity sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw== - dependencies: - xmlchars "^2.2.0" - scheduler@^0.23.2: version "0.23.2" resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.23.2.tgz#414ba64a3b282892e944cf2108ecc078d115cdc3" @@ -13497,25 +10376,7 @@ scheduler@^0.23.2: dependencies: loose-envify "^1.1.0" -schema-utils@2.7.0: - version "2.7.0" - resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-2.7.0.tgz#17151f76d8eae67fbbf77960c33c676ad9f4efc7" - integrity sha512-0ilKFI6QQF5nxDZLFn2dMjvc4hjg/Wkg7rHd3jK6/A4a1Hl9VFdQWvgB1UMGoU94pad1P/8N7fMcEnLnSiju8A== - dependencies: - "@types/json-schema" "^7.0.4" - ajv "^6.12.2" - ajv-keywords "^3.4.1" - -schema-utils@^2.6.5: - version "2.7.1" - resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-2.7.1.tgz#1ca4f32d1b24c590c203b8e7a50bf0ea4cd394d7" - integrity sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg== - dependencies: - "@types/json-schema" "^7.0.5" - ajv "^6.12.4" - ajv-keywords "^3.5.2" - -schema-utils@^3.0.0, schema-utils@^3.1.1, schema-utils@^3.2.0: +schema-utils@^3.1.1, schema-utils@^3.2.0: version "3.3.0" resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-3.3.0.tgz#f50a88877c3c01652a15b622ae9e9795df7a60fe" integrity sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg== @@ -13524,16 +10385,6 @@ schema-utils@^3.0.0, schema-utils@^3.1.1, schema-utils@^3.2.0: ajv "^6.12.5" ajv-keywords "^3.5.2" -schema-utils@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-4.0.0.tgz#60331e9e3ae78ec5d16353c467c34b3a0a1d3df7" - integrity sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg== - dependencies: - "@types/json-schema" "^7.0.9" - ajv "^8.8.0" - ajv-formats "^2.1.1" - ajv-keywords "^5.0.0" - screenfull@^5.1.0: version "5.2.0" resolved "https://registry.yarnpkg.com/screenfull/-/screenfull-5.2.0.tgz#6533d524d30621fc1283b9692146f3f13a93d1ba" @@ -13546,18 +10397,6 @@ selderee@^0.11.0: dependencies: parseley "^0.12.0" -select-hose@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/select-hose/-/select-hose-2.0.0.tgz#625d8658f865af43ec962bfc376a37359a4994ca" - integrity sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo= - -selfsigned@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/selfsigned/-/selfsigned-2.0.0.tgz#e927cd5377cbb0a1075302cff8df1042cc2bce5b" - integrity sha512-cUdFiCbKoa1mZ6osuJs2uDHrs0k0oprsKveFiiaBKCNq3SYyb5gs2HxhQyDNLCmL51ZZThqi4YNDpCK6GOP1iQ== - dependencies: - node-forge "^1.2.0" - semver-compare@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/semver-compare/-/semver-compare-1.0.0.tgz#0dee216a1c941ab37e9efb1788f6afc5ff5537fc" @@ -13573,7 +10412,7 @@ semver@^6.0.0, semver@^6.1.1, semver@^6.1.2, semver@^6.3.0, semver@^6.3.1: resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== -semver@^7.3.2, semver@^7.3.5, semver@^7.3.7, semver@^7.5.0, semver@^7.5.3, semver@^7.5.4: +semver@^7.3.5, semver@^7.3.7, semver@^7.5.0, semver@^7.5.3, semver@^7.5.4: version "7.5.4" resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.4.tgz#483986ec4ed38e1c6c48c34894a9182dbff68a6e" integrity sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA== @@ -13599,33 +10438,13 @@ send@0.19.0: range-parser "~1.2.1" statuses "2.0.1" -serialize-javascript@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-4.0.0.tgz#b525e1238489a5ecfc42afacc3fe99e666f4b1aa" - integrity sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw== - dependencies: - randombytes "^2.1.0" - -serialize-javascript@^6.0.0, serialize-javascript@^6.0.1: +serialize-javascript@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.1.tgz#b206efb27c3da0b0ab6b52f48d170b7996458e5c" integrity sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w== dependencies: randombytes "^2.1.0" -serve-index@^1.9.1: - version "1.9.1" - resolved "https://registry.yarnpkg.com/serve-index/-/serve-index-1.9.1.tgz#d3768d69b1e7d82e5ce050fff5b453bea12a9239" - integrity sha1-03aNabHn2C5c4FD/9bRTvqEqkjk= - dependencies: - accepts "~1.3.4" - batch "0.6.1" - debug "2.6.9" - escape-html "~1.0.3" - http-errors "~1.6.2" - mime-types "~2.1.17" - parseurl "~1.3.2" - serve-static@1.16.2: version "1.16.2" resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.16.2.tgz#b6a5343da47f6bdd2673848bf45754941e803296" @@ -13673,11 +10492,6 @@ set-harmonic-interval@^1.0.1: resolved "https://registry.yarnpkg.com/set-harmonic-interval/-/set-harmonic-interval-1.0.1.tgz#e1773705539cdfb80ce1c3d99e7f298bb3995249" integrity sha512-AhICkFV84tBP1aWqPwLZqFvAwqEoVA9kxNMniGEUvzOlm4vLmOFLiTT3UZ6bziJTy4bOVpzWGTfSCbmaayGx8g== -setprototypeof@1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.0.tgz#d0bd85536887b6fe7c0d818cb962d9d91c54e656" - integrity sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ== - setprototypeof@1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.2.0.tgz#66c9a24a73f9fc28cbe66b09fed3d33dcaf1b424" @@ -13707,11 +10521,6 @@ shebang-regex@^3.0.0: resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== -shell-quote@^1.7.3: - version "1.7.3" - resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.7.3.tgz#aa40edac170445b9a431e17bb62c0b881b9c4123" - integrity sha512-Vpfqwm4EnqGdlsBFNmHhxhElJYrdfcxPThu+ryKS5J8L/fhAwLazFZtq+S+TWZ9ANj2piSQLGj6NQg+lKPmxrw== - shelljs@0.8.5: version "0.8.5" resolved "https://registry.yarnpkg.com/shelljs/-/shelljs-0.8.5.tgz#de055408d8361bed66c669d2f000538ced8ee20c" @@ -13765,11 +10574,6 @@ slash@^3.0.0: resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== -slash@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/slash/-/slash-4.0.0.tgz#2422372176c4c6c5addb5e2ada885af984b396a7" - integrity sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew== - slice-ansi@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-5.0.0.tgz#b73063c57aa96f9cd881654b15294d95d285c42a" @@ -13798,15 +10602,6 @@ smartwrap@^2.0.2: wcwidth "^1.0.1" yargs "^15.1.0" -sockjs@^0.3.21: - version "0.3.24" - resolved "https://registry.yarnpkg.com/sockjs/-/sockjs-0.3.24.tgz#c9bc8995f33a111bea0395ec30aa3206bdb5ccce" - integrity sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ== - dependencies: - faye-websocket "^0.11.3" - uuid "^8.3.2" - websocket-driver "^0.7.4" - sonic-boom@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/sonic-boom/-/sonic-boom-4.0.1.tgz#515b7cef2c9290cb362c4536388ddeece07aed30" @@ -13821,12 +10616,7 @@ sort-keys@^5.0.0: dependencies: is-plain-obj "^4.0.0" -source-list-map@^2.0.0, source-list-map@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.1.tgz#3993bd873bfc48479cca9ea3a547835c7c154b34" - integrity sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw== - -source-map-js@^1.0.1, source-map-js@^1.0.2: +source-map-js@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.0.2.tgz#adbc361d9c62df380125e7f161f71c826f1e490c" integrity sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw== @@ -13836,15 +10626,6 @@ source-map-js@^1.2.0, source-map-js@^1.2.1: resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.2.1.tgz#1ce5650fddd87abc099eda37dcff024c2667ae46" integrity sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA== -source-map-loader@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/source-map-loader/-/source-map-loader-3.0.1.tgz#9ae5edc7c2d42570934be4c95d1ccc6352eba52d" - integrity sha512-Vp1UsfyPvgujKQzi4pyDiTOnE3E4H+yHvkVRN3c/9PJmQS4CQJExvcDvaX/D+RV+xQben9HJ56jMJS3CgUeWyA== - dependencies: - abab "^2.0.5" - iconv-lite "^0.6.3" - source-map-js "^1.0.1" - source-map-support@0.5.13: version "0.5.13" resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.13.tgz#31b24a9c2e73c2de85066c0feb7d44767ed52932" @@ -13853,7 +10634,7 @@ source-map-support@0.5.13: buffer-from "^1.0.0" source-map "^0.6.0" -source-map-support@0.5.21, source-map-support@^0.5.6, source-map-support@~0.5.20: +source-map-support@0.5.21, source-map-support@~0.5.20: version "0.5.21" resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f" integrity sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w== @@ -13866,12 +10647,7 @@ source-map@0.5.6: resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.6.tgz#75ce38f52bf0733c5a7f0c118d81334a2bb5f412" integrity sha1-dc449SvwczxafwwRjYEzSiu19BI= -source-map@0.6.1, source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.0, source-map@~0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" - integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== - -source-map@0.7.4, source-map@^0.7.3: +source-map@0.7.4: version "0.7.4" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.4.tgz#a9bbe705c9d8846f4e08ff6765acf0f1b0898656" integrity sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA== @@ -13881,17 +10657,10 @@ source-map@^0.5.7: resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" integrity sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ== -source-map@^0.8.0-beta.0: - version "0.8.0-beta.0" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.8.0-beta.0.tgz#d4c1bb42c3f7ee925f005927ba10709e0d1d1f11" - integrity sha512-2ymg6oRBpebeZi9UUNsgQ89bhx01TcTkmNTGnNO88imTmbSgy4nfujrgVEFKWpMTEGA11EDkTt7mqObTPdigIA== - dependencies: - whatwg-url "^7.0.0" - -sourcemap-codec@^1.4.8: - version "1.4.8" - resolved "https://registry.yarnpkg.com/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz#ea804bd94857402e6992d05a38ef1ae35a9ab4c4" - integrity sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA== +source-map@^0.6.0, source-map@^0.6.1: + version "0.6.1" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" + integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== spawndamnit@^2.0.0: version "2.0.0" @@ -13927,29 +10696,6 @@ spdx-license-ids@^3.0.0: resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.10.tgz#0d9becccde7003d6c658d487dd48a32f0bf3014b" integrity sha512-oie3/+gKf7QtpitB0LYLETe+k8SifzsX4KixvpOsbI6S0kRiRQ5MKOio8eMSAKQ17N06+wdEOXRiId+zOxo0hA== -spdy-transport@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/spdy-transport/-/spdy-transport-3.0.0.tgz#00d4863a6400ad75df93361a1608605e5dcdcf31" - integrity sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw== - dependencies: - debug "^4.1.0" - detect-node "^2.0.4" - hpack.js "^2.1.6" - obuf "^1.1.2" - readable-stream "^3.0.6" - wbuf "^1.7.3" - -spdy@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/spdy/-/spdy-4.0.2.tgz#b74f466203a3eda452c02492b91fb9e84a27677b" - integrity sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA== - dependencies: - debug "^4.1.0" - handle-thing "^2.0.0" - http-deceiver "^1.2.7" - select-hose "^2.0.0" - spdy-transport "^3.0.0" - split-ca@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/split-ca/-/split-ca-1.0.1.tgz#6c83aff3692fa61256e0cd197e05e9de157691a6" @@ -14004,11 +10750,6 @@ sshpk@^1.7.0: safer-buffer "^2.0.2" tweetnacl "~0.14.0" -stable@^0.1.8: - version "0.1.8" - resolved "https://registry.yarnpkg.com/stable/-/stable-0.1.8.tgz#836eb3c8382fe2936feaf544631017ce7d47a3cf" - integrity sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w== - stack-generator@^2.0.5: version "2.0.5" resolved "https://registry.yarnpkg.com/stack-generator/-/stack-generator-2.0.5.tgz#fb00e5b4ee97de603e0773ea78ce944d81596c36" @@ -14055,11 +10796,6 @@ statuses@2.0.1: resolved "https://registry.yarnpkg.com/statuses/-/statuses-2.0.1.tgz#55cb000ccf1d48728bd23c685a063998cf1a1b63" integrity sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ== -"statuses@>= 1.4.0 < 2": - version "1.5.0" - resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" - integrity sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow= - std-env@^3.7.0: version "3.7.0" resolved "https://registry.yarnpkg.com/std-env/-/std-env-3.7.0.tgz#c9f7386ced6ecf13360b6c6c55b8aaa4ef7481d2" @@ -14138,14 +10874,6 @@ string-length@^4.0.1: char-regex "^1.0.2" strip-ansi "^6.0.0" -string-length@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/string-length/-/string-length-5.0.1.tgz#3d647f497b6e8e8d41e422f7e0b23bc536c8381e" - integrity sha512-9Ep08KAMUn0OadnVaBuRdE2l615CQ508kr0XMadjClfYpdCyvrbFp6Taebo8yyxokQ4viUd/xPPUA4FGgUa0ow== - dependencies: - char-regex "^2.0.0" - strip-ansi "^7.0.1" - string-natural-compare@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/string-natural-compare/-/string-natural-compare-3.0.1.tgz#7a42d58474454963759e8e8b7ae63d71c1e7fdf4" @@ -14238,15 +10966,6 @@ string_decoder@~1.1.1: dependencies: safe-buffer "~5.1.0" -stringify-object@^3.3.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/stringify-object/-/stringify-object-3.3.0.tgz#703065aefca19300d3ce88af4f5b3956d7556629" - integrity sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw== - dependencies: - get-own-enumerable-property-symbols "^3.0.0" - is-obj "^1.0.1" - is-regexp "^1.0.0" - "strip-ansi-cjs@npm:strip-ansi@^6.0.1": version "6.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" @@ -14261,7 +10980,7 @@ strip-ansi@^6.0.0, strip-ansi@^6.0.1: dependencies: ansi-regex "^5.0.1" -strip-ansi@^7.0.0, strip-ansi@^7.0.1, strip-ansi@^7.1.0: +strip-ansi@^7.0.1, strip-ansi@^7.1.0: version "7.1.0" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-7.1.0.tgz#d5b6568ca689d8561370b0707685d22434faff45" integrity sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ== @@ -14278,11 +10997,6 @@ strip-bom@^4.0.0: resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-4.0.0.tgz#9c3505c1db45bcedca3d9cf7a16f5c5aa3901878" integrity sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w== -strip-comments@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/strip-comments/-/strip-comments-2.0.1.tgz#4ad11c3fbcac177a67a40ac224ca339ca1c1ba9b" - integrity sha512-ZprKx+bBLXv067WTCALv8SSz5l2+XhpYCsVtSqlMnkAXMWDq+/ekVbl1ghqP9rUHTzv6sm/DwCOiYutU/yp1fw== - strip-final-newline@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad" @@ -14305,19 +11019,6 @@ strip-json-comments@^3.1.1: resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== -style-loader@^3.3.1: - version "3.3.1" - resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-3.3.1.tgz#057dfa6b3d4d7c7064462830f9113ed417d38575" - integrity sha512-GPcQ+LDJbrcxHORTRes6Jy2sfvK2kS6hpSfI/fXhPt+spVzxF6LJ1dHLN9zIGmVaaP044YKaIatFaufENRiDoQ== - -stylehacks@^5.0.3: - version "5.0.3" - resolved "https://registry.yarnpkg.com/stylehacks/-/stylehacks-5.0.3.tgz#2ef3de567bfa2be716d29a93bf3d208c133e8d04" - integrity sha512-ENcUdpf4yO0E1rubu8rkxI+JGQk4CgjchynZ4bDBJDfqdy+uhTRSWb8/F3Jtu+Bw5MW45Po3/aQGeIyyxgQtxg== - dependencies: - browserslist "^4.16.6" - postcss-selector-parser "^6.0.4" - stylis@4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/stylis/-/stylis-4.2.0.tgz#79daee0208964c8fe695a42fcffcac633a211a51" @@ -14335,7 +11036,7 @@ supports-color@^5.3.0: dependencies: has-flag "^3.0.0" -supports-color@^7.0.0, supports-color@^7.1.0: +supports-color@^7.1.0: version "7.2.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== @@ -14349,56 +11050,11 @@ supports-color@^8.0.0: dependencies: has-flag "^4.0.0" -supports-hyperlinks@^2.0.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/supports-hyperlinks/-/supports-hyperlinks-2.2.0.tgz#4f77b42488765891774b70c79babd87f9bd594bb" - integrity sha512-6sXEzV5+I5j8Bmq9/vUphGRM/RJNT9SCURJLjwfOg51heRtguGWDzcaBlgAzKhQa0EVNpPEKzQuBwZ8S8WaCeQ== - dependencies: - has-flag "^4.0.0" - supports-color "^7.0.0" - supports-preserve-symlinks-flag@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== -svg-parser@^2.0.2: - version "2.0.4" - resolved "https://registry.yarnpkg.com/svg-parser/-/svg-parser-2.0.4.tgz#fdc2e29e13951736140b76cb122c8ee6630eb6b5" - integrity sha512-e4hG1hRwoOdRb37cIMSgzNsxyzKfayW6VOflrwvR+/bzrkyxY/31WkbgnQpgtrNp1SdpJvpUAGTa/ZoiPNDuRQ== - -svgo@^1.2.2: - version "1.3.2" - resolved "https://registry.yarnpkg.com/svgo/-/svgo-1.3.2.tgz#b6dc511c063346c9e415b81e43401145b96d4167" - integrity sha512-yhy/sQYxR5BkC98CY7o31VGsg014AKLEPxdfhora76l36hD9Rdy5NZA/Ocn6yayNPgSamYdtX2rFJdcv07AYVw== - dependencies: - chalk "^2.4.1" - coa "^2.0.2" - css-select "^2.0.0" - css-select-base-adapter "^0.1.1" - css-tree "1.0.0-alpha.37" - csso "^4.0.2" - js-yaml "^3.13.1" - mkdirp "~0.5.1" - object.values "^1.1.0" - sax "~1.2.4" - stable "^0.1.8" - unquote "~1.1.1" - util.promisify "~1.0.0" - -svgo@^2.7.0: - version "2.8.0" - resolved "https://registry.yarnpkg.com/svgo/-/svgo-2.8.0.tgz#4ff80cce6710dc2795f0c7c74101e6764cfccd24" - integrity sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg== - dependencies: - "@trysound/sax" "0.2.0" - commander "^7.2.0" - css-select "^4.1.3" - css-tree "^1.1.3" - csso "^4.2.0" - picocolors "^1.0.0" - stable "^0.1.8" - swagger-ui-dist@5.11.2: version "5.11.2" resolved "https://registry.yarnpkg.com/swagger-ui-dist/-/swagger-ui-dist-5.11.2.tgz#b423e820928df703586ff58f80b09ffcf2434e08" @@ -14409,49 +11065,12 @@ symbol-observable@4.0.0: resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-4.0.0.tgz#5b425f192279e87f2f9b937ac8540d1984b39205" integrity sha512-b19dMThMV4HVFynSAM1++gBHAbk2Tc/osgLIBZMKsyqh34jb2e8Os7T6ZW/Bt3pJFdBTd2JwAnAAEQV7rSNvcQ== -symbol-tree@^3.2.4: - version "3.2.4" - resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.4.tgz#430637d248ba77e078883951fb9aa0eed7c63fa2" - integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw== - symlink-or-copy@^1.1.8, symlink-or-copy@^1.2.0, symlink-or-copy@^1.3.1: version "1.3.1" resolved "https://registry.yarnpkg.com/symlink-or-copy/-/symlink-or-copy-1.3.1.tgz#9506dd64d8e98fa21dcbf4018d1eab23e77f71fe" integrity sha512-0K91MEXFpBUaywiwSSkmKjnGcasG/rVBXFLJz5DrgGabpYD6N+3yZrfD6uUIfpuTu65DZLHi7N8CizHc07BPZA== -tailwindcss@^3.0.2: - version "3.0.23" - resolved "https://registry.yarnpkg.com/tailwindcss/-/tailwindcss-3.0.23.tgz#c620521d53a289650872a66adfcb4129d2200d10" - integrity sha512-+OZOV9ubyQ6oI2BXEhzw4HrqvgcARY38xv3zKcjnWtMIZstEsXdI9xftd1iB7+RbOnj2HOEzkA0OyB5BaSxPQA== - dependencies: - arg "^5.0.1" - chalk "^4.1.2" - chokidar "^3.5.3" - color-name "^1.1.4" - cosmiconfig "^7.0.1" - detective "^5.2.0" - didyoumean "^1.2.2" - dlv "^1.1.3" - fast-glob "^3.2.11" - glob-parent "^6.0.2" - is-glob "^4.0.3" - normalize-path "^3.0.0" - object-hash "^2.2.0" - postcss "^8.4.6" - postcss-js "^4.0.0" - postcss-load-config "^3.1.0" - postcss-nested "5.0.6" - postcss-selector-parser "^6.0.9" - postcss-value-parser "^4.2.0" - quick-lru "^5.1.1" - resolve "^1.22.0" - -tapable@^1.0.0: - version "1.1.3" - resolved "https://registry.yarnpkg.com/tapable/-/tapable-1.1.3.tgz#a1fccc06b58db61fd7a45da2da44f5f3a3e67ba2" - integrity sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA== - -tapable@^2.0.0, tapable@^2.1.1, tapable@^2.2.0, tapable@^2.2.1: +tapable@^2.1.1, tapable@^2.2.0, tapable@^2.2.1: version "2.2.1" resolved "https://registry.yarnpkg.com/tapable/-/tapable-2.2.1.tgz#1967a73ef4060a82f12ab96af86d52fdb76eeca0" integrity sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ== @@ -14504,35 +11123,12 @@ teex@^1.0.1: dependencies: streamx "^2.12.5" -temp-dir@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/temp-dir/-/temp-dir-2.0.0.tgz#bde92b05bdfeb1516e804c9c00ad45177f31321e" - integrity sha512-aoBAniQmmwtcKp/7BzsH8Cxzv8OL736p7v1ihGb5e9DJ9kTwGWHrQrVB5+lfVDzfGrdRzXch+ig7LHaY1JTOrg== - -tempy@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/tempy/-/tempy-0.6.0.tgz#65e2c35abc06f1124a97f387b08303442bde59f3" - integrity sha512-G13vtMYPT/J8A4X2SjdtBTphZlrp1gKv6hZiOjw14RCWg6GbHuQBGtjlx75xLbYV/wEc0D7G5K4rxKP/cXk8Bw== - dependencies: - is-stream "^2.0.0" - temp-dir "^2.0.0" - type-fest "^0.16.0" - unique-string "^2.0.0" - term-size@^2.1.0: version "2.2.1" resolved "https://registry.yarnpkg.com/term-size/-/term-size-2.2.1.tgz#2a6a54840432c2fb6320fea0f415531e90189f54" integrity sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg== -terminal-link@^2.0.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/terminal-link/-/terminal-link-2.1.1.tgz#14a64a27ab3c0df933ea546fba55f2d078edc994" - integrity sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ== - dependencies: - ansi-escapes "^4.2.1" - supports-hyperlinks "^2.0.0" - -terser-webpack-plugin@^5.2.5, terser-webpack-plugin@^5.3.7: +terser-webpack-plugin@^5.3.7: version "5.3.7" resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-5.3.7.tgz#ef760632d24991760f339fe9290deb936ad1ffc7" integrity sha512-AfKwIktyP7Cu50xNjXF/6Qb5lBNzYaWpU6YfoX3uZicTx0zTy0stDDCsvjDapKsSDvOeWo5MEq4TmdBy2cNoHw== @@ -14543,7 +11139,7 @@ terser-webpack-plugin@^5.2.5, terser-webpack-plugin@^5.3.7: serialize-javascript "^6.0.1" terser "^5.16.5" -terser@^5.0.0, terser@^5.10.0, terser@^5.16.5: +terser@^5.16.5: version "5.16.9" resolved "https://registry.yarnpkg.com/terser/-/terser-5.16.9.tgz#7a28cb178e330c484369886f2afd623d9847495f" integrity sha512-HPa/FdTB9XGI2H1/keLFZHxl6WNvAI4YalHGtDQTlMnJcoqSab1UwL4l1hGEhs6/GmLHBZIg/YgB++jcbzoOEg== @@ -14604,11 +11200,6 @@ thread-stream@^3.0.0: dependencies: real-require "^0.2.0" -throat@^6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/throat/-/throat-6.0.1.tgz#d514fedad95740c12c2d7fc70ea863eb51ade375" - integrity sha512-8hmiGIJMDlwjg7dlJ4yKGLK8EsYqKgPWbG3b4wjJddKNwc7N7Dpn08Df4szr/sZdMVeOstrdYSsqzX6BYbcB+w== - throttle-debounce@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/throttle-debounce/-/throttle-debounce-3.0.1.tgz#32f94d84dfa894f786c9a1f290e7a645b6a19abb" @@ -14627,21 +11218,11 @@ through@^2.3.6: resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" integrity sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU= -thunky@^1.0.2: - version "1.1.0" - resolved "https://registry.yarnpkg.com/thunky/-/thunky-1.1.0.tgz#5abaf714a9405db0504732bbccd2cedd9ef9537d" - integrity sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA== - timezones-ical-library@^1.8.3: version "1.8.3" resolved "https://registry.yarnpkg.com/timezones-ical-library/-/timezones-ical-library-1.8.3.tgz#36d89a19d3d973592ebdd184accfca73338ae984" integrity sha512-aXpr/l5Vxfrpf2s9OUoS8Qoj+DG9ykq1YWMzWk4tG1TwxKLnrFWiAgOKrQbBtPEynVtkU1aB1TftTX/SkvSzdQ== -timsort@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/timsort/-/timsort-0.3.0.tgz#405411a8e7e6339fe64db9a234de11dc31e02bd4" - integrity sha1-QFQRqOfmM5/mTbmiNN4R3DHgK9Q= - tinybench@^2.9.0: version "2.9.0" resolved "https://registry.yarnpkg.com/tinybench/-/tinybench-2.9.0.tgz#103c9f8ba6d7237a47ab6dd1dcff77251863426b" @@ -14689,7 +11270,7 @@ tmp@^0.2.1: dependencies: rimraf "^3.0.0" -tmpl@1.0.5, tmpl@1.0.x: +tmpl@1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.5.tgz#8683e0b902bb9c20c4f726e3c0b69f36518c07cc" integrity sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw== @@ -14736,29 +11317,6 @@ tough-cookie@^2.3.3, tough-cookie@~2.5.0: psl "^1.1.28" punycode "^2.1.1" -tough-cookie@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-4.0.0.tgz#d822234eeca882f991f0f908824ad2622ddbece4" - integrity sha512-tHdtEpQCMrc1YLrMaqXXcj6AxhYi/xgit6mZu1+EDWUn+qhUf8wMQoFIy9NXuq23zAwtcB0t/MjACGR18pcRbg== - dependencies: - psl "^1.1.33" - punycode "^2.1.1" - universalify "^0.1.2" - -tr46@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/tr46/-/tr46-1.0.1.tgz#a8b13fd6bfd2489519674ccde55ba3693b706d09" - integrity sha1-qLE/1r/SSJUZZ0zN5VujaTtwbQk= - dependencies: - punycode "^2.1.0" - -tr46@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/tr46/-/tr46-2.1.0.tgz#fa87aa81ca5d5941da8cbf1f9b749dc969a4e240" - integrity sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw== - dependencies: - punycode "^2.1.1" - tr46@~0.0.3: version "0.0.3" resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" @@ -14774,11 +11332,6 @@ trim-newlines@^3.0.0: resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-3.0.1.tgz#260a5d962d8b752425b32f3a7db0dcacd176c144" integrity sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw== -tryer@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/tryer/-/tryer-1.0.1.tgz#f2c85406800b9b0f74c9f7465b81eaad241252f8" - integrity sha512-c3zayb8/kWWpycWYg87P71E1S1ZL6b6IJxfb5fvsUgsf0S2MVGaDhDXXjDMpdCpfWXqptc+4mXwmiy1ypXqRAA== - ts-easing@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/ts-easing/-/ts-easing-0.2.0.tgz#c8a8a35025105566588d87dbda05dd7fbfa5a4ec" @@ -14824,7 +11377,7 @@ tslib@2.6.2: resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.2.tgz#703ac29425e7b37cd6fd456e92404d46d1f3e4ae" integrity sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q== -tslib@2.7.0, tslib@^2.0.3, tslib@^2.1.0, tslib@^2.4.0, tslib@^2.5.0: +tslib@2.7.0, tslib@^2.1.0, tslib@^2.4.0, tslib@^2.5.0: version "2.7.0" resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.7.0.tgz#d9b40c5c40ab59e8738f297df3087bf1a2690c01" integrity sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA== @@ -14873,13 +11426,6 @@ type-check@^0.4.0, type-check@~0.4.0: dependencies: prelude-ls "^1.2.1" -type-check@~0.3.2: - version "0.3.2" - resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72" - integrity sha1-WITKtRLPHTVeP7eE8wgEsrUg23I= - dependencies: - prelude-ls "~1.1.2" - type-detect@4.0.8: version "4.0.8" resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" @@ -14890,11 +11436,6 @@ type-fest@^0.13.1: resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.13.1.tgz#0172cb5bce80b0bd542ea348db50c7e21834d934" integrity sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg== -type-fest@^0.16.0: - version "0.16.0" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.16.0.tgz#3240b891a78b0deae910dbeb86553e552a148860" - integrity sha512-eaBzG6MxNzEn9kiwvtre90cXaNLkmadMWa1zQMs3XORCXNbsH/OewwbxC5ia9dCxIxnTAsSxXJaa/p5y8DlvJg== - type-fest@^0.20.2: version "0.20.2" resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4" @@ -14928,13 +11469,6 @@ type-is@^1.6.4, type-is@~1.6.18: media-typer "0.3.0" mime-types "~2.1.24" -typedarray-to-buffer@^3.1.5: - version "3.1.5" - resolved "https://registry.yarnpkg.com/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz#a97ee7a9ff42691b9f783ff1bc5112fe3fca9080" - integrity sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q== - dependencies: - is-typedarray "^1.0.0" - typedarray@^0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" @@ -15013,14 +11547,7 @@ unicode-property-aliases-ecmascript@^1.0.4: resolved "https://registry.yarnpkg.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.1.0.tgz#dd57a99f6207bedff4628abefb94c50db941c8f4" integrity sha512-PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg== -unique-string@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/unique-string/-/unique-string-2.0.0.tgz#39c6451f81afb2749de2b233e3f7c5e8843bd89d" - integrity sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg== - dependencies: - crypto-random-string "^2.0.0" - -universalify@^0.1.0, universalify@^0.1.2: +universalify@^0.1.0: version "0.1.2" resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg== @@ -15035,21 +11562,11 @@ unpipe@1.0.0, unpipe@~1.0.0: resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" integrity sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ== -unquote@~1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/unquote/-/unquote-1.1.1.tgz#8fded7324ec6e88a0ff8b905e7c098cdc086d544" - integrity sha1-j97XMk7G6IoP+LkF58CYzcCG1UQ= - untildify@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/untildify/-/untildify-4.0.0.tgz#2bc947b953652487e4600949fb091e3ae8cd919b" integrity sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw== -upath@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/upath/-/upath-1.2.0.tgz#8f66dbcd55a883acdae4408af8b035a5044c1894" - integrity sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg== - update-browserslist-db@^1.0.11: version "1.0.11" resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz#9a2a641ad2907ae7b3616506f4b977851db5b940" @@ -15083,16 +11600,6 @@ util-deprecate@^1.0.1, util-deprecate@^1.0.2, util-deprecate@~1.0.1: resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= -util.promisify@~1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/util.promisify/-/util.promisify-1.0.1.tgz#6baf7774b80eeb0f7520d8b81d07982a59abbaee" - integrity sha512-g9JpC/3He3bm38zsLupWryXHoEcS22YHthuPQSJdMy6KNrzIRzWqcsHzD/WUnqe45whVou4VIsPew37DoXWNrA== - dependencies: - define-properties "^1.1.3" - es-abstract "^1.17.2" - has-symbols "^1.0.1" - object.getownpropertydescriptors "^2.1.0" - util@^0.12.3: version "0.12.5" resolved "https://registry.yarnpkg.com/util/-/util-0.12.5.tgz#5f17a6059b73db61a875668781a1c2b136bd6fbc" @@ -15104,11 +11611,6 @@ util@^0.12.3: is-typed-array "^1.1.3" which-typed-array "^1.1.2" -utila@~0.4: - version "0.4.0" - resolved "https://registry.yarnpkg.com/utila/-/utila-0.4.0.tgz#8a16a05d445657a3aea5eecc5b12a4fa5379772c" - integrity sha1-ihagXURWV6Oupe7MWxKk+lN5dyw= - utils-merge@1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" @@ -15124,20 +11626,6 @@ uuid@^3.3.2: resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A== -uuid@^8.3.2: - version "8.3.2" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" - integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== - -v8-to-istanbul@^8.1.0: - version "8.1.1" - resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-8.1.1.tgz#77b752fd3975e31bbcef938f85e9bd1c7a8d60ed" - integrity sha512-FGtKtv3xIpR6BYhvgH8MI/y78oT7d8Au3ww4QIxymrCtZEh5b8gCw2siywE+puhEmuWKDtmfrvF5UlB298ut3w== - dependencies: - "@types/istanbul-lib-coverage" "^2.0.1" - convert-source-map "^1.6.0" - source-map "^0.7.3" - v8-to-istanbul@^9.0.1: version "9.3.0" resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-9.3.0.tgz#b9572abfa62bd556c16d75fdebc1a411d5ff3175" @@ -15290,20 +11778,6 @@ vue-template-compiler@^2.6.11: de-indent "^1.0.2" he "^1.1.0" -w3c-hr-time@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz#0a89cdf5cc15822df9c360543676963e0cc308cd" - integrity sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ== - dependencies: - browser-process-hrtime "^1.0.0" - -w3c-xmlserializer@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz#3e7104a05b75146cc60f564380b7f683acf1020a" - integrity sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA== - dependencies: - xml-name-validator "^3.0.0" - walk-sync@^2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/walk-sync/-/walk-sync-2.2.0.tgz#80786b0657fcc8c0e1c0b1a042a09eae2966387a" @@ -15314,13 +11788,6 @@ walk-sync@^2.2.0: matcher-collection "^2.0.0" minimatch "^3.0.4" -walker@^1.0.7: - version "1.0.7" - resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.7.tgz#2f7f9b8fd10d677262b18a884e28d19618e028fb" - integrity sha1-L3+bj9ENZ3JisYqITijRlhjgKPs= - dependencies: - makeerror "1.0.x" - walker@^1.0.8: version "1.0.8" resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.8.tgz#bd498db477afe573dc04185f011d3ab8a8d7653f" @@ -15336,13 +11803,6 @@ watchpack@^2.4.0: glob-to-regexp "^0.4.1" graceful-fs "^4.1.2" -wbuf@^1.1.0, wbuf@^1.7.3: - version "1.7.3" - resolved "https://registry.yarnpkg.com/wbuf/-/wbuf-1.7.3.tgz#c1d8d149316d3ea852848895cb6a0bfe887b87df" - integrity sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA== - dependencies: - minimalistic-assert "^1.0.0" - wcwidth@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/wcwidth/-/wcwidth-1.0.1.tgz#f0b0dcf915bc5ff1528afadb2c0e17b532da2fe8" @@ -15364,103 +11824,17 @@ webidl-conversions@^3.0.0: resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" integrity sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE= -webidl-conversions@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-4.0.2.tgz#a855980b1f0b6b359ba1d5d9fb39ae941faa63ad" - integrity sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg== - -webidl-conversions@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-5.0.0.tgz#ae59c8a00b121543a2acc65c0434f57b0fc11aff" - integrity sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA== - -webidl-conversions@^6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-6.1.0.tgz#9111b4d7ea80acd40f5270d666621afa78b69514" - integrity sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w== - -webpack-dev-middleware@^5.3.1: - version "5.3.4" - resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-5.3.4.tgz#eb7b39281cbce10e104eb2b8bf2b63fce49a3517" - integrity sha512-BVdTqhhs+0IfoeAf7EoH5WE+exCmqGerHfDM0IL096Px60Tq2Mn9MAbnaGUe6HiMa41KMCYF19gyzZmBcq/o4Q== - dependencies: - colorette "^2.0.10" - memfs "^3.4.3" - mime-types "^2.1.31" - range-parser "^1.2.1" - schema-utils "^4.0.0" - -webpack-dev-server@^4.6.0: - version "4.7.4" - resolved "https://registry.yarnpkg.com/webpack-dev-server/-/webpack-dev-server-4.7.4.tgz#d0ef7da78224578384e795ac228d8efb63d5f945" - integrity sha512-nfdsb02Zi2qzkNmgtZjkrMOcXnYZ6FLKcQwpxT7MvmHKc+oTtDsBju8j+NMyAygZ9GW1jMEUpy3itHtqgEhe1A== - dependencies: - "@types/bonjour" "^3.5.9" - "@types/connect-history-api-fallback" "^1.3.5" - "@types/express" "^4.17.13" - "@types/serve-index" "^1.9.1" - "@types/sockjs" "^0.3.33" - "@types/ws" "^8.2.2" - ansi-html-community "^0.0.8" - bonjour "^3.5.0" - chokidar "^3.5.3" - colorette "^2.0.10" - compression "^1.7.4" - connect-history-api-fallback "^1.6.0" - default-gateway "^6.0.3" - del "^6.0.0" - express "^4.17.1" - graceful-fs "^4.2.6" - html-entities "^2.3.2" - http-proxy-middleware "^2.0.0" - ipaddr.js "^2.0.1" - open "^8.0.9" - p-retry "^4.5.0" - portfinder "^1.0.28" - schema-utils "^4.0.0" - selfsigned "^2.0.0" - serve-index "^1.9.1" - sockjs "^0.3.21" - spdy "^4.0.2" - strip-ansi "^7.0.0" - webpack-dev-middleware "^5.3.1" - ws "^8.4.2" - -webpack-manifest-plugin@^4.0.2: - version "4.1.1" - resolved "https://registry.yarnpkg.com/webpack-manifest-plugin/-/webpack-manifest-plugin-4.1.1.tgz#10f8dbf4714ff93a215d5a45bcc416d80506f94f" - integrity sha512-YXUAwxtfKIJIKkhg03MKuiFAD72PlrqCiwdwO4VEXdRO5V0ORCNwaOwAZawPZalCbmH9kBDmXnNeQOw+BIEiow== - dependencies: - tapable "^2.0.0" - webpack-sources "^2.2.0" - webpack-node-externals@3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/webpack-node-externals/-/webpack-node-externals-3.0.0.tgz#1a3407c158d547a9feb4229a9e3385b7b60c9917" integrity sha512-LnL6Z3GGDPht/AigwRh2dvL9PQPFQ8skEpVrWZXLWBYmqcaojHNN0onvHzie6rq7EWKrrBfPYqNEzTJgiwEQDQ== -webpack-sources@^1.4.3: - version "1.4.3" - resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.4.3.tgz#eedd8ec0b928fbf1cbfe994e22d2d890f330a933" - integrity sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ== - dependencies: - source-list-map "^2.0.0" - source-map "~0.6.1" - -webpack-sources@^2.2.0: - version "2.3.1" - resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-2.3.1.tgz#570de0af163949fe272233c2cefe1b56f74511fd" - integrity sha512-y9EI9AO42JjEcrTJFOYmVywVZdKVUfOvDUPsJea5GIr1JOEGFVqwlY2K098fFoIjOkDzHn2AjRvM8dsBZu+gCA== - dependencies: - source-list-map "^2.0.1" - source-map "^0.6.1" - webpack-sources@^3.2.3: version "3.2.3" resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-3.2.3.tgz#2d4daab8451fd4b240cc27055ff6a0c2ccea0cde" integrity sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w== -webpack@5.88.2, webpack@^5.64.4: +webpack@5.88.2: version "5.88.2" resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.88.2.tgz#f62b4b842f1c6ff580f3fcb2ed4f0b579f4c210e" integrity sha512-JmcgNZ1iKj+aiR0OvTYtWQqJwq37Pf683dY9bVORwVbUrDhLhdn/PlO2sHsFHPkj7sHNQF3JwaAkp49V+Sq1tQ== @@ -15490,37 +11864,6 @@ webpack@5.88.2, webpack@^5.64.4: watchpack "^2.4.0" webpack-sources "^3.2.3" -websocket-driver@>=0.5.1, websocket-driver@^0.7.4: - version "0.7.4" - resolved "https://registry.yarnpkg.com/websocket-driver/-/websocket-driver-0.7.4.tgz#89ad5295bbf64b480abcba31e4953aca706f5760" - integrity sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg== - dependencies: - http-parser-js ">=0.5.1" - safe-buffer ">=5.1.0" - websocket-extensions ">=0.1.1" - -websocket-extensions@>=0.1.1: - version "0.1.4" - resolved "https://registry.yarnpkg.com/websocket-extensions/-/websocket-extensions-0.1.4.tgz#7f8473bc839dfd87608adb95d7eb075211578a42" - integrity sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg== - -whatwg-encoding@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz#5abacf777c32166a51d085d6b4f3e7d27113ddb0" - integrity sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw== - dependencies: - iconv-lite "0.4.24" - -whatwg-fetch@^3.6.2: - version "3.6.2" - resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-3.6.2.tgz#dced24f37f2624ed0281725d51d0e2e3fe677f8c" - integrity sha512-bJlen0FcuU/0EMLrdbJ7zOnW6ITZLrZMIarMUVmdKtsGvZna8vxKYaexICWPfZ8qwf9fzNq+UEIZrnSaApt6RA== - -whatwg-mimetype@^2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz#3d4b1e0312d2079879f826aff18dbeeca5960fbf" - integrity sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g== - whatwg-url@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d" @@ -15529,24 +11872,6 @@ whatwg-url@^5.0.0: tr46 "~0.0.3" webidl-conversions "^3.0.0" -whatwg-url@^7.0.0: - version "7.1.0" - resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-7.1.0.tgz#c2c492f1eca612988efd3d2266be1b9fc6170d06" - integrity sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg== - dependencies: - lodash.sortby "^4.7.0" - tr46 "^1.0.1" - webidl-conversions "^4.0.2" - -whatwg-url@^8.0.0, whatwg-url@^8.5.0: - version "8.7.0" - resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-8.7.0.tgz#656a78e510ff8f3937bc0bcbe9f5c0ac35941b77" - integrity sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg== - dependencies: - lodash "^4.7.0" - tr46 "^2.1.0" - webidl-conversions "^6.1.0" - which-boxed-primitive@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz#13757bc89b209b049fe5d86430e21cf40a89a8e6" @@ -15592,7 +11917,7 @@ which-typed-array@^1.1.13, which-typed-array@^1.1.14, which-typed-array@^1.1.2: gopd "^1.0.1" has-tostringtag "^1.0.2" -which@^1.2.14, which@^1.2.9, which@^1.3.1: +which@^1.2.14, which@^1.2.9: version "1.3.1" resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== @@ -15621,180 +11946,6 @@ windows-release@^4.0.0: dependencies: execa "^4.0.2" -word-wrap@~1.2.3: - version "1.2.5" - resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.5.tgz#d2c45c6dd4fbce621a66f136cbe328afd0410b34" - integrity sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA== - -workbox-background-sync@6.5.0: - version "6.5.0" - resolved "https://registry.yarnpkg.com/workbox-background-sync/-/workbox-background-sync-6.5.0.tgz#50ba6bf19c71d21be29bb15ba0f317df7cfa8f44" - integrity sha512-rrekt/gt6qOIZsisj6QZfmAFPAnocq1Z603zAjt+qHmeXY8DLPOklVtvrXSaHoHH3qIjUq3SQY5s2x240iTIKw== - dependencies: - idb "^6.1.4" - workbox-core "6.5.0" - -workbox-broadcast-update@6.5.0: - version "6.5.0" - resolved "https://registry.yarnpkg.com/workbox-broadcast-update/-/workbox-broadcast-update-6.5.0.tgz#0104b9ea41b40f8c5e03780226de66bec15141f2" - integrity sha512-JC97c7tYqoGWcCfbKO9KHG6lkU+WhXCnDB2j1oFWEiv53nUHy3yjPpzMmAGNLD9oV5lInO15n6V18HfwgkhISw== - dependencies: - workbox-core "6.5.0" - -workbox-build@6.5.0: - version "6.5.0" - resolved "https://registry.yarnpkg.com/workbox-build/-/workbox-build-6.5.0.tgz#fd3579de7a91c188e8d857a4b265fe7170197204" - integrity sha512-da0/1b6//P9+ts7ofcIKcMVPyN6suJvjJASXokF7DsqvUmgRBPcCVV4KCy8QWjgfcz7mzuTpkSbdVHcPFJ/p0A== - dependencies: - "@apideck/better-ajv-errors" "^0.3.1" - "@babel/core" "^7.11.1" - "@babel/preset-env" "^7.11.0" - "@babel/runtime" "^7.11.2" - "@rollup/plugin-babel" "^5.2.0" - "@rollup/plugin-node-resolve" "^11.2.1" - "@rollup/plugin-replace" "^2.4.1" - "@surma/rollup-plugin-off-main-thread" "^2.2.3" - ajv "^8.6.0" - common-tags "^1.8.0" - fast-json-stable-stringify "^2.1.0" - fs-extra "^9.0.1" - glob "^7.1.6" - lodash "^4.17.20" - pretty-bytes "^5.3.0" - rollup "^2.43.1" - rollup-plugin-terser "^7.0.0" - source-map "^0.8.0-beta.0" - stringify-object "^3.3.0" - strip-comments "^2.0.1" - tempy "^0.6.0" - upath "^1.2.0" - workbox-background-sync "6.5.0" - workbox-broadcast-update "6.5.0" - workbox-cacheable-response "6.5.0" - workbox-core "6.5.0" - workbox-expiration "6.5.0" - workbox-google-analytics "6.5.0" - workbox-navigation-preload "6.5.0" - workbox-precaching "6.5.0" - workbox-range-requests "6.5.0" - workbox-recipes "6.5.0" - workbox-routing "6.5.0" - workbox-strategies "6.5.0" - workbox-streams "6.5.0" - workbox-sw "6.5.0" - workbox-window "6.5.0" - -workbox-cacheable-response@6.5.0: - version "6.5.0" - resolved "https://registry.yarnpkg.com/workbox-cacheable-response/-/workbox-cacheable-response-6.5.0.tgz#cf91b2d4f4707295539596a480ab1c908f6cbfdd" - integrity sha512-sqAtWAiBwWvI8HG/2Do7BeKPhHuUczt22ORkAjkH9DfTq9LuWRFd6T4HAMqX5G8F1gM9XA2UPlxRrEeSpFIz/A== - dependencies: - workbox-core "6.5.0" - -workbox-core@6.5.0: - version "6.5.0" - resolved "https://registry.yarnpkg.com/workbox-core/-/workbox-core-6.5.0.tgz#076e03840ca568bd04284e9f9f30e86c8dd09f1c" - integrity sha512-5SPwNipUzYBhrneLVT02JFA0fw3LG82jFAN/G2NzxkIW10t4MVZuML2nU94bbkgjq25u0fkY8+4JXzMfHgxEWQ== - -workbox-expiration@6.5.0: - version "6.5.0" - resolved "https://registry.yarnpkg.com/workbox-expiration/-/workbox-expiration-6.5.0.tgz#3cf6a0c8b08b59efa235d26d443c8b7f173179cd" - integrity sha512-y3WRkKRy/gMuZZNkrLFahjY0QZtLoq+QfhTbVAsOGHVg1CCtnNbeFAnEidQs7UisI2BK76VqQPvM7hEOFyZ92A== - dependencies: - idb "^6.1.4" - workbox-core "6.5.0" - -workbox-google-analytics@6.5.0: - version "6.5.0" - resolved "https://registry.yarnpkg.com/workbox-google-analytics/-/workbox-google-analytics-6.5.0.tgz#86ee42bd1a72ec5aa41f32631ab7c8e5cf4c1602" - integrity sha512-CHHh55wMNCc/BV1URrzEM2Zjgf6g2CV6QpAAc1pBRqaLY5755PeQZbp3o8KbJEM7YsC9mIBeQVsOkSKkGS30bg== - dependencies: - workbox-background-sync "6.5.0" - workbox-core "6.5.0" - workbox-routing "6.5.0" - workbox-strategies "6.5.0" - -workbox-navigation-preload@6.5.0: - version "6.5.0" - resolved "https://registry.yarnpkg.com/workbox-navigation-preload/-/workbox-navigation-preload-6.5.0.tgz#3b73753a40e4d0cbae9520de232f2fc515f2c0f5" - integrity sha512-ktrRQzXJ0zFy0puOtCa49wE3BSBGUB8KRMot3tEieikCkSO0wMLmiCb9GwTVvNMJLl0THRlsdFoI93si04nTxA== - dependencies: - workbox-core "6.5.0" - -workbox-precaching@6.5.0: - version "6.5.0" - resolved "https://registry.yarnpkg.com/workbox-precaching/-/workbox-precaching-6.5.0.tgz#773d754b98f79cc13b646eaa7858e8b3ab740c37" - integrity sha512-IVLzgHx38T6LphJyEOltd7XAvpDi73p85uCT2ZtT1HHg9FAYC49a+5iHUVOnqye73fLW20eiAMFcnehGxz9RWg== - dependencies: - workbox-core "6.5.0" - workbox-routing "6.5.0" - workbox-strategies "6.5.0" - -workbox-range-requests@6.5.0: - version "6.5.0" - resolved "https://registry.yarnpkg.com/workbox-range-requests/-/workbox-range-requests-6.5.0.tgz#f36006f11aa86736ff815d200d0a5baf0e66c66e" - integrity sha512-+qTELdGZE5rOjuv+ifFrfRDN8Uvzpbm5Fal7qSUqB1V1DLCMxPwHCj6mWwQBRKBpW7G09kAwewH7zA3Asjkf/Q== - dependencies: - workbox-core "6.5.0" - -workbox-recipes@6.5.0: - version "6.5.0" - resolved "https://registry.yarnpkg.com/workbox-recipes/-/workbox-recipes-6.5.0.tgz#8400fbb515ac14e15043f13197a37e971e4ed04f" - integrity sha512-7hWZAIcXmvr31NwYSWaQIrnThCH/Dx9+eYv/YdkpUeWIXRiHRkYvP1FdiHItbLSjL4Y6K7cy2Y9y5lGCkgaE4w== - dependencies: - workbox-cacheable-response "6.5.0" - workbox-core "6.5.0" - workbox-expiration "6.5.0" - workbox-precaching "6.5.0" - workbox-routing "6.5.0" - workbox-strategies "6.5.0" - -workbox-routing@6.5.0: - version "6.5.0" - resolved "https://registry.yarnpkg.com/workbox-routing/-/workbox-routing-6.5.0.tgz#cbc085a74622d35d599f0b5352d2b46e9b2e7ba8" - integrity sha512-w1A9OVa/yYStu9ds0Dj+TC6zOAoskKlczf+wZI5mrM9nFCt/KOMQiFp1/41DMFPrrN/8KlZTS3Cel/Ttutw93Q== - dependencies: - workbox-core "6.5.0" - -workbox-strategies@6.5.0: - version "6.5.0" - resolved "https://registry.yarnpkg.com/workbox-strategies/-/workbox-strategies-6.5.0.tgz#40269f7bd8b3160b42f06fa027230370a8b6f981" - integrity sha512-Ngnwo+tfGw4uKSlTz3h1fYKb/lCV7SDI/dtTb8VaJzRl0N9XssloDGYERBmF6BN/DV/x3bnRsshfobnKI/3z0g== - dependencies: - workbox-core "6.5.0" - -workbox-streams@6.5.0: - version "6.5.0" - resolved "https://registry.yarnpkg.com/workbox-streams/-/workbox-streams-6.5.0.tgz#8c2fd0af9b8e1a25f865ff254c44f6554a248ce1" - integrity sha512-ZbeaZINkju4x45P9DFyRbOYInE+dyNAJIelflz4f9AOAdm+zZUJCooU4MdfsedVhHiTIA6pCD/3jCmW1XbvlbA== - dependencies: - workbox-core "6.5.0" - workbox-routing "6.5.0" - -workbox-sw@6.5.0: - version "6.5.0" - resolved "https://registry.yarnpkg.com/workbox-sw/-/workbox-sw-6.5.0.tgz#19b47d72f598fd515fe32d2551d67bdb104434cb" - integrity sha512-uPGJ9Yost4yabnCko/IuhouquoQKrWOEqLq7L/xVYtltWe4+J8Hw8iPCVtxvXQ26hffd7MaFWUAN83j2ZWbxRg== - -workbox-webpack-plugin@^6.4.1: - version "6.5.0" - resolved "https://registry.yarnpkg.com/workbox-webpack-plugin/-/workbox-webpack-plugin-6.5.0.tgz#13efad7ebbe672db6e1e6b7ebf58093b76bc0cb0" - integrity sha512-wy4uCBJELNfJVf2b4Tg3mjJQySq/aReWv4Q1RxQweJkY9ihq7DOGA3wLlXvoauek+MX/SuQfS3it+eXIfHKjvg== - dependencies: - fast-json-stable-stringify "^2.1.0" - pretty-bytes "^5.4.1" - upath "^1.2.0" - webpack-sources "^1.4.3" - workbox-build "6.5.0" - -workbox-window@6.5.0: - version "6.5.0" - resolved "https://registry.yarnpkg.com/workbox-window/-/workbox-window-6.5.0.tgz#7cc3bf4d5c7e7e0b4da579bee9e8df8bd9ba2718" - integrity sha512-DOrhiTnWup/CsNstO2uvfdKM4kdStgHd31xGGvBcoCE3Are3DRcy5s3zz3PedcAR1AKskQj3BXz0UhzQiOq8nA== - dependencies: - "@types/trusted-types" "^2.0.2" - workbox-core "6.5.0" - "wrap-ansi-cjs@npm:wrap-ansi@^7.0.0": version "7.0.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" @@ -15845,16 +11996,6 @@ wrappy@1: resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= -write-file-atomic@^3.0.0: - version "3.0.3" - resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-3.0.3.tgz#56bd5c5a5c70481cd19c571bd39ab965a5de56e8" - integrity sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q== - dependencies: - imurmurhash "^0.1.4" - is-typedarray "^1.0.0" - signal-exit "^3.0.2" - typedarray-to-buffer "^3.1.5" - write-file-atomic@^4.0.2: version "4.0.2" resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-4.0.2.tgz#a9df01ae5b77858a027fd2e80768ee433555fcfd" @@ -15863,27 +12004,7 @@ write-file-atomic@^4.0.2: imurmurhash "^0.1.4" signal-exit "^3.0.7" -ws@^7.4.6: - version "7.5.10" - resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.10.tgz#58b5c20dc281633f6c19113f39b349bd8bd558d9" - integrity sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ== - -ws@^8.4.2: - version "8.17.1" - resolved "https://registry.yarnpkg.com/ws/-/ws-8.17.1.tgz#9293da530bb548febc95371d90f9c878727d919b" - integrity sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ== - -xml-name-validator@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz#6ae73e06de4d8c6e47f9fb181f78d648ad457c6a" - integrity sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw== - -xmlchars@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/xmlchars/-/xmlchars-2.2.0.tgz#060fe1bcb7f9c76fe2a17db86a9bc3ab894210cb" - integrity sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw== - -xtend@^4.0.0, xtend@^4.0.2, xtend@~4.0.1: +xtend@^4.0.0, xtend@~4.0.1: version "4.0.2" resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== @@ -15918,7 +12039,7 @@ yaml@2.3.4, yaml@^2.2.2: resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.3.4.tgz#53fc1d514be80aabf386dc6001eb29bf3b7523b2" integrity sha512-8aAvwVUSHpfEqTQ4w/KMlf3HcRdt50E5ODIQJBw1fQ5RL34xabzxtUlzTXVqc4rkZsPbvrXKWnABCD7kWSmocA== -yaml@^1.10.0, yaml@^1.10.2, yaml@^1.7.2: +yaml@^1.10.0: version "1.10.2" resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b" integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg== From 52901c4046d153773463567ebf99ceee5c48d0dd Mon Sep 17 00:00:00 2001 From: Michael Weimann Date: Mon, 11 Nov 2024 13:25:49 +0100 Subject: [PATCH 09/15] Fix tests Signed-off-by: Michael Weimann --- e2e/tsconfig.json | 5 ++++- matrix-meetings-bot/package.json | 3 ++- matrix-meetings-bot/test/ArrayOps.test.ts | 1 - packages/calendar/src/model/calendarEntry.test.ts | 1 + .../calendarUtils/calculateCalendarEvents.test.ts | 1 + .../utils/calendarUtils/deleteCalendarEvent.test.ts | 1 + .../calendarUtils/extractCalendarChange.test.ts | 1 + .../src/utils/calendarUtils/generateRruleSet.test.ts | 1 + .../src/utils/calendarUtils/getCalendarEnd.test.ts | 1 + .../src/utils/calendarUtils/getCalendarEvent.test.ts | 7 ++++--- .../calendar/src/utils/calendarUtils/helpers.test.ts | 1 + .../utils/calendarUtils/isRecurringMeeting.test.ts | 1 + .../calendarUtils/normalizeCalendarEntry.test.ts | 1 + .../calendarUtils/overrideCalendarEntries.test.ts | 1 + packages/calendar/src/utils/dateTimeUtils.test.ts | 1 + packages/calendar/src/utils/helper.test.ts | 1 + yarn.lock | 12 ++++++++++-- 17 files changed, 32 insertions(+), 8 deletions(-) diff --git a/e2e/tsconfig.json b/e2e/tsconfig.json index 338433a5..edd25dad 100644 --- a/e2e/tsconfig.json +++ b/e2e/tsconfig.json @@ -1,5 +1,8 @@ // Package specific tsconfig that extends the root one. { "extends": "../tsconfig.json", - "include": ["src"] + "include": ["src"], + "compilerOptions": { + "noEmit": true + } } diff --git a/matrix-meetings-bot/package.json b/matrix-meetings-bot/package.json index d861a8df..1f2332e9 100644 --- a/matrix-meetings-bot/package.json +++ b/matrix-meetings-bot/package.json @@ -14,7 +14,7 @@ "docker:inspect": "docker inspect nordeck/matrix-meetings-bot", "prestart": "yarn build", "build": "nest build && yarn copyfiles && yarn copyImages", - "depcheck": "depcheck --ignores=\"typescript\"", + "depcheck": "depcheck --ignores=\"typescript\",\"@types/jest\"", "start": "PORT=3001 nest start", "start:dev": "PORT=3001 nest start --watch", "start:debug": "PORT=3001 nest start --debug --watch", @@ -64,6 +64,7 @@ }, "devDependencies": { "@nestjs/cli": "^10.1.14", + "@types/jest": "^29.5.14", "@types/lodash": "^4.17.12", "@types/luxon": "^3.2.0", "@types/mime-types": "^2.1.4", diff --git a/matrix-meetings-bot/test/ArrayOps.test.ts b/matrix-meetings-bot/test/ArrayOps.test.ts index 313070cd..a80791a2 100644 --- a/matrix-meetings-bot/test/ArrayOps.test.ts +++ b/matrix-meetings-bot/test/ArrayOps.test.ts @@ -14,7 +14,6 @@ * limitations under the License. */ -import { describe, expect, test } from 'vitest'; import { ArrayOps } from '../src/ArrayOps'; describe('ArrayOps suite', () => { diff --git a/packages/calendar/src/model/calendarEntry.test.ts b/packages/calendar/src/model/calendarEntry.test.ts index 7aae41de..56b28142 100644 --- a/packages/calendar/src/model/calendarEntry.test.ts +++ b/packages/calendar/src/model/calendarEntry.test.ts @@ -14,6 +14,7 @@ * limitations under the License. */ +import { describe, expect, it } from 'vitest'; import { CalendarEntry, calendarEntrySchema, diff --git a/packages/calendar/src/utils/calendarUtils/calculateCalendarEvents.test.ts b/packages/calendar/src/utils/calendarUtils/calculateCalendarEvents.test.ts index e1d2c803..44ab9227 100644 --- a/packages/calendar/src/utils/calendarUtils/calculateCalendarEvents.test.ts +++ b/packages/calendar/src/utils/calendarUtils/calculateCalendarEvents.test.ts @@ -14,6 +14,7 @@ * limitations under the License. */ +import { describe, expect, it } from 'vitest'; import { mockCalendar, mockCalendarEntry } from '../../testing'; import { calculateCalendarEvents } from './calculateCalendarEvents'; diff --git a/packages/calendar/src/utils/calendarUtils/deleteCalendarEvent.test.ts b/packages/calendar/src/utils/calendarUtils/deleteCalendarEvent.test.ts index 62ae7d67..29a53955 100644 --- a/packages/calendar/src/utils/calendarUtils/deleteCalendarEvent.test.ts +++ b/packages/calendar/src/utils/calendarUtils/deleteCalendarEvent.test.ts @@ -14,6 +14,7 @@ * limitations under the License. */ +import { describe, expect, it } from 'vitest'; import { mockCalendarEntry } from '../../testing'; import { deleteCalendarEvent } from './deleteCalendarEvent'; diff --git a/packages/calendar/src/utils/calendarUtils/extractCalendarChange.test.ts b/packages/calendar/src/utils/calendarUtils/extractCalendarChange.test.ts index 5185ff8f..ef48fdea 100644 --- a/packages/calendar/src/utils/calendarUtils/extractCalendarChange.test.ts +++ b/packages/calendar/src/utils/calendarUtils/extractCalendarChange.test.ts @@ -14,6 +14,7 @@ * limitations under the License. */ +import { describe, expect, it } from 'vitest'; import { mockCalendarEntry } from '../../testing'; import { extractCalendarChange } from './extractCalendarChange'; diff --git a/packages/calendar/src/utils/calendarUtils/generateRruleSet.test.ts b/packages/calendar/src/utils/calendarUtils/generateRruleSet.test.ts index ebe67edc..57feddd7 100644 --- a/packages/calendar/src/utils/calendarUtils/generateRruleSet.test.ts +++ b/packages/calendar/src/utils/calendarUtils/generateRruleSet.test.ts @@ -15,6 +15,7 @@ */ import { DateTime } from 'luxon'; +import { describe, expect, it } from 'vitest'; import { generateRruleSet } from './generateRruleSet'; describe('generateRruleSet', () => { diff --git a/packages/calendar/src/utils/calendarUtils/getCalendarEnd.test.ts b/packages/calendar/src/utils/calendarUtils/getCalendarEnd.test.ts index ad72a3ad..b55883d0 100644 --- a/packages/calendar/src/utils/calendarUtils/getCalendarEnd.test.ts +++ b/packages/calendar/src/utils/calendarUtils/getCalendarEnd.test.ts @@ -15,6 +15,7 @@ */ import { DateTime } from 'luxon'; +import { describe, expect, it } from 'vitest'; import { mockCalendar, mockCalendarEntry } from '../../testing'; import { getCalendarEnd } from './getCalendarEnd'; diff --git a/packages/calendar/src/utils/calendarUtils/getCalendarEvent.test.ts b/packages/calendar/src/utils/calendarUtils/getCalendarEvent.test.ts index b365c948..e91fd6c8 100644 --- a/packages/calendar/src/utils/calendarUtils/getCalendarEvent.test.ts +++ b/packages/calendar/src/utils/calendarUtils/getCalendarEvent.test.ts @@ -14,14 +14,15 @@ * limitations under the License. */ +import { beforeEach, describe, expect, it, vi } from 'vitest'; import { mockCalendar, mockCalendarEntry } from '../../testing'; import { getCalendarEvent } from './getCalendarEvent'; describe('getCalendarEvent', () => { beforeEach(() => { - jest - .spyOn(Date, 'now') - .mockImplementation(() => +new Date('2022-01-02T10:10:00.000Z')); + vi.spyOn(Date, 'now').mockImplementation( + () => +new Date('2022-01-02T10:10:00.000Z'), + ); }); it('should return entry for a single event without uid', () => { diff --git a/packages/calendar/src/utils/calendarUtils/helpers.test.ts b/packages/calendar/src/utils/calendarUtils/helpers.test.ts index 2de98dcc..c2f5cf33 100644 --- a/packages/calendar/src/utils/calendarUtils/helpers.test.ts +++ b/packages/calendar/src/utils/calendarUtils/helpers.test.ts @@ -14,6 +14,7 @@ * limitations under the License. */ +import { describe, expect, it } from 'vitest'; import { mockCalendarEntry } from '../../testing'; import { createTimeFilter, diff --git a/packages/calendar/src/utils/calendarUtils/isRecurringMeeting.test.ts b/packages/calendar/src/utils/calendarUtils/isRecurringMeeting.test.ts index 9f6084e0..80c6a8d2 100644 --- a/packages/calendar/src/utils/calendarUtils/isRecurringMeeting.test.ts +++ b/packages/calendar/src/utils/calendarUtils/isRecurringMeeting.test.ts @@ -14,6 +14,7 @@ * limitations under the License. */ +import { describe, expect, it } from 'vitest'; import { mockCalendar, mockCalendarEntry } from '../../testing'; import { isRecurringMeeting } from './isRecurringMeeting'; diff --git a/packages/calendar/src/utils/calendarUtils/normalizeCalendarEntry.test.ts b/packages/calendar/src/utils/calendarUtils/normalizeCalendarEntry.test.ts index de54aa98..89443fbf 100644 --- a/packages/calendar/src/utils/calendarUtils/normalizeCalendarEntry.test.ts +++ b/packages/calendar/src/utils/calendarUtils/normalizeCalendarEntry.test.ts @@ -14,6 +14,7 @@ * limitations under the License. */ +import { describe, expect, it } from 'vitest'; import { normalizeCalendarEntry } from './normalizeCalendarEntry'; describe('normalizeCalendarEntry', () => { diff --git a/packages/calendar/src/utils/calendarUtils/overrideCalendarEntries.test.ts b/packages/calendar/src/utils/calendarUtils/overrideCalendarEntries.test.ts index 3d5ad009..e6699810 100644 --- a/packages/calendar/src/utils/calendarUtils/overrideCalendarEntries.test.ts +++ b/packages/calendar/src/utils/calendarUtils/overrideCalendarEntries.test.ts @@ -14,6 +14,7 @@ * limitations under the License. */ +import { describe, expect, it } from 'vitest'; import { mockCalendarEntry } from '../../testing'; import { overrideCalendarEntries } from './overrideCalendarEntries'; diff --git a/packages/calendar/src/utils/dateTimeUtils.test.ts b/packages/calendar/src/utils/dateTimeUtils.test.ts index 68ec4a3a..b6d5d1b6 100644 --- a/packages/calendar/src/utils/dateTimeUtils.test.ts +++ b/packages/calendar/src/utils/dateTimeUtils.test.ts @@ -15,6 +15,7 @@ */ import { DateTime } from 'luxon'; +import { describe, expect, it } from 'vitest'; import { mockDateTimeFormatTimeZone } from '../testing'; import { formatICalDate, parseICalDate, toISOString } from './dateTimeUtils'; diff --git a/packages/calendar/src/utils/helper.test.ts b/packages/calendar/src/utils/helper.test.ts index ce1f6d6f..04000246 100644 --- a/packages/calendar/src/utils/helper.test.ts +++ b/packages/calendar/src/utils/helper.test.ts @@ -14,6 +14,7 @@ * limitations under the License. */ +import { describe, expect, it } from 'vitest'; import { isWeekdays } from './helpers'; describe('isWeekdays', () => { diff --git a/yarn.lock b/yarn.lock index bdeadb85..0c4eab46 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3224,6 +3224,14 @@ dependencies: "@types/istanbul-lib-report" "*" +"@types/jest@^29.5.14": + version "29.5.14" + resolved "https://registry.yarnpkg.com/@types/jest/-/jest-29.5.14.tgz#2b910912fa1d6856cadcd0c1f95af7df1d6049e5" + integrity sha512-ZN+4sdnLUbo8EVvVc2ao0GFW6oVrQRPn4K2lglySj7APvSrgzxHiNNK99us4WDMi57xxA2yggblIAMNhXOotLQ== + dependencies: + expect "^29.0.0" + pretty-format "^29.0.0" + "@types/js-cookie@^2.2.6": version "2.2.7" resolved "https://registry.yarnpkg.com/@types/js-cookie/-/js-cookie-2.2.7.tgz#226a9e31680835a6188e887f3988e60c04d3f6a3" @@ -6201,7 +6209,7 @@ expect-type@^1.1.0: resolved "https://registry.yarnpkg.com/expect-type/-/expect-type-1.1.0.tgz#a146e414250d13dfc49eafcfd1344a4060fa4c75" integrity sha512-bFi65yM+xZgk+u/KRIpekdSYkTB5W1pEf0Lt8Q8Msh7b+eQ7LXVtIB1Bkm4fvclDEL1b2CZkMhv2mOeF8tMdkA== -expect@^29.7.0: +expect@^29.0.0, expect@^29.7.0: version "29.7.0" resolved "https://registry.yarnpkg.com/expect/-/expect-29.7.0.tgz#578874590dcb3214514084c08115d8aee61e11bc" integrity sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw== @@ -9582,7 +9590,7 @@ pretty-format@^27.0.2: ansi-styles "^5.0.0" react-is "^17.0.1" -pretty-format@^29.7.0: +pretty-format@^29.0.0, pretty-format@^29.7.0: version "29.7.0" resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-29.7.0.tgz#ca42c758310f365bfa71a0bda0a807160b776812" integrity sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ== From 17c6f740cd3e7c3d3badc956d0fdc3ca552e378b Mon Sep 17 00:00:00 2001 From: Michael Weimann Date: Mon, 11 Nov 2024 13:45:01 +0100 Subject: [PATCH 10/15] Fix Bot Tests Signed-off-by: Michael Weimann --- matrix-meetings-bot/package.json | 39 ++- matrix-meetings-bot/setupJest.js | 2 + .../test/RoomMessageService.test.ts | 2 +- matrix-meetings-widget/package.json | 7 +- packages/calendar/package.json | 2 +- yarn.lock | 310 +++++++++++++++++- 6 files changed, 338 insertions(+), 24 deletions(-) create mode 100644 matrix-meetings-bot/setupJest.js diff --git a/matrix-meetings-bot/package.json b/matrix-meetings-bot/package.json index 1f2332e9..62b86d28 100644 --- a/matrix-meetings-bot/package.json +++ b/matrix-meetings-bot/package.json @@ -44,8 +44,8 @@ "class-validator": "^0.14.1", "express": "^4.20.0", "html-entities": "^2.5.2", - "i18next": "^23.7.16", - "i18next-fs-backend": "^2.3.1", + "i18next": "^23.16.5", + "i18next-fs-backend": "^2.3.2", "i18next-http-middleware": "^3.6.0", "joi": "^17.13.3", "lodash": "^4.17.21", @@ -78,9 +78,44 @@ "i18next-parser": "^8.13.0", "jest": "^29.7.0", "jest-fetch-mock": "^3.0.3", + "ts-jest": "^29.2.5", "ts-mockito": "^2.6.1", "typescript": "^5.4.5" }, + "jest": { + "testEnvironment": "node", + "automock": false, + "resetMocks": true, + "setupFiles": [ + "./setupJest.js" + ], + "preset": "ts-jest", + "verbose": true, + "transform": { + "^.+\\.(ts|tsx)$": "ts-jest" + }, + "moduleDirectories": [ + "lib", + "node_modules" + ], + "testRegex": "(/__tests__/.*|\\.(test|spec))\\.(ts|tsx|js)$", + "moduleFileExtensions": [ + "ts", + "tsx", + "js" + ], + "setupFilesAfterEnv": [ + "/setupTests.ts" + ], + "roots": [ + "/src", + "/test" + ], + "moduleNameMapper": { + "@nordeck/matrix-meetings-calendar/src/testing/testUtils": "/../packages/calendar/src/testing/testUtils.ts", + "matrix-meetings-(.*)": "/../packages/$1/src/index.ts" + } + }, "files": [ "test/*", "lib/*", diff --git a/matrix-meetings-bot/setupJest.js b/matrix-meetings-bot/setupJest.js new file mode 100644 index 00000000..b9ee9938 --- /dev/null +++ b/matrix-meetings-bot/setupJest.js @@ -0,0 +1,2 @@ +require('jest-fetch-mock').enableMocks(); +fetchMock.dontMock(); diff --git a/matrix-meetings-bot/test/RoomMessageService.test.ts b/matrix-meetings-bot/test/RoomMessageService.test.ts index aa0b9b54..8f572089 100644 --- a/matrix-meetings-bot/test/RoomMessageService.test.ts +++ b/matrix-meetings-bot/test/RoomMessageService.test.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { mockCalendarEntry } from '@nordeck/matrix-meetings-calendar'; +import { mockCalendarEntry } from '@nordeck/matrix-meetings-calendar/src/testing/testUtils'; import { MatrixClient } from 'matrix-bot-sdk'; import { anyString, diff --git a/matrix-meetings-widget/package.json b/matrix-meetings-widget/package.json index 0cd0ac59..7afe3715 100644 --- a/matrix-meetings-widget/package.json +++ b/matrix-meetings-widget/package.json @@ -22,10 +22,10 @@ "@mui/x-date-pickers": "^6.18.6", "@nordeck/matrix-meetings-calendar": "1.0.0", "@reduxjs/toolkit": "^1.9.7", - "i18next": "^23.7.16", + "i18next": "^23.16.5", "i18next-browser-languagedetector": "^8.0.0", "i18next-chained-backend": "^4.6.2", - "i18next-http-backend": "^2.5.2", + "i18next-http-backend": "^2.6.2", "joi": "^17.13.3", "lodash-es": "^4.17.21", "luxon": "^3.3.0", @@ -33,7 +33,7 @@ "mustache": "^4.2.0", "react": "^18.3.1", "react-dom": "^18.3.1", - "react-i18next": "^14.0.0", + "react-i18next": "^15.1.1", "react-redux": "^8.1.3", "react-router-dom": "^6.23.1", "react-use": "^17.5.1", @@ -64,6 +64,7 @@ "dotenv-cli": "^7.4.2", "eslint": "^8.57.0", "i18next-parser": "^8.13.0", + "jsdom": "^25.0.1", "msw": "^1.3.2", "typescript": "^5.4.5", "vite": "^5.4.10", diff --git a/packages/calendar/package.json b/packages/calendar/package.json index 40dd9aa9..f1ad3e68 100644 --- a/packages/calendar/package.json +++ b/packages/calendar/package.json @@ -21,7 +21,7 @@ "generate-disclaimer": "echo \"Nothing to generate\"" }, "dependencies": { - "i18next": "^23.7.16", + "i18next": "^23.16.5", "joi": "^17.13.3", "lodash": "^4.17.21", "luxon": "^3.3.0", diff --git a/yarn.lock b/yarn.lock index 0c4eab46..fb6a6715 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3936,6 +3936,13 @@ agent-base@6: dependencies: debug "4" +agent-base@^7.0.2, agent-base@^7.1.0: + version "7.1.1" + resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-7.1.1.tgz#bdbded7dfb096b751a2a087eeeb9664725b2e317" + integrity sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA== + dependencies: + debug "^4.3.4" + ajv-formats@2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/ajv-formats/-/ajv-formats-2.1.1.tgz#6e669400659eb74973bbf2e33327180a0996b520" @@ -4193,6 +4200,11 @@ async-lock@^1.4.0, async-lock@^1.4.1: resolved "https://registry.yarnpkg.com/async-lock/-/async-lock-1.4.1.tgz#56b8718915a9b68b10fce2f2a9a3dddf765ef53f" integrity sha512-Az2ZTpuytrtqENulXwO3GGv1Bztugx6TT37NIo7imr/Qo0gsYiGtSdBa2B6fsXhTpVZDNfu1Qn3pk531e3q+nQ== +async@^3.2.3: + version "3.2.6" + resolved "https://registry.yarnpkg.com/async/-/async-3.2.6.tgz#1b0728e14929d51b85b449b7f06e27c1145e38ce" + integrity sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA== + async@^3.2.4: version "3.2.5" resolved "https://registry.yarnpkg.com/async/-/async-3.2.5.tgz#ebd52a8fdaf7a2289a24df399f8d8485c8a46b66" @@ -4573,6 +4585,13 @@ browserslist@^4.24.0: node-releases "^2.0.18" update-browserslist-db "^1.1.1" +bs-logger@^0.2.6: + version "0.2.6" + resolved "https://registry.yarnpkg.com/bs-logger/-/bs-logger-0.2.6.tgz#eb7d365307a72cf974cc6cda76b68354ad336bd8" + integrity sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog== + dependencies: + fast-json-stable-stringify "2.x" + bser@2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/bser/-/bser-2.1.1.tgz#e6787da20ece9d07998533cfd9de6f5c38f4bc05" @@ -4699,7 +4718,7 @@ chai@^5.1.2: loupe "^3.1.0" pathval "^2.0.0" -chalk@4, chalk@4.1.2, chalk@^4.0.0, chalk@^4.1.0, chalk@^4.1.1, chalk@^4.1.2: +chalk@4, chalk@4.1.2, chalk@^4.0.0, chalk@^4.0.2, chalk@^4.1.0, chalk@^4.1.1, chalk@^4.1.2: version "4.1.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== @@ -4961,7 +4980,7 @@ colors@1.4.0: resolved "https://registry.yarnpkg.com/colors/-/colors-1.4.0.tgz#c50491479d4c1bdaed2c9ced32cf7c7dc2360f78" integrity sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA== -combined-stream@^1.0.6, combined-stream@~1.0.6: +combined-stream@^1.0.6, combined-stream@^1.0.8, combined-stream@~1.0.6: version "1.0.8" resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== @@ -5236,6 +5255,13 @@ css.escape@^1.5.1: resolved "https://registry.yarnpkg.com/css.escape/-/css.escape-1.5.1.tgz#42e27d4fa04ae32f931a4b4d4191fa9cddee97cb" integrity sha512-YUifsXXuknHlUsmlgyY0PKzgPOr7/FjCePfHNt0jxm83wHZi44VDMQ7/fGNkjY3/jV1MC+1CmZbaHzugyeRtpg== +cssstyle@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/cssstyle/-/cssstyle-4.1.0.tgz#161faee382af1bafadb6d3867a92a19bcb4aea70" + integrity sha512-h66W1URKpBS5YMI/V8PyXvTMFT8SupJ1IzoIV8IeBC/ji8WVmrO8dGlTi+2dh6whmdk6BiKJLD/ZBkhWbcg6nA== + dependencies: + rrweb-cssom "^0.7.1" + csstype@^3.0.2, csstype@^3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.2.tgz#1d4bf9d572f11c14031f0436e1c10bc1f571f50b" @@ -5283,6 +5309,14 @@ dashdash@^1.12.0: dependencies: assert-plus "^1.0.0" +data-urls@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/data-urls/-/data-urls-5.0.0.tgz#2f76906bce1824429ffecb6920f45a0b30f00dde" + integrity sha512-ZYP5VBHshaDAiVZxjbRVcFJpc+4xGgT0bK3vzy1HLN8jTO975HEbuYzZJcHoQEY5K1a0z8YayJkyVETa08eNTg== + dependencies: + whatwg-mimetype "^4.0.0" + whatwg-url "^14.0.0" + de-indent@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/de-indent/-/de-indent-1.0.2.tgz#b2038e846dc33baa5796128d0804b455b8c1e21d" @@ -5329,6 +5363,11 @@ decamelize@^1.1.0, decamelize@^1.2.0: resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" integrity sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA== +decimal.js@^10.4.3: + version "10.4.3" + resolved "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.4.3.tgz#1044092884d245d1b7f65725fa4ad4c6f781cc23" + integrity sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA== + dedent@^1.0.0: version "1.5.3" resolved "https://registry.yarnpkg.com/dedent/-/dedent-1.5.3.tgz#99aee19eb9bae55a67327717b6e848d0bf777e5a" @@ -5600,6 +5639,13 @@ ee-first@1.1.1: resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow== +ejs@^3.1.10: + version "3.1.10" + resolved "https://registry.yarnpkg.com/ejs/-/ejs-3.1.10.tgz#69ab8358b14e896f80cc39e62087b88500c3ac3b" + integrity sha512-UeJmFfOrAQS8OJWPZ4qtgHyWExa088/MtK5UEyoJGFH67cDEXkZSviOiKRCZ4Xij0zxI3JECgYs3oKx+AizQBA== + dependencies: + jake "^10.8.5" + electron-to-chromium@^1.4.477: version "1.4.498" resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.498.tgz#cef35341123f62a35ba7084e439c911d25e0d81b" @@ -5672,6 +5718,11 @@ entities@^4.2.0, entities@^4.4.0: resolved "https://registry.yarnpkg.com/entities/-/entities-4.4.0.tgz#97bdaba170339446495e653cfd2db78962900174" integrity sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA== +entities@^4.5.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/entities/-/entities-4.5.0.tgz#5d268ea5e7113ec74c4d033b79ea5a35a488fb48" + integrity sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw== + eol@^0.9.1: version "0.9.1" resolved "https://registry.yarnpkg.com/eol/-/eol-0.9.1.tgz#f701912f504074be35c6117a5c4ade49cd547acd" @@ -6307,7 +6358,7 @@ fast-glob@^3.2.9: merge2 "^1.3.0" micromatch "^4.0.4" -fast-json-stable-stringify@^2.0.0, fast-json-stable-stringify@^2.1.0: +fast-json-stable-stringify@2.x, fast-json-stable-stringify@^2.0.0, fast-json-stable-stringify@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== @@ -6375,6 +6426,13 @@ file-entry-cache@^6.0.1: dependencies: flat-cache "^3.0.4" +filelist@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/filelist/-/filelist-1.0.4.tgz#f78978a1e944775ff9e62e744424f215e58352b5" + integrity sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q== + dependencies: + minimatch "^5.0.1" + fill-range@^7.1.1: version "7.1.1" resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.1.1.tgz#44265d3cac07e3ea7dc247516380643754a05292" @@ -6497,6 +6555,15 @@ fork-ts-checker-webpack-plugin@8.0.0: semver "^7.3.5" tapable "^2.2.1" +form-data@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.1.tgz#ba1076daaaa5bfd7e99c1a6cb02aa0a5cff90d48" + integrity sha512-tzN8e4TX8+kkxGPK8D5u0FNmjPUjw3lwC9lSLxxoB/+GtsJG91CO8bSWy73APlgAZzZbXEYZJuxjkHH2w+Ezhw== + dependencies: + asynckit "^0.4.0" + combined-stream "^1.0.8" + mime-types "^2.1.12" + form-data@~2.3.2: version "2.3.3" resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.3.tgz#dcce52c05f644f298c6a7ab936bd724ceffbf3a6" @@ -6968,6 +7035,13 @@ hosted-git-info@^2.1.4: resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9" integrity sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw== +html-encoding-sniffer@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-4.0.0.tgz#696df529a7cfd82446369dc5193e590a3735b448" + integrity sha512-Y22oTqIU4uuPgEemfz7NDJz6OeKf12Lsu+QC+s3BVpda64lTiMYCyGwg5ki4vFxkMwQdeZDl2adZoqUgdFuTgQ== + dependencies: + whatwg-encoding "^3.1.1" + html-entities@^2.5.2: version "2.5.2" resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-2.5.2.tgz#201a3cf95d3a15be7099521620d19dfb4f65359f" @@ -7022,6 +7096,14 @@ http-errors@2.0.0: statuses "2.0.1" toidentifier "1.0.1" +http-proxy-agent@^7.0.2: + version "7.0.2" + resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz#9a8b1f246866c028509486585f62b8f2c18c270e" + integrity sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig== + dependencies: + agent-base "^7.1.0" + debug "^4.3.4" + http-signature@~1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1" @@ -7039,6 +7121,14 @@ https-proxy-agent@^5.0.1: agent-base "6" debug "4" +https-proxy-agent@^7.0.5: + version "7.0.5" + resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-7.0.5.tgz#9e8b5013873299e11fab6fd548405da2d6c602b2" + integrity sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw== + dependencies: + agent-base "^7.0.2" + debug "4" + human-id@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/human-id/-/human-id-1.0.2.tgz#e654d4b2b0d8b07e45da9f6020d8af17ec0a5df3" @@ -7083,15 +7173,15 @@ i18next-chained-backend@^4.6.2: dependencies: "@babel/runtime" "^7.23.2" -i18next-fs-backend@^2.3.1: - version "2.3.1" - resolved "https://registry.yarnpkg.com/i18next-fs-backend/-/i18next-fs-backend-2.3.1.tgz#0c7d2459ff4a039e2b3228131809fbc0e74ff1a8" - integrity sha512-tvfXskmG/9o+TJ5Fxu54sSO5OkY6d+uMn+K6JiUGLJrwxAVfer+8V3nU8jq3ts9Pe5lXJv4b1N7foIjJ8Iy2Gg== +i18next-fs-backend@^2.3.2: + version "2.3.2" + resolved "https://registry.yarnpkg.com/i18next-fs-backend/-/i18next-fs-backend-2.3.2.tgz#580b91c9a306b452112e0a1ad3b07e9fd266e567" + integrity sha512-LIwUlkqDZnUI8lnUxBnEj8K/FrHQTT/Sc+1rvDm9E8YvvY5YxzoEAASNx+W5M9DfD5s77lI5vSAFWeTp26B/3Q== -i18next-http-backend@^2.5.2: - version "2.5.2" - resolved "https://registry.yarnpkg.com/i18next-http-backend/-/i18next-http-backend-2.5.2.tgz#3d846cc239987fe7700d1cf0f17975807bfd25d3" - integrity sha512-+K8HbDfrvc1/2X8jpb7RLhI9ZxBDpx3xogYkQwGKlWAUXLSEGXzgdt3EcUjLlBCdMwdQY+K+EUF6oh8oB6rwHw== +i18next-http-backend@^2.6.2: + version "2.6.2" + resolved "https://registry.yarnpkg.com/i18next-http-backend/-/i18next-http-backend-2.6.2.tgz#b25516446ae6f251ce8231e70e6ffbca833d46a5" + integrity sha512-Hp/kd8/VuoxIHmxsknJXjkTYYHzivAyAF15pzliKzk2TiXC25rZCEerb1pUFoxz4IVrG3fCvQSY51/Lu4ECV4A== dependencies: cross-fetch "4.0.0" @@ -7131,14 +7221,14 @@ i18next-resources-to-backend@^1.2.1: dependencies: "@babel/runtime" "^7.23.2" -i18next@^23.16.0: +i18next@^23.16.0, i18next@^23.16.5: version "23.16.5" resolved "https://registry.yarnpkg.com/i18next/-/i18next-23.16.5.tgz#53d48ae9f985fd73fc1fcb96e6c7d90ababf0831" integrity sha512-KTlhE3EP9x6pPTAW7dy0WKIhoCpfOGhRQlO+jttQLgzVaoOjWwBWramu7Pp0i+8wDNduuzXfe3kkVbzrKyrbTA== dependencies: "@babel/runtime" "^7.23.2" -i18next@^23.5.1, i18next@^23.7.16: +i18next@^23.5.1: version "23.7.16" resolved "https://registry.yarnpkg.com/i18next/-/i18next-23.7.16.tgz#7026d18b7a3ac9e2ecfeb78da5e4da5ca33312ef" integrity sha512-SrqFkMn9W6Wb43ZJ9qrO6U2U4S80RsFMA7VYFSqp7oc7RllQOYDCdRfsse6A7Cq/V8MnpxKvJCYgM8++27n4Fw== @@ -7152,7 +7242,7 @@ iconv-lite@0.4.24, iconv-lite@^0.4.24: dependencies: safer-buffer ">= 2.1.2 < 3" -iconv-lite@^0.6.3: +iconv-lite@0.6.3, iconv-lite@^0.6.3: version "0.6.3" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.6.3.tgz#a52f80bf38da1952eb5c681790719871a1a72501" integrity sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw== @@ -7446,6 +7536,11 @@ is-plain-object@^5.0.0: resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-5.0.0.tgz#4427f50ab3429e9025ea7d52e9043a9ef4159344" integrity sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q== +is-potential-custom-element-name@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz#171ed6f19e3ac554394edf78caa05784a45bebb5" + integrity sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ== + is-promise@^2.1.0: version "2.2.2" resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.2.2.tgz#39ab959ccbf9a774cf079f7b40c7a26f763135f1" @@ -7672,6 +7767,16 @@ jackspeak@^3.1.2: optionalDependencies: "@pkgjs/parseargs" "^0.11.0" +jake@^10.8.5: + version "10.9.2" + resolved "https://registry.yarnpkg.com/jake/-/jake-10.9.2.tgz#6ae487e6a69afec3a5e167628996b59f35ae2b7f" + integrity sha512-2P4SQ0HrLQ+fw6llpLnOaGAvN2Zu6778SJMrCUwns4fOoG9ayrTiZk3VV8sCPkVZF8ab0zksVpS8FDY5pRCNBA== + dependencies: + async "^3.2.3" + chalk "^4.0.2" + filelist "^1.0.4" + minimatch "^3.1.2" + jest-changed-files@^29.7.0: version "29.7.0" resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-29.7.0.tgz#1c06d07e77c78e1585d020424dedc10d6e17ac3a" @@ -7980,7 +8085,7 @@ jest-snapshot@^29.7.0: pretty-format "^29.7.0" semver "^7.5.3" -jest-util@^29.7.0: +jest-util@^29.0.0, jest-util@^29.7.0: version "29.7.0" resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-29.7.0.tgz#23c2b62bfb22be82b44de98055802ff3710fc0bc" integrity sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA== @@ -8093,6 +8198,33 @@ jsbn@~0.1.0: resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" integrity sha1-peZUwuWi3rXyAdls77yoDA7y9RM= +jsdom@^25.0.1: + version "25.0.1" + resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-25.0.1.tgz#536ec685c288fc8a5773a65f82d8b44badcc73ef" + integrity sha512-8i7LzZj7BF8uplX+ZyOlIz86V6TAsSs+np6m1kpW9u0JWi4z/1t+FzcK1aek+ybTnAC4KhBL4uXCNT0wcUIeCw== + dependencies: + cssstyle "^4.1.0" + data-urls "^5.0.0" + decimal.js "^10.4.3" + form-data "^4.0.0" + html-encoding-sniffer "^4.0.0" + http-proxy-agent "^7.0.2" + https-proxy-agent "^7.0.5" + is-potential-custom-element-name "^1.0.1" + nwsapi "^2.2.12" + parse5 "^7.1.2" + rrweb-cssom "^0.7.1" + saxes "^6.0.0" + symbol-tree "^3.2.4" + tough-cookie "^5.0.0" + w3c-xmlserializer "^5.0.0" + webidl-conversions "^7.0.0" + whatwg-encoding "^3.1.1" + whatwg-mimetype "^4.0.0" + whatwg-url "^14.0.0" + ws "^8.18.0" + xml-name-validator "^5.0.0" + jsesc@^2.5.1: version "2.5.2" resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" @@ -8361,6 +8493,11 @@ lodash.isplainobject@^4.0.6: resolved "https://registry.yarnpkg.com/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz#7c526a52d89b45c45cc690b88163be0497f550cb" integrity sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA== +lodash.memoize@^4.1.2: + version "4.1.2" + resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" + integrity sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag== + lodash.merge@^4.6.2: version "4.6.2" resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" @@ -8526,6 +8663,11 @@ make-dir@^4.0.0: dependencies: semver "^7.5.3" +make-error@^1.3.6: + version "1.3.6" + resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.6.tgz#2eb2e37ea9b67c4891f684a1394799af484cf7a2" + integrity sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw== + makeerror@1.0.12: version "1.0.12" resolved "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.12.tgz#3e5dd2079a82e812e983cc6610c4a2cb0eaa801a" @@ -8694,6 +8836,13 @@ minimatch@^3.0.2, minimatch@^3.0.3, minimatch@^3.0.4, minimatch@^3.0.5, minimatc dependencies: brace-expansion "^1.1.7" +minimatch@^5.0.1: + version "5.1.6" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.1.6.tgz#1cfcb8cf5522ea69952cd2af95ae09477f122a96" + integrity sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g== + dependencies: + brace-expansion "^2.0.1" + minimatch@^5.1.0: version "5.1.0" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.1.0.tgz#1717b464f4971b144f6aabe8f2d0b8e4511e09c7" @@ -9017,6 +9166,11 @@ nth-check@^2.0.1: dependencies: boolbase "^1.0.0" +nwsapi@^2.2.12: + version "2.2.13" + resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.13.tgz#e56b4e98960e7a040e5474536587e599c4ff4655" + integrity sha512-cTGB9ptp9dY9A5VbMSe7fQBcl/tt22Vcqdq8+eN93rblOuE0aCFu4aZ2vMwct/2t+lFnosm8RkQW1I0Omb1UtQ== + oauth-sign@~0.9.0: version "0.9.0" resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455" @@ -9301,6 +9455,13 @@ parse5@^7.0.0: dependencies: entities "^4.4.0" +parse5@^7.1.2: + version "7.2.1" + resolved "https://registry.yarnpkg.com/parse5/-/parse5-7.2.1.tgz#8928f55915e6125f430cc44309765bf17556a33a" + integrity sha512-BuBYQYlv1ckiPdQi/ohiivi9Sagc9JG+Ozs0r7b/0iK3sKmrb0b9FdWdBbOdx6hBCM/F9Ir82ofnBhtZOjCRPQ== + dependencies: + entities "^4.5.0" + parseley@^0.12.0: version "0.12.1" resolved "https://registry.yarnpkg.com/parseley/-/parseley-0.12.1.tgz#4afd561d50215ebe259e3e7a853e62f600683aef" @@ -9688,6 +9849,11 @@ punycode@^2.1.0, punycode@^2.1.1: resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== +punycode@^2.3.1: + version "2.3.1" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.1.tgz#027422e2faec0b25e1549c3e1bd8309b9133b6e5" + integrity sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg== + pure-rand@^6.0.0: version "6.1.0" resolved "https://registry.yarnpkg.com/pure-rand/-/pure-rand-6.1.0.tgz#d173cf23258231976ccbdb05247c9787957604f2" @@ -9771,7 +9937,7 @@ react-error-boundary@^3.1.0, react-error-boundary@^3.1.4: dependencies: "@babel/runtime" "^7.12.5" -react-i18next@*, react-i18next@^14.0.0: +react-i18next@*: version "14.0.0" resolved "https://registry.yarnpkg.com/react-i18next/-/react-i18next-14.0.0.tgz#eb39d2245fd1024237828c955f770e409a1ccb12" integrity sha512-OCrS8rHNAmnr8ggGRDxjakzihrMW7HCbsplduTm3EuuQ6fyvWGT41ksZpqbduYoqJurBmEsEVZ1pILSUWkHZng== @@ -9779,7 +9945,7 @@ react-i18next@*, react-i18next@^14.0.0: "@babel/runtime" "^7.22.5" html-parse-stringify "^3.0.1" -react-i18next@^15.0.3: +react-i18next@^15.0.3, react-i18next@^15.1.1: version "15.1.1" resolved "https://registry.yarnpkg.com/react-i18next/-/react-i18next-15.1.1.tgz#30bc76b39ded6ee37f1457677e46e6d6f11d9f64" integrity sha512-R/Vg9wIli2P3FfeI8o1eNJUJue5LWpFsQePCHdQDmX0Co3zkr6kdT8gAseb/yGeWbNz1Txc4bKDQuZYsC0kQfw== @@ -10309,6 +10475,11 @@ rrule@^2.8.1: dependencies: tslib "^2.4.0" +rrweb-cssom@^0.7.1: + version "0.7.1" + resolved "https://registry.yarnpkg.com/rrweb-cssom/-/rrweb-cssom-0.7.1.tgz#c73451a484b86dd7cfb1e0b2898df4b703183e4b" + integrity sha512-TrEMa7JGdVm0UThDJSx7ddw5nVm3UJS9o9CCIZ72B1vSyEZoziDqBYP3XIoi/12lKrJR8rE3jeFHMok2F/Mnsg== + rsvp@^4.8.2: version "4.8.5" resolved "https://registry.yarnpkg.com/rsvp/-/rsvp-4.8.5.tgz#c8f155311d167f68f21e168df71ec5b083113734" @@ -10377,6 +10548,13 @@ sanitize-html@^2.11.0: parse-srcset "^1.0.2" postcss "^8.3.11" +saxes@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/saxes/-/saxes-6.0.0.tgz#fe5b4a4768df4f14a201b1ba6a65c1f3d9988cc5" + integrity sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA== + dependencies: + xmlchars "^2.2.0" + scheduler@^0.23.2: version "0.23.2" resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.23.2.tgz#414ba64a3b282892e944cf2108ecc078d115cdc3" @@ -10427,6 +10605,11 @@ semver@^7.3.5, semver@^7.3.7, semver@^7.5.0, semver@^7.5.3, semver@^7.5.4: dependencies: lru-cache "^6.0.0" +semver@^7.6.3: + version "7.6.3" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.3.tgz#980f7b5550bc175fb4dc09403085627f9eb33143" + integrity sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A== + send@0.19.0: version "0.19.0" resolved "https://registry.yarnpkg.com/send/-/send-0.19.0.tgz#bbc5a388c8ea6c048967049dbeac0e4a3f09d7f8" @@ -11073,6 +11256,11 @@ symbol-observable@4.0.0: resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-4.0.0.tgz#5b425f192279e87f2f9b937ac8540d1984b39205" integrity sha512-b19dMThMV4HVFynSAM1++gBHAbk2Tc/osgLIBZMKsyqh34jb2e8Os7T6ZW/Bt3pJFdBTd2JwAnAAEQV7rSNvcQ== +symbol-tree@^3.2.4: + version "3.2.4" + resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.4.tgz#430637d248ba77e078883951fb9aa0eed7c63fa2" + integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw== + symlink-or-copy@^1.1.8, symlink-or-copy@^1.2.0, symlink-or-copy@^1.3.1: version "1.3.1" resolved "https://registry.yarnpkg.com/symlink-or-copy/-/symlink-or-copy-1.3.1.tgz#9506dd64d8e98fa21dcbf4018d1eab23e77f71fe" @@ -11264,6 +11452,18 @@ tinyspy@^3.0.2: resolved "https://registry.yarnpkg.com/tinyspy/-/tinyspy-3.0.2.tgz#86dd3cf3d737b15adcf17d7887c84a75201df20a" integrity sha512-n1cw8k1k0x4pgA2+9XrOkFydTerNcJ1zWCO5Nn9scWHTD+5tp8dghT2x1uduQePZTZgd3Tupf+x9BxJjeJi77Q== +tldts-core@^6.1.60: + version "6.1.60" + resolved "https://registry.yarnpkg.com/tldts-core/-/tldts-core-6.1.60.tgz#b3f0a2106e575e972bfca98880758c85c7557d02" + integrity sha512-XHjoxak8SFQnHnmYHb3PcnW5TZ+9ErLZemZei3azuIRhQLw4IExsVbL3VZJdHcLeNaXq6NqawgpDPpjBOg4B5g== + +tldts@^6.1.32: + version "6.1.60" + resolved "https://registry.yarnpkg.com/tldts/-/tldts-6.1.60.tgz#5011770e6946fd2edec582ab4686247c66c97e8a" + integrity sha512-TYVHm7G9NCnhgqOsFalbX6MG1Po5F4efF+tLfoeiOGQq48Oqgwcgz8upY2R1BHWa4aDrj28RYx0dkYJ63qCFMg== + dependencies: + tldts-core "^6.1.60" + tmp@^0.0.33: version "0.0.33" resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" @@ -11325,6 +11525,20 @@ tough-cookie@^2.3.3, tough-cookie@~2.5.0: psl "^1.1.28" punycode "^2.1.1" +tough-cookie@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-5.0.0.tgz#6b6518e2b5c070cf742d872ee0f4f92d69eac1af" + integrity sha512-FRKsF7cz96xIIeMZ82ehjC3xW2E+O2+v11udrDYewUbszngYhsGa8z6YUMMzO9QJZzzyd0nGGXnML/TReX6W8Q== + dependencies: + tldts "^6.1.32" + +tr46@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/tr46/-/tr46-5.0.0.tgz#3b46d583613ec7283020d79019f1335723801cec" + integrity sha512-tk2G5R2KRwBd+ZN0zaEXpmzdKyOYksXwywulIX95MBODjSzMIuQnQ3m8JxgbhnL1LeVo7lqQKsYa1O3Htl7K5g== + dependencies: + punycode "^2.3.1" + tr46@~0.0.3: version "0.0.3" resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" @@ -11345,6 +11559,21 @@ ts-easing@^0.2.0: resolved "https://registry.yarnpkg.com/ts-easing/-/ts-easing-0.2.0.tgz#c8a8a35025105566588d87dbda05dd7fbfa5a4ec" integrity sha512-Z86EW+fFFh/IFB1fqQ3/+7Zpf9t2ebOAxNI/V6Wo7r5gqiqtxmgTlQ1qbqQcjLKYeSHPTsEmvlJUDg/EuL0uHQ== +ts-jest@^29.2.5: + version "29.2.5" + resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-29.2.5.tgz#591a3c108e1f5ebd013d3152142cb5472b399d63" + integrity sha512-KD8zB2aAZrcKIdGk4OwpJggeLcH1FgrICqDSROWqlnJXGCXK4Mn6FcdK2B6670Xr73lHMG1kHw8R87A0ecZ+vA== + dependencies: + bs-logger "^0.2.6" + ejs "^3.1.10" + fast-json-stable-stringify "^2.1.0" + jest-util "^29.0.0" + json5 "^2.2.3" + lodash.memoize "^4.1.2" + make-error "^1.3.6" + semver "^7.6.3" + yargs-parser "^21.1.1" + ts-mockito@^2.6.1: version "2.6.1" resolved "https://registry.yarnpkg.com/ts-mockito/-/ts-mockito-2.6.1.tgz#bc9ee2619033934e6fad1c4455aca5b5ace34e73" @@ -11786,6 +12015,13 @@ vue-template-compiler@^2.6.11: de-indent "^1.0.2" he "^1.1.0" +w3c-xmlserializer@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/w3c-xmlserializer/-/w3c-xmlserializer-5.0.0.tgz#f925ba26855158594d907313cedd1476c5967f6c" + integrity sha512-o8qghlI8NZHU1lLPrpi2+Uq7abh4GGPpYANlalzWxyWteJOCsr/P+oPBA49TOLu5FTZO4d3F9MnWJfiMo4BkmA== + dependencies: + xml-name-validator "^5.0.0" + walk-sync@^2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/walk-sync/-/walk-sync-2.2.0.tgz#80786b0657fcc8c0e1c0b1a042a09eae2966387a" @@ -11832,6 +12068,11 @@ webidl-conversions@^3.0.0: resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" integrity sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE= +webidl-conversions@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-7.0.0.tgz#256b4e1882be7debbf01d05f0aa2039778ea080a" + integrity sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g== + webpack-node-externals@3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/webpack-node-externals/-/webpack-node-externals-3.0.0.tgz#1a3407c158d547a9feb4229a9e3385b7b60c9917" @@ -11872,6 +12113,26 @@ webpack@5.88.2: watchpack "^2.4.0" webpack-sources "^3.2.3" +whatwg-encoding@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-3.1.1.tgz#d0f4ef769905d426e1688f3e34381a99b60b76e5" + integrity sha512-6qN4hJdMwfYBtE3YBTTHhoeuUrDBPZmbQaxWAqSALV/MeEnR5z1xd8UKud2RAkFoPkmB+hli1TZSnyi84xz1vQ== + dependencies: + iconv-lite "0.6.3" + +whatwg-mimetype@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/whatwg-mimetype/-/whatwg-mimetype-4.0.0.tgz#bc1bf94a985dc50388d54a9258ac405c3ca2fc0a" + integrity sha512-QaKxh0eNIi2mE9p2vEdzfagOKHCcj1pJ56EEHGQOVxp8r9/iszLUUV7v89x9O1p/T+NlTM5W7jW6+cz4Fq1YVg== + +whatwg-url@^14.0.0: + version "14.0.0" + resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-14.0.0.tgz#00baaa7fd198744910c4b1ef68378f2200e4ceb6" + integrity sha512-1lfMEm2IEr7RIV+f4lUNPOqfFL+pO+Xw3fJSqmjX9AbXcXcYOkCe1P6+9VBZB6n94af16NfZf+sSk0JCBZC9aw== + dependencies: + tr46 "^5.0.0" + webidl-conversions "^7.0.0" + whatwg-url@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d" @@ -12012,6 +12273,21 @@ write-file-atomic@^4.0.2: imurmurhash "^0.1.4" signal-exit "^3.0.7" +ws@^8.18.0: + version "8.18.0" + resolved "https://registry.yarnpkg.com/ws/-/ws-8.18.0.tgz#0d7505a6eafe2b0e712d232b42279f53bc289bbc" + integrity sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw== + +xml-name-validator@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-5.0.0.tgz#82be9b957f7afdacf961e5980f1bf227c0bf7673" + integrity sha512-EvGK8EJ3DhaHfbRlETOWAS5pO9MZITeauHKJyb8wyajUfQUenkIg2MvLDTZ4T/TgIcm3HU0TFBgWWboAZ30UHg== + +xmlchars@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/xmlchars/-/xmlchars-2.2.0.tgz#060fe1bcb7f9c76fe2a17db86a9bc3ab894210cb" + integrity sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw== + xtend@^4.0.0, xtend@~4.0.1: version "4.0.2" resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" From d74877d8fa2d993e15c19a9015fdca16522b9bbc Mon Sep 17 00:00:00 2001 From: Michael Weimann Date: Mon, 11 Nov 2024 13:49:16 +0100 Subject: [PATCH 11/15] Fix calender tests Signed-off-by: Michael Weimann --- packages/calendar/setupTests.ts | 3 ++- packages/calendar/vitest.config.ts | 26 ++++++++++++++++++++++++++ 2 files changed, 28 insertions(+), 1 deletion(-) create mode 100644 packages/calendar/vitest.config.ts diff --git a/packages/calendar/setupTests.ts b/packages/calendar/setupTests.ts index 397686e3..2eef5664 100644 --- a/packages/calendar/setupTests.ts +++ b/packages/calendar/setupTests.ts @@ -15,8 +15,9 @@ */ import { Settings } from 'luxon'; +import { beforeEach } from 'vitest'; // Make sure to initialize i18n (see mock below) -import { mockDateTimeFormatTimeZone } from './src'; +import { mockDateTimeFormatTimeZone } from './src/testing'; beforeEach(() => { // We want our tests to be in a reproducible time zone, always resulting in diff --git a/packages/calendar/vitest.config.ts b/packages/calendar/vitest.config.ts new file mode 100644 index 00000000..461bb300 --- /dev/null +++ b/packages/calendar/vitest.config.ts @@ -0,0 +1,26 @@ +/* + * Copyright 2024 Nordeck IT + Consulting GmbH + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/// + +import { defineConfig } from 'vite'; + +export default defineConfig({ + test: { + setupFiles: ['./setupTests.ts'], + exclude: ['lib'], + }, +}); From c77d6db50f19b570690f344e23da9532477228a7 Mon Sep 17 00:00:00 2001 From: Michael Weimann Date: Mon, 11 Nov 2024 14:47:24 +0100 Subject: [PATCH 12/15] Fix i18n in tests Signed-off-by: Michael Weimann --- .../ShareDialog.test.tsx | 2 +- matrix-meetings-widget/src/i18n.ts | 3 +++ matrix-meetings-widget/src/setupTests.ts | 21 +++++++++---------- 3 files changed, 14 insertions(+), 12 deletions(-) diff --git a/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/ShareDialog.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/ShareDialog.test.tsx index 56fbf90c..9d70ef70 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/ShareDialog.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/ShareDialog.test.tsx @@ -18,7 +18,7 @@ import { render, screen, within } from '@testing-library/react'; import { renderHook } from '@testing-library/react-hooks'; import userEvent from '@testing-library/user-event'; import axe from 'axe-core'; -import { act } from 'react-dom/test-utils'; +import { act } from 'react'; import { describe, expect, it, vi } from 'vitest'; import { ShareDialog, useShareDialog } from './ShareDialog'; diff --git a/matrix-meetings-widget/src/i18n.ts b/matrix-meetings-widget/src/i18n.ts index aa73e5ac..0dd3a897 100644 --- a/matrix-meetings-widget/src/i18n.ts +++ b/matrix-meetings-widget/src/i18n.ts @@ -57,6 +57,9 @@ i18n supportedLngs: ['en', 'de'], nonExplicitSupportedLngs: true, + + ns: ['translation', 'widget-tookit'], + defaultNS: 'translation', }); registerDateRangeFormatter(i18n); diff --git a/matrix-meetings-widget/src/setupTests.ts b/matrix-meetings-widget/src/setupTests.ts index b1655ecf..867edcbf 100644 --- a/matrix-meetings-widget/src/setupTests.ts +++ b/matrix-meetings-widget/src/setupTests.ts @@ -25,8 +25,12 @@ import { AxeResults } from 'axe-core'; import { TextDecoder, TextEncoder } from 'util'; // Make sure to initialize i18n (see mock below) import { mockDateTimeFormatTimeZone } from '@nordeck/matrix-meetings-calendar/src/testing'; -import { afterEach, beforeEach, expect, vi } from 'vitest'; -import './i18n'; +import i18next from 'i18next'; +import { initReactI18next } from 'react-i18next'; +import { afterEach, beforeAll, beforeEach, expect, vi } from 'vitest'; +import { default as de } from '../public/locales/de/translation.json'; +import { default as en } from '../public/locales/en/translation.json'; +import { registerDateRangeFormatter } from './dateRangeFormatter'; import { setLocale } from './lib/locale'; // Prevent act warnings https://github.com/testing-library/react-testing-library/issues/1061 @@ -62,21 +66,16 @@ ${violation.helpUrl} }, }); -// Use a different configuration for i18next during tests -vi.mock('./i18n', async () => { - const i18n = await vi.importActual('i18next'); - const { initReactI18next } = - await vi.importActual('react-i18next'); - - i18n.use(initReactI18next).init({ +beforeAll(() => { + i18next.use(initReactI18next).init({ fallbackLng: 'en', interpolation: { escapeValue: false, }, - resources: { en: {} }, + resources: { de: { translation: de }, en: {translation: en} }, }); - return i18n; + registerDateRangeFormatter(i18next); }); beforeEach(() => { From adb962a037ca42dc4630ccbd480b9be92ca3cee5 Mon Sep 17 00:00:00 2001 From: Michael Weimann Date: Mon, 11 Nov 2024 15:01:24 +0100 Subject: [PATCH 13/15] Migrate widget tests Signed-off-by: Michael Weimann --- matrix-meetings-widget/package.json | 4 +- .../useDatePickersState.test.tsx | 2 +- .../ShareDialog.test.tsx | 3 +- .../useDownloadIcsFile.test.tsx | 3 +- .../useJitsiDialInInformation.test.tsx | 38 ++-- .../useMeetingEmail.test.tsx | 3 +- .../useMeetingUrl.test.tsx | 2 +- .../MeetingDetailsShare/ShareDialog.test.tsx | 5 +- .../useUserSearchResults.test.tsx | 26 ++- matrix-meetings-widget/src/setupTests.ts | 2 +- yarn.lock | 190 +++--------------- 11 files changed, 77 insertions(+), 201 deletions(-) diff --git a/matrix-meetings-widget/package.json b/matrix-meetings-widget/package.json index 7afe3715..2317c9db 100644 --- a/matrix-meetings-widget/package.json +++ b/matrix-meetings-widget/package.json @@ -45,9 +45,9 @@ }, "devDependencies": { "@matrix-widget-toolkit/testing": "^3.0.1", + "@testing-library/dom": "^10.4.0", "@testing-library/jest-dom": "^6.6.3", - "@testing-library/react": "12", - "@testing-library/react-hooks": "^8.0.1", + "@testing-library/react": "^16.0.1", "@testing-library/user-event": "^14.5.2", "@types/lodash-es": "^4.17.12", "@types/luxon": "^3.2.0", diff --git a/matrix-meetings-widget/src/components/common/DateTimePickers/useDatePickersState.test.tsx b/matrix-meetings-widget/src/components/common/DateTimePickers/useDatePickersState.test.tsx index 088b3af2..6ecfd64f 100644 --- a/matrix-meetings-widget/src/components/common/DateTimePickers/useDatePickersState.test.tsx +++ b/matrix-meetings-widget/src/components/common/DateTimePickers/useDatePickersState.test.tsx @@ -14,7 +14,7 @@ * limitations under the License. */ -import { renderHook } from '@testing-library/react-hooks'; +import { renderHook } from '@testing-library/react'; import { DateTime } from 'luxon'; import { beforeEach, describe, expect, it, vi } from 'vitest'; import { mockMeeting } from '../../../lib/testUtils'; diff --git a/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/ShareDialog.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/ShareDialog.test.tsx index 9d70ef70..2ba90011 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/ShareDialog.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/ShareDialog.test.tsx @@ -14,8 +14,7 @@ * limitations under the License. */ -import { render, screen, within } from '@testing-library/react'; -import { renderHook } from '@testing-library/react-hooks'; +import { render, renderHook, screen, within } from '@testing-library/react'; import userEvent from '@testing-library/user-event'; import axe from 'axe-core'; import { act } from 'react'; diff --git a/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/useDownloadIcsFile.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/useDownloadIcsFile.test.tsx index 96218e17..c2a82cd3 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/useDownloadIcsFile.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/useDownloadIcsFile.test.tsx @@ -16,8 +16,7 @@ import { extractWidgetApiParameters as extractWidgetApiParametersMocked } from '@matrix-widget-toolkit/api'; import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; -import { waitFor } from '@testing-library/react'; -import { renderHook } from '@testing-library/react-hooks'; +import { renderHook, waitFor } from '@testing-library/react'; import { setupServer } from 'msw/node'; import { ComponentType, PropsWithChildren, useState } from 'react'; import { Provider } from 'react-redux'; diff --git a/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/useJitsiDialInInformation.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/useJitsiDialInInformation.test.tsx index b52ef2ee..f36fdf0e 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/useJitsiDialInInformation.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/useJitsiDialInInformation.test.tsx @@ -15,7 +15,7 @@ */ import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; -import { renderHook } from '@testing-library/react-hooks'; +import { renderHook, waitFor } from '@testing-library/react'; import { rest } from 'msw'; import { setupServer } from 'msw/node'; import { ComponentType, PropsWithChildren, useState } from 'react'; @@ -76,17 +76,19 @@ describe('useJitsiDialInInformation', () => { it('should skip jitsi information', async () => { mockConfigEndpoint(server); - const { result, waitForValueToChange } = renderHook( - () => useJitsiDialInInformation('!room'), - { wrapper: Wrapper }, - ); + const { result } = renderHook(() => useJitsiDialInInformation('!room'), { + wrapper: Wrapper, + }); expect(result.current).toEqual({ isLoading: true, isError: false, }); - await waitForValueToChange(() => result.current.isLoading); + const isLoading = result.current.isLoading; + await waitFor(() => { + expect(isLoading).not.toBe(result.current.isLoading); + }); expect(result.current).toEqual({ isLoading: false, @@ -96,17 +98,19 @@ describe('useJitsiDialInInformation', () => { }); it('should return jitsi information', async () => { - const { result, waitForValueToChange } = renderHook( - () => useJitsiDialInInformation('!room'), - { wrapper: Wrapper }, - ); + const { result } = renderHook(() => useJitsiDialInInformation('!room'), { + wrapper: Wrapper, + }); expect(result.current).toEqual({ isLoading: true, isError: false, }); - await waitForValueToChange(() => result.current.isLoading); + const isLoading = result.current.isLoading; + await waitFor(() => { + expect(isLoading).not.toBe(result.current.isLoading); + }); expect(result.current).toEqual({ isLoading: false, @@ -124,17 +128,19 @@ describe('useJitsiDialInInformation', () => { ), ); - const { result, waitForValueToChange } = renderHook( - () => useJitsiDialInInformation('!room'), - { wrapper: Wrapper }, - ); + const { result } = renderHook(() => useJitsiDialInInformation('!room'), { + wrapper: Wrapper, + }); expect(result.current).toEqual({ isLoading: true, isError: false, }); - await waitForValueToChange(() => result.current.isLoading); + const isLoading = result.current.isLoading; + await waitFor(() => { + expect(isLoading).not.toBe(result.current.isLoading); + }); expect(result.current).toEqual({ isLoading: false, diff --git a/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/useMeetingEmail.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/useMeetingEmail.test.tsx index 5c639b88..cd22127e 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/useMeetingEmail.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/useMeetingEmail.test.tsx @@ -16,8 +16,7 @@ import { extractWidgetApiParameters as extractWidgetApiParametersMocked } from '@matrix-widget-toolkit/api'; import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; -import { waitFor } from '@testing-library/react'; -import { renderHook } from '@testing-library/react-hooks'; +import { renderHook, waitFor } from '@testing-library/react'; import { setupServer } from 'msw/node'; import { ComponentType, PropsWithChildren, useState } from 'react'; import { Provider } from 'react-redux'; diff --git a/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/useMeetingUrl.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/useMeetingUrl.test.tsx index 025cde83..d1a781bf 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/useMeetingUrl.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingCardShareMeetingContent/useMeetingUrl.test.tsx @@ -15,7 +15,7 @@ */ import { extractWidgetApiParameters as extractWidgetApiParametersMocked } from '@matrix-widget-toolkit/api'; -import { renderHook } from '@testing-library/react-hooks'; +import { renderHook } from '@testing-library/react'; import { beforeEach, describe, expect, it, vi } from 'vitest'; import { mockMeeting } from '../../../lib/testUtils'; import { Meeting } from '../../../reducer/meetingsApi'; diff --git a/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsContent/MeetingDetailsShare/ShareDialog.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsContent/MeetingDetailsShare/ShareDialog.test.tsx index 56fbf90c..2ba90011 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsContent/MeetingDetailsShare/ShareDialog.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingDetails/MeetingDetailsContent/MeetingDetailsShare/ShareDialog.test.tsx @@ -14,11 +14,10 @@ * limitations under the License. */ -import { render, screen, within } from '@testing-library/react'; -import { renderHook } from '@testing-library/react-hooks'; +import { render, renderHook, screen, within } from '@testing-library/react'; import userEvent from '@testing-library/user-event'; import axe from 'axe-core'; -import { act } from 'react-dom/test-utils'; +import { act } from 'react'; import { describe, expect, it, vi } from 'vitest'; import { ShareDialog, useShareDialog } from './ShareDialog'; diff --git a/matrix-meetings-widget/src/components/meetings/ScheduleMeetingModal/useUserSearchResults.test.tsx b/matrix-meetings-widget/src/components/meetings/ScheduleMeetingModal/useUserSearchResults.test.tsx index 08c1859a..f7ebf88a 100644 --- a/matrix-meetings-widget/src/components/meetings/ScheduleMeetingModal/useUserSearchResults.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/ScheduleMeetingModal/useUserSearchResults.test.tsx @@ -16,7 +16,7 @@ import { WidgetApiMockProvider } from '@matrix-widget-toolkit/react'; import { MockedWidgetApi, mockWidgetApi } from '@matrix-widget-toolkit/testing'; -import { renderHook } from '@testing-library/react-hooks'; +import { renderHook, waitFor } from '@testing-library/react'; import { ComponentType, PropsWithChildren, useState } from 'react'; import { Provider } from 'react-redux'; import { afterEach, beforeEach, describe, expect, it } from 'vitest'; @@ -59,10 +59,9 @@ describe('useUserSearchResults', () => { ], }); - const { result, waitForValueToChange } = renderHook( - () => useUserSearchResults('user', 10), - { wrapper: Wrapper }, - ); + const { result } = renderHook(() => useUserSearchResults('user', 10), { + wrapper: Wrapper, + }); expect(result.current).toEqual({ loading: true, @@ -70,7 +69,10 @@ describe('useUserSearchResults', () => { error: undefined, }); - await waitForValueToChange(() => result.current.loading); + const loading = result.current.loading; + await waitFor(() => { + expect(result.current.loading).not.toBe(loading); + }); expect(result.current).toEqual({ loading: false, @@ -105,10 +107,9 @@ describe('useUserSearchResults', () => { it('should return error', async () => { widgetApi.searchUserDirectory.mockRejectedValue(new Error('unexpected')); - const { result, waitForValueToChange } = renderHook( - () => useUserSearchResults('user', 10), - { wrapper: Wrapper }, - ); + const { result } = renderHook(() => useUserSearchResults('user', 10), { + wrapper: Wrapper, + }); expect(result.current).toEqual({ loading: true, @@ -116,7 +117,10 @@ describe('useUserSearchResults', () => { error: undefined, }); - await waitForValueToChange(() => result.current.loading); + const loading = result.current.loading; + await waitFor(() => { + expect(result.current.loading).not.toBe(loading); + }); expect(result.current).toEqual({ loading: false, diff --git a/matrix-meetings-widget/src/setupTests.ts b/matrix-meetings-widget/src/setupTests.ts index 867edcbf..8970c47b 100644 --- a/matrix-meetings-widget/src/setupTests.ts +++ b/matrix-meetings-widget/src/setupTests.ts @@ -72,7 +72,7 @@ beforeAll(() => { interpolation: { escapeValue: false, }, - resources: { de: { translation: de }, en: {translation: en} }, + resources: { de: { translation: de }, en: { translation: en } }, }); registerDateRangeFormatter(i18next); diff --git a/yarn.lock b/yarn.lock index fb6a6715..b4547f1c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -90,7 +90,7 @@ dependencies: axe-core "~4.9.1" -"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.10.4", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.16.7", "@babel/code-frame@^7.18.6", "@babel/code-frame@^7.22.13": +"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.16.7", "@babel/code-frame@^7.18.6", "@babel/code-frame@^7.22.13": version "7.22.13" resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.22.13.tgz#e3c1c099402598483b7a8c46a721d1038803755e" integrity sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w== @@ -98,7 +98,7 @@ "@babel/highlight" "^7.22.13" chalk "^2.4.2" -"@babel/code-frame@^7.25.9", "@babel/code-frame@^7.26.0": +"@babel/code-frame@^7.10.4", "@babel/code-frame@^7.25.9", "@babel/code-frame@^7.26.0": version "7.26.2" resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.26.2.tgz#4b5fab97d33338eff916235055f0ebc21e573a85" integrity sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ== @@ -3008,15 +3008,15 @@ dependencies: "@swc/counter" "^0.1.3" -"@testing-library/dom@^8.0.0": - version "8.20.1" - resolved "https://registry.yarnpkg.com/@testing-library/dom/-/dom-8.20.1.tgz#2e52a32e46fc88369eef7eef634ac2a192decd9f" - integrity sha512-/DiOQ5xBxgdYRC8LNk7U+RWat0S3qRLeIw3ZIkMQ9kkVlRmwD/Eg8k8CqIpD6GW7u20JIUOfMKbxtiLutpjQ4g== +"@testing-library/dom@^10.4.0": + version "10.4.0" + resolved "https://registry.yarnpkg.com/@testing-library/dom/-/dom-10.4.0.tgz#82a9d9462f11d240ecadbf406607c6ceeeff43a8" + integrity sha512-pemlzrSESWbdAloYml3bAJMEfNh1Z7EduzqPKprCH5S341frlpYnUEW0H72dLxa6IsYr+mPno20GiSm+h9dEdQ== dependencies: "@babel/code-frame" "^7.10.4" "@babel/runtime" "^7.12.5" "@types/aria-query" "^5.0.1" - aria-query "5.1.3" + aria-query "5.3.0" chalk "^4.1.0" dom-accessibility-api "^0.5.9" lz-string "^1.5.0" @@ -3035,22 +3035,12 @@ lodash "^4.17.21" redent "^3.0.0" -"@testing-library/react-hooks@^8.0.1": - version "8.0.1" - resolved "https://registry.yarnpkg.com/@testing-library/react-hooks/-/react-hooks-8.0.1.tgz#0924bbd5b55e0c0c0502d1754657ada66947ca12" - integrity sha512-Aqhl2IVmLt8IovEVarNDFuJDVWVvhnr9/GCU6UUnrYXwgDFF9h2L2o2P9KBni1AST5sT6riAyoukFLyjQUgD/g== - dependencies: - "@babel/runtime" "^7.12.5" - react-error-boundary "^3.1.0" - -"@testing-library/react@12": - version "12.1.5" - resolved "https://registry.yarnpkg.com/@testing-library/react/-/react-12.1.5.tgz#bb248f72f02a5ac9d949dea07279095fa577963b" - integrity sha512-OfTXCJUFgjd/digLUuPxa0+/3ZxsQmE7ub9kcbW/wi96Bh3o/p5vrETcBGfP17NWPGqeYYl5LTRpwyGoMC4ysg== +"@testing-library/react@^16.0.1": + version "16.0.1" + resolved "https://registry.yarnpkg.com/@testing-library/react/-/react-16.0.1.tgz#29c0ee878d672703f5e7579f239005e4e0faa875" + integrity sha512-dSmwJVtJXmku+iocRhWOUFbrERC76TX2Mnf0ATODz8brzAZrMBbzLwQixlBSanZxR6LddK3eiwpSFZgDET1URg== dependencies: "@babel/runtime" "^7.12.5" - "@testing-library/dom" "^8.0.0" - "@types/react-dom" "<18.0.0" "@testing-library/user-event@^14.5.2": version "14.5.2" @@ -3348,13 +3338,6 @@ resolved "https://registry.yarnpkg.com/@types/range-parser/-/range-parser-1.2.4.tgz#cd667bcfdd025213aafb7ca5915a932590acdcdc" integrity sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw== -"@types/react-dom@<18.0.0": - version "17.0.25" - resolved "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-17.0.25.tgz#e0e5b3571e1069625b3a3da2b279379aa33a0cb5" - integrity sha512-urx7A7UxkZQmThYA4So0NelOVjx3V4rNFVJwp0WZlbIK5eM4rNJDiN3R/E9ix0MBh6kAEojk/9YL+Te6D9zHNA== - dependencies: - "@types/react" "^17" - "@types/react-dom@^18.3.1": version "18.3.1" resolved "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-18.3.1.tgz#1e4654c08a9cdcfb6594c780ac59b55aad42fe07" @@ -3383,7 +3366,7 @@ dependencies: "@types/react" "*" -"@types/react@*", "@types/react@^17": +"@types/react@*": version "17.0.53" resolved "https://registry.yarnpkg.com/@types/react/-/react-17.0.53.tgz#10d4d5999b8af3d6bc6a9369d7eb953da82442ab" integrity sha512-1yIpQR2zdYu1Z/dc1OxC+MA6GR240u3gcnP4l6mvj/PJiVaqHsQPmWttsvHsfnhfPbU2FuGmo0wSITPygjBmsw== @@ -4085,12 +4068,12 @@ argparse@^2.0.1: resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== -aria-query@5.1.3: - version "5.1.3" - resolved "https://registry.yarnpkg.com/aria-query/-/aria-query-5.1.3.tgz#19db27cd101152773631396f7a95a3b58c22c35e" - integrity sha512-R5iJ5lkuHybztUfuOAznmboyjWq8O6sqNqtK7CLOqdydi54VNbORp49mb14KbWgG1QD3JFO9hJdZ+y4KutfdOQ== +aria-query@5.3.0: + version "5.3.0" + resolved "https://registry.yarnpkg.com/aria-query/-/aria-query-5.3.0.tgz#650c569e41ad90b51b3d7df5e5eed1c7549c103e" + integrity sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A== dependencies: - deep-equal "^2.0.5" + dequal "^2.0.3" aria-query@^4.2.2: version "4.2.2" @@ -4105,14 +4088,6 @@ aria-query@^5.0.0: resolved "https://registry.yarnpkg.com/aria-query/-/aria-query-5.3.2.tgz#93f81a43480e33a338f19163a3d10a50c01dcd59" integrity sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw== -array-buffer-byte-length@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz#1e5583ec16763540a27ae52eed99ff899223568f" - integrity sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg== - dependencies: - call-bind "^1.0.5" - is-array-buffer "^3.0.4" - array-differ@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/array-differ/-/array-differ-3.0.0.tgz#3cbb3d0f316810eafcc47624734237d6aee4ae6b" @@ -5378,30 +5353,6 @@ deep-eql@^5.0.1: resolved "https://registry.yarnpkg.com/deep-eql/-/deep-eql-5.0.2.tgz#4b756d8d770a9257300825d52a2c2cff99c3a341" integrity sha512-h5k/5U50IJJFpzfL6nO9jaaumfjO/f2NjK/oYB2Djzm4p9L+3T9qWpZqZ2hAbLPuuYq9wrU08WQyBTL5GbPk5Q== -deep-equal@^2.0.5: - version "2.2.3" - resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-2.2.3.tgz#af89dafb23a396c7da3e862abc0be27cf51d56e1" - integrity sha512-ZIwpnevOurS8bpT4192sqAowWM76JDKSHYzMLty3BZGSswgq6pBaH3DhCSW5xVAZICZyKdOBPjwww5wfgT/6PA== - 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" - deep-is@^0.1.3: version "0.1.3" resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" @@ -5481,6 +5432,11 @@ deps-regex@^0.2.0: resolved "https://registry.yarnpkg.com/deps-regex/-/deps-regex-0.2.0.tgz#3ee7ddae5fd784f3accf29d5a711aa6e10044137" integrity sha512-PwuBojGMQAYbWkMXOY9Pd/NWCDNHVH12pnS7WHqZkTSeMESe4hwnKKRp0yR87g37113x4JPbo/oIvXY+s/f56Q== +dequal@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/dequal/-/dequal-2.0.3.tgz#2644214f1997d39ed0ee0ece72335490a7ac67be" + integrity sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA== + destroy@1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.2.0.tgz#4803735509ad8be552934c67df614f94e66fa015" @@ -5783,21 +5739,6 @@ es-errors@^1.3.0: resolved "https://registry.yarnpkg.com/es-errors/-/es-errors-1.3.0.tgz#05f75a25dab98e4fb1dcd5e1472c0546d5057c8f" integrity sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw== -es-get-iterator@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/es-get-iterator/-/es-get-iterator-1.1.3.tgz#3ef87523c5d464d41084b2c3c9c214f1199763d6" - integrity sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw== - 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" - es-module-lexer@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/es-module-lexer/-/es-module-lexer-1.2.1.tgz#ba303831f63e6a394983fde2f97ad77b22324527" @@ -6709,7 +6650,7 @@ get-east-asian-width@^1.0.0: resolved "https://registry.yarnpkg.com/get-east-asian-width/-/get-east-asian-width-1.2.0.tgz#5e6ebd9baee6fb8b7b6bd505221065f0cd91f64e" integrity sha512-2nk+7SIVb14QrgXFHcm84tD4bKQz0RxPuMT8Ag5KPOq7J5fEmAg0UbXdTOSHqNuHSU28k55qnceesxXRZGzKWA== -get-intrinsic@^1.1.1, get-intrinsic@^1.1.3, get-intrinsic@^1.2.1, get-intrinsic@^1.2.2, get-intrinsic@^1.2.4: +get-intrinsic@^1.1.1, get-intrinsic@^1.1.3, get-intrinsic@^1.2.4: version "1.2.4" resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.2.4.tgz#e385f5a4b5227d449c3eabbad05494ef0abbeadd" integrity sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ== @@ -7357,7 +7298,7 @@ inquirer@8.2.6, inquirer@^8.2.0: through "^2.3.6" wrap-ansi "^6.0.1" -internal-slot@^1.0.3, internal-slot@^1.0.4: +internal-slot@^1.0.3: version "1.0.7" resolved "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.0.7.tgz#c06dcca3ed874249881007b0a5523b172a190802" integrity sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g== @@ -7376,7 +7317,7 @@ ipaddr.js@1.9.1: resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz#bff38543eeb8984825079ff3a2a8e6cbd46781b3" integrity sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g== -is-arguments@^1.0.4, is-arguments@^1.1.1: +is-arguments@^1.0.4: version "1.1.1" resolved "https://registry.yarnpkg.com/is-arguments/-/is-arguments-1.1.1.tgz#15b3f88fda01f2a97fec84ca761a560f123efa9b" integrity sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA== @@ -7384,14 +7325,6 @@ is-arguments@^1.0.4, is-arguments@^1.1.1: call-bind "^1.0.2" has-tostringtag "^1.0.0" -is-array-buffer@^3.0.2, is-array-buffer@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/is-array-buffer/-/is-array-buffer-3.0.4.tgz#7a1f92b3d61edd2bc65d24f130530ea93d7fae98" - integrity sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw== - dependencies: - call-bind "^1.0.2" - get-intrinsic "^1.2.1" - is-arrayish@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" @@ -7431,7 +7364,7 @@ is-core-module@^2.12.0, is-core-module@^2.13.0, is-core-module@^2.2.0, is-core-m dependencies: hasown "^2.0.0" -is-date-object@^1.0.1, is-date-object@^1.0.5: +is-date-object@^1.0.1: version "1.0.5" resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.5.tgz#0841d5536e724c25597bf6ea62e1bd38298df31f" integrity sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ== @@ -7484,11 +7417,6 @@ is-interactive@^1.0.0: resolved "https://registry.yarnpkg.com/is-interactive/-/is-interactive-1.0.0.tgz#cea6e6ae5c870a7b0a0004070b7b587e0252912e" integrity sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w== -is-map@^2.0.2, is-map@^2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/is-map/-/is-map-2.0.3.tgz#ede96b7fe1e270b3c4465e3a465658764926d62e" - integrity sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw== - is-negated-glob@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-negated-glob/-/is-negated-glob-1.0.0.tgz#6910bca5da8c95e784b5751b976cf5a10fee36d2" @@ -7554,11 +7482,6 @@ is-regex@^1.1.4: call-bind "^1.0.2" has-tostringtag "^1.0.0" -is-set@^2.0.2, is-set@^2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/is-set/-/is-set-2.0.3.tgz#8ab209ea424608141372ded6e0cb200ef1d9d01d" - integrity sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg== - is-shared-array-buffer@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz#8f259c573b60b6a32d4058a1a07430c0a7344c79" @@ -7619,11 +7542,6 @@ is-valid-glob@^1.0.0: resolved "https://registry.yarnpkg.com/is-valid-glob/-/is-valid-glob-1.0.0.tgz#29bf3eff701be2d4d315dbacc39bc39fe8f601aa" integrity sha1-Kb8+/3Ab4tTTFdusw5vDn+j2Aao= -is-weakmap@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/is-weakmap/-/is-weakmap-2.0.2.tgz#bf72615d649dfe5f699079c54b83e47d1ae19cfd" - integrity sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w== - is-weakref@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/is-weakref/-/is-weakref-1.0.2.tgz#9529f383a9338205e89765e0392efc2f100f06f2" @@ -7631,14 +7549,6 @@ is-weakref@^1.0.2: dependencies: call-bind "^1.0.2" -is-weakset@^2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/is-weakset/-/is-weakset-2.0.3.tgz#e801519df8c0c43e12ff2834eead84ec9e624007" - integrity sha512-LvIm3/KWzS9oRFHugab7d+M/GcBXuXX5xZkzPmN+NxihdQlZUQ4dWuSV1xR/sq6upL1TJEDrfBgRepHFdBtSNQ== - dependencies: - call-bind "^1.0.7" - get-intrinsic "^1.2.4" - is-windows@^1.0.0, is-windows@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" @@ -7649,11 +7559,6 @@ isarray@0.0.1: resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" integrity sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ== -isarray@^2.0.5: - version "2.0.5" - resolved "https://registry.yarnpkg.com/isarray/-/isarray-2.0.5.tgz#8af1e4c1221244cc62459faf38940d4e644a5723" - integrity sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw== - isarray@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" @@ -9186,20 +9091,12 @@ object-inspect@^1.12.0, object-inspect@^1.13.1: resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.13.2.tgz#dea0088467fb991e67af4058147a24824a3043ff" integrity sha512-IRZSRuzJiynemAXPYtPe5BoI/RESNYR7TYm50MC5Mqbd3Jmw5y790sErYw3V6SryFJD64b74qQQs9wn5Bg/k3g== -object-is@^1.1.5: - version "1.1.6" - resolved "https://registry.yarnpkg.com/object-is/-/object-is-1.1.6.tgz#1a6a53aed2dd8f7e6775ff870bea58545956ab07" - integrity sha512-F8cZ+KfGlSGi09lJT7/Nd6KJZ9ygtvYC0/UYYLI9nmQKLMnydpB9yvbv9K1uSkEu7FU9vYPmVwLg328tX+ot3Q== - dependencies: - call-bind "^1.0.7" - define-properties "^1.2.1" - object-keys@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== -object.assign@^4.1.0, object.assign@^4.1.2, object.assign@^4.1.4: +object.assign@^4.1.0, object.assign@^4.1.2: version "4.1.5" resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.5.tgz#3a833f9ab7fdb80fc9e8d2300c803d216d8fdbb0" integrity sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ== @@ -9930,7 +9827,7 @@ react-dom@^18.3.1: loose-envify "^1.1.0" scheduler "^0.23.2" -react-error-boundary@^3.1.0, react-error-boundary@^3.1.4: +react-error-boundary@^3.1.4: version "3.1.4" resolved "https://registry.yarnpkg.com/react-error-boundary/-/react-error-boundary-3.1.4.tgz#255db92b23197108757a888b01e5b729919abde0" integrity sha512-uM9uPzZJTF6wRQORmSrvOIgt4lJ9MC1sNgEOj2XGsDTRE4kmpWxg7ENK9EWNKJRMAOY9z0MuF4yIfl6gp4sotA== @@ -10208,16 +10105,6 @@ regexp.prototype.flags@^1.3.1, regexp.prototype.flags@^1.4.3: es-errors "^1.3.0" set-function-name "^2.0.1" -regexp.prototype.flags@^1.5.1: - version "1.5.3" - resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.5.3.tgz#b3ae40b1d2499b8350ab2c3fe6ef3845d3a96f42" - integrity sha512-vqlC04+RQoFalODCbCumG2xIOvapzVMHwsyIGM/SIE8fRhFFsXeH8/QQ+s0T0kDAhKc4k30s73/0ydkHQz6HlQ== - dependencies: - call-bind "^1.0.7" - define-properties "^1.2.1" - es-errors "^1.3.0" - set-function-name "^2.0.2" - regexpu-core@^4.7.1: version "4.7.1" resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-4.7.1.tgz#2dea5a9a07233298fbf0db91fa9abc4c6e0f8ad6" @@ -10668,7 +10555,7 @@ set-function-length@^1.2.1: gopd "^1.0.1" has-property-descriptors "^1.0.2" -set-function-name@^2.0.1, set-function-name@^2.0.2: +set-function-name@^2.0.1: version "2.0.2" resolved "https://registry.yarnpkg.com/set-function-name/-/set-function-name-2.0.2.tgz#16a705c5a0dc2f5e638ca96d8a8cd4e1c2b90985" integrity sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ== @@ -11004,13 +10891,6 @@ steno@^0.4.1: dependencies: graceful-fs "^4.1.3" -stop-iteration-iterator@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/stop-iteration-iterator/-/stop-iteration-iterator-1.0.0.tgz#6a60be0b4ee757d1ed5254858ec66b10c49285e4" - integrity sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ== - dependencies: - internal-slot "^1.0.4" - stream-composer@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/stream-composer/-/stream-composer-1.0.2.tgz#7ee61ca1587bf5f31b2e29aa2093cbf11442d152" @@ -12152,16 +12032,6 @@ which-boxed-primitive@^1.0.2: is-string "^1.0.5" is-symbol "^1.0.3" -which-collection@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/which-collection/-/which-collection-1.0.2.tgz#627ef76243920a107e7ce8e96191debe4b16c2a0" - integrity sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw== - dependencies: - is-map "^2.0.3" - is-set "^2.0.3" - is-weakmap "^2.0.2" - is-weakset "^2.0.3" - which-module@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" @@ -12175,7 +12045,7 @@ which-pm@2.0.0: load-yaml-file "^0.2.0" path-exists "^4.0.0" -which-typed-array@^1.1.13, which-typed-array@^1.1.14, which-typed-array@^1.1.2: +which-typed-array@^1.1.14, which-typed-array@^1.1.2: version "1.1.15" resolved "https://registry.yarnpkg.com/which-typed-array/-/which-typed-array-1.1.15.tgz#264859e9b11a649b388bfaaf4f767df1f779b38d" integrity sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA== From f00358a7c2d669f7a02d328b321c0bc177976679 Mon Sep 17 00:00:00 2001 From: Michael Weimann Date: Mon, 11 Nov 2024 16:15:51 +0100 Subject: [PATCH 14/15] Fix some tests Signed-off-by: Michael Weimann --- .../common/DateTimePickers/StartDatePicker.test.tsx | 3 ++- .../MeetingsCalendarDetailsDialog.test.tsx | 8 +++++++- .../MeetingsNavigation/MeetingsNavigation.test.tsx | 8 +++++++- .../meetings/MeetingsPanel/MeetingsPanel.test.tsx | 8 +++++++- .../meetings/MeetingsToolbar/MeetingsToolbar.test.tsx | 8 +++++++- 5 files changed, 30 insertions(+), 5 deletions(-) diff --git a/matrix-meetings-widget/src/components/common/DateTimePickers/StartDatePicker.test.tsx b/matrix-meetings-widget/src/components/common/DateTimePickers/StartDatePicker.test.tsx index 9e30af65..6a974fd8 100644 --- a/matrix-meetings-widget/src/components/common/DateTimePickers/StartDatePicker.test.tsx +++ b/matrix-meetings-widget/src/components/common/DateTimePickers/StartDatePicker.test.tsx @@ -24,10 +24,11 @@ import { LocalizationProvider } from '../LocalizationProvider'; import { StartDatePicker } from './StartDatePicker'; describe('', () => { - const onChange = vi.fn(); + let onChange: ReturnType; let Wrapper: ComponentType>; beforeEach(() => { + onChange = vi.fn(); Wrapper = ({ children }: PropsWithChildren<{}>) => { return {children}; }; diff --git a/matrix-meetings-widget/src/components/meetings/MeetingsCalendar/MeetingsCalendarDetailsDialog.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingsCalendar/MeetingsCalendarDetailsDialog.test.tsx index 1cc2c291..090731f1 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingsCalendar/MeetingsCalendarDetailsDialog.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingsCalendar/MeetingsCalendarDetailsDialog.test.tsx @@ -51,7 +51,13 @@ vi.mock('@matrix-widget-toolkit/api', async () => ({ extractWidgetApiParameters: vi.fn(), })); -vi.mock('@mui/material/useMediaQuery'); +vi.mock(import('@mui/material'), async (importOriginal) => { + const muiMaterial = await importOriginal(); + return { + ...muiMaterial, + useMediaQuery: vi.fn(), + }; +}); const server = setupServer(); diff --git a/matrix-meetings-widget/src/components/meetings/MeetingsNavigation/MeetingsNavigation.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingsNavigation/MeetingsNavigation.test.tsx index a65e9447..15bbe6ed 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingsNavigation/MeetingsNavigation.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingsNavigation/MeetingsNavigation.test.tsx @@ -23,7 +23,13 @@ import { beforeEach, describe, expect, it, vi } from 'vitest'; import { LocalizationProvider } from '../../common/LocalizationProvider'; import { MeetingsNavigation } from './MeetingsNavigation'; -vi.mock('@mui/material/useMediaQuery'); +vi.mock(import('@mui/material'), async (importOriginal) => { + const muiMaterial = await importOriginal(); + return { + ...muiMaterial, + useMediaQuery: vi.fn(), + }; +}); describe('', () => { let Wrapper: ComponentType>; diff --git a/matrix-meetings-widget/src/components/meetings/MeetingsPanel/MeetingsPanel.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingsPanel/MeetingsPanel.test.tsx index 51ad1646..09882811 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingsPanel/MeetingsPanel.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingsPanel/MeetingsPanel.test.tsx @@ -39,7 +39,13 @@ import { LocalizationProvider } from '../../common/LocalizationProvider'; import { SetupBreakoutSessionsModalResult } from '../SetupBreakoutSessionsModal'; import { MeetingsPanel } from './MeetingsPanel'; -vi.mock('@mui/material/useMediaQuery'); +vi.mock(import('@mui/material'), async (importOriginal) => { + const muiMaterial = await importOriginal(); + return { + ...muiMaterial, + useMediaQuery: vi.fn(), + }; +}); vi.mock('@matrix-widget-toolkit/api', async () => ({ ...(await vi.importActual( diff --git a/matrix-meetings-widget/src/components/meetings/MeetingsToolbar/MeetingsToolbar.test.tsx b/matrix-meetings-widget/src/components/meetings/MeetingsToolbar/MeetingsToolbar.test.tsx index 31497efb..b4ef8c83 100644 --- a/matrix-meetings-widget/src/components/meetings/MeetingsToolbar/MeetingsToolbar.test.tsx +++ b/matrix-meetings-widget/src/components/meetings/MeetingsToolbar/MeetingsToolbar.test.tsx @@ -29,7 +29,13 @@ import { initializeStore } from '../../../store/store'; import { LocalizationProvider } from '../../common/LocalizationProvider'; import { MeetingsToolbar } from './MeetingsToolbar'; -vi.mock('@mui/material/useMediaQuery'); +vi.mock(import('@mui/material'), async (importOriginal) => { + const muiMaterial = await importOriginal(); + return { + ...muiMaterial, + useMediaQuery: vi.fn(), + }; +}); describe('', () => { let Wrapper: ComponentType>; From b37b6b163579769b957da52c2f3ae29ca9d3258c Mon Sep 17 00:00:00 2001 From: Michael Weimann Date: Tue, 12 Nov 2024 08:23:59 +0100 Subject: [PATCH 15/15] Fix emotion error Signed-off-by: Michael Weimann --- matrix-meetings-widget/vitest.config.ts | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/matrix-meetings-widget/vitest.config.ts b/matrix-meetings-widget/vitest.config.ts index 22251d27..0dcfef87 100644 --- a/matrix-meetings-widget/vitest.config.ts +++ b/matrix-meetings-widget/vitest.config.ts @@ -16,10 +16,17 @@ /// +import path from 'path'; import { defineConfig } from 'vite'; export default defineConfig({ test: { + alias: { + // solve "You are loading @emotion/react when it is already loaded…" issue + '@emotion/react': path.resolve( + '../node_modules/@emotion/react/dist/emotion-react.cjs.mjs', + ), + }, environment: 'jsdom', setupFiles: ['./src/setupTests.ts'], exclude: ['build', 'lib'],