From a69d8b19f3eb9b84856dc1ac8d64328cece313c5 Mon Sep 17 00:00:00 2001 From: "makabe.t" Date: Tue, 14 Mar 2023 07:17:36 +0000 Subject: [PATCH] =?UTF-8?q?Merged=20PR=2013:=20=E3=82=BF=E3=82=B9=E3=82=AF?= =?UTF-8?q?=201470:=20=E7=94=BB=E9=9D=A2=E5=AE=9F=E8=A3=85=EF=BC=88?= =?UTF-8?q?=E3=83=88=E3=83=83=E3=83=97=E3=83=9A=E3=83=BC=E3=82=B8=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ## 概要 [タスク 1470: 画面実装(トップページ)](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/OMDSDictation/_workitems/edit/1470) - トップページのデザインを適用しました。 ## レビューポイント - デザイン適用は適切か - CSSの使い方に問題はないか ## UIの変更 - トップページのデザイン適用 - [Task1470](https://ndstokyo.sharepoint.com/:f:/r/sites/Piranha/Shared%20Documents/General/OMDS/%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%BC%E3%83%B3%E3%82%B7%E3%83%A7%E3%83%83%E3%83%88/Task1470?csf=1&web=1&e=BgUfMX) ## 動作確認状況 - ローカルで起動してデザイン確認 --- dictation_client/package-lock.json | 1588 +++++------------ dictation_client/package.json | 3 + dictation_client/src/App.tsx | 15 +- dictation_client/src/AppRouter.tsx | 24 +- .../src/assets/images/top-bg04.png | Bin 0 -> 49191 bytes .../src/pages/TopPage/TopPage.module.scss | 272 +++ .../pages/TopPage/TopPage.module.scss.d.ts | 24 + dictation_client/src/pages/TopPage/index.tsx | 58 +- dictation_client/src/styles/GlobalStyle.css | 194 ++ dictation_client/src/styles/GlobalStyle.ts | 5 - dictation_client/src/translation/de.json | 14 +- dictation_client/src/translation/en.json | 14 +- dictation_client/src/translation/es.json | 14 +- dictation_client/src/translation/fr.json | 14 +- dictation_client/vite.config.ts | 3 +- 15 files changed, 1083 insertions(+), 1159 deletions(-) create mode 100644 dictation_client/src/assets/images/top-bg04.png create mode 100644 dictation_client/src/pages/TopPage/TopPage.module.scss create mode 100644 dictation_client/src/pages/TopPage/TopPage.module.scss.d.ts create mode 100644 dictation_client/src/styles/GlobalStyle.css delete mode 100644 dictation_client/src/styles/GlobalStyle.ts diff --git a/dictation_client/package-lock.json b/dictation_client/package-lock.json index f594032..60c0bc2 100644 --- a/dictation_client/package-lock.json +++ b/dictation_client/package-lock.json @@ -21,6 +21,7 @@ "@types/react-router-dom": "^5.3.3", "@types/redux-mock-store": "^1.0.3", "axios": "^0.27.2", + "classnames-generics": "^1.0.9", "eslint-plugin-prefer-arrow": "^1.2.3", "i18next": "^21.10.0", "jwt-decode": "^3.1.2", @@ -35,6 +36,7 @@ "react-router-dom": "^6.4.1", "redux-mock-store": "^1.5.4", "redux-thunk": "^2.4.1", + "sass": "^1.58.3", "styled-components": "^5.3.5", "typescript": "^4.7.4", "web-vitals": "^2.1.4" @@ -67,6 +69,7 @@ "typescript": "^4.7.4", "vite": "^2.9.9", "vite-plugin-env-compatible": "^1.1.1", + "vite-plugin-sass-dts": "^1.3.1", "vite-tsconfig-paths": "^3.5.0" }, "engines": { @@ -556,6 +559,7 @@ }, "node_modules/@eslint/eslintrc": { "version": "1.3.0", + "dev": true, "license": "MIT", "dependencies": { "ajv": "^6.12.4", @@ -574,6 +578,7 @@ }, "node_modules/@eslint/eslintrc/node_modules/globals": { "version": "13.16.0", + "dev": true, "license": "MIT", "dependencies": { "type-fest": "^0.20.2" @@ -587,6 +592,7 @@ }, "node_modules/@humanwhocodes/config-array": { "version": "0.9.5", + "dev": true, "license": "Apache-2.0", "dependencies": { "@humanwhocodes/object-schema": "^1.2.1", @@ -599,6 +605,7 @@ }, "node_modules/@humanwhocodes/object-schema": { "version": "1.2.1", + "dev": true, "license": "BSD-3-Clause" }, "node_modules/@jridgewell/gen-mapping": { @@ -627,32 +634,6 @@ "node": ">=6.0.0" } }, - "node_modules/@jridgewell/source-map": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.2.tgz", - "integrity": "sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==", - "dev": true, - "peer": true, - "dependencies": { - "@jridgewell/gen-mapping": "^0.3.0", - "@jridgewell/trace-mapping": "^0.3.9" - } - }, - "node_modules/@jridgewell/source-map/node_modules/@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", - "dev": true, - "peer": true, - "dependencies": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" - } - }, "node_modules/@jridgewell/sourcemap-codec": { "version": "1.4.14", "license": "MIT" @@ -846,35 +827,6 @@ "version": "4.2.2", "license": "MIT" }, - "node_modules/@types/eslint": { - "version": "8.4.10", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.4.10.tgz", - "integrity": "sha512-Sl/HOqN8NKPmhWo2VBEPm0nvHnu2LL3v9vKo8MEq0EtbJ4eVzGPl41VNPvn5E1i5poMk4/XD8UriLHpJvEP/Nw==", - "dev": true, - "peer": true, - "dependencies": { - "@types/estree": "*", - "@types/json-schema": "*" - } - }, - "node_modules/@types/eslint-scope": { - "version": "3.7.4", - "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz", - "integrity": "sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==", - "dev": true, - "peer": true, - "dependencies": { - "@types/eslint": "*", - "@types/estree": "*" - } - }, - "node_modules/@types/estree": { - "version": "0.0.51", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.51.tgz", - "integrity": "sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==", - "dev": true, - "peer": true - }, "node_modules/@types/history": { "version": "4.7.11", "license": "MIT" @@ -1227,181 +1179,6 @@ "node": ">=12.0.0" } }, - "node_modules/@webassemblyjs/ast": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz", - "integrity": "sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==", - "dev": true, - "peer": true, - "dependencies": { - "@webassemblyjs/helper-numbers": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1" - } - }, - "node_modules/@webassemblyjs/floating-point-hex-parser": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz", - "integrity": "sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ==", - "dev": true, - "peer": true - }, - "node_modules/@webassemblyjs/helper-api-error": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz", - "integrity": "sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg==", - "dev": true, - "peer": true - }, - "node_modules/@webassemblyjs/helper-buffer": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz", - "integrity": "sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA==", - "dev": true, - "peer": true - }, - "node_modules/@webassemblyjs/helper-numbers": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz", - "integrity": "sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ==", - "dev": true, - "peer": true, - "dependencies": { - "@webassemblyjs/floating-point-hex-parser": "1.11.1", - "@webassemblyjs/helper-api-error": "1.11.1", - "@xtuc/long": "4.2.2" - } - }, - "node_modules/@webassemblyjs/helper-wasm-bytecode": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz", - "integrity": "sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q==", - "dev": true, - "peer": true - }, - "node_modules/@webassemblyjs/helper-wasm-section": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz", - "integrity": "sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg==", - "dev": true, - "peer": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-buffer": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/wasm-gen": "1.11.1" - } - }, - "node_modules/@webassemblyjs/ieee754": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz", - "integrity": "sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ==", - "dev": true, - "peer": true, - "dependencies": { - "@xtuc/ieee754": "^1.2.0" - } - }, - "node_modules/@webassemblyjs/leb128": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.1.tgz", - "integrity": "sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw==", - "dev": true, - "peer": true, - "dependencies": { - "@xtuc/long": "4.2.2" - } - }, - "node_modules/@webassemblyjs/utf8": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.1.tgz", - "integrity": "sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ==", - "dev": true, - "peer": true - }, - "node_modules/@webassemblyjs/wasm-edit": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz", - "integrity": "sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA==", - "dev": true, - "peer": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-buffer": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/helper-wasm-section": "1.11.1", - "@webassemblyjs/wasm-gen": "1.11.1", - "@webassemblyjs/wasm-opt": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1", - "@webassemblyjs/wast-printer": "1.11.1" - } - }, - "node_modules/@webassemblyjs/wasm-gen": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz", - "integrity": "sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA==", - "dev": true, - "peer": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/ieee754": "1.11.1", - "@webassemblyjs/leb128": "1.11.1", - "@webassemblyjs/utf8": "1.11.1" - } - }, - "node_modules/@webassemblyjs/wasm-opt": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz", - "integrity": "sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw==", - "dev": true, - "peer": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-buffer": "1.11.1", - "@webassemblyjs/wasm-gen": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1" - } - }, - "node_modules/@webassemblyjs/wasm-parser": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz", - "integrity": "sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA==", - "dev": true, - "peer": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-api-error": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/ieee754": "1.11.1", - "@webassemblyjs/leb128": "1.11.1", - "@webassemblyjs/utf8": "1.11.1" - } - }, - "node_modules/@webassemblyjs/wast-printer": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz", - "integrity": "sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg==", - "dev": true, - "peer": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@xtuc/long": "4.2.2" - } - }, - "node_modules/@xtuc/ieee754": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", - "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", - "dev": true, - "peer": true - }, - "node_modules/@xtuc/long": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", - "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", - "dev": true, - "peer": true - }, "node_modules/abbrev": { "version": "1.1.1", "dev": true, @@ -1409,6 +1186,7 @@ }, "node_modules/acorn": { "version": "8.7.1", + "dev": true, "license": "MIT", "bin": { "acorn": "bin/acorn" @@ -1417,18 +1195,9 @@ "node": ">=0.4.0" } }, - "node_modules/acorn-import-assertions": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz", - "integrity": "sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==", - "dev": true, - "peer": true, - "peerDependencies": { - "acorn": "^8" - } - }, "node_modules/acorn-jsx": { "version": "5.3.2", + "dev": true, "license": "MIT", "peerDependencies": { "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" @@ -1436,6 +1205,7 @@ }, "node_modules/ajv": { "version": "6.12.6", + "dev": true, "license": "MIT", "dependencies": { "fast-deep-equal": "^3.1.1", @@ -1476,8 +1246,21 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, "node_modules/argparse": { "version": "2.0.1", + "dev": true, "license": "Python-2.0" }, "node_modules/aria-query": { @@ -1743,6 +1526,7 @@ }, "node_modules/balanced-match": { "version": "1.0.2", + "dev": true, "license": "MIT" }, "node_modules/big.js": { @@ -1753,8 +1537,17 @@ "node": "*" } }, + "node_modules/binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "engines": { + "node": ">=8" + } + }, "node_modules/brace-expansion": { "version": "1.1.11", + "dev": true, "license": "MIT", "dependencies": { "balanced-match": "^1.0.0", @@ -1763,7 +1556,6 @@ }, "node_modules/braces": { "version": "3.0.2", - "dev": true, "license": "MIT", "dependencies": { "fill-range": "^7.0.1" @@ -1799,13 +1591,6 @@ "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" } }, - "node_modules/buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "dev": true, - "peer": true - }, "node_modules/call-bind": { "version": "1.0.2", "dev": true, @@ -1820,11 +1605,21 @@ }, "node_modules/callsites": { "version": "3.1.0", + "dev": true, "license": "MIT", "engines": { "node": ">=6" } }, + "node_modules/camelcase-css": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", + "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, "node_modules/camelize": { "version": "1.0.0", "license": "MIT" @@ -1858,13 +1653,54 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/chrome-trace-event": { - "version": "1.0.3", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, "engines": { - "node": ">=6.0" + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/chokidar/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/classnames": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.3.2.tgz", + "integrity": "sha512-CSbhY4cFEJRe6/GQzIk5qXZ4Jeg5pcsP7b5peFSDpffpe1cqjASH/n9UTjBwOp6XpMSTwQ8Za2K5V02ueA7Tmw==" + }, + "node_modules/classnames-generics": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/classnames-generics/-/classnames-generics-1.0.9.tgz", + "integrity": "sha512-PjfZMXwB+zdq/UBNK3RKggH4l4OsqytmlvVAgsreIDYyL/TKXfijQpVK/Rwn/YGRp4dblGeF7bsdPIhaiQxjYA==", + "dependencies": { + "classnames": "^2.3.2" } }, "node_modules/color-convert": { @@ -1891,13 +1727,6 @@ "node": ">= 0.8" } }, - "node_modules/commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true, - "peer": true - }, "node_modules/commondir": { "version": "1.0.1", "dev": true, @@ -1911,6 +1740,7 @@ }, "node_modules/concat-map": { "version": "0.0.1", + "dev": true, "license": "MIT" }, "node_modules/confusing-browser-globals": { @@ -1938,6 +1768,7 @@ }, "node_modules/cross-spawn": { "version": "7.0.3", + "dev": true, "license": "MIT", "dependencies": { "path-key": "^3.1.0", @@ -2015,6 +1846,7 @@ }, "node_modules/deep-is": { "version": "0.1.4", + "dev": true, "license": "MIT" }, "node_modules/define-properties": { @@ -2068,6 +1900,7 @@ }, "node_modules/doctrine": { "version": "3.0.0", + "dev": true, "license": "Apache-2.0", "dependencies": { "esutils": "^2.0.2" @@ -2098,20 +1931,6 @@ "node": ">= 4" } }, - "node_modules/enhanced-resolve": { - "version": "5.12.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.12.0.tgz", - "integrity": "sha512-QHTXI/sZQmko1cbDoNAa3mJ5qhWUUNAq3vR0/YiD379fWQrcfuoX1+HW2S0MTt7XmoPLapdaDKUtelUSPic7hQ==", - "dev": true, - "peer": true, - "dependencies": { - "graceful-fs": "^4.2.4", - "tapable": "^2.2.0" - }, - "engines": { - "node": ">=10.13.0" - } - }, "node_modules/es-abstract": { "version": "1.20.1", "dev": true, @@ -2148,13 +1967,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/es-module-lexer": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz", - "integrity": "sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==", - "dev": true, - "peer": true - }, "node_modules/es-shim-unscopables": { "version": "1.0.0", "dev": true, @@ -2245,6 +2057,7 @@ }, "node_modules/eslint": { "version": "8.19.0", + "dev": true, "license": "MIT", "dependencies": { "@eslint/eslintrc": "^1.3.0", @@ -2569,6 +2382,7 @@ }, "node_modules/eslint-utils": { "version": "3.0.0", + "dev": true, "license": "MIT", "dependencies": { "eslint-visitor-keys": "^2.0.0" @@ -2585,6 +2399,7 @@ }, "node_modules/eslint-utils/node_modules/eslint-visitor-keys": { "version": "2.1.0", + "dev": true, "license": "Apache-2.0", "engines": { "node": ">=10" @@ -2592,6 +2407,7 @@ }, "node_modules/eslint-visitor-keys": { "version": "3.3.0", + "dev": true, "license": "Apache-2.0", "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -2599,6 +2415,7 @@ }, "node_modules/eslint/node_modules/escape-string-regexp": { "version": "4.0.0", + "dev": true, "license": "MIT", "engines": { "node": ">=10" @@ -2609,6 +2426,7 @@ }, "node_modules/eslint/node_modules/eslint-scope": { "version": "7.1.1", + "dev": true, "license": "BSD-2-Clause", "dependencies": { "esrecurse": "^4.3.0", @@ -2620,6 +2438,7 @@ }, "node_modules/eslint/node_modules/globals": { "version": "13.16.0", + "dev": true, "license": "MIT", "dependencies": { "type-fest": "^0.20.2" @@ -2633,6 +2452,7 @@ }, "node_modules/espree": { "version": "9.3.2", + "dev": true, "license": "BSD-2-Clause", "dependencies": { "acorn": "^8.7.1", @@ -2645,6 +2465,7 @@ }, "node_modules/esquery": { "version": "1.4.0", + "dev": true, "license": "BSD-3-Clause", "dependencies": { "estraverse": "^5.1.0" @@ -2655,6 +2476,7 @@ }, "node_modules/esrecurse": { "version": "4.3.0", + "dev": true, "license": "BSD-2-Clause", "dependencies": { "estraverse": "^5.2.0" @@ -2665,6 +2487,7 @@ }, "node_modules/estraverse": { "version": "5.3.0", + "dev": true, "license": "BSD-2-Clause", "engines": { "node": ">=4.0" @@ -2677,23 +2500,15 @@ }, "node_modules/esutils": { "version": "2.0.3", + "dev": true, "license": "BSD-2-Clause", "engines": { "node": ">=0.10.0" } }, - "node_modules/events": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", - "dev": true, - "peer": true, - "engines": { - "node": ">=0.8.x" - } - }, "node_modules/fast-deep-equal": { "version": "3.1.3", + "dev": true, "license": "MIT" }, "node_modules/fast-diff": { @@ -2729,10 +2544,12 @@ }, "node_modules/fast-json-stable-stringify": { "version": "2.1.0", + "dev": true, "license": "MIT" }, "node_modules/fast-levenshtein": { "version": "2.0.6", + "dev": true, "license": "MIT" }, "node_modules/fastq": { @@ -2745,6 +2562,7 @@ }, "node_modules/file-entry-cache": { "version": "6.0.1", + "dev": true, "license": "MIT", "dependencies": { "flat-cache": "^3.0.4" @@ -2755,7 +2573,6 @@ }, "node_modules/fill-range": { "version": "7.0.1", - "dev": true, "license": "MIT", "dependencies": { "to-regex-range": "^5.0.1" @@ -2777,6 +2594,7 @@ }, "node_modules/flat-cache": { "version": "3.0.4", + "dev": true, "license": "MIT", "dependencies": { "flatted": "^3.1.0", @@ -2788,6 +2606,7 @@ }, "node_modules/flatted": { "version": "3.2.6", + "dev": true, "license": "ISC" }, "node_modules/follow-redirects": { @@ -2822,8 +2641,22 @@ }, "node_modules/fs.realpath": { "version": "1.0.0", + "dev": true, "license": "ISC" }, + "node_modules/fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, "node_modules/function-bind": { "version": "1.1.1", "dev": true, @@ -2848,6 +2681,7 @@ }, "node_modules/functional-red-black-tree": { "version": "1.0.1", + "dev": true, "license": "MIT" }, "node_modules/functions-have-names": { @@ -2896,6 +2730,7 @@ }, "node_modules/glob": { "version": "7.2.3", + "dev": true, "license": "ISC", "dependencies": { "fs.realpath": "^1.0.0", @@ -2914,6 +2749,7 @@ }, "node_modules/glob-parent": { "version": "6.0.2", + "dev": true, "license": "ISC", "dependencies": { "is-glob": "^4.0.3" @@ -2926,13 +2762,6 @@ "version": "0.3.2", "dev": true }, - "node_modules/glob-to-regexp": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", - "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", - "dev": true, - "peer": true - }, "node_modules/globals": { "version": "11.12.0", "license": "MIT", @@ -3079,6 +2908,7 @@ }, "node_modules/ignore": { "version": "5.2.0", + "dev": true, "license": "MIT", "engines": { "node": ">= 4" @@ -3092,8 +2922,14 @@ "url": "https://opencollective.com/immer" } }, + "node_modules/immutable": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.2.4.tgz", + "integrity": "sha512-WDxL3Hheb1JkRN3sQkyujNlL/xRjAo3rJtaU5xeufUauG66JdMr32bLj4gF+vWl84DIA3Zxw7tiAjneYzRRw+w==" + }, "node_modules/import-fresh": { "version": "3.3.0", + "dev": true, "license": "MIT", "dependencies": { "parent-module": "^1.0.0", @@ -3108,6 +2944,7 @@ }, "node_modules/import-fresh/node_modules/resolve-from": { "version": "4.0.0", + "dev": true, "license": "MIT", "engines": { "node": ">=4" @@ -3115,6 +2952,7 @@ }, "node_modules/imurmurhash": { "version": "0.1.4", + "dev": true, "license": "MIT", "engines": { "node": ">=0.8.19" @@ -3129,6 +2967,7 @@ }, "node_modules/inflight": { "version": "1.0.6", + "dev": true, "license": "ISC", "dependencies": { "once": "^1.3.0", @@ -3163,6 +3002,17 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/is-boolean-object": { "version": "1.1.2", "dev": true, @@ -3244,7 +3094,6 @@ }, "node_modules/is-number": { "version": "7.0.0", - "dev": true, "license": "MIT", "engines": { "node": ">=0.12.0" @@ -3331,6 +3180,7 @@ }, "node_modules/isexe": { "version": "2.0.0", + "dev": true, "license": "ISC" }, "node_modules/jest-diff": { @@ -3366,43 +3216,13 @@ "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", - "dev": true, - "peer": true, - "dependencies": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/jest-worker/node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - "dev": true, - "peer": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" - } - }, "node_modules/js-tokens": { "version": "4.0.0", "license": "MIT" }, "node_modules/js-yaml": { "version": "4.1.0", + "dev": true, "license": "MIT", "dependencies": { "argparse": "^2.0.1" @@ -3428,10 +3248,12 @@ }, "node_modules/json-schema-traverse": { "version": "0.4.1", + "dev": true, "license": "MIT" }, "node_modules/json-stable-stringify-without-jsonify": { "version": "1.0.1", + "dev": true, "license": "MIT" }, "node_modules/json5": { @@ -3478,6 +3300,7 @@ }, "node_modules/levn": { "version": "0.4.1", + "dev": true, "license": "MIT", "dependencies": { "prelude-ls": "^1.2.1", @@ -3579,16 +3402,6 @@ "node": ">=4" } }, - "node_modules/loader-runner": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", - "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", - "dev": true, - "peer": true, - "engines": { - "node": ">=6.11.5" - } - }, "node_modules/loader-utils": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", @@ -3627,6 +3440,7 @@ }, "node_modules/lodash.merge": { "version": "4.6.2", + "dev": true, "license": "MIT" }, "node_modules/loose-envify": { @@ -3665,13 +3479,6 @@ "lz-string": "bin/bin.js" } }, - "node_modules/merge-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", - "dev": true, - "peer": true - }, "node_modules/merge2": { "version": "1.4.1", "dev": true, @@ -3718,6 +3525,7 @@ }, "node_modules/minimatch": { "version": "3.1.2", + "dev": true, "license": "ISC", "dependencies": { "brace-expansion": "^1.1.7" @@ -3759,14 +3567,8 @@ }, "node_modules/natural-compare": { "version": "1.4.0", - "license": "MIT" - }, - "node_modules/neo-async": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", - "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", "dev": true, - "peer": true + "license": "MIT" }, "node_modules/node-releases": { "version": "2.0.5", @@ -3804,6 +3606,14 @@ "semver": "bin/semver" } }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/npm-normalize-package-bin": { "version": "1.0.1", "dev": true, @@ -3908,6 +3718,7 @@ }, "node_modules/once": { "version": "1.4.0", + "dev": true, "license": "ISC", "dependencies": { "wrappy": "1" @@ -3915,6 +3726,7 @@ }, "node_modules/optionator": { "version": "0.9.1", + "dev": true, "license": "MIT", "dependencies": { "deep-is": "^0.1.3", @@ -3985,6 +3797,7 @@ }, "node_modules/parent-module": { "version": "1.0.1", + "dev": true, "license": "MIT", "dependencies": { "callsites": "^3.0.0" @@ -4003,6 +3816,7 @@ }, "node_modules/path-is-absolute": { "version": "1.0.1", + "dev": true, "license": "MIT", "engines": { "node": ">=0.10.0" @@ -4010,6 +3824,7 @@ }, "node_modules/path-key": { "version": "3.1.1", + "dev": true, "license": "MIT", "engines": { "node": ">=8" @@ -4066,12 +3881,32 @@ "node": "^10 || ^12 || >=14" } }, + "node_modules/postcss-js": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.1.tgz", + "integrity": "sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==", + "dev": true, + "dependencies": { + "camelcase-css": "^2.0.1" + }, + "engines": { + "node": "^12 || ^14 || >= 16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + "peerDependencies": { + "postcss": "^8.4.21" + } + }, "node_modules/postcss-value-parser": { "version": "4.2.0", "license": "MIT" }, "node_modules/prelude-ls": { "version": "1.2.1", + "dev": true, "license": "MIT", "engines": { "node": ">= 0.8.0" @@ -4143,6 +3978,7 @@ }, "node_modules/punycode": { "version": "2.1.1", + "dev": true, "license": "MIT", "engines": { "node": ">=6" @@ -4167,16 +4003,6 @@ ], "license": "MIT" }, - "node_modules/randombytes": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", - "dev": true, - "peer": true, - "dependencies": { - "safe-buffer": "^5.1.0" - } - }, "node_modules/react": { "version": "18.2.0", "license": "MIT", @@ -4367,6 +4193,17 @@ "once": "^1.3.0" } }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, "node_modules/recrawl-sync": { "version": "2.2.2", "dev": true, @@ -4439,6 +4276,7 @@ }, "node_modules/regexpp": { "version": "3.2.0", + "dev": true, "license": "MIT", "engines": { "node": ">=8" @@ -4478,6 +4316,7 @@ }, "node_modules/rimraf": { "version": "3.0.2", + "dev": true, "license": "ISC", "dependencies": { "glob": "^7.1.3" @@ -4530,6 +4369,22 @@ "dev": true, "license": "MIT" }, + "node_modules/sass": { + "version": "1.58.3", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.58.3.tgz", + "integrity": "sha512-Q7RaEtYf6BflYrQ+buPudKR26/lH+10EmO9bBqbmPh/KeLqv8bjpTNqxe71ocONqXq+jYiCbpPUmQMS+JJPk4A==", + "dependencies": { + "chokidar": ">=3.0.0 <4.0.0", + "immutable": "^4.0.0", + "source-map-js": ">=0.6.2 <2.0.0" + }, + "bin": { + "sass": "sass.js" + }, + "engines": { + "node": ">=12.0.0" + } + }, "node_modules/scheduler": { "version": "0.23.0", "license": "MIT", @@ -4562,22 +4417,13 @@ "semver": "bin/semver.js" } }, - "node_modules/serialize-javascript": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz", - "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==", - "dev": true, - "peer": true, - "dependencies": { - "randombytes": "^2.1.0" - } - }, "node_modules/shallowequal": { "version": "1.1.0", "license": "MIT" }, "node_modules/shebang-command": { "version": "2.0.0", + "dev": true, "license": "MIT", "dependencies": { "shebang-regex": "^3.0.0" @@ -4588,6 +4434,7 @@ }, "node_modules/shebang-regex": { "version": "3.0.0", + "dev": true, "license": "MIT", "engines": { "node": ">=8" @@ -4631,7 +4478,6 @@ }, "node_modules/source-map-js": { "version": "1.0.2", - "dev": true, "license": "BSD-3-Clause", "engines": { "node": ">=0.10.0" @@ -4645,17 +4491,6 @@ "decode-uri-component": "^0.2.0" } }, - "node_modules/source-map-support": { - "version": "0.5.21", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", - "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", - "dev": true, - "peer": true, - "dependencies": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, "node_modules/spdx-compare": { "version": "1.0.0", "dev": true, @@ -4755,6 +4590,7 @@ }, "node_modules/strip-ansi": { "version": "6.0.1", + "dev": true, "license": "MIT", "dependencies": { "ansi-regex": "^5.0.1" @@ -4775,6 +4611,7 @@ }, "node_modules/strip-json-comments": { "version": "3.1.1", + "dev": true, "license": "MIT", "engines": { "node": ">=8" @@ -4857,91 +4694,9 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/tapable": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", - "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", - "dev": true, - "peer": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/terser": { - "version": "5.16.1", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.16.1.tgz", - "integrity": "sha512-xvQfyfA1ayT0qdK47zskQgRZeWLoOQ8JQ6mIgRGVNwZKdQMU+5FkCBjmv4QjcrTzyZquRw2FVtlJSRUmMKQslw==", - "dev": true, - "peer": true, - "dependencies": { - "@jridgewell/source-map": "^0.3.2", - "acorn": "^8.5.0", - "commander": "^2.20.0", - "source-map-support": "~0.5.20" - }, - "bin": { - "terser": "bin/terser" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/terser-webpack-plugin": { - "version": "5.3.6", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.6.tgz", - "integrity": "sha512-kfLFk+PoLUQIbLmB1+PZDMRSZS99Mp+/MHqDNmMA6tOItzRt+Npe3E+fsMs5mfcM0wCtrrdU387UnV+vnSffXQ==", - "dev": true, - "peer": true, - "dependencies": { - "@jridgewell/trace-mapping": "^0.3.14", - "jest-worker": "^27.4.5", - "schema-utils": "^3.1.1", - "serialize-javascript": "^6.0.0", - "terser": "^5.14.1" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.1.0" - }, - "peerDependenciesMeta": { - "@swc/core": { - "optional": true - }, - "esbuild": { - "optional": true - }, - "uglify-js": { - "optional": true - } - } - }, - "node_modules/terser-webpack-plugin/node_modules/schema-utils": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", - "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", - "dev": true, - "peer": true, - "dependencies": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, "node_modules/text-table": { "version": "0.2.0", + "dev": true, "license": "MIT" }, "node_modules/to-fast-properties": { @@ -4953,7 +4708,6 @@ }, "node_modules/to-regex-range": { "version": "5.0.1", - "dev": true, "license": "MIT", "dependencies": { "is-number": "^7.0.0" @@ -5022,6 +4776,7 @@ }, "node_modules/type-check": { "version": "0.4.0", + "dev": true, "license": "MIT", "dependencies": { "prelude-ls": "^1.2.1" @@ -5032,6 +4787,7 @@ }, "node_modules/type-fest": { "version": "0.20.2", + "dev": true, "license": "(MIT OR CC0-1.0)", "engines": { "node": ">=10" @@ -5093,6 +4849,7 @@ }, "node_modules/uri-js": { "version": "4.4.1", + "dev": true, "license": "BSD-2-Clause", "dependencies": { "punycode": "^2.1.0" @@ -5112,6 +4869,7 @@ }, "node_modules/v8-compile-cache": { "version": "2.3.0", + "dev": true, "license": "MIT" }, "node_modules/validate-npm-package-license": { @@ -5164,6 +4922,24 @@ "dev": true, "license": "MIT" }, + "node_modules/vite-plugin-sass-dts": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/vite-plugin-sass-dts/-/vite-plugin-sass-dts-1.3.1.tgz", + "integrity": "sha512-GmyXQ1PYTunOQ3LWZ1fnIQ9XNiVCDkyHRXH12XeCnJspu0LEQ4ZJKM4EdpUe+/8juuNUSb8rHzp9SwotXz7gyA==", + "dev": true, + "dependencies": { + "postcss-js": "^4.0.1" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "peerDependencies": { + "postcss": "^8", + "prettier": "^2.7", + "sass": "*", + "vite": "^3 || ^4" + } + }, "node_modules/vite-tsconfig-paths": { "version": "3.5.0", "dev": true, @@ -5204,103 +4980,13 @@ "node": ">=0.10.0" } }, - "node_modules/watchpack": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", - "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", - "dev": true, - "peer": true, - "dependencies": { - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.1.2" - }, - "engines": { - "node": ">=10.13.0" - } - }, "node_modules/web-vitals": { "version": "2.1.4", "license": "Apache-2.0" }, - "node_modules/webpack": { - "version": "5.75.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.75.0.tgz", - "integrity": "sha512-piaIaoVJlqMsPtX/+3KTTO6jfvrSYgauFVdt8cr9LTHKmcq/AMd4mhzsiP7ZF/PGRNPGA8336jldh9l2Kt2ogQ==", - "dev": true, - "peer": true, - "dependencies": { - "@types/eslint-scope": "^3.7.3", - "@types/estree": "^0.0.51", - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/wasm-edit": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1", - "acorn": "^8.7.1", - "acorn-import-assertions": "^1.7.6", - "browserslist": "^4.14.5", - "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.10.0", - "es-module-lexer": "^0.9.0", - "eslint-scope": "5.1.1", - "events": "^3.2.0", - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.2.9", - "json-parse-even-better-errors": "^2.3.1", - "loader-runner": "^4.2.0", - "mime-types": "^2.1.27", - "neo-async": "^2.6.2", - "schema-utils": "^3.1.0", - "tapable": "^2.1.1", - "terser-webpack-plugin": "^5.1.3", - "watchpack": "^2.4.0", - "webpack-sources": "^3.2.3" - }, - "bin": { - "webpack": "bin/webpack.js" - }, - "engines": { - "node": ">=10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependenciesMeta": { - "webpack-cli": { - "optional": true - } - } - }, - "node_modules/webpack-sources": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", - "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", - "dev": true, - "peer": true, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/webpack/node_modules/schema-utils": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", - "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", - "dev": true, - "peer": true, - "dependencies": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, "node_modules/which": { "version": "2.0.2", + "dev": true, "license": "ISC", "dependencies": { "isexe": "^2.0.0" @@ -5329,6 +5015,7 @@ }, "node_modules/word-wrap": { "version": "1.2.3", + "dev": true, "license": "MIT", "engines": { "node": ">=0.10.0" @@ -5336,6 +5023,7 @@ }, "node_modules/wrappy": { "version": "1.0.2", + "dev": true, "license": "ISC" }, "node_modules/yallist": { @@ -5369,8 +5057,7 @@ "@azure/msal-react": { "version": "1.5.3", "resolved": "https://registry.npmjs.org/@azure/msal-react/-/msal-react-1.5.3.tgz", - "integrity": "sha512-PIbksHzNDzEA8iV9BGiKTdxNZVryvJ4CZ/sFhuqX87I5xbCbcxF/oz6iv1qWqtHAeovUigARBZPw7lQOUVsQmg==", - "requires": {} + "integrity": "sha512-PIbksHzNDzEA8iV9BGiKTdxNZVryvJ4CZ/sFhuqX87I5xbCbcxF/oz6iv1qWqtHAeovUigARBZPw7lQOUVsQmg==" }, "@babel/code-frame": { "version": "7.18.6", @@ -5649,6 +5336,7 @@ }, "@eslint/eslintrc": { "version": "1.3.0", + "dev": true, "requires": { "ajv": "^6.12.4", "debug": "^4.3.2", @@ -5663,6 +5351,7 @@ "dependencies": { "globals": { "version": "13.16.0", + "dev": true, "requires": { "type-fest": "^0.20.2" } @@ -5671,6 +5360,7 @@ }, "@humanwhocodes/config-array": { "version": "0.9.5", + "dev": true, "requires": { "@humanwhocodes/object-schema": "^1.2.1", "debug": "^4.1.1", @@ -5678,7 +5368,8 @@ } }, "@humanwhocodes/object-schema": { - "version": "1.2.1" + "version": "1.2.1", + "dev": true }, "@jridgewell/gen-mapping": { "version": "0.1.1", @@ -5694,31 +5385,6 @@ "@jridgewell/set-array": { "version": "1.1.2" }, - "@jridgewell/source-map": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.2.tgz", - "integrity": "sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==", - "dev": true, - "peer": true, - "requires": { - "@jridgewell/gen-mapping": "^0.3.0", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "dependencies": { - "@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", - "dev": true, - "peer": true, - "requires": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - } - } - } - }, "@jridgewell/sourcemap-codec": { "version": "1.4.14" }, @@ -5833,41 +5499,11 @@ } }, "@testing-library/user-event": { - "version": "14.2.1", - "requires": {} + "version": "14.2.1" }, "@types/aria-query": { "version": "4.2.2" }, - "@types/eslint": { - "version": "8.4.10", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.4.10.tgz", - "integrity": "sha512-Sl/HOqN8NKPmhWo2VBEPm0nvHnu2LL3v9vKo8MEq0EtbJ4eVzGPl41VNPvn5E1i5poMk4/XD8UriLHpJvEP/Nw==", - "dev": true, - "peer": true, - "requires": { - "@types/estree": "*", - "@types/json-schema": "*" - } - }, - "@types/eslint-scope": { - "version": "3.7.4", - "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz", - "integrity": "sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==", - "dev": true, - "peer": true, - "requires": { - "@types/eslint": "*", - "@types/estree": "*" - } - }, - "@types/estree": { - "version": "0.0.51", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.51.tgz", - "integrity": "sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==", - "dev": true, - "peer": true - }, "@types/history": { "version": "4.7.11" }, @@ -6094,202 +5730,21 @@ "resolve": "^1.22.0" } }, - "@webassemblyjs/ast": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz", - "integrity": "sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==", - "dev": true, - "peer": true, - "requires": { - "@webassemblyjs/helper-numbers": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1" - } - }, - "@webassemblyjs/floating-point-hex-parser": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz", - "integrity": "sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ==", - "dev": true, - "peer": true - }, - "@webassemblyjs/helper-api-error": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz", - "integrity": "sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg==", - "dev": true, - "peer": true - }, - "@webassemblyjs/helper-buffer": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz", - "integrity": "sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA==", - "dev": true, - "peer": true - }, - "@webassemblyjs/helper-numbers": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz", - "integrity": "sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ==", - "dev": true, - "peer": true, - "requires": { - "@webassemblyjs/floating-point-hex-parser": "1.11.1", - "@webassemblyjs/helper-api-error": "1.11.1", - "@xtuc/long": "4.2.2" - } - }, - "@webassemblyjs/helper-wasm-bytecode": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz", - "integrity": "sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q==", - "dev": true, - "peer": true - }, - "@webassemblyjs/helper-wasm-section": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz", - "integrity": "sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg==", - "dev": true, - "peer": true, - "requires": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-buffer": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/wasm-gen": "1.11.1" - } - }, - "@webassemblyjs/ieee754": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz", - "integrity": "sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ==", - "dev": true, - "peer": true, - "requires": { - "@xtuc/ieee754": "^1.2.0" - } - }, - "@webassemblyjs/leb128": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.1.tgz", - "integrity": "sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw==", - "dev": true, - "peer": true, - "requires": { - "@xtuc/long": "4.2.2" - } - }, - "@webassemblyjs/utf8": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.1.tgz", - "integrity": "sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ==", - "dev": true, - "peer": true - }, - "@webassemblyjs/wasm-edit": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz", - "integrity": "sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA==", - "dev": true, - "peer": true, - "requires": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-buffer": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/helper-wasm-section": "1.11.1", - "@webassemblyjs/wasm-gen": "1.11.1", - "@webassemblyjs/wasm-opt": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1", - "@webassemblyjs/wast-printer": "1.11.1" - } - }, - "@webassemblyjs/wasm-gen": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz", - "integrity": "sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA==", - "dev": true, - "peer": true, - "requires": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/ieee754": "1.11.1", - "@webassemblyjs/leb128": "1.11.1", - "@webassemblyjs/utf8": "1.11.1" - } - }, - "@webassemblyjs/wasm-opt": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz", - "integrity": "sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw==", - "dev": true, - "peer": true, - "requires": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-buffer": "1.11.1", - "@webassemblyjs/wasm-gen": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1" - } - }, - "@webassemblyjs/wasm-parser": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz", - "integrity": "sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA==", - "dev": true, - "peer": true, - "requires": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-api-error": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/ieee754": "1.11.1", - "@webassemblyjs/leb128": "1.11.1", - "@webassemblyjs/utf8": "1.11.1" - } - }, - "@webassemblyjs/wast-printer": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz", - "integrity": "sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg==", - "dev": true, - "peer": true, - "requires": { - "@webassemblyjs/ast": "1.11.1", - "@xtuc/long": "4.2.2" - } - }, - "@xtuc/ieee754": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", - "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", - "dev": true, - "peer": true - }, - "@xtuc/long": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", - "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", - "dev": true, - "peer": true - }, "abbrev": { "version": "1.1.1", "dev": true }, "acorn": { - "version": "8.7.1" - }, - "acorn-import-assertions": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz", - "integrity": "sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==", - "dev": true, - "peer": true, - "requires": {} + "version": "8.7.1", + "dev": true }, "acorn-jsx": { "version": "5.3.2", - "requires": {} + "dev": true }, "ajv": { "version": "6.12.6", + "dev": true, "requires": { "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", @@ -6299,8 +5754,7 @@ }, "ajv-keywords": { "version": "3.5.2", - "dev": true, - "requires": {} + "dev": true }, "ansi-regex": { "version": "5.0.1" @@ -6311,8 +5765,18 @@ "color-convert": "^2.0.1" } }, + "anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "requires": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + } + }, "argparse": { - "version": "2.0.1" + "version": "2.0.1", + "dev": true }, "aria-query": { "version": "5.0.0" @@ -6471,14 +5935,21 @@ "version": "6.18.0" }, "balanced-match": { - "version": "1.0.2" + "version": "1.0.2", + "dev": true }, "big.js": { "version": "5.2.2", "dev": true }, + "binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==" + }, "brace-expansion": { "version": "1.1.11", + "dev": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -6486,7 +5957,6 @@ }, "braces": { "version": "3.0.2", - "dev": true, "requires": { "fill-range": "^7.0.1" } @@ -6501,13 +5971,6 @@ "update-browserslist-db": "^1.0.4" } }, - "buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "dev": true, - "peer": true - }, "call-bind": { "version": "1.0.2", "dev": true, @@ -6517,7 +5980,14 @@ } }, "callsites": { - "version": "3.1.0" + "version": "3.1.0", + "dev": true + }, + "camelcase-css": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", + "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==", + "dev": true }, "camelize": { "version": "1.0.0" @@ -6533,10 +6003,43 @@ "supports-color": "^7.1.0" } }, - "chrome-trace-event": { - "version": "1.0.3", - "dev": true, - "peer": true + "chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "requires": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "fsevents": "~2.3.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "dependencies": { + "glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "requires": { + "is-glob": "^4.0.1" + } + } + } + }, + "classnames": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.3.2.tgz", + "integrity": "sha512-CSbhY4cFEJRe6/GQzIk5qXZ4Jeg5pcsP7b5peFSDpffpe1cqjASH/n9UTjBwOp6XpMSTwQ8Za2K5V02ueA7Tmw==" + }, + "classnames-generics": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/classnames-generics/-/classnames-generics-1.0.9.tgz", + "integrity": "sha512-PjfZMXwB+zdq/UBNK3RKggH4l4OsqytmlvVAgsreIDYyL/TKXfijQpVK/Rwn/YGRp4dblGeF7bsdPIhaiQxjYA==", + "requires": { + "classnames": "^2.3.2" + } }, "color-convert": { "version": "2.0.1", @@ -6553,13 +6056,6 @@ "delayed-stream": "~1.0.0" } }, - "commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true, - "peer": true - }, "commondir": { "version": "1.0.1", "dev": true @@ -6571,7 +6067,8 @@ "dev": true }, "concat-map": { - "version": "0.0.1" + "version": "0.0.1", + "dev": true }, "confusing-browser-globals": { "version": "1.0.11", @@ -6590,6 +6087,7 @@ }, "cross-spawn": { "version": "7.0.3", + "dev": true, "requires": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", @@ -6638,7 +6136,8 @@ "integrity": "sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==" }, "deep-is": { - "version": "0.1.4" + "version": "0.1.4", + "dev": true }, "define-properties": { "version": "1.1.4", @@ -6671,6 +6170,7 @@ }, "doctrine": { "version": "3.0.0", + "dev": true, "requires": { "esutils": "^2.0.2" } @@ -6690,17 +6190,6 @@ "version": "3.0.0", "dev": true }, - "enhanced-resolve": { - "version": "5.12.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.12.0.tgz", - "integrity": "sha512-QHTXI/sZQmko1cbDoNAa3mJ5qhWUUNAq3vR0/YiD379fWQrcfuoX1+HW2S0MTt7XmoPLapdaDKUtelUSPic7hQ==", - "dev": true, - "peer": true, - "requires": { - "graceful-fs": "^4.2.4", - "tapable": "^2.2.0" - } - }, "es-abstract": { "version": "1.20.1", "dev": true, @@ -6730,13 +6219,6 @@ "unbox-primitive": "^1.0.2" } }, - "es-module-lexer": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz", - "integrity": "sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==", - "dev": true, - "peer": true - }, "es-shim-unscopables": { "version": "1.0.0", "dev": true, @@ -6793,6 +6275,7 @@ }, "eslint": { "version": "8.19.0", + "dev": true, "requires": { "@eslint/eslintrc": "^1.3.0", "@humanwhocodes/config-array": "^0.9.2", @@ -6832,10 +6315,12 @@ }, "dependencies": { "escape-string-regexp": { - "version": "4.0.0" + "version": "4.0.0", + "dev": true }, "eslint-scope": { "version": "7.1.1", + "dev": true, "requires": { "esrecurse": "^4.3.0", "estraverse": "^5.2.0" @@ -6843,6 +6328,7 @@ }, "globals": { "version": "13.16.0", + "dev": true, "requires": { "type-fest": "^0.20.2" } @@ -6870,8 +6356,7 @@ }, "eslint-config-prettier": { "version": "8.5.0", - "dev": true, - "requires": {} + "dev": true }, "eslint-import-resolver-node": { "version": "0.3.6", @@ -6967,8 +6452,7 @@ "eslint-plugin-prefer-arrow": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/eslint-plugin-prefer-arrow/-/eslint-plugin-prefer-arrow-1.2.3.tgz", - "integrity": "sha512-J9I5PKCOJretVuiZRGvPQxCbllxGAV/viI20JO3LYblAodofBxyMnZAJ+WGeClHgANnSJberTNoFWWjrWKBuXQ==", - "requires": {} + "integrity": "sha512-J9I5PKCOJretVuiZRGvPQxCbllxGAV/viI20JO3LYblAodofBxyMnZAJ+WGeClHgANnSJberTNoFWWjrWKBuXQ==" }, "eslint-plugin-prettier": { "version": "4.2.1", @@ -7017,8 +6501,7 @@ }, "eslint-plugin-react-hooks": { "version": "4.6.0", - "dev": true, - "requires": {} + "dev": true }, "eslint-scope": { "version": "5.1.1", @@ -7036,20 +6519,24 @@ }, "eslint-utils": { "version": "3.0.0", + "dev": true, "requires": { "eslint-visitor-keys": "^2.0.0" }, "dependencies": { "eslint-visitor-keys": { - "version": "2.1.0" + "version": "2.1.0", + "dev": true } } }, "eslint-visitor-keys": { - "version": "3.3.0" + "version": "3.3.0", + "dev": true }, "espree": { "version": "9.3.2", + "dev": true, "requires": { "acorn": "^8.7.1", "acorn-jsx": "^5.3.2", @@ -7058,35 +6545,33 @@ }, "esquery": { "version": "1.4.0", + "dev": true, "requires": { "estraverse": "^5.1.0" } }, "esrecurse": { "version": "4.3.0", + "dev": true, "requires": { "estraverse": "^5.2.0" } }, "estraverse": { - "version": "5.3.0" + "version": "5.3.0", + "dev": true }, "estree-walker": { "version": "2.0.2", "dev": true }, "esutils": { - "version": "2.0.3" - }, - "events": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", - "dev": true, - "peer": true + "version": "2.0.3", + "dev": true }, "fast-deep-equal": { - "version": "3.1.3" + "version": "3.1.3", + "dev": true }, "fast-diff": { "version": "1.2.0", @@ -7113,10 +6598,12 @@ } }, "fast-json-stable-stringify": { - "version": "2.1.0" + "version": "2.1.0", + "dev": true }, "fast-levenshtein": { - "version": "2.0.6" + "version": "2.0.6", + "dev": true }, "fastq": { "version": "1.13.0", @@ -7127,13 +6614,13 @@ }, "file-entry-cache": { "version": "6.0.1", + "dev": true, "requires": { "flat-cache": "^3.0.4" } }, "fill-range": { "version": "7.0.1", - "dev": true, "requires": { "to-regex-range": "^5.0.1" } @@ -7147,13 +6634,15 @@ }, "flat-cache": { "version": "3.0.4", + "dev": true, "requires": { "flatted": "^3.1.0", "rimraf": "^3.0.2" } }, "flatted": { - "version": "3.2.6" + "version": "3.2.6", + "dev": true }, "follow-redirects": { "version": "1.15.1" @@ -7167,7 +6656,14 @@ } }, "fs.realpath": { - "version": "1.0.0" + "version": "1.0.0", + "dev": true + }, + "fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "optional": true }, "function-bind": { "version": "1.1.1", @@ -7184,7 +6680,8 @@ } }, "functional-red-black-tree": { - "version": "1.0.1" + "version": "1.0.1", + "dev": true }, "functions-have-names": { "version": "1.2.3", @@ -7213,6 +6710,7 @@ }, "glob": { "version": "7.2.3", + "dev": true, "requires": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -7224,6 +6722,7 @@ }, "glob-parent": { "version": "6.0.2", + "dev": true, "requires": { "is-glob": "^4.0.3" } @@ -7232,13 +6731,6 @@ "version": "0.3.2", "dev": true }, - "glob-to-regexp": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", - "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", - "dev": true, - "peer": true - }, "globals": { "version": "11.12.0" }, @@ -7326,31 +6818,41 @@ } }, "ignore": { - "version": "5.2.0" + "version": "5.2.0", + "dev": true }, "immer": { "version": "9.0.15" }, + "immutable": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.2.4.tgz", + "integrity": "sha512-WDxL3Hheb1JkRN3sQkyujNlL/xRjAo3rJtaU5xeufUauG66JdMr32bLj4gF+vWl84DIA3Zxw7tiAjneYzRRw+w==" + }, "import-fresh": { "version": "3.3.0", + "dev": true, "requires": { "parent-module": "^1.0.0", "resolve-from": "^4.0.0" }, "dependencies": { "resolve-from": { - "version": "4.0.0" + "version": "4.0.0", + "dev": true } } }, "imurmurhash": { - "version": "0.1.4" + "version": "0.1.4", + "dev": true }, "indent-string": { "version": "4.0.0" }, "inflight": { "version": "1.0.6", + "dev": true, "requires": { "once": "^1.3.0", "wrappy": "1" @@ -7375,6 +6877,14 @@ "has-bigints": "^1.0.1" } }, + "is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "requires": { + "binary-extensions": "^2.0.0" + } + }, "is-boolean-object": { "version": "1.1.2", "dev": true, @@ -7415,8 +6925,7 @@ "dev": true }, "is-number": { - "version": "7.0.0", - "dev": true + "version": "7.0.0" }, "is-number-object": { "version": "1.0.7", @@ -7462,7 +6971,8 @@ } }, "isexe": { - "version": "2.0.0" + "version": "2.0.0", + "dev": true }, "jest-diff": { "version": "27.5.1", @@ -7485,35 +6995,12 @@ "pretty-format": "^27.5.1" } }, - "jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", - "dev": true, - "peer": true, - "requires": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, - "dependencies": { - "supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - "dev": true, - "peer": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, "js-tokens": { "version": "4.0.0" }, "js-yaml": { "version": "4.1.0", + "dev": true, "requires": { "argparse": "^2.0.1" } @@ -7526,10 +7013,12 @@ "dev": true }, "json-schema-traverse": { - "version": "0.4.1" + "version": "0.4.1", + "dev": true }, "json-stable-stringify-without-jsonify": { - "version": "1.0.1" + "version": "1.0.1", + "dev": true }, "json5": { "version": "2.2.3", @@ -7563,6 +7052,7 @@ }, "levn": { "version": "0.4.1", + "dev": true, "requires": { "prelude-ls": "^1.2.1", "type-check": "~0.4.0" @@ -7635,13 +7125,6 @@ } } }, - "loader-runner": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", - "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", - "dev": true, - "peer": true - }, "loader-utils": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", @@ -7671,7 +7154,8 @@ "dev": true }, "lodash.merge": { - "version": "4.6.2" + "version": "4.6.2", + "dev": true }, "loose-envify": { "version": "1.4.0", @@ -7694,13 +7178,6 @@ "lz-string": { "version": "1.4.4" }, - "merge-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", - "dev": true, - "peer": true - }, "merge2": { "version": "1.4.1", "dev": true @@ -7727,6 +7204,7 @@ }, "minimatch": { "version": "3.1.2", + "dev": true, "requires": { "brace-expansion": "^1.1.7" } @@ -7750,14 +7228,8 @@ "dev": true }, "natural-compare": { - "version": "1.4.0" - }, - "neo-async": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", - "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", - "dev": true, - "peer": true + "version": "1.4.0", + "dev": true }, "node-releases": { "version": "2.0.5", @@ -7787,6 +7259,11 @@ } } }, + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==" + }, "npm-normalize-package-bin": { "version": "1.0.1", "dev": true @@ -7849,12 +7326,14 @@ }, "once": { "version": "1.4.0", + "dev": true, "requires": { "wrappy": "1" } }, "optionator": { "version": "0.9.1", + "dev": true, "requires": { "deep-is": "^0.1.3", "fast-levenshtein": "^2.0.6", @@ -7900,6 +7379,7 @@ }, "parent-module": { "version": "1.0.1", + "dev": true, "requires": { "callsites": "^3.0.0" } @@ -7909,10 +7389,12 @@ "dev": true }, "path-is-absolute": { - "version": "1.0.1" + "version": "1.0.1", + "dev": true }, "path-key": { - "version": "3.1.1" + "version": "3.1.1", + "dev": true }, "path-parse": { "version": "1.0.7", @@ -7938,11 +7420,21 @@ "source-map-js": "^1.0.2" } }, + "postcss-js": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.1.tgz", + "integrity": "sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==", + "dev": true, + "requires": { + "camelcase-css": "^2.0.1" + } + }, "postcss-value-parser": { "version": "4.2.0" }, "prelude-ls": { - "version": "1.2.1" + "version": "1.2.1", + "dev": true }, "prettier": { "version": "2.7.1", @@ -7985,22 +7477,13 @@ } }, "punycode": { - "version": "2.1.1" + "version": "2.1.1", + "dev": true }, "queue-microtask": { "version": "1.2.3", "dev": true }, - "randombytes": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", - "dev": true, - "peer": true, - "requires": { - "safe-buffer": "^5.1.0" - } - }, "react": { "version": "18.2.0", "requires": { @@ -8113,6 +7596,14 @@ "once": "^1.3.0" } }, + "readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "requires": { + "picomatch": "^2.2.1" + } + }, "recrawl-sync": { "version": "2.2.2", "dev": true, @@ -8152,8 +7643,7 @@ "redux-thunk": { "version": "2.4.1", "resolved": "https://registry.npmjs.org/redux-thunk/-/redux-thunk-2.4.1.tgz", - "integrity": "sha512-OOYGNY5Jy2TWvTL1KgAlVy6dcx3siPJ1wTq741EPyUKfn6W6nChdICjZwCd0p8AZBs5kWpZlbkXW2nE/zjUa+Q==", - "requires": {} + "integrity": "sha512-OOYGNY5Jy2TWvTL1KgAlVy6dcx3siPJ1wTq741EPyUKfn6W6nChdICjZwCd0p8AZBs5kWpZlbkXW2nE/zjUa+Q==" }, "regenerator-runtime": { "version": "0.13.9" @@ -8168,7 +7658,8 @@ } }, "regexpp": { - "version": "3.2.0" + "version": "3.2.0", + "dev": true }, "reselect": { "version": "4.1.6" @@ -8188,6 +7679,7 @@ }, "rimraf": { "version": "3.0.2", + "dev": true, "requires": { "glob": "^7.1.3" } @@ -8210,6 +7702,16 @@ "version": "5.1.2", "dev": true }, + "sass": { + "version": "1.58.3", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.58.3.tgz", + "integrity": "sha512-Q7RaEtYf6BflYrQ+buPudKR26/lH+10EmO9bBqbmPh/KeLqv8bjpTNqxe71ocONqXq+jYiCbpPUmQMS+JJPk4A==", + "requires": { + "chokidar": ">=3.0.0 <4.0.0", + "immutable": "^4.0.0", + "source-map-js": ">=0.6.2 <2.0.0" + } + }, "scheduler": { "version": "0.23.0", "requires": { @@ -8229,27 +7731,19 @@ "version": "6.3.0", "dev": true }, - "serialize-javascript": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz", - "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==", - "dev": true, - "peer": true, - "requires": { - "randombytes": "^2.1.0" - } - }, "shallowequal": { "version": "1.1.0" }, "shebang-command": { "version": "2.0.0", + "dev": true, "requires": { "shebang-regex": "^3.0.0" } }, "shebang-regex": { - "version": "3.0.0" + "version": "3.0.0", + "dev": true }, "side-channel": { "version": "1.0.4", @@ -8272,8 +7766,7 @@ "version": "0.6.1" }, "source-map-js": { - "version": "1.0.2", - "dev": true + "version": "1.0.2" }, "source-map-resolve": { "version": "0.6.0", @@ -8282,17 +7775,6 @@ "decode-uri-component": "^0.2.0" } }, - "source-map-support": { - "version": "0.5.21", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", - "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", - "dev": true, - "peer": true, - "requires": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, "spdx-compare": { "version": "1.0.0", "dev": true, @@ -8373,6 +7855,7 @@ }, "strip-ansi": { "version": "6.0.1", + "dev": true, "requires": { "ansi-regex": "^5.0.1" } @@ -8384,7 +7867,8 @@ } }, "strip-json-comments": { - "version": "3.1.1" + "version": "3.1.1", + "dev": true }, "styled-components": { "version": "5.3.5", @@ -8428,63 +7912,15 @@ "version": "1.0.0", "dev": true }, - "tapable": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", - "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", - "dev": true, - "peer": true - }, - "terser": { - "version": "5.16.1", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.16.1.tgz", - "integrity": "sha512-xvQfyfA1ayT0qdK47zskQgRZeWLoOQ8JQ6mIgRGVNwZKdQMU+5FkCBjmv4QjcrTzyZquRw2FVtlJSRUmMKQslw==", - "dev": true, - "peer": true, - "requires": { - "@jridgewell/source-map": "^0.3.2", - "acorn": "^8.5.0", - "commander": "^2.20.0", - "source-map-support": "~0.5.20" - } - }, - "terser-webpack-plugin": { - "version": "5.3.6", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.6.tgz", - "integrity": "sha512-kfLFk+PoLUQIbLmB1+PZDMRSZS99Mp+/MHqDNmMA6tOItzRt+Npe3E+fsMs5mfcM0wCtrrdU387UnV+vnSffXQ==", - "dev": true, - "peer": true, - "requires": { - "@jridgewell/trace-mapping": "^0.3.14", - "jest-worker": "^27.4.5", - "schema-utils": "^3.1.1", - "serialize-javascript": "^6.0.0", - "terser": "^5.14.1" - }, - "dependencies": { - "schema-utils": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", - "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", - "dev": true, - "peer": true, - "requires": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - } - } - } - }, "text-table": { - "version": "0.2.0" + "version": "0.2.0", + "dev": true }, "to-fast-properties": { "version": "2.0.0" }, "to-regex-range": { "version": "5.0.1", - "dev": true, "requires": { "is-number": "^7.0.0" } @@ -8533,12 +7969,14 @@ }, "type-check": { "version": "0.4.0", + "dev": true, "requires": { "prelude-ls": "^1.2.1" } }, "type-fest": { - "version": "0.20.2" + "version": "0.20.2", + "dev": true }, "typescript": { "version": "4.7.4", @@ -8564,20 +8002,21 @@ }, "uri-js": { "version": "4.4.1", + "dev": true, "requires": { "punycode": "^2.1.0" } }, "use-sync-external-store": { - "version": "1.2.0", - "requires": {} + "version": "1.2.0" }, "util-extend": { "version": "1.0.3", "dev": true }, "v8-compile-cache": { - "version": "2.3.0" + "version": "2.3.0", + "dev": true }, "validate-npm-package-license": { "version": "3.0.4", @@ -8602,6 +8041,15 @@ "version": "1.1.1", "dev": true }, + "vite-plugin-sass-dts": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/vite-plugin-sass-dts/-/vite-plugin-sass-dts-1.3.1.tgz", + "integrity": "sha512-GmyXQ1PYTunOQ3LWZ1fnIQ9XNiVCDkyHRXH12XeCnJspu0LEQ4ZJKM4EdpUe+/8juuNUSb8rHzp9SwotXz7gyA==", + "dev": true, + "requires": { + "postcss-js": "^4.0.1" + } + }, "vite-tsconfig-paths": { "version": "3.5.0", "dev": true, @@ -8632,76 +8080,12 @@ "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-3.1.0.tgz", "integrity": "sha512-Dhxzh5HZuiHQhbvTW9AMetFfBHDMYpo23Uo9btPXgdYP+3T5S+p+jgNy7spra+veYhBP2dCSgxR/i2Y02h5/6w==" }, - "watchpack": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", - "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", - "dev": true, - "peer": true, - "requires": { - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.1.2" - } - }, "web-vitals": { "version": "2.1.4" }, - "webpack": { - "version": "5.75.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.75.0.tgz", - "integrity": "sha512-piaIaoVJlqMsPtX/+3KTTO6jfvrSYgauFVdt8cr9LTHKmcq/AMd4mhzsiP7ZF/PGRNPGA8336jldh9l2Kt2ogQ==", - "dev": true, - "peer": true, - "requires": { - "@types/eslint-scope": "^3.7.3", - "@types/estree": "^0.0.51", - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/wasm-edit": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1", - "acorn": "^8.7.1", - "acorn-import-assertions": "^1.7.6", - "browserslist": "^4.14.5", - "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.10.0", - "es-module-lexer": "^0.9.0", - "eslint-scope": "5.1.1", - "events": "^3.2.0", - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.2.9", - "json-parse-even-better-errors": "^2.3.1", - "loader-runner": "^4.2.0", - "mime-types": "^2.1.27", - "neo-async": "^2.6.2", - "schema-utils": "^3.1.0", - "tapable": "^2.1.1", - "terser-webpack-plugin": "^5.1.3", - "watchpack": "^2.4.0", - "webpack-sources": "^3.2.3" - }, - "dependencies": { - "schema-utils": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", - "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", - "dev": true, - "peer": true, - "requires": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - } - } - } - }, - "webpack-sources": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", - "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", - "dev": true, - "peer": true - }, "which": { "version": "2.0.2", + "dev": true, "requires": { "isexe": "^2.0.0" } @@ -8718,10 +8102,12 @@ } }, "word-wrap": { - "version": "1.2.3" + "version": "1.2.3", + "dev": true }, "wrappy": { - "version": "1.0.2" + "version": "1.0.2", + "dev": true }, "yallist": { "version": "4.0.0", diff --git a/dictation_client/package.json b/dictation_client/package.json index 624d4d5..ebc582b 100644 --- a/dictation_client/package.json +++ b/dictation_client/package.json @@ -30,6 +30,7 @@ "@types/react-router-dom": "^5.3.3", "@types/redux-mock-store": "^1.0.3", "axios": "^0.27.2", + "classnames-generics": "^1.0.9", "eslint-plugin-prefer-arrow": "^1.2.3", "i18next": "^21.10.0", "jwt-decode": "^3.1.2", @@ -44,6 +45,7 @@ "react-router-dom": "^6.4.1", "redux-mock-store": "^1.5.4", "redux-thunk": "^2.4.1", + "sass": "^1.58.3", "styled-components": "^5.3.5", "typescript": "^4.7.4", "web-vitals": "^2.1.4" @@ -76,6 +78,7 @@ "typescript": "^4.7.4", "vite": "^2.9.9", "vite-plugin-env-compatible": "^1.1.1", + "vite-plugin-sass-dts": "^1.3.1", "vite-tsconfig-paths": "^3.5.0" }, "eslintConfig": { diff --git a/dictation_client/src/App.tsx b/dictation_client/src/App.tsx index bbd2a0c..3468864 100644 --- a/dictation_client/src/App.tsx +++ b/dictation_client/src/App.tsx @@ -1,6 +1,5 @@ import AppRouter from "AppRouter"; import { BrowserRouter } from "react-router-dom"; -import { GlobalStyle } from "styles/GlobalStyle"; import { PublicClientApplication } from "@azure/msal-browser"; import { MsalProvider, useMsal } from "@azure/msal-react"; import { msalConfig } from "common/msalConfig"; @@ -9,6 +8,7 @@ import { useDispatch } from "react-redux"; import globalAxios, { AxiosError, AxiosResponse } from "axios"; import { clearToken } from "features/auth"; import { useTranslation } from "react-i18next"; +import "./styles/GlobalStyle.css"; const App = (): JSX.Element => { const dispatch = useDispatch(); @@ -47,14 +47,11 @@ const App = (): JSX.Element => { }, [i18n]); return ( - <> - - - - - - - + + + + + ); }; diff --git a/dictation_client/src/AppRouter.tsx b/dictation_client/src/AppRouter.tsx index cc6ce15..b1f64e2 100644 --- a/dictation_client/src/AppRouter.tsx +++ b/dictation_client/src/AppRouter.tsx @@ -8,20 +8,16 @@ import { NotFoundPage } from "pages/ErrorPage/notFound"; import { RouteAuthGuard } from "components/auth/routeAuthGuard"; const AppRouter: React.FC = () => ( - - - } /> - } /> - } /> - } />} - /> - } /> - - + + } /> + } /> + } /> + } />} + /> + } /> + ); -const BaseDiv = styled.div``; - export default AppRouter; diff --git a/dictation_client/src/assets/images/top-bg04.png b/dictation_client/src/assets/images/top-bg04.png new file mode 100644 index 0000000000000000000000000000000000000000..380f3fd27e3546e1ab7d369952995feb700321a0 GIT binary patch literal 49191 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

