From 05dfd2ebe340e8c542570ddc7fee857c7037e80f Mon Sep 17 00:00:00 2001 From: CEbbinghaus Date: Sat, 28 Oct 2023 01:47:54 +1100 Subject: [PATCH] Feat remove non steam games (#3) * updated pnpm lock * Updated pnpm version * Added unlinking of non steam apps and cleaned up * Updated Versions --- .github/workflows/build.yml | 4 +- backend/Cargo.lock | 2 +- backend/Cargo.toml | 2 +- backend/src/api.rs | 90 ++- lib/package.json | 2 +- lib/pnpm-lock.yaml | 1099 ++++++++++++++++++++----------- lib/src/hooks.ts | 23 + lib/src/index.ts | 1 + package.json | 2 +- src/components/CardActions.tsx | 9 +- src/components/LibraryModal.tsx | 21 +- src/modals/EditCardModal.tsx | 13 +- src/patch/PatchAppScreen.tsx | 127 ---- 13 files changed, 846 insertions(+), 549 deletions(-) create mode 100644 lib/src/hooks.ts diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index fd1d8b9..2174e52 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -14,7 +14,7 @@ jobs: - uses: pnpm/action-setup@v2 with: - version: 8.5.1 + version: 8.9.2 - name: Download Decky CLI run: | @@ -66,7 +66,7 @@ jobs: - uses: pnpm/action-setup@v2 with: - version: 8.5.1 + version: 8.9.2 - name: Install & Build run: | diff --git a/backend/Cargo.lock b/backend/Cargo.lock index 5050853..8142d57 100644 --- a/backend/Cargo.lock +++ b/backend/Cargo.lock @@ -311,7 +311,7 @@ checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" [[package]] name = "backend" -version = "0.9.5" +version = "0.9.6" dependencies = [ "actix-cors", "actix-web", diff --git a/backend/Cargo.toml b/backend/Cargo.toml index c4a11e4..45df166 100644 --- a/backend/Cargo.toml +++ b/backend/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "backend" -version = "0.9.5" +version = "0.9.6" edition = "2021" license = "GPL-2.0" authors = ["Christopher-Robin Ebbinghaus "] diff --git a/backend/src/api.rs b/backend/src/api.rs index b589943..fd096da 100644 --- a/backend/src/api.rs +++ b/backend/src/api.rs @@ -1,8 +1,9 @@ use crate::{ ds::Store, dto::{Game, MicroSDCard}, + env::PACKAGE_VERSION, err::Error, - sdcard::{get_card_cid, is_card_inserted}, env::PACKAGE_VERSION, + sdcard::{get_card_cid, is_card_inserted}, }; use actix_web::{delete, get, post, web, HttpResponse, Responder, Result}; use serde::Deserialize; @@ -11,9 +12,9 @@ use tokio::sync::broadcast::Sender; pub(crate) fn config(cfg: &mut web::ServiceConfig) { cfg.service(health) - .service(version) - .service(listen) - .service(save) + .service(version) + .service(listen) + .service(save) .service(get_current_card) .service(get_current_card_id) .service(get_current_card_and_games) @@ -23,13 +24,18 @@ pub(crate) fn config(cfg: &mut web::ServiceConfig) { .service(list_cards) .service(get_card) .service(create_game) + .service(create_games) .service(delete_game) .service(list_games) .service(get_game) .service(list_games_for_card) .service(list_cards_for_game) .service(list_cards_with_games) - .service(create_link); + .service(create_link) + .service(create_links) + .service(delete_link) + .service(delete_links) + ; } #[get("/version")] @@ -44,11 +50,14 @@ pub(crate) async fn health() -> impl Responder { #[get("/listen")] pub(crate) async fn listen(sender: web::Data>) -> Result { - sender.subscribe().recv().await.map_err(|_| Error::from_str("Unable to retrieve update"))?; + sender + .subscribe() + .recv() + .await + .map_err(|_| Error::from_str("Unable to retrieve update"))?; Ok(HttpResponse::Ok()) } - #[get("/list")] pub(crate) async fn list_cards_with_games(datastore: web::Data>) -> impl Responder { web::Json(datastore.list_cards_with_games()) @@ -77,7 +86,9 @@ pub(crate) async fn list_cards_for_game( } #[get("/current")] -pub(crate) async fn get_current_card_and_games(datastore: web::Data>) -> Result { +pub(crate) async fn get_current_card_and_games( + datastore: web::Data>, +) -> Result { if !is_card_inserted() { return Err(Error::from_str("No card is inserted").into()); } @@ -123,7 +134,6 @@ pub(crate) async fn get_games_on_current_card( } } - #[post("/card/{id}")] pub(crate) async fn create_card( id: web::Path, @@ -164,7 +174,7 @@ pub(crate) async fn get_card( Ok(web::Json(datastore.get_card(&id)?)) } -#[get("/cards")] +#[post("/cards")] pub(crate) async fn list_cards(datastore: web::Data>) -> impl Responder { web::Json(datastore.list_cards()) } @@ -179,11 +189,11 @@ pub(crate) async fn create_game( return Err(Error::from_str("uid did not match id provided").into()); } - let mut game = body.to_owned(); + let mut game = body.to_owned(); - if !cfg!(debug_assertions) { - game.is_steam = false; - } + if !cfg!(debug_assertions) { + game.is_steam = false; + } datastore.add_game(id.into_inner(), game); @@ -213,12 +223,36 @@ pub(crate) async fn list_games(datastore: web::Data>) -> impl Respond web::Json(datastore.list_games()) } +#[post("/games")] +pub(crate) async fn create_games( + body: web::Json>, + datastore: web::Data>, +) -> impl Responder { + for game in body.iter() { + let mut game = game.to_owned(); + + if !cfg!(debug_assertions) { + game.is_steam = false; + } + + datastore.add_game(game.uid.clone(), game); + } + + HttpResponse::Ok() +} + #[derive(Deserialize)] pub struct LinkBody { card_id: String, game_id: String, } +#[derive(Deserialize)] +pub struct ManyLinkBody { + card_id: String, + game_ids: Vec, +} + #[post("/link")] pub(crate) async fn create_link( body: web::Json, @@ -229,6 +263,20 @@ pub(crate) async fn create_link( Ok(HttpResponse::Ok()) } +#[post("/linkmany")] +pub(crate) async fn create_links( + body: web::Json, + datastore: web::Data>, +) -> Result { + + let data = body.into_inner(); + for game_id in data.game_ids.iter() { + datastore.link(&game_id, &data.card_id)?; + } + + Ok(HttpResponse::Ok()) +} + #[post("/unlink")] pub(crate) async fn delete_link( body: web::Json, @@ -239,6 +287,20 @@ pub(crate) async fn delete_link( Ok(HttpResponse::Ok()) } +#[post("/unlinkmany")] +pub(crate) async fn delete_links( + body: web::Json, + datastore: web::Data>, +) -> Result { + + let data = body.into_inner(); + for game_id in data.game_ids.iter() { + datastore.unlink(&game_id, &data.card_id)?; + } + + Ok(HttpResponse::Ok()) +} + #[post("/save")] pub(crate) async fn save(datastore: web::Data>) -> Result { datastore.write_to_file()?; diff --git a/lib/package.json b/lib/package.json index e70d56e..ae3042d 100644 --- a/lib/package.json +++ b/lib/package.json @@ -1,6 +1,6 @@ { "name": "@cebbinghaus/microsdeck", - "version": "0.9.5", + "version": "0.9.6", "description": "", "keywords": [], "author": "CEbbinghaus", diff --git a/lib/pnpm-lock.yaml b/lib/pnpm-lock.yaml index bc47792..486cfd2 100644 --- a/lib/pnpm-lock.yaml +++ b/lib/pnpm-lock.yaml @@ -1,52 +1,61 @@ -lockfileVersion: 5.4 +lockfileVersion: '6.0' -specifiers: - '@types/react': 16.14.0 - lipe: ^0.3.3 - typescript: ^4.9.5 +settings: + autoInstallPeers: true + excludeLinksFromLockfile: false dependencies: - typescript: 4.9.5 + typescript: + specifier: ^4.9.5 + version: 4.9.5 devDependencies: - '@types/react': 16.14.0 - lipe: 0.3.3_typescript@4.9.5 + '@types/react': + specifier: 16.14.0 + version: 16.14.0 + lipe: + specifier: ^0.3.3 + version: 0.3.3(@babel/core@7.23.2)(typescript@4.9.5) packages: - /@ampproject/remapping/2.2.1: + /@ampproject/remapping@2.2.1: resolution: {integrity: sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==} engines: {node: '>=6.0.0'} + requiresBuild: true dependencies: '@jridgewell/gen-mapping': 0.3.3 '@jridgewell/trace-mapping': 0.3.20 dev: true optional: true - /@babel/code-frame/7.22.13: + /@babel/code-frame@7.22.13: resolution: {integrity: sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==} engines: {node: '>=6.9.0'} + requiresBuild: true dependencies: '@babel/highlight': 7.22.20 chalk: 2.4.2 dev: true optional: true - /@babel/compat-data/7.23.2: + /@babel/compat-data@7.23.2: resolution: {integrity: sha512-0S9TQMmDHlqAZ2ITT95irXKfxN9bncq8ZCoJhun3nHL/lLUxd2NKBJYoNGWH7S0hz6fRQwWlAWn/ILM0C70KZQ==} engines: {node: '>=6.9.0'} + requiresBuild: true dev: true optional: true - /@babel/core/7.23.2: + /@babel/core@7.23.2: resolution: {integrity: sha512-n7s51eWdaWZ3vGT2tD4T7J6eJs3QoBXydv7vkUM06Bf1cbVD2Kc2UrkzhiQwobfV7NwOnQXYL7UBJ5VPU+RGoQ==} engines: {node: '>=6.9.0'} + requiresBuild: true dependencies: '@ampproject/remapping': 2.2.1 '@babel/code-frame': 7.22.13 '@babel/generator': 7.23.0 '@babel/helper-compilation-targets': 7.22.15 - '@babel/helper-module-transforms': 7.23.0_@babel+core@7.23.2 + '@babel/helper-module-transforms': 7.23.0(@babel/core@7.23.2) '@babel/helpers': 7.23.2 '@babel/parser': 7.23.0 '@babel/template': 7.22.15 @@ -62,9 +71,10 @@ packages: dev: true optional: true - /@babel/generator/7.23.0: + /@babel/generator@7.23.0: resolution: {integrity: sha512-lN85QRR+5IbYrMWM6Y4pE/noaQtg4pNiqeNGX60eqOfo6gtEj6uw/JagelB8vVztSd7R6M5n1+PQkDbHbBRU4g==} engines: {node: '>=6.9.0'} + requiresBuild: true dependencies: '@babel/types': 7.23.0 '@jridgewell/gen-mapping': 0.3.3 @@ -73,9 +83,10 @@ packages: dev: true optional: true - /@babel/helper-compilation-targets/7.22.15: + /@babel/helper-compilation-targets@7.22.15: resolution: {integrity: sha512-y6EEzULok0Qvz8yyLkCvVX+02ic+By2UdOhylwUOvOn9dvYc9mKICJuuU1n1XBI02YWsNsnrY1kc6DVbjcXbtw==} engines: {node: '>=6.9.0'} + requiresBuild: true dependencies: '@babel/compat-data': 7.23.2 '@babel/helper-validator-option': 7.22.15 @@ -85,40 +96,45 @@ packages: dev: true optional: true - /@babel/helper-environment-visitor/7.22.20: + /@babel/helper-environment-visitor@7.22.20: resolution: {integrity: sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==} engines: {node: '>=6.9.0'} + requiresBuild: true dev: true optional: true - /@babel/helper-function-name/7.23.0: + /@babel/helper-function-name@7.23.0: resolution: {integrity: sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==} engines: {node: '>=6.9.0'} + requiresBuild: true dependencies: '@babel/template': 7.22.15 '@babel/types': 7.23.0 dev: true optional: true - /@babel/helper-hoist-variables/7.22.5: + /@babel/helper-hoist-variables@7.22.5: resolution: {integrity: sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==} engines: {node: '>=6.9.0'} + requiresBuild: true dependencies: '@babel/types': 7.23.0 dev: true optional: true - /@babel/helper-module-imports/7.22.15: + /@babel/helper-module-imports@7.22.15: resolution: {integrity: sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==} engines: {node: '>=6.9.0'} + requiresBuild: true dependencies: '@babel/types': 7.23.0 dev: true optional: true - /@babel/helper-module-transforms/7.23.0_@babel+core@7.23.2: + /@babel/helper-module-transforms@7.23.0(@babel/core@7.23.2): resolution: {integrity: sha512-WhDWw1tdrlT0gMgUJSlX0IQvoO1eN279zrAUbVB+KpV2c3Tylz8+GnKOLllCS6Z/iZQEyVYxhZVUdPTqs2YYPw==} engines: {node: '>=6.9.0'} + requiresBuild: true peerDependencies: '@babel/core': ^7.0.0 dependencies: @@ -131,49 +147,56 @@ packages: dev: true optional: true - /@babel/helper-plugin-utils/7.22.5: + /@babel/helper-plugin-utils@7.22.5: resolution: {integrity: sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==} engines: {node: '>=6.9.0'} + requiresBuild: true dev: true optional: true - /@babel/helper-simple-access/7.22.5: + /@babel/helper-simple-access@7.22.5: resolution: {integrity: sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==} engines: {node: '>=6.9.0'} + requiresBuild: true dependencies: '@babel/types': 7.23.0 dev: true optional: true - /@babel/helper-split-export-declaration/7.22.6: + /@babel/helper-split-export-declaration@7.22.6: resolution: {integrity: sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==} engines: {node: '>=6.9.0'} + requiresBuild: true dependencies: '@babel/types': 7.23.0 dev: true optional: true - /@babel/helper-string-parser/7.22.5: + /@babel/helper-string-parser@7.22.5: resolution: {integrity: sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==} engines: {node: '>=6.9.0'} + requiresBuild: true dev: true optional: true - /@babel/helper-validator-identifier/7.22.20: + /@babel/helper-validator-identifier@7.22.20: resolution: {integrity: sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==} engines: {node: '>=6.9.0'} + requiresBuild: true dev: true optional: true - /@babel/helper-validator-option/7.22.15: + /@babel/helper-validator-option@7.22.15: resolution: {integrity: sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA==} engines: {node: '>=6.9.0'} + requiresBuild: true dev: true optional: true - /@babel/helpers/7.23.2: + /@babel/helpers@7.23.2: resolution: {integrity: sha512-lzchcp8SjTSVe/fPmLwtWVBFC7+Tbn8LGHDVfDp9JGxpAY5opSaEFgt8UQvrnECWOTdji2mOWMz1rOhkHscmGQ==} engines: {node: '>=6.9.0'} + requiresBuild: true dependencies: '@babel/template': 7.22.15 '@babel/traverse': 7.23.2 @@ -183,9 +206,10 @@ packages: dev: true optional: true - /@babel/highlight/7.22.20: + /@babel/highlight@7.22.20: resolution: {integrity: sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg==} engines: {node: '>=6.9.0'} + requiresBuild: true dependencies: '@babel/helper-validator-identifier': 7.22.20 chalk: 2.4.2 @@ -193,17 +217,19 @@ packages: dev: true optional: true - /@babel/parser/7.23.0: + /@babel/parser@7.23.0: resolution: {integrity: sha512-vvPKKdMemU85V9WE/l5wZEmImpCtLqbnTvqDS2U1fJ96KrxoW7KrXhNsNCblQlg8Ck4b85yxdTyelsMUgFUXiw==} engines: {node: '>=6.0.0'} hasBin: true + requiresBuild: true dependencies: '@babel/types': 7.23.0 dev: true optional: true - /@babel/plugin-syntax-async-generators/7.8.4_@babel+core@7.23.2: + /@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.23.2): resolution: {integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==} + requiresBuild: true peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -212,8 +238,9 @@ packages: dev: true optional: true - /@babel/plugin-syntax-bigint/7.8.3_@babel+core@7.23.2: + /@babel/plugin-syntax-bigint@7.8.3(@babel/core@7.23.2): resolution: {integrity: sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==} + requiresBuild: true peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -222,8 +249,9 @@ packages: dev: true optional: true - /@babel/plugin-syntax-class-properties/7.12.13_@babel+core@7.23.2: + /@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.23.2): resolution: {integrity: sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==} + requiresBuild: true peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -232,8 +260,9 @@ packages: dev: true optional: true - /@babel/plugin-syntax-import-meta/7.10.4_@babel+core@7.23.2: + /@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.23.2): resolution: {integrity: sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==} + requiresBuild: true peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -242,8 +271,9 @@ packages: dev: true optional: true - /@babel/plugin-syntax-json-strings/7.8.3_@babel+core@7.23.2: + /@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.23.2): resolution: {integrity: sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==} + requiresBuild: true peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -252,8 +282,9 @@ packages: dev: true optional: true - /@babel/plugin-syntax-logical-assignment-operators/7.10.4_@babel+core@7.23.2: + /@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.23.2): resolution: {integrity: sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==} + requiresBuild: true peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -262,8 +293,9 @@ packages: dev: true optional: true - /@babel/plugin-syntax-nullish-coalescing-operator/7.8.3_@babel+core@7.23.2: + /@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.23.2): resolution: {integrity: sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==} + requiresBuild: true peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -272,8 +304,9 @@ packages: dev: true optional: true - /@babel/plugin-syntax-numeric-separator/7.10.4_@babel+core@7.23.2: + /@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.23.2): resolution: {integrity: sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==} + requiresBuild: true peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -282,8 +315,9 @@ packages: dev: true optional: true - /@babel/plugin-syntax-object-rest-spread/7.8.3_@babel+core@7.23.2: + /@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.23.2): resolution: {integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==} + requiresBuild: true peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -292,8 +326,9 @@ packages: dev: true optional: true - /@babel/plugin-syntax-optional-catch-binding/7.8.3_@babel+core@7.23.2: + /@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.23.2): resolution: {integrity: sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==} + requiresBuild: true peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -302,8 +337,9 @@ packages: dev: true optional: true - /@babel/plugin-syntax-optional-chaining/7.8.3_@babel+core@7.23.2: + /@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.23.2): resolution: {integrity: sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==} + requiresBuild: true peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -312,9 +348,10 @@ packages: dev: true optional: true - /@babel/plugin-syntax-top-level-await/7.14.5_@babel+core@7.23.2: + /@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.23.2): resolution: {integrity: sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==} engines: {node: '>=6.9.0'} + requiresBuild: true peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -323,9 +360,10 @@ packages: dev: true optional: true - /@babel/plugin-syntax-typescript/7.22.5_@babel+core@7.23.2: + /@babel/plugin-syntax-typescript@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-1mS2o03i7t1c6VzH6fdQ3OA8tcEIxwG18zIPRp+UY1Ihv6W+XZzBCVxExF9upussPXJ0xE9XRHwMoNs1ep/nRQ==} engines: {node: '>=6.9.0'} + requiresBuild: true peerDependencies: '@babel/core': ^7.0.0-0 dependencies: @@ -334,9 +372,10 @@ packages: dev: true optional: true - /@babel/template/7.22.15: + /@babel/template@7.22.15: resolution: {integrity: sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==} engines: {node: '>=6.9.0'} + requiresBuild: true dependencies: '@babel/code-frame': 7.22.13 '@babel/parser': 7.23.0 @@ -344,9 +383,10 @@ packages: dev: true optional: true - /@babel/traverse/7.23.2: + /@babel/traverse@7.23.2: resolution: {integrity: sha512-azpe59SQ48qG6nu2CzcMLbxUudtN+dOM9kDbUqGq3HXUJRlo7i8fvPoxQUzYgLZ4cMVmuZgm8vvBpNeRhd6XSw==} engines: {node: '>=6.9.0'} + requiresBuild: true dependencies: '@babel/code-frame': 7.22.13 '@babel/generator': 7.23.0 @@ -363,9 +403,10 @@ packages: dev: true optional: true - /@babel/types/7.23.0: + /@babel/types@7.23.0: resolution: {integrity: sha512-0oIyUfKoI3mSqMvsxBdclDwxXKXAUA8v/apZbc+iSyARYou1o8ZGDxbUYyLFoW2arqS2jDGqJuZvv1d/io1axg==} engines: {node: '>=6.9.0'} + requiresBuild: true dependencies: '@babel/helper-string-parser': 7.22.5 '@babel/helper-validator-identifier': 7.22.20 @@ -373,14 +414,16 @@ packages: dev: true optional: true - /@bcoe/v8-coverage/0.2.3: + /@bcoe/v8-coverage@0.2.3: resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==} + requiresBuild: true dev: true optional: true - /@istanbuljs/load-nyc-config/1.1.0: + /@istanbuljs/load-nyc-config@1.1.0: resolution: {integrity: sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==} engines: {node: '>=8'} + requiresBuild: true dependencies: camelcase: 5.3.1 find-up: 4.1.0 @@ -390,15 +433,17 @@ packages: dev: true optional: true - /@istanbuljs/schema/0.1.3: + /@istanbuljs/schema@0.1.3: resolution: {integrity: sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==} engines: {node: '>=8'} + requiresBuild: true dev: true optional: true - /@jest/console/27.5.1: + /@jest/console@27.5.1: resolution: {integrity: sha512-kZ/tNpS3NXn0mlXXXPNuDZnb4c0oZ20r4K5eemM2k30ZC3G0T02nXUvyhf5YdbXWHPEJLc9qGLxEZ216MdL+Zg==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + requiresBuild: true dependencies: '@jest/types': 27.5.1 '@types/node': 20.8.9 @@ -409,9 +454,10 @@ packages: dev: true optional: true - /@jest/core/27.5.1: + /@jest/core@27.5.1: resolution: {integrity: sha512-AK6/UTrvQD0Cd24NSqmIA6rKsu0tKIxfiCducZvqxYdmMisOYAsdItspT+fQDQYARPf8XgjAFZi0ogW2agH5nQ==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + requiresBuild: true peerDependencies: node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 peerDependenciesMeta: @@ -455,9 +501,10 @@ packages: dev: true optional: true - /@jest/environment/27.5.1: + /@jest/environment@27.5.1: resolution: {integrity: sha512-/WQjhPJe3/ghaol/4Bq480JKXV/Rfw8nQdN7f41fM8VDHLcxKXou6QyXAh3EFr9/bVG3x74z1NWDkP87EiY8gA==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + requiresBuild: true dependencies: '@jest/fake-timers': 27.5.1 '@jest/types': 27.5.1 @@ -466,9 +513,10 @@ packages: dev: true optional: true - /@jest/fake-timers/27.5.1: + /@jest/fake-timers@27.5.1: resolution: {integrity: sha512-/aPowoolwa07k7/oM3aASneNeBGCmGQsc3ugN4u6s4C/+s5M64MFo/+djTdiwcbQlRfFElGuDXWzaWj6QgKObQ==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + requiresBuild: true dependencies: '@jest/types': 27.5.1 '@sinonjs/fake-timers': 8.1.0 @@ -479,9 +527,10 @@ packages: dev: true optional: true - /@jest/globals/27.5.1: + /@jest/globals@27.5.1: resolution: {integrity: sha512-ZEJNB41OBQQgGzgyInAv0UUfDDj3upmHydjieSxFvTRuZElrx7tXg/uVQ5hYVEwiXs3+aMsAeEc9X7xiSKCm4Q==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + requiresBuild: true dependencies: '@jest/environment': 27.5.1 '@jest/types': 27.5.1 @@ -489,9 +538,10 @@ packages: dev: true optional: true - /@jest/reporters/27.5.1: + /@jest/reporters@27.5.1: resolution: {integrity: sha512-cPXh9hWIlVJMQkVk84aIvXuBB4uQQmFqZiacloFuGiP3ah1sbCxCosidXFDfqG8+6fO1oR2dTJTlsOy4VFmUfw==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + requiresBuild: true peerDependencies: node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 peerDependenciesMeta: @@ -528,9 +578,10 @@ packages: dev: true optional: true - /@jest/source-map/27.5.1: + /@jest/source-map@27.5.1: resolution: {integrity: sha512-y9NIHUYF3PJRlHk98NdC/N1gl88BL08aQQgu4k4ZopQkCw9t9cV8mtl3TV8b/YCB8XaVTFrmUTAJvjsntDireg==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + requiresBuild: true dependencies: callsites: 3.1.0 graceful-fs: 4.2.11 @@ -538,9 +589,10 @@ packages: dev: true optional: true - /@jest/test-result/27.5.1: + /@jest/test-result@27.5.1: resolution: {integrity: sha512-EW35l2RYFUcUQxFJz5Cv5MTOxlJIQs4I7gxzi2zVU7PJhOwfYq1MdC5nhSmYjX1gmMmLPvB3sIaC+BkcHRBfag==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + requiresBuild: true dependencies: '@jest/console': 27.5.1 '@jest/types': 27.5.1 @@ -549,9 +601,10 @@ packages: dev: true optional: true - /@jest/test-sequencer/27.5.1: + /@jest/test-sequencer@27.5.1: resolution: {integrity: sha512-LCheJF7WB2+9JuCS7VB/EmGIdQuhtqjRNI9A43idHv3E4KltCTsPsLxvdaubFHSYwY/fNjMWjl6vNRhDiN7vpQ==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + requiresBuild: true dependencies: '@jest/test-result': 27.5.1 graceful-fs: 4.2.11 @@ -562,9 +615,10 @@ packages: dev: true optional: true - /@jest/transform/27.5.1: + /@jest/transform@27.5.1: resolution: {integrity: sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + requiresBuild: true dependencies: '@babel/core': 7.23.2 '@jest/types': 27.5.1 @@ -586,9 +640,10 @@ packages: dev: true optional: true - /@jest/types/27.5.1: + /@jest/types@27.5.1: resolution: {integrity: sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + requiresBuild: true dependencies: '@types/istanbul-lib-coverage': 2.0.5 '@types/istanbul-reports': 3.0.3 @@ -598,9 +653,10 @@ packages: dev: true optional: true - /@jridgewell/gen-mapping/0.3.3: + /@jridgewell/gen-mapping@0.3.3: resolution: {integrity: sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==} engines: {node: '>=6.0.0'} + requiresBuild: true dependencies: '@jridgewell/set-array': 1.1.2 '@jridgewell/sourcemap-codec': 1.4.15 @@ -608,53 +664,61 @@ packages: dev: true optional: true - /@jridgewell/resolve-uri/3.1.1: + /@jridgewell/resolve-uri@3.1.1: resolution: {integrity: sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==} engines: {node: '>=6.0.0'} + requiresBuild: true dev: true optional: true - /@jridgewell/set-array/1.1.2: + /@jridgewell/set-array@1.1.2: resolution: {integrity: sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==} engines: {node: '>=6.0.0'} + requiresBuild: true dev: true optional: true - /@jridgewell/sourcemap-codec/1.4.15: + /@jridgewell/sourcemap-codec@1.4.15: resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==} + requiresBuild: true dev: true optional: true - /@jridgewell/trace-mapping/0.3.20: + /@jridgewell/trace-mapping@0.3.20: resolution: {integrity: sha512-R8LcPeWZol2zR8mmH3JeKQ6QRCFb7XgUhV9ZlGhHLGyg4wpPiPZNQOOWhFZhxKw8u//yTbNGI42Bx/3paXEQ+Q==} + requiresBuild: true dependencies: '@jridgewell/resolve-uri': 3.1.1 '@jridgewell/sourcemap-codec': 1.4.15 dev: true optional: true - /@sinonjs/commons/1.8.6: + /@sinonjs/commons@1.8.6: resolution: {integrity: sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ==} + requiresBuild: true dependencies: type-detect: 4.0.8 dev: true optional: true - /@sinonjs/fake-timers/8.1.0: + /@sinonjs/fake-timers@8.1.0: resolution: {integrity: sha512-OAPJUAtgeINhh/TAlUID4QTs53Njm7xzddaVlEs/SXwgtiD1tW22zAB/W1wdqfrpmikgaWQ9Fw6Ws+hsiRm5Vg==} + requiresBuild: true dependencies: '@sinonjs/commons': 1.8.6 dev: true optional: true - /@tootallnate/once/1.1.2: + /@tootallnate/once@1.1.2: resolution: {integrity: sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==} engines: {node: '>= 6'} + requiresBuild: true dev: true optional: true - /@types/babel__core/7.20.3: + /@types/babel__core@7.20.3: resolution: {integrity: sha512-54fjTSeSHwfan8AyHWrKbfBWiEUrNTZsUwPTDSNaaP1QDQIZbeNUg3a59E9D+375MzUw/x1vx2/0F5LBz+AeYA==} + requiresBuild: true dependencies: '@babel/parser': 7.23.0 '@babel/types': 7.23.0 @@ -664,55 +728,62 @@ packages: dev: true optional: true - /@types/babel__generator/7.6.6: + /@types/babel__generator@7.6.6: resolution: {integrity: sha512-66BXMKb/sUWbMdBNdMvajU7i/44RkrA3z/Yt1c7R5xejt8qh84iU54yUWCtm0QwGJlDcf/gg4zd/x4mpLAlb/w==} + requiresBuild: true dependencies: '@babel/types': 7.23.0 dev: true optional: true - /@types/babel__template/7.4.3: + /@types/babel__template@7.4.3: resolution: {integrity: sha512-ciwyCLeuRfxboZ4isgdNZi/tkt06m8Tw6uGbBSBgWrnnZGNXiEyM27xc/PjXGQLqlZ6ylbgHMnm7ccF9tCkOeQ==} + requiresBuild: true dependencies: '@babel/parser': 7.23.0 '@babel/types': 7.23.0 dev: true optional: true - /@types/babel__traverse/7.20.3: + /@types/babel__traverse@7.20.3: resolution: {integrity: sha512-Lsh766rGEFbaxMIDH7Qa+Yha8cMVI3qAK6CHt3OR0YfxOIn5Z54iHiyDRycHrBqeIiqGa20Kpsv1cavfBKkRSw==} + requiresBuild: true dependencies: '@babel/types': 7.23.0 dev: true optional: true - /@types/graceful-fs/4.1.8: + /@types/graceful-fs@4.1.8: resolution: {integrity: sha512-NhRH7YzWq8WiNKVavKPBmtLYZHxNY19Hh+az28O/phfp68CF45pMFud+ZzJ8ewnxnC5smIdF3dqFeiSUQ5I+pw==} + requiresBuild: true dependencies: '@types/node': 20.8.9 dev: true optional: true - /@types/istanbul-lib-coverage/2.0.5: + /@types/istanbul-lib-coverage@2.0.5: resolution: {integrity: sha512-zONci81DZYCZjiLe0r6equvZut0b+dBRPBN5kBDjsONnutYNtJMoWQ9uR2RkL1gLG9NMTzvf+29e5RFfPbeKhQ==} + requiresBuild: true dev: true optional: true - /@types/istanbul-lib-report/3.0.2: + /@types/istanbul-lib-report@3.0.2: resolution: {integrity: sha512-8toY6FgdltSdONav1XtUHl4LN1yTmLza+EuDazb/fEmRNCwjyqNVIQWs2IfC74IqjHkREs/nQ2FWq5kZU9IC0w==} + requiresBuild: true dependencies: '@types/istanbul-lib-coverage': 2.0.5 dev: true optional: true - /@types/istanbul-reports/3.0.3: + /@types/istanbul-reports@3.0.3: resolution: {integrity: sha512-1nESsePMBlf0RPRffLZi5ujYh7IH1BWL4y9pr+Bn3cJBdxz+RTP8bUFljLz9HvzhhOSWKdyBZ4DIivdL6rvgZg==} + requiresBuild: true dependencies: '@types/istanbul-lib-report': 3.0.2 dev: true optional: true - /@types/jest/27.5.2: + /@types/jest@27.5.2: resolution: {integrity: sha512-mpT8LJJ4CMeeahobofYWIjFo0xonRS/HfxnVEPMPFSQdGUt1uHCnoPT7Zhb+sjDU2wz0oKV0OLUR0WzrHNgfeA==} requiresBuild: true dependencies: @@ -721,82 +792,93 @@ packages: dev: true optional: true - /@types/node/20.8.9: + /@types/node@20.8.9: resolution: {integrity: sha512-UzykFsT3FhHb1h7yD4CA4YhBHq545JC0YnEz41xkipN88eKQtL6rSgocL5tbAP6Ola9Izm/Aw4Ora8He4x0BHg==} + requiresBuild: true dependencies: undici-types: 5.26.5 dev: true optional: true - /@types/prettier/2.7.3: + /@types/prettier@2.7.3: resolution: {integrity: sha512-+68kP9yzs4LMp7VNh8gdzMSPZFL44MLGqiHWvttYJe+6qnuVr4Ek9wSBQoveqY/r+LwjCcU29kNVkidwim+kYA==} + requiresBuild: true dev: true optional: true - /@types/prop-types/15.7.9: + /@types/prop-types@15.7.9: resolution: {integrity: sha512-n1yyPsugYNSmHgxDFjicaI2+gCNjsBck8UX9kuofAKlc0h1bL+20oSF72KeNaW2DUlesbEVCFgyV2dPGTiY42g==} dev: true - /@types/react/16.14.0: + /@types/react@16.14.0: resolution: {integrity: sha512-jJjHo1uOe+NENRIBvF46tJimUvPnmbQ41Ax0pEm7pRvhPg+wuj8VMOHHiMvaGmZRzRrCtm7KnL5OOE/6kHPK8w==} dependencies: '@types/prop-types': 15.7.9 csstype: 3.1.2 dev: true - /@types/stack-utils/2.0.2: + /@types/stack-utils@2.0.2: resolution: {integrity: sha512-g7CK9nHdwjK2n0ymT2CW698FuWJRIx+RP6embAzZ2Qi8/ilIrA1Imt2LVSeHUzKvpoi7BhmmQcXz95eS0f2JXw==} + requiresBuild: true dev: true optional: true - /@types/yargs-parser/21.0.2: + /@types/yargs-parser@21.0.2: resolution: {integrity: sha512-5qcvofLPbfjmBfKaLfj/+f+Sbd6pN4zl7w7VSVI5uz7m9QZTuB2aZAa2uo1wHFBNN2x6g/SoTkXmd8mQnQF2Cw==} + requiresBuild: true dev: true optional: true - /@types/yargs/16.0.7: + /@types/yargs@16.0.7: resolution: {integrity: sha512-lQcYmxWuOfJq4IncK88/nwud9rwr1F04CFc5xzk0k4oKVyz/AI35TfsXmhjf6t8zp8mpCOi17BfvuNWx+zrYkg==} + requiresBuild: true dependencies: '@types/yargs-parser': 21.0.2 dev: true optional: true - /abab/2.0.6: + /abab@2.0.6: resolution: {integrity: sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==} + requiresBuild: true dev: true optional: true - /acorn-globals/6.0.0: + /acorn-globals@6.0.0: resolution: {integrity: sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==} + requiresBuild: true dependencies: acorn: 7.4.1 acorn-walk: 7.2.0 dev: true optional: true - /acorn-walk/7.2.0: + /acorn-walk@7.2.0: resolution: {integrity: sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==} engines: {node: '>=0.4.0'} + requiresBuild: true dev: true optional: true - /acorn/7.4.1: + /acorn@7.4.1: resolution: {integrity: sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==} engines: {node: '>=0.4.0'} hasBin: true + requiresBuild: true dev: true optional: true - /acorn/8.10.0: + /acorn@8.10.0: resolution: {integrity: sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==} engines: {node: '>=0.4.0'} hasBin: true + requiresBuild: true dev: true optional: true - /agent-base/6.0.2: + /agent-base@6.0.2: resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==} engines: {node: '>= 6.0.0'} + requiresBuild: true dependencies: debug: 4.3.4 transitivePeerDependencies: @@ -804,66 +886,75 @@ packages: dev: true optional: true - /ansi-escapes/4.3.2: + /ansi-escapes@4.3.2: resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==} engines: {node: '>=8'} + requiresBuild: true dependencies: type-fest: 0.21.3 dev: true optional: true - /ansi-regex/5.0.1: + /ansi-regex@5.0.1: resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} engines: {node: '>=8'} + requiresBuild: true dev: true optional: true - /ansi-styles/3.2.1: + /ansi-styles@3.2.1: resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} engines: {node: '>=4'} + requiresBuild: true dependencies: color-convert: 1.9.3 dev: true optional: true - /ansi-styles/4.3.0: + /ansi-styles@4.3.0: resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} engines: {node: '>=8'} + requiresBuild: true dependencies: color-convert: 2.0.1 dev: true optional: true - /ansi-styles/5.2.0: + /ansi-styles@5.2.0: resolution: {integrity: sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==} engines: {node: '>=10'} + requiresBuild: true dev: true optional: true - /anymatch/3.1.3: + /anymatch@3.1.3: resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} engines: {node: '>= 8'} + requiresBuild: true dependencies: normalize-path: 3.0.0 picomatch: 2.3.1 dev: true optional: true - /argparse/1.0.10: + /argparse@1.0.10: resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==} + requiresBuild: true dependencies: sprintf-js: 1.0.3 dev: true optional: true - /asynckit/0.4.0: + /asynckit@0.4.0: resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} + requiresBuild: true dev: true optional: true - /babel-jest/27.5.1_@babel+core@7.23.2: + /babel-jest@27.5.1(@babel/core@7.23.2): resolution: {integrity: sha512-cdQ5dXjGRd0IBRATiQ4mZGlGlRE8kJpjPOixdNRdT+m3UcNqmYWN6rK6nvtXYfY3D76cb8s/O1Ss8ea24PIwcg==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + requiresBuild: true peerDependencies: '@babel/core': ^7.8.0 dependencies: @@ -872,7 +963,7 @@ packages: '@jest/types': 27.5.1 '@types/babel__core': 7.20.3 babel-plugin-istanbul: 6.1.1 - babel-preset-jest: 27.5.1_@babel+core@7.23.2 + babel-preset-jest: 27.5.1(@babel/core@7.23.2) chalk: 4.1.2 graceful-fs: 4.2.11 slash: 3.0.0 @@ -881,9 +972,10 @@ packages: dev: true optional: true - /babel-plugin-istanbul/6.1.1: + /babel-plugin-istanbul@6.1.1: resolution: {integrity: sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==} engines: {node: '>=8'} + requiresBuild: true dependencies: '@babel/helper-plugin-utils': 7.22.5 '@istanbuljs/load-nyc-config': 1.1.0 @@ -895,9 +987,10 @@ packages: dev: true optional: true - /babel-plugin-jest-hoist/27.5.1: + /babel-plugin-jest-hoist@27.5.1: resolution: {integrity: sha512-50wCwD5EMNW4aRpOwtqzyZHIewTYNxLA4nhB+09d8BIssfNfzBRhkBIHiaPv1Si226TQSvp8gxAJm2iY2qs2hQ==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + requiresBuild: true dependencies: '@babel/template': 7.22.15 '@babel/types': 7.23.0 @@ -906,123 +999,138 @@ packages: dev: true optional: true - /babel-preset-current-node-syntax/1.0.1_@babel+core@7.23.2: + /babel-preset-current-node-syntax@1.0.1(@babel/core@7.23.2): resolution: {integrity: sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==} + requiresBuild: true peerDependencies: '@babel/core': ^7.0.0 dependencies: '@babel/core': 7.23.2 - '@babel/plugin-syntax-async-generators': 7.8.4_@babel+core@7.23.2 - '@babel/plugin-syntax-bigint': 7.8.3_@babel+core@7.23.2 - '@babel/plugin-syntax-class-properties': 7.12.13_@babel+core@7.23.2 - '@babel/plugin-syntax-import-meta': 7.10.4_@babel+core@7.23.2 - '@babel/plugin-syntax-json-strings': 7.8.3_@babel+core@7.23.2 - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4_@babel+core@7.23.2 - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3_@babel+core@7.23.2 - '@babel/plugin-syntax-numeric-separator': 7.10.4_@babel+core@7.23.2 - '@babel/plugin-syntax-object-rest-spread': 7.8.3_@babel+core@7.23.2 - '@babel/plugin-syntax-optional-catch-binding': 7.8.3_@babel+core@7.23.2 - '@babel/plugin-syntax-optional-chaining': 7.8.3_@babel+core@7.23.2 - '@babel/plugin-syntax-top-level-await': 7.14.5_@babel+core@7.23.2 - dev: true - optional: true - - /babel-preset-jest/27.5.1_@babel+core@7.23.2: + '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.23.2) + '@babel/plugin-syntax-bigint': 7.8.3(@babel/core@7.23.2) + '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.23.2) + '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.23.2) + '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.23.2) + '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.23.2) + '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.23.2) + '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.23.2) + '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.23.2) + '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.23.2) + '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.23.2) + '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.23.2) + dev: true + optional: true + + /babel-preset-jest@27.5.1(@babel/core@7.23.2): resolution: {integrity: sha512-Nptf2FzlPCWYuJg41HBqXVT8ym6bXOevuCTbhxlUpjwtysGaIWFvDEjp4y+G7fl13FgOdjs7P/DmErqH7da0Ag==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + requiresBuild: true peerDependencies: '@babel/core': ^7.0.0 dependencies: '@babel/core': 7.23.2 babel-plugin-jest-hoist: 27.5.1 - babel-preset-current-node-syntax: 1.0.1_@babel+core@7.23.2 + babel-preset-current-node-syntax: 1.0.1(@babel/core@7.23.2) dev: true optional: true - /balanced-match/1.0.2: + /balanced-match@1.0.2: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} + requiresBuild: true dev: true optional: true - /brace-expansion/1.1.11: + /brace-expansion@1.1.11: resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} + requiresBuild: true dependencies: balanced-match: 1.0.2 concat-map: 0.0.1 dev: true optional: true - /braces/3.0.2: + /braces@3.0.2: resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==} engines: {node: '>=8'} + requiresBuild: true dependencies: fill-range: 7.0.1 dev: true optional: true - /browser-process-hrtime/1.0.0: + /browser-process-hrtime@1.0.0: resolution: {integrity: sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==} + requiresBuild: true dev: true optional: true - /browserslist/4.22.1: + /browserslist@4.22.1: resolution: {integrity: sha512-FEVc202+2iuClEhZhrWy6ZiAcRLvNMyYcxZ8raemul1DYVOVdFsbqckWLdsixQZCpJlwe77Z3UTalE7jsjnKfQ==} engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} hasBin: true + requiresBuild: true dependencies: caniuse-lite: 1.0.30001554 electron-to-chromium: 1.4.567 node-releases: 2.0.13 - update-browserslist-db: 1.0.13_browserslist@4.22.1 + update-browserslist-db: 1.0.13(browserslist@4.22.1) dev: true optional: true - /bs-logger/0.2.6: + /bs-logger@0.2.6: resolution: {integrity: sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==} engines: {node: '>= 6'} + requiresBuild: true dependencies: fast-json-stable-stringify: 2.1.0 dev: true optional: true - /bser/2.1.1: + /bser@2.1.1: resolution: {integrity: sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==} + requiresBuild: true dependencies: node-int64: 0.4.0 dev: true optional: true - /buffer-from/1.1.2: + /buffer-from@1.1.2: resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} + requiresBuild: true dev: true optional: true - /callsites/3.1.0: + /callsites@3.1.0: resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} engines: {node: '>=6'} + requiresBuild: true dev: true optional: true - /camelcase/5.3.1: + /camelcase@5.3.1: resolution: {integrity: sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==} engines: {node: '>=6'} + requiresBuild: true dev: true optional: true - /camelcase/6.3.0: + /camelcase@6.3.0: resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==} engines: {node: '>=10'} + requiresBuild: true dev: true optional: true - /caniuse-lite/1.0.30001554: + /caniuse-lite@1.0.30001554: resolution: {integrity: sha512-A2E3U//MBwbJVzebddm1YfNp7Nud5Ip+IPn4BozBmn4KqVX7AvluoIDFWjsv5OkGnKUXQVmMSoMKLa3ScCblcQ==} + requiresBuild: true dev: true optional: true - /chalk/2.4.2: + /chalk@2.4.2: resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} engines: {node: '>=4'} + requiresBuild: true dependencies: ansi-styles: 3.2.1 escape-string-regexp: 1.0.5 @@ -1030,34 +1138,39 @@ packages: dev: true optional: true - /chalk/4.1.2: + /chalk@4.1.2: resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} engines: {node: '>=10'} + requiresBuild: true dependencies: ansi-styles: 4.3.0 supports-color: 7.2.0 dev: true optional: true - /char-regex/1.0.2: + /char-regex@1.0.2: resolution: {integrity: sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==} engines: {node: '>=10'} + requiresBuild: true dev: true optional: true - /ci-info/3.9.0: + /ci-info@3.9.0: resolution: {integrity: sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==} engines: {node: '>=8'} + requiresBuild: true dev: true optional: true - /cjs-module-lexer/1.2.3: + /cjs-module-lexer@1.2.3: resolution: {integrity: sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ==} + requiresBuild: true dev: true optional: true - /cliui/7.0.4: + /cliui@7.0.4: resolution: {integrity: sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==} + requiresBuild: true dependencies: string-width: 4.2.3 strip-ansi: 6.0.1 @@ -1065,68 +1178,79 @@ packages: dev: true optional: true - /co/4.6.0: + /co@4.6.0: resolution: {integrity: sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==} engines: {iojs: '>= 1.0.0', node: '>= 0.12.0'} + requiresBuild: true dev: true optional: true - /collect-v8-coverage/1.0.2: + /collect-v8-coverage@1.0.2: resolution: {integrity: sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==} + requiresBuild: true dev: true optional: true - /color-convert/1.9.3: + /color-convert@1.9.3: resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} + requiresBuild: true dependencies: color-name: 1.1.3 dev: true optional: true - /color-convert/2.0.1: + /color-convert@2.0.1: resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} engines: {node: '>=7.0.0'} + requiresBuild: true dependencies: color-name: 1.1.4 dev: true optional: true - /color-name/1.1.3: + /color-name@1.1.3: resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==} + requiresBuild: true dev: true optional: true - /color-name/1.1.4: + /color-name@1.1.4: resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} + requiresBuild: true dev: true optional: true - /combined-stream/1.0.8: + /combined-stream@1.0.8: resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} engines: {node: '>= 0.8'} + requiresBuild: true dependencies: delayed-stream: 1.0.0 dev: true optional: true - /concat-map/0.0.1: + /concat-map@0.0.1: resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} + requiresBuild: true dev: true optional: true - /convert-source-map/1.9.0: + /convert-source-map@1.9.0: resolution: {integrity: sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==} + requiresBuild: true dev: true optional: true - /convert-source-map/2.0.0: + /convert-source-map@2.0.0: resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} + requiresBuild: true dev: true optional: true - /cross-spawn/7.0.3: + /cross-spawn@7.0.3: resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} engines: {node: '>= 8'} + requiresBuild: true dependencies: path-key: 3.1.1 shebang-command: 2.0.0 @@ -1134,31 +1258,35 @@ packages: dev: true optional: true - /cssom/0.3.8: + /cssom@0.3.8: resolution: {integrity: sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==} + requiresBuild: true dev: true optional: true - /cssom/0.4.4: + /cssom@0.4.4: resolution: {integrity: sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==} + requiresBuild: true dev: true optional: true - /cssstyle/2.3.0: + /cssstyle@2.3.0: resolution: {integrity: sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==} engines: {node: '>=8'} + requiresBuild: true dependencies: cssom: 0.3.8 dev: true optional: true - /csstype/3.1.2: + /csstype@3.1.2: resolution: {integrity: sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==} dev: true - /data-urls/2.0.0: + /data-urls@2.0.0: resolution: {integrity: sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==} engines: {node: '>=10'} + requiresBuild: true dependencies: abab: 2.0.6 whatwg-mimetype: 2.3.0 @@ -1166,9 +1294,10 @@ packages: dev: true optional: true - /debug/4.3.4: + /debug@4.3.4: resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} engines: {node: '>=6.0'} + requiresBuild: true peerDependencies: supports-color: '*' peerDependenciesMeta: @@ -1179,93 +1308,108 @@ packages: dev: true optional: true - /decimal.js/10.4.3: + /decimal.js@10.4.3: resolution: {integrity: sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==} + requiresBuild: true dev: true optional: true - /dedent/0.7.0: + /dedent@0.7.0: resolution: {integrity: sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==} + requiresBuild: true dev: true optional: true - /deepmerge/4.3.1: + /deepmerge@4.3.1: resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==} engines: {node: '>=0.10.0'} + requiresBuild: true dev: true optional: true - /delayed-stream/1.0.0: + /delayed-stream@1.0.0: resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} engines: {node: '>=0.4.0'} + requiresBuild: true dev: true optional: true - /detect-newline/3.1.0: + /detect-newline@3.1.0: resolution: {integrity: sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==} engines: {node: '>=8'} + requiresBuild: true dev: true optional: true - /diff-sequences/27.5.1: + /diff-sequences@27.5.1: resolution: {integrity: sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + requiresBuild: true dev: true optional: true - /domexception/2.0.1: + /domexception@2.0.1: resolution: {integrity: sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==} engines: {node: '>=8'} + requiresBuild: true dependencies: webidl-conversions: 5.0.0 dev: true optional: true - /electron-to-chromium/1.4.567: + /electron-to-chromium@1.4.567: resolution: {integrity: sha512-8KR114CAYQ4/r5EIEsOmOMqQ9j0MRbJZR3aXD/KFA8RuKzyoUB4XrUCg+l8RUGqTVQgKNIgTpjaG8YHRPAbX2w==} + requiresBuild: true dev: true optional: true - /emittery/0.8.1: + /emittery@0.8.1: resolution: {integrity: sha512-uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg==} engines: {node: '>=10'} + requiresBuild: true dev: true optional: true - /emoji-regex/8.0.0: + /emoji-regex@8.0.0: resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} + requiresBuild: true dev: true optional: true - /error-ex/1.3.2: + /error-ex@1.3.2: resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==} + requiresBuild: true dependencies: is-arrayish: 0.2.1 dev: true optional: true - /escalade/3.1.1: + /escalade@3.1.1: resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} engines: {node: '>=6'} + requiresBuild: true dev: true optional: true - /escape-string-regexp/1.0.5: + /escape-string-regexp@1.0.5: resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} engines: {node: '>=0.8.0'} + requiresBuild: true dev: true optional: true - /escape-string-regexp/2.0.0: + /escape-string-regexp@2.0.0: resolution: {integrity: sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==} engines: {node: '>=8'} + requiresBuild: true dev: true optional: true - /escodegen/2.1.0: + /escodegen@2.1.0: resolution: {integrity: sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==} engines: {node: '>=6.0'} hasBin: true + requiresBuild: true dependencies: esprima: 4.0.1 estraverse: 5.3.0 @@ -1275,28 +1419,32 @@ packages: dev: true optional: true - /esprima/4.0.1: + /esprima@4.0.1: resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==} engines: {node: '>=4'} hasBin: true + requiresBuild: true dev: true optional: true - /estraverse/5.3.0: + /estraverse@5.3.0: resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} engines: {node: '>=4.0'} + requiresBuild: true dev: true optional: true - /esutils/2.0.3: + /esutils@2.0.3: resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} engines: {node: '>=0.10.0'} + requiresBuild: true dev: true optional: true - /execa/5.1.1: + /execa@5.1.1: resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==} engines: {node: '>=10'} + requiresBuild: true dependencies: cross-spawn: 7.0.3 get-stream: 6.0.1 @@ -1310,15 +1458,17 @@ packages: dev: true optional: true - /exit/0.1.2: + /exit@0.1.2: resolution: {integrity: sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==} engines: {node: '>= 0.8.0'} + requiresBuild: true dev: true optional: true - /expect/27.5.1: + /expect@27.5.1: resolution: {integrity: sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + requiresBuild: true dependencies: '@jest/types': 27.5.1 jest-get-type: 27.5.1 @@ -1327,38 +1477,43 @@ packages: dev: true optional: true - /fast-json-stable-stringify/2.1.0: + /fast-json-stable-stringify@2.1.0: resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} + requiresBuild: true dev: true optional: true - /fb-watchman/2.0.2: + /fb-watchman@2.0.2: resolution: {integrity: sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==} + requiresBuild: true dependencies: bser: 2.1.1 dev: true optional: true - /fill-range/7.0.1: + /fill-range@7.0.1: resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==} engines: {node: '>=8'} + requiresBuild: true dependencies: to-regex-range: 5.0.1 dev: true optional: true - /find-up/4.1.0: + /find-up@4.1.0: resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} engines: {node: '>=8'} + requiresBuild: true dependencies: locate-path: 5.0.0 path-exists: 4.0.0 dev: true optional: true - /form-data/3.0.1: + /form-data@3.0.1: resolution: {integrity: sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==} engines: {node: '>= 6'} + requiresBuild: true dependencies: asynckit: 0.4.0 combined-stream: 1.0.8 @@ -1366,12 +1521,13 @@ packages: dev: true optional: true - /fs.realpath/1.0.0: + /fs.realpath@1.0.0: resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} + requiresBuild: true dev: true optional: true - /fsevents/2.3.3: + /fsevents@2.3.3: resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} os: [darwin] @@ -1379,37 +1535,43 @@ packages: dev: true optional: true - /function-bind/1.1.2: + /function-bind@1.1.2: resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} + requiresBuild: true dev: true optional: true - /gensync/1.0.0-beta.2: + /gensync@1.0.0-beta.2: resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} engines: {node: '>=6.9.0'} + requiresBuild: true dev: true optional: true - /get-caller-file/2.0.5: + /get-caller-file@2.0.5: resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} engines: {node: 6.* || 8.* || >= 10.*} + requiresBuild: true dev: true optional: true - /get-package-type/0.1.0: + /get-package-type@0.1.0: resolution: {integrity: sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==} engines: {node: '>=8.0.0'} + requiresBuild: true dev: true optional: true - /get-stream/6.0.1: + /get-stream@6.0.1: resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} engines: {node: '>=10'} + requiresBuild: true dev: true optional: true - /glob/7.2.3: + /glob@7.2.3: resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} + requiresBuild: true dependencies: fs.realpath: 1.0.0 inflight: 1.0.6 @@ -1420,53 +1582,61 @@ packages: dev: true optional: true - /globals/11.12.0: + /globals@11.12.0: resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} engines: {node: '>=4'} + requiresBuild: true dev: true optional: true - /graceful-fs/4.2.11: + /graceful-fs@4.2.11: resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} + requiresBuild: true dev: true optional: true - /has-flag/3.0.0: + /has-flag@3.0.0: resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} engines: {node: '>=4'} + requiresBuild: true dev: true optional: true - /has-flag/4.0.0: + /has-flag@4.0.0: resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} engines: {node: '>=8'} + requiresBuild: true dev: true optional: true - /hasown/2.0.0: + /hasown@2.0.0: resolution: {integrity: sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==} engines: {node: '>= 0.4'} + requiresBuild: true dependencies: function-bind: 1.1.2 dev: true optional: true - /html-encoding-sniffer/2.0.1: + /html-encoding-sniffer@2.0.1: resolution: {integrity: sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==} engines: {node: '>=10'} + requiresBuild: true dependencies: whatwg-encoding: 1.0.5 dev: true optional: true - /html-escaper/2.0.2: + /html-escaper@2.0.2: resolution: {integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==} + requiresBuild: true dev: true optional: true - /http-proxy-agent/4.0.1: + /http-proxy-agent@4.0.1: resolution: {integrity: sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==} engines: {node: '>= 6'} + requiresBuild: true dependencies: '@tootallnate/once': 1.1.2 agent-base: 6.0.2 @@ -1476,9 +1646,10 @@ packages: dev: true optional: true - /https-proxy-agent/5.0.1: + /https-proxy-agent@5.0.1: resolution: {integrity: sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==} engines: {node: '>= 6'} + requiresBuild: true dependencies: agent-base: 6.0.2 debug: 4.3.4 @@ -1487,109 +1658,126 @@ packages: dev: true optional: true - /human-signals/2.1.0: + /human-signals@2.1.0: resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==} engines: {node: '>=10.17.0'} + requiresBuild: true dev: true optional: true - /iconv-lite/0.4.24: + /iconv-lite@0.4.24: resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==} engines: {node: '>=0.10.0'} + requiresBuild: true dependencies: safer-buffer: 2.1.2 dev: true optional: true - /import-local/3.1.0: + /import-local@3.1.0: resolution: {integrity: sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==} engines: {node: '>=8'} hasBin: true + requiresBuild: true dependencies: pkg-dir: 4.2.0 resolve-cwd: 3.0.0 dev: true optional: true - /imurmurhash/0.1.4: + /imurmurhash@0.1.4: resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} engines: {node: '>=0.8.19'} + requiresBuild: true dev: true optional: true - /inflight/1.0.6: + /inflight@1.0.6: resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} + requiresBuild: true dependencies: once: 1.4.0 wrappy: 1.0.2 dev: true optional: true - /inherits/2.0.4: + /inherits@2.0.4: resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} + requiresBuild: true dev: true optional: true - /is-arrayish/0.2.1: + /is-arrayish@0.2.1: resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} + requiresBuild: true dev: true optional: true - /is-core-module/2.13.1: + /is-core-module@2.13.1: resolution: {integrity: sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==} + requiresBuild: true dependencies: hasown: 2.0.0 dev: true optional: true - /is-fullwidth-code-point/3.0.0: + /is-fullwidth-code-point@3.0.0: resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} engines: {node: '>=8'} + requiresBuild: true dev: true optional: true - /is-generator-fn/2.1.0: + /is-generator-fn@2.1.0: resolution: {integrity: sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==} engines: {node: '>=6'} + requiresBuild: true dev: true optional: true - /is-number/7.0.0: + /is-number@7.0.0: resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} engines: {node: '>=0.12.0'} + requiresBuild: true dev: true optional: true - /is-potential-custom-element-name/1.0.1: + /is-potential-custom-element-name@1.0.1: resolution: {integrity: sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==} + requiresBuild: true dev: true optional: true - /is-stream/2.0.1: + /is-stream@2.0.1: resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==} engines: {node: '>=8'} + requiresBuild: true dev: true optional: true - /is-typedarray/1.0.0: + /is-typedarray@1.0.0: resolution: {integrity: sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==} + requiresBuild: true dev: true optional: true - /isexe/2.0.0: + /isexe@2.0.0: resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} + requiresBuild: true dev: true optional: true - /istanbul-lib-coverage/3.2.0: + /istanbul-lib-coverage@3.2.0: resolution: {integrity: sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==} engines: {node: '>=8'} + requiresBuild: true dev: true optional: true - /istanbul-lib-instrument/5.2.1: + /istanbul-lib-instrument@5.2.1: resolution: {integrity: sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==} engines: {node: '>=8'} + requiresBuild: true dependencies: '@babel/core': 7.23.2 '@babel/parser': 7.23.0 @@ -1601,9 +1789,10 @@ packages: dev: true optional: true - /istanbul-lib-report/3.0.1: + /istanbul-lib-report@3.0.1: resolution: {integrity: sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==} engines: {node: '>=10'} + requiresBuild: true dependencies: istanbul-lib-coverage: 3.2.0 make-dir: 4.0.0 @@ -1611,9 +1800,10 @@ packages: dev: true optional: true - /istanbul-lib-source-maps/4.0.1: + /istanbul-lib-source-maps@4.0.1: resolution: {integrity: sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==} engines: {node: '>=10'} + requiresBuild: true dependencies: debug: 4.3.4 istanbul-lib-coverage: 3.2.0 @@ -1623,18 +1813,20 @@ packages: dev: true optional: true - /istanbul-reports/3.1.6: + /istanbul-reports@3.1.6: resolution: {integrity: sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg==} engines: {node: '>=8'} + requiresBuild: true dependencies: html-escaper: 2.0.2 istanbul-lib-report: 3.0.1 dev: true optional: true - /jest-changed-files/27.5.1: + /jest-changed-files@27.5.1: resolution: {integrity: sha512-buBLMiByfWGCoMsLLzGUUSpAmIAGnbR2KJoMN10ziLhOLvP4e0SlypHnAel8iqQXTrcbmfEY9sSqae5sgUsTvw==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + requiresBuild: true dependencies: '@jest/types': 27.5.1 execa: 5.1.1 @@ -1642,9 +1834,10 @@ packages: dev: true optional: true - /jest-circus/27.5.1: + /jest-circus@27.5.1: resolution: {integrity: sha512-D95R7x5UtlMA5iBYsOHFFbMD/GVA4R/Kdq15f7xYWUfWHBto9NYRsOvnSauTgdF+ogCpJ4tyKOXhUifxS65gdw==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + requiresBuild: true dependencies: '@jest/environment': 27.5.1 '@jest/test-result': 27.5.1 @@ -1670,10 +1863,11 @@ packages: dev: true optional: true - /jest-cli/27.5.1: + /jest-cli@27.5.1: resolution: {integrity: sha512-Hc6HOOwYq4/74/c62dEE3r5elx8wjYqxY0r0G/nFrLDPMFRu6RA/u8qINOIkvhxG7mMQ5EJsOGfRpI8L6eFUVw==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} hasBin: true + requiresBuild: true peerDependencies: node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 peerDependenciesMeta: @@ -1701,9 +1895,10 @@ packages: dev: true optional: true - /jest-config/27.5.1: + /jest-config@27.5.1: resolution: {integrity: sha512-5sAsjm6tGdsVbW9ahcChPAFCk4IlkQUknH5AvKjuLTSlcO/wCZKyFdn7Rg0EkC+OGgWODEy2hDpWB1PgzH0JNA==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + requiresBuild: true peerDependencies: ts-node: '>=9.0.0' peerDependenciesMeta: @@ -1713,7 +1908,7 @@ packages: '@babel/core': 7.23.2 '@jest/test-sequencer': 27.5.1 '@jest/types': 27.5.1 - babel-jest: 27.5.1_@babel+core@7.23.2 + babel-jest: 27.5.1(@babel/core@7.23.2) chalk: 4.1.2 ci-info: 3.9.0 deepmerge: 4.3.1 @@ -1742,9 +1937,10 @@ packages: dev: true optional: true - /jest-diff/27.5.1: + /jest-diff@27.5.1: resolution: {integrity: sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + requiresBuild: true dependencies: chalk: 4.1.2 diff-sequences: 27.5.1 @@ -1753,17 +1949,19 @@ packages: dev: true optional: true - /jest-docblock/27.5.1: + /jest-docblock@27.5.1: resolution: {integrity: sha512-rl7hlABeTsRYxKiUfpHrQrG4e2obOiTQWfMEH3PxPjOtdsfLQO4ReWSZaQ7DETm4xu07rl4q/h4zcKXyU0/OzQ==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + requiresBuild: true dependencies: detect-newline: 3.1.0 dev: true optional: true - /jest-each/27.5.1: + /jest-each@27.5.1: resolution: {integrity: sha512-1Ff6p+FbhT/bXQnEouYy00bkNSY7OUpfIcmdl8vZ31A1UUaurOLPA8a8BbJOF2RDUElwJhmeaV7LnagI+5UwNQ==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + requiresBuild: true dependencies: '@jest/types': 27.5.1 chalk: 4.1.2 @@ -1773,9 +1971,10 @@ packages: dev: true optional: true - /jest-environment-jsdom/27.5.1: + /jest-environment-jsdom@27.5.1: resolution: {integrity: sha512-TFBvkTC1Hnnnrka/fUb56atfDtJ9VMZ94JkjTbggl1PEpwrYtUBKMezB3inLmWqQsXYLcMwNoDQwoBTAvFfsfw==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + requiresBuild: true dependencies: '@jest/environment': 27.5.1 '@jest/fake-timers': 27.5.1 @@ -1792,9 +1991,10 @@ packages: dev: true optional: true - /jest-environment-node/27.5.1: + /jest-environment-node@27.5.1: resolution: {integrity: sha512-Jt4ZUnxdOsTGwSRAfKEnE6BcwsSPNOijjwifq5sDFSA2kesnXTvNqKHYgM0hDq3549Uf/KzdXNYn4wMZJPlFLw==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + requiresBuild: true dependencies: '@jest/environment': 27.5.1 '@jest/fake-timers': 27.5.1 @@ -1805,15 +2005,17 @@ packages: dev: true optional: true - /jest-get-type/27.5.1: + /jest-get-type@27.5.1: resolution: {integrity: sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + requiresBuild: true dev: true optional: true - /jest-haste-map/27.5.1: + /jest-haste-map@27.5.1: resolution: {integrity: sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + requiresBuild: true dependencies: '@jest/types': 27.5.1 '@types/graceful-fs': 4.1.8 @@ -1832,9 +2034,10 @@ packages: dev: true optional: true - /jest-jasmine2/27.5.1: + /jest-jasmine2@27.5.1: resolution: {integrity: sha512-jtq7VVyG8SqAorDpApwiJJImd0V2wv1xzdheGHRGyuT7gZm6gG47QEskOlzsN1PG/6WNaCo5pmwMHDf3AkG2pQ==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + requiresBuild: true dependencies: '@jest/environment': 27.5.1 '@jest/source-map': 27.5.1 @@ -1858,18 +2061,20 @@ packages: dev: true optional: true - /jest-leak-detector/27.5.1: + /jest-leak-detector@27.5.1: resolution: {integrity: sha512-POXfWAMvfU6WMUXftV4HolnJfnPOGEu10fscNCA76KBpRRhcMN2c8d3iT2pxQS3HLbA+5X4sOUPzYO2NUyIlHQ==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + requiresBuild: true dependencies: jest-get-type: 27.5.1 pretty-format: 27.5.1 dev: true optional: true - /jest-matcher-utils/27.5.1: + /jest-matcher-utils@27.5.1: resolution: {integrity: sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + requiresBuild: true dependencies: chalk: 4.1.2 jest-diff: 27.5.1 @@ -1878,9 +2083,10 @@ packages: dev: true optional: true - /jest-message-util/27.5.1: + /jest-message-util@27.5.1: resolution: {integrity: sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + requiresBuild: true dependencies: '@babel/code-frame': 7.22.13 '@jest/types': 27.5.1 @@ -1894,18 +2100,20 @@ packages: dev: true optional: true - /jest-mock/27.5.1: + /jest-mock@27.5.1: resolution: {integrity: sha512-K4jKbY1d4ENhbrG2zuPWaQBvDly+iZ2yAW+T1fATN78hc0sInwn7wZB8XtlNnvHug5RMwV897Xm4LqmPM4e2Og==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + requiresBuild: true dependencies: '@jest/types': 27.5.1 '@types/node': 20.8.9 dev: true optional: true - /jest-pnp-resolver/1.2.3_jest-resolve@27.5.1: + /jest-pnp-resolver@1.2.3(jest-resolve@27.5.1): resolution: {integrity: sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==} engines: {node: '>=6'} + requiresBuild: true peerDependencies: jest-resolve: '*' peerDependenciesMeta: @@ -1916,15 +2124,17 @@ packages: dev: true optional: true - /jest-regex-util/27.5.1: + /jest-regex-util@27.5.1: resolution: {integrity: sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + requiresBuild: true dev: true optional: true - /jest-resolve-dependencies/27.5.1: + /jest-resolve-dependencies@27.5.1: resolution: {integrity: sha512-QQOOdY4PE39iawDn5rzbIePNigfe5B9Z91GDD1ae/xNDlu9kaat8QQ5EKnNmVWPV54hUdxCVwwj6YMgR2O7IOg==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + requiresBuild: true dependencies: '@jest/types': 27.5.1 jest-regex-util: 27.5.1 @@ -1934,15 +2144,16 @@ packages: dev: true optional: true - /jest-resolve/27.5.1: + /jest-resolve@27.5.1: resolution: {integrity: sha512-FFDy8/9E6CV83IMbDpcjOhumAQPDyETnU2KZ1O98DwTnz8AOBsW/Xv3GySr1mOZdItLR+zDZ7I/UdTFbgSOVCw==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + requiresBuild: true dependencies: '@jest/types': 27.5.1 chalk: 4.1.2 graceful-fs: 4.2.11 jest-haste-map: 27.5.1 - jest-pnp-resolver: 1.2.3_jest-resolve@27.5.1 + jest-pnp-resolver: 1.2.3(jest-resolve@27.5.1) jest-util: 27.5.1 jest-validate: 27.5.1 resolve: 1.22.8 @@ -1951,9 +2162,10 @@ packages: dev: true optional: true - /jest-runner/27.5.1: + /jest-runner@27.5.1: resolution: {integrity: sha512-g4NPsM4mFCOwFKXO4p/H/kWGdJp9V8kURY2lX8Me2drgXqG7rrZAx5kv+5H7wtt/cdFIjhqYx1HrlqWHaOvDaQ==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + requiresBuild: true dependencies: '@jest/console': 27.5.1 '@jest/environment': 27.5.1 @@ -1984,9 +2196,10 @@ packages: dev: true optional: true - /jest-runtime/27.5.1: + /jest-runtime@27.5.1: resolution: {integrity: sha512-o7gxw3Gf+H2IGt8fv0RiyE1+r83FJBRruoA+FXrlHw6xEyBsU8ugA6IPfTdVyA0w8HClpbK+DGJxH59UrNMx8A==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + requiresBuild: true dependencies: '@jest/environment': 27.5.1 '@jest/fake-timers': 27.5.1 @@ -2015,29 +2228,31 @@ packages: dev: true optional: true - /jest-serializer/27.5.1: + /jest-serializer@27.5.1: resolution: {integrity: sha512-jZCyo6iIxO1aqUxpuBlwTDMkzOAJS4a3eYz3YzgxxVQFwLeSA7Jfq5cbqCY+JLvTDrWirgusI/0KwxKMgrdf7w==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + requiresBuild: true dependencies: '@types/node': 20.8.9 graceful-fs: 4.2.11 dev: true optional: true - /jest-snapshot/27.5.1: + /jest-snapshot@27.5.1: resolution: {integrity: sha512-yYykXI5a0I31xX67mgeLw1DZ0bJB+gpq5IpSuCAoyDi0+BhgU/RIrL+RTzDmkNTchvDFWKP8lp+w/42Z3us5sA==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + requiresBuild: true dependencies: '@babel/core': 7.23.2 '@babel/generator': 7.23.0 - '@babel/plugin-syntax-typescript': 7.22.5_@babel+core@7.23.2 + '@babel/plugin-syntax-typescript': 7.22.5(@babel/core@7.23.2) '@babel/traverse': 7.23.2 '@babel/types': 7.23.0 '@jest/transform': 27.5.1 '@jest/types': 27.5.1 '@types/babel__traverse': 7.20.3 '@types/prettier': 2.7.3 - babel-preset-current-node-syntax: 1.0.1_@babel+core@7.23.2 + babel-preset-current-node-syntax: 1.0.1(@babel/core@7.23.2) chalk: 4.1.2 expect: 27.5.1 graceful-fs: 4.2.11 @@ -2055,9 +2270,10 @@ packages: dev: true optional: true - /jest-util/27.5.1: + /jest-util@27.5.1: resolution: {integrity: sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + requiresBuild: true dependencies: '@jest/types': 27.5.1 '@types/node': 20.8.9 @@ -2068,9 +2284,10 @@ packages: dev: true optional: true - /jest-validate/27.5.1: + /jest-validate@27.5.1: resolution: {integrity: sha512-thkNli0LYTmOI1tDB3FI1S1RTp/Bqyd9pTarJwL87OIBFuqEb5Apv5EaApEudYg4g86e3CT6kM0RowkhtEnCBQ==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + requiresBuild: true dependencies: '@jest/types': 27.5.1 camelcase: 6.3.0 @@ -2081,9 +2298,10 @@ packages: dev: true optional: true - /jest-watcher/27.5.1: + /jest-watcher@27.5.1: resolution: {integrity: sha512-z676SuD6Z8o8qbmEGhoEUFOM1+jfEiL3DXHK/xgEiG2EyNYfFG60jluWcupY6dATjfEsKQuibReS1djInQnoVw==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + requiresBuild: true dependencies: '@jest/test-result': 27.5.1 '@jest/types': 27.5.1 @@ -2095,9 +2313,10 @@ packages: dev: true optional: true - /jest-worker/27.5.1: + /jest-worker@27.5.1: resolution: {integrity: sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==} engines: {node: '>= 10.13.0'} + requiresBuild: true dependencies: '@types/node': 20.8.9 merge-stream: 2.0.0 @@ -2105,7 +2324,7 @@ packages: dev: true optional: true - /jest/27.5.1: + /jest@27.5.1: resolution: {integrity: sha512-Yn0mADZB89zTtjkPJEXwrac3LHudkQMR+Paqa8uxJHCBr9agxztUifWCyiYrjhMPBoUVBjyny0I7XH6ozDr7QQ==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} hasBin: true @@ -2128,23 +2347,26 @@ packages: dev: true optional: true - /js-tokens/4.0.0: + /js-tokens@4.0.0: resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} + requiresBuild: true dev: true optional: true - /js-yaml/3.14.1: + /js-yaml@3.14.1: resolution: {integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==} hasBin: true + requiresBuild: true dependencies: argparse: 1.0.10 esprima: 4.0.1 dev: true optional: true - /jsdom/16.7.0: + /jsdom@16.7.0: resolution: {integrity: sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==} engines: {node: '>=10'} + requiresBuild: true peerDependencies: canvas: ^2.5.0 peerDependenciesMeta: @@ -2185,49 +2407,55 @@ packages: dev: true optional: true - /jsesc/2.5.2: + /jsesc@2.5.2: resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==} engines: {node: '>=4'} hasBin: true + requiresBuild: true dev: true optional: true - /json-parse-even-better-errors/2.3.1: + /json-parse-even-better-errors@2.3.1: resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==} + requiresBuild: true dev: true optional: true - /json5/2.2.3: + /json5@2.2.3: resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} engines: {node: '>=6'} hasBin: true + requiresBuild: true dev: true optional: true - /kleur/3.0.3: + /kleur@3.0.3: resolution: {integrity: sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==} engines: {node: '>=6'} + requiresBuild: true dev: true optional: true - /leven/3.1.0: + /leven@3.1.0: resolution: {integrity: sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==} engines: {node: '>=6'} + requiresBuild: true dev: true optional: true - /lines-and-columns/1.2.4: + /lines-and-columns@1.2.4: resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} + requiresBuild: true dev: true optional: true - /lipe/0.3.3_typescript@4.9.5: + /lipe@0.3.3(@babel/core@7.23.2)(typescript@4.9.5): resolution: {integrity: sha512-clYykwDgghEZ0eIq59bUY2PyZlOuNO2+GLGacpkzKoVJGThDgRSylgNFGAOEAnsL4mm+VEiQSFINMpLkj80xjQ==} requiresBuild: true optionalDependencies: chalk: 4.1.2 moment: 2.29.4 - timer: github.com/CEbbinghaus/timer/38d27cc5157b5e44d06eae8fd0ffb8f778821d51_typescript@4.9.5 + timer: github.com/CEbbinghaus/timer/38d27cc5157b5e44d06eae8fd0ffb8f778821d51(@babel/core@7.23.2)(typescript@4.9.5) transitivePeerDependencies: - '@babel/core' - babel-jest @@ -2241,144 +2469,165 @@ packages: - utf-8-validate dev: true - /locate-path/5.0.0: + /locate-path@5.0.0: resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==} engines: {node: '>=8'} + requiresBuild: true dependencies: p-locate: 4.1.0 dev: true optional: true - /lodash.memoize/4.1.2: + /lodash.memoize@4.1.2: resolution: {integrity: sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==} + requiresBuild: true dev: true optional: true - /lodash/4.17.21: + /lodash@4.17.21: resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} + requiresBuild: true dev: true optional: true - /lru-cache/5.1.1: + /lru-cache@5.1.1: resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} + requiresBuild: true dependencies: yallist: 3.1.1 dev: true optional: true - /lru-cache/6.0.0: + /lru-cache@6.0.0: resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} engines: {node: '>=10'} + requiresBuild: true dependencies: yallist: 4.0.0 dev: true optional: true - /make-dir/4.0.0: + /make-dir@4.0.0: resolution: {integrity: sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==} engines: {node: '>=10'} + requiresBuild: true dependencies: semver: 7.5.4 dev: true optional: true - /make-error/1.3.6: + /make-error@1.3.6: resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==} + requiresBuild: true dev: true optional: true - /makeerror/1.0.12: + /makeerror@1.0.12: resolution: {integrity: sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==} + requiresBuild: true dependencies: tmpl: 1.0.5 dev: true optional: true - /merge-stream/2.0.0: + /merge-stream@2.0.0: resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} + requiresBuild: true dev: true optional: true - /micromatch/4.0.5: + /micromatch@4.0.5: resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} engines: {node: '>=8.6'} + requiresBuild: true dependencies: braces: 3.0.2 picomatch: 2.3.1 dev: true optional: true - /mime-db/1.52.0: + /mime-db@1.52.0: resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} engines: {node: '>= 0.6'} + requiresBuild: true dev: true optional: true - /mime-types/2.1.35: + /mime-types@2.1.35: resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} engines: {node: '>= 0.6'} + requiresBuild: true dependencies: mime-db: 1.52.0 dev: true optional: true - /mimic-fn/2.1.0: + /mimic-fn@2.1.0: resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} engines: {node: '>=6'} + requiresBuild: true dev: true optional: true - /minimatch/3.1.2: + /minimatch@3.1.2: resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} + requiresBuild: true dependencies: brace-expansion: 1.1.11 dev: true optional: true - /moment/2.29.4: + /moment@2.29.4: resolution: {integrity: sha512-5LC9SOxjSc2HF6vO2CyuTDNivEdoz2IvyJJGj6X8DJ0eFyfszE0QiEd+iXmBvUP3WHxSjFH/vIsA0EN00cgr8w==} requiresBuild: true dev: true optional: true - /ms/2.1.2: + /ms@2.1.2: resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} + requiresBuild: true dev: true optional: true - /natural-compare/1.4.0: + /natural-compare@1.4.0: resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} + requiresBuild: true dev: true optional: true - /node-int64/0.4.0: + /node-int64@0.4.0: resolution: {integrity: sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==} + requiresBuild: true dev: true optional: true - /node-releases/2.0.13: + /node-releases@2.0.13: resolution: {integrity: sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==} + requiresBuild: true dev: true optional: true - /normalize-path/3.0.0: + /normalize-path@3.0.0: resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} engines: {node: '>=0.10.0'} + requiresBuild: true dev: true optional: true - /npm-run-path/4.0.1: + /npm-run-path@4.0.1: resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==} engines: {node: '>=8'} + requiresBuild: true dependencies: path-key: 3.1.1 dev: true optional: true - /npm/7.24.2: + /npm@7.24.2: resolution: {integrity: sha512-120p116CE8VMMZ+hk8IAb1inCPk4Dj3VZw29/n2g6UI77urJKVYb7FZUDW8hY+EBnfsjI/2yrobBgFyzo7YpVQ==} engines: {node: '>=10'} hasBin: true + requiresBuild: true dev: true optional: true bundledDependencies: @@ -2453,51 +2702,58 @@ packages: - which - write-file-atomic - /nwsapi/2.2.7: + /nwsapi@2.2.7: resolution: {integrity: sha512-ub5E4+FBPKwAZx0UwIQOjYWGHTEq5sPqHQNRN8Z9e4A7u3Tj1weLJsL59yH9vmvqEtBHaOmT6cYQKIZOxp35FQ==} + requiresBuild: true dev: true optional: true - /once/1.4.0: + /once@1.4.0: resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} + requiresBuild: true dependencies: wrappy: 1.0.2 dev: true optional: true - /onetime/5.1.2: + /onetime@5.1.2: resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==} engines: {node: '>=6'} + requiresBuild: true dependencies: mimic-fn: 2.1.0 dev: true optional: true - /p-limit/2.3.0: + /p-limit@2.3.0: resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==} engines: {node: '>=6'} + requiresBuild: true dependencies: p-try: 2.2.0 dev: true optional: true - /p-locate/4.1.0: + /p-locate@4.1.0: resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==} engines: {node: '>=8'} + requiresBuild: true dependencies: p-limit: 2.3.0 dev: true optional: true - /p-try/2.2.0: + /p-try@2.2.0: resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} engines: {node: '>=6'} + requiresBuild: true dev: true optional: true - /parse-json/5.2.0: + /parse-json@5.2.0: resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} engines: {node: '>=8'} + requiresBuild: true dependencies: '@babel/code-frame': 7.22.13 error-ex: 1.3.2 @@ -2506,62 +2762,72 @@ packages: dev: true optional: true - /parse5/6.0.1: + /parse5@6.0.1: resolution: {integrity: sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==} + requiresBuild: true dev: true optional: true - /path-exists/4.0.0: + /path-exists@4.0.0: resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} engines: {node: '>=8'} + requiresBuild: true dev: true optional: true - /path-is-absolute/1.0.1: + /path-is-absolute@1.0.1: resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} engines: {node: '>=0.10.0'} + requiresBuild: true dev: true optional: true - /path-key/3.1.1: + /path-key@3.1.1: resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} engines: {node: '>=8'} + requiresBuild: true dev: true optional: true - /path-parse/1.0.7: + /path-parse@1.0.7: resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} + requiresBuild: true dev: true optional: true - /picocolors/1.0.0: + /picocolors@1.0.0: resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} + requiresBuild: true dev: true optional: true - /picomatch/2.3.1: + /picomatch@2.3.1: resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} engines: {node: '>=8.6'} + requiresBuild: true dev: true optional: true - /pirates/4.0.6: + /pirates@4.0.6: resolution: {integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==} engines: {node: '>= 6'} + requiresBuild: true dev: true optional: true - /pkg-dir/4.2.0: + /pkg-dir@4.2.0: resolution: {integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==} engines: {node: '>=8'} + requiresBuild: true dependencies: find-up: 4.1.0 dev: true optional: true - /pretty-format/27.5.1: + /pretty-format@27.5.1: resolution: {integrity: sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + requiresBuild: true dependencies: ansi-regex: 5.0.1 ansi-styles: 5.2.0 @@ -2569,70 +2835,81 @@ packages: dev: true optional: true - /prompts/2.4.2: + /prompts@2.4.2: resolution: {integrity: sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==} engines: {node: '>= 6'} + requiresBuild: true dependencies: kleur: 3.0.3 sisteransi: 1.0.5 dev: true optional: true - /psl/1.9.0: + /psl@1.9.0: resolution: {integrity: sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==} + requiresBuild: true dev: true optional: true - /punycode/2.3.0: + /punycode@2.3.0: resolution: {integrity: sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==} engines: {node: '>=6'} + requiresBuild: true dev: true optional: true - /querystringify/2.2.0: + /querystringify@2.2.0: resolution: {integrity: sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==} + requiresBuild: true dev: true optional: true - /react-is/17.0.2: + /react-is@17.0.2: resolution: {integrity: sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==} + requiresBuild: true dev: true optional: true - /require-directory/2.1.1: + /require-directory@2.1.1: resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} engines: {node: '>=0.10.0'} + requiresBuild: true dev: true optional: true - /requires-port/1.0.0: + /requires-port@1.0.0: resolution: {integrity: sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==} + requiresBuild: true dev: true optional: true - /resolve-cwd/3.0.0: + /resolve-cwd@3.0.0: resolution: {integrity: sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==} engines: {node: '>=8'} + requiresBuild: true dependencies: resolve-from: 5.0.0 dev: true optional: true - /resolve-from/5.0.0: + /resolve-from@5.0.0: resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==} engines: {node: '>=8'} + requiresBuild: true dev: true optional: true - /resolve.exports/1.1.1: + /resolve.exports@1.1.1: resolution: {integrity: sha512-/NtpHNDN7jWhAaQ9BvBUYZ6YTXsRBgfqWFWP7BZBaoMJO/I3G5OFzvTuWNlZC3aPjins1F+TNrLKsGbH4rfsRQ==} engines: {node: '>=10'} + requiresBuild: true dev: true optional: true - /resolve/1.22.8: + /resolve@1.22.8: resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==} hasBin: true + requiresBuild: true dependencies: is-core-module: 2.13.1 path-parse: 1.0.7 @@ -2640,117 +2917,134 @@ packages: dev: true optional: true - /rimraf/3.0.2: + /rimraf@3.0.2: resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} hasBin: true + requiresBuild: true dependencies: glob: 7.2.3 dev: true optional: true - /safer-buffer/2.1.2: + /safer-buffer@2.1.2: resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} + requiresBuild: true dev: true optional: true - /saxes/5.0.1: + /saxes@5.0.1: resolution: {integrity: sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==} engines: {node: '>=10'} + requiresBuild: true dependencies: xmlchars: 2.2.0 dev: true optional: true - /semver/6.3.1: + /semver@6.3.1: resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} hasBin: true + requiresBuild: true dev: true optional: true - /semver/7.5.4: + /semver@7.5.4: resolution: {integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==} engines: {node: '>=10'} hasBin: true + requiresBuild: true dependencies: lru-cache: 6.0.0 dev: true optional: true - /shebang-command/2.0.0: + /shebang-command@2.0.0: resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} engines: {node: '>=8'} + requiresBuild: true dependencies: shebang-regex: 3.0.0 dev: true optional: true - /shebang-regex/3.0.0: + /shebang-regex@3.0.0: resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} engines: {node: '>=8'} + requiresBuild: true dev: true optional: true - /signal-exit/3.0.7: + /signal-exit@3.0.7: resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} + requiresBuild: true dev: true optional: true - /sisteransi/1.0.5: + /sisteransi@1.0.5: resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==} + requiresBuild: true dev: true optional: true - /slash/3.0.0: + /slash@3.0.0: resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} engines: {node: '>=8'} + requiresBuild: true dev: true optional: true - /source-map-support/0.5.21: + /source-map-support@0.5.21: resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==} + requiresBuild: true dependencies: buffer-from: 1.1.2 source-map: 0.6.1 dev: true optional: true - /source-map/0.6.1: + /source-map@0.6.1: resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} engines: {node: '>=0.10.0'} + requiresBuild: true dev: true optional: true - /source-map/0.7.4: + /source-map@0.7.4: resolution: {integrity: sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==} engines: {node: '>= 8'} + requiresBuild: true dev: true optional: true - /sprintf-js/1.0.3: + /sprintf-js@1.0.3: resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==} + requiresBuild: true dev: true optional: true - /stack-utils/2.0.6: + /stack-utils@2.0.6: resolution: {integrity: sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==} engines: {node: '>=10'} + requiresBuild: true dependencies: escape-string-regexp: 2.0.0 dev: true optional: true - /string-length/4.0.2: + /string-length@4.0.2: resolution: {integrity: sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==} engines: {node: '>=10'} + requiresBuild: true dependencies: char-regex: 1.0.2 strip-ansi: 6.0.1 dev: true optional: true - /string-width/4.2.3: + /string-width@4.2.3: resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} engines: {node: '>=8'} + requiresBuild: true dependencies: emoji-regex: 8.0.0 is-fullwidth-code-point: 3.0.0 @@ -2758,88 +3052,100 @@ packages: dev: true optional: true - /strip-ansi/6.0.1: + /strip-ansi@6.0.1: resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} engines: {node: '>=8'} + requiresBuild: true dependencies: ansi-regex: 5.0.1 dev: true optional: true - /strip-bom/4.0.0: + /strip-bom@4.0.0: resolution: {integrity: sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==} engines: {node: '>=8'} + requiresBuild: true dev: true optional: true - /strip-final-newline/2.0.0: + /strip-final-newline@2.0.0: resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==} engines: {node: '>=6'} + requiresBuild: true dev: true optional: true - /strip-json-comments/3.1.1: + /strip-json-comments@3.1.1: resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} engines: {node: '>=8'} + requiresBuild: true dev: true optional: true - /supports-color/5.5.0: + /supports-color@5.5.0: resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==} engines: {node: '>=4'} + requiresBuild: true dependencies: has-flag: 3.0.0 dev: true optional: true - /supports-color/7.2.0: + /supports-color@7.2.0: resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} engines: {node: '>=8'} + requiresBuild: true dependencies: has-flag: 4.0.0 dev: true optional: true - /supports-color/8.1.1: + /supports-color@8.1.1: resolution: {integrity: sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==} engines: {node: '>=10'} + requiresBuild: true dependencies: has-flag: 4.0.0 dev: true optional: true - /supports-hyperlinks/2.3.0: + /supports-hyperlinks@2.3.0: resolution: {integrity: sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA==} engines: {node: '>=8'} + requiresBuild: true dependencies: has-flag: 4.0.0 supports-color: 7.2.0 dev: true optional: true - /supports-preserve-symlinks-flag/1.0.0: + /supports-preserve-symlinks-flag@1.0.0: resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} engines: {node: '>= 0.4'} + requiresBuild: true dev: true optional: true - /symbol-tree/3.2.4: + /symbol-tree@3.2.4: resolution: {integrity: sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==} + requiresBuild: true dev: true optional: true - /terminal-link/2.1.1: + /terminal-link@2.1.1: resolution: {integrity: sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==} engines: {node: '>=8'} + requiresBuild: true dependencies: ansi-escapes: 4.3.2 supports-hyperlinks: 2.3.0 dev: true optional: true - /test-exclude/6.0.0: + /test-exclude@6.0.0: resolution: {integrity: sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==} engines: {node: '>=8'} + requiresBuild: true dependencies: '@istanbuljs/schema': 0.1.3 glob: 7.2.3 @@ -2847,33 +3153,38 @@ packages: dev: true optional: true - /throat/6.0.2: + /throat@6.0.2: resolution: {integrity: sha512-WKexMoJj3vEuK0yFEapj8y64V0A6xcuPuK9Gt1d0R+dzCSJc0lHqQytAbSB4cDAK0dWh4T0E2ETkoLE2WZ41OQ==} + requiresBuild: true dev: true optional: true - /tmpl/1.0.5: + /tmpl@1.0.5: resolution: {integrity: sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==} + requiresBuild: true dev: true optional: true - /to-fast-properties/2.0.0: + /to-fast-properties@2.0.0: resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==} engines: {node: '>=4'} + requiresBuild: true dev: true optional: true - /to-regex-range/5.0.1: + /to-regex-range@5.0.1: resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} engines: {node: '>=8.0'} + requiresBuild: true dependencies: is-number: 7.0.0 dev: true optional: true - /tough-cookie/4.1.3: + /tough-cookie@4.1.3: resolution: {integrity: sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw==} engines: {node: '>=6'} + requiresBuild: true dependencies: psl: 1.9.0 punycode: 2.3.0 @@ -2882,15 +3193,16 @@ packages: dev: true optional: true - /tr46/2.1.0: + /tr46@2.1.0: resolution: {integrity: sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==} engines: {node: '>=8'} + requiresBuild: true dependencies: punycode: 2.3.0 dev: true optional: true - /ts-jest/27.1.5_n4jzo3ixy42kfaqevs43wjx5ui: + /ts-jest@27.1.5(@babel/core@7.23.2)(@types/jest@27.5.2)(jest@27.5.1)(typescript@4.9.5): resolution: {integrity: sha512-Xv6jBQPoBEvBq/5i2TeSG9tt/nqkbpcurrEG1b+2yfBrcJelOZF9Ml6dmyMh7bcW9JyFbRYpR5rxROSlBLTZHA==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} hasBin: true @@ -2912,6 +3224,7 @@ packages: esbuild: optional: true dependencies: + '@babel/core': 7.23.2 '@types/jest': 27.5.2 bs-logger: 0.2.6 fast-json-stable-stringify: 2.1.0 @@ -2926,44 +3239,50 @@ packages: dev: true optional: true - /type-detect/4.0.8: + /type-detect@4.0.8: resolution: {integrity: sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==} engines: {node: '>=4'} + requiresBuild: true dev: true optional: true - /type-fest/0.21.3: + /type-fest@0.21.3: resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==} engines: {node: '>=10'} + requiresBuild: true dev: true optional: true - /typedarray-to-buffer/3.1.5: + /typedarray-to-buffer@3.1.5: resolution: {integrity: sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==} + requiresBuild: true dependencies: is-typedarray: 1.0.0 dev: true optional: true - /typescript/4.9.5: + /typescript@4.9.5: resolution: {integrity: sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==} engines: {node: '>=4.2.0'} hasBin: true - /undici-types/5.26.5: + /undici-types@5.26.5: resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==} + requiresBuild: true dev: true optional: true - /universalify/0.2.0: + /universalify@0.2.0: resolution: {integrity: sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==} engines: {node: '>= 4.0.0'} + requiresBuild: true dev: true optional: true - /update-browserslist-db/1.0.13_browserslist@4.22.1: + /update-browserslist-db@1.0.13(browserslist@4.22.1): resolution: {integrity: sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==} hasBin: true + requiresBuild: true peerDependencies: browserslist: '>= 4.21.0' dependencies: @@ -2973,17 +3292,19 @@ packages: dev: true optional: true - /url-parse/1.5.10: + /url-parse@1.5.10: resolution: {integrity: sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==} + requiresBuild: true dependencies: querystringify: 2.2.0 requires-port: 1.0.0 dev: true optional: true - /v8-to-istanbul/8.1.1: + /v8-to-istanbul@8.1.1: resolution: {integrity: sha512-FGtKtv3xIpR6BYhvgH8MI/y78oT7d8Au3ww4QIxymrCtZEh5b8gCw2siywE+puhEmuWKDtmfrvF5UlB298ut3w==} engines: {node: '>=10.12.0'} + requiresBuild: true dependencies: '@types/istanbul-lib-coverage': 2.0.5 convert-source-map: 1.9.0 @@ -2991,56 +3312,64 @@ packages: dev: true optional: true - /w3c-hr-time/1.0.2: + /w3c-hr-time@1.0.2: resolution: {integrity: sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==} deprecated: Use your platform's native performance.now() and performance.timeOrigin. + requiresBuild: true dependencies: browser-process-hrtime: 1.0.0 dev: true optional: true - /w3c-xmlserializer/2.0.0: + /w3c-xmlserializer@2.0.0: resolution: {integrity: sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA==} engines: {node: '>=10'} + requiresBuild: true dependencies: xml-name-validator: 3.0.0 dev: true optional: true - /walker/1.0.8: + /walker@1.0.8: resolution: {integrity: sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==} + requiresBuild: true dependencies: makeerror: 1.0.12 dev: true optional: true - /webidl-conversions/5.0.0: + /webidl-conversions@5.0.0: resolution: {integrity: sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==} engines: {node: '>=8'} + requiresBuild: true dev: true optional: true - /webidl-conversions/6.1.0: + /webidl-conversions@6.1.0: resolution: {integrity: sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==} engines: {node: '>=10.4'} + requiresBuild: true dev: true optional: true - /whatwg-encoding/1.0.5: + /whatwg-encoding@1.0.5: resolution: {integrity: sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==} + requiresBuild: true dependencies: iconv-lite: 0.4.24 dev: true optional: true - /whatwg-mimetype/2.3.0: + /whatwg-mimetype@2.3.0: resolution: {integrity: sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==} + requiresBuild: true dev: true optional: true - /whatwg-url/8.7.0: + /whatwg-url@8.7.0: resolution: {integrity: sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==} engines: {node: '>=10'} + requiresBuild: true dependencies: lodash: 4.17.21 tr46: 2.1.0 @@ -3048,18 +3377,20 @@ packages: dev: true optional: true - /which/2.0.2: + /which@2.0.2: resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} engines: {node: '>= 8'} hasBin: true + requiresBuild: true dependencies: isexe: 2.0.0 dev: true optional: true - /wrap-ansi/7.0.0: + /wrap-ansi@7.0.0: resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} engines: {node: '>=10'} + requiresBuild: true dependencies: ansi-styles: 4.3.0 string-width: 4.2.3 @@ -3067,13 +3398,15 @@ packages: dev: true optional: true - /wrappy/1.0.2: + /wrappy@1.0.2: resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} + requiresBuild: true dev: true optional: true - /write-file-atomic/3.0.3: + /write-file-atomic@3.0.3: resolution: {integrity: sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==} + requiresBuild: true dependencies: imurmurhash: 0.1.4 is-typedarray: 1.0.0 @@ -3082,9 +3415,10 @@ packages: dev: true optional: true - /ws/7.5.9: + /ws@7.5.9: resolution: {integrity: sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==} engines: {node: '>=8.3.0'} + requiresBuild: true peerDependencies: bufferutil: ^4.0.1 utf-8-validate: ^5.0.2 @@ -3096,41 +3430,48 @@ packages: dev: true optional: true - /xml-name-validator/3.0.0: + /xml-name-validator@3.0.0: resolution: {integrity: sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==} + requiresBuild: true dev: true optional: true - /xmlchars/2.2.0: + /xmlchars@2.2.0: resolution: {integrity: sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==} + requiresBuild: true dev: true optional: true - /y18n/5.0.8: + /y18n@5.0.8: resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} engines: {node: '>=10'} + requiresBuild: true dev: true optional: true - /yallist/3.1.1: + /yallist@3.1.1: resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} + requiresBuild: true dev: true optional: true - /yallist/4.0.0: + /yallist@4.0.0: resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} + requiresBuild: true dev: true optional: true - /yargs-parser/20.2.9: + /yargs-parser@20.2.9: resolution: {integrity: sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==} engines: {node: '>=10'} + requiresBuild: true dev: true optional: true - /yargs/16.2.0: + /yargs@16.2.0: resolution: {integrity: sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==} engines: {node: '>=10'} + requiresBuild: true dependencies: cliui: 7.0.4 escalade: 3.1.1 @@ -3142,7 +3483,7 @@ packages: dev: true optional: true - github.com/CEbbinghaus/timer/38d27cc5157b5e44d06eae8fd0ffb8f778821d51_typescript@4.9.5: + github.com/CEbbinghaus/timer/38d27cc5157b5e44d06eae8fd0ffb8f778821d51(@babel/core@7.23.2)(typescript@4.9.5): resolution: {tarball: https://codeload.github.com/CEbbinghaus/timer/tar.gz/38d27cc5157b5e44d06eae8fd0ffb8f778821d51} id: github.com/CEbbinghaus/timer/38d27cc5157b5e44d06eae8fd0ffb8f778821d51 name: timer @@ -3154,7 +3495,7 @@ packages: optionalDependencies: '@types/jest': 27.5.2 jest: 27.5.1 - ts-jest: 27.1.5_n4jzo3ixy42kfaqevs43wjx5ui + ts-jest: 27.1.5(@babel/core@7.23.2)(@types/jest@27.5.2)(jest@27.5.1)(typescript@4.9.5) transitivePeerDependencies: - '@babel/core' - babel-jest diff --git a/lib/src/hooks.ts b/lib/src/hooks.ts new file mode 100644 index 0000000..55b9266 --- /dev/null +++ b/lib/src/hooks.ts @@ -0,0 +1,23 @@ +import { useEffect, useState } from "react"; +import { MicroSDCard } from "./types"; +import { FetchProps, fetchCardsForGame } from "./backend"; + +export function useCardsForGame(props: FetchProps & { gameId: string }) { + + const [value, setValue] = useState() + + async function refresh() { + setValue(await fetchCardsForGame(props)) + } + + useEffect(() => { + (async () => { + await refresh(); + })(); + }, [props.gameId]); + + return { + cards: value, + refresh + } +} \ No newline at end of file diff --git a/lib/src/index.ts b/lib/src/index.ts index a3adbce..0c42cf9 100644 --- a/lib/src/index.ts +++ b/lib/src/index.ts @@ -1,3 +1,4 @@ export * from "./types.js"; +export * from "./hooks.js"; export * from "./state/MicoSDeckManager.js" export * from "./state/MicroSDeckContext.js" \ No newline at end of file diff --git a/package.json b/package.json index b3bfe83..9fcb5ac 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "microsdeck", - "version": "0.9.5", + "version": "0.9.6", "description": "A SteamDeck plugin to track games across MicroSD cards", "keywords": [ "decky", diff --git a/src/components/CardActions.tsx b/src/components/CardActions.tsx index 6391123..7c507ba 100644 --- a/src/components/CardActions.tsx +++ b/src/components/CardActions.tsx @@ -44,7 +44,6 @@ export function CardActionsContextMenu({ cardAndGames, currentCard, microSDeckMa //* i think the collection is only null if user has no shortcuts (non-steam games) //* so if we just got the shorcut ids then i think we're good to assert that the collection and the specific game exist here body: JSON.stringify({ uid: appId, name: collectionStore.deckDesktopApps!.apps.get(parseInt(appId))!.display_name, is_steam: false, size: 0 }), - referrerPolicy: "unsafe-url", }).catch(Error => Logger.Error("There was a critical error: \"{Error}\"", { Error })); const res2 = await fetch(`${API_URL}/link`, { @@ -53,12 +52,18 @@ export function CardActionsContextMenu({ cardAndGames, currentCard, microSDeckMa "Content-Type": "application/json", }, body: JSON.stringify({ card_id: card.uid, game_id: appId }), - referrerPolicy: "unsafe-url", }).catch(Error => Logger.Error("There was a critical error: \"{Error}\"", { Error })); }); nonSteamDeletions.forEach(async appId => { //* api call to remove game from card + await fetch(`${API_URL}/unlink`, { + method: "POST", + headers: { + "Content-Type": "application/json", + }, + body: JSON.stringify({ card_id: card.uid, game_id: appId }), + }).catch(Error => Logger.Error("There was a critical error: \"{Error}\"", { Error })); }); }} card={{ ...card }} diff --git a/src/components/LibraryModal.tsx b/src/components/LibraryModal.tsx index b54c82e..f4769b7 100644 --- a/src/components/LibraryModal.tsx +++ b/src/components/LibraryModal.tsx @@ -1,23 +1,17 @@ import React, { ReactElement, useEffect, useRef, useState} from 'react'; import { FaSdCard } from 'react-icons/fa'; import { Logger } from '../Logging'; -import { UNAMED_CARD_NAME } from '../const'; -import { MicroSDCard, useMicroSDeckContext } from "../../lib/src" +import { API_URL, UNAMED_CARD_NAME } from '../const'; +import { useCardsForGame } from "../../lib/src" + +export default function LibraryModal({appId: gameId}: {appId: string}): ReactElement { + const {cards} = useCardsForGame({url: API_URL, logger: Logger, gameId}); -export default function LibraryModal({appId}: {appId: string}): ReactElement { - const {microSDeckManager} = useMicroSDeckContext(); var ref = useRef(); const height = 20; const [top, setTop] = useState(210); - const [cards, setCards] = useState(undefined); - useEffect(() => { - microSDeckManager.fetchCardsForGame(appId).then(setCards); - }, []); - - - useEffect(() => { if(!ref || !ref.current) return; const doc = (ref.current as unknown as HTMLElement).getRootNode() as Document; @@ -26,13 +20,12 @@ export default function LibraryModal({appId}: {appId: string}): ReactElement { const imageWindow = doc.querySelector("[class^='appdetails_Header']"); const imageWindowBounds = imageWindow?.getBoundingClientRect(); - if(!imageWindowBounds) return; setTop(imageWindowBounds.height - height); Logger.Log("Set Top For Window bacuse of bounds", {imageWindowBounds}); - }); + }, []); if(!cards) { @@ -42,7 +35,7 @@ export default function LibraryModal({appId}: {appId: string}): ReactElement { if(!cards.length) { - Logger.Debug("No MicroSD card could be found for {appId}", {appId}); + Logger.Debug("No MicroSD card could be found for {appId}", {appId: gameId}); return (<>); } diff --git a/src/modals/EditCardModal.tsx b/src/modals/EditCardModal.tsx index 0ffaf69..c433dfa 100644 --- a/src/modals/EditCardModal.tsx +++ b/src/modals/EditCardModal.tsx @@ -69,7 +69,7 @@ export const EditCardModal: VFC = ({ card, games, onConfirm, clos if (additions[appId]) setAdditions(current => (({ [appId]: _, ...rest }) => rest)(current)); } }; - + return ( = ({ card, games, onConfirm, clos idsOnCard={nonSteamIdsOnCard} numAdditions={Object.keys(additions).length} numDeletions={Object.keys(deletions).length} - style={{ marginBottom: "24px" }} + style={{ marginBottom: "24px" }} /> { showModal( = ({ checkedIds, idsOnCard, numAddi /> {filteredPairs.map(([appId, displayName]) => { - const onChanged = (checked: boolean) => { - GamepadUIAudio.AudioPlaybackManager.PlayAudioURL(checked ? '/sounds/deck_ui_switch_toggle_on.wav' : '/sounds/deck_ui_switch_toggle_off.wav'); - onChange(appId, checked); - }; return ( { + GamepadUIAudio.AudioPlaybackManager.PlayAudioURL(checked ? '/sounds/deck_ui_switch_toggle_on.wav' : '/sounds/deck_ui_switch_toggle_off.wav'); + onChange(appId, checked); + }} label={
{displayName}
{idsOnCard[appId] && diff --git a/src/patch/PatchAppScreen.tsx b/src/patch/PatchAppScreen.tsx index d70c1f9..8fa3fff 100644 --- a/src/patch/PatchAppScreen.tsx +++ b/src/patch/PatchAppScreen.tsx @@ -87,131 +87,4 @@ function PatchRootElement(root: any): any { return root; } -// function PatchPanelElement(panel: any): any { - -// console.log("Found Container", panel); - -// // debugger; -// // window.panel = panel; - -// wrapReactClass(panel) - -// afterPatch( -// panel.type.prototype, -// 'render', -// (_2: Record[], element?: ReactElement) => { - -// const container = findInReactTree(element, v => v?.props?.setSections); - -// if (typeof container !== 'object') { -// return element -// } - -// PatchAppDetailsOverview(container); - -// return element; -// } -// ) -// return panel; -// } - -// function PatchAppDetailsOverview(panel: any): any { - -// console.log("Found AppDetails", panel); - -// // debugger; -// // window.appDetailsOverview = panel; - -// // wrapReactType(panel) - -// afterPatch( -// panel, -// 'type', -// (_2: Record[], tmpEl?: ReactElement) => { - -// let cache: ReactElement; - -// afterPatch( -// tmpEl, -// 'type', -// (_2: Record[], element?: ReactElement) => { -// if(cache) -// return cache; - -// const container = findInReactTree(element, v => v?.props?.setSections && v?.type?.render); - -// if (typeof container !== 'object') { -// return element -// } - -// PatchPlaySection(container); - -// return (cache = element); -// } -// ) -// return tmpEl; -// } -// ) -// return panel; -// } - -// function PatchPlaySection(panel: any): any { - -// console.log("Found AppDetails Section", panel); - -// // debugger; -// // window.appDetailsSection = panel; - -// wrapReactType(panel) - -// afterPatch( -// panel.type, -// 'render', -// (_2: Record[], element?: ReactElement) => { -// const container = findInReactTree(element, v => v?.props?.setSections && v?.type?.render); - -// if (typeof container !== 'object') { -// return element -// } - -// PatchAppRow(container); - -// return element; -// } -// ) -// return panel; -// } - -// function PatchAppRow(panel: any): any { - -// console.log("Found AppRow Section", panel); - -// // debugger; -// // window.appRowSection = panel; - -// wrapReactType(panel) - -// afterPatch( -// panel.type, -// 'render', -// (_2: Record[], tmpEl?: ReactElement) => { -// // afterPatch( -// // tmpEl.type, -// // 'render', -// // (_2: Record[], element?: ReactElement) => { -// // window.el = element; -// // return element -// // } -// // ) - -// debugger; - -// return tmpEl; -// } -// ) -// return panel; -// } - - - export default PatchAppScreen;