7fo{*r7E z64enKz$SVI1bR=)?DU{r+64A}J?!nXAX-29e;H5w&rbV_tv_wRphiEyYIB!U=uAoE z$8TvWYR`>Qn)L08;05)#P=i1N7mW?e5!x~F7V96VKVO=5zsb`N^U_;pqjtZvc+`{1 z46gCW1?)WOOCH& zlGyoVfd9~8_7Vwr-qyahxB7?rZSB8l_88)5xmrfvEe}0n1cUg`LuF4$gY7+1OJ2BH z31lsOc|F}+*V^1%fw~u@1%VAFRNx@*$uqO~jS>eeP*$;unqJA4$BNKwwZxB4SoPEH zmQ;~|Iy0**{iEA3cJ;%3!_@Zoa)Ux!Whds*n`3NXj_76Am(?wS*@T2l6U#Du|D6)R zoGU45b+5m|jIKn*8lhq2nzhEQZPG@kuM8Ad$hc0z6hW{|GupSU1{Cw&a$EM|JnxOq z#P5$`E&1ye0$a^-RR_5=fb_wnQ!1>>NcHbk|zTpuGwxH0tFR#bPtsz0k)5G(TL2M~Tl0j0{WkQ3aRr5Zzxh4*Ww ziLG1>Puy0Hc%~b#yZPv#lA4Zp_`n8@{6>C!7I!v{OD(S`MHWL6-N+RJVH-iwmk{*n(Q zi9M1RWkS8?r}h7mX5s;%+mcGlOmSB^n1fX`d&S<%iTxcp39j$NR%0s%ZEjcf6`p!l zWhQK&539b85iI5c^CjH*sO)B;l#FycXY%shOSlMZap`@hbH>Rxrcc?%cce1)A3l&+ zpJwO(j!$3szE>>%9ffN-Nzj<6nR17V{CJc;Pvv0tmMzOGjPKWRj3Jv2`jF&+EG#92 zP!VCru=fi81x6c6F^ELc>dLhl!VOHvnn$?0rYRLalHxuc_cg98Efm}s>vyRt^eO4_ zM}r_q0H)~#=K@c!AW{_XsD|%p_?|PWVdX9hN)2KUqbK^f?CJ&u6R_e%edwiz%QXys zEQ7w@wHo|!u~GbUieGlVqFYh;OJicp-`hvy>y&Qgm@aY1**+Kjp~uH|dp=h|K84p_xwp83?GRazdA!AH^5&H&v@ zP>)kyWox_p&JVK&HvMV*IMQP&-%R~q01&Gsb5m6i*siX3wC9Gtfncx9XeQ}>I7x-_ zY+1TToQ4xHvx?Rs z907+wQI{=|Xj*8%HwB$ZMgzsUPPy?u>24;VxSQ2Sv)9Rk*P>I0G>HI9D zZssOj(9&oVR|72RPai-f`S`iQgl9Jv%s+%@cNr*atin9Zw7Dc!mMY_zB_^lHslD*H2v$m7&G*G2t>y}A~mdI z-d;$zI+PZ%@6u<)hDLCn5lt5THh77DgqR%m?pc3P;?@-pz(_wMUO6I84He&Dq99@L zY;>Y!<{%n_oJIK+#R`wt^$9Gi6MW@(U%f@^;`z|p*K_j<{NtsW`=@k{W{^~QpU&Q! zjEXuosg6mPdC(&1%fr{SNtA)(PEaEs01%N^OlLw3S(m(WzY@e(;*HhVJrfcz~hI=3ARcfiiOEbQ5m9ngQMU#Svzdo2M z3)hsbnDmJexXI7np^k3qW*68((`EKbw4U?!kBh<8{@php!Dp>;(gBcX+>~2Nu*#+W zyQW%VZ1>EKH-8uqhS>}^AW;@_L6614rKqSZgX*YPi;a?(YVsxM{hc+IHPfihoCXGw%{&Gaz28>`Ac(*ebIqQ>8{Q$+`{+%zVJ1rDCrYWF)7pdJ+J& zi59`&lsmq_RU3H=IsW}pg|2unLc&O z6Am0~u~t*~jri$_sol1vXx?YTI(|VZ`v}V!aF2%(P+4;P+|Agt?oyj-0xVMgzoeT9UzW#NWO) z^udCGN$8P#e+(?EL+yxD!j>b#RJ4d?dz#HE@m(j8ne~!OY1fiim~Q7%)ou7hHbH(4 zgP8{UPXL-zSLeNDIuqBJtM~?6(i&9rPEak&|!iCQeuHR>gh`+X63Gm7%QgZLK6ynfn2K0SC; zH?Vug+MGBh>q&&Z^)be8Ieqr1XTq9A^k&q*ilu5$g{&CKt|E>fXRXO5J!RE&*h?EO zJ|eYzvN#zHdZb2GA&}@GIEIGs z-sEw?u!bwrVD2XpVw4`d$jYEp5~>mWaU&nmRsEjzjT-n?fhBFsLin9EZrVYI-wFm6 zQM!i1hmj`3{i~yHS{R`>Gh<*3Z;TTyg(*xl>U5eN?2>Jo^Zol|2M`!?@BX><2A6wFLlaq7jr!IgJPfXnr`N)W2h$#MTgWEduENEV)?1f z<2b}|kvDYGdPlfQJ2q#ewd8%OxuVFlhfP*&=tVaZV6wx>d*SHs89J2Jfg zY3Z!YuxCPm1jkKi%f=>ehsqG;Y*^#IxK1ym%D=r6(W^}_GRXILoVrYjD)hbSu&OMb1*^cKS{V_@N%C)bKjc- zL{n3uk#eegB2&rS;beZBiG@o=R@pat!rX zkL|#nujp|K&pD8cu6|QR{w_Wf@|@=gAl*ECbvg>x6O!?H%x>F|;j|-9H_3n~Hoh;V zB<%n~?~xDLy*p){_d9c~kW@7db)XiuVB{1P9NIK?la!NBWGx@fk0~tm=rih*L7I^& zgx*ITP|>RTxb@@wiq&6!UW~dM$s=A{Tf2oN%Zo@KRO(rZY9{Qu&5iZBS$cJ<;U49p z9})UWk(!n@V!PSKM7OobZ>wH4 zO15tD(`HGt> zsoC}`rw`SiI?ASRFJk{*HCPVwSQHV!BdZ4l)_}D1QNnV7Z)+V`B;_H94_{uz;u%%S z9Dh451we8GnReT|2Dvm{c%yAuR5r>h`+G-!_q-sa;HTcUWK8amjOFXrZfxJejqCabM-~J=Jkr0v#v`}&c7=^p5eN7`Ma-)9n}KB zd4>o)Px+BZZIrf_5h#PVPK2TxW;%by>^@3txqJR2vC%ZbC5upiUeLqTtOHs-u&b(D z;vmJ7f=LPkbIApL`V#J5K3@p#fM_vJqg)yW^5!bT+NqF5Be-ej?2 znG&lp^}eVW%9q+NLiM%@^Sv*7<*T7iy_a7Z3)z)+xkTvPJmz=n6GzFQ@P;kQ{YKx? z`!RnR)=xjBzhwPeNc&Gtq)UQG5qmngS1rsVvr==(dj${qd?V1G@ZxJ2K4ZG9S9<4M z0?GA>Y-5OX;!FZ^!Y3eIfrjKJsDsEc8hlxv*ko-LgFhGQ9a!)Dj->Nqkb2E~KV9o{ z3!e&kN!#)bTUWL7BIQ#wLn@dKZ>Ku7cEM7Xb& z#9wkY_8gYZk}74W`dgfm`&z#v*^knZ63wx|agh0qg^(>!&M*SRXg`>dnDETy9~BKr&^v!_zcId zX9OlzV)wGmCH1>+cn>j2#nVldIy&#V9ptP7I>YeAo_8eS$SAU76SbAx@0K)Ex^MAw zmD4k2^jd(qn5W%{yE(wSjAAhr)3n?@qnHYau3ti%g z>?63R`~$Gjt?smDUxwY&4pt%F6cm7a385{bhkOw%783Z@_N~t#q9;f6!!*N8T1$8D zNatm}MlSHmcMc?n(vb_>^){S6&)vuz^n|=fuO&xgt@$bDHe%&h{vuo?&c`gGbiIcm z8T>y#N|R94wz(R`uK*dYdJ8yvK=Bm@#L2_9(YOQMM_24Bc_1E`gr5h#+WfSGUcb0g z9!MBr@XG|%YTW=bIlR(8Z8VD*5e)Fl3Pn+~t6Cdi^99xexdhL;%X7mv1`bDrWKW{Q z{tz2k<0P<i^Tvk(Gz-9+?hiozXaW#%cbdvW<~ zXD{)F8O7}l1A@FBU6c5~1U*F2iyvIFkkG#pd`x5n0eT&!m9cJOCiSnl;nz%}B-`&r zd8Fx&#dPDyF6x>UdM2sM+>}uGd;es{V_%Z6;)mf*1ZlrtORb!DnlrdCvD3GbsF{H5 zhl%Q@ba4`j{~~Q!C2Tf=+@LFt%)lYk4dsEF+P6qZpfle!9b7fkRblWd)ggLLs3&3I z6TEy(0?F^PFH&(qNGo;8Fxf)5Q+1MZ%ZeP;!L&?YN%&~a-N$X_i#t02B+lL-cP<0fc)4L1*XBDARw`&vtamz|+EZ>p1)0hWEJ$b_KWE?Iz?ZZ30?A^&fKB zqoOU1F)_m1v57sTCyg!T+BzsLcG;pZTnwU{2i~}}s3yF$fprN*nz-t^9CjWveVP}F z0Eo0O^|fI^&m=%8mKawG2Zf8GJoTV_by&t5Rg9)$+V5Zf#7jT(z=bb+FcZYL}0dfe(; zt({zan_ zmHbr&P?rs@{N4{df6$l%w8lDVyKacI`N!g_17Ag4NOssM{=z`y{XEQ!K0jk$)}9c~ z0H=9gu(r9H6bDGkRFh3K)JgJk;K|c@z%nh)7KNy)N#qO+>B&u}atlmsa%}?foLK+< zwqdkpeK-%&?$F^dGm5KMh!JVVWym<54u?i;R8tzdR-Si&{LLIYin|ER{Z#&qsbjIBK9nq_gUY(&yy+VM&1f$r`2{0FwGRP~ur{$IC$*^m3EL zO*)S!r6c7V22|RK7<4DLfkk}JIN*fO^G01RNt+6ynDQx?+%1%u$di^l3MEpJ=h_4{ z8@eXZaMel2oRfWyHaUH-<%@1N$a6spPUeLjO7S{cj9FFek^ipG`=2?9g$H{ZNoU9W z4B39Qu|%Jz-u4$X3KvKV`awmnO(6FQgU9M&c&FS3hOO-|`gSaceu3c?BzrD4B(`Ju zg3V}MQtaDP5`~MZvSIT0($+&G;#yTh*lUbA4XuPmOS3Y|RQ7 zteLQ?lhXGC@kIZ^UFg(4TEmr|RW#7pF6TCN-IM z|DO`#iu2-lUOJ79BMk2je>ifgKI_Ip}J%EDvU6`P!DicuY zE?9#&G=dIjnz_(zf2*4gUjpCuQXBV@?Ge5LI@g8M3dg)!3}vMC8WMco?v6-v&-Ih@ z{iS=3O@HK9U~*J7V<4vBX0K`)CQF~hryfYP5A(~v-?Y+;mm@sn>Rq| zm4YB_${|$v6(fHw97S5yL*k+I*fmZsXHTNHZrE7}$JCh9+DeO5@+`a;PYG&6RxWKa z6^;hR=*K{M2hgEJgnqoQ8UF?cLaHBB0d}#I5U-?{6L#6F{W?$=r!OU+t{j3XXdUPy z+a%cUXfKXY?zg&XmLk&Ez`Ch{vjo%Lp!I~>t?S@P;4M78#=#^LO{EMoQpfIpxk2Ot z@WG=O?oMpE-JG~EJb7hU?%qzGVZVl73Y{)emxH}SmCxNG3Pq2;&U~9AyOC%~B=HtJ z{GDf+c0%mJ1^H229+IV)jsKpZD)Vf7+^Bktkb3mpul-&?s-xu|t_?yrx4;q5?i1?~ zq7WtUZ7O~Uf=i+CgXY<57X<93CV2M5S4G_GB@PYUm~;pr0+H|Af$|wfcnt@e_>~*= z)kXVUi(E9hZ)(i{VQ9eVfvT1u>_jUaG(+7UEMkc%3++$-OW4=bC9}>5H%5`Hx2CqlTN$}uFDpOmTY43+46WS(|u0*>z zkWcl8;5m;pvW{>8bOTjOF!NkHQ^4%FbS=lGvA_H&7+aff*yez@H1?G>l`!UhqtiaN z#|t%^c*v?a&q2Be4ASXPv^^Iv!nBS-u35VBI61H)emw@uuzuI_*J5vJaTzQ0uT;=P zsXo7ZJ&Qki5X~C{t|&BDlF0Lrmd6+V)8Sz)G9USUs(Knq$T#u87nrd0Ndpq`TyrV( z^e@$43e9khO!E?jjVmY-RYQ8T{p=Q~C=vT{U5YSpQt-YknFoK`93Nx~OC7=CCT?)Klw$Q8M)f4QPjdR)~ z+6Z)P1?YZdkjaX14$%0#j9EV44&GWtfzml#xE~@A4UP>CIJER3fkq}r)C8eZAq+^L)Lb^dj8bnH1mPHon zZt0Q`Sh~BryWjo(-hcPA_ugmD%-orK<~ird$*~V@0k&(+7D{~q?|&Y4H8F2*>Tl0v zGq4s2L$Q5|Tb=@53UD#I?zlFRHWKbv_WjPrV)VqnMbPJk_Bk8>FWeeMGP_OXioF(d zXF!IiNXUPAydVbA!?eIB31w$TnRG;Qzw<@PYQov}or^ zG=>Bj5&Pz4>ZZgik)hzL~TcSUS67d@(I~Gd0k}x*GMdVn?K>d`wd_MLi4a?o#+> zqDe95$D9nZv9Gj+{#)}V@(|6X!Ux=L`i3d7HdQJFb+KvylIRYDs;h2RoW zhe@zievp(MFU$B~G5y13hCk$~^{3gN<#=p8f7(=WP8W)NT!>zLS~64gHZ8dMv$xF> z=b;g``E{vDcJi^v^}6HzdZZ0Ctl7#Xw1{8OO-!Yv*ww`Pnr$_d9m7^GT(&5O#mQgu zOB)+Z&&b_S-MI!x4FRugx zQ;@F7_60J`g&3?QVUH^$zmaZJ!+ueS#GG7|K|O8pB}!Q9y7yCL>`yznJnkK}%<>VfRiy`-pnwmx~>9Evo&3|8{zCvib#oBrjm)cfg zuv}Pl4so}$u~YLp_XDVp2-p6n!Z$m6M(PENe!=rdO(i8_Tl+w_cYx-XU&^0R(wNW4WsMfmD~j0R%j!;@M2MXBS;c*j63g}$pY2&& z!x{JI?$;W={~i9Xiw}6AvPK{$vJ#P*G4t#Srb#FV{QCaUvWMW!*EDTr(VOewfO9bE znat$+$9Y&x**Ex$ZOOw8CY1kUEo<$o1b2n8inFIX^A0`Y%HsGEyJUsYPNpl*HzL}Z zgWiUb$XQEt_@BdL%OX*T-o@Mo8#wViRO zj*pMD?^eobtW#k}eZFJDvH)Id^jKuB1zE5@?N&*lU?>eOAuElpfWwQzMYZ){WRfIg zv`A$A?PM1G7(+~!R{jEBv)8BBjNp-?>kQu0i?ol}#h0T(Ty}69R~JFU5}1V8fogUS zk!#y7s-X{D;x%epav9?y*Hf>V9&vT!jYRrY%OynYYe)IL%l8=M50|jED9^W)_9i`! zRb@%|%;^1g%7Sb2p8mbYuYDG|n2OFPJ{(dfl1A zN|hNA?GCR`Z+kTSkFDaoB~tc2PD#8nxB^}}?xQn39F1?6X-u%i77v4&zCs5-JSOHj zk}|nUG(lIhzcM~;td3GSk8`r?m_1NL+ti6xP328VYKeL+PjWh*Dp=N!HR_QKTD^O` zL2sLJIy$5I(Lhen?%ax4j~?{G&iLVaLPG(!DY$g#dcIFLu=B$z5Mepko3Ix&2)p9v z7s~d!C*#DXE3=5aRdv!BZVX~ja|=tQP{^w-I!@;N_F8V1=fp{3*+-U~T|6NQsyOc% z^V;bEZFJ%ApZr4^u_X1F|6eTUX0>6hTJpNj`SsKz^ZUB^MFVluSSkfeXCkM-*^*b8owo;U-|93Ae3WScZe2x{;Z3MqS2atoyBBtPW`N=V^*Rsaa|ydUc3e^ zL6hraa6=4zp%78*Au5EB74$9Z~=<*0Koz@AHT z(5%tK%}k;#4;r;`g_fL(O|DR8nNKadNz2n`uW8-TYUzM1Omr?U>)hJ83&XT6)C-EjW~^Z z3fkS55F86dwSB5{j6115t{|*tG5F?!iv?JwZY43o!LY*@?^*?_#%W6}VV%SZ?HMyg z9)p#c3ep5E&AGk7SV0Q9I-%VI)1UFje_5Z5$fG8Ln{nfk{yoLu*cTRqwsXuh^eXmV z9gmYo|>$rDBC>zgD^yG^dqKO>sm>EgBH9~g#KDR($Z5}^*D zi(Bvpqvh?2^#01fn$($kK^!Y~eB-hPTbdAr#Z&01L4qa^-D*PK~AKMd3 z%6_rnM>sNuLcc!>dswZNwC2Mm$4 zjob}FA)ifaWx>Ajjjr7N@XJQ=7$%zSqtkMVC6@2(oeMPrDiXT&pxZ|J?0aIcid4-a#0W=xJZ=h zZm0_w8u65UUGt=lACnWZ@Z_s~+b%BRkD2ljqvE@&YDxQhs=ZhgON{TTiHuj^%#5%> z_uYT48lwPNbqTI=%lDqZp%_;EFol=pP~?K>4`wx-9=tk@==CO6kQ0IIeBAUs+J@F` z`){DD)i@Ej&I84G>XPv6);fV;v5u{cIIxsmI|xnoTVo5EeeiGDvECS&v5(p5I*GVj zNmn?jMoX?s{(La0Ou}nBhlWDnv5>%?r4ns!ytXHFS!2S+yiMJ2ZDnxTvB`L7t5|ha z2`y>d>=!4eCFvW(bkGM*j<8O=phZPB?<8Kw`@hbutTlPNqVm(^E{U?c3d~TQ@Qt(z zuRXVuFk9{#r+Q0cBrnpNrC*Kct7Q3iJ)FGLf zY~~%bE~u*YwHwx+zC@RzzD95%?NKaQGW)?mu1dY5BpAj!MRB_6mu<2$3xz($Js{ja ztq{&hxZz>zoglsu2J;txmGfC^#HL5hs`T`c zzZQ7dC|}=v6m}qJI>Chy`4vyI>aXnKd6fbw3{y%zTV;8;?4k*{Y-ee@{LdEckLr`1 z_Vz~1$%z0Di|GOXpa*F{4EADS`>`MKcWmw-?|4|MvpV?o{O1R}b;o5NBPBSYCTsZ36jXe3^Lz)E*1gjiA<0#>iB>6?G+*|jO*wm# zDmUHqyh4u_7U}Wue@71gBlY;zvmqppJr*RxMbme86{ECAo`QD9SO1Xu56`=Hi)!F z>?qf%MN%(a7NEU^PposMH7y;HqiUDuH~J3;x-ZZRa`U~87AyCnJNu*qX1;9A8>0Yg z#grZ{Si?6+ao7u*nIU3@g%`u^H_RC<%?j}^>qdT+PsnFrwd66Ga_9DHtw1;IsMN@B zH}OQNRz7EDFwLF0>R@t_nbGIwb`MSW>0(gd-DFZ6+l})F?b`?2Jol7&mi_=H92Qn7 z=kK6iz0rTAy@QR{bpJ_XAd^DdhnM?7AWvpMl;H8FlKL)p3#I*>DC799Q`b>c=(vwX zuMqMPvweKlNjtT*DRtiAWB&?d3H{Ok_^z3{wa7jJ zacs6TB%jb*#rAIvT#iz1|FeKTr7*cYMpGl728^ShYttSP44U{L#h!RK948LlkOz?f z$<%vDxRQ*!(oiQvv(yHs(Z6~nO6PQ!^S)gBnAZ^ab?;vvAI(S{23>?`YsF3rZ$cjB z-bFUr-TjF;QChsA^mvLN{sq^Q#ZI4X82z~Bfc@Wb(8&)A8zY%}7rdx3>kjp-l%Lni z{dI>qCDLlsF&@3Q2{fUz0|(ag=$Vu13}xOJnLd-=$|9TNNuazkLGQ~DTWezKW7Qa zUKsQVi$SK{oz!`r>R_&Gsp{hGZjZYw4F>z!pVWIps}FKHdP53*HWx+#v1*Rz{{EFg zRQ;9{kIaTWo?OGk&3uabt=w6+2HE5F>V z$nSBZT2#fnsTG3u1=6p|_0@c;xGjwf?axC$@wGOnIS*_P$`dJltO#q2Q~G-GtYn(JI_P z3WRyL{)M}43rT4aD1?Jxch)wN@s3X106Y!jMy$yc?2_*-k9ZdHoB8N_z#|KOOy1SM zelM$T8&_$LZSTu4#?GtUeJ7?WlUH^bcXe+bvViqioyCu3OSvCP%dDt0XC}DqleP$^ z@=ddzFzgs`*=(?m-k4xtV|~4fAj90H`p}08-gk$_7Bl(D@E)|Bn^7|vay-rb9I>xa zlo`|Ga}@w8YLQvr&;sY2h#n4Fn;m=0po#21f4I8_*lYaxVZ4vsjBD=Ep1wmzu}m_t z0Y((-Q;m`PPaY)i0yC&x@=37z*YwfkU9mfUGdk=LC$iKFWDH2Et}^Z!0YK? z3WB--+;dW&3^t|hLEWqYSFsX^zi{T?h!>!nkIW<2r#2*Y1U`Px3LIQfr%cC1W^d5d78Kb-9&g;doc4^_j~s}?2wYjnF>tAkdnle?=~I5qv3JfGs2eJJ z!YGr|u$@;*j)zfrsZ#bt+>JV@egf~M4}qihYNcQr0$d~%d&VIN3pV~;-z#!_5GFeC zfgM$qJ>!#+`ALWeLhOAiX%8}BXSWZypWbw(S@7u7+Wic7;14T(m>TdGom;>#KG3Lo zol(PQsFFS>#KO95tsmfJX z1dOekHI1%#+~#5lBZedEmeWkv|FrI?@=kAxj4iyQfueI?4)!|j!NY-j4Mnz_FW;!x z4{*8}N$ZU6Y~{_dmY!`~*G72WF|2}*F9xC_f-j1W=Cj!zrq1f;Hi}g{0iZT`fyt^W zYI%I~YMwQUj(m`@I_2(YSkN zAKSrmp;p9|J`e~hzJqIy&egJ>q)d7C+UPJ~-eE>jkMLjix_jZ(EgHE?lCQ^&L`V=T zqMYR~fn^^(BKc~|kne~8rRBv>MyEPn37^}=T~r_JnRG#>m^}Sr#@S}#KTExyK;$jf z7|s12V*1o>U8E+5ynPv9yJx|5zj(?Bq;I%O_;kn&G<*1_gchkGt}eoq9+pT0 zF5%+)PR53PFNHJv2Y2iCmGnBq0ZHWqkK38T0JxVQ_O*Nu^&+a6xP=ZX4kE7Es+&41 zIA98lE7E~wRTI4}wHU}UNXz=s8!A079vy|IUvs8f zJg#a;8vSKo;|?1am{6K)xSh?}X}`ku^>`NhQh*l`DTWJF>M~d8`Ij0J2&b-pk!>bB z=h{)W82!-8&`JFZt8~m-->wrG_eKbVPtxbfx$UB18Ta}ZxVV6f_Ul6Kab20XT;mVv zB@2eHizd4&U#CeIFVDwlpPX&fU2#sl^9DsP6_bfsyHiYUbU%0R!ZW7<4zXEg{NQ%p z3a{Xe58?W7-6CCHqYwpt3$-zq+q0#Q0NPArl`|+-e z=7+lh%sG^z{!k(JV(K>mlStF?5f3IQO-1O5J1jB9-sG}aX-F{Kq3w`2z!=3(H$_E^Mtaxm$u`)kbvt@b zbPjKbaqfK9Ha^1%+{iYrZwd#G;d5*BSAIfsYfElBx4FW(4BV6CzZ~eWE?D%&p@E<& zYn|uJP~&UjyCOO`-f2AD@Vo8bdy|I!a?#Yr>sjq_F)t*-3*9;IzzCdW4Sq7R!Lq;k zH+6TC?=&k);(!0X*%6t$f3F4x69gRMyk2LmqWp*kn<(w&Q0S-snI6?w+dLMkQL)~)wtgSS`>fHG0geklEl zIri6;FBkoO^Pf4)-{$+Xk^#46wqZB9)Q6Ahd?xmDbyCkR`sX3gvQHNB0jB}12rHMs zKN}N=u=A#9?79H|>LJ^%izP!dQPHAhEpt_|3NeJAaYAFt8UB`&gS$d&SemBxrAt5roqS@j%_y=_uBCt`g030V0*xeS_6N{PA}kz zUC-NDIX@U9ITZanhsf&f`J)D%@b>t!eQ`6y+xS`K(Qq7tcFT1-6SkR*6E!S){J`du zTN1S4x?ayeMpovJW`EXW4~-|bn;0d=4ML$C9-Kn;f33|*0*9Wr4Jljbck75WrF>5= zk^fHk-zHoJ-)d{RSY%5pKp=MOXdnBtI@Q7PtM9|U#0)5Op$8)T zyTSfnMHkdFrhd4!ffq;AJRytJqqBlPd~ry5JA zgIVVzMTXP@_k^>LVea#1f@D3zV(M~rYHBpj0=NIo%5jLx>ydep+R`to_Cr^^ zIXS!2Vd}vYcRsfl4G2_t<8y<+JeKMM*$t^T+G1jM{araNpuMu0(_zQJo1OA|WIF)NQ#urTcZC{9Grn-D^x#>+B;a4^ z;x~RoA4dW%)o*?(^KnBlx@NEQa)|C9-YEs0jz=8h7;FVt;(@{4!uT?8@f2|<9XNj| z-s^3mV$!`>Hop}J+fyv@fBD!^7xRu{sFQYjM_pQiN_71vJ_d}B zF6u^`UL63Hid`x4_$XS z#HB)!Gza`@Jmszb)IlPR$f=P)G^JXZ8az+6#RN*9;vbvyy!*&d6aHeN&h_BrOm0pT zJ^}&u&IJ%_XR9KXS+ML%c2tSgh~d8Gdhnlv!84@p!cQqQFCTeGfcQf$go?V^>v+Of zjUH@e-BWdevGg<;5Gon?>3J@-$N5FvG>Omk_>kv6B}*2!m#Z+2{O)l|H=j2GEYq|7 zk)Mk|G@8W+;$$1u+93OuJ3p7id+C#Oj4%jtrnXjFAxP$n)a}A%hRfOaa{G40AlZQU z(yfS-!uZ9_QLtXx3WphK&dAp9($Gar^tWwpu#X5i55<;HbI#3$A_KtNSv5Z!;izm- zQ-xq#hI+VzW_+!<_|kftKy*w7&klE`x}*=0>^CR3O5uEtoVoqAyHp^92p`$u!> z{!~Ht3T7ilz7_Hl?zVGmEzU96fqbHj{V{1}IYop*grL6ZFh@*nD~~AaUnqjBZ7E^z zgIv>^oTa&{?gvmEym5(9ur0UMFz0Kr1#A*aM>N5T%FS*tPdk*I4xR>X6suPKoab9G zz-)vQbl(}`!7=RTk~t(6xNqK&eAIGBy_o3rV=O$YW=$&Xg>09)K6|eQizh6TtxPN>8gHlq%(5T4TG% zjeE|*U!D%Mt@o+JPAj__#+KbX{4KO{0$8fZ`e5n4^DUY^mLaX(jS9UTv z=AAhS>Uk=hK}=gw>_muq3p}+RcLCZdWrlC-RwLZ(aX*~>jZ?Eyi`rF8Ab22guHJ6< zdieBQA$NaGDNC`rB3})6l3Wo|RRm$D%qR%qW$61SP+`Bus#6-Tt3bcMiKT^o-5Tjo zwW2kagtfais0Uthr|E}$rNUrqc;l-dX>Q#-gzsAUeI;@U-qt|z+!a$fut;4Mpu3k2yxy3W{V@SS%LbXce-wy`4WLxmRFFzYsz{}lUy{x#BViaI? z(u4YCgM20g$_yv910ne2Ptk=rprfyTj>g3rGBlVcm*y}jo?B?N7Z9t@xEiWN)E{-k ziAKqqe0l+JqxBospY^8* zkK@a`Nj6kL4^ZJx-b|o)V_Kbr@B9+mi9*YWncWXrT^qQ`sFP)f9Qf?f>YyC?H6wUgy(C8`bkg_x!g z3-SnYIL8_J`QtSqQSJVnxswB6vbQVxYoFbU#w}mr^gEH_f8fyK2*yCEst;$k{M0{f zyYC1P5wZ(YasBjt+nFkl@fD{JqYk&4XwYOurB{|~+yzu(W; z2Wj9*q}Q3^^++5o=4ASGp1C>E(483DcKkQi&B*vv^`{CV)PtfU-5sPkao?vjtbO1H zf2Iw@>N+D`&uWZrI*gBg6~JQHVON(&D;o}zV`2r*-Z1!tsDE^#>~)9ydo_AIHwRUO z>{6VMo2D@7!j#UhHC3-2qC;dCp0q?^tBng=uRn@a4*~SBQ0jKS7sSdVuL_yWYf8&6 zQRz;GGwEa^VJ@2yr-}R9214x)MF;8bM2mY?RXRlxIAY?V`e7%UjDuwJV4R>PRZOWbl+2vEyg7$65buN?P%}9xi@8yeUsd!ulkcvR30@HlC(cSRJE%UAB-(;Yt zoV3VEz%+91y8qe+vfT{^!&I3TA{Ro6s^{hk5AaTf&Xr{|4meOkLn|Abd755|lVpNo zpvm$Vu?hulnE#3nsCKF93#q4f<-o$zjtZ9^LQ1)a4!w)=gQ1W6LI=AdMsYFlw!%5< z--$?1kAfnzg7;V51_2Ycj}52h3~s!i43d71(gh}q&bH_YQ6zfYkL09C3)QAl=lZHE z0CHy%_}^+nT)ng9uuhy}2ODESDiYMQZ}}oJypgaeqQ44e@@ZhE!m1?SRf>vlPK6Jp z$#+d}ULdBd$u=2q-iwe<2e60)8^YC>xk8gzIgKcUYZJ9^wUe%1&hemNr6 zE3;83W!fL2$#@YT zp(vjK@$x%9OJBCZSG0rq+BhG|{<8mjq5uymGZ51{yyW_dJY6tYh!6{HTn;SU=*+#B zBw%BIkO0Ngm-gs7GpiBhdi(3-wNCQ%T@M=E^mBdcYhWqH!}P=5(3fhK2;#=UJFo8T z+pik|AdmC7w26^<3#G=jt0<$Zy8gMsNZomF^a+isqvwKno7X%515J=l^zm~w_@BfjTP{FPq9 zyP>W>rucZf?oUPdX$;{XV%E1OTI^b6&HQ}V79o_`kT1mm&$f@J3dW# z@l#E6q5LVqBGkEZsltstj9=nsv`R&lm*`kczW%_tpCNguUt8gx`@gRhA_1dsmjwJ1 zC{CkwPzB`5{2fkNcSRDT>Rsl$l-AUXDa?;_nVh=T6)>Kj6V6qMO}FfhCJzu4*5f2P z70MLJd9NxK_zMr=EgIaki~ibCDTvFP6PdlxION_jGWsSPkgLRo_mv$AMKgjCUh2I| zn|~Yr2@j{vLx#Bik{fTiAT!F#Wo9&%a-T9D@&}~AT?eckUA57vp^IY@`8z_2oNqmN z%zO%E5h*NFMN&JoM1+F7&me`hWoi+;+_lRMn><8@dw*w)D{r8Pho$yVM>VQa&^jM? z(&4O|zkBfTtFV)jU+3tAwoMH$Uw1s1>R>qW-J>|isI@W}EDmaLvwLX=p|sw8)%&gD ze7!`|=iL4t(sO8Z-Rtya9!~&NWrmbb2FQ(VYYec6iK!Ly9OsJ-zMJ(f!*PP)A;QNc zK2X{gm+>R2db;0~H)`xY(bop(L|xr9k6}M{(7#kDYMSL7->}1rqYVW6p&Q=0?SmiW zA1CX)#^Ljuj%G#MR3m31FE5gg?cn!Qd6PB?e!@5YtqNvbTxZqw68)JYI{OaJyZRbJ=tI>Lsxm2VrKdF?t_KSBPtP;SfLe$RPc9Oj8>#&><)C6z=KRR3X{q6vSyJKE zJjo9^vKX(<|CTa6<)?EzQsxJt)H5GXxmuYg0ec5Y{<=NpBPt9)vge4#XU4<_vt!@d zj3{aJuTdIF3ui>FtLwQ(+_mY=>`m%%41yStliaQoM^rccb{u?1EQwZwlGNuBSanqm zO!b@&A&or>n$|nF5d!rUjq~p^2GZY5{}s-+I;>EEey82jT3%h`sXxmR8CTz%7=NOW z_fxaQKwNH@y860G3i~Wc+pR?aiE!J^o2fz8B@uH@n%7S&X1n-}z31~zccc%EZZj4v zh&Eg^`%G1O;0w z6ZGX(tzHgMlsREwqxnQWote(PHoSPCGtZ-PO>s0Mw$4B=PsabEoNsVzki_uoRpHyT z6bh+rUwrf(4x(`~h0oqKTz>m_{?)g-FSr)4#=h*1Dc3^S&_9xt%kYTeQ8|ise-2V7 z>3XC%WncM=a!F$wV_O=$>j{>6~8R&xdTT}AI3`_VA(Mgq& z$>^-19uLX_cZHl7$l1PBf`iwWrq31NPHnkI1f@CAdM8i7dzCl!Wmf-P8j;OU=&(ck zZrpztQnKS`D?eH_m!36XSHwNF4b`6I3!=E2rH_MiHiimfp&Us;=XnQkE+@Fb2LB*B z=&nvccOYd*E{Wf`Dl>;-r+mMiNBRstQ7;v_tF#^GHyu1QcD3$Nv(V-0JkVL7`zZOh z?c%8E08V{HuC*w)o8)+m(2RT<8uK(2BHf+C-0wmEf1*ICE;{^)!Zr3MT7MHXBb+!_^*d-?tq82W7-Mv>ffINq`yVAEG|4s&2|)e3 zg5~}B0c{Ze$o_eq3^3bVM0)-szXCxFS0>}t#X8X1kiA(v8m);i4BlVD>=}K2 z%7UX@p%<~>O#k&43ALx+Fy{t@Cb*pV-Y_0v`iQsY4)u1=m&;F0E41t|nCwQOgCK3g{JvQezxi>#fz zTJY80fByp?695kBU&j|6z_BuIvQMd>w9}I&LUrz9B-n?9XS7!amGt`?^h+lg2v7Tf z#$XOByyD7B$CO|KbaOYz4%lpX%}5U4!5Gh^{?UVHuz2`Jhd$t)YE|aG&TD-?fOSya z^Xy!q2M667;_@Eua2kH{cSX@zbqm2xnh-o=0Ew&zrQw8|_DivWb6c=dL=k z=jPz?#dvQYNK^I%6JF)tnXjP1D52P>C=nswK&npy71v;uS+SW@V&@py=fsuvHngOl zIC*HFo&K*yA~;gZjPuZ7AvR-}lcLLrZ9^kz%{%8=5NqH}MbV?M=<|EBs^#}YTDln8IC zC3;icX4;L>p!oGg8jMIvxPqsD5i;iXItC#Dr7`bSiXASpO z!JS1I25WifKJ6A{6;UF75aCLa^msE=%qZ#+Y8%3bOZXp};p`Qz=ef>lj!m3a$p-C3 zJnB}Bp-2%;js`_cUry?x;mxI1%ti|xTH;S?rRW*k(o|-yI2g6g~X z$!Zz8*xi>f0n;0V5y>Pj(C-M-t|6bF1RJNHlW-3*}~R@LG=5AID3^{w8m zC_GW1mSB!)JD0iKMGN^x@+A4Z4lNfP7Fl9C2ueZAqXwxS8-(t3f0OH$b3q9SuCny1 zzX&%li*$^#>rp&UfHoEQd6;0q3bk;otOk_Dj(1Hh^J0>4EMc5I-; z6wtu-4LBc^WWw4OelqQta@cgo}R#qGGd+ZnxedIji=qHHD@{&Cprg z`-uTjKfe-k76@fb=|k?5PnH$%bizQ{g|RX-2;fu|_?gmXn)M}tbcH~XCRU2>Lbzjy zN5pB&i!Sw}-%Jcg)#O+2`ONe8_nDdrohltG{jBoIt2Z0V!CqvNpE4|j0jCSuii*kY zu252zHzt$Nj2=p&+8;{Xj{;TGN~TrDT;4L+T8pe!1Q5Ct7`mx@a9tZ8P(f&dV#)x( zS1`SQrz=mc)uKy-4Yjmu58B!-t(l~~QrxkqYF*#7WOODeIgK?4SD+-7`|T{m@N06< z+1E=S3kRsZdBb=mF{Ak*xEoz6<)}!O2+$zgU?QuqBBDAc0DG3`tkENDvFgzYQvj<( zU*@Ed92iqk!mNF4fhFo9Nb2uhuI)HaQSFL;nZBnRQC#?*`Z=EajYLyjJq9L__Vm&) zPi@qGH$1v2Cfi^-rp>>#YQk0f>rp|AH>p0=#Jsw~mnlL@8LfUtAdj?qVJ6k}>U}ea z90Vv{ciS*~yA%J0;<*AqM@Q$xFfbT-zUeU?STVy96G8{K#V!p`@-9gqky$Aj0QmfXi#w#!~<+`O@BSG7;P_nk_yeb4ua@i zfj}C9Bcy#Bnxc@Fcd0BuWfB4UXBAAp1hWWMe*-@~c?r3l^y(S9Xif{-K3n zAaS3Ua)J1O2gRllMtZbnr0DAche^W@@)kaMiJZ;-@h%dhPl~u}u3_*H7xhcU1-Ka{#(W0Dy*Atp2HuuJ`YzeV(5j zVc3D7up`vTEmw|))rCmiw#C^WqkwP|8~|GaXu-kK@bQlC-#J@Q&6ArwIler{dK%jg{)IzT6^xc%Vne3w!hboDb=FCeh~ayahb1eQ1-pulFtZRz?N zy=nTd7gk;W9zy((RNF!WhD>zWfD>*&;r+{FIJ&UXqBe%9M$>9Ddda%Xcpt9ytZ{Mv z8Uz3tib>IxslTy-QYv*ca3m!6nWh4;SZ4TV{j;s=^dGWh!2Y@r--0-O74`38!fK39 zA{S}iE&y7!1xV7WgT~ zjBZ_J7{IK20$8S3&fD#!adhtN@dfZdd;k$q5jwU zL#HR{IN#w@o5%%4R(wF8Q$>iS|M>($1^&m_WGuxaL|mHcf8djnDu8!bk*rj};?p-q z%{6Z8$G_B;sxOr~#Q(n+)rFHiN&>%|k^}n!vwVmR`8q!mwMF1Rh=F>-T{}w#pk>T2 zV{dd{qq#yeameCaT=U{0u35hCKX@J5bIp2l^^!h*tc6Xc!)NTVh7t`L0YE>NrGfM` z(?`d`0f8)eH9gr;@?Xmxo~srvc7GKE4k!S?GjXBg;lE!^Uw?P`LE=HcTc5M3TVpO- z1uXVpN-{{%jiuZm;uEm}JXhK82OL}to@Qhr+>IuB;9pq4?B7@Jw~I-X?!J6L1MKbokwFUKGN^g}3IJ;N7G zUt{Mk;A$Fi9*_ZnUWf>EZUwePVEcHOeq;tpfNAW9;sDd{0c{wGKE)Pxbm_7^QkCPD zWwxJtx~tKzfajo-;vBu+qJyE?(|o)|Grl<;w|PEbv4j)IeXZ}yB55!h{|6V{=0NMi zpZGRc{M=h9-v=;(vJ$f?y3kBU^Vx^~Zsc{X8q(*G9Kb0m=TF<%`8Wr!OR-6l3qN7YEa0JS6J1eMkTgQq}^*!PbtL zGHxK~YU~-E0ssy~ce$6Tc%3LndEIzh-MXx=>$wxNnbb3hJyyj8bBk)HjY%Tib`#}=?>7q-q z0ngL}#&DNFp?0(!ZJ%;)Yaq9WjD!Nnpn-TF89^PUiPaxO(6c=+`|1*lS-pM9?zRNL a0wy$Vx8Fw)qu&Prpe(O0SNz8G%l`p|9>@Lw literal 0 HcmV?d00001 diff --git a/dictation_client/src/pages/TopPage/TopPage.module.scss b/dictation_client/src/pages/TopPage/TopPage.module.scss new file mode 100644 index 0000000..43a4c1c --- /dev/null +++ b/dictation_client/src/pages/TopPage/TopPage.module.scss @@ -0,0 +1,272 @@ +.wrap { + display: grid; + grid-template-rows: auto 1fr auto; + grid-template-columns: 1fr; + grid-template-areas: "header" "main" "footer"; + min-height: 100vh; +} + +.header { + grid-area: header; + position: relative; + display: flex; + flex-wrap: wrap; + justify-content: space-between; + box-shadow: 0 0 3px #282828; + background: linear-gradient(#ffffff, #ffffff 70%, #f0f0f0 100%); + z-index: 4; +} + +.headerLogo { + margin: 1.8rem 2rem 1rem; + font-size: 1.71rem; + line-height: 2rem; + letter-spacing: 0.07rem; + font-weight: normal; +} + +.headerLogo img { + width: 198px; +} + +.headerSub { + margin: 1.8rem 2rem 1rem; + font-size: 1.2rem; + line-height: 2rem; + letter-spacing: 0.07rem; + font-weight: normal; + font-weight: 600; + text-align: right; +} + +.main { + grid-area: main; +} + +.mainSmall { + width: 600px; + margin: 0 auto; + padding: 3.2rem 0; +} + +.footer { + grid-area: footer; + padding: 0.6rem 0; + text-align: center; + font-size: 11px; + line-height: 1.45; + letter-spacing: 0.4px; + font-weight: normal; + color: #999999; + background: #282828; +} + +.buttonNormal { + display: inline-block; + width: 15rem; + padding: 0.8rem 2rem; + color: #ffffff; + background: #004086; + border: 1px #004086 solid; + text-decoration: none; + border-radius: 0.3rem; + position: relative; + font-size: 14px; + line-height: 1.4; + letter-spacing: 0; + font-weight: normal; + -moz-transition: all 0.3s ease-out; + -ms-transition: all 0.3s ease-out; + -webkit-transition: all 0.3s ease-out; + transition: all 0.3s ease-out; +} + +.buttonNormal:hover { + background: rgba(0, 64, 134, 0.7); +} + +.buttonNormal.small { + width: auto; + padding: 0.75rem 2rem; +} + +.buttonNormal.red { + background: #e60000; + border: 1px #e60000 solid; +} + +.buttonNormal.red:hover { + background: rgba(230, 0, 0, 0.7); +} + +.buttonBase { + display: inline-block; + width: 15rem; + padding: 0.8rem 2rem; + color: #004086; + background: #ffffff; + border: 1px #004086 solid; + text-decoration: none; + border-radius: 0.3rem; + position: relative; + font-size: 14px; + line-height: 1.4; + letter-spacing: 0; + font-weight: normal; + -moz-transition: all 0.3s ease-out; + -ms-transition: all 0.3s ease-out; + -webkit-transition: all 0.3s ease-out; + transition: all 0.3s ease-out; +} + +.buttonBase:hover { + background: rgba(0, 64, 134, 0.04); +} + +.buttonBase.small { + width: auto; + padding: 0.75rem 2rem; +} + +.form select option[disabled] { + background: #f5f5f5; +} + +.form select option[value=""] { + color: #999999; +} + +.formInput { + width: 350px; + padding: 0.6rem 0.8rem; + border: 1px #999999 solid; + background: #ffffff; + box-sizing: border-box; + font-size: 14px; + line-height: 1.4; + letter-spacing: 0; + font-weight: normal; +} + +.formInput:focus { + outline: 0; +} + +.formInput.isError { + background: rgba(229, 0, 0, 0.08); +} + +.wrap.home { + background: url("../../assets/images/top-bg04.png") no-repeat bottom center; + background-size: cover; +} + +@media only screen and (min-width: 1280px) { + .wrap.home { + display: grid; + grid-template-rows: 1fr auto; + grid-template-columns: 45% 1fr; + grid-template-areas: "header main" "footer footer"; + min-height: 100vh; + } +} + +@media only screen and (min-width: 1280px) { + .header.home { + display: block; + padding-top: 30vh; + padding-left: 40%; + background: none; + box-shadow: none; + } + + .header.home .headerSub { + font-size: 1.4rem; + line-height: 2rem; + letter-spacing: 0.07rem; + font-weight: 600; + text-align: left; + } +} + +.pgHome > div { + width: 400px; + margin: 15vh auto 0; + padding: 2rem; + background: #ffffff; + box-shadow: 0 0 5px #aaa; + border-radius: 0.3rem; +} + +@media only screen and (min-width: 1280px) { + .pgHome > div { + margin: 25vh auto 0 50px; + } +} + +.pgHomeLinks { + width: calc(400px - 4rem); + margin: 0 auto; + text-align: center; +} + +.pgHomeLinks dt { + padding: 0 0 0.5rem 1rem; + font-size: 16px; + line-height: 1.6; + letter-spacing: 0; + font-weight: normal; + text-align: left; +} + +.pgHomeLinks dt:first-of-type { + display: inline-block; + // 言語選択時のデザイン崩れ対応のため調整 + min-width: 45%; + width: auto; + padding: 0 0 0 0; + margin-right: 0.3rem; + white-space: nowrap; +} + +.pgHomeLinks dd a .buttonIcon { + width: 16px; + height: 16px; + position: absolute; + top: 50%; + right: 2rem; + transform: translateY(-50%); + opacity: 0; + -moz-transition: all 0.3s ease-out; + -ms-transition: all 0.3s ease-out; + -webkit-transition: all 0.3s ease-out; + transition: all 0.3s ease-out; +} + +.pgHomeLinks dd a:hover .buttonIcon { + top: 50%; + right: 1.7rem; + opacity: 1; +} + +.pgHomeLinks dd:first-of-type { + display: inline-block; + width: 45%; + text-align: left; +} + +.pgHomeLinks dd .formInput { + width: auto; +} + +.marginBtm1 { + margin-bottom: 1rem; +} + +.marginBtm2 { + margin-bottom: 2rem; +} + +.marginBtm3 { + margin-bottom: 3rem; +} diff --git a/dictation_client/src/pages/TopPage/TopPage.module.scss.d.ts b/dictation_client/src/pages/TopPage/TopPage.module.scss.d.ts new file mode 100644 index 0000000..4263724 --- /dev/null +++ b/dictation_client/src/pages/TopPage/TopPage.module.scss.d.ts @@ -0,0 +1,24 @@ +declare const classNames: { + readonly wrap: "wrap"; + readonly header: "header"; + readonly headerLogo: "headerLogo"; + readonly headerSub: "headerSub"; + readonly main: "main"; + readonly mainSmall: "mainSmall"; + readonly footer: "footer"; + readonly buttonNormal: "buttonNormal"; + readonly small: "small"; + readonly red: "red"; + readonly buttonBase: "buttonBase"; + readonly form: "form"; + readonly formInput: "formInput"; + readonly isError: "isError"; + readonly home: "home"; + readonly pgHome: "pgHome"; + readonly pgHomeLinks: "pgHomeLinks"; + readonly buttonIcon: "buttonIcon"; + readonly marginBtm1: "marginBtm1"; + readonly marginBtm2: "marginBtm2"; + readonly marginBtm3: "marginBtm3"; +}; +export = classNames; diff --git a/dictation_client/src/pages/TopPage/index.tsx b/dictation_client/src/pages/TopPage/index.tsx index db2f4ca..c00b3be 100644 --- a/dictation_client/src/pages/TopPage/index.tsx +++ b/dictation_client/src/pages/TopPage/index.tsx @@ -4,6 +4,10 @@ import React from "react"; import { useTranslation } from "react-i18next"; import { getTranslationID } from "translation"; import { LANGUAGE_LIST } from "../../features/top/constants"; +import logo from "../../assets/images/OMS_logo_black.svg"; +import arrow_forward from "../../assets/images/arrow_forward.svg"; +import arrow_forward_bule from "../../assets/images/arrow_forward_blue.svg"; +import styles from "./TopPage.module.scss"; const TopPage: React.FC = (): JSX.Element => { const { instance } = useMsal(); @@ -11,21 +15,27 @@ const TopPage: React.FC = (): JSX.Element => { const [t, i18n] = useTranslation(); return ( -

-
-
- OM System +
+
+
+ OM System
-

ODMS Cloud

+

+ {t(getTranslationID("common.label.headerTitle"))} +

-
-
+
+
-
-
{t(getTranslationID("topPage.label.displayLanguage"))}
-
+
+
+ {`${t(getTranslationID("topPage.label.displayLanguage"))} :`} +
+
-
Already have an account?
-
+
{t(getTranslationID("topPage.label.alreadyHaveAccount"))}
+
{/* eslint-disable */} { // AADB2Cのサインイン画面に言語選択情報を渡す追加のクエリパラメータを設定 loginRequest.extraQueryParameters = { @@ -53,17 +64,22 @@ const TopPage: React.FC = (): JSX.Element => { instance.loginRedirect(loginRequest); }} > - Sign in - + {t(getTranslationID("topPage.label.signInButton"))} +
-
New user?
-
- - Create a new account +
{t(getTranslationID("topPage.label.newUser"))}
+
+ + {t(getTranslationID("topPage.label.signUpButton"))}
@@ -72,8 +88,8 @@ const TopPage: React.FC = (): JSX.Element => {
-
); diff --git a/dictation_client/src/styles/GlobalStyle.css b/dictation_client/src/styles/GlobalStyle.css new file mode 100644 index 0000000..4262f2a --- /dev/null +++ b/dictation_client/src/styles/GlobalStyle.css @@ -0,0 +1,194 @@ +html, +body, +div, +span, +applet, +object, +iframe, +h1, +h2, +h3, +h4, +h5, +h6, +p, +blockquote, +pre, +a, +abbr, +acronym, +address, +big, +cite, +code, +del, +dfn, +em, +img, +ins, +kbd, +q, +s, +samp, +small, +strike, +strong, +sub, +sup, +tt, +var, +b, +u, +i, +center, +dl, +dt, +dd, +ol, +ul, +li, +fieldset, +form, +label, +legend, +table, +caption, +tbody, +tfoot, +thead, +tr, +th, +td, +article, +aside, +canvas, +details, +embed, +figure, +figcaption, +footer, +header, +hgroup, +main, +menu, +nav, +output, +ruby, +section, +summary, +time, +mark, +audio, +video { + margin: 0; + padding: 0; + border: 0; + font-size: 100%; + font: inherit; + vertical-align: baseline; +} + +/* HTML5 display-role reset for older browsers */ +article, +aside, +details, +figcaption, +figure, +footer, +header, +hgroup, +main, +menu, +nav, +section { + display: block; +} + +/* HTML5 hidden-attribute fix for newer browsers */ +*[hidden] { + display: none; +} + +body { + line-height: 1; +} + +ol, +ul { + list-style: none; +} + +blockquote, +q { + quotes: none; +} + +blockquote:before, +blockquote:after, +q:before, +q:after { + content: ""; + content: none; +} + +table { + border-collapse: collapse; + border-spacing: 0; +} + +button { + appearance: none; + padding: 0; + border: none; + outline: none; + background-color: transparent; + cursor: pointer; +} + +html { + color: #333333; + font-size: 16px; + line-height: 1.7; + letter-spacing: 0; + font-weight: normal; +} + +body { + font-family: Helvetica Neue, Helvetica, Arial, sans-serif; + position: relative; +} + +h1 { + font-size: 2.4rem; + line-height: 3.14rem; + letter-spacing: 0.07rem; + font-weight: normal; +} + +h2 { + font-size: 2rem; + line-height: 2.57rem; + letter-spacing: 0.07rem; + font-weight: normal; +} + +h3 { + font-size: 1.6rem; + line-height: 2rem; + letter-spacing: 0.07rem; + font-weight: normal; +} + +h4 { + font-size: 1.2rem; + line-height: 1.57rem; + letter-spacing: 0.07rem; + font-weight: normal; +} + +h5 { + font-size: 1.1rem; + line-height: 1.57rem; + letter-spacing: 0.06rem; + font-weight: normal; +} diff --git a/dictation_client/src/styles/GlobalStyle.ts b/dictation_client/src/styles/GlobalStyle.ts deleted file mode 100644 index 71774c9..0000000 --- a/dictation_client/src/styles/GlobalStyle.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { createGlobalStyle } from "styled-components"; - -/* eslint-disable-next-line @typescript-eslint/naming-convention */ -export const GlobalStyle = createGlobalStyle` -`; diff --git a/dictation_client/src/translation/de.json b/dictation_client/src/translation/de.json index d4181bb..a571087 100644 --- a/dictation_client/src/translation/de.json +++ b/dictation_client/src/translation/de.json @@ -1,11 +1,21 @@ { + "common": { + "label": { + "headerTitle": "(de)ODMS Cloud", + "copyRight": "(de)OM Digital Solutions 2023" + } + }, "topPage": { "label": { - "displayLanguage": "(de)Display Language", + "displayLanguage": "(de)Display language", "languageEnglish": "(de)English", "languageGerman": "(de)German", + "languageSpanish": "(de)Spanish", "languageFrench": "(de)French", - "languageSpanish": "(de)Spanish" + "alreadyHaveAccount": "(de)Already have an account?", + "signInButton": "(de)Sign in", + "newUser": "(de)New user?", + "signUpButton": "(de)Create a new account" } } } diff --git a/dictation_client/src/translation/en.json b/dictation_client/src/translation/en.json index 35145ba..26c0536 100644 --- a/dictation_client/src/translation/en.json +++ b/dictation_client/src/translation/en.json @@ -1,11 +1,21 @@ { + "common": { + "label": { + "headerTitle": "ODMS Cloud", + "copyRight": "OM Digital Solutions 2023" + } + }, "topPage": { "label": { - "displayLanguage": "Display Language", + "displayLanguage": "Display language", "languageEnglish": "English", "languageGerman": "German", + "languageSpanish": "Spanish", "languageFrench": "French", - "languageSpanish": "Spanish" + "alreadyHaveAccount": "Already have an account?", + "signInButton": "Sign in", + "newUser": "New user?", + "signUpButton": "Create a new account" } } } diff --git a/dictation_client/src/translation/es.json b/dictation_client/src/translation/es.json index 86db79c..5d23fd1 100644 --- a/dictation_client/src/translation/es.json +++ b/dictation_client/src/translation/es.json @@ -1,11 +1,21 @@ { + "common": { + "label": { + "headerTitle": "(es)ODMS Cloud", + "copyRight": "(es)OM Digital Solutions 2023" + } + }, "topPage": { "label": { - "displayLanguage": "(es)Display Language", + "displayLanguage": "(es)Display language", "languageEnglish": "(es)English", "languageGerman": "(es)German", + "languageSpanish": "(es)Spanish", "languageFrench": "(es)French", - "languageSpanish": "(es)Spanish" + "alreadyHaveAccount": "(es)Already have an account?", + "signInButton": "(es)Sign in", + "newUser": "(es)New user?", + "signUpButton": "(es)Create a new account" } } } diff --git a/dictation_client/src/translation/fr.json b/dictation_client/src/translation/fr.json index e9ed930..d4ee9e9 100644 --- a/dictation_client/src/translation/fr.json +++ b/dictation_client/src/translation/fr.json @@ -1,11 +1,21 @@ { + "common": { + "label": { + "headerTitle": "(fr)ODMS Cloud", + "copyRight": "(fr)OM Digital Solutions 2023" + } + }, "topPage": { "label": { - "displayLanguage": "(fr)Display Language", + "displayLanguage": "(fr)Display language", "languageEnglish": "(fr)English", "languageGerman": "(fr)German", + "languageSpanish": "(fr)Spanish", "languageFrench": "(fr)French", - "languageSpanish": "(fr)Spanish" + "alreadyHaveAccount": "(fr)Already have an account?", + "signInButton": "(fr)Sign in", + "newUser": "(fr)New user?", + "signUpButton": "(fr)Create a new account" } } } diff --git a/dictation_client/vite.config.ts b/dictation_client/vite.config.ts index 3918d41..89e0575 100644 --- a/dictation_client/vite.config.ts +++ b/dictation_client/vite.config.ts @@ -2,6 +2,7 @@ import { defineConfig } from "vite"; import react from "@vitejs/plugin-react"; import tsconfigPaths from "vite-tsconfig-paths"; import env from "vite-plugin-env-compatible"; +import sassDts from "vite-plugin-sass-dts"; export default defineConfig({ server: { @@ -14,5 +15,5 @@ export default defineConfig({ sourcemap: true, minify: false, }, - plugins: [env(), tsconfigPaths(), react()], + plugins: [env(), tsconfigPaths(), react(), sassDts()], });