From 7ae41143f3631d865c075df8513a8a9718a053f06ea02f10e359f1051b7e3cf0 Mon Sep 17 00:00:00 2001 From: Adam Majer Date: Wed, 31 Jul 2024 13:25:41 +0000 Subject: [PATCH 1/7] - Update to version 0.1.2~git0.647b3e3: * Update dependencies to fix building against latest versions of Cockpit * Forcefully reload the whole page when getting/limitin admin access * Update @babel/traverse to avoid security issues - Update to version 0.1.0~git0.8c6c01a: * Updated minimum cockpit-devel version * Autotomatically fetch snapshots and updates when logged in as admin * Added required types for cockpit hooks and superuser APIs * Handle non-existing update descriptions OBS-URL: https://build.opensuse.org/package/show/systemsmanagement:cockpit/cockpit-tukit?expand=0&rev=22 --- .gitattributes | 23 + .gitignore | 1 + _service | 30 + _servicedata | 4 + cockpit-tukit-0.1.2~git0.647b3e3.tar.xz | 3 + cockpit-tukit.changes | 96 + cockpit-tukit.spec | 73 + load-css-overrides.patch | 26 + node_modules.obscpio | 3 + node_modules.spec.inc | 372 ++ node_modules.sums | 372 ++ package-lock.json | 4852 +++++++++++++++++++++++ 12 files changed, 5855 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 _service create mode 100644 _servicedata create mode 100644 cockpit-tukit-0.1.2~git0.647b3e3.tar.xz create mode 100644 cockpit-tukit.changes create mode 100644 cockpit-tukit.spec create mode 100644 load-css-overrides.patch create mode 100644 node_modules.obscpio create mode 100644 node_modules.spec.inc create mode 100644 node_modules.sums create mode 100644 package-lock.json diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..57affb6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.osc diff --git a/_service b/_service new file mode 100644 index 0000000..230c6b7 --- /dev/null +++ b/_service @@ -0,0 +1,30 @@ + + + + git + https://github.com/openSUSE/cockpit-tukit.git + master + @PARENT_TAG@~git@TAG_OFFSET@.%h + enable + yes + + + cockpit-tukit*.tar + xz + + + cockpit-tukit*.tar.xz + cockpit-tukit-*/package-lock.json + + + node_modules.obscpio + node_modules.spec.inc + 1000 + + + cockpit-tukit*.tar.xz + cockpit-tukit*/cockpit-tukit.spec.in + cockpit-tukit.spec + + + diff --git a/_servicedata b/_servicedata new file mode 100644 index 0000000..7307541 --- /dev/null +++ b/_servicedata @@ -0,0 +1,4 @@ + + + https://github.com/openSUSE/cockpit-tukit.git + 647b3e39fcc5d316b1c44b0fbdc9388060dfce47 \ No newline at end of file diff --git a/cockpit-tukit-0.1.2~git0.647b3e3.tar.xz b/cockpit-tukit-0.1.2~git0.647b3e3.tar.xz new file mode 100644 index 0000000..41d3c1b --- /dev/null +++ b/cockpit-tukit-0.1.2~git0.647b3e3.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3fb5fa6beb5fa6604c6ca302f1b465e06f2e0128b65e5359778013f914783a13 +size 236592 diff --git a/cockpit-tukit.changes b/cockpit-tukit.changes new file mode 100644 index 0000000..bdfdb11 --- /dev/null +++ b/cockpit-tukit.changes @@ -0,0 +1,96 @@ +------------------------------------------------------------------- +Mon Feb 26 10:58:42 UTC 2024 - Dominique Leuenberger + +- Use %autosetup macro. Allows to eliminate the usage of deprecated + PatchN. + +------------------------------------------------------------------- +Tue Jan 16 09:10:20 UTC 2024 - luna.dragon@suse.com + +- Update to version 0.1.2~git0.647b3e3: + * Update dependencies to fix building against latest versions of Cockpit + * Forcefully reload the whole page when getting/limitin admin access + * Update @babel/traverse to avoid security issues + +------------------------------------------------------------------- +Wed Oct 04 10:16:48 UTC 2023 - miika.alikirri@suse.com + +- Update to version 0.1.0~git0.8c6c01a: + * Automatically update UI when user gets admin access + * Updated minimum cockpit version in spec file + * Updated the version to 0.1.0 so it's closer to semver + +------------------------------------------------------------------- +Wed Aug 09 09:00:05 UTC 2023 - miika.alikirri@suse.com + +- Update to version 0.0.9~git0.81662cf: + * Handle non-existing update descriptions + +------------------------------------------------------------------- +Thu Jul 27 13:10:16 UTC 2023 - miika.alikirri@suse.com + +- Update to version 0.0.8~git0.a915cfd: + * Fixed arch specific esbuild depedency issues + * remove wasm check + * add deps for release + * use esbuild by default and update spec + * Port to typescript + * Support global cockpit dark theme + * Updated sources to work with the new dependencies + * Update dependencies and build process to match latest cockpit + * Translated using Weblate (Georgian) + * Added translation using Weblate (Georgian) + * Fix name in metainfo (bsc#1203653) + * Add mapping for more patch levels + * Handle tukitd service problems + * Fix pot/po generation + * Translated using Weblate (Chinese (China) (zh_CN)) + * Translated using Weblate (Japanese) + +------------------------------------------------------------------- +Fri Aug 05 13:16:27 UTC 2022 - jtomasiak@suse.com + +- Update to version 0.0.3~git28.b446f50: + * Add missing plurals + * Added translation using Weblate (Portuguese) + * Translated using Weblate (Polish) + * Add Swedish Translation + * added/corrected de.po for german + * initial version of czech translation + * Add support for dict-format snapshots List + * Fix URIError: malformed URI sequence + * Reformat spec to match Factory + +------------------------------------------------------------------- +Mon Jun 20 11:06:02 UTC 2022 - jtomasiak@suse.com + +- Update to version 0.0.3~git10.d8579a3: + * Update to cockpit 271 + * Add translation template + * Update translations + * Add load-css-overrides.patch to start loading a custom CSS file + +------------------------------------------------------------------- +Thu May 19 13:11:27 UTC 2022 - jan.suse@zerebecki.de + +- Update to version 0.0.3~git6.03c747e: + * Hide snapshot item extension part + * Change help URL to official docs + * Mention node_modules.sums in spec sources + * Use compression for source archive + +------------------------------------------------------------------- +Fri Apr 29 13:33:46 UTC 2022 - jan.suse@zerebecki.de + +- Initial package with version 0.0.3~git0.d4aa7e9: + * Switch to ExecuteAndReboot + * Add no-reboot actions to snapshot menus + * Add some "write" actions + * Disable actions during updates checking + * Add updates error to status + * Add _service file comment + * Add OBS service definition + * Fix license and files in spec + * Switch cockpit-devel lib to last stable + * Add missing global variables + diff --git a/cockpit-tukit.spec b/cockpit-tukit.spec new file mode 100644 index 0000000..173e1e1 --- /dev/null +++ b/cockpit-tukit.spec @@ -0,0 +1,73 @@ +# +# spec file for package cockpit-tukit +# +# Copyright (c) 2024 SUSE LLC +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +Name: cockpit-tukit +Version: 0.1.2~git0.647b3e3 +Release: 0%{?dist} +Summary: Cockpit module for Transactional Update +License: LGPL-2.1-or-later + +URL: https://github.com/openSUSE/cockpit-tukit +Source: %{name}-%{version}.tar.xz +Source10: package-lock.json +Source11: node_modules.spec.inc +Source12: node_modules.sums +%include %_sourcedir/node_modules.spec.inc +Patch0: load-css-overrides.patch +BuildArch: noarch +BuildRequires: appstream-glib +BuildRequires: cockpit-devel >= 293 +BuildRequires: local-npm-registry +BuildRequires: make +BuildRequires: nodejs-devel +BuildRequires: npm + +Requires: cockpit-system +Requires: tukitd + +%define debug_package %{nil} + +%description +Cockpit module for Transactional Update + +%prep +%autosetup -p1 -n %{name}-%{version} + +rm -f package-lock.json +rm -rf node_modules +local-npm-registry %{_sourcedir} install --include=dev --ignore-scripts|| ( find ~/.npm/_logs -name '*-debug.log' -print0 | xargs -0 cat; false) + +%build +mkdir -p pkg +cp -r %{_datadir}/cockpit/devel/lib pkg/lib +NODE_ENV=production npm run build + +%install +PREFIX=/usr DESTDIR=%{buildroot} make install +appstream-util validate-relax --nonet %{buildroot}/%{_datadir}/metainfo/* + +# drop source maps, they are large and just for debugging +find %{buildroot}%{_datadir}/cockpit/ -name '*.map' | xargs --no-run-if-empty rm --verbose + +%files +%doc README.md +%license LICENSE dist/index.js.LEGAL.txt dist/index.css.LEGAL.txt +%{_datadir}/cockpit +%{_datadir}/metainfo/* + +%changelog diff --git a/load-css-overrides.patch b/load-css-overrides.patch new file mode 100644 index 0000000..a1e779f --- /dev/null +++ b/load-css-overrides.patch @@ -0,0 +1,26 @@ +From d90c39d8f652fa83081f3644d5375fba70c459ab Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?David=20D=C3=ADaz=20Gonz=C3=A1lez?= +Date: Mon, 13 Jun 2022 23:05:11 +0100 +Subject: [PATCH] Start loading a custom CSS file + +For changing the Cockpit appearance using the CSS overrides workaround +described at https://github.com/cockpit-project/cockpit/pull/17437 +--- + src/index.html | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/index.html b/src/index.html +index a9f1fe6..9e8bd22 100644 +--- a/src/index.html ++++ b/src/index.html +@@ -23,6 +23,7 @@ along with this package; If not, see . + + + ++ + + + +-- +2.36.1 + diff --git a/node_modules.obscpio b/node_modules.obscpio new file mode 100644 index 0000000..8ff2024 --- /dev/null +++ b/node_modules.obscpio @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d9d95502048732b467cf331bca480a5ce64982d05391d0737888dbc35c3aeaf2 +size 147746760 diff --git a/node_modules.spec.inc b/node_modules.spec.inc new file mode 100644 index 0000000..362b611 --- /dev/null +++ b/node_modules.spec.inc @@ -0,0 +1,372 @@ +Source1000: https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz#/@ampproject-remapping-2.2.1.tgz +Source1001: https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.23.5.tgz#/@babel-code-frame-7.23.5.tgz +Source1002: https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.22.9.tgz#/@babel-compat-data-7.22.9.tgz +Source1003: https://registry.npmjs.org/@babel/core/-/core-7.22.9.tgz#/@babel-core-7.22.9.tgz +Source1004: https://registry.npmjs.org/@babel/generator/-/generator-7.23.6.tgz#/@babel-generator-7.23.6.tgz +Source1005: https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.22.5.tgz#/@babel-helper-annotate-as-pure-7.22.5.tgz +Source1006: https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.9.tgz#/@babel-helper-compilation-targets-7.22.9.tgz +Source1007: https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.9.tgz#/@babel-helper-create-class-features-plugin-7.22.9.tgz +Source1008: https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz#/@babel-helper-environment-visitor-7.22.20.tgz +Source1009: https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz#/@babel-helper-function-name-7.23.0.tgz +Source1010: https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz#/@babel-helper-hoist-variables-7.22.5.tgz +Source1011: https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.22.5.tgz#/@babel-helper-member-expression-to-functions-7.22.5.tgz +Source1012: https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.5.tgz#/@babel-helper-module-imports-7.22.5.tgz +Source1013: https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.22.9.tgz#/@babel-helper-module-transforms-7.22.9.tgz +Source1014: https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.22.5.tgz#/@babel-helper-optimise-call-expression-7.22.5.tgz +Source1015: https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz#/@babel-helper-plugin-utils-7.22.5.tgz +Source1016: https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.22.9.tgz#/@babel-helper-replace-supers-7.22.9.tgz +Source1017: https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz#/@babel-helper-simple-access-7.22.5.tgz +Source1018: https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.22.5.tgz#/@babel-helper-skip-transparent-expression-wrappers-7.22.5.tgz +Source1019: https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz#/@babel-helper-split-export-declaration-7.22.6.tgz +Source1020: https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.23.4.tgz#/@babel-helper-string-parser-7.23.4.tgz +Source1021: https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz#/@babel-helper-validator-identifier-7.22.20.tgz +Source1022: https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.22.5.tgz#/@babel-helper-validator-option-7.22.5.tgz +Source1023: https://registry.npmjs.org/@babel/helpers/-/helpers-7.22.6.tgz#/@babel-helpers-7.22.6.tgz +Source1024: https://registry.npmjs.org/@babel/highlight/-/highlight-7.23.4.tgz#/@babel-highlight-7.23.4.tgz +Source1025: https://registry.npmjs.org/@babel/parser/-/parser-7.23.6.tgz#/@babel-parser-7.23.6.tgz +Source1026: https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.22.5.tgz#/@babel-plugin-syntax-jsx-7.22.5.tgz +Source1027: https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.22.5.tgz#/@babel-plugin-syntax-typescript-7.22.5.tgz +Source1028: https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.22.5.tgz#/@babel-plugin-transform-modules-commonjs-7.22.5.tgz +Source1029: https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.22.9.tgz#/@babel-plugin-transform-typescript-7.22.9.tgz +Source1030: https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.22.5.tgz#/@babel-preset-typescript-7.22.5.tgz +Source1031: https://registry.npmjs.org/@babel/runtime/-/runtime-7.22.6.tgz#/@babel-runtime-7.22.6.tgz +Source1032: https://registry.npmjs.org/@babel/template/-/template-7.22.15.tgz#/@babel-template-7.22.15.tgz +Source1033: https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.7.tgz#/@babel-traverse-7.23.7.tgz +Source1034: https://registry.npmjs.org/@babel/types/-/types-7.23.6.tgz#/@babel-types-7.23.6.tgz +Source1035: https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.17.tgz#/@esbuild-android-arm-0.18.17.tgz +Source1036: https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.18.17.tgz#/@esbuild-android-arm64-0.18.17.tgz +Source1037: https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.18.17.tgz#/@esbuild-android-x64-0.18.17.tgz +Source1038: https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.18.17.tgz#/@esbuild-darwin-arm64-0.18.17.tgz +Source1039: https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.18.17.tgz#/@esbuild-darwin-x64-0.18.17.tgz +Source1040: https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.17.tgz#/@esbuild-freebsd-arm64-0.18.17.tgz +Source1041: https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.18.17.tgz#/@esbuild-freebsd-x64-0.18.17.tgz +Source1042: https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.18.17.tgz#/@esbuild-linux-arm-0.18.17.tgz +Source1043: https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.18.17.tgz#/@esbuild-linux-arm64-0.18.17.tgz +Source1044: https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.18.17.tgz#/@esbuild-linux-ia32-0.18.17.tgz +Source1045: https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.18.17.tgz#/@esbuild-linux-loong64-0.18.17.tgz +Source1046: https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.18.17.tgz#/@esbuild-linux-mips64el-0.18.17.tgz +Source1047: https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.18.17.tgz#/@esbuild-linux-ppc64-0.18.17.tgz +Source1048: https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.18.17.tgz#/@esbuild-linux-riscv64-0.18.17.tgz +Source1049: https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.18.17.tgz#/@esbuild-linux-s390x-0.18.17.tgz +Source1050: https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.18.17.tgz#/@esbuild-linux-x64-0.18.17.tgz +Source1051: https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.18.17.tgz#/@esbuild-netbsd-x64-0.18.17.tgz +Source1052: https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.18.17.tgz#/@esbuild-openbsd-x64-0.18.17.tgz +Source1053: https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.18.17.tgz#/@esbuild-sunos-x64-0.18.17.tgz +Source1054: https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.18.17.tgz#/@esbuild-win32-arm64-0.18.17.tgz +Source1055: https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.18.17.tgz#/@esbuild-win32-ia32-0.18.17.tgz +Source1056: https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.18.17.tgz#/@esbuild-win32-x64-0.18.17.tgz +Source1057: https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz#/@isaacs-cliui-8.0.2.tgz +Source1058: https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz#/@jridgewell-gen-mapping-0.3.3.tgz +Source1059: https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz#/@jridgewell-resolve-uri-3.1.0.tgz +Source1060: https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz#/@jridgewell-set-array-1.1.2.tgz +Source1061: https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.5.tgz#/@jridgewell-source-map-0.3.5.tgz +Source1062: https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz#/@jridgewell-sourcemap-codec-1.4.14.tgz +Source1063: https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz#/@jridgewell-sourcemap-codec-1.4.15.tgz +Source1064: https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz#/@jridgewell-trace-mapping-0.3.18.tgz +Source1065: https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#/@nodelib-fs.scandir-2.1.5.tgz +Source1066: https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#/@nodelib-fs.stat-2.0.5.tgz +Source1067: https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#/@nodelib-fs.walk-1.2.8.tgz +Source1068: https://registry.npmjs.org/@patternfly/patternfly/-/patternfly-5.0.0-alpha.64.tgz#/@patternfly-patternfly-5.0.0-alpha.64.tgz +Source1069: https://registry.npmjs.org/@patternfly/react-core/-/react-core-5.0.0-alpha.115.tgz#/@patternfly-react-core-5.0.0-alpha.115.tgz +Source1070: https://registry.npmjs.org/@patternfly/react-icons/-/react-icons-5.0.0-alpha.19.tgz#/@patternfly-react-icons-5.0.0-alpha.19.tgz +Source1071: https://registry.npmjs.org/@patternfly/react-styles/-/react-styles-5.0.0-alpha.16.tgz#/@patternfly-react-styles-5.0.0-alpha.16.tgz +Source1072: https://registry.npmjs.org/@patternfly/react-tokens/-/react-tokens-5.0.0-prerelease.9.tgz#/@patternfly-react-tokens-5.0.0-prerelease.9.tgz +Source1073: https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz#/@pkgjs-parseargs-0.11.0.tgz +Source1074: https://registry.npmjs.org/@rometools/cli-darwin-arm64/-/cli-darwin-arm64-12.1.3.tgz#/@rometools-cli-darwin-arm64-12.1.3.tgz +Source1075: https://registry.npmjs.org/@rometools/cli-darwin-x64/-/cli-darwin-x64-12.1.3.tgz#/@rometools-cli-darwin-x64-12.1.3.tgz +Source1076: https://registry.npmjs.org/@rometools/cli-linux-arm64/-/cli-linux-arm64-12.1.3.tgz#/@rometools-cli-linux-arm64-12.1.3.tgz +Source1077: https://registry.npmjs.org/@rometools/cli-linux-x64/-/cli-linux-x64-12.1.3.tgz#/@rometools-cli-linux-x64-12.1.3.tgz +Source1078: https://registry.npmjs.org/@rometools/cli-win32-arm64/-/cli-win32-arm64-12.1.3.tgz#/@rometools-cli-win32-arm64-12.1.3.tgz +Source1079: https://registry.npmjs.org/@rometools/cli-win32-x64/-/cli-win32-x64-12.1.3.tgz#/@rometools-cli-win32-x64-12.1.3.tgz +Source1080: https://registry.npmjs.org/@types/eslint/-/eslint-8.44.1.tgz#/@types-eslint-8.44.1.tgz +Source1081: https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz#/@types-eslint-scope-3.7.4.tgz +Source1082: https://registry.npmjs.org/@types/estree/-/estree-1.0.1.tgz#/@types-estree-1.0.1.tgz +Source1083: https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.12.tgz#/@types-json-schema-7.0.12.tgz +Source1084: https://registry.npmjs.org/@types/node/-/node-20.4.5.tgz#/@types-node-20.4.5.tgz +Source1085: https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz#/@types-prop-types-15.7.5.tgz +Source1086: https://registry.npmjs.org/@types/react/-/react-18.2.17.tgz#/@types-react-18.2.17.tgz +Source1087: https://registry.npmjs.org/@types/react-dom/-/react-dom-18.2.7.tgz#/@types-react-dom-18.2.7.tgz +Source1088: https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.3.tgz#/@types-scheduler-0.16.3.tgz +Source1089: https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.6.tgz#/@webassemblyjs-ast-1.11.6.tgz +Source1090: https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.6.tgz#/@webassemblyjs-floating-point-hex-parser-1.11.6.tgz +Source1091: https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz#/@webassemblyjs-helper-api-error-1.11.6.tgz +Source1092: https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.6.tgz#/@webassemblyjs-helper-buffer-1.11.6.tgz +Source1093: https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz#/@webassemblyjs-helper-numbers-1.11.6.tgz +Source1094: https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz#/@webassemblyjs-helper-wasm-bytecode-1.11.6.tgz +Source1095: https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.6.tgz#/@webassemblyjs-helper-wasm-section-1.11.6.tgz +Source1096: https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz#/@webassemblyjs-ieee754-1.11.6.tgz +Source1097: https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.6.tgz#/@webassemblyjs-leb128-1.11.6.tgz +Source1098: https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.6.tgz#/@webassemblyjs-utf8-1.11.6.tgz +Source1099: https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.6.tgz#/@webassemblyjs-wasm-edit-1.11.6.tgz +Source1100: https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.6.tgz#/@webassemblyjs-wasm-gen-1.11.6.tgz +Source1101: https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.6.tgz#/@webassemblyjs-wasm-opt-1.11.6.tgz +Source1102: https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.6.tgz#/@webassemblyjs-wasm-parser-1.11.6.tgz +Source1103: https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.6.tgz#/@webassemblyjs-wast-printer-1.11.6.tgz +Source1104: https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz#/@xtuc-ieee754-1.2.0.tgz +Source1105: https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz#/@xtuc-long-4.2.2.tgz +Source1106: https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz#/@yarnpkg-lockfile-1.1.0.tgz +Source1107: https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz#/abort-controller-3.0.0.tgz +Source1108: https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz#/acorn-8.10.0.tgz +Source1109: https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.9.0.tgz#/acorn-import-assertions-1.9.0.tgz +Source1110: https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz#/ajv-6.12.6.tgz +Source1111: https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz#/ajv-keywords-3.5.2.tgz +Source1112: https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz#/ansi-regex-5.0.1.tgz +Source1113: https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz#/ansi-regex-6.0.1.tgz +Source1114: https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz#/ansi-styles-3.2.1.tgz +Source1115: https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz#/ansi-styles-4.3.0.tgz +Source1116: https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz#/ansi-styles-6.2.1.tgz +Source1117: https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz#/anymatch-3.1.3.tgz +Source1118: https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz#/argparse-2.0.1.tgz +Source1119: https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz#/array-buffer-byte-length-1.0.0.tgz +Source1120: https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz#/array-union-2.1.0.tgz +Source1121: https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz#/at-least-node-1.0.0.tgz +Source1122: https://registry.npmjs.org/attr-accept/-/attr-accept-2.2.2.tgz#/attr-accept-2.2.2.tgz +Source1123: https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz#/available-typed-arrays-1.0.5.tgz +Source1124: https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz#/balanced-match-1.0.2.tgz +Source1125: https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz#/base64-js-1.5.1.tgz +Source1126: https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz#/binary-extensions-2.2.0.tgz +Source1127: https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz#/brace-expansion-1.1.11.tgz +Source1128: https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz#/brace-expansion-2.0.1.tgz +Source1129: https://registry.npmjs.org/braces/-/braces-3.0.2.tgz#/braces-3.0.2.tgz +Source1130: https://registry.npmjs.org/browserslist/-/browserslist-4.21.9.tgz#/browserslist-4.21.9.tgz +Source1131: https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz#/buffer-6.0.3.tgz +Source1132: https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz#/buffer-from-1.1.2.tgz +Source1133: https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz#/call-bind-1.0.2.tgz +Source1134: https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001517.tgz#/caniuse-lite-1.0.30001517.tgz +Source1135: https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz#/chalk-2.4.2.tgz +Source1136: https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz#/chalk-4.1.2.tgz +Source1137: https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz#/chokidar-3.5.3.tgz +Source1138: https://registry.npmjs.org/chrome-remote-interface/-/chrome-remote-interface-0.32.2.tgz#/chrome-remote-interface-0.32.2.tgz +Source1139: https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz#/chrome-trace-event-1.0.3.tgz +Source1140: https://registry.npmjs.org/ci-info/-/ci-info-3.8.0.tgz#/ci-info-3.8.0.tgz +Source1141: https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz#/color-convert-1.9.3.tgz +Source1142: https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz#/color-convert-2.0.1.tgz +Source1143: https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz#/color-name-1.1.3.tgz +Source1144: https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz#/color-name-1.1.4.tgz +Source1145: https://registry.npmjs.org/commander/-/commander-2.11.0.tgz#/commander-2.11.0.tgz +Source1146: https://registry.npmjs.org/commander/-/commander-2.20.3.tgz#/commander-2.20.3.tgz +Source1147: https://registry.npmjs.org/commander/-/commander-7.2.0.tgz#/commander-7.2.0.tgz +Source1148: https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz#/concat-map-0.0.1.tgz +Source1149: https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz#/content-type-1.0.5.tgz +Source1150: https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz#/convert-source-map-1.9.0.tgz +Source1151: https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz#/cross-spawn-7.0.3.tgz +Source1152: https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz#/csstype-3.1.2.tgz +Source1153: https://registry.npmjs.org/date-fns/-/date-fns-2.30.0.tgz#/date-fns-2.30.0.tgz +Source1154: https://registry.npmjs.org/debug/-/debug-4.3.4.tgz#/debug-4.3.4.tgz +Source1155: https://registry.npmjs.org/deep-equal/-/deep-equal-2.2.2.tgz#/deep-equal-2.2.2.tgz +Source1156: https://registry.npmjs.org/define-properties/-/define-properties-1.2.0.tgz#/define-properties-1.2.0.tgz +Source1157: https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz#/dir-glob-3.0.1.tgz +Source1158: https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz#/eastasianwidth-0.2.0.tgz +Source1159: https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.473.tgz#/electron-to-chromium-1.4.473.tgz +Source1160: https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz#/emoji-regex-8.0.0.tgz +Source1161: https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz#/emoji-regex-9.2.2.tgz +Source1162: https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz#/encoding-0.1.13.tgz +Source1163: https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.15.0.tgz#/enhanced-resolve-5.15.0.tgz +Source1164: https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.3.tgz#/es-get-iterator-1.1.3.tgz +Source1165: https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.3.0.tgz#/es-module-lexer-1.3.0.tgz +Source1166: https://registry.npmjs.org/esbuild/-/esbuild-0.18.17.tgz#/esbuild-0.18.17.tgz +Source1167: https://registry.npmjs.org/esbuild-plugin-copy/-/esbuild-plugin-copy-2.1.1.tgz#/esbuild-plugin-copy-2.1.1.tgz +Source1168: https://registry.npmjs.org/esbuild-plugin-replace/-/esbuild-plugin-replace-1.4.0.tgz#/esbuild-plugin-replace-1.4.0.tgz +Source1169: https://registry.npmjs.org/esbuild-sass-plugin/-/esbuild-sass-plugin-2.10.0.tgz#/esbuild-sass-plugin-2.10.0.tgz +Source1170: https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz#/escalade-3.1.1.tgz +Source1171: https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#/escape-string-regexp-1.0.5.tgz +Source1172: https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz#/eslint-scope-5.1.1.tgz +Source1173: https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz#/esrecurse-4.3.0.tgz +Source1174: https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz#/estraverse-4.3.0.tgz +Source1175: https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz#/estraverse-5.3.0.tgz +Source1176: https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz#/event-target-shim-5.0.1.tgz +Source1177: https://registry.npmjs.org/events/-/events-3.3.0.tgz#/events-3.3.0.tgz +Source1178: https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#/fast-deep-equal-3.1.3.tgz +Source1179: https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.1.tgz#/fast-glob-3.3.1.tgz +Source1180: https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#/fast-json-stable-stringify-2.1.0.tgz +Source1181: https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz#/fastq-1.15.0.tgz +Source1182: https://registry.npmjs.org/file-selector/-/file-selector-0.6.0.tgz#/file-selector-0.6.0.tgz +Source1183: https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz#/fill-range-7.0.1.tgz +Source1184: https://registry.npmjs.org/find-yarn-workspace-root/-/find-yarn-workspace-root-2.0.0.tgz#/find-yarn-workspace-root-2.0.0.tgz +Source1185: https://registry.npmjs.org/focus-trap/-/focus-trap-7.4.2.tgz#/focus-trap-7.4.2.tgz +Source1186: https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz#/for-each-0.3.3.tgz +Source1187: https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz#/foreground-child-3.1.1.tgz +Source1188: https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz#/fs-extra-10.1.0.tgz +Source1189: https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz#/fs-extra-9.1.0.tgz +Source1190: https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz#/fs.realpath-1.0.0.tgz +Source1191: https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz#/fsevents-2.3.2.tgz +Source1192: https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz#/function-bind-1.1.1.tgz +Source1193: https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz#/functions-have-names-1.2.3.tgz +Source1194: https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz#/gensync-1.0.0-beta.2.tgz +Source1195: https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.1.tgz#/get-intrinsic-1.2.1.tgz +Source1196: https://registry.npmjs.org/gettext-parser/-/gettext-parser-7.0.1.tgz#/gettext-parser-7.0.1.tgz +Source1197: https://registry.npmjs.org/glob/-/glob-10.3.3.tgz#/glob-10.3.3.tgz +Source1198: https://registry.npmjs.org/glob/-/glob-7.2.3.tgz#/glob-7.2.3.tgz +Source1199: https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz#/glob-parent-5.1.2.tgz +Source1200: https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz#/glob-to-regexp-0.4.1.tgz +Source1201: https://registry.npmjs.org/globals/-/globals-11.12.0.tgz#/globals-11.12.0.tgz +Source1202: https://registry.npmjs.org/globalyzer/-/globalyzer-0.1.0.tgz#/globalyzer-0.1.0.tgz +Source1203: https://registry.npmjs.org/globby/-/globby-11.1.0.tgz#/globby-11.1.0.tgz +Source1204: https://registry.npmjs.org/globrex/-/globrex-0.1.2.tgz#/globrex-0.1.2.tgz +Source1205: https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz#/gopd-1.0.1.tgz +Source1206: https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz#/graceful-fs-4.2.11.tgz +Source1207: https://registry.npmjs.org/has/-/has-1.0.3.tgz#/has-1.0.3.tgz +Source1208: https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz#/has-bigints-1.0.2.tgz +Source1209: https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz#/has-flag-3.0.0.tgz +Source1210: https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz#/has-flag-4.0.0.tgz +Source1211: https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz#/has-property-descriptors-1.0.0.tgz +Source1212: https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz#/has-proto-1.0.1.tgz +Source1213: https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz#/has-symbols-1.0.3.tgz +Source1214: https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz#/has-tostringtag-1.0.0.tgz +Source1215: https://registry.npmjs.org/htmlparser/-/htmlparser-1.7.7.tgz#/htmlparser-1.7.7.tgz +Source1216: https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz#/iconv-lite-0.6.3.tgz +Source1217: https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz#/ieee754-1.2.1.tgz +Source1218: https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz#/ignore-5.2.4.tgz +Source1219: https://registry.npmjs.org/immutable/-/immutable-4.3.1.tgz#/immutable-4.3.1.tgz +Source1220: https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz#/inflight-1.0.6.tgz +Source1221: https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz#/inherits-2.0.4.tgz +Source1222: https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.5.tgz#/internal-slot-1.0.5.tgz +Source1223: https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz#/is-arguments-1.1.1.tgz +Source1224: https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz#/is-array-buffer-3.0.2.tgz +Source1225: https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz#/is-bigint-1.0.4.tgz +Source1226: https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz#/is-binary-path-2.1.0.tgz +Source1227: https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz#/is-boolean-object-1.1.2.tgz +Source1228: https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz#/is-callable-1.2.7.tgz +Source1229: https://registry.npmjs.org/is-core-module/-/is-core-module-2.12.1.tgz#/is-core-module-2.12.1.tgz +Source1230: https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz#/is-date-object-1.0.5.tgz +Source1231: https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz#/is-docker-2.2.1.tgz +Source1232: https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz#/is-extglob-2.1.1.tgz +Source1233: https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#/is-fullwidth-code-point-3.0.0.tgz +Source1234: https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz#/is-glob-4.0.3.tgz +Source1235: https://registry.npmjs.org/is-map/-/is-map-2.0.2.tgz#/is-map-2.0.2.tgz +Source1236: https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz#/is-number-7.0.0.tgz +Source1237: https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz#/is-number-object-1.0.7.tgz +Source1238: https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz#/is-regex-1.1.4.tgz +Source1239: https://registry.npmjs.org/is-set/-/is-set-2.0.2.tgz#/is-set-2.0.2.tgz +Source1240: https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz#/is-shared-array-buffer-1.0.2.tgz +Source1241: https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz#/is-string-1.0.7.tgz +Source1242: https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz#/is-symbol-1.0.4.tgz +Source1243: https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.12.tgz#/is-typed-array-1.1.12.tgz +Source1244: https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.1.tgz#/is-weakmap-2.0.1.tgz +Source1245: https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.2.tgz#/is-weakset-2.0.2.tgz +Source1246: https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz#/is-wsl-2.2.0.tgz +Source1247: https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz#/isarray-2.0.5.tgz +Source1248: https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz#/isexe-2.0.0.tgz +Source1249: https://registry.npmjs.org/jackspeak/-/jackspeak-2.2.2.tgz#/jackspeak-2.2.2.tgz +Source1250: https://registry.npmjs.org/jed/-/jed-1.1.1.tgz#/jed-1.1.1.tgz +Source1251: https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz#/jest-worker-27.5.1.tgz +Source1252: https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz#/js-tokens-4.0.0.tgz +Source1253: https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz#/jsesc-2.5.2.tgz +Source1254: https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#/json-parse-even-better-errors-2.3.1.tgz +Source1255: https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#/json-schema-traverse-0.4.1.tgz +Source1256: https://registry.npmjs.org/json5/-/json5-2.2.3.tgz#/json5-2.2.3.tgz +Source1257: https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz#/jsonfile-6.1.0.tgz +Source1258: https://registry.npmjs.org/klaw-sync/-/klaw-sync-6.0.0.tgz#/klaw-sync-6.0.0.tgz +Source1259: https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz#/loader-runner-4.3.0.tgz +Source1260: https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz#/loose-envify-1.4.0.tgz +Source1261: https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.0.tgz#/lru-cache-10.0.0.tgz +Source1262: https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz#/lru-cache-5.1.1.tgz +Source1263: https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz#/lru-cache-6.0.0.tgz +Source1264: https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz#/magic-string-0.25.9.tgz +Source1265: https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz#/merge-stream-2.0.0.tgz +Source1266: https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz#/merge2-1.4.1.tgz +Source1267: https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz#/micromatch-4.0.5.tgz +Source1268: https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz#/mime-db-1.52.0.tgz +Source1269: https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz#/mime-types-2.1.35.tgz +Source1270: https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz#/minimatch-3.1.2.tgz +Source1271: https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz#/minimatch-9.0.3.tgz +Source1272: https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz#/minimist-1.2.8.tgz +Source1273: https://registry.npmjs.org/minipass/-/minipass-7.0.2.tgz#/minipass-7.0.2.tgz +Source1274: https://registry.npmjs.org/ms/-/ms-2.1.2.tgz#/ms-2.1.2.tgz +Source1275: https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz#/neo-async-2.6.2.tgz +Source1276: https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz#/node-releases-2.0.13.tgz +Source1277: https://registry.npmjs.org/node-watch/-/node-watch-0.7.3.tgz#/node-watch-0.7.3.tgz +Source1278: https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz#/normalize-path-3.0.0.tgz +Source1279: https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz#/object-assign-4.1.1.tgz +Source1280: https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz#/object-inspect-1.12.3.tgz +Source1281: https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz#/object-is-1.1.5.tgz +Source1282: https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz#/object-keys-1.1.1.tgz +Source1283: https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz#/object.assign-4.1.4.tgz +Source1284: https://registry.npmjs.org/once/-/once-1.4.0.tgz#/once-1.4.0.tgz +Source1285: https://registry.npmjs.org/open/-/open-7.4.2.tgz#/open-7.4.2.tgz +Source1286: https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz#/os-tmpdir-1.0.2.tgz +Source1287: https://registry.npmjs.org/patch-package/-/patch-package-7.0.2.tgz#/patch-package-7.0.2.tgz +Source1288: https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz#/path-is-absolute-1.0.1.tgz +Source1289: https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz#/path-key-3.1.1.tgz +Source1290: https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz#/path-parse-1.0.7.tgz +Source1291: https://registry.npmjs.org/path-scurry/-/path-scurry-1.10.1.tgz#/path-scurry-1.10.1.tgz +Source1292: https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz#/path-type-4.0.0.tgz +Source1293: https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz#/picocolors-1.0.0.tgz +Source1294: https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz#/picomatch-2.3.1.tgz +Source1295: https://registry.npmjs.org/process/-/process-0.11.10.tgz#/process-0.11.10.tgz +Source1296: https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz#/prop-types-15.8.1.tgz +Source1297: https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz#/punycode-2.3.0.tgz +Source1298: https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz#/queue-microtask-1.2.3.tgz +Source1299: https://registry.npmjs.org/qunit/-/qunit-2.19.4.tgz#/qunit-2.19.4.tgz +Source1300: https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz#/randombytes-2.1.0.tgz +Source1301: https://registry.npmjs.org/react/-/react-18.2.0.tgz#/react-18.2.0.tgz +Source1302: https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz#/react-dom-18.2.0.tgz +Source1303: https://registry.npmjs.org/react-dropzone/-/react-dropzone-14.2.3.tgz#/react-dropzone-14.2.3.tgz +Source1304: https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz#/react-is-16.13.1.tgz +Source1305: https://registry.npmjs.org/react-xml-parser/-/react-xml-parser-1.1.8.tgz#/react-xml-parser-1.1.8.tgz +Source1306: https://registry.npmjs.org/readable-stream/-/readable-stream-4.5.2.tgz#/readable-stream-4.5.2.tgz +Source1307: https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz#/readdirp-3.6.0.tgz +Source1308: https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz#/regenerator-runtime-0.13.11.tgz +Source1309: https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.0.tgz#/regexp.prototype.flags-1.5.0.tgz +Source1310: https://registry.npmjs.org/resolve/-/resolve-1.22.2.tgz#/resolve-1.22.2.tgz +Source1311: https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz#/reusify-1.0.4.tgz +Source1312: https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz#/rimraf-2.7.1.tgz +Source1313: https://registry.npmjs.org/rome/-/rome-12.1.3.tgz#/rome-12.1.3.tgz +Source1314: https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz#/run-parallel-1.2.0.tgz +Source1315: https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz#/safe-buffer-5.2.1.tgz +Source1316: https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz#/safer-buffer-2.1.2.tgz +Source1317: https://registry.npmjs.org/sass/-/sass-1.64.1.tgz#/sass-1.64.1.tgz +Source1318: https://registry.npmjs.org/scheduler/-/scheduler-0.23.0.tgz#/scheduler-0.23.0.tgz +Source1319: https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz#/schema-utils-3.3.0.tgz +Source1320: https://registry.npmjs.org/semver/-/semver-6.3.1.tgz#/semver-6.3.1.tgz +Source1321: https://registry.npmjs.org/semver/-/semver-7.5.4.tgz#/semver-7.5.4.tgz +Source1322: https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.1.tgz#/serialize-javascript-6.0.1.tgz +Source1323: https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz#/shebang-command-2.0.0.tgz +Source1324: https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz#/shebang-regex-3.0.0.tgz +Source1325: https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz#/side-channel-1.0.4.tgz +Source1326: https://registry.npmjs.org/signal-exit/-/signal-exit-4.0.2.tgz#/signal-exit-4.0.2.tgz +Source1327: https://registry.npmjs.org/sizzle/-/sizzle-2.3.10.tgz#/sizzle-2.3.10.tgz +Source1328: https://registry.npmjs.org/slash/-/slash-2.0.0.tgz#/slash-2.0.0.tgz +Source1329: https://registry.npmjs.org/slash/-/slash-3.0.0.tgz#/slash-3.0.0.tgz +Source1330: https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz#/source-map-0.6.1.tgz +Source1331: https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz#/source-map-js-1.0.2.tgz +Source1332: https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz#/source-map-support-0.5.21.tgz +Source1333: https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz#/sourcemap-codec-1.4.8.tgz +Source1334: https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.0.0.tgz#/stop-iteration-iterator-1.0.0.tgz +Source1335: https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz#/string-width-4.2.3.tgz +Source1336: https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz#/string-width-5.1.2.tgz +Source1337: https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz#/string_decoder-1.3.0.tgz +Source1338: https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz#/strip-ansi-6.0.1.tgz +Source1339: https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz#/strip-ansi-7.1.0.tgz +Source1340: https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz#/supports-color-5.5.0.tgz +Source1341: https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz#/supports-color-7.2.0.tgz +Source1342: https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz#/supports-color-8.1.1.tgz +Source1343: https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#/supports-preserve-symlinks-flag-1.0.0.tgz +Source1344: https://registry.npmjs.org/tabbable/-/tabbable-6.2.0.tgz#/tabbable-6.2.0.tgz +Source1345: https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz#/tapable-2.2.1.tgz +Source1346: https://registry.npmjs.org/terser/-/terser-5.19.2.tgz#/terser-5.19.2.tgz +Source1347: https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.9.tgz#/terser-webpack-plugin-5.3.9.tgz +Source1348: https://registry.npmjs.org/tiny-glob/-/tiny-glob-0.2.9.tgz#/tiny-glob-0.2.9.tgz +Source1349: https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz#/tmp-0.0.33.tgz +Source1350: https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz#/to-fast-properties-2.0.0.tgz +Source1351: https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz#/to-regex-range-5.0.1.tgz +Source1352: https://registry.npmjs.org/ts-loader/-/ts-loader-9.4.4.tgz#/ts-loader-9.4.4.tgz +Source1353: https://registry.npmjs.org/tslib/-/tslib-2.6.1.tgz#/tslib-2.6.1.tgz +Source1354: https://registry.npmjs.org/typescript/-/typescript-5.1.6.tgz#/typescript-5.1.6.tgz +Source1355: https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz#/universalify-2.0.0.tgz +Source1356: https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz#/update-browserslist-db-1.0.11.tgz +Source1357: https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz#/uri-js-4.4.1.tgz +Source1358: https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz#/watchpack-2.4.0.tgz +Source1359: https://registry.npmjs.org/webpack/-/webpack-5.88.2.tgz#/webpack-5.88.2.tgz +Source1360: https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz#/webpack-sources-3.2.3.tgz +Source1361: https://registry.npmjs.org/which/-/which-2.0.2.tgz#/which-2.0.2.tgz +Source1362: https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz#/which-boxed-primitive-1.0.2.tgz +Source1363: https://registry.npmjs.org/which-collection/-/which-collection-1.0.1.tgz#/which-collection-1.0.1.tgz +Source1364: https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.11.tgz#/which-typed-array-1.1.11.tgz +Source1365: https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz#/wrap-ansi-7.0.0.tgz +Source1366: https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz#/wrap-ansi-8.1.0.tgz +Source1367: https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz#/wrappy-1.0.2.tgz +Source1368: https://registry.npmjs.org/ws/-/ws-7.5.9.tgz#/ws-7.5.9.tgz +Source1369: https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz#/yallist-3.1.1.tgz +Source1370: https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz#/yallist-4.0.0.tgz +Source1371: https://registry.npmjs.org/yaml/-/yaml-2.3.1.tgz#/yaml-2.3.1.tgz diff --git a/node_modules.sums b/node_modules.sums new file mode 100644 index 0000000..05f3473 --- /dev/null +++ b/node_modules.sums @@ -0,0 +1,372 @@ +SHA512 (@ampproject-remapping-2.2.1.tgz) = 945323253ac52f78fb2fdc81c7061f0aada4eaaab01f2cee525fd706789fefc3d64c96322ff75fa30407584deca7a53a673a968a22199e94cc3bdeb38648f0b6 +SHA512 (@babel-code-frame-7.23.5.tgz) = 0a01f7b356bde8b8a91c29925266053f063b30dc7c0b76af92aee2e1697771f6baeb695db547b854cd533d75fbd297e6ae55936fa8cba9362b6724f665324180 +SHA512 (@babel-compat-data-7.22.9.tgz) = e546a623bc6451c2778bda950d2f8a14310af3fee8279e7fb09301d467bb2046a9afb29f75f57f1c4ad1fa4a19c0e7ddf9282d14a38a46145a91d83ef83709a5 +SHA512 (@babel-core-7.22.9.tgz) = 1b61207ae7c1718c36ed4e2186823015c81cd5753b4e55c9de6bf4e283afd560aea3dd3453f6a76523f312a363c1d8e07df924d86b3400dd1d5b508a54b706ef +SHA512 (@babel-generator-7.23.6.tgz) = aab49f098c58401e68c029862db97c5d1a57d72b57969b9e39bd0dd14990c00d3bdca6717a38104f302625ecf1be9c100fdb86b4adac847762e79413f8c6e323 +SHA512 (@babel-helper-annotate-as-pure-7.22.5.tgz) = 2ef053c6ef1b41242473228e53e6b56ed9cd150d5d30077447a3f25b76ab5deb34e85e902d62c8addebcd5bc513c85e5acc191dd76275bd27230bedd3f7aa0c6 +SHA512 (@babel-helper-compilation-targets-7.22.9.tgz) = eea62b34ce878e99cf1c96e8a7199bf2148fa19d20b17f08bd44b7d89195a32fa953d7b93749cbaf556326847a900e1df5d9862f13583a3781f2c5036a5d9633 +SHA512 (@babel-helper-create-class-features-plugin-7.22.9.tgz) = 3f0ca2f3db8ee18ac62b12ff78d27c95f107e790e7465a063ceb1e680f0d14d2fa8c05279fe29c71a2128856b30a3e48a253cf0e31927734335d5cce0d546a51 +SHA512 (@babel-helper-environment-visitor-7.22.20.tgz) = cdf79d488cc585ab7f8058567c7b605af95e7349ea07d604215ae9bb08ebb8b9577d44a703c7090749a21cac2a0e743b777d9a2a8db1b7cf3fc59a6dc316df84 +SHA512 (@babel-helper-function-name-7.23.0.tgz) = 384ac4aacaf18d94c97226783a8f9ea19a9e5bd50888e72e60a449038640815f66c80fa93978619a97cd08a8c41ff6ae55f11854527acb54dce2bd1e200a6a8b +SHA512 (@babel-helper-hoist-variables-7.22.5.tgz) = c068e4f50655cef92703ac8a2145116fccd8de0ad709c399b7effb59ccbc3b6b9cb7186996650f90e76582836199d55e7b673dd895db7f5c6932d54d6dfa3147 +SHA512 (@babel-helper-member-expression-to-functions-7.22.5.tgz) = 681887d4d28c1b41f670666ab2936fb1a05eeb03468db263b8bcb6f5a53e78366349b6cde7705ac65a41d36c66f6fdf8a4b4d9d672103c5627daa319a1ae4141 +SHA512 (@babel-helper-module-imports-7.22.5.tgz) = f0397af870ff70a89fbad179a8677ff19262f3841e00a87e0847b5b01cf3f146b20411a0d5d00826b74739c38ce5bd8ca7358bdb2ba8b494ed1a3113ab4aa35e +SHA512 (@babel-helper-module-transforms-7.22.9.tgz) = b7e580d979f92bead3786b42f230ac7401f9d9b8e0806e53291b91ac018d33f9a321b3b81b1be52cc14e133f705d8e48d9743ad0f305b001b6588706f3675031 +SHA512 (@babel-helper-optimise-call-expression-7.22.5.tgz) = 1c1c1aa23374c45471e3222fa701aac62576b547e5ef8d358e5a24e7ae0d801f441d2d72e904f5ec598a5a6e33b6a8de55d5cbb82e1f4af1dce5e3e9423a136f +SHA512 (@babel-helper-plugin-utils-7.22.5.tgz) = b8b96cd3a5152a0146f500f839e1582c41ad78c2006b99294cf7052f6f32b82208cec7fa67229932594a54e099161899e69b67c17e26b4a75608113fb93e1a9a +SHA512 (@babel-helper-replace-supers-7.22.9.tgz) = 2c920abefa603ce3d44e1758a9c5fa21746e21c4e4700b9bd086834460991f4a7918f529ecf85153d4158057030dde7505a3e493bed98ea17087a0d94c01261a +SHA512 (@babel-helper-simple-access-7.22.5.tgz) = 9f41fdf44fcaf818a46b7fbe58d2f5ecf3afa38aca599ee5644a7543e7d2b556d48bc9f13d01013a54e608ec56ff426c4b9e9228a43ea2301eda91ca247377e7 +SHA512 (@babel-helper-skip-transparent-expression-wrappers-7.22.5.tgz) = b4ad78afae8964a882e37a7c2a2df7c8b05524a9500c5a00f0660debb9560830aaa0be8430c4ae33d6fe21f7f68c768cfd1445625ecafa28abbbb85b46a371f1 +SHA512 (@babel-helper-split-export-declaration-7.22.6.tgz) = 02c527c6e2e1458b22b0589a270be9d5017e2372a30f914ec6eb75e2afc6ce8bd47baa2b1cb7ac5b60bb77be789119b9de1e60aabcfab0597ab31738055b44fe +SHA512 (@babel-helper-string-parser-7.23.4.tgz) = f34de099b41dab075fe28971ad7e0027214157f453af7ad298e8f4acac1eb26ce57e160d0c4b3efe239cce7ce9356949948953242d907cf15c1c1e839737552d +SHA512 (@babel-helper-validator-identifier-7.22.20.tgz) = 638399fb2b656ad47c008fbc2997cab8be6eacaa7ba9ecb4f216b7d4bf1bdc1c1ec0902825a993cf2bf13d1ff90fe2a47490863eaffef13ba41c1958d74157f4 +SHA512 (@babel-helper-validator-option-7.22.5.tgz) = 477a01eb194854a527c4d5316e682aee92a3c69aeedb8ce58a6a44f162b8edf002225334208fc79b5452f0868e23b3600abe8b352fa397997be66db49e90338b +SHA512 (@babel-helpers-7.22.6.tgz) = 6230eceb2fdf54e60557c8407f5af177542f47dc097b5a43059d804442aafd20dac9f3f3824d0f06756e4c21395f569c12930c34e554aa87be3b0899189f8e68 +SHA512 (@babel-highlight-7.23.4.tgz) = 69c19d6d849fa765a1789a099bf1010412e1fc80fc28373ae08499f4362d0660bcfd0db4e0f6492c7cb3781e6a333279b6b70e9326ddefc338c76296b14abef8 +SHA512 (@babel-parser-7.23.6.tgz) = 676b880fb609ee836f008db43bd5f46db970ed0aacf10da1172d11f6d01f9df2e4a79316d141fd794be70d29c5c0a67402f812d6e72a4782b3bd51e09e47b555 +SHA512 (@babel-plugin-syntax-jsx-7.22.5.tgz) = 82fc8fe2166b82bb3fc1631aa1cbf1678e07c346f75bc3def9c33173c57550b434ee887c54d6c845aa03d4b459553bc3fb49e27832a37e02a0f3db03eebacaae +SHA512 (@babel-plugin-syntax-typescript-7.22.5.tgz) = d664b6a34de2eedd5ce95cc7e9f750dce03cb5c108c701b5f3320f469f94635221bfa5be5d9cc1095c44c45f6ea6eb2c3d7274c44f57447c0ca0db357a9fe745 +SHA512 (@babel-plugin-transform-modules-commonjs-7.22.5.tgz) = 078a733978fe38d466b9a413834e5bdf2ff80ee173dd67023405cf2dbd90d064f44eb18a1b134a5788f0b17b6cf92b5a3342d073365b3a98fca350cb3c324888 +SHA512 (@babel-plugin-transform-typescript-7.22.9.tgz) = 067551d42a4a8ae0f48a86c73da33588bbdcc0f60ddae54502aa0b552a440ca5ae3a29280afe476ca2f172584a6145e55a45fce83a191ada88e1785b3accab32 +SHA512 (@babel-preset-typescript-7.22.5.tgz) = 61b3da6a5f4bc73b521a19a7751e3a16601b909ff57c0b30dbdded494f88e44e61f9c9c9ddde064f0c9480662639725874603eb8d78f95ee2a6da4738f634849 +SHA512 (@babel-runtime-7.22.6.tgz) = c036f9a569b8583745e8b15475edc997c5b33c0fb765bc58aa40bac405ee0f78ab7441cdd64d0d7d346b243f190f7efc489eb59a230b0aa20e5d885df31f8025 +SHA512 (@babel-template-7.22.15.tgz) = 40f12b5159b8bb225aeb4ae423bdea9de0da72f76fcf1b214f7924b06aa519661d3932143b027b44350bf2c1aab25635b975922fac4c14a1170d2de8c76b85d3 +SHA512 (@babel-traverse-7.23.7.tgz) = b58de633cac7f63334607146c9f0b4ff17fe481e5e294bbb1cf8fbfe4ddfa62f5d025b0c73961b42f0e2d128764133d7a8c872680b7302bf34ed32327d0ae6ca +SHA512 (@babel-types-7.23.6.tgz) = fae6ab6fcddbac1ccf28ddfc357d4c901eaf6fafa6c2f47a6a652e96a004edc710c35a4497e6c289af536dd1b596c9c53fb959c92bd49f7ec21f25d075f4f0ce +SHA512 (@esbuild-android-arm-0.18.17.tgz) = c07b26246fdd9cbdce92901cc1b8280534cc1d58b8532a2edc5e667f9f19b6653220a7dc740ed344e6afffab42cc44f8037416d90d850be7859de314fa2c8ec6 +SHA512 (@esbuild-android-arm64-0.18.17.tgz) = f67a7e61874d0de779f8982bd5375606ca3367ce54d4e6b7c56d1ced35aa1f4cb66868215ed66cb93f276116f338c725d1b5d95e33866e4b284ed54e956ad166 +SHA512 (@esbuild-android-x64-0.18.17.tgz) = 3be15e581ffec726b468b836de11c433613785b7f06738eaba628c488a9c1db36f0daf9dcdad83d322eeca64414109c2df8096aec2545f21f6306e559cb77abb +SHA512 (@esbuild-darwin-arm64-0.18.17.tgz) = 33db89f55481d68962d8113f749b37cd5afd91c08106c13cf37a6b6a07b5356cfaa414befb5a0d9ffeeca0f352dfed431a3d05ae44af9c40f806696ed55004f6 +SHA512 (@esbuild-darwin-x64-0.18.17.tgz) = 5c3adef89e5878824331fa779f4dbbf4314dac60979713ae1ac5889116f535384c67406cad65e84e0db725eafb7c45d0f587b9423aef5e9c678739776c7b64d2 +SHA512 (@esbuild-freebsd-arm64-0.18.17.tgz) = 7234f319add094d7c445ad3ea6dca4cb1b3903a144510405d0cba29585d8046741c43defc4970a9f30e584309ad550090a603179dea662103629a2486ed88db9 +SHA512 (@esbuild-freebsd-x64-0.18.17.tgz) = b0ec44bd1f1ded5ecac3c42acf159cedb15f9d69c675a141badd5d45462dbbe10845779f05cfde22c8948928675b484cdc5990e597f6eecb83b87b0a819e50ac +SHA512 (@esbuild-linux-arm-0.18.17.tgz) = d9ddcbc3ac24c2048b0b67c8bd72a830d19569e63ca9d374202deb7ee571269f3d0917c0ddedd5a9689f1837ee6a43e6a7dd3e662ae64dfc9ed67e27723bf696 +SHA512 (@esbuild-linux-arm64-0.18.17.tgz) = 73dc37b44eea0370985a34fe33704c6f032dfb42583a9def08c2a0541ac29759f08c094e318cc4a3e806ed0699f40b6a6458f931b51cf3ce70b81066bba6800d +SHA512 (@esbuild-linux-ia32-0.18.17.tgz) = d434bd17debaa67e693e7a97633d7a750a96201d1d9837c041977a8d24a9893f5e5f53732a1d3b27a54a4770285d75c493a0aa64ca238950d2662d5296629576 +SHA512 (@esbuild-linux-loong64-0.18.17.tgz) = 12f2ecc4293a645d1fa4207ac3a78e23615cf0a5b937ab07948a2f35ef2e38539b2f63be32bd1b7e53c7c87c0b4faaf0320f6befb58e0166f616a090ad59f016 +SHA512 (@esbuild-linux-mips64el-0.18.17.tgz) = 7b46c8747039a7a97e970a93137e8d016e611edc36b4d4661e5181ca0642d7840e6ec0376c3e02eac5cb263be70c88d22a15b5ff44b7783cbe4265ffb9958461 +SHA512 (@esbuild-linux-ppc64-0.18.17.tgz) = 040022949d0ce4edae3311d81a314a9f89c9285e9f34274fd44d28e6de5fbcc618cde22acb625d00ff3c033e4b1edf6a06851ae2d0da4697d6b76d5ea79fd6a9 +SHA512 (@esbuild-linux-riscv64-0.18.17.tgz) = 5a1fc75b630f9c2ddbf01a9148899effd66169bdfa3cf1fedf36a6e69a86447e2913ee314eb54bc76f97746a7a7d54b72f6c7e0ebb0872c6cc95e7b1f1f6c4ea +SHA512 (@esbuild-linux-s390x-0.18.17.tgz) = 8ffdf88c0977ba5dcf35c2b7a5f23435294100d76e4f650ee6467b14268adf75c5bf77210e12022d8f3024958886243e60d750f5dc6a41cb518366efacc95882 +SHA512 (@esbuild-linux-x64-0.18.17.tgz) = 40ce74bc9ff2fbc23ad2a126171328c48c7875ed37a46a361f0c5d05e15de27321dfae17e9320167a550e544263db4165155875b0b39326257947017bc9126a5 +SHA512 (@esbuild-netbsd-x64-0.18.17.tgz) = fe31a585647b4a3f493d91f35f2c8c67544532434f8c2e902006a7d2c0ceb48a364d8937b599f9503ae41345e0b13402c564d339c30f7fda7a461da15ed9794d +SHA512 (@esbuild-openbsd-x64-0.18.17.tgz) = ad211e61a1a0c8619fe2a64cd8da2732130e3ffe441e9e2ef5e845881ae0eecb47e8160412396455112e0c4710d0b7c8979dce5cbc4d6dfb888fb9abe66dbd4c +SHA512 (@esbuild-sunos-x64-0.18.17.tgz) = 63b6416e42ea952827e3ece8b78294358b2dd1b1683baf2d46023a998d8520cf9bed96f2355b4d6c33f9cbcaa5bb8fe49d967bddf8090e55c80fea21639cede6 +SHA512 (@esbuild-win32-arm64-0.18.17.tgz) = 6f03e64c9b0441c6d9936ea862973873ff0fbd3637279fd02bc8ccd7d0d5944b00078d4cdfd696a2f5a81ed366efcb1dea2a7aa6b8a5c5e1e8b0f0035ed10917 +SHA512 (@esbuild-win32-ia32-0.18.17.tgz) = 1ff5da3ed3ca962d8c856fb7090b9ea3a362dc0be0822ea13ff62f82411ed5a49ac70f8078ef0c163abc0e581f4ddf48cf8622877402648e982cca3271c9cf46 +SHA512 (@esbuild-win32-x64-0.18.17.tgz) = 7c611bf1fd81480dc25bbae2255babba0eb90022ee400ccaab4492aa46366f6c871c7d0ccc37db2f22881b31f0388fe090773133f95eb925ba0f9c3f2cc362b4 +SHA512 (@isaacs-cliui-8.0.2.tgz) = 3bc8dc8da6d76a578e1bd0d0d3e0115d66414df9cfe16340ab3ba224aee5978e009b118abff2763384cf8f18d8df39c109fbc15c5cee726d6dc1dc85c9b16a10 +SHA512 (@jridgewell-gen-mapping-0.3.3.tgz) = 1cb85258e2d18bcef9ce38cc1bfafe36fd28096f2e9866f4060121c97ddd0d7dde83066d07c3ea2e78f3df279db7c4794ad06bcdc838681a6787c500f43d41a1 +SHA512 (@jridgewell-resolve-uri-3.1.0.tgz) = 1769ac95aded69df8c7e1b79709abb2d25dc76e74a4d6095614830ea92c538e1d24ed6658fa496358029f8086ea8b9967413b65f984facb72ef1c54ff1fcb6f3 +SHA512 (@jridgewell-set-array-1.1.2.tgz) = c6792c7ae3400ccd20b766ecf81be13b4a7bf0c93beb662765db2ecc5574d7c3681b54a3d52090be94aa6bb5d46936a6e6f0066ac00157da9701230a9c533033 +SHA512 (@jridgewell-source-map-0.3.5.tgz) = 513600523ff0be2c1db0c7f3a1226ca49c5b907e68d6c9f3c17d3fff410d5f5bbfe7992465991c4d93fabbd6f028692ff9d924f5ab789b50a9b74b98f3491ca5 +SHA512 (@jridgewell-sourcemap-codec-1.4.14.tgz) = 5cf4891d69a2dfde1fb94bb30e71b3d7088aa967e8d725de70740c45fda5ea1ced4cefa73ebbbae7c0320e781a05eee2b08c44911b0f47715987eb3b8956b853 +SHA512 (@jridgewell-sourcemap-codec-1.4.15.tgz) = 785dabc4246e9442971d34620eb0f2e9eacc616a8dc382cf750f14400e21baec5a42c55e44f165da833ca031b130584951665ff4c7292ed25ab030d96ff0697a +SHA512 (@jridgewell-trace-mapping-0.3.18.tgz) = c3e9e2258ccc1dd77b5127621f653af3af67aa10f69db7d95cd0f9629f77a886c49a70cd93b3c3e3ca3e61c851569ccc53b33a8d509b7a74d1ecf03514b43da4 +SHA512 (@nodelib-fs.scandir-2.1.5.tgz) = beadb806adf29b91c4426d8d282af7c970f08dceef4ec1138510e7929d832bda75baa2d1f831eeae6fcd393a34286ec760753b7a9a4a663dcccaa62e3017fada +SHA512 (@nodelib-fs.stat-2.0.5.tgz) = 46484f3e9db3aea0c0400ff68cd867ced70f025bfae17761229edaef8e78039a2f23b06e93182decc5fbb9dc00bb7ce0d437293d4d2bcf7555d5279aaaf638f8 +SHA512 (@nodelib-fs.walk-1.2.8.tgz) = a0607e53196059c810920c28f067041b07a6a1316ddc520ef5a6da6c199a1b05c8a01299f864f2d293f5f396de1a0ecb96287f3521d25765c0b35967ce7a1c4a +SHA512 (@patternfly-patternfly-5.0.0-alpha.64.tgz) = 549382a52fd6ca18e42aaa1a0a8deeb10c685c08fdd29f353431c3137ff8ff14d461be77c4d3570c9d58c243e41b4443bece83692f54fe1126bb501b09af5513 +SHA512 (@patternfly-react-core-5.0.0-alpha.115.tgz) = 864a6eeca6d478c1ae92e177e10c4eb931d477912756e847e556744bd21a3ab8118979caff166c7f96103e3ff64cbe25c7c40e3e238ecc3cefc4b82935261a05 +SHA512 (@patternfly-react-icons-5.0.0-alpha.19.tgz) = 8f25522ba7fdb9e20efa92362b69e323fe2a75047d58af79dc8509b50e8fb4d84b1cab001ce9eac078c152bab158e059fadcb9329a873e807d61ddf88bcbdcc6 +SHA512 (@patternfly-react-styles-5.0.0-alpha.16.tgz) = 47153cb12298d2d338d3167093e051e6f5a8b4ff8b64e1f6bea74d144213edad7ed4aafda929b992dab7e209f32b49f2594687d3ca8bf5d6b81d5a37fcef91e0 +SHA512 (@patternfly-react-tokens-5.0.0-prerelease.9.tgz) = c77909a253d2f792c94a24b69f74fd28be8c363b6e33da8a2b36ea2b59e489fb40cadb9b72843d3bb8a41230d88882c7a6ea68e651b91fd0abe74900c2ed6bb0 +SHA512 (@pkgjs-parseargs-0.11.0.tgz) = fb55648dd0f44012cfa1d1ab2547aa6ab1fc54022f40e0c86f087d5e93f94b28ac7fb628420b0928f345a2aa8b425bbe550fed552b21311ea5a0f327f14f9d3e +SHA512 (@rometools-cli-darwin-arm64-12.1.3.tgz) = 02615350362306e106429fd6c29b3ed9ca94afeaa147b8325c052790be69b02b8d0b3dfcd3b4eb52afde70ea1cb793086af1894c7e91e1a6922faf9ff9594112 +SHA512 (@rometools-cli-darwin-x64-12.1.3.tgz) = 93c31b5a76bcab82d195bd34e4dd97f894b5510facdd92c106fc24e1f3fc4c1c650095d4cf5ee32cbbbf162fbb0d34c498c84cf384d68f8143296fab35aaf6f2 +SHA512 (@rometools-cli-linux-arm64-12.1.3.tgz) = 5ffb8b849dbf14d0379eee538b278d3ea883dce66815f35f46fc3a6b7badd2311110fbc49fbd8d23b58f8a31ff8314b3e79ce77d0ed443a88ce0366e99492726 +SHA512 (@rometools-cli-linux-x64-12.1.3.tgz) = 72c3f5eead5e5a2517c7dcfa26bfc924f89b929972288c2258f60dcef3c2184f291e52a1c198f760746ebbb0e6ff810eab1d17148baaa96654626f5b9080bcc6 +SHA512 (@rometools-cli-win32-arm64-12.1.3.tgz) = 47298759ea1de7b1013896383fadfa0a0530600e8141d9108e1e7a5ca938a4b1073ba5f56c5c8c7add972fb2a51f0e6a3936a5ceecdfe6326a52cfaf7f78dd5d +SHA512 (@rometools-cli-win32-x64-12.1.3.tgz) = c8748a62276a24c57d9c00ea83bf06600f9c674852d6dc003408e21626d07578fd686cc3facfc8cc8144222fd4fce04bbd6620fd20b0d10568ce2daf4e52850d +SHA512 (@types-eslint-8.44.1.tgz) = 5e93437386794dbe31f925b532b88c55e22c32838d1c291614c911fda3c96f312cc6a1f2fb81a5bbf06a4dd3eb0297c378c6976ed361e9bb1e36097929a5ab4a +SHA512 (@types-eslint-scope-3.7.4.tgz) = f4ae33a089a265cdc7948a7a015503138096631db66be9614993183696e35b4e3e605d0a5a3e292579c432376715389089b14598495cb1ab095c36dd23f10f84 +SHA512 (@types-estree-1.0.1.tgz) = 2c6e28a55b3600d599d5326829cf77ee232636cb4cfddd1a7b5bcd6e706f061a8249ece05543b370b0aa6c8e5e955f15cba58ac0a8daa91fb33bd54a8ab04108 +SHA512 (@types-json-schema-7.0.12.tgz) = 1ebe497e173d79839034f60ee562c3abf9f88ea8a37473650d78ee010924b7e99675047e5c94e8387aec0f870f68c5e99fa28eef2dbec0cf00644b3c56904b54 +SHA512 (@types-node-20.4.5.tgz) = aede34364d77208f49c1005d798aa66e7d90e88553039b8f86f48ef8956a757c3febfe20948ea847d7b3b72fc0f47839bbb247e0e9989ae43e5ef8ca9b40dab6 +SHA512 (@types-prop-types-15.7.5.tgz) = 24207c0ba4a70e841fd1c37272a77fdf903b3237272be653a84ee3b9d4baa3bbadc540a0ea298983740adaacc72acce54e3723d9c9fe370301da2f7ab9ba63ef +SHA512 (@types-react-18.2.17.tgz) = bbe7bb3a580f3e1f9aaf28ce9b9509317df63af07613740048e02a54c63a021b3dd1d8da831c2fdb26b421cb6094d6cd4dec42d76a8248c646e3b28f7f2d6100 +SHA512 (@types-react-dom-18.2.7.tgz) = 19168012b8ae4f8ce9f4de29d62f010c16261327e8fb1437c878c95387a22b93436b54665191beba76400544cae3f3b1fccf86687c1be8ec3cad4213aed8eccc +SHA512 (@types-scheduler-0.16.3.tgz) = e5c27c081e32031ec11f5a0cbdd534261f65ac45f23e46abe85f46fc446cc240aebcfe0a4197d99128dc31b008082a504cde0eb999fcb73d0788abfd4c6660ad +SHA512 (@webassemblyjs-ast-1.11.6.tgz) = 20dd7123b3f03af2cf82371fd7cd200b56ea9f7abf41a382c1851a8483a16d852ef0a03fdedc36453fd3d0689d8b597b1e18f90ff20d849c6220239baa932ee1 +SHA512 (@webassemblyjs-floating-point-hex-parser-1.11.6.tgz) = 7a3023f617d12765ccb0d1e4fefe85bb67464be8b851a5c15c67a639f43f25f43a99d420fd65edc2579044b2d2e0ebdf0e1bfcad89d5c07dbb6092ccc98b3187 +SHA512 (@webassemblyjs-helper-api-error-1.11.6.tgz) = a34624a0fe2956ee2b37c6932600328fd842d92bf9525933087871a968fc6eeb5a2ef9e975cda33b08787b013a097d2dc527cb9ff518695fe985e4b64f183ffd +SHA512 (@webassemblyjs-helper-buffer-1.11.6.tgz) = cf79c5cdd729d666fc9c4385164f03ad82e91ef84a0b782b243d9aadd7ca3b399b989bc47ffb4f22a098fac35cc19218f190fb22407697bfe9aa1521aa6ee12c +SHA512 (@webassemblyjs-helper-numbers-1.11.6.tgz) = bd422167c2d9a0858706886210e6f1566ea1c0fd37e23c2673d92eab919d1d91f4c222d52c83dc3027692731b80b5d5c1e8436e53148423f64695003557ecdde +SHA512 (@webassemblyjs-helper-wasm-bytecode-1.11.6.tgz) = b051472b0726069acef5eec871fd3e81d7725980d588bf1ba4f8c9265d161f109d11392d5dd9ad58b195ce81dba94718e017b52e435fc1399738950565848974 +SHA512 (@webassemblyjs-helper-wasm-section-1.11.6.tgz) = 2cfa596d23b04e9102d9c827e214f27724b2d4a7be5c4bbe1135eea32beec9ecc73b72a376ef7428af794a1f714db9a3ac2b14c2f5b008e41036d6b7ed5ad2f6 +SHA512 (@webassemblyjs-ieee754-1.11.6.tgz) = 2cce29d9cb0f36f6e28fa5357f5f6fe96479e9067c25c1e0dd02094e54b0cc5726c7a59239189c623e88eb77fdc94d64114b6ba46fa48e48880247af1e90d7ae +SHA512 (@webassemblyjs-leb128-1.11.6.tgz) = 9bb6b416113aec3417828b9fd6d6cde5741c756a0d81a02ea142c721f18520454a03ab6efde765b3a5e72259264ba16b5c0aae2513e78b76592a3c3a1523e33d +SHA512 (@webassemblyjs-utf8-1.11.6.tgz) = bed5dfdb04d0dfeba9f59b20f2c6b6c96890a734ac3325e3d2a56254feb12860944fca7c609e87a88ee5e5e0a75b1d53fc561db2fd3b1d0b36c1315b6e87ff44 +SHA512 (@webassemblyjs-wasm-edit-1.11.6.tgz) = 61b9f623a7e77c81ae091f8569acfb61cbed04ac6fa0b5772de6e7d6d338a3f2002739a2f4059820f5a9c817d4f1c0be27100ee7b6e4e3ecddb138c947e5533b +SHA512 (@webassemblyjs-wasm-gen-1.11.6.tgz) = dd73aa9193ffcba0781743c1017bc8d7f6e4cbb1abca8a2052d7f013178ffefecdcf0a3540b72ae68426a4a95fb592db4fe11150e0195508ee3556a4e945e33c +SHA512 (@webassemblyjs-wasm-opt-1.11.6.tgz) = 70eacab8b444ecf09ee80b0e565ed66ac61fdf06d2a3809e3a4e8f92b8d2ee0e7b3057d5505f6eeb2b100413835f42dd812bd0a91886cf7097bc80ca70f372e2 +SHA512 (@webassemblyjs-wasm-parser-1.11.6.tgz) = e99c0f786ccc24cdc3aa9de10ac2e0112c411ad4ff39e0af099e130352543d8826840c77f2d4cf47d25a2b2d12e47ddebd0a4efe1dae5acda3e9873f7e39294d +SHA512 (@webassemblyjs-wast-printer-1.11.6.tgz) = 24cec0851704fb25b619661a29e1cbe6fb78c6a79ee4dd9671ece9b6683284d4be49c820a9c4f53ad5f292101bd774a7e586acd23daebfdb4782b8f0bf300fe0 +SHA512 (@xtuc-ieee754-1.2.0.tgz) = 0d7f272a0a9c1b0b1cd1e252a98b799703f80c7e459479e6b96581472ed7d0d71a191d19b6ec9e11280cc1361512dc66b0d198faa8ade10613fcc2184ce4cf78 +SHA512 (@xtuc-long-4.2.2.tgz) = 36e1ea058d4f07f0fcc54eacfed84180e02200fec73980d0df6f8115920b27c8af9149001d09d67e7e9684befd3b08f5aa6527a0dfd83e192d748a2e722a6401 +SHA512 (@yarnpkg-lockfile-1.1.0.tgz) = 1a94b0bf25ce70e3a557bd2f6e7ce38f87d6e715bf15d505ea7404b7510dcbb9b86427338b5fbf6ee5543c0aa619fab39ec391345cd432372d4c8a7c6bdb6e09 +SHA512 (abort-controller-3.0.0.tgz) = 87c950f2d69c6589d1def3504e089b8feb4e0c7239ffe974e80bb63dcae2bff1a67add1e6a3e13c161f8d6c3bdc271c3890b048f5f6ad1daf375675e007b707a +SHA512 (acorn-8.10.0.tgz) = 174480999f2252d4bffe6f039824c0d23961e930ca9074322bac5ce95e0a0d3c99280f5d9ef5fdff7b114d542b5a6efd82550065b9e698d71d6305081d65726f +SHA512 (acorn-import-assertions-1.9.0.tgz) = 726330a29f71fbc285871bcaaca7cf62637afe92936181c1a8b6b40dfbd565c28c25637258b9daa8d0fb771fea9fae91edec0cd545f95cc68354fe709554da54 +SHA512 (ajv-6.12.6.tgz) = 8f77d52e0bd3a39dbb6a7c98c893864d825b1bebe79d062f1349b99a691cd532be9f1029a6408b3082f4699e1d6e55423681928619be933138654ca4068320e2 +SHA512 (ajv-keywords-3.5.2.tgz) = e69e964cdd03753195424e958dc123bb5f4881a1ee75a95c7da6c3ef284319e03a6dc42798bf82a6f78b26aff786f7f07756a87fa2f7f3a3ae824c7a45fc8c21 +SHA512 (ansi-regex-5.0.1.tgz) = aae2505e54d25062f62c7f52517a3c570b18e2ca1a9e1828e8b3529bce04d4b05c13cb373b4c29762473c91f73fd9649325316bf7eea38e6fda5d26531410a15 +SHA512 (ansi-regex-6.0.1.tgz) = 9f933ce797ca6f64ac7cc222145a15ac0047242f10b47c15c7e98758fdd0704a811d889e9e3e5d1d28236f1b42d161195d8b78c1c0faceb4049433e116e6607c +SHA512 (ansi-styles-3.2.1.tgz) = 553d1923a91945d4e1f18c89c3748c6d89bfbbe36a7ec03112958ed0f7fdb2af3f7bde16c713a93cac7d151d459720ad3950cd390fbc9ed96a17189173eaf9a8 +SHA512 (ansi-styles-4.3.0.tgz) = cdb07dac22404f5adb8e25436f686a2851cd60bc60b64f0d511c59dc86700f717a36dc5b5d94029e74a2d4b931f880e885d3e5169db6db05402c885e64941212 +SHA512 (ansi-styles-6.2.1.tgz) = 6cdefdf2015f417faf8b0dd1ef2ac6591aa7acdda84641245238e5e09367e04f06c716e3b46dc56eb108218de5f3f86bc14c0878266f8b842e3933f8304ad5ba +SHA512 (anymatch-3.1.3.tgz) = 28c45e154af4078b7e0fe381923477298aafa1ca765da4b33b9e54701ea681031ddca6dc13e9964f2bd557b0ffcec7446cd9d5e9a71952eb64887417bd3af547 +SHA512 (argparse-2.0.1.tgz) = f3ef56a9e6db173a57f4e47e59ae8edbd6ac22881e44ccdc1ad00835da4c1c7c80835d1fd3969215505b704a867ff3d7c35123019faadbf6c4060dc3beeacadd +SHA512 (array-buffer-byte-length-1.0.0.tgz) = 2cfbb06f63fe36b430dd787119cdfaf974afb813e8a68bd761347d130fbe0eef586ff6f1e40cc17eb22c0688f41195227e3414fac1cbdb5b2c799de37ab58efc +SHA512 (array-union-2.1.0.tgz) = 1c6cb1a0e4d853208ceacb547ba1098277781287b0008ef331d7ea3be9068e79599810f3fdc479a5ff2bfdc4785aaeb4b0bfe9d0891c8d41043f04b7185ac8cb +SHA512 (at-least-node-1.0.0.tgz) = faafedec492fd440d8da5e8675ae8b2e25f5e2b53d4d5db459ade87de426c0f1596ce328f435eb2db3a315a69c9645ca5a27486a8a7000e6d00eac16b46523aa +SHA512 (attr-accept-2.2.2.tgz) = ee9ac38efb7d1e6aa2674725e42463b52f38b04ca1b073f67280e46992912957c20e8f6cee2c3b0a15666abefc1aef690b84a847fdbcc05bbf1b92498539ea12 +SHA512 (available-typed-arrays-1.0.5.tgz) = 0cc0f42a2378e9e8a97b38924f52cf3ff4937c3534b2e7c84979a34a0bd5b28536b6ac5cb5078049e8d671f36dc582aa11333553143cb29d8ead2056a4763ab3 +SHA512 (balanced-match-1.0.2.tgz) = de849e50ed13315ebb84dd4099b5ec2b8c9aa94eed8e21e56f144364ea47d0a5bdf82797e1b440697d009f1b74b71d8cae94695b041a3f02252121098585393f +SHA512 (base64-js-1.5.1.tgz) = 00aa5a6251e7f2de1255b3870b2f9be7e28a82f478bebb03f2f6efadb890269b3b7ca0d3923903af2ea38b4ad42630b49336cd78f2f0cf1abc8b2a68e35a9e58 +SHA512 (binary-extensions-2.2.0.tgz) = 8c372d27f21541b6682729287876e15e93a5341a8635cc1724a268838d84e470cf53041349d8c21dd8a18e3d0396785e43b6e56d3e9d1ce69f340892f28a1028 +SHA512 (brace-expansion-1.1.11.tgz) = 882b8f1c3160ac75fb1f6bc423fe71a73d3bcd21c1d344e9ba0aa1998b5598c3bae75f260ae44ca0e60595d101974835f3bb9fa3375a1e058a71815beb5a8688 +SHA512 (brace-expansion-2.0.1.tgz) = 5e7008bd0f1e33e902e9a50bc7ac2e422c15b27cec8bd7775b1cd5dc5a564c6035f45eb6d64c1d6ec01c14a5e02941d95accbe998ea22f5b074f1584142cad0c +SHA512 (braces-3.0.2.tgz) = 6fcba6f8bd51cccdd60d2cef866ea0233d727d36c1b7a61395c10a02fb26a82659170e3acfadba9558fd8f5c843d6df71f91fe94142964c3f593c97eefc1dad0 +SHA512 (browserslist-4.21.9.tgz) = 334305a19cdb52b454e0a35f0ab0cb9efc84ee0b9bfa979eb684e27774c122ab6e9da0c9c9797085a913fbf564bd25dc7c8cc57cafe7902b389e6c939b174d4a +SHA512 (buffer-6.0.3.tgz) = 153882a4dc6dc226591c465b71b4c87198c44552029fdcaafe90c591397de7f031cc3d6768172d37b60eebcae233f80b48363bb1dacc6f2f21a1f00362ebaa38 +SHA512 (buffer-from-1.1.2.tgz) = 13e5d0091c126da6a20a1b6fea4e83c2073e6f1f81b3abee2891c7979928c7f05a29b8625f3a903b02b870edb6c84946a763829a3c15853dc79b18323c69c97d +SHA512 (call-bind-1.0.2.tgz) = ecef856c28a1ac1e5619b1587ac72dc264ca69eeab3a22339b3d6272b79627ed1a03b2c97eeaa112ca364fd9dca5c16dccc42dcd77f64061ae7962464d8b2aac +SHA512 (caniuse-lite-1.0.30001517.tgz) = 55d866e52d750da1552e5ca22aee218944e4a59bbecb5280feb659a9541f383e587434ff7902a592decd684d1618e1605f7d9d8aab7d3223fd08088579192568 +SHA512 (chalk-2.4.2.tgz) = 32d8be7fd96924d730178b5657cfcead34ed1758198be7fc16a97201da2eada95c156150585dbe3600874a18e409bf881412eaf5bb99c04d71724414e29792b9 +SHA512 (chalk-4.1.2.tgz) = a0a9db845c91217a54b9ecfc881326c846b89db8f820e432ba173fc32f6463bfd654f73020ef5503aebc3eef1190eefed06efa48b44e7b2c3d0a9434eb58b898 +SHA512 (chokidar-3.5.3.tgz) = 0ebdec7ca44fea84dc8dfd8999498525f79532f5c175e83107489543979bd95d74b852540804bc381c9975503255bf315cdcf71a38d3823f642d6b194ea13a93 +SHA512 (chrome-remote-interface-0.32.2.tgz) = dd46c52ad126a80a5e84f427a9d6e5720831ecabde42984430a42674966c3a0b84f72970d8ddbff59edaaceef14b9e7e0c127f8723fc46b6b22ede0c31d26f42 +SHA512 (chrome-trace-event-1.0.3.tgz) = a772942f2420e12ecd2078b17706c65fe9c51e4a01880e18426c96b636fc5e7812295d76e27266472b2001eba36d455bd79be1f91bc551f08fa94eeb5e4fa166 +SHA512 (ci-info-3.8.0.tgz) = 7974e0807592a28621ab8f45da8a5086e1d6833b9c7c5d9880e0cae1ed79eba190b390487cfdf4074a1e9f00491df5b102cd9fc8f075b3b320f78f732dfeb563 +SHA512 (color-convert-1.9.3.tgz) = 41f014b5dfaf15d02d150702f020b262dd5f616c52a8088ad9c483eb30c1f0dddca6c10102f471a7dcce1a0e86fd21c7258013f3cfdacff22e0c600bb0d55b1a +SHA512 (color-convert-2.0.1.tgz) = 4511023ec8fb8aeff16f9a0a61cb051d2a6914d9ec8ffe763954d129be333f9a275f0545df3566993a0d70e7c60be0910e97cafd4e7ce1f320dfc64709a12529 +SHA512 (color-name-1.1.3.tgz) = ef67d27a784cc361d931354778203d2829a91086f35a242c8cdf811dc05b4bdbebd66b6dfaf2633dd92c20135498a016f131540cf24ae52514dd0844f4d1170f +SHA512 (color-name-1.1.4.tgz) = 74ecbedc0b96ddadb035b64722e319a537208c6b8b53fb812ffb9b71917d3976c3a3c7dfe0ef32569e417f479f4bcb84a18a39ab8171edd63d3a04065e002c40 +SHA512 (commander-2.11.0.tgz) = 6f4e79dee600e580041a0c982066113b3290ed7e5102a79d91f8e2671c22d242f58376ce68134d65f624cedfc22f4ba6803e7073d25e73615b07df028e4311bd +SHA512 (commander-2.20.3.tgz) = 1a956498cf2f176bd05248f62ef6660f7e49c5e24e2c2c09f5c524ba0ca4da7ba16efdfe989be92d862dfb4f9448cc44fa88fe7b2fe52449e1670ef9c7f38c71 +SHA512 (commander-7.2.0.tgz) = 42b59707e6504953e6216221b443bd1fe8301da3066221790a1be827e2bd6461c6fec56c6baca27ac003d460bfc78eac113d345e5c28d6ee3d455555cef71293 +SHA512 (concat-map-0.0.1.tgz) = fd2aefe1db30c903417e8846a73f68e986f71b3dd2ad40ea047e6b4ee84647b6a1b656d82a7571c366c214c4658da03b1171da5d9f30b07768745bdb9212a6aa +SHA512 (content-type-1.0.5.tgz) = 9d38ea7dc045122a4a7570afe180d05827e670b64a9bcd65745d29028a53bf2ac51956dc47a3ff54001de46ecdfb4b53afc42a894d2d15a743e852b836d27038 +SHA512 (convert-source-map-1.9.0.tgz) = 012141ba9d0ccf5bb28888c035a9f58f32d06a68bdcf53e86126428a2616d857333db7a75dce3915974164bcce4feafafa2722b8432876d982b62fa18da024d0 +SHA512 (cross-spawn-7.0.3.tgz) = 8910cf24a50f544343edd1cf3bcae46ce9cfa720f281c0c5b568e9796342832f163f6ad77315cbf13b2445e425e8eac1d86efe509ada82cd6ad7916e75cec6eb +SHA512 (csstype-3.1.2.tgz) = 23b2b552ed0c04fcda14a8389c8e50ed5b36b7ede05965bae3cb29685f9183ba48f5db35f14827fa5be0e121dccd474a9472392d6057caa7d2f3e0ee7f206c81 +SHA512 (date-fns-2.30.0.tgz) = 7e750bbcea719c2e7f560dcd0a259e943b0b89473d6d1c003ecffe2df4cb36f7ad142b424cdfb2433d790bf7ece00c17d51f4ae462ed2df9fc416f9d5a2b1a03 +SHA512 (debug-4.3.4.tgz) = 3d15851ee494dde0ed4093ef9cd63b25c91eb758f4b793ae3ac1733cfcec7a40f9d9997ca947c520f122b305ea22f1d61951ce817fbb1bfbc234d85e870c5f91 +SHA512 (deep-equal-2.2.2.tgz) = c6357205fd30e6f1f4238da374067338a5657663e04ae9668b23d1cb0a32abb1d70bda9d828d7b931244fab76789fe53cfafa922ba4923c742a4c34b20691488 +SHA512 (define-properties-1.2.0.tgz) = c6fa8054a19f4f5f9402f3f0293570fe78e1750f198572b8948d1b088b8232ba76ba9f673e76837edacbb66a536b3a9dd68f94638ce0cd4f9abed31b0cffa574 +SHA512 (dir-glob-3.0.1.tgz) = 5a4ad6a7d191e0a5df28663338b993b86562d545857f0b37efb9fd71ce79fed6fa0eeab217aa5c43901b88712c85a0e963dbfaa1a4abd9708389d1a633077320 +SHA512 (eastasianwidth-0.2.0.tgz) = 23cf1361959cf578981d1438ff7739ae38df8248e12f25b696e18885e18445b350e8e63bc93c9b6a74a90d765af32ed550ff589837186be7b2ab871aee22ea58 +SHA512 (electron-to-chromium-1.4.473.tgz) = 6957c2f3ee38d2f19f974ea5f0728a9fcfcf0f98d17d29cb9134c3eb9105bd4e3a8a06e9411ae2d60c52cd6f7ff93794970633ad7935b30f3aed3f7ace5c8408 +SHA512 (emoji-regex-8.0.0.tgz) = 3128d8cdc58d380d1ec001e9cf4331a5816fc20eb28f2d4d1b7c6d7a8ab3eb8e150a8fd13e09ebd7f186b7e89cde2253cd0f04bb74dd335e126b09d5526184e8 +SHA512 (emoji-regex-9.2.2.tgz) = 2f5f03689b17494936fb8da9bfc98bb398c94f686a164144e23db5c0e9a06d4aac67684bef636c514efce60f515e0a37b3464d815978d93887a7766d3affd5ca +SHA512 (encoding-0.1.13.tgz) = 11305aba8c354f7e58fd664c922a3d8e2334679c631c7989e179a364eab597f757cf796bdac467f3b9c9cb6d11ba9a928751769b71c73d2a7c4a120f409ac9dc +SHA512 (enhanced-resolve-5.15.0.tgz) = 2d7613e36289ee5a482840abda601721a32575c34287fec4d0a04a3aee0a49f90798ffa66664acfbc57980102a8ac581cb438ee16e4ecb2b3418ed58f0ab5d2a +SHA512 (es-get-iterator-1.1.3.tgz) = b0f666a8705ee892224df379ab6a448bffd3c31980147c23fd712e6234eeb1eefc8bc2b16aa3134f3c4fa052aecd1a43a5327ed0d01ba5f7a79261f6ade3edbb +SHA512 (es-module-lexer-1.3.0.tgz) = bd92bb4f43760819813a2c619a376ac7681655b159e035d9fcdc913195652573daec2c854befdae1042c0c60d0cbd65f133c45b8d12c30b79026728fda9e7f24 +SHA512 (esbuild-0.18.17.tgz) = d4626d627531b09ade1d803463e890cf6504ca4a2763ae8735639bd325d8662f7f90dace454107560f3b790b02b6a879f4f109e5855924ef7c247ce73094968e +SHA512 (esbuild-plugin-copy-2.1.1.tgz) = 064eba8e97af4dc57c28c173648d4fecc64a67eb8372b666d86d9e819da3348bd59e2bc3a6875923efca9e92f72676a9d0f05d20753b1f014607cafebd5e4257 +SHA512 (esbuild-plugin-replace-1.4.0.tgz) = 94fdd9032cf245ae495e839de7d9496d128d39bb4af2927f44eee8eaf763c0b8bbd467db2f7d8d476d99b92eff70b664af5d3f2f596eb682e66bc1380cb9e062 +SHA512 (esbuild-sass-plugin-2.10.0.tgz) = 493bfce3d4064fc83bed14459aba12b7854154a8eff9dca929c3b8696cfc20fe06e496d11f4282d3e07c383bb395436ef51e4c6e419c7afffad910cffc9719d9 +SHA512 (escalade-3.1.1.tgz) = 9347abda05242dff0ed332898808669139c9953bc8346bfbca00cd3db788b17fd3263189647ba1f41d94c5bb1a1249a5128f4c7e1ad2ce68489614652361979f +SHA512 (escape-string-regexp-1.0.5.tgz) = bdb468ac1e455105af95ad7a53c47faa06852326b6a86cf00eb366099b982ab6dd494306e88d5908641179f911561b8e9081959deec1437e4349fa35aaf26a16 +SHA512 (eslint-scope-5.1.1.tgz) = d8dc706c5fe16742a97a960dd1c35ba3e14de97a0aec6687950860c7f848665e956b46c5e3945038ec212c8cbc9500dbb8289a7522c20671f608562aba2b796f +SHA512 (esrecurse-4.3.0.tgz) = 2a67ca2f76fa1be457bcff0dd6faf74ead642ffa021609f63585c4b6a3fcfcbde929aa540381bc70555aa05dd2537db7083e17ca947f7df8a81e692d8bafd36a +SHA512 (estraverse-4.3.0.tgz) = dfd9e729f7d6cfcc4dd4153fd9cefd9fd9c1f470f3a349e2614ab1eb1caa527ca8027432c96a4e4dd6447a209c87c041bb9d79b78c29f599a055f5619fd101a7 +SHA512 (estraverse-5.3.0.tgz) = 30c74046e54443388d4de243f0380caa6870475d41450fdc04ffa92ed61d4939dfdcc20ef1f15e8883446d7dfa65d3657d4ffb03d7f7814c38f41de842cbf004 +SHA512 (event-target-shim-5.0.1.tgz) = 8bfd976e74b3feec51094ebe35d54980a5834cce36efe32a61b910cc3df6d43b8240952a3ae24a200d08336f96db1b581dd28e999e1d47a7c4c6c7784972fe59 +SHA512 (events-3.3.0.tgz) = 990c3ed9f9106c02f343b574318d08a9d9d734e793b4fe2bd2537dcfb0006b009782a79aedb0e28b6d0062b201ac577f1f1d0cd8e733e92d75d4268591471bd1 +SHA512 (fast-deep-equal-3.1.3.tgz) = 7f7a90f68432f63d808417bf1fd542f75c0b98a042094fe00ce9ca340606e61b303bb04b2a3d3d1dce4760dcfd70623efb19690c22200da8ad56cd3701347ce1 +SHA512 (fast-glob-3.3.1.tgz) = 90d14fca3861e5c2a3ad496dc6cfb0171f9991b45ac71999f97d19537d523acc4212d3fd54f82dab6b5e670d4379bba92f91a60da350eb228c31570ce358aa0e +SHA512 (fast-json-stable-stringify-2.1.0.tgz) = 96177fc05f8b93df076684c2b6556b687b5f8795d88a32236a55dc93bb1a52db9a9d20f22ccc671e149710326a1f10fb9ac47c0f4b829aa964c23095f31bf01f +SHA512 (fastq-1.15.0.tgz) = c01ae8714d8b0975dafa5581b7c4682110fcf458bc39d0013836bf9049f27b28d2e5a64ee7f18dbc8e6c1083400ea3ff87c336f541d31d46f9dec52ee4886a77 +SHA512 (file-selector-0.6.0.tgz) = 425679c890b45711f1410b10857bc1682ed5449dae6b14dff937e9bb867f39c550255a593be0c6534ae4a155b971ed9271cc6e82fa4126832f52ce7d8882d877 +SHA512 (fill-range-7.0.1.tgz) = a8ea3d17e74c5260b62dc6f805b56f9ca2714cf8c29be451a5ee200ee1abce42fb984565fdd8d84aed8e750d8f6b7d36378a2a91283d8abea368b589d94495a5 +SHA512 (find-yarn-workspace-root-2.0.0.tgz) = d483276e3b782b3b107e7867ccd77cc141205d9e3823365a6669cb631ec3e45665687b76816db40ab8bc43e13fb79b488f8f9ea5306e6fed99c6efef3482f3a9 +SHA512 (focus-trap-7.4.2.tgz) = 28c8dff87e6e0d63e4c12415a84e6bffebce90fe73056c1506858f219c54de07e0f8cf084fe63cb3ebd742a66f1c4217c873ca1eb4a6ea6e06e1c785f7c399f3 +SHA512 (for-each-0.3.3.tgz) = 8ea61f2e9ee6a3dbc8c907fcca45b6bfb03ed8de108de09e239f83cfd5eb6a23b58a09fcd708e21fb15bf6f48e5af41f36d9926b81f6468413aeb5e2bdd5199b +SHA512 (foreground-child-3.1.1.tgz) = 4cc28352722d7ba6df6f99d6bfb57f71a235ebd38782fc236fb5785a4794bdb410763af9ad62aa1c588a59bfdf70ec01f82cc14fea9b5a3be3f8357046c92922 +SHA512 (fs-extra-10.1.0.tgz) = a115c0a6ae78113463e1e3221731a71d61b2fb3a39adab9d8eec4dd1bf07eecfd1536a16d16becc7d3b400244dfe446af44f15bbf45eb24181e68de38be1731d +SHA512 (fs-extra-9.1.0.tgz) = 85c8376667a94b7d3fec1485a91be8a370ce310bbb223ab13b99c20edfb333d5d68dbdf75a0ef388d4fe42fa9bb9cdfe816a733b4d89b9b5729361b866fa3539 +SHA512 (fs.realpath-1.0.0.tgz) = 38ed291f694ae9ad2166701d6aee48b731cf23aa5496f23b8cc567c54411b70e28c05db093c94e49a6ed1830933f81a0ae0d8c6c69d63bd5fc2b5b78f9f18c0f +SHA512 (fsevents-2.3.2.tgz) = c62a8c411e3101e1d3b81f6e5a6f9f1517083a02813223813fe7978b24fb8ec8150aad5b915ca0b74d28012a3007b11db6938769a3e02adf35d8ff5a6fe0c328 +SHA512 (function-bind-1.1.1.tgz) = c88a2f033317e3db05f18979f1f482589e6cbd22ee6a26cfc5740914b98139b4ee0abd0c7f52a23e8a4633d3621638980426df69ad8587a6eb790e803554c8d0 +SHA512 (functions-have-names-1.2.3.tgz) = c5c901517c9322a4fdeedab6c7600c6fe835eb76f9245cac624d31e2ac4d1706df42498d6688911dbeac3f323dfd0577dd67aebd5601508883e0dccd232a9a45 +SHA512 (gensync-1.0.0-beta.2.tgz) = de137b35ab2462f3032d0639e609d6dcd43e99eb0401ea53aa583e5446e3ef3cea10c055361cdc19861ea85a3f4e5633e9e42215ca751dcb0264efa71a04bcce +SHA512 (get-intrinsic-1.2.1.tgz) = d8372cc9f00197e8151c47c239a4eb5a0cadfad6fa31210698aabe908e47c0b6c86208e098c715f0a438d6e68acf5c7151c9fdb49b6015b4141157046ddd0563 +SHA512 (gettext-parser-7.0.1.tgz) = 2d4fa27861f72fd1e628402b4e55fcd7afe28809720347f1fe7fd049e429900687ffe8f1324ff952d0e4033715bd6f8a958db9fd4f8813a7677e427cca7b7ca5 +SHA512 (glob-10.3.3.tgz) = f76bcf88c6ff8aaa66120b0ea080ef4e3739d307fd0820af333b22e96d092cf794284f1358fd5aef73e0a92aeacbb8806716920f561dcd4ed0651e4b179d4c27 +SHA512 (glob-7.2.3.tgz) = 9c5474ccba54d9809a471c28089bcbe94bc21f6245c85548bf04cbb087f6d40b8794cb240358614dd93e2e5609b4e958b7dbfa76fb330f604646a04bfa240af5 +SHA512 (glob-parent-5.1.2.tgz) = 00e22049009ea62258c0fdc04671b1fb95674eed870587736c63f8e5e2f0d6faf7cc1def64b7b279dd6c0bd8676dc39cf7f4ab33233944f42b906cf8692f59a3 +SHA512 (glob-to-regexp-0.4.1.tgz) = 9645f51c95f0c8c729af0ff961465cdacec3ae90221c1db5fd5f84d6b1d4ad5368924bc1e9ba8ccd3d157d5ebff3a64d69bb75935e18388693ee70ef397dc88b +SHA512 (globals-11.12.0.tgz) = 58e069fc410652222c252a7bc1cbffcba30efa557d5289dc5aac6e15f9bc781c3358d8327c177a1b3f8878a43d8c29b28681fdf60d793374fe41a5471638b354 +SHA512 (globalyzer-0.1.0.tgz) = e34a0d4ccf547c6e9a066b8ac64fe08879f99d0f11573fd24b822beb38333aff7fa82de4299f6fe1eb464dc25b125fcdc95407ec5194eddf97d5e82be7b31dd9 +SHA512 (globby-11.1.0.tgz) = 8e121768ecf2d6c6fc232a1c6abb964a7d538e69c156cf00ca1732f37ae6c4d27cab6b96282023dc29c963e2a91925c2b9e00f7348b4e6456f54ab4fd6df52de +SHA512 (globrex-0.1.2.tgz) = b872606f000cc0d15fe662ecb7b2162cd835e31d4291eaa09496ff2b77688b8770eaad88bc002633f63cd647afcbcdf03fe4acb7e9eeb454d838683777596cc6 +SHA512 (gopd-1.0.1.tgz) = 77ae5b36521a771be96ff03669b55d96a2aa579eb78ee4676755ad93ab35b0847cb8db1747bd31a88cd5ab155fd5e4ea0ee9f04f632473311e69ecc2293661c0 +SHA512 (graceful-fs-4.2.11.tgz) = 45b279fe398570d342703579a3d7939c12c9fc7b33595d0fef76dcf857f89d2feb263f98692e881b288e2f45680585fe9755ab97793ade1fcaac7fa7849d17bd +SHA512 (has-1.0.3.tgz) = 7f676f3b4554e8e7a3ed1916246ade8636f33008c5a79fd528fa79b53a56215e091c764ad7f0716c546d7ffb220364964ded3d71a0e656d618cd61086c14b8cf +SHA512 (has-bigints-1.0.2.tgz) = b52bc22ad06bf65905d04c7469088ff4df8ea55e338b6aff35e7b95644436daaafdf944b60ccdbc107c5499647d2447e45deb7d36509676a7f6c9084a11dd5a1 +SHA512 (has-flag-3.0.0.tgz) = b0a25fd7e71e401af848c92f427043343b5fe135e95615466ad7aed2df75f1b977d059db1369b8bcd2d7f9559efdda6395bf87ba0198cd6eee4171fdf073c463 +SHA512 (has-flag-4.0.0.tgz) = 1329094ff4352a34d672da698080207d23b4b4a56e6548e180caf5ee4a93ba6325e807efdc421295e53ba99533a170c54c01d30c2e0d3a81bf67153712f94c3d +SHA512 (has-property-descriptors-1.0.0.tgz) = eb60d52d91a88840431d0caa1b8c3dc42b99ede244c0d989456c36558f3839e75bed615c036edf88455ef28510c7d840509e1e92eaeabae7131b0b323b55c675 +SHA512 (has-proto-1.0.1.tgz) = eea13e88ff8ef9b805f5c944e7e528045cc4eb99a5062563ded282ae5350d0e8309b4063a53fe02b84a52d80ccc9b0e1e48dd30932a73cf6b4a0c1bb24362b86 +SHA512 (has-symbols-1.0.3.tgz) = 9772c2b85e8c8033704c32a47581848a1623b79a513db120e3aaed9669d23e551b82607c2ce22b2896d86050526e73da25ec4c2ad88f3bc8667918d1cf64ddf8 +SHA512 (has-tostringtag-1.0.0.tgz) = 9058dc48d867946575932a0693b3972926b01f924e6ff2f351ce70f41d3684e4ced1d7c54636c740abe0d5de9c7f71db7949ad53d55b6d5deacd9d937a1f7b59 +SHA512 (htmlparser-1.7.7.tgz) = ce92baea27e44f47dabb2161d8cba5aeae00a864ee7311ad3a167c3a391b49f702a64a90108f2a464634b5241224d010e0751992059a5387cae041fa4951fd3d +SHA512 (iconv-lite-0.6.3.tgz) = e1f0a4efdc2c84c773329dab1f4eaa5ab244e22a25a8b842507f8e8ae22053ef91074fbde0d9432fcd5ab4eec65f9e6e50ab9ea34b711cdb6f13223a0fb59d33 +SHA512 (ieee754-1.2.1.tgz) = 75ccaa843bd7d42e3a95765c56a0a92be16d31141574830debf0dfe63b36ce8b94b2a1bb23ab05c62b480beeca60adbd29d5ce2c776ef732f8b059e85509ea68 +SHA512 (ignore-5.2.4.tgz) = 3006f7f017126c7d1e1cd0719fbaa5d8d1ff917df73a4077959d4135d87b10d7910a11d362c4ef5ab32e6e220030d4b69655c4120675314381b570a13f791a15 +SHA512 (immutable-4.3.1.tgz) = 963f5c9e607f9154b4407b099d8283d6ea37a37f67adb2b1b338e7a92f45afa341edb6735b8e54e9648604f2970cbfc2bc32aa0cd3c0e2bdc3a0343c193c68d8 +SHA512 (inflight-1.0.6.tgz) = 93dd88fdbd3cab8c2f16c71708bbea7ec1c2ae3ac5ef2897b10b8856f544ecdf365b7f9aaa9cee51d05b7e159ccbf159477ff82207e532028b3acbcf0eb18224 +SHA512 (inherits-2.0.4.tgz) = 93fbc6697e3f6256b75b3c8c0af4d039761e207bea38ab67a8176ecd31e9ce9419cc0b2428c859d8af849c189233dcc64a820578ca572b16b8758799210a9ec1 +SHA512 (internal-slot-1.0.5.tgz) = 63e479849af3b39d90086da568b9f8b9d6159f1b1f9f2f42a4e84d854be4fd249257217a4f6ec5cd16c5d2cae83e2752bb75fca040243a7d8af34e268e9b7a51 +SHA512 (is-arguments-1.1.1.tgz) = f10ec40118f31272a9b7f3c20fb7b5720512d1ae97f2ee6d75288ca978688ce76857d4ec32c88efbd54b0b9bc098ef0deff1a65e7ef28d1f2a9c0e9b5401337c +SHA512 (is-array-buffer-3.0.2.tgz) = cbe172c91ff0f2f7c846ae1e41c3351188124e79875cfa9a17e220ce0adacad085ab95e1f259650d598066894f26266db592de15220d3d831a109effbd651ad7 +SHA512 (is-bigint-1.0.4.tgz) = cc1f42aee31a9a3ca6f358b6259dd4327e783ca1ac433b097a8eb1bcddc7249e0202c40d07a891bada764e8efb39f08dba8c6ca6c221cda3e83b5cf20848453a +SHA512 (is-binary-path-2.1.0.tgz) = 64c11161eb3aa43c9dcae1a276c7bb3ac1f1b5b23b595794128ce047f83baddd31522998365bd9444fcad8c8194e35b2ef6e487de94b79570433dee69ad4465f +SHA512 (is-boolean-object-1.1.2.tgz) = 80361a2872669e3e1a5b1ca3e981f25d5a5d41ac2d54b1d4e5c6fe7b3b4f19ccdfe9c8ee4ddc2f7b964811f817a87e1ee7b027d43d4029ff02677918ad046a60 +SHA512 (is-callable-1.2.7.tgz) = d410b40551614bfa74aadc3a7a7a7c7bef0e0f452b2b4a052f3b528cdce170a037583b89c7100f5f33ee3ed2a48c463d514a045a55fff1f80a7aed92f22f494c +SHA512 (is-core-module-2.12.1.tgz) = 43866e0407b6154b0ab72409a101e5bcff0ebc1111c4ede3126cb523b85c457709046187161fda241b306d7b92f6c82b0c7d9050ef22964c0d3c7bc731df1c96 +SHA512 (is-date-object-1.0.5.tgz) = f5841a4b1b00892c1cbd2df7301937c130959d62be1e117c5594768d1c5e84cd7a41c54e747a8f9f854f1e644ae254abdfc9fd26b8aeac89cb70ff74c6c60d7d +SHA512 (is-docker-2.2.1.tgz) = 17e8b604ab05ac7eba89a505734c280fcb0bcbc81eb64c13c2d3818efb39e82c780a024378a41ea9fcfcc0062249bf093a9ad68471f9a7becf6e6602bef52e5d +SHA512 (is-extglob-2.1.1.tgz) = 49b29b00d90deb4dd58b88c466fe3d2de549327e321b0b1bcd9c28ac4a32122badb0dde725875b3b7eb37e1189e90103a4e6481640ed9eae494719af9778eca1 +SHA512 (is-fullwidth-code-point-3.0.0.tgz) = cf29a6e7ebbeb02b125b20fda8d69e8d5dc316f84229c94a762cd868952e1c0f3744b8dbee74ae1a775d0871afd2193e298ec130096c59e2b851e83a115e9742 +SHA512 (is-glob-4.0.3.tgz) = c5e9526b21c7dfa66013b6568658bba56df884d6cd97c3a3bf92959a4243e2105d0f7b61f137e4f6f61ab0b33e99758e6611648197f184b4a7af046be1e9524a +SHA512 (is-map-2.0.2.tgz) = 70e645410a334e16b57f83312c5ce580a60f4f28f6ea989c7594f1f3685b73f5dfe0afed64e39748290cbd4e292a2a115c60cb2519f418ced4a5eee447bdb5ca +SHA512 (is-number-7.0.0.tgz) = e350a27e483a7bc4f2952a5db53a5e2d532abd20445734edb47bc4443ef8d7ea6767c00dbf4d34e0c44be3740a3c394af5c1af369e8d6566540656c65d8c719e +SHA512 (is-number-object-1.0.7.tgz) = 935534211ccb328ed995821fcd1bb6dce87a3222056ac8296fd5fbe9ea9f15902ac07e38508e0a4c1bc16086757522fd6730a14c1f528477cb911e29756e64ad +SHA512 (is-regex-1.1.4.tgz) = 92f45dc43b31663873517d3b6672f27734b54d4fd32654d41c763860b2fcededfba14038f437e42ea832f958c5a1ca30cb6f5c2af7128aefa422fef6f234d356 +SHA512 (is-set-2.0.2.tgz) = fb67274c465e639cff89719b2e13eb38068afcc6aee64e5e5eaf63d780a94537edab4a4026ed8cc15452661c99581cf1de8e97efde4bcfa0696fa47418a7f7ee +SHA512 (is-shared-array-buffer-1.0.2.tgz) = b2a376503bb5ff4cbabaf5f24ad08ecf28408c24a51dc785a0c2895bc5bd114f5cbe273f41db19d24114f771c4cb7214105648887ff7c3e007fd441b3c735d84 +SHA512 (is-string-1.0.7.tgz) = b44d945f38af8deea87cf5bb976ddc8c338c6b4f606fbc6502a1ba8c6e5e8fab8f577d939563f734a3e282d68678736ef5fa2171c458bc889931f38e9ce614b6 +SHA512 (is-symbol-1.0.4.tgz) = 0bf08f06a2969ef75cc6a200471c8e878bf551410e087a600dad16620a4a0c532ccdcacf71f7e0e6e8704a03c22c3d965b19aaea2b22b33f3bb734f4d6db8686 +SHA512 (is-typed-array-1.1.12.tgz) = 675e1317624d1bc2ecb39fc732ab74fff4fd25e1d7b6d5f2e691ff0c1538be2f7ca333b66edc73abd3306036589cac14f2746ccfff865455510eadc3915b923e +SHA512 (is-weakmap-2.0.1.tgz) = 352051e241f9a158f5530beff7bd2bb9490257b3b59b381514ee3fadebf670b45d6bd4e6f47acbef464fbade2b387818d0536b52ef4109b5c0dac750fb1d1c84 +SHA512 (is-weakset-2.0.2.tgz) = b76c95bedb4791092dc2734d98143df0084434b74f5130d3136d6e3ea010d0047041f19e40a4554b434dbab1fb6d37fb46bbdc567d4e3a07b8e429c17870929a +SHA512 (is-wsl-2.2.0.tgz) = 7cacc0adad2b18951407018180d90766e4e865c9fe4ed5c7a5e0a09a430930c631d6c40361a092ca32414826b69c7d431a6eecde7d68067a21a154c168decbc3 +SHA512 (isarray-2.0.5.tgz) = c478e10ebddc3412b40737542523d7667b50531fe6c0c4b9470e00ee53c9f745c600ee8848ffde3c336ea34be1a8e654f940f9268a1dc02000a1941ddc57802b +SHA512 (isexe-2.0.0.tgz) = 447c4c2e9f659ca1c61d19e0f5016144231b600715a67ebdb2648672addfdfac638155564e18f8aaa2db4cb96aed2b23f01f9f210d44b8210623694ab3241e23 +SHA512 (jackspeak-2.2.2.tgz) = 9a036d56fe2f52e68a03def2c541e8037f8592e86dc648dd5c458ec81fcdefa7e3cb41637b312ddf8a32ddea41b6f0af4beec3c8ac2a0855b1fe824b579fa40a +SHA512 (jed-1.1.1.tgz) = cf7e594847171f12d6e32ba6c34745e8be3ae0d4f7eaf9b1df0c49c3c303a6b681716b8d56050f6603c929cbb51de90d83094c14daa897b8bf22949b8e1ab0a8 +SHA512 (jest-worker-27.5.1.tgz) = eefba1f3957971d0e87cfcb19f9f27acf8c192d668d2ef71d60f16b6342897e8d90da13e7e137e708bd38f5d469dd067327c9fad4386d6c650c427632a1f832a +SHA512 (js-tokens-4.0.0.tgz) = 45d2547e5704ddc5332a232a420b02bb4e853eef5474824ed1b7986cf84737893a6a9809b627dca02b53f5b7313a9601b690f690233a49bce0e026aeb16fcf29 +SHA512 (jsesc-2.5.2.tgz) = 398bbb5c4ce39024370b93ecdd0219b107cda6aa09c99640f7dc1df5a59dd39342b42e6958e91284ada690be875d047afc2cb695b35d3e5641a6e4075c4eb780 +SHA512 (json-parse-even-better-errors-2.3.1.tgz) = c72170ca1ae8fc91287fa1a17b68b3d8d717a23dac96836c5abfd7b044432bfa223c27da36197938d7e9fa341d01945043420958dcc7f7321917b962f75921db +SHA512 (json-schema-traverse-0.4.1.tgz) = c5b6c21f9742614e53f0b704861ba1ec727cf075ee5b7aac237634cce64529f6441dca5688753f271ce4eb6f41aec69bfe63221d0b62f7030ffbce3944f7b756 +SHA512 (json5-2.2.3.tgz) = 5e63967bb7b21d81f5e1c2dd54fa3283e18e1f7ad85fef8aa73af2949c125bdf2ddcd93e53c5ce97c15628e830b7375bf255c67facd8c035337873167f16acca +SHA512 (jsonfile-6.1.0.tgz) = e5d8277563ab8984a6e5c9d86893616a52cd0ca3aa170c8307faebd44f59b067221af28fb3c476c5818269cb9fdf3e8ad58283cf5f367ddf9f637727de932a5d +SHA512 (klaw-sync-6.0.0.tgz) = 9c87ae552cdd082b3a4c33d3a88f30d58adedf8b12abb024678077b1f3816c8d82815481e03bb868b4228c5536fa5840142c2df7ee361de97a950348bfa027b5 +SHA512 (loader-runner-4.3.0.tgz) = dd1ff533ec92de3e68bbcd0c7b9f63ec5f4832ce0f5ecdd5a91ae6d1353701b28fc659a9a18d5336c70957fa06257a3ca826ad1464df0db63a5ba8a918e6177e +SHA512 (loose-envify-1.4.0.tgz) = 972bb13c6aff59f86b95e9b608bfd472751cd7372a280226043cee918ed8e45ff242235d928ebe7d12debe5c351e03324b0edfeb5d54218e34f04b71452a0add +SHA512 (lru-cache-10.0.0.tgz) = b2f4dffdfcec2877df3f8dacba390efd18ecdfb04222c41544278d6089bd58df2b813edf7e852746d642a94fba06a71205dbfc83025e4f3f249c9a6000279033 +SHA512 (lru-cache-5.1.1.tgz) = 2a9340450037230bfe8d3034bad51555bae1f8996baf516fd1ee7a186cc014e5cdedd93f16f89a0d6f0b1e62b9d8395c1f858fda7ea023cbcdd5a7ac045828f7 +SHA512 (lru-cache-6.0.0.tgz) = 268e9d274e029928eece7c09492de951e5a677f1f47df4e59175e0c198be7aad540a6a90c0287e78bb183980b063df758b615a878875044302c78a938466ec88 +SHA512 (magic-string-0.25.9.tgz) = 46617402c33382ddb9ab3aaa2dcd7e31b1e685dc74a2317616fb385e73aacf664e057cf3904c1cfdd250642607027eefd636d53a30197caf26b119f80713b855 +SHA512 (merge-stream-2.0.0.tgz) = 69bbffa8e72e3df9375113df0f39995352ca9aec3c913fb49c81ef2ab2a016bc227e897f76859c740e19aac590f0436b14a91debb31fa68fcba2f6c852c6eddf +SHA512 (merge2-1.4.1.tgz) = f2aed51203095b827cb5c7d53f2f20d3d35c43065d6f0144aa17bf5999282338e7ff74c60f0b4e098b571b10373bcb4fce97330820e0bfe3f63f9cb4d1924e3a +SHA512 (micromatch-4.0.5.tgz) = 0cccbe1117045b6abc6763e8f96357bb0ddce586944858c03b91ac26a7c497b523bed22e14a3ba66b2af708b5dcbdf1dc05236375b60df334874a6904fe68d74 +SHA512 (mime-db-1.52.0.tgz) = b0f538b95edd625bed589c70c311c3d0fba285536213b4f201b439496c43081f66518bce82ba103b061040e28f27c0886c4fb51135653a82b5502da7537818be +SHA512 (mime-types-2.1.35.tgz) = 64363e6cf9b9cd34c5f98a42ac053d9cad148080983d3d10b53d4d65616fe2cfbe4cd91c815693d20ebee11dae238323423cf2b07075cf1b962f9d21cda7978b +SHA512 (minimatch-3.1.2.tgz) = 27ba7ade1462023c35343130c355bb8b7efe07222b3963b95d0400cd9dd539c2f43cdc9bc297e657f374e73140cf043d512c84717eaddd43be2b96aa0503881f +SHA512 (minimatch-9.0.3.tgz) = 44789a73d9af691c34c770184600c2d42c403fb1d370daeb102780f186097969e9a3ed90e427a0b598daa2d5935b10c6dd4786035728134e621f598f8d3ff69a +SHA512 (minimist-1.2.8.tgz) = db2c8047ca8190ddd8ba17896a7529582e54ddb6f9a2c0f2c0d07c4730d5943c031dba1c009bdeaaa8f5bbcf92543ee39164f8cafb070a95aaa96a80c5bd3308 +SHA512 (minipass-7.0.2.tgz) = 78befd757ac4d6af5d05b0c22e0ef17e7fef97b312e05d60bc90208c9ad0962fe36d059d52db6e55ac2986aa5f7e82187d176aefc2c7c7a18fe1b53f110d804c +SHA512 (ms-2.1.2.tgz) = b0690fc7e56332d980e8c5f6ee80381411442c50996784b85ea7863970afebcb53fa36f7be4fd1c9a2963f43d32b25ad98b48cd1bf9a7544c4bdbb353c4687db +SHA512 (neo-async-2.6.2.tgz) = 61ddd4112e665824aa47ea8d4fddd2dd4a18524a8067d94b83c6bb83dae29ac5a66062bc7154e8038fec17746bb21772577b0018c5d5526a4c60ec3e74ba4ebb +SHA512 (node-releases-2.0.13.tgz) = b98afb277eda7bf39159d65e435c713097b736d766a8c0bf2592be81ea1f0eb90b500a4a4473ddd7cfd3c6d04e278034ffeb942258a8acdadf615eacd5bd3679 +SHA512 (node-watch-0.7.3.tgz) = de5e04f2e30f6351dd30caf23d150097ea081ed5edca24e522211235255237170f7f3005cde4db5c542465f03005ba34075a8c486f27500071f8677e62b6caad +SHA512 (normalize-path-3.0.0.tgz) = e9e66ce4bb375ad0a2b075a9f52d86532f1daa4a468b80554b3dc66aa884e9ecee6f4e75d844b3b57530501e82e8829b4246363e76ff983e166288c24707302c +SHA512 (object-assign-4.1.1.tgz) = ac98134279149c7d6c170f324fa552537cc3dec5a6bbab19848b1e63c557f8646edcfe85ec5bbe24d0e85df9251256cb2529dcdc55101d57b8714e618fe05c52 +SHA512 (object-inspect-1.12.3.tgz) = 81e52f764edcf9e8b330d503911a56d7027081f3a239e1dbc4147f84b5cad5a4face65523b48ec41cb3b7e3e8c1b0f3d8c2fdc8c67cb70d3abb4c62d1aa9bcd6 +SHA512 (object-is-1.1.5.tgz) = ddcc83b321e0b668bb23b0df4922362c3a7a48ada5c2fb5b834a744757b446f4ea17971e1b1f8ad9d7d28e6d5b283315085103010bf2fa8f1ce9aed5ba339d77 +SHA512 (object-keys-1.1.1.tgz) = 36e00449439432b9485ce7c72b30fa6e93eeded62ddf1be335d44843e15e4f494d6f82bc591ef409a0f186e360b92d971be1a39323303b3b0de5992d2267e12c +SHA512 (object.assign-4.1.4.tgz) = d66c4a7f47b9f1bbf28d20ad298638b117bd8ad464dcf269aae24e8de224cfcf3909ccdc23822f2490cb3d2ef6a28c2e4a1fa907150544ea57f9353efa1c6165 +SHA512 (once-1.4.0.tgz) = 94d689808fb643951140191c7042874d038f697754c67659125413658d0c15402e684a9ed44f8dcaf81dcff688c8d8ba67d3333b976fd47f27e7cfc610ba77fb +SHA512 (open-7.4.2.tgz) = 3151dd743570797645ddac2d9404beea980a2e59bf260c59f74fbf341bab06841cb5538e07fcc37558dcc8fcd0fb495a0c66ec5a0ad191f948eb9b1078e813f5 +SHA512 (os-tmpdir-1.0.2.tgz) = 0f6151d37562afb148bb8e57058db49936fefd9496074d2c8d4f637505edf37803ac8e19b73e45b3bff2cbbe20d8de52550638c58d6a0ebe2b35d770611557d2 +SHA512 (patch-package-7.0.2.tgz) = 3cc61f2fc2d7c462119b15cbaa511a071cca3eeeff49d3f5de577a1927c05095194660433e9f1c859b34769cda0059fd4d23e7162330902e8f26dea9062025f1 +SHA512 (path-is-absolute-1.0.1.tgz) = 0156f0dd42767bd6eaeb8bd2692f409b47e37b53daf296c6a934ec9977da2223299ebe4394385f24eb8b8fd49ff7964f5430147ab0df124f3c30f98f7bb50242 +SHA512 (path-key-3.1.1.tgz) = a2399e374a9dfb2d23b3312da18e3caf43deab97703049089423aee90e5fe3595f92cc17b8ab58ae18284e92e7c887079b6e1486ac7ee53aa6d889d2c0b844e9 +SHA512 (path-parse-1.0.7.tgz) = 2c32733d510410f47ecb8f33f7703411dd325dbf29001c865a8fe4e5861d620a58dbfd84b0eb24b09aeaee5387c6bcab54e9f57a31baa00a7c6a1bce2100fcb3 +SHA512 (path-scurry-1.10.1.tgz) = 324842ab3cc11293efc7143bd4c7746f52a4e755b4d65ad8be5333494688ccdb0e0dd77b9aa8628a649996bf957a0033e59e95cedf57836b6d13ffd70611f711 +SHA512 (path-type-4.0.0.tgz) = 80329bf1a64c0de0ffb595acf4febeab427d33091d97ac4c57c4e39c63f7a89549d3a6dd32091b0652d4f0875f3ac22c173d815b5acd553dd7b8d125f333c0bf +SHA512 (picocolors-1.0.0.tgz) = d5fca0ae84cb947bbaeb38b6e95a130eff324609b415c71e72cb2da3e321b19d03fc3196dac9bc13c0235bb354e5555346de46c5b799e6a06e26bf87c8b6248d +SHA512 (picomatch-2.3.1.tgz) = 254ded7874cd8e6136542185cee63c117cc20d5c04a81d9af1fb08bf0692b4784058911e55dd68d500fcd0253af997445d748b6d2b2e2f0263902056a9141454 +SHA512 (process-0.11.10.tgz) = 71d19e7ff76b585a32743d49b0ccee15ff35d349d997e193fb269c7366c471e7797fd463938cfe5ad1544c1bbd3e13a2f63fe37e604fbb498c118e3021d005f0 +SHA512 (prop-types-15.8.1.tgz) = a23f3b0a064809dba5528868815011ec08e50b4df6ed4e1e9782fa780bcea827ae74c0d553435384d695f9bf437f87578123f58173139cf7617deff6a831f972 +SHA512 (punycode-2.3.0.tgz) = ad157ecd00fcb55172b36ea500647d594b92e225009e025270cf994522adbe5e6d29e676b796ef74d15d347056f45591e20b861e5826b19d46ec14a6db04dbb8 +SHA512 (queue-microtask-1.2.3.tgz) = 36e68d49ae9f94a4f925a498433268934e09cd32f5080e9a1a1bf9adf2d6dcf82a03e3360a1a59427002f21f22e19164052f17e51aa40c11c0eebe217a3dcaf4 +SHA512 (qunit-2.19.4.tgz) = 6aa533cd4782aa595e5982a5a607dd1c7c3d0ba2b1901f47df035f881839c87a90333cb4c70fe96c244760592397c32c3ffb7caa44d013e25360bef56b38227b +SHA512 (randombytes-2.1.0.tgz) = bd897788e5fee022945aec468bd5248627ba7eca97a92f4513665a89ce2d3450f637641069738c15bb8a2b84260c70b424ee81d59a78d49d0ba53d2847af1a99 +SHA512 (react-18.2.0.tgz) = ff722331d6f62fd41b05d5a25b97b73f6fe7a70301694f661c24825333659f464261b71f4ec19b4c9ad4fe419e99d1f6216981da2a19fb3931b66aba834f5f19 +SHA512 (react-dom-18.2.0.tgz) = e88313ae2526bec8c752336d103b9d65fb83414a165d5c4a1e194419293cd67e18152fabfca97df705e2c25557b4f06d25e9e8cefd8ffa1c43b30f5e03b5e8ea +SHA512 (react-dropzone-14.2.3.tgz) = 3b7a26f08f8f90529bc42ba47c847740019fb585c365f384d8dd66affeea79b4091eced4fbf4522fff71a2624da5183d90ce61f6ca1049d7f419cece1c5e45ba +SHA512 (react-is-16.13.1.tgz) = db87baca71361fe38ab7892ab0ebcd77c901a55eb9ce8c5b038055b04381dc0455590922fc31f3694a02e4ab8e37f06271c0da0824d906e39c7d9b3bd2447c6d +SHA512 (react-xml-parser-1.1.8.tgz) = c97f64f4b342473ccd9c55a8ca8f5c5848eda2bea7e950f4521ef3d70c39ac83fa879bdd8492849a8c2c9bd46e98424c45dafb6a4713e2630149ca6ccf9ef7a9 +SHA512 (readable-stream-4.5.2.tgz) = ca36af10276a799dc62d736045781e404773f5fbc30e434ac879db1d116d3abeff2dc7e005c99cb7bb7f113f876824ea7e1d3a3b3a00c6b90dfc87e324155efa +SHA512 (readdirp-3.6.0.tgz) = 84e4b4f3da27f1176ea9d6e1bd0e59dfb0341128ecab3eaa9d171f7ec314df8f7916e4dda929beedb849dbd26f20eb010c41276a7e433eef6ddd3a3d55194ccc +SHA512 (regenerator-runtime-0.13.11.tgz) = 918d40655af645afadfa9895689e20c5a15a45e6551f8d0028da3b5025fa5be744c01a3fda8649cea7ee375a8bab5a0be39a39e9c3da4d710bc2b4e1f05a6082 +SHA512 (regexp.prototype.flags-1.5.0.tgz) = d12bad0b7a4db9d44a82abb11a8446233f78e8c6551ea6cd7cf8c177178e841add8032a54685e660b40df7145bad1d3d65759e18074fba27fb7a0a1f9fabf92c +SHA512 (resolve-1.22.2.tgz) = 49bfa68cd1ce50bb01bfcd7c4f8d2a48f7918ae58bc9a18c6b97b0c9d44b1629a77a2c66572db3762bd197e005ea36983c2f044711839854a2aae8ba49f3ddfa +SHA512 (reusify-1.0.4.tgz) = 53d9c7f3c6b77dcfde902175974fd43f5228b22b888f24e1ee106f5d530762055c7c6bedf3ded782e8f650e2c3788e411b69bbfeec3268b553e9f6ed0b04f2cf +SHA512 (rimraf-2.7.1.tgz) = b968db68a20add3d4e495a6dcd7ecd97a3ef437a801ad284b5546346e6b38df2f7071e5e238d3d5594aa80d0fee143679b32d574f8fd16a14934fa81645bdee3 +SHA512 (rome-12.1.3.tgz) = 7be7dfef68710e97bfb79fd4b3b611055c373c1113ed279ccd340d9fab6fad676b09a030dea3ae91043eb430a4c85b52e321ac9e18eb25b9b8ddcb4d6f3dbb62 +SHA512 (run-parallel-1.2.0.tgz) = e65e15c9947ce8b67f943c594d1ea3a8bf00144d92d0814b30fdba01b8ec2d5003c4776107f734194b07fb2dfd51f0a2dddcf3f0e950b8f9a768938ca031d004 +SHA512 (safe-buffer-5.2.1.tgz) = ae9dd2a34eca71d9a629b1af81a37141226bedb1954959394bd12ad45fa9a5b468ef4f9879a0f1930e4377c34f37e183e9b8e7626d95b8fb825e6a6e62f9825d +SHA512 (safer-buffer-2.1.2.tgz) = 619a372bcd920fb462ca2d04d4440fa232f3ee4a5ea6749023d2323db1c78355d75debdbe5d248eeda72376003c467106c71bbbdcc911e4d1c6f0a9c42b894b6 +SHA512 (sass-1.64.1.tgz) = d7aad100248e14413c54ded20a006ed4ca580b237bbab8fd02df3df2dcb37571610be6bec8e5f9757c0047b2fcfc874f275341f0e6285e60f9e43337d01da411 +SHA512 (scheduler-0.23.0.tgz) = 0adb93866807360ef32195805e2dc0b322330379f8c71eda3728f00b654995d3b62cc5438452beeb7c46aaae82b091f8ad302debf33e3781a16620d83f1f5e53 +SHA512 (schema-utils-3.3.0.tgz) = a4dff2380bdc0bee6b4399c4446bb0ae32e562f2d36c289b9d9d48ec1d4b6a2033f41441944f4632013f7aa577d0feda25051fec37629b2fd1b1b60efc6ad51a +SHA512 (semver-6.3.1.tgz) = 051ed5bc30951cefaadb10445ac9314ba0c9135a919dbec3c7352ba206fbd425a849f89c07162c88019df8a9749a6abf329ac6f7202b464cab4314cee978cccc +SHA512 (semver-7.5.4.tgz) = d5b09211257a3effa2db51efa71a770f1fa9483f2520fb7cb958d1af1014b7f9dbb3061cfad2ba6366ed8942e3778f9f9ead793d7fa7a900c2ece7eded693070 +SHA512 (serialize-javascript-6.0.1.tgz) = a30a171058d6465962b3cfccd50f82c3993c647e347b7ce1a7fa2f5fe5ebfef8b5aa3e907ac6f25d756215ba4dbd6bcf3400fad92badc045dabde7eb2c95a3ef +SHA512 (shebang-command-2.0.0.tgz) = 907c6bdb366962d766acdd6a0e3aeb5ff675ad1d641bc0f1fa09292b51b87979af5ecc26704d614d6056614ce5ada630d7fc99a7a62e0d8efb62dbdb3747660c +SHA512 (shebang-regex-3.0.0.tgz) = efef9d161b5cc77df9dee05aabc0c347836ec417ad0730bb6503a19934089c711de9b4ab5dd884cb30af1b4ed9e3851874b4a1594c97b7933fca1cfc7a471bd4 +SHA512 (side-channel-1.0.4.tgz) = ab95cfcada85108287906762308ad8d749af2d1be7421e36ffe1a8065156ddbd8b5cb136c71269645766f78c1ed016a85774702721aa839c12edea714efd19bf +SHA512 (signal-exit-4.0.2.tgz) = 318dbfa86c787a7ca3a6b42715a66c1e26f761a761dc85f25760b7db5198d298c67d506ee2e9f4b83264c20771a8ef91771f09313f087c9211c1b615cf739bdd +SHA512 (sizzle-2.3.10.tgz) = 90f19ebfe4a2072bb38bf60f0d3a82c1d28b58268df7ed78bdef3ac87d203fa11fb9ed38c632d8589adc2c2eb2d5bb85c885579301cd5cfb0e4c477531854f6d +SHA512 (slash-2.0.0.tgz) = 6582a1dd6876cf53e91175abd0ca52059d15ea66470107d87afb6d3b5d5ce7509a5a319369a762299fb056dd4f6cc943579aa1305b25a5909e9a1c0e2bb0bcf4 +SHA512 (slash-3.0.0.tgz) = 83d43585a79bcb7e8e492b706f89ed08618668ab1a5528d0ebc7c1c6841cbad9797d2d6fb98d7c1f7c12b778c5c85b6b931f8acf45751bce40e0cc80743322d9 +SHA512 (source-map-0.6.1.tgz) = 52381aa6e99695b3219018334fb624739617513e3a17488abbc4865ead1b7303f9773fe1d0f963e9e9c9aa3cf565bab697959aa989eb55bc16396332177178ee +SHA512 (source-map-js-1.0.2.tgz) = 4745ef549f56bac2e2a930848860a620208ca65702908c30475d663920fd091e6ef885d8762b1e784b970950234b9e33ab090b70f367994e0e789ead52b5a10f +SHA512 (source-map-support-0.5.21.tgz) = b811d4dcbddccec232617297f3c7ddac6a2fc5d482a13183459e92617b524712d95331e0e4fffae87b7aba85251eef4466877e8a75e12a8dea420c17513ff2d7 +SHA512 (sourcemap-codec-1.4.8.tgz) = f4dca4a23579522878960a394a8e5db70f9fd098095f7d0a08d23c830873d89f40d79c03d0c97ab631cac1fe9f4d26ba7c075505d65e34eb3d789ef5a8293cbc +SHA512 (stop-iteration-iterator-1.0.0.tgz) = 8821908fed25d0739d67600478100396c442fafb270ec66c6dd4a21f5c8d4a371f28cedf76908c7ea00bfddc05e412e2c3f5e145fb7f59ac7acd06e1ab605c8d +SHA512 (string-width-4.2.3.tgz) = c0ac90450a63274b08a7ad84ad265d1ac8cc256b1aa79a1136284786ee86ec954effd8c807a5327af2feb57b8eaab9e0f23fdcc4a4d6c96530bd24eb8a2673fe +SHA512 (string-width-5.1.2.tgz) = 1e72ce091def8dc63c6dea0d2ed723679fe7c67d9a7e6304ea586b0eb79ba24a8c6a9f976de5bc9fd4d7a4f0cea9d18ae6a708de84f418a4d6eb00bb10c895a8 +SHA512 (string_decoder-1.3.0.tgz) = 864457f14d568c915df0bb03276c90ff0596c5aa2912c0015355df90cf00fa3d3ef392401a9a6dd7a72bd56860e8a21b6f8a2453a32a97a04e8febaea7fc0a78 +SHA512 (strip-ansi-6.0.1.tgz) = 637f153d21dcaa416b0a916743dbee4979aabaebf9a1738aa46793e9a1abaf7a3719cf409556ba2417d448e0a76f1186645fbfd28a08ecaacfb944b3b54754e4 +SHA512 (strip-ansi-7.1.0.tgz) = 8aae9e55523ae274104d162ad8ab44836776b94ecb125853270b07e18cc81d9b21c658199acff021ce15a03413946fc8bd522b04a1b4e82ad99e9d2abfb86471 +SHA512 (supports-color-5.5.0.tgz) = 423563c1d5c8b78d3c308880a825f8a142ac814d84a801b3b363e9926e1a4186e39be644584716e127c5353af8b8c35999ad1ecb87f99602eb901d1a5f440ca3 +SHA512 (supports-color-7.2.0.tgz) = aa9080bd197db2db8e1ef78ab27ec79dc251befe74d6a21a70acd094effe2f0c5cf7ed2adb02f2bf80dfbedf34fc33e7da9a8e06c25d0e2a205c647df8ebf047 +SHA512 (supports-color-8.1.1.tgz) = 3295043763a876d533c6f29097bd9c505ed14391221ec1af4ac546d226bd73945b5862f6088e02ec4a4f4bc513048a659e5cd988db95e7ac3e16e371cb7b72d9 +SHA512 (supports-preserve-symlinks-flag-1.0.0.tgz) = a2dd169d74bd7e076480871e3dee911cd935580f3e9ae3dae9c4a3791dd5f0adbbabd041d6b4c4dd1d69ec7bf4cf567201cf2ce95beff0323259febcd4c02dd3 +SHA512 (tabbable-6.2.0.tgz) = 09ab7ade6c6c54997362f379d499955c880da14a24ac8693db32dc9425e345df1ba19d34d38538282b3fb13a09ef90bab1d941c96c696276f906889fd554857b +SHA512 (tapable-2.2.1.tgz) = 18dcd0bd04ce20fe91c937c4d90c5bf19565366c349fcf2fa75b33c1646298fd369a74ecc775ad9f9a9176a63dc365ddb8535482f3b084d9d0b23c02a7e92a69 +SHA512 (terser-5.19.2.tgz) = a82e7e76679c28903872963145ae5a56429e858b1029cf801de2a5d0e7bad9a62304bf19037ded4e58e4b431c949ac713276c8e59630fa8fd2d83c712eef0e7c +SHA512 (terser-webpack-plugin-5.3.9.tgz) = 66e5eca84d3b11c8204d64235d48fe028b7f38c703d1b30a1a017addfed4c5872ee7f009179dda2292b56283f9c51f65eacfc7cb66feb7500cd1b2cd3d1ba1c0 +SHA512 (tiny-glob-0.2.9.tgz) = 83fe79b2c44f5234a187ec647f1f543c35ea85c90712c1ebe1577dcd7e79a1274665cfcc0f49b7b1f7ab3a4c16b69f7c6effa47157c41ed449801549cde96bce +SHA512 (tmp-0.0.33.tgz) = 8d10899688ca9d9dda75db533a3748aa846e3c4281bcd5dc198ab33bacd6657f0a7ca1299c66398df820250dc48cabaef03e1b251af4cbe7182459986c89971b +SHA512 (to-fast-properties-2.0.0.tgz) = fce68a2b4c58aecdc39b1458a8bff20dcf85c455156210e55cc8519afdf3f75e70d87175b67375a26077e788fc55418efe16d1cf20fa637b00eefec64bf71ea2 +SHA512 (to-regex-range-5.0.1.tgz) = eb93fb8b3e97e7212bd5cc1c82f4316db230ed493780ecb974876d678ac3bde2ea86b7493fe2e2fc7c7ab722b43446fed860b29de08c2621aaac00c248d93cb1 +SHA512 (ts-loader-9.4.4.tgz) = 30bba4c431c197c389e43937cbaf48b0a545440ffa330cc4a81821f8e5cc3c1fce0f4d4a42e58f15dd560103fc6b93de4820317e79218ae5aa7e6149cc942df7 +SHA512 (tslib-2.6.1.tgz) = b7484b7e210a7cc528aa11be535a2277b3ef6b86db0cf1d87c936207b0622234648f5a720befb837786e25fa98e9a447e954c1d2bbedcd0c233382baaa97ce8a +SHA512 (typescript-5.1.6.tgz) = cda582a33459e832c4580585ad50f3d47e85557cd449f4f2e4550c5ac42553c626e493fd78ee31913211385090be141feb5cfa3bf1baba0c374a0027bef9be1c +SHA512 (universalify-2.0.0.tgz) = 84066c2aaed8cb5d59bb50c4d0ecd68f0ee79cb6662596130d96721051d9754855f05907e4c09fa14d5731ac57a2fa725b99eae6c70faaad190cff59ca5d38a1 +SHA512 (update-browserslist-db-1.0.11.tgz) = 742c0415fd3fa13f393357c7060e05d23b4bc09aeeb46a074905c287bbb8a36b7576b1be7346bd1659eac30e9750a49f40c3e924146353c778457074f6ab6f68 +SHA512 (uri-js-4.4.1.tgz) = eeb294cb2df7435c9cf7ca50d430262edc17d74f45ed321f5a55b561da3c5a5d628b549e1e279e8741c77cf78bd9f3172bacf4b3c79c2acf5fac2b8b26f9dd06 +SHA512 (watchpack-2.4.0.tgz) = 2dcbe6ecc1924ffe1fba9fa27f22a2da18f2200c1c748e07460b6f4e9214c4146107e445b5487c5ed0cec547dcb550a78558be4108f8f62f753b2bf390997a72 +SHA512 (webpack-5.88.2.tgz) = 266720359d622a3f9a891d0ebd362d590a89c2adfb3dfebcddd63d6d5391c156d4ac384b85d9ff3e53b6b07b051cf923eec1cd405dc9c1a024a78f55f92ab5b5 +SHA512 (webpack-sources-3.2.3.tgz) = fc3c8c10eac380b28a206d1f9afb73fb87545ffdc6868cf0826ea23e9f0a461be7f9e41ff7e43b196c5534c937fae08f59f757602e04c4605c9085dd1447c7d7 +SHA512 (which-2.0.2.tgz) = 04b2374e5d535b73ef97bd25df2ab763ae22f9ac29c17aac181616924a8cb676d782b303fb28fbae15b492e103c7325a6171a3116e6881aa4a34c10a34c8e26c +SHA512 (which-boxed-primitive-1.0.2.tgz) = 6f065dbf400a2e9a65158d8a6515fa4efcae37ba238ebee5c2483a9a5d2ba08cbd61eb92afb252dfbdaa94d5b5f14418ce060af7388671ead6a993a6127f5536 +SHA512 (which-collection-1.0.1.tgz) = 5bcc5e4d4c1a967f22dcafdc6359c65f376755996274171a832345b41743e64c676f84ef18a47b15f4884b7998a70592d50502bad7cacfc218f118dfb41d3ed4 +SHA512 (which-typed-array-1.1.11.tgz) = a9ef54596a64786e72cd9d2d358c4399deefa39f070c1737f66674c565a9a250060037453b391f6a658b0f190e59cbc740a566753c9074b0f834e7e32d64ca7b +SHA512 (wrap-ansi-7.0.0.tgz) = 6151888f691a98b493c70e8db198e80717d2c2c9f4c9c75eb26738a7e436d5ce733ee675a65f8d7f155dc4fb5d1ef98d54e43a5d2606e0052dcadfc58bb0f5e9 +SHA512 (wrap-ansi-8.1.0.tgz) = b22ed0588eb350cab9e9b11216f6a0b66ccc7463ada317d1f927b3d753286df73bb66f9591472493d6d6d9479f7d319551b3a4b31992c34000da0b3c83bd4d09 +SHA512 (wrappy-1.0.2.tgz) = 9784a9fc346c7a8afdc0be84bd5dbe4ee427eb774c90f8d9feca7d5e48214c46d5f4a94f4b5c54b19deeeff2103b8c31b5c141e1b82940f45c477402bdeccf71 +SHA512 (ws-7.5.9.tgz) = 17e3fd26297b52248a4a4a692220fde1d374ec0c2f162c6f2c88f53a0d5197d18632e362a499d5f49ce30fa5eeaa601e8acc06bd498d2e3af9705b97c0d4bbed +SHA512 (yallist-3.1.1.tgz) = 6b850641a58f1f9f663975189c01b67b09dc412e22e05e374efdc9a0033eb365430264bd36c2bc1a90cc2eb0873e4b054fb8772ba4cea14367da96fb4685f1e2 +SHA512 (yallist-4.0.0.tgz) = df074689d672ab93c1d3ce172c44b94e9392440df08d7025216321ba6da445cbffe354a7d9e990d1dc9c416e2e6572de8f02af83a12cbdb76554bf8560472dec +SHA512 (yaml-2.3.1.tgz) = d9e1d67e36a85e04c10b68cd3352d179feb65506b4ba6b6f4620d293a1d2cd6ed1bd2e58b6469b26bc182cb10a58173c6b95363d3482b3e7498d44c97651ec59 diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..54b89ce --- /dev/null +++ b/package-lock.json @@ -0,0 +1,4852 @@ +{ + "name": "tukit", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "tukit", + "hasInstallScript": true, + "license": "LGPL-2.1", + "dependencies": { + "@patternfly/patternfly": "5.0.0-alpha.64", + "@patternfly/react-core": "5.0.0-alpha.115", + "@patternfly/react-icons": "5.0.0-alpha.19", + "@patternfly/react-styles": "5.0.0-alpha.16", + "glob": "^10.3.3", + "react": "18.2.0", + "react-dom": "18.2.0", + "react-xml-parser": "^1.1.8" + }, + "devDependencies": { + "@babel/preset-typescript": "^7.21.4", + "@types/react": "^18.0.37", + "@types/react-dom": "^18.0.11", + "argparse": "^2.0.1", + "chrome-remote-interface": "^0.32.1", + "esbuild": "^0.18.6", + "esbuild-plugin-copy": "^2.1.1", + "esbuild-plugin-replace": "^1.3.0", + "esbuild-sass-plugin": "^2.10.0", + "gettext-parser": "7.0.1", + "htmlparser": "^1.7.7", + "jed": "^1.1.1", + "patch-package": "^7.0.2", + "qunit": "^2.9.3", + "rome": "^12.0.0", + "sass": "^1.61.0", + "sizzle": "^2.3.3", + "ts-loader": "^9.4.2", + "typescript": "^5.0.4" + }, + "peerDependencies": { + "date-fns": "^2.30.0", + "deep-equal": "^2.2.2" + } + }, + "node_modules/@ampproject/remapping": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz", + "integrity": "sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==", + "dev": true, + "peer": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.23.5.tgz", + "integrity": "sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA==", + "dev": true, + "dependencies": { + "@babel/highlight": "^7.23.4", + "chalk": "^2.4.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.22.9.tgz", + "integrity": "sha512-5UamI7xkUcJ3i9qVDS+KFDEK8/7oJ55/sJMB1Ge7IEapr7KfdfV/HErR+koZwOfd+SgtFKOKRhRakdg++DcJpQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.9.tgz", + "integrity": "sha512-G2EgeufBcYw27U4hhoIwFcgc1XU7TlXJ3mv04oOv1WCuo900U/anZSPzEqNjwdjgffkk2Gs0AN0dW1CKVLcG7w==", + "dev": true, + "peer": true, + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.22.5", + "@babel/generator": "^7.22.9", + "@babel/helper-compilation-targets": "^7.22.9", + "@babel/helper-module-transforms": "^7.22.9", + "@babel/helpers": "^7.22.6", + "@babel/parser": "^7.22.7", + "@babel/template": "^7.22.5", + "@babel/traverse": "^7.22.8", + "@babel/types": "^7.22.5", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.2", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/generator": { + "version": "7.23.6", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.6.tgz", + "integrity": "sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/types": "^7.23.6", + "@jridgewell/gen-mapping": "^0.3.2", + "@jridgewell/trace-mapping": "^0.3.17", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-annotate-as-pure": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.22.5.tgz", + "integrity": "sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.9.tgz", + "integrity": "sha512-7qYrNM6HjpnPHJbopxmb8hSPoZ0gsX8IvUS32JGVoy+pU9e5N0nLr1VjJoR6kA4d9dmGLxNYOjeB8sUDal2WMw==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/compat-data": "^7.22.9", + "@babel/helper-validator-option": "^7.22.5", + "browserslist": "^4.21.9", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-create-class-features-plugin": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.9.tgz", + "integrity": "sha512-Pwyi89uO4YrGKxL/eNJ8lfEH55DnRloGPOseaA8NFNL6jAUnn+KccaISiFazCj5IolPPDjGSdzQzXVzODVRqUQ==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-function-name": "^7.22.5", + "@babel/helper-member-expression-to-functions": "^7.22.5", + "@babel/helper-optimise-call-expression": "^7.22.5", + "@babel/helper-replace-supers": "^7.22.9", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-environment-visitor": { + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz", + "integrity": "sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-function-name": { + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz", + "integrity": "sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==", + "dev": true, + "dependencies": { + "@babel/template": "^7.22.15", + "@babel/types": "^7.23.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-hoist-variables": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz", + "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.22.5.tgz", + "integrity": "sha512-aBiH1NKMG0H2cGZqspNvsaBe6wNGjbJjuLy29aU+eDZjSbbN53BaxlpB02xm9v34pLTZ1nIQPFYn2qMZoa5BQQ==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.5.tgz", + "integrity": "sha512-8Dl6+HD/cKifutF5qGd/8ZJi84QeAKh+CEe1sBzz8UayBBGg1dAIJrdHOcOM5b2MpzWL2yuotJTtGjETq0qjXg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.22.9.tgz", + "integrity": "sha512-t+WA2Xn5K+rTeGtC8jCsdAH52bjggG5TKRuRrAGNM/mjIbO4GxvlLMFOEz9wXY5I2XQ60PMFsAG2WIcG82dQMQ==", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-module-imports": "^7.22.5", + "@babel/helper-simple-access": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "@babel/helper-validator-identifier": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-optimise-call-expression": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.22.5.tgz", + "integrity": "sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz", + "integrity": "sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-replace-supers": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.22.9.tgz", + "integrity": "sha512-LJIKvvpgPOPUThdYqcX6IXRuIcTkcAub0IaDRGCZH0p5GPUp7PhRU9QVgFcDDd51BaPkk77ZjqFwh6DZTAEmGg==", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-member-expression-to-functions": "^7.22.5", + "@babel/helper-optimise-call-expression": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-simple-access": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz", + "integrity": "sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.22.5.tgz", + "integrity": "sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-split-export-declaration": { + "version": "7.22.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz", + "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==", + "dev": true, + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.23.4", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.23.4.tgz", + "integrity": "sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz", + "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.22.5.tgz", + "integrity": "sha512-R3oB6xlIVKUnxNUxbmgq7pKjxpru24zlimpE8WK47fACIlM0II/Hm1RS8IaOI7NgCr6LNS+jl5l75m20npAziw==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.22.6", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.22.6.tgz", + "integrity": "sha512-YjDs6y/fVOYFV8hAf1rxd1QvR9wJe1pDBZ2AREKq/SDayfPzgk0PBnVuTCE5X1acEpMMNOVUqoe+OwiZGJ+OaA==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/template": "^7.22.5", + "@babel/traverse": "^7.22.6", + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight": { + "version": "7.23.4", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.23.4.tgz", + "integrity": "sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.22.20", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.23.6", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.6.tgz", + "integrity": "sha512-Z2uID7YJ7oNvAI20O9X0bblw7Qqs8Q2hFy0R9tAfnfLkp5MW0UH9eUvnDSnFwKZ0AvgS1ucqR4KzvVHgnke1VQ==", + "dev": true, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-syntax-jsx": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.22.5.tgz", + "integrity": "sha512-gvyP4hZrgrs/wWMaocvxZ44Hw0b3W8Pe+cMxc8V1ULQ07oh8VNbIRaoD1LRZVTvD+0nieDKjfgKg89sD7rrKrg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-typescript": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.22.5.tgz", + "integrity": "sha512-1mS2o03i7t1c6VzH6fdQ3OA8tcEIxwG18zIPRp+UY1Ihv6W+XZzBCVxExF9upussPXJ0xE9XRHwMoNs1ep/nRQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-commonjs": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.22.5.tgz", + "integrity": "sha512-B4pzOXj+ONRmuaQTg05b3y/4DuFz3WcCNAXPLb2Q0GT0TrGKGxNKV4jwsXts+StaM0LQczZbOpj8o1DLPDJIiA==", + "dev": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-simple-access": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-typescript": { + "version": "7.22.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.22.9.tgz", + "integrity": "sha512-BnVR1CpKiuD0iobHPaM1iLvcwPYN2uVFAqoLVSpEDKWuOikoCv5HbKLxclhKYUXlWkX86DoZGtqI4XhbOsyrMg==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-create-class-features-plugin": "^7.22.9", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-typescript": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-typescript": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.22.5.tgz", + "integrity": "sha512-YbPaal9LxztSGhmndR46FmAbkJ/1fAsw293tSU+I5E5h+cnJ3d4GTwyUgGYmOXJYdGA+uNePle4qbaRzj2NISQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-validator-option": "^7.22.5", + "@babel/plugin-syntax-jsx": "^7.22.5", + "@babel/plugin-transform-modules-commonjs": "^7.22.5", + "@babel/plugin-transform-typescript": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/runtime": { + "version": "7.22.6", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.22.6.tgz", + "integrity": "sha512-wDb5pWm4WDdF6LFUde3Jl8WzPA+3ZbxYqkC6xAXuD3irdEHN1k0NfTRrJD8ZD378SJ61miMLCqIOXYhd8x+AJQ==", + "peer": true, + "dependencies": { + "regenerator-runtime": "^0.13.11" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.15.tgz", + "integrity": "sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.22.13", + "@babel/parser": "^7.22.15", + "@babel/types": "^7.22.15" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.23.7", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.7.tgz", + "integrity": "sha512-tY3mM8rH9jM0YHFGyfC0/xf+SB5eKUu7HPj7/k3fpi9dAlsMc5YbQvDi0Sh2QTPXqMhyaAtzAr807TIyfQrmyg==", + "dev": true, + "peer": true, + "dependencies": { + "@babel/code-frame": "^7.23.5", + "@babel/generator": "^7.23.6", + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-function-name": "^7.23.0", + "@babel/helper-hoist-variables": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "@babel/parser": "^7.23.6", + "@babel/types": "^7.23.6", + "debug": "^4.3.1", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types": { + "version": "7.23.6", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.6.tgz", + "integrity": "sha512-+uarb83brBzPKN38NX1MkB6vb6+mwvR6amUulqAE7ccQw1pEl+bCia9TbdG1lsnFP7lZySvUn37CHyXQdfTwzg==", + "dev": true, + "dependencies": { + "@babel/helper-string-parser": "^7.23.4", + "@babel/helper-validator-identifier": "^7.22.20", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.17.tgz", + "integrity": "sha512-wHsmJG/dnL3OkpAcwbgoBTTMHVi4Uyou3F5mf58ZtmUyIKfcdA7TROav/6tCzET4A3QW2Q2FC+eFneMU+iyOxg==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.18.17.tgz", + "integrity": "sha512-9np+YYdNDed5+Jgr1TdWBsozZ85U1Oa3xW0c7TWqH0y2aGghXtZsuT8nYRbzOMcl0bXZXjOGbksoTtVOlWrRZg==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.18.17.tgz", + "integrity": "sha512-O+FeWB/+xya0aLg23hHEM2E3hbfwZzjqumKMSIqcHbNvDa+dza2D0yLuymRBQQnC34CWrsJUXyH2MG5VnLd6uw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.18.17.tgz", + "integrity": "sha512-M9uJ9VSB1oli2BE/dJs3zVr9kcCBBsE883prage1NWz6pBS++1oNn/7soPNS3+1DGj0FrkSvnED4Bmlu1VAE9g==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.18.17.tgz", + "integrity": "sha512-XDre+J5YeIJDMfp3n0279DFNrGCXlxOuGsWIkRb1NThMZ0BsrWXoTg23Jer7fEXQ9Ye5QjrvXpxnhzl3bHtk0g==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.17.tgz", + "integrity": "sha512-cjTzGa3QlNfERa0+ptykyxs5A6FEUQQF0MuilYXYBGdBxD3vxJcKnzDlhDCa1VAJCmAxed6mYhA2KaJIbtiNuQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.18.17.tgz", + "integrity": "sha512-sOxEvR8d7V7Kw8QqzxWc7bFfnWnGdaFBut1dRUYtu+EIRXefBc/eIsiUiShnW0hM3FmQ5Zf27suDuHsKgZ5QrA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.18.17.tgz", + "integrity": "sha512-2d3Lw6wkwgSLC2fIvXKoMNGVaeY8qdN0IC3rfuVxJp89CRfA3e3VqWifGDfuakPmp90+ZirmTfye1n4ncjv2lg==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.18.17.tgz", + "integrity": "sha512-c9w3tE7qA3CYWjT+M3BMbwMt+0JYOp3vCMKgVBrCl1nwjAlOMYzEo+gG7QaZ9AtqZFj5MbUc885wuBBmu6aADQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.18.17.tgz", + "integrity": "sha512-1DS9F966pn5pPnqXYz16dQqWIB0dmDfAQZd6jSSpiT9eX1NzKh07J6VKR3AoXXXEk6CqZMojiVDSZi1SlmKVdg==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.18.17.tgz", + "integrity": "sha512-EvLsxCk6ZF0fpCB6w6eOI2Fc8KW5N6sHlIovNe8uOFObL2O+Mr0bflPHyHwLT6rwMg9r77WOAWb2FqCQrVnwFg==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.18.17.tgz", + "integrity": "sha512-e0bIdHA5p6l+lwqTE36NAW5hHtw2tNRmHlGBygZC14QObsA3bD4C6sXLJjvnDIjSKhW1/0S3eDy+QmX/uZWEYQ==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.18.17.tgz", + "integrity": "sha512-BAAilJ0M5O2uMxHYGjFKn4nJKF6fNCdP1E0o5t5fvMYYzeIqy2JdAP88Az5LHt9qBoUa4tDaRpfWt21ep5/WqQ==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.18.17.tgz", + "integrity": "sha512-Wh/HW2MPnC3b8BqRSIme/9Zhab36PPH+3zam5pqGRH4pE+4xTrVLx2+XdGp6fVS3L2x+DrsIcsbMleex8fbE6g==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.18.17.tgz", + "integrity": "sha512-j/34jAl3ul3PNcK3pfI0NSlBANduT2UO5kZ7FCaK33XFv3chDhICLY8wJJWIhiQ+YNdQ9dxqQctRg2bvrMlYgg==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.18.17.tgz", + "integrity": "sha512-QM50vJ/y+8I60qEmFxMoxIx4de03pGo2HwxdBeFd4nMh364X6TIBZ6VQ5UQmPbQWUVWHWws5MmJXlHAXvJEmpQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.18.17.tgz", + "integrity": "sha512-/jGlhWR7Sj9JPZHzXyyMZ1RFMkNPjC6QIAan0sDOtIo2TYk3tZn5UDrkE0XgsTQCxWTTOcMPf9p6Rh2hXtl5TQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.18.17.tgz", + "integrity": "sha512-rSEeYaGgyGGf4qZM2NonMhMOP/5EHp4u9ehFiBrg7stH6BYEEjlkVREuDEcQ0LfIl53OXLxNbfuIj7mr5m29TA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.18.17.tgz", + "integrity": "sha512-Y7ZBbkLqlSgn4+zot4KUNYst0bFoO68tRgI6mY2FIM+b7ZbyNVtNbDP5y8qlu4/knZZ73fgJDlXID+ohY5zt5g==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.18.17.tgz", + "integrity": "sha512-bwPmTJsEQcbZk26oYpc4c/8PvTY3J5/QK8jM19DVlEsAB41M39aWovWoHtNm78sd6ip6prilxeHosPADXtEJFw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.18.17.tgz", + "integrity": "sha512-H/XaPtPKli2MhW+3CQueo6Ni3Avggi6hP/YvgkEe1aSaxw+AeO8MFjq8DlgfTd9Iz4Yih3QCZI6YLMoyccnPRg==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.18.17.tgz", + "integrity": "sha512-fGEb8f2BSA3CW7riJVurug65ACLuQAzKq0SSqkY2b2yHHH0MzDfbLyKIGzHwOI/gkHcxM/leuSW6D5w/LMNitA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "dependencies": { + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", + "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", + "dev": true, + "peer": true, + "dependencies": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", + "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", + "dev": true, + "peer": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "dev": true, + "peer": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/source-map": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.5.tgz", + "integrity": "sha512-UTYAUj/wviwdsMfzoSJspJxbkH5o1snzwX0//0ENX1u/55kkZZkcTZP6u9bwKGkv+dkk9at4m1Cpt0uY80kcpQ==", + "dev": true, + "peer": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/trace-mapping": "^0.3.9" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", + "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", + "dev": true, + "peer": true + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.18", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz", + "integrity": "sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==", + "dev": true, + "peer": true, + "dependencies": { + "@jridgewell/resolve-uri": "3.1.0", + "@jridgewell/sourcemap-codec": "1.4.14" + } + }, + "node_modules/@jridgewell/trace-mapping/node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", + "dev": true, + "peer": true + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@patternfly/patternfly": { + "version": "5.0.0-alpha.64", + "resolved": "https://registry.npmjs.org/@patternfly/patternfly/-/patternfly-5.0.0-alpha.64.tgz", + "integrity": "sha512-VJOCpS/WyhjkKqoaCo3usQxoXAj90p81NDHDE3/4/xTUYb53xNNXDJ1YwkPkG0RDvs6DaS9U/hEmu1AbCa9VEw==" + }, + "node_modules/@patternfly/react-core": { + "version": "5.0.0-alpha.115", + "resolved": "https://registry.npmjs.org/@patternfly/react-core/-/react-core-5.0.0-alpha.115.tgz", + "integrity": "sha512-hkpu7KbUeMGukuF34QxOuTHUd5EnVuhH5VZ0S9IaOrgRiXnK/xZsf5YQPj/2TL4lx8QOPiOOzDzvxLgpNSYaBQ==", + "dependencies": { + "@patternfly/react-icons": "^5.0.0-alpha.19", + "@patternfly/react-styles": "^5.0.0-alpha.16", + "@patternfly/react-tokens": "^5.0.0-alpha.14", + "focus-trap": "7.4.2", + "react-dropzone": "^14.2.3", + "tslib": "^2.5.0" + }, + "peerDependencies": { + "react": "^17 || ^18", + "react-dom": "^17 || ^18" + } + }, + "node_modules/@patternfly/react-icons": { + "version": "5.0.0-alpha.19", + "resolved": "https://registry.npmjs.org/@patternfly/react-icons/-/react-icons-5.0.0-alpha.19.tgz", + "integrity": "sha512-jyVSK6f9ueIO+pI2K2njI/4qdQR9WK953IUJtQ6PtNhLHKsAHOnqwHjBUrqxWOBZ+ty5MpqHPoB9Yd34i8vcxg==", + "peerDependencies": { + "react": "^17 || ^18", + "react-dom": "^17 || ^18" + } + }, + "node_modules/@patternfly/react-styles": { + "version": "5.0.0-alpha.16", + "resolved": "https://registry.npmjs.org/@patternfly/react-styles/-/react-styles-5.0.0-alpha.16.tgz", + "integrity": "sha512-RxU8sSKY0tM40xZwk+BR5vWotP+LZOH2vqdNFEIT7a1+1Kr9qSm5ktq34gnzK0nyWUaH08qL9da4HVo3/O+R4A==" + }, + "node_modules/@patternfly/react-tokens": { + "version": "5.0.0-prerelease.9", + "resolved": "https://registry.npmjs.org/@patternfly/react-tokens/-/react-tokens-5.0.0-prerelease.9.tgz", + "integrity": "sha512-x3kJolPS95LJSiS2n3T9KL6MNjtuM9qKKzbqK1nkiftAytubcoQ9O7ikEjDYiILHpupo5lG5H9Cr50kAwu1rsA==" + }, + "node_modules/@pkgjs/parseargs": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", + "optional": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/@rometools/cli-darwin-arm64": { + "version": "12.1.3", + "resolved": "https://registry.npmjs.org/@rometools/cli-darwin-arm64/-/cli-darwin-arm64-12.1.3.tgz", + "integrity": "sha512-AmFTUDYjBuEGQp/Wwps+2cqUr+qhR7gyXAUnkL5psCuNCz3807TrUq/ecOoct5MIavGJTH6R4aaSL6+f+VlBEg==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rometools/cli-darwin-x64": { + "version": "12.1.3", + "resolved": "https://registry.npmjs.org/@rometools/cli-darwin-x64/-/cli-darwin-x64-12.1.3.tgz", + "integrity": "sha512-k8MbWna8q4LRlb005N2X+JS1UQ+s3ZLBBvwk4fP8TBxlAJXUz17jLLu/Fi+7DTTEmMhM84TWj4FDKW+rNar28g==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rometools/cli-linux-arm64": { + "version": "12.1.3", + "resolved": "https://registry.npmjs.org/@rometools/cli-linux-arm64/-/cli-linux-arm64-12.1.3.tgz", + "integrity": "sha512-X/uLhJ2/FNA3nu5TiyeNPqiD3OZoFfNfRvw6a3ut0jEREPvEn72NI7WPijH/gxSz55znfQ7UQ6iM4DZumUknJg==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rometools/cli-linux-x64": { + "version": "12.1.3", + "resolved": "https://registry.npmjs.org/@rometools/cli-linux-x64/-/cli-linux-x64-12.1.3.tgz", + "integrity": "sha512-csP17q1eWiUXx9z6Jr/JJPibkplyKIwiWPYNzvPCGE8pHlKhwZj3YHRuu7Dm/4EOqx0XFIuqqWZUYm9bkIC8xg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rometools/cli-win32-arm64": { + "version": "12.1.3", + "resolved": "https://registry.npmjs.org/@rometools/cli-win32-arm64/-/cli-win32-arm64-12.1.3.tgz", + "integrity": "sha512-RymHWeod57EBOJY4P636CgUwYA6BQdkQjh56XKk4pLEHO6X1bFyMet2XL7KlHw5qOTalzuzf5jJqUs+vf3jdXQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rometools/cli-win32-x64": { + "version": "12.1.3", + "resolved": "https://registry.npmjs.org/@rometools/cli-win32-x64/-/cli-win32-x64-12.1.3.tgz", + "integrity": "sha512-yHSKYidqJMV9nADqg78GYA+cZ0hS1twANAjiFibQdXj9aGzD+s/IzIFEIi/U/OBLvWYg/SCw0QVozi2vTlKFDQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@types/eslint": { + "version": "8.44.1", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.44.1.tgz", + "integrity": "sha512-XpNDc4Z5Tb4x+SW1MriMVeIsMoONHCkWFMkR/aPJbzEsxqHy+4Glu/BqTdPrApfDeMaXbtNh6bseNgl5KaWrSg==", + "dev": true, + "peer": true, + "dependencies": { + "@types/estree": "*", + "@types/json-schema": "*" + } + }, + "node_modules/@types/eslint-scope": { + "version": "3.7.4", + "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz", + "integrity": "sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==", + "dev": true, + "peer": true, + "dependencies": { + "@types/eslint": "*", + "@types/estree": "*" + } + }, + "node_modules/@types/estree": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.1.tgz", + "integrity": "sha512-LG4opVs2ANWZ1TJoKc937iMmNstM/d0ae1vNbnBvBhqCSezgVUOzcLCqbI5elV8Vy6WKwKjaqR+zO9VKirBBCA==", + "dev": true, + "peer": true + }, + "node_modules/@types/json-schema": { + "version": "7.0.12", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.12.tgz", + "integrity": "sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA==", + "dev": true, + "peer": true + }, + "node_modules/@types/node": { + "version": "20.4.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.4.5.tgz", + "integrity": "sha512-rt40Nk13II9JwQBdeYqmbn2Q6IVTA5uPhvSO+JVqdXw/6/4glI6oR9ezty/A9Hg5u7JH4OmYmuQ+XvjKm0Datg==", + "dev": true, + "peer": true + }, + "node_modules/@types/prop-types": { + "version": "15.7.5", + "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz", + "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==", + "dev": true + }, + "node_modules/@types/react": { + "version": "18.2.17", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.17.tgz", + "integrity": "sha512-u+e7OlgPPh+aryjOm5UJMX32OvB2E3QASOAqVMY6Ahs90djagxwv2ya0IctglNbNTexC12qCSMZG47KPfy1hAA==", + "dev": true, + "dependencies": { + "@types/prop-types": "*", + "@types/scheduler": "*", + "csstype": "^3.0.2" + } + }, + "node_modules/@types/react-dom": { + "version": "18.2.7", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.2.7.tgz", + "integrity": "sha512-GRaAEriuT4zp9N4p1i8BDBYmEyfo+xQ3yHjJU4eiK5NDa1RmUZG+unZABUTK4/Ox/M+GaHwb6Ow8rUITrtjszA==", + "dev": true, + "dependencies": { + "@types/react": "*" + } + }, + "node_modules/@types/scheduler": { + "version": "0.16.3", + "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.3.tgz", + "integrity": "sha512-5cJ8CB4yAx7BH1oMvdU0Jh9lrEXyPkar6F9G/ERswkCuvP4KQZfZkSjcMbAICCpQTN4OuZn8tz0HiKv9TGZgrQ==", + "dev": true + }, + "node_modules/@webassemblyjs/ast": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.6.tgz", + "integrity": "sha512-IN1xI7PwOvLPgjcf180gC1bqn3q/QaOCwYUahIOhbYUu8KA/3tw2RT/T0Gidi1l7Hhj5D/INhJxiICObqpMu4Q==", + "dev": true, + "peer": true, + "dependencies": { + "@webassemblyjs/helper-numbers": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6" + } + }, + "node_modules/@webassemblyjs/floating-point-hex-parser": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.6.tgz", + "integrity": "sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==", + "dev": true, + "peer": true + }, + "node_modules/@webassemblyjs/helper-api-error": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz", + "integrity": "sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==", + "dev": true, + "peer": true + }, + "node_modules/@webassemblyjs/helper-buffer": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.6.tgz", + "integrity": "sha512-z3nFzdcp1mb8nEOFFk8DrYLpHvhKC3grJD2ardfKOzmbmJvEf/tPIqCY+sNcwZIY8ZD7IkB2l7/pqhUhqm7hLA==", + "dev": true, + "peer": true + }, + "node_modules/@webassemblyjs/helper-numbers": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz", + "integrity": "sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==", + "dev": true, + "peer": true, + "dependencies": { + "@webassemblyjs/floating-point-hex-parser": "1.11.6", + "@webassemblyjs/helper-api-error": "1.11.6", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/helper-wasm-bytecode": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz", + "integrity": "sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==", + "dev": true, + "peer": true + }, + "node_modules/@webassemblyjs/helper-wasm-section": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.6.tgz", + "integrity": "sha512-LPpZbSOwTpEC2cgn4hTydySy1Ke+XEu+ETXuoyvuyezHO3Kjdu90KK95Sh9xTbmjrCsUwvWwCOQQNta37VrS9g==", + "dev": true, + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.11.6", + "@webassemblyjs/helper-buffer": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/wasm-gen": "1.11.6" + } + }, + "node_modules/@webassemblyjs/ieee754": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz", + "integrity": "sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==", + "dev": true, + "peer": true, + "dependencies": { + "@xtuc/ieee754": "^1.2.0" + } + }, + "node_modules/@webassemblyjs/leb128": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.6.tgz", + "integrity": "sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==", + "dev": true, + "peer": true, + "dependencies": { + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/utf8": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.6.tgz", + "integrity": "sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==", + "dev": true, + "peer": true + }, + "node_modules/@webassemblyjs/wasm-edit": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.6.tgz", + "integrity": "sha512-Ybn2I6fnfIGuCR+Faaz7YcvtBKxvoLV3Lebn1tM4o/IAJzmi9AWYIPWpyBfU8cC+JxAO57bk4+zdsTjJR+VTOw==", + "dev": true, + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.11.6", + "@webassemblyjs/helper-buffer": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/helper-wasm-section": "1.11.6", + "@webassemblyjs/wasm-gen": "1.11.6", + "@webassemblyjs/wasm-opt": "1.11.6", + "@webassemblyjs/wasm-parser": "1.11.6", + "@webassemblyjs/wast-printer": "1.11.6" + } + }, + "node_modules/@webassemblyjs/wasm-gen": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.6.tgz", + "integrity": "sha512-3XOqkZP/y6B4F0PBAXvI1/bky7GryoogUtfwExeP/v7Nzwo1QLcq5oQmpKlftZLbT+ERUOAZVQjuNVak6UXjPA==", + "dev": true, + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/ieee754": "1.11.6", + "@webassemblyjs/leb128": "1.11.6", + "@webassemblyjs/utf8": "1.11.6" + } + }, + "node_modules/@webassemblyjs/wasm-opt": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.6.tgz", + "integrity": "sha512-cOrKuLRE7PCe6AsOVl7WasYf3wbSo4CeOk6PkrjS7g57MFfVUF9u6ysQBBODX0LdgSvQqRiGz3CXvIDKcPNy4g==", + "dev": true, + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.11.6", + "@webassemblyjs/helper-buffer": "1.11.6", + "@webassemblyjs/wasm-gen": "1.11.6", + "@webassemblyjs/wasm-parser": "1.11.6" + } + }, + "node_modules/@webassemblyjs/wasm-parser": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.6.tgz", + "integrity": "sha512-6ZwPeGzMJM3Dqp3hCsLgESxBGtT/OeCvCZ4TA1JUPYgmhAx38tTPR9JaKy0S5H3evQpO/h2uWs2j6Yc/fjkpTQ==", + "dev": true, + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.11.6", + "@webassemblyjs/helper-api-error": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/ieee754": "1.11.6", + "@webassemblyjs/leb128": "1.11.6", + "@webassemblyjs/utf8": "1.11.6" + } + }, + "node_modules/@webassemblyjs/wast-printer": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.6.tgz", + "integrity": "sha512-JM7AhRcE+yW2GWYaKeHL5vt4xqee5N2WcezptmgyhNS+ScggqcT1OtXykhAb13Sn5Yas0j2uv9tHgrjwvzAP4A==", + "dev": true, + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.11.6", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", + "dev": true, + "peer": true + }, + "node_modules/@xtuc/long": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", + "dev": true, + "peer": true + }, + "node_modules/@yarnpkg/lockfile": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz", + "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==", + "dev": true + }, + "node_modules/abort-controller": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", + "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", + "dev": true, + "dependencies": { + "event-target-shim": "^5.0.0" + }, + "engines": { + "node": ">=6.5" + } + }, + "node_modules/acorn": { + "version": "8.10.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz", + "integrity": "sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==", + "dev": true, + "peer": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-import-assertions": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.9.0.tgz", + "integrity": "sha512-cmMwop9x+8KFhxvKrKfPYmN6/pKTYYHBqLa0DfvVZcKMJWNyWLnaqND7dx/qn66R7ewM1UX5XMaDVP5wlVTaVA==", + "dev": true, + "peer": true, + "peerDependencies": { + "acorn": "^8" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "peer": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true, + "peer": true, + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, + "node_modules/array-buffer-byte-length": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz", + "integrity": "sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==", + "peer": true, + "dependencies": { + "call-bind": "^1.0.2", + "is-array-buffer": "^3.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/at-least-node": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", + "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", + "dev": true, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/attr-accept": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/attr-accept/-/attr-accept-2.2.2.tgz", + "integrity": "sha512-7prDjvt9HmqiZ0cl5CRjtS84sEyhsHP2coDkaZKRKVfCDo9s7iw7ChVmar78Gu9pC4SoR/28wFu/G5JJhTnqEg==", + "engines": { + "node": ">=4" + } + }, + "node_modules/available-typed-arrays": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", + "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", + "peer": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browserslist": { + "version": "4.21.9", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.9.tgz", + "integrity": "sha512-M0MFoZzbUrRU4KNfCrDLnvyE7gub+peetoTid3TBIqtunaDJyXlwhakT+/VkvSXcfIzFfK/nkCs4nmyTmxdNSg==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "peer": true, + "dependencies": { + "caniuse-lite": "^1.0.30001503", + "electron-to-chromium": "^1.4.431", + "node-releases": "^2.0.12", + "update-browserslist-db": "^1.0.11" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true, + "peer": true + }, + "node_modules/call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "peer": true, + "dependencies": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001517", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001517.tgz", + "integrity": "sha512-Vdhm5S11DaFVLlyiKu4hiUTkpZu+y1KA/rZZqVQfOD5YdDT/eQKlkt7NaE0WGOFgX32diqt9MiP9CAiFeRklaA==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "peer": true + }, + "node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/chrome-remote-interface": { + "version": "0.32.2", + "resolved": "https://registry.npmjs.org/chrome-remote-interface/-/chrome-remote-interface-0.32.2.tgz", + "integrity": "sha512-3UbFKtEmqApehPQnqdblcggx7KveQphEMKQmdJZsOguE9ylw2N2/9Z7arO7xS55+DBJ/hyP8RrayLt4MMdJvQg==", + "dev": true, + "dependencies": { + "commander": "2.11.x", + "ws": "^7.2.0" + }, + "bin": { + "chrome-remote-interface": "bin/client.js" + } + }, + "node_modules/chrome-trace-event": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", + "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", + "dev": true, + "peer": true, + "engines": { + "node": ">=6.0" + } + }, + "node_modules/ci-info": { + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.8.0.tgz", + "integrity": "sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], + "engines": { + "node": ">=8" + } + }, + "node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "node_modules/commander": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.11.0.tgz", + "integrity": "sha512-b0553uYA5YAEGgyYIGYROzKQ7X5RAqedkfjiZxwi0kL1g3bOaBNNZfYkzt/CL0umgD5wc9Jec2FbB98CjkMRvQ==", + "dev": true + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true + }, + "node_modules/content-type": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", + "dev": true, + "peer": true + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/csstype": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz", + "integrity": "sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==", + "dev": true + }, + "node_modules/date-fns": { + "version": "2.30.0", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-2.30.0.tgz", + "integrity": "sha512-fnULvOpxnC5/Vg3NCiWelDsLiUc9bRwAPs/+LfTLNvetFCtCTN+yQz15C/fs4AwX1R9K5GLtLfn8QW+dWisaAw==", + "peer": true, + "dependencies": { + "@babel/runtime": "^7.21.0" + }, + "engines": { + "node": ">=0.11" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/date-fns" + } + }, + "node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, + "peer": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/deep-equal": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-2.2.2.tgz", + "integrity": "sha512-xjVyBf0w5vH0I42jdAZzOKVldmPgSulmiyPRywoyq7HXC9qdgo17kxJE+rdnif5Tz6+pIrpJI8dCpMNLIGkUiA==", + "peer": true, + "dependencies": { + "array-buffer-byte-length": "^1.0.0", + "call-bind": "^1.0.2", + "es-get-iterator": "^1.1.3", + "get-intrinsic": "^1.2.1", + "is-arguments": "^1.1.1", + "is-array-buffer": "^3.0.2", + "is-date-object": "^1.0.5", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", + "isarray": "^2.0.5", + "object-is": "^1.1.5", + "object-keys": "^1.1.1", + "object.assign": "^4.1.4", + "regexp.prototype.flags": "^1.5.0", + "side-channel": "^1.0.4", + "which-boxed-primitive": "^1.0.2", + "which-collection": "^1.0.1", + "which-typed-array": "^1.1.9" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/define-properties": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.0.tgz", + "integrity": "sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==", + "peer": true, + "dependencies": { + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dev": true, + "dependencies": { + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==" + }, + "node_modules/electron-to-chromium": { + "version": "1.4.473", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.473.tgz", + "integrity": "sha512-aVfC8+440vGfl06l8HKKn8/PD5jRfSnLkTTD65EFvU46igbpQRri1gxSzW9/+TeUlwYzrXk1sw867T96zlyECA==", + "dev": true, + "peer": true + }, + "node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==" + }, + "node_modules/encoding": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", + "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", + "dev": true, + "dependencies": { + "iconv-lite": "^0.6.2" + } + }, + "node_modules/enhanced-resolve": { + "version": "5.15.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.15.0.tgz", + "integrity": "sha512-LXYT42KJ7lpIKECr2mAXIaMldcNCh/7E0KBKOu4KSfkHmP+mZmSs+8V5gBAqisWBy0OO4W5Oyys0GO1Y8KtdKg==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/es-get-iterator": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.3.tgz", + "integrity": "sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==", + "peer": true, + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.3", + "has-symbols": "^1.0.3", + "is-arguments": "^1.1.1", + "is-map": "^2.0.2", + "is-set": "^2.0.2", + "is-string": "^1.0.7", + "isarray": "^2.0.5", + "stop-iteration-iterator": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-module-lexer": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.3.0.tgz", + "integrity": "sha512-vZK7T0N2CBmBOixhmjdqx2gWVbFZ4DXZ/NyRMZVlJXPa7CyFS+/a4QQsDGDQy9ZfEzxFuNEsMLeQJnKP2p5/JA==", + "dev": true, + "peer": true + }, + "node_modules/esbuild": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.18.17.tgz", + "integrity": "sha512-1GJtYnUxsJreHYA0Y+iQz2UEykonY66HNWOb0yXYZi9/kNrORUEHVg87eQsCtqh59PEJ5YVZJO98JHznMJSWjg==", + "dev": true, + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/android-arm": "0.18.17", + "@esbuild/android-arm64": "0.18.17", + "@esbuild/android-x64": "0.18.17", + "@esbuild/darwin-arm64": "0.18.17", + "@esbuild/darwin-x64": "0.18.17", + "@esbuild/freebsd-arm64": "0.18.17", + "@esbuild/freebsd-x64": "0.18.17", + "@esbuild/linux-arm": "0.18.17", + "@esbuild/linux-arm64": "0.18.17", + "@esbuild/linux-ia32": "0.18.17", + "@esbuild/linux-loong64": "0.18.17", + "@esbuild/linux-mips64el": "0.18.17", + "@esbuild/linux-ppc64": "0.18.17", + "@esbuild/linux-riscv64": "0.18.17", + "@esbuild/linux-s390x": "0.18.17", + "@esbuild/linux-x64": "0.18.17", + "@esbuild/netbsd-x64": "0.18.17", + "@esbuild/openbsd-x64": "0.18.17", + "@esbuild/sunos-x64": "0.18.17", + "@esbuild/win32-arm64": "0.18.17", + "@esbuild/win32-ia32": "0.18.17", + "@esbuild/win32-x64": "0.18.17" + } + }, + "node_modules/esbuild-plugin-copy": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/esbuild-plugin-copy/-/esbuild-plugin-copy-2.1.1.tgz", + "integrity": "sha512-Bk66jpevTcV8KMFzZI1P7MZKZ+uDcrZm2G2egZ2jNIvVnivDpodZI+/KnpL3Jnap0PBdIHU7HwFGB8r+vV5CVw==", + "dev": true, + "dependencies": { + "chalk": "^4.1.2", + "chokidar": "^3.5.3", + "fs-extra": "^10.0.1", + "globby": "^11.0.3" + }, + "peerDependencies": { + "esbuild": ">= 0.14.0" + } + }, + "node_modules/esbuild-plugin-copy/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/esbuild-plugin-copy/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/esbuild-plugin-copy/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/esbuild-plugin-copy/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/esbuild-plugin-copy/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/esbuild-plugin-copy/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/esbuild-plugin-replace": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/esbuild-plugin-replace/-/esbuild-plugin-replace-1.4.0.tgz", + "integrity": "sha512-lP3ZAyzyRa5JXoOd59lJbRKNObtK8pJ/RO7o6vdjwLi71GfbL32NR22ZuS7/cLZkr10/L1lutoLma8E4DLngYg==", + "dev": true, + "dependencies": { + "magic-string": "^0.25.7" + } + }, + "node_modules/esbuild-sass-plugin": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/esbuild-sass-plugin/-/esbuild-sass-plugin-2.10.0.tgz", + "integrity": "sha512-STv849QGT8g77RRFmroSt4VBVKjv+dypKcO4aWz8IP4G5JbRH0KC0+B8ODuzlUNu9R5MbkGcev/62RDP/JcZ2Q==", + "dev": true, + "dependencies": { + "resolve": "^1.22.2", + "sass": "^1.63.0" + }, + "peerDependencies": { + "esbuild": "^0.18.0" + } + }, + "node_modules/escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "dev": true, + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "dev": true, + "peer": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "peer": true, + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esrecurse/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true, + "peer": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/event-target-shim": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", + "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "dev": true, + "engines": { + "node": ">=0.8.x" + } + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true, + "peer": true + }, + "node_modules/fast-glob": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.1.tgz", + "integrity": "sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true, + "peer": true + }, + "node_modules/fastq": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", + "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", + "dev": true, + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/file-selector": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/file-selector/-/file-selector-0.6.0.tgz", + "integrity": "sha512-QlZ5yJC0VxHxQQsQhXvBaC7VRJ2uaxTf+Tfpu4Z/OcVQJVpZO+DGU0rkoVW5ce2SccxugvpBJoMvUs59iILYdw==", + "dependencies": { + "tslib": "^2.4.0" + }, + "engines": { + "node": ">= 12" + } + }, + "node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/find-yarn-workspace-root": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/find-yarn-workspace-root/-/find-yarn-workspace-root-2.0.0.tgz", + "integrity": "sha512-1IMnbjt4KzsQfnhnzNd8wUEgXZ44IzZaZmnLYx7D5FZlaHt2gW20Cri8Q+E/t5tIj4+epTBub+2Zxu/vNILzqQ==", + "dev": true, + "dependencies": { + "micromatch": "^4.0.2" + } + }, + "node_modules/focus-trap": { + "version": "7.4.2", + "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-7.4.2.tgz", + "integrity": "sha512-KMjf+H5uDWPkwSQVqE5r/+vOkP5zBWwVBoWPIZxU3gfg+M8IT+Y8s+vXQqZvHEIXyHPKHrSm6m4G4ceF98OZ8w==", + "dependencies": { + "tabbable": "^6.1.2" + } + }, + "node_modules/for-each": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", + "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", + "peer": true, + "dependencies": { + "is-callable": "^1.1.3" + } + }, + "node_modules/foreground-child": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", + "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==", + "dependencies": { + "cross-spawn": "^7.0.0", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true + }, + "node_modules/fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + }, + "node_modules/functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "peer": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true, + "peer": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/get-intrinsic": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.1.tgz", + "integrity": "sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==", + "peer": true, + "dependencies": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gettext-parser": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/gettext-parser/-/gettext-parser-7.0.1.tgz", + "integrity": "sha512-LU+ieGH3L9HmKEArTlX816/iiAlyA0fx/n/QSeQpkAaH/+jxMk/5UtDkAzcVvW+KlY25/U+IE6dnfkJ8ynt8pQ==", + "dev": true, + "dependencies": { + "content-type": "^1.0.5", + "encoding": "^0.1.13", + "readable-stream": "^4.3.0", + "safe-buffer": "^5.2.1" + } + }, + "node_modules/glob": { + "version": "10.3.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.3.tgz", + "integrity": "sha512-92vPiMb/iqpmEgsOoIDvTjc50wf9CCCvMzsi6W0JLPeUKE8TWP1a73PgqSrqy7iAZxaSD1YdzU7QZR5LF51MJw==", + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^2.0.3", + "minimatch": "^9.0.1", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", + "path-scurry": "^1.10.1" + }, + "bin": { + "glob": "dist/cjs/src/bin.js" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/glob-to-regexp": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", + "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", + "dev": true, + "peer": true + }, + "node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/globalyzer": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/globalyzer/-/globalyzer-0.1.0.tgz", + "integrity": "sha512-40oNTM9UfG6aBmuKxk/giHn5nQ8RVz/SS4Ir6zgzOv9/qC3kKZ9v4etGTcJbEl/NyVQH7FGU7d+X1egr57Md2Q==", + "dev": true + }, + "node_modules/globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "dev": true, + "dependencies": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/globrex": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/globrex/-/globrex-0.1.2.tgz", + "integrity": "sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==", + "dev": true + }, + "node_modules/gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "peer": true, + "dependencies": { + "get-intrinsic": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "dev": true + }, + "node_modules/has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dependencies": { + "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/has-bigints": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", + "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", + "peer": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/has-property-descriptors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", + "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", + "peer": true, + "dependencies": { + "get-intrinsic": "^1.1.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", + "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", + "peer": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "peer": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "peer": true, + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/htmlparser": { + "version": "1.7.7", + "resolved": "https://registry.npmjs.org/htmlparser/-/htmlparser-1.7.7.tgz", + "integrity": "sha512-zpK66ifkT0fauyFh2Mulrq4AqGTucxGtOhZ8OjkbSfcCpkqQEI8qRkY0tSQSJNAQ4HUZkgWaU4fK4EH6SVH9PQ==", + "dev": true, + "engines": { + "node": ">=0.1.33" + } + }, + "node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dev": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/ignore": { + "version": "5.2.4", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", + "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/immutable": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.1.tgz", + "integrity": "sha512-lj9cnmB/kVS0QHsJnYKD1uo3o39nrbKxszjnqS9Fr6NB7bZzW45U6WSGBPKXDL/CvDKqDNPA4r3DoDQ8GTxo2A==", + "dev": true + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "dev": true, + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "node_modules/internal-slot": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.5.tgz", + "integrity": "sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==", + "peer": true, + "dependencies": { + "get-intrinsic": "^1.2.0", + "has": "^1.0.3", + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/is-arguments": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", + "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", + "peer": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-array-buffer": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz", + "integrity": "sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==", + "peer": true, + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.2.0", + "is-typed-array": "^1.1.10" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "peer": true, + "dependencies": { + "has-bigints": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-boolean-object": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "peer": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", + "peer": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-core-module": { + "version": "2.12.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.12.1.tgz", + "integrity": "sha512-Q4ZuBAe2FUsKtyQJoQHlvP8OvBERxO3jEmy1I7hcRXcJBGGHFh/aJBswbXuS9sgrDH2QUO8ilkwNPHvHMd8clg==", + "dev": true, + "dependencies": { + "has": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "peer": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", + "dev": true, + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-map": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.2.tgz", + "integrity": "sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==", + "peer": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-number-object": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", + "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", + "peer": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "peer": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-set": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.2.tgz", + "integrity": "sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==", + "peer": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-shared-array-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", + "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", + "peer": true, + "dependencies": { + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-string": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "peer": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-symbol": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "peer": true, + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-typed-array": { + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.12.tgz", + "integrity": "sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg==", + "peer": true, + "dependencies": { + "which-typed-array": "^1.1.11" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakmap": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.1.tgz", + "integrity": "sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==", + "peer": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakset": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.2.tgz", + "integrity": "sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==", + "peer": true, + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dev": true, + "dependencies": { + "is-docker": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "peer": true + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" + }, + "node_modules/jackspeak": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.2.2.tgz", + "integrity": "sha512-mgNtVv4vUuaKA97yxUHoA3+FkuhtxkjdXEWOyB/N76fjy0FjezEt34oy3epBtvCvS+7DyKwqCFWx/oJLV5+kCg==", + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" + } + }, + "node_modules/jed": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/jed/-/jed-1.1.1.tgz", + "integrity": "sha512-z35ZSEcXHxLW4yumw0dF6L464NT36vmx3wxJw8MDpraBcWuNVgUPZgPJKcu1HekNgwlMFNqol7i/IpSbjhqwqA==", + "dev": true + }, + "node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": true, + "peer": true, + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/jest-worker/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + }, + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true, + "peer": true, + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true, + "peer": true + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true, + "peer": true + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, + "peer": true, + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "dev": true, + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/klaw-sync": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/klaw-sync/-/klaw-sync-6.0.0.tgz", + "integrity": "sha512-nIeuVSzdCCs6TDPTqI8w1Yre34sSq7AkZ4B3sfOBbI2CgVSB4Du4aLQijFU2+lhAFCwt9+42Hel6lQNIv6AntQ==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.1.11" + } + }, + "node_modules/loader-runner": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", + "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", + "dev": true, + "peer": true, + "engines": { + "node": ">=6.11.5" + } + }, + "node_modules/loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "dependencies": { + "js-tokens": "^3.0.0 || ^4.0.0" + }, + "bin": { + "loose-envify": "cli.js" + } + }, + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "peer": true, + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/magic-string": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz", + "integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==", + "dev": true, + "dependencies": { + "sourcemap-codec": "^1.4.8" + } + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true, + "peer": true + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/micromatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "dev": true, + "dependencies": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dev": true, + "peer": true, + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/minimatch": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/minipass": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.2.tgz", + "integrity": "sha512-eL79dXrE1q9dBbDCLg7xfn/vl7MS4F1gvJAgjJrQli/jbQWdUttuVawphqpffoIYfRdq78LHx6GP4bU/EQ2ATA==", + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true, + "peer": true + }, + "node_modules/neo-async": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", + "dev": true, + "peer": true + }, + "node_modules/node-releases": { + "version": "2.0.13", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz", + "integrity": "sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==", + "dev": true, + "peer": true + }, + "node_modules/node-watch": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/node-watch/-/node-watch-0.7.3.tgz", + "integrity": "sha512-3l4E8uMPY1HdMMryPRUAl+oIHtXtyiTlIiESNSVSNxcPfzAFzeTbXFQkZfAwBbo0B1qMSG8nUABx+Gd+YrbKrQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-inspect": { + "version": "1.12.3", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz", + "integrity": "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==", + "peer": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-is": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz", + "integrity": "sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==", + "peer": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "peer": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.assign": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", + "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", + "peer": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "has-symbols": "^1.0.3", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/open": { + "version": "7.4.2", + "resolved": "https://registry.npmjs.org/open/-/open-7.4.2.tgz", + "integrity": "sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==", + "dev": true, + "dependencies": { + "is-docker": "^2.0.0", + "is-wsl": "^2.1.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/patch-package": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/patch-package/-/patch-package-7.0.2.tgz", + "integrity": "sha512-PMYfL8LXxGIRmxXLqlEaBxzKPu7/SdP13ld6GSfAUJUZRmBDPp8chZs0dpzaAFn9TSPnFiMwkC6PJt6pBiAl8Q==", + "dev": true, + "dependencies": { + "@yarnpkg/lockfile": "^1.1.0", + "chalk": "^4.1.2", + "ci-info": "^3.7.0", + "cross-spawn": "^7.0.3", + "find-yarn-workspace-root": "^2.0.0", + "fs-extra": "^9.0.0", + "klaw-sync": "^6.0.0", + "minimist": "^1.2.6", + "open": "^7.4.2", + "rimraf": "^2.6.3", + "semver": "^7.5.3", + "slash": "^2.0.0", + "tmp": "^0.0.33", + "yaml": "^2.2.2" + }, + "bin": { + "patch-package": "index.js" + }, + "engines": { + "node": ">=14", + "npm": ">5" + } + }, + "node_modules/patch-package/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/patch-package/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/patch-package/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/patch-package/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/patch-package/node_modules/fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "dev": true, + "dependencies": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/patch-package/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/patch-package/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/patch-package/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/patch-package/node_modules/slash": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", + "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/patch-package/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/patch-package/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true + }, + "node_modules/path-scurry": { + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.10.1.tgz", + "integrity": "sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==", + "dependencies": { + "lru-cache": "^9.1.1 || ^10.0.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/path-scurry/node_modules/lru-cache": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.0.tgz", + "integrity": "sha512-svTf/fzsKHffP42sujkO/Rjs37BCIsQVRCeNYIm9WN8rgT7ffoUnRtZCqU+6BqcSBdv8gwJeTz8knJpgACeQMw==", + "engines": { + "node": "14 || >=16.14" + } + }, + "node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "dev": true, + "peer": true + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", + "dev": true, + "engines": { + "node": ">= 0.6.0" + } + }, + "node_modules/prop-types": { + "version": "15.8.1", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", + "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", + "dependencies": { + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "react-is": "^16.13.1" + } + }, + "node_modules/punycode": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", + "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/qunit": { + "version": "2.19.4", + "resolved": "https://registry.npmjs.org/qunit/-/qunit-2.19.4.tgz", + "integrity": "sha512-aqUzzUeCqlleWYKlpgfdHHw9C6KxkB9H3wNfiBg5yHqQMzy0xw/pbCRHYFkjl8MsP/t8qkTQE+JTYL71azgiew==", + "dev": true, + "dependencies": { + "commander": "7.2.0", + "node-watch": "0.7.3", + "tiny-glob": "0.2.9" + }, + "bin": { + "qunit": "bin/qunit.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/qunit/node_modules/commander": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", + "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dev": true, + "peer": true, + "dependencies": { + "safe-buffer": "^5.1.0" + } + }, + "node_modules/react": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react/-/react-18.2.0.tgz", + "integrity": "sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==", + "dependencies": { + "loose-envify": "^1.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-dom": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz", + "integrity": "sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==", + "dependencies": { + "loose-envify": "^1.1.0", + "scheduler": "^0.23.0" + }, + "peerDependencies": { + "react": "^18.2.0" + } + }, + "node_modules/react-dropzone": { + "version": "14.2.3", + "resolved": "https://registry.npmjs.org/react-dropzone/-/react-dropzone-14.2.3.tgz", + "integrity": "sha512-O3om8I+PkFKbxCukfIR3QAGftYXDZfOE2N1mr/7qebQJHs7U+/RSL/9xomJNpRg9kM5h9soQSdf0Gc7OHF5Fug==", + "dependencies": { + "attr-accept": "^2.2.2", + "file-selector": "^0.6.0", + "prop-types": "^15.8.1" + }, + "engines": { + "node": ">= 10.13" + }, + "peerDependencies": { + "react": ">= 16.8 || 18.0.0" + } + }, + "node_modules/react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" + }, + "node_modules/react-xml-parser": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/react-xml-parser/-/react-xml-parser-1.1.8.tgz", + "integrity": "sha512-yX9k9LNCRzzNnFWoyo9cWEjtor6n6VD0Uh7z1ww5rIP6h5vdhJKEmowsm9RumEJMRdr7akcT4mMBScpsz573qQ==" + }, + "node_modules/readable-stream": { + "version": "4.5.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.5.2.tgz", + "integrity": "sha512-yjavECdqeZ3GLXNgRXgeQEdz9fvDDkNKyHnbHRFtOr7/LcfgBcmct7t/ET+HaCTqfh06OzoAxrkN/IfjJBVe+g==", + "dev": true, + "dependencies": { + "abort-controller": "^3.0.0", + "buffer": "^6.0.3", + "events": "^3.3.0", + "process": "^0.11.10", + "string_decoder": "^1.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/regenerator-runtime": { + "version": "0.13.11", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", + "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", + "peer": true + }, + "node_modules/regexp.prototype.flags": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.0.tgz", + "integrity": "sha512-0SutC3pNudRKgquxGoRGIz946MZVHqbNfPjBdxeOhBrdgDKlRoXmYLQN9xRbrR09ZXWeGAdPuif7egofn6v5LA==", + "peer": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "functions-have-names": "^1.2.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve": { + "version": "1.22.2", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.2.tgz", + "integrity": "sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==", + "dev": true, + "dependencies": { + "is-core-module": "^2.11.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true, + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/rimraf/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/rimraf/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rimraf/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/rome": { + "version": "12.1.3", + "resolved": "https://registry.npmjs.org/rome/-/rome-12.1.3.tgz", + "integrity": "sha512-e+ff72hxDpe/t5/Us7YRBVw3PBET7SeczTQNn6tvrWdrCaAw3qOukQQ+tDCkyFtS4yGsnhjrJbm43ctNbz27Yg==", + "dev": true, + "hasInstallScript": true, + "bin": { + "rome": "bin/rome" + }, + "engines": { + "node": ">=14.*" + }, + "optionalDependencies": { + "@rometools/cli-darwin-arm64": "12.1.3", + "@rometools/cli-darwin-x64": "12.1.3", + "@rometools/cli-linux-arm64": "12.1.3", + "@rometools/cli-linux-x64": "12.1.3", + "@rometools/cli-win32-arm64": "12.1.3", + "@rometools/cli-win32-x64": "12.1.3" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true + }, + "node_modules/sass": { + "version": "1.64.1", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.64.1.tgz", + "integrity": "sha512-16rRACSOFEE8VN7SCgBu1MpYCyN7urj9At898tyzdXFhC+a+yOX5dXwAR7L8/IdPJ1NB8OYoXmD55DM30B2kEQ==", + "dev": true, + "dependencies": { + "chokidar": ">=3.0.0 <4.0.0", + "immutable": "^4.0.0", + "source-map-js": ">=0.6.2 <2.0.0" + }, + "bin": { + "sass": "sass.js" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/scheduler": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.0.tgz", + "integrity": "sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==", + "dependencies": { + "loose-envify": "^1.1.0" + } + }, + "node_modules/schema-utils": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", + "dev": true, + "peer": true, + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/serialize-javascript": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.1.tgz", + "integrity": "sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w==", + "dev": true, + "peer": true, + "dependencies": { + "randombytes": "^2.1.0" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "engines": { + "node": ">=8" + } + }, + "node_modules/side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "peer": true, + "dependencies": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/signal-exit": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.0.2.tgz", + "integrity": "sha512-MY2/qGx4enyjprQnFaZsHib3Yadh3IXyV2C321GY0pjGfVBu4un0uDJkwgdxqO+Rdx8JMT8IfJIRwbYVz3Ob3Q==", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/sizzle": { + "version": "2.3.10", + "resolved": "https://registry.npmjs.org/sizzle/-/sizzle-2.3.10.tgz", + "integrity": "sha512-kPGev+SiByuzi/YPDTqCwdKLWCaN9+14ve86yH0gP6Efue04xjLYWJrcLC6y1buFyIVXkwHNXPsOTEd1MYVPbQ==", + "dev": true + }, + "node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-js": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", + "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "dev": true, + "peer": true, + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/sourcemap-codec": { + "version": "1.4.8", + "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", + "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", + "deprecated": "Please use @jridgewell/sourcemap-codec instead", + "dev": true + }, + "node_modules/stop-iteration-iterator": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.0.0.tgz", + "integrity": "sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==", + "peer": true, + "dependencies": { + "internal-slot": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dependencies": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/string-width-cjs": { + "name": "string-width", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width-cjs/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width-cjs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "node_modules/string-width-cjs/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/strip-ansi-cjs": { + "name": "strip-ansi", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi-cjs/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/tabbable": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/tabbable/-/tabbable-6.2.0.tgz", + "integrity": "sha512-Cat63mxsVJlzYvN51JmVXIgNoUokrIaT2zLclCXjRd8boZ0004U4KCs/sToJ75C6sdlByWxpYnb5Boif1VSFew==" + }, + "node_modules/tapable": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/terser": { + "version": "5.19.2", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.19.2.tgz", + "integrity": "sha512-qC5+dmecKJA4cpYxRa5aVkKehYsQKc+AHeKl0Oe62aYjBL8ZA33tTljktDHJSaxxMnbI5ZYw+o/S2DxxLu8OfA==", + "dev": true, + "peer": true, + "dependencies": { + "@jridgewell/source-map": "^0.3.3", + "acorn": "^8.8.2", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/terser-webpack-plugin": { + "version": "5.3.9", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.9.tgz", + "integrity": "sha512-ZuXsqE07EcggTWQjXUj+Aot/OMcD0bMKGgF63f7UxYcu5/AJF53aIpK1YoP5xR9l6s/Hy2b+t1AM0bLNPRuhwA==", + "dev": true, + "peer": true, + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.17", + "jest-worker": "^27.4.5", + "schema-utils": "^3.1.1", + "serialize-javascript": "^6.0.1", + "terser": "^5.16.8" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.1.0" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "uglify-js": { + "optional": true + } + } + }, + "node_modules/terser/node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true, + "peer": true + }, + "node_modules/tiny-glob": { + "version": "0.2.9", + "resolved": "https://registry.npmjs.org/tiny-glob/-/tiny-glob-0.2.9.tgz", + "integrity": "sha512-g/55ssRPUjShh+xkfx9UPDXqhckHEsHr4Vd9zX55oSdGZc/MD0m3sferOkwWtp98bv+kcVfEHtRJgBVJzelrzg==", + "dev": true, + "dependencies": { + "globalyzer": "0.1.0", + "globrex": "^0.1.2" + } + }, + "node_modules/tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "dev": true, + "dependencies": { + "os-tmpdir": "~1.0.2" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/ts-loader": { + "version": "9.4.4", + "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-9.4.4.tgz", + "integrity": "sha512-MLukxDHBl8OJ5Dk3y69IsKVFRA/6MwzEqBgh+OXMPB/OD01KQuWPFd1WAQP8a5PeSCAxfnkhiuWqfmFJzJQt9w==", + "dev": true, + "dependencies": { + "chalk": "^4.1.0", + "enhanced-resolve": "^5.0.0", + "micromatch": "^4.0.0", + "semver": "^7.3.4" + }, + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "typescript": "*", + "webpack": "^5.0.0" + } + }, + "node_modules/ts-loader/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/ts-loader/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/ts-loader/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/ts-loader/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/ts-loader/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/ts-loader/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/ts-loader/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/ts-loader/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ts-loader/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/tslib": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.1.tgz", + "integrity": "sha512-t0hLfiEKfMUoqhG+U1oid7Pva4bbDPHYfJNiB7BiIjRkj1pyC++4N3huJfqY6aRH6VTB0rvtzQwjM4K6qpfOig==" + }, + "node_modules/typescript": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.1.6.tgz", + "integrity": "sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA==", + "dev": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/universalify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", + "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", + "dev": true, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz", + "integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "peer": true, + "dependencies": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "peer": true, + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/watchpack": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", + "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", + "dev": true, + "peer": true, + "dependencies": { + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.1.2" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/webpack": { + "version": "5.88.2", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.88.2.tgz", + "integrity": "sha512-JmcgNZ1iKj+aiR0OvTYtWQqJwq37Pf683dY9bVORwVbUrDhLhdn/PlO2sHsFHPkj7sHNQF3JwaAkp49V+Sq1tQ==", + "dev": true, + "peer": true, + "dependencies": { + "@types/eslint-scope": "^3.7.3", + "@types/estree": "^1.0.0", + "@webassemblyjs/ast": "^1.11.5", + "@webassemblyjs/wasm-edit": "^1.11.5", + "@webassemblyjs/wasm-parser": "^1.11.5", + "acorn": "^8.7.1", + "acorn-import-assertions": "^1.9.0", + "browserslist": "^4.14.5", + "chrome-trace-event": "^1.0.2", + "enhanced-resolve": "^5.15.0", + "es-module-lexer": "^1.2.1", + "eslint-scope": "5.1.1", + "events": "^3.2.0", + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.2.9", + "json-parse-even-better-errors": "^2.3.1", + "loader-runner": "^4.2.0", + "mime-types": "^2.1.27", + "neo-async": "^2.6.2", + "schema-utils": "^3.2.0", + "tapable": "^2.1.1", + "terser-webpack-plugin": "^5.3.7", + "watchpack": "^2.4.0", + "webpack-sources": "^3.2.3" + }, + "bin": { + "webpack": "bin/webpack.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependenciesMeta": { + "webpack-cli": { + "optional": true + } + } + }, + "node_modules/webpack-sources": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", + "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", + "dev": true, + "peer": true, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/which-boxed-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", + "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", + "peer": true, + "dependencies": { + "is-bigint": "^1.0.1", + "is-boolean-object": "^1.1.0", + "is-number-object": "^1.0.4", + "is-string": "^1.0.5", + "is-symbol": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-collection": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.1.tgz", + "integrity": "sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==", + "peer": true, + "dependencies": { + "is-map": "^2.0.1", + "is-set": "^2.0.1", + "is-weakmap": "^2.0.1", + "is-weakset": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-typed-array": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.11.tgz", + "integrity": "sha512-qe9UWWpkeG5yzZ0tNYxDmd7vo58HDBc39mZ0xWWpolAGADdFOzkfamWLDxkOWcvHQKVmdTyQdLD4NOfjLWTKew==", + "peer": true, + "dependencies": { + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.2", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "dependencies": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs": { + "name": "wrap-ansi", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/wrap-ansi-cjs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "node_modules/wrap-ansi-cjs/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi/node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true + }, + "node_modules/ws": { + "version": "7.5.9", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", + "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", + "dev": true, + "engines": { + "node": ">=8.3.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true, + "peer": true + }, + "node_modules/yaml": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.3.1.tgz", + "integrity": "sha512-2eHWfjaoXgTBC2jNM1LRef62VQa0umtvRiDSk6HSzW7RvS5YtkabJrwYLLEKWBc8a5U2PTSCs+dJjUTJdlHsWQ==", + "dev": true, + "engines": { + "node": ">= 14" + } + } + } +} From a85c63dc56e8ddbe65e2673c839097fb52547b9d1ee27ec3f25099a47c7bdb39 Mon Sep 17 00:00:00 2001 From: Adam Majer Date: Fri, 9 Aug 2024 11:01:51 +0000 Subject: [PATCH 2/7] OBS-URL: https://build.opensuse.org/package/show/systemsmanagement:cockpit/cockpit-tukit?expand=0&rev=23 --- 38.patch | 31729 ++++++++++++++++++++++ cockpit-tukit-0.1.2~git0.647b3e3.tar.xz | 4 +- cockpit-tukit.spec | 3 +- node_modules.obscpio | 4 +- node_modules.spec.inc | 894 +- node_modules.sums | 402 +- package-lock.json | 12559 +++++---- 7 files changed, 40244 insertions(+), 5351 deletions(-) create mode 100644 38.patch diff --git a/38.patch b/38.patch new file mode 100644 index 0000000..76843c6 --- /dev/null +++ b/38.patch @@ -0,0 +1,31729 @@ +From ba895fd10a68c031db1f6dc980a712dbc1cd41d7 Mon Sep 17 00:00:00 2001 +From: Luna +Date: Mon, 22 Jul 2024 14:22:47 +0530 +Subject: [PATCH 1/6] switch to biome + +--- + biome.json | 25 +++++++ + package-lock.json | 176 +++++++++++++++++++++++++++++++++++++++++++--- + package.json | 12 ++-- + 3 files changed, 197 insertions(+), 16 deletions(-) + create mode 100644 biome.json + +diff --git a/biome.json b/biome.json +new file mode 100644 +index 0000000..ca3ad19 +--- /dev/null ++++ b/biome.json +@@ -0,0 +1,25 @@ ++{ ++ "$schema": "./node_modules/rome/configuration_schema.json", ++ "organizeImports": { ++ "enabled": false ++ }, ++ "linter": { ++ "enabled": true, ++ "rules": { ++ "recommended": true, ++ "suspicious": { ++ "noExplicitAny": "off", ++ "noAssignInExpressions": "off", ++ "noShadowRestrictedNames": "off" ++ }, ++ "style": { ++ "noParameterAssign": "off" ++ } ++ }, ++ "ignore": ["pkg/*", "dist", "test/common"] ++ }, ++ "formatter": { ++ "enabled": true, ++ "ignore": ["pkg/*", "dist", "test/common"] ++ } ++} +diff --git a/package-lock.json b/package-lock.json +index c77506f..fe1d149 100644 +--- a/package-lock.json ++++ b/package-lock.json +@@ -19,6 +19,7 @@ + }, + "devDependencies": { + "@babel/preset-typescript": "^7.21.4", ++ "@biomejs/biome": "1.8.3", + "@types/react": "^18.0.37", + "@types/react-dom": "^18.0.11", + "argparse": "^2.0.1", +@@ -548,6 +549,161 @@ + "node": ">=6.9.0" + } + }, ++ "node_modules/@biomejs/biome": { ++ "version": "1.8.3", ++ "resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-1.8.3.tgz", ++ "integrity": "sha512-/uUV3MV+vyAczO+vKrPdOW0Iaet7UnJMU4bNMinggGJTAnBPjCoLEYcyYtYHNnUNYlv4xZMH6hVIQCAozq8d5w==", ++ "dev": true, ++ "hasInstallScript": true, ++ "bin": { ++ "biome": "bin/biome" ++ }, ++ "engines": { ++ "node": ">=14.21.3" ++ }, ++ "funding": { ++ "type": "opencollective", ++ "url": "https://opencollective.com/biome" ++ }, ++ "optionalDependencies": { ++ "@biomejs/cli-darwin-arm64": "1.8.3", ++ "@biomejs/cli-darwin-x64": "1.8.3", ++ "@biomejs/cli-linux-arm64": "1.8.3", ++ "@biomejs/cli-linux-arm64-musl": "1.8.3", ++ "@biomejs/cli-linux-x64": "1.8.3", ++ "@biomejs/cli-linux-x64-musl": "1.8.3", ++ "@biomejs/cli-win32-arm64": "1.8.3", ++ "@biomejs/cli-win32-x64": "1.8.3" ++ } ++ }, ++ "node_modules/@biomejs/cli-darwin-arm64": { ++ "version": "1.8.3", ++ "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-1.8.3.tgz", ++ "integrity": "sha512-9DYOjclFpKrH/m1Oz75SSExR8VKvNSSsLnVIqdnKexj6NwmiMlKk94Wa1kZEdv6MCOHGHgyyoV57Cw8WzL5n3A==", ++ "cpu": [ ++ "arm64" ++ ], ++ "dev": true, ++ "optional": true, ++ "os": [ ++ "darwin" ++ ], ++ "engines": { ++ "node": ">=14.21.3" ++ } ++ }, ++ "node_modules/@biomejs/cli-darwin-x64": { ++ "version": "1.8.3", ++ "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-1.8.3.tgz", ++ "integrity": "sha512-UeW44L/AtbmOF7KXLCoM+9PSgPo0IDcyEUfIoOXYeANaNXXf9mLUwV1GeF2OWjyic5zj6CnAJ9uzk2LT3v/wAw==", ++ "cpu": [ ++ "x64" ++ ], ++ "dev": true, ++ "optional": true, ++ "os": [ ++ "darwin" ++ ], ++ "engines": { ++ "node": ">=14.21.3" ++ } ++ }, ++ "node_modules/@biomejs/cli-linux-arm64": { ++ "version": "1.8.3", ++ "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-1.8.3.tgz", ++ "integrity": "sha512-fed2ji8s+I/m8upWpTJGanqiJ0rnlHOK3DdxsyVLZQ8ClY6qLuPc9uehCREBifRJLl/iJyQpHIRufLDeotsPtw==", ++ "cpu": [ ++ "arm64" ++ ], ++ "dev": true, ++ "optional": true, ++ "os": [ ++ "linux" ++ ], ++ "engines": { ++ "node": ">=14.21.3" ++ } ++ }, ++ "node_modules/@biomejs/cli-linux-arm64-musl": { ++ "version": "1.8.3", ++ "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-1.8.3.tgz", ++ "integrity": "sha512-9yjUfOFN7wrYsXt/T/gEWfvVxKlnh3yBpnScw98IF+oOeCYb5/b/+K7YNqKROV2i1DlMjg9g/EcN9wvj+NkMuQ==", ++ "cpu": [ ++ "arm64" ++ ], ++ "dev": true, ++ "optional": true, ++ "os": [ ++ "linux" ++ ], ++ "engines": { ++ "node": ">=14.21.3" ++ } ++ }, ++ "node_modules/@biomejs/cli-linux-x64": { ++ "version": "1.8.3", ++ "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-1.8.3.tgz", ++ "integrity": "sha512-I8G2QmuE1teISyT8ie1HXsjFRz9L1m5n83U1O6m30Kw+kPMPSKjag6QGUn+sXT8V+XWIZxFFBoTDEDZW2KPDDw==", ++ "cpu": [ ++ "x64" ++ ], ++ "dev": true, ++ "optional": true, ++ "os": [ ++ "linux" ++ ], ++ "engines": { ++ "node": ">=14.21.3" ++ } ++ }, ++ "node_modules/@biomejs/cli-linux-x64-musl": { ++ "version": "1.8.3", ++ "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-1.8.3.tgz", ++ "integrity": "sha512-UHrGJX7PrKMKzPGoEsooKC9jXJMa28TUSMjcIlbDnIO4EAavCoVmNQaIuUSH0Ls2mpGMwUIf+aZJv657zfWWjA==", ++ "cpu": [ ++ "x64" ++ ], ++ "dev": true, ++ "optional": true, ++ "os": [ ++ "linux" ++ ], ++ "engines": { ++ "node": ">=14.21.3" ++ } ++ }, ++ "node_modules/@biomejs/cli-win32-arm64": { ++ "version": "1.8.3", ++ "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-1.8.3.tgz", ++ "integrity": "sha512-J+Hu9WvrBevfy06eU1Na0lpc7uR9tibm9maHynLIoAjLZpQU3IW+OKHUtyL8p6/3pT2Ju5t5emReeIS2SAxhkQ==", ++ "cpu": [ ++ "arm64" ++ ], ++ "dev": true, ++ "optional": true, ++ "os": [ ++ "win32" ++ ], ++ "engines": { ++ "node": ">=14.21.3" ++ } ++ }, ++ "node_modules/@biomejs/cli-win32-x64": { ++ "version": "1.8.3", ++ "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-1.8.3.tgz", ++ "integrity": "sha512-/PJ59vA1pnQeKahemaQf4Nyj7IKUvGQSc3Ze1uIGi+Wvr1xF7rGobSrAAG01T/gUDG21vkDsZYM03NAmPiVkqg==", ++ "cpu": [ ++ "x64" ++ ], ++ "dev": true, ++ "optional": true, ++ "os": [ ++ "win32" ++ ], ++ "engines": { ++ "node": ">=14.21.3" ++ } ++ }, + "node_modules/@esbuild/android-arm": { + "version": "0.18.17", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.17.tgz", +@@ -1604,12 +1760,12 @@ + } + }, + "node_modules/braces": { +- "version": "3.0.2", +- "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", +- "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", ++ "version": "3.0.3", ++ "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", ++ "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "dev": true, + "dependencies": { +- "fill-range": "^7.0.1" ++ "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" +@@ -2290,9 +2446,9 @@ + } + }, + "node_modules/fill-range": { +- "version": "7.0.1", +- "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", +- "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", ++ "version": "7.1.1", ++ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", ++ "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "dev": true, + "dependencies": { + "to-regex-range": "^5.0.1" +@@ -4812,9 +4968,9 @@ + "dev": true + }, + "node_modules/ws": { +- "version": "7.5.9", +- "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", +- "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", ++ "version": "7.5.10", ++ "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.10.tgz", ++ "integrity": "sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==", + "dev": true, + "engines": { + "node": ">=8.3.0" +diff --git a/package.json b/package.json +index 90a47a2..b3d3af6 100644 +--- a/package.json ++++ b/package.json +@@ -9,26 +9,26 @@ + "scripts": { + "watch": "ESBUILD_WATCH='true' ./build.js", + "build": "tsc -noEmit && ./build.js", +- "lint": "rome check .", +- "format": "rome format . --write", ++ "lint": "biome check .", ++ "format": "biome format . --write", + "postinstall": "patch-package" + }, + "devDependencies": { + "@babel/preset-typescript": "^7.21.4", ++ "@biomejs/biome": "1.8.3", + "@types/react": "^18.0.37", + "@types/react-dom": "^18.0.11", + "argparse": "^2.0.1", + "chrome-remote-interface": "^0.32.1", ++ "esbuild": "^0.18.6", + "esbuild-plugin-copy": "^2.1.1", + "esbuild-plugin-replace": "^1.3.0", + "esbuild-sass-plugin": "^2.10.0", +- "esbuild": "^0.18.6", ++ "gettext-parser": "7.0.1", + "htmlparser": "^1.7.7", + "jed": "^1.1.1", + "patch-package": "^7.0.2", + "qunit": "^2.9.3", +- "gettext-parser": "7.0.1", +- "rome": "^12.0.0", + "sass": "^1.61.0", + "sizzle": "^2.3.3", + "ts-loader": "^9.4.2", +@@ -48,4 +48,4 @@ + "react-dom": "18.2.0", + "react-xml-parser": "^1.1.8" + } +-} ++} +\ No newline at end of file + +From 0f9ce4701334cdb25366011ae92ac0661139f7cc Mon Sep 17 00:00:00 2001 +From: Luna +Date: Mon, 22 Jul 2024 15:06:54 +0530 +Subject: [PATCH 2/6] fix biome lint and run formatter + +--- + biome.json | 8 ++- + package.json | 100 ++++++++++++++++---------------- + rome.json | 25 -------- + src/app.tsx | 26 +++++---- + src/components/SnapshotItem.tsx | 7 ++- + src/components/StatusPanel.tsx | 12 ++-- + src/components/UpdatesItem.tsx | 11 ++-- + src/components/UpdatesPanel.tsx | 22 +++---- + src/index.ts | 2 +- + src/status.ts | 6 +- + src/tukit.ts | 53 +++++++++-------- + src/update.tsx | 2 +- + src/utils.tsx | 5 +- + tsconfig.json | 59 +++++++------------ + types/cockpit.d.ts | 8 +-- + types/notifications.d.ts | 2 +- + webpack.config.js | 12 ++-- + 17 files changed, 165 insertions(+), 195 deletions(-) + delete mode 100644 rome.json + +diff --git a/biome.json b/biome.json +index ca3ad19..7fbfe99 100644 +--- a/biome.json ++++ b/biome.json +@@ -1,5 +1,5 @@ + { +- "$schema": "./node_modules/rome/configuration_schema.json", ++ "$schema": "./node_modules/@biomejs/biome/configuration_schema.json", + "organizeImports": { + "enabled": false + }, +@@ -14,6 +14,12 @@ + }, + "style": { + "noParameterAssign": "off" ++ }, ++ "complexity": { ++ "noBannedTypes": "off" ++ }, ++ "correctness": { ++ "useExhaustiveDependencies": "off" + } + }, + "ignore": ["pkg/*", "dist", "test/common"] +diff --git a/package.json b/package.json +index b3d3af6..62afd37 100644 +--- a/package.json ++++ b/package.json +@@ -1,51 +1,51 @@ + { +- "name": "tukit", +- "description": "Cockpit module for Transactional Update", +- "type": "module", +- "main": "index.js", +- "repository": "https://github.com/openSUSE/cockpit-tukit", +- "author": "", +- "license": "LGPL-2.1", +- "scripts": { +- "watch": "ESBUILD_WATCH='true' ./build.js", +- "build": "tsc -noEmit && ./build.js", +- "lint": "biome check .", +- "format": "biome format . --write", +- "postinstall": "patch-package" +- }, +- "devDependencies": { +- "@babel/preset-typescript": "^7.21.4", +- "@biomejs/biome": "1.8.3", +- "@types/react": "^18.0.37", +- "@types/react-dom": "^18.0.11", +- "argparse": "^2.0.1", +- "chrome-remote-interface": "^0.32.1", +- "esbuild": "^0.18.6", +- "esbuild-plugin-copy": "^2.1.1", +- "esbuild-plugin-replace": "^1.3.0", +- "esbuild-sass-plugin": "^2.10.0", +- "gettext-parser": "7.0.1", +- "htmlparser": "^1.7.7", +- "jed": "^1.1.1", +- "patch-package": "^7.0.2", +- "qunit": "^2.9.3", +- "sass": "^1.61.0", +- "sizzle": "^2.3.3", +- "ts-loader": "^9.4.2", +- "typescript": "^5.0.4" +- }, +- "peerDependencies": { +- "date-fns": "^2.30.0", +- "deep-equal": "^2.2.2" +- }, +- "dependencies": { +- "@patternfly/patternfly": "5.0.0-alpha.64", +- "@patternfly/react-core": "5.0.0-alpha.115", +- "@patternfly/react-icons": "5.0.0-alpha.19", +- "@patternfly/react-styles": "5.0.0-alpha.16", +- "glob": "^10.3.3", +- "react": "18.2.0", +- "react-dom": "18.2.0", +- "react-xml-parser": "^1.1.8" +- } +-} +\ No newline at end of file ++ "name": "tukit", ++ "description": "Cockpit module for Transactional Update", ++ "type": "module", ++ "main": "index.js", ++ "repository": "https://github.com/openSUSE/cockpit-tukit", ++ "author": "", ++ "license": "LGPL-2.1", ++ "scripts": { ++ "watch": "ESBUILD_WATCH='true' ./build.js", ++ "build": "tsc -noEmit && ./build.js", ++ "lint": "biome check .", ++ "format": "biome format . --write", ++ "postinstall": "patch-package" ++ }, ++ "devDependencies": { ++ "@babel/preset-typescript": "^7.21.4", ++ "@biomejs/biome": "1.8.3", ++ "@types/react": "^18.0.37", ++ "@types/react-dom": "^18.0.11", ++ "argparse": "^2.0.1", ++ "chrome-remote-interface": "^0.32.1", ++ "esbuild": "^0.18.6", ++ "esbuild-plugin-copy": "^2.1.1", ++ "esbuild-plugin-replace": "^1.3.0", ++ "esbuild-sass-plugin": "^2.10.0", ++ "gettext-parser": "7.0.1", ++ "htmlparser": "^1.7.7", ++ "jed": "^1.1.1", ++ "patch-package": "^7.0.2", ++ "qunit": "^2.9.3", ++ "sass": "^1.61.0", ++ "sizzle": "^2.3.3", ++ "ts-loader": "^9.4.2", ++ "typescript": "^5.0.4" ++ }, ++ "peerDependencies": { ++ "date-fns": "^2.30.0", ++ "deep-equal": "^2.2.2" ++ }, ++ "dependencies": { ++ "@patternfly/patternfly": "5.0.0-alpha.64", ++ "@patternfly/react-core": "5.0.0-alpha.115", ++ "@patternfly/react-icons": "5.0.0-alpha.19", ++ "@patternfly/react-styles": "5.0.0-alpha.16", ++ "glob": "^10.3.3", ++ "react": "18.2.0", ++ "react-dom": "18.2.0", ++ "react-xml-parser": "^1.1.8" ++ } ++} +diff --git a/rome.json b/rome.json +deleted file mode 100644 +index ca3ad19..0000000 +--- a/rome.json ++++ /dev/null +@@ -1,25 +0,0 @@ +-{ +- "$schema": "./node_modules/rome/configuration_schema.json", +- "organizeImports": { +- "enabled": false +- }, +- "linter": { +- "enabled": true, +- "rules": { +- "recommended": true, +- "suspicious": { +- "noExplicitAny": "off", +- "noAssignInExpressions": "off", +- "noShadowRestrictedNames": "off" +- }, +- "style": { +- "noParameterAssign": "off" +- } +- }, +- "ignore": ["pkg/*", "dist", "test/common"] +- }, +- "formatter": { +- "enabled": true, +- "ignore": ["pkg/*", "dist", "test/common"] +- } +-} +diff --git a/src/app.tsx b/src/app.tsx +index b8b8aa5..c3d0a84 100644 +--- a/src/app.tsx ++++ b/src/app.tsx +@@ -46,9 +46,14 @@ import UpdatesItem from "./components/UpdatesItem"; + import StatusPanel from "./components/StatusPanel"; + import UpdatesPanel from "./components/UpdatesPanel"; + +-import { Snapshot, createSnapshot, snapshotsProxy, tukitdProxy } from "./tukit"; +-import { Status, mostSevereStatus } from "./status"; +-import { Update } from "./update"; ++import { ++ type Snapshot, ++ createSnapshot, ++ snapshotsProxy, ++ tukitdProxy, ++} from "./tukit"; ++import { type Status, mostSevereStatus } from "./status"; ++import type { Update } from "./update"; + + const _ = cockpit.gettext; + +@@ -76,8 +81,7 @@ const Application = () => { + }; + + useEffect(() => { +- if (superuser.allowed) +- getSnapshots(); ++ if (superuser.allowed) getSnapshots(); + // TODO: FIX! + // eslint-disable-next-line react-hooks/exhaustive-deps + }, [snapshotsDirty, superuser.allowed]); +@@ -156,7 +160,9 @@ const Application = () => { + icon={ExclamationCircleIcon} + /> + +- {_("Administrative access is required to access updates and snapshots.")} ++ {_( ++ "Administrative access is required to access updates and snapshots.", ++ )} + + + ); +@@ -182,10 +188,10 @@ const Application = () => { + snaps.sort((a, b) => b.number - a.number); + // mark old snapshots + let active: Snapshot | null = null; +- snaps.forEach((s) => { +- if (active) s.old = true; +- if (s.active) active = s; +- }); ++ for (const snap of snaps) { ++ if (active) snap.old = true; ++ if (snap.active) active = snap; ++ } + setSnapshots(snaps); + } catch (e) { + // service problems are reported in serviceProblem() +diff --git a/src/components/SnapshotItem.tsx b/src/components/SnapshotItem.tsx +index 8e728a0..4000496 100644 +--- a/src/components/SnapshotItem.tsx ++++ b/src/components/SnapshotItem.tsx +@@ -20,7 +20,8 @@ + + import cockpit from "cockpit"; + import * as timeformat from "timeformat"; +-import React, { useState } from "react"; ++import type React from "react"; ++import { useState } from "react"; + import { + Badge, + Button, +@@ -35,13 +36,13 @@ import { + DropdownItem, + Label, + Tooltip, +- MenuToggleElement, ++ type MenuToggleElement, + MenuToggle, + DropdownList, + } from "@patternfly/react-core"; + import { DropdownPosition } from "@patternfly/react-core/deprecated"; + import { CheckCircleIcon, EllipsisVIcon } from "@patternfly/react-icons"; +-import { Snapshot } from "@/tukit"; ++import type { Snapshot } from "@/tukit"; + + const _ = cockpit.gettext; + +diff --git a/src/components/StatusPanel.tsx b/src/components/StatusPanel.tsx +index a2efff3..6c4cf69 100644 +--- a/src/components/StatusPanel.tsx ++++ b/src/components/StatusPanel.tsx +@@ -37,9 +37,9 @@ import { + } from "@patternfly/react-icons"; + + import "./StatusPanel.scss"; +-import { Update } from "@/update"; ++import type { Update } from "@/update"; + import type { Status } from "@/status"; +-import { Snapshot } from "@/tukit"; ++import type { Snapshot } from "@/tukit"; + + const _ = cockpit.gettext; + +@@ -120,10 +120,10 @@ const StatusPanel = ({ + const i = s.details?.icon || s.type; + const c = `tukit-status-${i}`; + if (i === "error") return ; +- else if (i === "warning") return ; +- else if (i === "check") return ; +- else if (i === "pending") return ; +- else return ; ++ if (i === "warning") return ; ++ if (i === "check") return ; ++ if (i === "pending") return ; ++ return ; + }; + return ( + +diff --git a/src/components/UpdatesItem.tsx b/src/components/UpdatesItem.tsx +index 7d48610..1aa159c 100644 +--- a/src/components/UpdatesItem.tsx ++++ b/src/components/UpdatesItem.tsx +@@ -19,7 +19,8 @@ + */ + + import cockpit from "cockpit"; +-import React, { useState } from "react"; ++import type React from "react"; ++import { useState } from "react"; + import { + Button, + DataList, +@@ -37,7 +38,7 @@ import { + ModalVariant, + Tooltip, + DropdownList, +- MenuToggleElement, ++ type MenuToggleElement, + MenuToggle, + } from "@patternfly/react-core"; + import { DropdownPosition } from "@patternfly/react-core/deprecated"; +@@ -49,7 +50,7 @@ import { + EllipsisVIcon, + } from "@patternfly/react-icons"; + import { transactionsProxy } from "../tukit"; +-import { Update, categoryProps, severityProps } from "../update"; ++import { type Update, categoryProps, severityProps } from "../update"; + import { linkify } from "../utils"; + + import "./UpdatesItem.scss"; +@@ -116,8 +117,8 @@ const UpdateDetails = ({ u }: { u: Update }) => { + const UpdateItem = ({ u }: { u: Update }) => { + const icon = () => { + if (u.kind === "package") return ; +- else if (u.kind === "patch") return ; +- else return ; ++ if (u.kind === "patch") return ; ++ return ; + }; + const updateCells = (u: Update) => { + // package +diff --git a/src/components/UpdatesPanel.tsx b/src/components/UpdatesPanel.tsx +index 5781bf6..79ed5f1 100644 +--- a/src/components/UpdatesPanel.tsx ++++ b/src/components/UpdatesPanel.tsx +@@ -20,7 +20,7 @@ + import cockpit from "cockpit"; + import * as timeformat from "timeformat"; + import React, { useState, useEffect } from "react"; +-import XMLParser, { XMLElement } from "react-xml-parser"; ++import XMLParser, { type XMLElement } from "react-xml-parser"; + import { + Button, + Card, +@@ -34,10 +34,10 @@ import { + kindPrio, + categoryPrio, + severityPrio, +- KindValues, +- CategoryValues, +- SeverityValues, +- Update, ++ type KindValues, ++ type CategoryValues, ++ type SeverityValues, ++ type Update, + } from "../update"; + import { decodeHTMLEntities } from "../utils"; + +@@ -50,12 +50,12 @@ const flattenXMLData = (data: XMLElement, prefix = ""): Update => { + // NOTE: this will make {"": value} for root item + if (data.value) values[prefix] = data.value; + if (prefix !== "") prefix = `${prefix}_`; +- Object.keys(data.attributes).forEach((a) => { +- values[`${prefix}${a}`] = data.attributes[a]; +- }); +- data.children.forEach((c) => { +- Object.assign(values, flattenXMLData(c, `${prefix}${c.name}`)); +- }); ++ for (const key of Object.keys(data.attributes)) { ++ values[`${prefix}${key}`] = data.attributes[key]; ++ } ++ for (const child of data.children) { ++ Object.assign(values, flattenXMLData(child, `${prefix}${child.name}`)); ++ } + return values as Update; + }; + +diff --git a/src/index.ts b/src/index.ts +index f5da17a..f8955b1 100644 +--- a/src/index.ts ++++ b/src/index.ts +@@ -33,7 +33,7 @@ import "./app.scss"; + /* + console.log(foo("foo")) + */ +-document.addEventListener("DOMContentLoaded", function () { ++document.addEventListener("DOMContentLoaded", () => { + const container = document.getElementById("app"); + if (container) { + const root = createRoot(container); +diff --git a/src/status.ts b/src/status.ts +index bdebe35..eb9486c 100644 +--- a/src/status.ts ++++ b/src/status.ts +@@ -37,8 +37,8 @@ export type Status = { + export const mostSevereStatus = (statuses: Status[]): Status | null => { + if (statuses.length === 0) return null; + let ret = statuses[0]; +- statuses.forEach((s) => { +- if (statusSeverity[s.type] > statusSeverity[ret.type]) ret = s; +- }); ++ for (const status of statuses) { ++ if (statusSeverity[status.type] > statusSeverity[ret.type]) ret = status; ++ } + return ret; + }; +diff --git a/src/tukit.ts b/src/tukit.ts +index 57c58f1..4aab7b2 100644 +--- a/src/tukit.ts ++++ b/src/tukit.ts +@@ -18,8 +18,8 @@ + * find current contact information at www.suse.com. + */ + +-import cockpit, { DbusClient, Proxy } from "cockpit"; +-import { ServiceProxy, proxy as serviceProxy } from "service"; ++import cockpit, { type DbusClient, type Proxy } from "cockpit"; ++import { type ServiceProxy, proxy as serviceProxy } from "service"; + import { stringToBool } from "./utils"; + + let _dbusClient: DbusClient; +@@ -36,8 +36,8 @@ const dbusClient = (): DbusClient => { + type SnapshotRecordKeys = T extends `${infer K},${infer Rest}` + ? K | SnapshotRecordKeys + : T extends `${infer K}` +- ? K +- : never; ++ ? K ++ : never; + + export type SnapshotRecord = { + [k in SnapshotRecordKeys]: string; +@@ -79,21 +79,20 @@ const createSnapshot = (snap: SnapIn): Snapshot => { + if (Array.isArray(snap)) { + const [number, dflt, active, date, description] = snap; + return { +- number: parseInt(number), ++ number: Number.parseInt(number), + default: stringToBool(dflt), + active: stringToBool(active), + date: new Date(`${date}Z`), // dates are UTC but have no marking + description, + }; +- } else { +- return { +- number: parseInt(snap.number), +- default: stringToBool(snap.default), +- active: stringToBool(snap.active), +- date: new Date(`${snap.date}Z`), // dates are UTC but have no marking +- description: snap.description, +- }; + } ++ return { ++ number: Number.parseInt(snap.number), ++ default: stringToBool(snap.default), ++ active: stringToBool(snap.active), ++ date: new Date(`${snap.date}Z`), // dates are UTC but have no marking ++ description: snap.description, ++ }; + }; + + type TransactionEvent = "TransactionOpened" | "CommandExecuted" | "Error"; +@@ -102,20 +101,20 @@ type TransactionEventCallback = + T extends "TransactionOpened" + ? (event: CustomEvent, snapshot: string) => void + : T extends "Error" +- ? ( +- event: CustomEvent, +- snapshot: string, +- returncode: number, +- output: string, +- ) => void +- : T extends "CommandExecuted" +- ? ( +- event: CustomEvent, +- snapshot: string, +- returncode: number, +- output: string, +- ) => void +- : never; ++ ? ( ++ event: CustomEvent, ++ snapshot: string, ++ returncode: number, ++ output: string, ++ ) => void ++ : T extends "CommandExecuted" ++ ? ( ++ event: CustomEvent, ++ snapshot: string, ++ returncode: number, ++ output: string, ++ ) => void ++ : never; + + // https://kubic.opensuse.org/documentation/man-pages/transactional-update.conf.5.html#REBOOT_METHOD + type TransactionReboot = +diff --git a/src/update.tsx b/src/update.tsx +index 19afa86..8ee8ebf 100644 +--- a/src/update.tsx ++++ b/src/update.tsx +@@ -73,7 +73,7 @@ const prioProps = (p: keyof typeof prioLabelColor) => { + typeof prioLabelColor + >, + icon_disabled: prioIcon[p], +- variant: "outline" as "outline", ++ variant: "outline" as const, + }; + }; + +diff --git a/src/utils.tsx b/src/utils.tsx +index be04309..b879d03 100644 +--- a/src/utils.tsx ++++ b/src/utils.tsx +@@ -17,7 +17,7 @@ + * To contact SUSE LLC about this file by physical or electronic mail, you may + * find current contact information at www.suse.com. + */ +-import React, { Key } from "react"; ++import React, { type Key } from "react"; + + export const stringToBool = (s: string) => { + return ["yes", "true", "1"].includes(s.toLowerCase()); +@@ -27,8 +27,7 @@ export const stringToBool = (s: string) => { + // numeric ones. + // see: https://github.com/openSUSE/libzypp/blob/master/zypp-core/parser/xml/XmlEscape.cc + export const decodeHTMLEntities = (s: string | null): string | null => { +- if (!s) +- return null; ++ if (!s) return null; + + const entities = { lt: "<", gt: ">", amp: "&", apos: "'", quot: '"' }; + return s +diff --git a/tsconfig.json b/tsconfig.json +index 11160c8..eb645a3 100644 +--- a/tsconfig.json ++++ b/tsconfig.json +@@ -1,39 +1,24 @@ + { +- "compilerOptions": { +- "target": "es6", +- "module": "es6", +- "strict": true, +- "importHelpers": true, +- "moduleResolution": "node", +- "experimentalDecorators": true, +- "esModuleInterop": true, +- "allowSyntheticDefaultImports": true, +- "sourceMap": true, +- "skipLibCheck": true, +- "baseUrl": ".", +- "jsx": "react", +- "allowJs": true, +- "paths": { +- "@/*": [ +- "src/*" +- ], +- "*": ["types/*"] +- }, +- "lib": [ +- "dom", +- "dom.iterable", +- "ES2021.String", +- "ES2021" +- ] +- }, +- "include": [ +- "src/*.ts", +- "src/*.tsx", +- "src/**/*.ts", +- "src/**/*.tsx" +- ], +- "exclude": [ +- "node_modules", +- "types" +- ] ++ "compilerOptions": { ++ "target": "es6", ++ "module": "es6", ++ "strict": true, ++ "importHelpers": true, ++ "moduleResolution": "node", ++ "experimentalDecorators": true, ++ "esModuleInterop": true, ++ "allowSyntheticDefaultImports": true, ++ "sourceMap": true, ++ "skipLibCheck": true, ++ "baseUrl": ".", ++ "jsx": "react", ++ "allowJs": true, ++ "paths": { ++ "@/*": ["src/*"], ++ "*": ["types/*"] ++ }, ++ "lib": ["dom", "dom.iterable", "ES2021.String", "ES2021"] ++ }, ++ "include": ["src/*.ts", "src/*.tsx", "src/**/*.ts", "src/**/*.tsx"], ++ "exclude": ["node_modules", "types"] + } +diff --git a/types/cockpit.d.ts b/types/cockpit.d.ts +index 5ecd9a3..c497028 100644 +--- a/types/cockpit.d.ts ++++ b/types/cockpit.d.ts +@@ -1,9 +1,7 @@ + // https://github.com/cockpit-project/cockpit/pull/13214 + + declare module "cockpit" { +- interface Func1 { +- (arg: T): R; +- } ++ type Func1 = (arg: T) => R; + + type DbusOptions = { + bus: "session" | "user" | "system" | "none"; +@@ -73,8 +71,8 @@ declare module "cockpit" { + type DBusEventCallback = T extends "close" + ? (event: CustomEvent, options: { problem?: string }) => void + : T extends "owner" +- ? (event: CustomEvent, owner?: string | null) => void +- : never; ++ ? (event: CustomEvent, owner?: string | null) => void ++ : never; + + interface DbusClient { + wait: (callback: () => void) => Promise; +diff --git a/types/notifications.d.ts b/types/notifications.d.ts +index b147491..fe2b558 100644 +--- a/types/notifications.d.ts ++++ b/types/notifications.d.ts +@@ -1,5 +1,5 @@ + // TODO: reorganise code so `Status` is part of notifications module +-import { Status } from "@/status"; ++import type { Status } from "@/status"; + + declare module "notifications" { + class PageStatus { +diff --git a/webpack.config.js b/webpack.config.js +index 0b7f77b..8831788 100644 +--- a/webpack.config.js ++++ b/webpack.config.js +@@ -1,5 +1,5 @@ +-const fs = require("fs"); +-const path = require("path"); ++const fs = require("node:fs"); ++const path = require("node:path"); + + const copy = require("copy-webpack-plugin"); + const extract = require("mini-css-extract-plugin"); +@@ -82,10 +82,10 @@ module.exports = { + test: /\.(js|ts|jsx|tsx)$/, + }, + /* { +- test: /\.(js|ts|jsx|tsx)$/, +- use: 'ts-loader', +- exclude:/node_modules/, +- }, */ ++ test: /\.(js|ts|jsx|tsx)$/, ++ use: 'ts-loader', ++ exclude:/node_modules/, ++ }, */ + /* HACK: remove unwanted fonts from PatternFly's css */ + { + test: /patternfly-4-cockpit.scss$/, + +From f520b4f52c91c2bbfa111f639575b2faa7169c43 Mon Sep 17 00:00:00 2001 +From: Luna +Date: Mon, 22 Jul 2024 17:11:05 +0530 +Subject: [PATCH 3/6] add ci + +--- + .github/workflows/pull.yaml | 25 +++++++++++++++++++++++++ + 1 file changed, 25 insertions(+) + create mode 100644 .github/workflows/pull.yaml + +diff --git a/.github/workflows/pull.yaml b/.github/workflows/pull.yaml +new file mode 100644 +index 0000000..8f0e06a +--- /dev/null ++++ b/.github/workflows/pull.yaml +@@ -0,0 +1,25 @@ ++name: Pull Request ++on: ++ pull_request: ++ types: ++ - opened ++ - edited ++ - synchronize ++ - reopened ++jobs: ++ checks: ++ runs-on: ubuntu-latest ++ container: ++ image: registry.opensuse.org/opensuse/bci/nodejs:latest ++ steps: ++ - uses: actions/checkout@v4 ++ - uses: actions/setup-node@v4 ++ with: ++ node-version: 20 ++ cache: npm ++ - name: install deps ++ run: npm ci && zypper install -y cockpit-devel make ++ - name: build ++ run: make && npm run build ++ - name: lint & format check ++ run: npm run ci + +From a0c4001c975f46ed382eb9aa5a0fe6f7fed2fe36 Mon Sep 17 00:00:00 2001 +From: Luna +Date: Tue, 23 Jul 2024 11:36:39 +0530 +Subject: [PATCH 4/6] add upstream eslint and stylelint config + +--- + .babelrc.json | 34 +- + .eslintignore | 2 + + .eslintrc.json | 75 + + .github/workflows/pull.yaml | 2 + + .stylelintrc.json | 33 + + biome.json | 59 +- + build.js | 187 +- + package-lock.json | 7199 ++++++++++++----- + package.json | 118 +- + .../cockpit-tukit.spec.in | 0 + patches/glob+10.3.3.patch | 11 - + patches/glob+11.0.0.patch | 11 + + src/app.tsx | 422 +- + src/components/SnapshotItem.tsx | 374 +- + src/components/StatusPanel.tsx | 218 +- + src/components/UpdatesItem.tsx | 632 +- + src/components/UpdatesPanel.tsx | 293 +- + src/index.ts | 14 +- + src/manifest.json | 32 +- + src/status.ts | 28 +- + src/tukit.ts | 202 +- + src/update.tsx | 52 +- + src/utils.tsx | 52 +- + tsconfig.json | 44 +- + types/cockpit.d.ts | 216 +- + types/hooks.d.ts | 2 +- + types/notifications.d.ts | 12 +- + types/react-xml-parser.d.ts | 28 +- + types/service.d.ts | 30 +- + types/superuser.d.ts | 10 +- + types/timeformat.d.ts | 24 +- + webpack.config.js | 154 - + 32 files changed, 6931 insertions(+), 3639 deletions(-) + create mode 100644 .eslintignore + create mode 100644 .eslintrc.json + create mode 100644 .stylelintrc.json + rename cockpit-tukit.spec.in => packaging/cockpit-tukit.spec.in (100%) + delete mode 100644 patches/glob+10.3.3.patch + create mode 100644 patches/glob+11.0.0.patch + delete mode 100644 webpack.config.js + +diff --git a/.babelrc.json b/.babelrc.json +index 66be253..f1f58f5 100644 +--- a/.babelrc.json ++++ b/.babelrc.json +@@ -1,19 +1,19 @@ + { +- "presets": [ +- [ +- "@babel/env", +- { +- "targets": { +- "chrome": "57", +- "firefox": "52", +- "safari": "10.3", +- "edge": "16", +- "opera": "44" +- } +- } +- ], +- "@babel/preset-react", +- "@babel/preset-typescript" +- ], +- "plugins": ["@babel/plugin-transform-runtime"] ++ "presets": [ ++ [ ++ "@babel/env", ++ { ++ "targets": { ++ "chrome": "57", ++ "firefox": "52", ++ "safari": "10.3", ++ "edge": "16", ++ "opera": "44" ++ } ++ } ++ ], ++ "@babel/preset-react", ++ "@babel/preset-typescript" ++ ], ++ "plugins": ["@babel/plugin-transform-runtime"] + } +diff --git a/.eslintignore b/.eslintignore +new file mode 100644 +index 0000000..fe0174d +--- /dev/null ++++ b/.eslintignore +@@ -0,0 +1,2 @@ ++node_modules/* ++pkg/lib/* +\ No newline at end of file +diff --git a/.eslintrc.json b/.eslintrc.json +new file mode 100644 +index 0000000..e91fb76 +--- /dev/null ++++ b/.eslintrc.json +@@ -0,0 +1,75 @@ ++{ ++ "root": true, ++ "env": { ++ "browser": true, ++ "es6": true ++ }, ++ "extends": [ ++ "eslint:recommended", ++ "standard", ++ "standard-jsx", ++ "standard-react" ++ ], ++ "parserOptions": { ++ "ecmaVersion": 2022, ++ "sourceType": "module" ++ }, ++ "plugins": ["react", "react-hooks"], ++ "rules": { ++ "indent": [ ++ "error", ++ 4, ++ { ++ "ObjectExpression": "first", ++ "CallExpression": { "arguments": "first" }, ++ "MemberExpression": 2, ++ "ignoredNodes": ["JSXAttribute"] ++ } ++ ], ++ "newline-per-chained-call": ["error", { "ignoreChainWithDepth": 2 }], ++ "no-var": "error", ++ "lines-between-class-members": [ ++ "error", ++ "always", ++ { "exceptAfterSingleLine": true } ++ ], ++ "prefer-promise-reject-errors": ["error", { "allowEmptyReject": true }], ++ "react/jsx-indent": ["error", 4], ++ "semi": ["error", "always", { "omitLastInOneLineBlock": true }], ++ ++ "react-hooks/rules-of-hooks": "error", ++ "react-hooks/exhaustive-deps": "error", ++ ++ "camelcase": "off", ++ "comma-dangle": "off", ++ "curly": "off", ++ "jsx-quotes": "off", ++ "key-spacing": "off", ++ "no-console": "off", ++ "quotes": "off", ++ "react/jsx-curly-spacing": "off", ++ "react/jsx-indent-props": "off", ++ "react/jsx-no-useless-fragment": "error", ++ "react/prop-types": "off", ++ "space-before-function-paren": "off", ++ "standard/no-callback-literal": "off" ++ }, ++ "globals": { ++ "require": "readonly", ++ "module": "readonly" ++ }, ++ "overrides": [ ++ { ++ "files": ["**/*.ts", "**/*.tsx"], ++ "plugins": ["@typescript-eslint"], ++ "extends": [ ++ "eslint:recommended", ++ "plugin:@typescript-eslint/recommended" ++ ], ++ "parser": "@typescript-eslint/parser", ++ "parserOptions": { ++ "project": ["./tsconfig.json"] ++ } ++ } ++ ] ++} +diff --git a/.github/workflows/pull.yaml b/.github/workflows/pull.yaml +index 8f0e06a..10f042e 100644 +--- a/.github/workflows/pull.yaml ++++ b/.github/workflows/pull.yaml +@@ -19,6 +19,8 @@ jobs: + cache: npm + - name: install deps + run: npm ci && zypper install -y cockpit-devel make ++ - name: git workaround ++ run: git config --global --add safe.directory /__w/cockpit-tukit/cockpit-tukit + - name: build + run: make && npm run build + - name: lint & format check +diff --git a/.stylelintrc.json b/.stylelintrc.json +new file mode 100644 +index 0000000..03c3585 +--- /dev/null ++++ b/.stylelintrc.json +@@ -0,0 +1,33 @@ ++{ ++ "extends": "stylelint-config-standard-scss", ++ "rules": { ++ "at-rule-empty-line-before": null, ++ "declaration-empty-line-before": null, ++ "custom-property-empty-line-before": null, ++ "comment-empty-line-before": null, ++ "scss/double-slash-comment-empty-line-before": null, ++ "scss/dollar-variable-colon-space-after": null, ++ "custom-property-pattern": null, ++ "declaration-block-no-duplicate-properties": null, ++ "declaration-block-no-redundant-longhand-properties": null, ++ "declaration-block-no-shorthand-property-overrides": null, ++ "declaration-block-single-line-max-declarations": null, ++ "font-family-no-duplicate-names": null, ++ "function-url-quotes": null, ++ "keyframes-name-pattern": null, ++ "no-descending-specificity": null, ++ "no-duplicate-selectors": null, ++ "scss/at-extend-no-missing-placeholder": null, ++ "scss/at-import-partial-extension": null, ++ "scss/at-import-no-partial-leading-underscore": null, ++ "scss/load-no-partial-leading-underscore": true, ++ "scss/at-mixin-pattern": null, ++ "scss/comment-no-empty": null, ++ "scss/dollar-variable-pattern": null, ++ "scss/double-slash-comment-whitespace-inside": null, ++ "scss/no-global-function-names": null, ++ "scss/operator-no-unspaced": null, ++ "selector-class-pattern": null, ++ "selector-id-pattern": null ++ } ++} +diff --git a/biome.json b/biome.json +index 7fbfe99..287a0f0 100644 +--- a/biome.json ++++ b/biome.json +@@ -1,31 +1,32 @@ + { +- "$schema": "./node_modules/@biomejs/biome/configuration_schema.json", +- "organizeImports": { +- "enabled": false +- }, +- "linter": { +- "enabled": true, +- "rules": { +- "recommended": true, +- "suspicious": { +- "noExplicitAny": "off", +- "noAssignInExpressions": "off", +- "noShadowRestrictedNames": "off" +- }, +- "style": { +- "noParameterAssign": "off" +- }, +- "complexity": { +- "noBannedTypes": "off" +- }, +- "correctness": { +- "useExhaustiveDependencies": "off" +- } +- }, +- "ignore": ["pkg/*", "dist", "test/common"] +- }, +- "formatter": { +- "enabled": true, +- "ignore": ["pkg/*", "dist", "test/common"] +- } ++ "$schema": "./node_modules/@biomejs/biome/configuration_schema.json", ++ "organizeImports": { ++ "enabled": false ++ }, ++ "linter": { ++ "enabled": true, ++ "rules": { ++ "recommended": true, ++ "suspicious": { ++ "noExplicitAny": "off", ++ "noAssignInExpressions": "off", ++ "noShadowRestrictedNames": "off" ++ }, ++ "style": { ++ "noParameterAssign": "off" ++ }, ++ "complexity": { ++ "noBannedTypes": "off" ++ }, ++ "correctness": { ++ "useExhaustiveDependencies": "off" ++ } ++ }, ++ "ignore": ["pkg/*", "dist", "test/common"] ++ }, ++ "formatter": { ++ "enabled": true, ++ "ignore": ["pkg/*", "dist", "test/common"], ++ "indentStyle": "space" ++ } + } +diff --git a/build.js b/build.js +index 924cab7..80df00f 100755 +--- a/build.js ++++ b/build.js +@@ -2,6 +2,8 @@ + + import fs from "node:fs"; + import path from "node:path"; ++import process from "node:process"; ++import os from "node:os"; + + import copy from "esbuild-plugin-copy"; + +@@ -11,10 +13,27 @@ import { cockpitPoEsbuildPlugin } from "./pkg/lib/cockpit-po-plugin.js"; + import { cockpitRsyncEsbuildPlugin } from "./pkg/lib/cockpit-rsync-plugin.js"; + import { esbuildStylesPlugins } from "./pkg/lib/esbuild-common.js"; + ++const production = process.env.NODE_ENV === "production"; + const esbuild = (await import("esbuild")).default; + +-const production = process.env.NODE_ENV === "production"; +-const watchMode = process.env.ESBUILD_WATCH === "true"; ++const parser = (await import("argparse")).default.ArgumentParser(); ++parser.add_argument("-r", "--rsync", { ++ help: "rsync bundles to ssh target after build", ++ metavar: "HOST", ++}); ++parser.add_argument("-w", "--watch", { ++ action: "store_true", ++ help: "Enable watch mode", ++ default: process.env.ESBUILD_WATCH === "true", ++}); ++parser.add_argument("-m", "--metafile", { ++ help: "Enable bundle size information file", ++ metavar: "FILE", ++}); ++const args = parser.parse_args(); ++ ++if (args.rsync) process.env.RSYNC = args.rsync; ++ + // List of directories to use when using import statements + const nodePaths = ["pkg/lib"]; + const outdir = "dist"; +@@ -23,103 +42,105 @@ const outdir = "dist"; + const packageJson = JSON.parse(fs.readFileSync("package.json")); + + function notifyEndPlugin() { +- return { +- name: "notify-end", +- setup(build) { +- let startTime; +- +- build.onStart(() => { +- startTime = new Date(); +- }); +- +- build.onEnd(() => { +- const endTime = new Date(); +- const timeStamp = endTime.toTimeString().split(" ")[0]; +- console.log( +- `${timeStamp}: Build finished in ${endTime - startTime} ms`, +- ); +- }); +- }, +- }; ++ return { ++ name: "notify-end", ++ setup(build) { ++ let startTime; ++ ++ build.onStart(() => { ++ startTime = new Date(); ++ }); ++ ++ build.onEnd(() => { ++ const endTime = new Date(); ++ const timeStamp = endTime.toTimeString().split(" ")[0]; ++ console.log( ++ `${timeStamp}: Build finished in ${endTime - startTime} ms`, ++ ); ++ }); ++ }, ++ }; + } + +-const cwd = process.cwd(); +- + // similar to fs.watch(), but recursively watches all subdirectories + function watch_dirs(dir, on_change) { +- const callback = (ev, dir, fname) => { +- // only listen for "change" events, as renames are noisy +- // ignore hidden files +- const isHidden = /^\./.test(fname); +- if (ev !== "change" || isHidden) { +- return; +- } +- on_change(path.join(dir, fname)); +- }; +- +- fs.watch(dir, {}, (ev, path) => callback(ev, dir, path)); +- +- // watch all subdirectories in dir +- const d = fs.opendirSync(dir); +- let dirent; +- +- while ((dirent = d.readSync()) !== null) { +- if (dirent.isDirectory()) +- watch_dirs(path.join(dir, dirent.name), on_change); +- } +- d.closeSync(); ++ const callback = (ev, dir, fname) => { ++ // only listen for "change" events, as renames are noisy ++ // ignore hidden files ++ const isHidden = /^\./.test(fname); ++ if (ev !== "change" || isHidden) { ++ return; ++ } ++ on_change(path.join(dir, fname)); ++ }; ++ ++ fs.watch(dir, {}, (ev, path) => callback(ev, dir, path)); ++ ++ // watch all subdirectories in dir ++ const d = fs.opendirSync(dir); ++ let dirent; ++ ++ while ((dirent = d.readSync()) !== null) { ++ if (dirent.isDirectory()) ++ watch_dirs(path.join(dir, dirent.name), on_change); ++ } ++ d.closeSync(); + } + + const context = await esbuild.context({ +- ...(!production ? { sourcemap: "linked" } : {}), +- bundle: true, +- entryPoints: ["./src/index.ts"], +- external: ["*.woff", "*.woff2", "*.jpg", "*.svg", "../../assets*"], // Allow external font files which live in ../../static/fonts +- legalComments: "external", // Move all legal comments to a .LEGAL.txt file +- loader: { ".ts": "tsx" }, +- minify: production, +- nodePaths, +- outdir, +- target: ["es2020"], +- plugins: [ +- cleanPlugin(), +- // Esbuild will only copy assets that are explicitly imported and used +- // in the code. This is a problem for index.html and manifest.json which are not imported +- copy({ +- assets: [ +- { from: ["./src/manifest.json"], to: ["./manifest.json"] }, +- { from: ["./src/index.html"], to: ["./index.html"] }, +- ], +- }), +- ...esbuildStylesPlugins, +- cockpitPoEsbuildPlugin(), +- ...(production ? [cockpitCompressPlugin()] : []), +- cockpitRsyncEsbuildPlugin({ dest: packageJson.name }), +- notifyEndPlugin(), +- ], ++ ...(!production ? { sourcemap: "linked" } : {}), ++ bundle: true, ++ entryPoints: ["./src/index.js"], ++ external: ["*.woff", "*.woff2", "*.jpg", "*.svg", "../../assets*"], // Allow external font files which live in ../../static/fonts ++ legalComments: "external", // Move all legal comments to a .LEGAL.txt file ++ loader: { ".js": "jsx" }, ++ metafile: !!args.metafile, ++ minify: production, ++ nodePaths, ++ outdir, ++ target: ["es2020"], ++ plugins: [ ++ cleanPlugin(), ++ // Esbuild will only copy assets that are explicitly imported and used ++ // in the code. This is a problem for index.html and manifest.json which are not imported ++ copy({ ++ assets: [ ++ { from: ["./src/manifest.json"], to: ["./manifest.json"] }, ++ { from: ["./src/index.html"], to: ["./index.html"] }, ++ ], ++ }), ++ ...esbuildStylesPlugins, ++ cockpitPoEsbuildPlugin(), ++ ...(production ? [cockpitCompressPlugin()] : []), ++ cockpitRsyncEsbuildPlugin({ dest: packageJson.name }), ++ notifyEndPlugin(), ++ ], + }); + + try { +- await context.rebuild(); ++ const result = await context.rebuild(); ++ if (args.metafile) { ++ fs.writeFileSync(args.metafile, JSON.stringify(result.metafile)); ++ } + } catch (e) { +- if (!watchMode) process.exit(1); +- // ignore errors in watch mode ++ if (!args.watch) process.exit(1); ++ // ignore errors in watch mode + } + +-if (watchMode) { +- const on_change = async (path) => { +- console.log("change detected:", path); +- await context.cancel(); ++if (args.watch) { ++ const on_change = async (path) => { ++ console.log("change detected:", path); ++ await context.cancel(); + +- try { +- await context.rebuild(); +- } catch (e) {} // ignore in watch mode +- }; ++ try { ++ await context.rebuild(); ++ } catch (e) {} // ignore in watch mode ++ }; + +- watch_dirs("src", on_change); ++ watch_dirs("src", on_change); + +- // wait forever until Control-C +- await new Promise(() => {}); ++ // wait forever until Control-C ++ await new Promise(() => {}); + } + + context.dispose(); +diff --git a/package-lock.json b/package-lock.json +index fe1d149..edceb9a 100644 +--- a/package-lock.json ++++ b/package-lock.json +@@ -8,36 +8,50 @@ + "hasInstallScript": true, + "license": "LGPL-2.1", + "dependencies": { +- "@patternfly/patternfly": "5.0.0-alpha.64", +- "@patternfly/react-core": "5.0.0-alpha.115", +- "@patternfly/react-icons": "5.0.0-alpha.19", +- "@patternfly/react-styles": "5.0.0-alpha.16", +- "glob": "^10.3.3", +- "react": "18.2.0", +- "react-dom": "18.2.0", ++ "@patternfly/patternfly": "5.3.1", ++ "@patternfly/react-core": "5.3.4", ++ "@patternfly/react-icons": "5.3.2", ++ "@patternfly/react-styles": "5.3.1", ++ "glob": "^11.0.0", ++ "react": "18.3.1", ++ "react-dom": "18.3.1", + "react-xml-parser": "^1.1.8" + }, + "devDependencies": { + "@babel/preset-typescript": "^7.21.4", + "@biomejs/biome": "1.8.3", +- "@types/react": "^18.0.37", +- "@types/react-dom": "^18.0.11", ++ "@types/react": "^18.3.3", ++ "@types/react-dom": "^18.3.0", ++ "@typescript-eslint/eslint-plugin": "7.17.0", + "argparse": "^2.0.1", +- "chrome-remote-interface": "^0.32.1", +- "esbuild": "^0.18.6", ++ "chrome-remote-interface": "^0.33.0", ++ "esbuild": "^0.23.0", + "esbuild-plugin-copy": "^2.1.1", +- "esbuild-plugin-replace": "^1.3.0", +- "esbuild-sass-plugin": "^2.10.0", +- "gettext-parser": "7.0.1", ++ "esbuild-plugin-replace": "^1.4.0", ++ "esbuild-sass-plugin": "^3.3.1", ++ "eslint": "^8.57.0", ++ "eslint-config-standard": "^17.1.0", ++ "eslint-config-standard-jsx": "^11.0.0", ++ "eslint-config-standard-react": "^13.0.0", ++ "eslint-plugin-import": "^2.29.1", ++ "eslint-plugin-node": "^11.1.0", ++ "eslint-plugin-promise": "^6.6.0", ++ "eslint-plugin-react": "^7.35.0", ++ "eslint-plugin-react-hooks": "^4.6.2", ++ "gettext-parser": "8.0.0", + "htmlparser": "^1.7.7", + "jed": "^1.1.1", + "patch-package": "^7.0.2", +- "qunit": "^2.9.3", +- "rome": "^12.0.0", +- "sass": "^1.61.0", ++ "qunit": "^2.21.1", ++ "sass": "^1.77.8", + "sizzle": "^2.3.3", ++ "stylelint": "16.7.0", ++ "stylelint-config-recommended-scss": "14.0.0", ++ "stylelint-config-standard": "36.0.1", ++ "stylelint-config-standard-scss": "13.1.0", ++ "stylelint-formatter-pretty": "4.0.0", + "ts-loader": "^9.4.2", +- "typescript": "^5.0.4" ++ "typescript": "5.5.3" + }, + "peerDependencies": { + "date-fns": "^2.30.0", +@@ -576,70 +590,6 @@ + "@biomejs/cli-win32-x64": "1.8.3" + } + }, +- "node_modules/@biomejs/cli-darwin-arm64": { +- "version": "1.8.3", +- "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-1.8.3.tgz", +- "integrity": "sha512-9DYOjclFpKrH/m1Oz75SSExR8VKvNSSsLnVIqdnKexj6NwmiMlKk94Wa1kZEdv6MCOHGHgyyoV57Cw8WzL5n3A==", +- "cpu": [ +- "arm64" +- ], +- "dev": true, +- "optional": true, +- "os": [ +- "darwin" +- ], +- "engines": { +- "node": ">=14.21.3" +- } +- }, +- "node_modules/@biomejs/cli-darwin-x64": { +- "version": "1.8.3", +- "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-1.8.3.tgz", +- "integrity": "sha512-UeW44L/AtbmOF7KXLCoM+9PSgPo0IDcyEUfIoOXYeANaNXXf9mLUwV1GeF2OWjyic5zj6CnAJ9uzk2LT3v/wAw==", +- "cpu": [ +- "x64" +- ], +- "dev": true, +- "optional": true, +- "os": [ +- "darwin" +- ], +- "engines": { +- "node": ">=14.21.3" +- } +- }, +- "node_modules/@biomejs/cli-linux-arm64": { +- "version": "1.8.3", +- "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-1.8.3.tgz", +- "integrity": "sha512-fed2ji8s+I/m8upWpTJGanqiJ0rnlHOK3DdxsyVLZQ8ClY6qLuPc9uehCREBifRJLl/iJyQpHIRufLDeotsPtw==", +- "cpu": [ +- "arm64" +- ], +- "dev": true, +- "optional": true, +- "os": [ +- "linux" +- ], +- "engines": { +- "node": ">=14.21.3" +- } +- }, +- "node_modules/@biomejs/cli-linux-arm64-musl": { +- "version": "1.8.3", +- "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-1.8.3.tgz", +- "integrity": "sha512-9yjUfOFN7wrYsXt/T/gEWfvVxKlnh3yBpnScw98IF+oOeCYb5/b/+K7YNqKROV2i1DlMjg9g/EcN9wvj+NkMuQ==", +- "cpu": [ +- "arm64" +- ], +- "dev": true, +- "optional": true, +- "os": [ +- "linux" +- ], +- "engines": { +- "node": ">=14.21.3" +- } +- }, + "node_modules/@biomejs/cli-linux-x64": { + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-1.8.3.tgz", +@@ -672,389 +622,274 @@ + "node": ">=14.21.3" + } + }, +- "node_modules/@biomejs/cli-win32-arm64": { +- "version": "1.8.3", +- "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-1.8.3.tgz", +- "integrity": "sha512-J+Hu9WvrBevfy06eU1Na0lpc7uR9tibm9maHynLIoAjLZpQU3IW+OKHUtyL8p6/3pT2Ju5t5emReeIS2SAxhkQ==", +- "cpu": [ +- "arm64" +- ], ++ "node_modules/@bufbuild/protobuf": { ++ "version": "1.10.0", ++ "resolved": "https://registry.npmjs.org/@bufbuild/protobuf/-/protobuf-1.10.0.tgz", ++ "integrity": "sha512-QDdVFLoN93Zjg36NoQPZfsVH9tZew7wKDKyV5qRdj8ntT4wQCOradQjRaTdwMhWUYsgKsvCINKKm87FdEk96Ag==", + "dev": true, +- "optional": true, +- "os": [ +- "win32" +- ], +- "engines": { +- "node": ">=14.21.3" +- } ++ "peer": true + }, +- "node_modules/@biomejs/cli-win32-x64": { +- "version": "1.8.3", +- "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-1.8.3.tgz", +- "integrity": "sha512-/PJ59vA1pnQeKahemaQf4Nyj7IKUvGQSc3Ze1uIGi+Wvr1xF7rGobSrAAG01T/gUDG21vkDsZYM03NAmPiVkqg==", +- "cpu": [ +- "x64" +- ], ++ "node_modules/@csstools/css-parser-algorithms": { ++ "version": "2.7.1", ++ "resolved": "https://registry.npmjs.org/@csstools/css-parser-algorithms/-/css-parser-algorithms-2.7.1.tgz", ++ "integrity": "sha512-2SJS42gxmACHgikc1WGesXLIT8d/q2l0UFM7TaEeIzdFCE/FPMtTiizcPGGJtlPo2xuQzY09OhrLTzRxqJqwGw==", + "dev": true, +- "optional": true, +- "os": [ +- "win32" ++ "funding": [ ++ { ++ "type": "github", ++ "url": "https://github.com/sponsors/csstools" ++ }, ++ { ++ "type": "opencollective", ++ "url": "https://opencollective.com/csstools" ++ } + ], + "engines": { +- "node": ">=14.21.3" ++ "node": "^14 || ^16 || >=18" ++ }, ++ "peerDependencies": { ++ "@csstools/css-tokenizer": "^2.4.1" + } + }, +- "node_modules/@esbuild/android-arm": { +- "version": "0.18.17", +- "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.17.tgz", +- "integrity": "sha512-wHsmJG/dnL3OkpAcwbgoBTTMHVi4Uyou3F5mf58ZtmUyIKfcdA7TROav/6tCzET4A3QW2Q2FC+eFneMU+iyOxg==", +- "cpu": [ +- "arm" +- ], ++ "node_modules/@csstools/css-tokenizer": { ++ "version": "2.4.1", ++ "resolved": "https://registry.npmjs.org/@csstools/css-tokenizer/-/css-tokenizer-2.4.1.tgz", ++ "integrity": "sha512-eQ9DIktFJBhGjioABJRtUucoWR2mwllurfnM8LuNGAqX3ViZXaUchqk+1s7jjtkFiT9ySdACsFEA3etErkALUg==", + "dev": true, +- "optional": true, +- "os": [ +- "android" ++ "funding": [ ++ { ++ "type": "github", ++ "url": "https://github.com/sponsors/csstools" ++ }, ++ { ++ "type": "opencollective", ++ "url": "https://opencollective.com/csstools" ++ } + ], + "engines": { +- "node": ">=12" ++ "node": "^14 || ^16 || >=18" + } + }, +- "node_modules/@esbuild/android-arm64": { +- "version": "0.18.17", +- "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.18.17.tgz", +- "integrity": "sha512-9np+YYdNDed5+Jgr1TdWBsozZ85U1Oa3xW0c7TWqH0y2aGghXtZsuT8nYRbzOMcl0bXZXjOGbksoTtVOlWrRZg==", +- "cpu": [ +- "arm64" +- ], ++ "node_modules/@csstools/media-query-list-parser": { ++ "version": "2.1.13", ++ "resolved": "https://registry.npmjs.org/@csstools/media-query-list-parser/-/media-query-list-parser-2.1.13.tgz", ++ "integrity": "sha512-XaHr+16KRU9Gf8XLi3q8kDlI18d5vzKSKCY510Vrtc9iNR0NJzbY9hhTmwhzYZj/ZwGL4VmB3TA9hJW0Um2qFA==", + "dev": true, +- "optional": true, +- "os": [ +- "android" ++ "funding": [ ++ { ++ "type": "github", ++ "url": "https://github.com/sponsors/csstools" ++ }, ++ { ++ "type": "opencollective", ++ "url": "https://opencollective.com/csstools" ++ } + ], + "engines": { +- "node": ">=12" ++ "node": "^14 || ^16 || >=18" ++ }, ++ "peerDependencies": { ++ "@csstools/css-parser-algorithms": "^2.7.1", ++ "@csstools/css-tokenizer": "^2.4.1" + } + }, +- "node_modules/@esbuild/android-x64": { +- "version": "0.18.17", +- "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.18.17.tgz", +- "integrity": "sha512-O+FeWB/+xya0aLg23hHEM2E3hbfwZzjqumKMSIqcHbNvDa+dza2D0yLuymRBQQnC34CWrsJUXyH2MG5VnLd6uw==", +- "cpu": [ +- "x64" +- ], ++ "node_modules/@csstools/selector-specificity": { ++ "version": "3.1.1", ++ "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-3.1.1.tgz", ++ "integrity": "sha512-a7cxGcJ2wIlMFLlh8z2ONm+715QkPHiyJcxwQlKOz/03GPw1COpfhcmC9wm4xlZfp//jWHNNMwzjtqHXVWU9KA==", + "dev": true, +- "optional": true, +- "os": [ +- "android" ++ "funding": [ ++ { ++ "type": "github", ++ "url": "https://github.com/sponsors/csstools" ++ }, ++ { ++ "type": "opencollective", ++ "url": "https://opencollective.com/csstools" ++ } + ], + "engines": { +- "node": ">=12" ++ "node": "^14 || ^16 || >=18" ++ }, ++ "peerDependencies": { ++ "postcss-selector-parser": "^6.0.13" + } + }, +- "node_modules/@esbuild/darwin-arm64": { +- "version": "0.18.17", +- "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.18.17.tgz", +- "integrity": "sha512-M9uJ9VSB1oli2BE/dJs3zVr9kcCBBsE883prage1NWz6pBS++1oNn/7soPNS3+1DGj0FrkSvnED4Bmlu1VAE9g==", +- "cpu": [ +- "arm64" +- ], ++ "node_modules/@dual-bundle/import-meta-resolve": { ++ "version": "4.1.0", ++ "resolved": "https://registry.npmjs.org/@dual-bundle/import-meta-resolve/-/import-meta-resolve-4.1.0.tgz", ++ "integrity": "sha512-+nxncfwHM5SgAtrVzgpzJOI1ol0PkumhVo469KCf9lUi21IGcY90G98VuHm9VRrUypmAzawAHO9bs6hqeADaVg==", + "dev": true, +- "optional": true, +- "os": [ +- "darwin" +- ], +- "engines": { +- "node": ">=12" ++ "funding": { ++ "type": "github", ++ "url": "https://github.com/sponsors/wooorm" + } + }, +- "node_modules/@esbuild/darwin-x64": { +- "version": "0.18.17", +- "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.18.17.tgz", +- "integrity": "sha512-XDre+J5YeIJDMfp3n0279DFNrGCXlxOuGsWIkRb1NThMZ0BsrWXoTg23Jer7fEXQ9Ye5QjrvXpxnhzl3bHtk0g==", ++ "node_modules/@esbuild/linux-x64": { ++ "version": "0.23.0", ++ "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.23.0.tgz", ++ "integrity": "sha512-a3pMQhUEJkITgAw6e0bWA+F+vFtCciMjW/LPtoj99MhVt+Mfb6bbL9hu2wmTZgNd994qTAEw+U/r6k3qHWWaOQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ +- "darwin" ++ "linux" + ], + "engines": { +- "node": ">=12" ++ "node": ">=18" + } + }, +- "node_modules/@esbuild/freebsd-arm64": { +- "version": "0.18.17", +- "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.17.tgz", +- "integrity": "sha512-cjTzGa3QlNfERa0+ptykyxs5A6FEUQQF0MuilYXYBGdBxD3vxJcKnzDlhDCa1VAJCmAxed6mYhA2KaJIbtiNuQ==", +- "cpu": [ +- "arm64" +- ], ++ "node_modules/@eslint-community/eslint-utils": { ++ "version": "4.4.0", ++ "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", ++ "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", + "dev": true, +- "optional": true, +- "os": [ +- "freebsd" +- ], ++ "dependencies": { ++ "eslint-visitor-keys": "^3.3.0" ++ }, + "engines": { +- "node": ">=12" ++ "node": "^12.22.0 || ^14.17.0 || >=16.0.0" ++ }, ++ "peerDependencies": { ++ "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" + } + }, +- "node_modules/@esbuild/freebsd-x64": { +- "version": "0.18.17", +- "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.18.17.tgz", +- "integrity": "sha512-sOxEvR8d7V7Kw8QqzxWc7bFfnWnGdaFBut1dRUYtu+EIRXefBc/eIsiUiShnW0hM3FmQ5Zf27suDuHsKgZ5QrA==", +- "cpu": [ +- "x64" +- ], ++ "node_modules/@eslint-community/regexpp": { ++ "version": "4.11.0", ++ "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.11.0.tgz", ++ "integrity": "sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A==", + "dev": true, +- "optional": true, +- "os": [ +- "freebsd" +- ], + "engines": { +- "node": ">=12" ++ "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, +- "node_modules/@esbuild/linux-arm": { +- "version": "0.18.17", +- "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.18.17.tgz", +- "integrity": "sha512-2d3Lw6wkwgSLC2fIvXKoMNGVaeY8qdN0IC3rfuVxJp89CRfA3e3VqWifGDfuakPmp90+ZirmTfye1n4ncjv2lg==", +- "cpu": [ +- "arm" +- ], ++ "node_modules/@eslint/eslintrc": { ++ "version": "2.1.4", ++ "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz", ++ "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==", + "dev": true, +- "optional": true, +- "os": [ +- "linux" +- ], ++ "dependencies": { ++ "ajv": "^6.12.4", ++ "debug": "^4.3.2", ++ "espree": "^9.6.0", ++ "globals": "^13.19.0", ++ "ignore": "^5.2.0", ++ "import-fresh": "^3.2.1", ++ "js-yaml": "^4.1.0", ++ "minimatch": "^3.1.2", ++ "strip-json-comments": "^3.1.1" ++ }, + "engines": { +- "node": ">=12" ++ "node": "^12.22.0 || ^14.17.0 || >=16.0.0" ++ }, ++ "funding": { ++ "url": "https://opencollective.com/eslint" + } + }, +- "node_modules/@esbuild/linux-arm64": { +- "version": "0.18.17", +- "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.18.17.tgz", +- "integrity": "sha512-c9w3tE7qA3CYWjT+M3BMbwMt+0JYOp3vCMKgVBrCl1nwjAlOMYzEo+gG7QaZ9AtqZFj5MbUc885wuBBmu6aADQ==", +- "cpu": [ +- "arm64" +- ], ++ "node_modules/@eslint/eslintrc/node_modules/brace-expansion": { ++ "version": "1.1.11", ++ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", ++ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, +- "optional": true, +- "os": [ +- "linux" +- ], +- "engines": { +- "node": ">=12" ++ "dependencies": { ++ "balanced-match": "^1.0.0", ++ "concat-map": "0.0.1" + } + }, +- "node_modules/@esbuild/linux-ia32": { +- "version": "0.18.17", +- "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.18.17.tgz", +- "integrity": "sha512-1DS9F966pn5pPnqXYz16dQqWIB0dmDfAQZd6jSSpiT9eX1NzKh07J6VKR3AoXXXEk6CqZMojiVDSZi1SlmKVdg==", +- "cpu": [ +- "ia32" +- ], ++ "node_modules/@eslint/eslintrc/node_modules/globals": { ++ "version": "13.24.0", ++ "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", ++ "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", + "dev": true, +- "optional": true, +- "os": [ +- "linux" +- ], ++ "dependencies": { ++ "type-fest": "^0.20.2" ++ }, + "engines": { +- "node": ">=12" ++ "node": ">=8" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/sindresorhus" + } + }, +- "node_modules/@esbuild/linux-loong64": { +- "version": "0.18.17", +- "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.18.17.tgz", +- "integrity": "sha512-EvLsxCk6ZF0fpCB6w6eOI2Fc8KW5N6sHlIovNe8uOFObL2O+Mr0bflPHyHwLT6rwMg9r77WOAWb2FqCQrVnwFg==", +- "cpu": [ +- "loong64" +- ], ++ "node_modules/@eslint/eslintrc/node_modules/minimatch": { ++ "version": "3.1.2", ++ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", ++ "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, +- "optional": true, +- "os": [ +- "linux" +- ], ++ "dependencies": { ++ "brace-expansion": "^1.1.7" ++ }, + "engines": { +- "node": ">=12" ++ "node": "*" + } + }, +- "node_modules/@esbuild/linux-mips64el": { +- "version": "0.18.17", +- "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.18.17.tgz", +- "integrity": "sha512-e0bIdHA5p6l+lwqTE36NAW5hHtw2tNRmHlGBygZC14QObsA3bD4C6sXLJjvnDIjSKhW1/0S3eDy+QmX/uZWEYQ==", +- "cpu": [ +- "mips64el" +- ], ++ "node_modules/@eslint/js": { ++ "version": "8.57.0", ++ "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.0.tgz", ++ "integrity": "sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==", + "dev": true, +- "optional": true, +- "os": [ +- "linux" +- ], + "engines": { +- "node": ">=12" ++ "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, +- "node_modules/@esbuild/linux-ppc64": { +- "version": "0.18.17", +- "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.18.17.tgz", +- "integrity": "sha512-BAAilJ0M5O2uMxHYGjFKn4nJKF6fNCdP1E0o5t5fvMYYzeIqy2JdAP88Az5LHt9qBoUa4tDaRpfWt21ep5/WqQ==", +- "cpu": [ +- "ppc64" +- ], ++ "node_modules/@humanwhocodes/config-array": { ++ "version": "0.11.14", ++ "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.14.tgz", ++ "integrity": "sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==", ++ "deprecated": "Use @eslint/config-array instead", + "dev": true, +- "optional": true, +- "os": [ +- "linux" +- ], ++ "dependencies": { ++ "@humanwhocodes/object-schema": "^2.0.2", ++ "debug": "^4.3.1", ++ "minimatch": "^3.0.5" ++ }, + "engines": { +- "node": ">=12" ++ "node": ">=10.10.0" + } + }, +- "node_modules/@esbuild/linux-riscv64": { +- "version": "0.18.17", +- "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.18.17.tgz", +- "integrity": "sha512-Wh/HW2MPnC3b8BqRSIme/9Zhab36PPH+3zam5pqGRH4pE+4xTrVLx2+XdGp6fVS3L2x+DrsIcsbMleex8fbE6g==", +- "cpu": [ +- "riscv64" +- ], ++ "node_modules/@humanwhocodes/config-array/node_modules/brace-expansion": { ++ "version": "1.1.11", ++ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", ++ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, +- "optional": true, +- "os": [ +- "linux" +- ], +- "engines": { +- "node": ">=12" ++ "dependencies": { ++ "balanced-match": "^1.0.0", ++ "concat-map": "0.0.1" + } + }, +- "node_modules/@esbuild/linux-s390x": { +- "version": "0.18.17", +- "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.18.17.tgz", +- "integrity": "sha512-j/34jAl3ul3PNcK3pfI0NSlBANduT2UO5kZ7FCaK33XFv3chDhICLY8wJJWIhiQ+YNdQ9dxqQctRg2bvrMlYgg==", +- "cpu": [ +- "s390x" +- ], ++ "node_modules/@humanwhocodes/config-array/node_modules/minimatch": { ++ "version": "3.1.2", ++ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", ++ "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, +- "optional": true, +- "os": [ +- "linux" +- ], ++ "dependencies": { ++ "brace-expansion": "^1.1.7" ++ }, + "engines": { +- "node": ">=12" ++ "node": "*" + } + }, +- "node_modules/@esbuild/linux-x64": { +- "version": "0.18.17", +- "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.18.17.tgz", +- "integrity": "sha512-QM50vJ/y+8I60qEmFxMoxIx4de03pGo2HwxdBeFd4nMh364X6TIBZ6VQ5UQmPbQWUVWHWws5MmJXlHAXvJEmpQ==", +- "cpu": [ +- "x64" +- ], ++ "node_modules/@humanwhocodes/module-importer": { ++ "version": "1.0.1", ++ "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", ++ "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "dev": true, +- "optional": true, +- "os": [ +- "linux" +- ], + "engines": { +- "node": ">=12" +- } +- }, +- "node_modules/@esbuild/netbsd-x64": { +- "version": "0.18.17", +- "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.18.17.tgz", +- "integrity": "sha512-/jGlhWR7Sj9JPZHzXyyMZ1RFMkNPjC6QIAan0sDOtIo2TYk3tZn5UDrkE0XgsTQCxWTTOcMPf9p6Rh2hXtl5TQ==", +- "cpu": [ +- "x64" +- ], +- "dev": true, +- "optional": true, +- "os": [ +- "netbsd" +- ], +- "engines": { +- "node": ">=12" +- } +- }, +- "node_modules/@esbuild/openbsd-x64": { +- "version": "0.18.17", +- "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.18.17.tgz", +- "integrity": "sha512-rSEeYaGgyGGf4qZM2NonMhMOP/5EHp4u9ehFiBrg7stH6BYEEjlkVREuDEcQ0LfIl53OXLxNbfuIj7mr5m29TA==", +- "cpu": [ +- "x64" +- ], +- "dev": true, +- "optional": true, +- "os": [ +- "openbsd" +- ], +- "engines": { +- "node": ">=12" +- } +- }, +- "node_modules/@esbuild/sunos-x64": { +- "version": "0.18.17", +- "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.18.17.tgz", +- "integrity": "sha512-Y7ZBbkLqlSgn4+zot4KUNYst0bFoO68tRgI6mY2FIM+b7ZbyNVtNbDP5y8qlu4/knZZ73fgJDlXID+ohY5zt5g==", +- "cpu": [ +- "x64" +- ], +- "dev": true, +- "optional": true, +- "os": [ +- "sunos" +- ], +- "engines": { +- "node": ">=12" +- } +- }, +- "node_modules/@esbuild/win32-arm64": { +- "version": "0.18.17", +- "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.18.17.tgz", +- "integrity": "sha512-bwPmTJsEQcbZk26oYpc4c/8PvTY3J5/QK8jM19DVlEsAB41M39aWovWoHtNm78sd6ip6prilxeHosPADXtEJFw==", +- "cpu": [ +- "arm64" +- ], +- "dev": true, +- "optional": true, +- "os": [ +- "win32" +- ], +- "engines": { +- "node": ">=12" +- } +- }, +- "node_modules/@esbuild/win32-ia32": { +- "version": "0.18.17", +- "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.18.17.tgz", +- "integrity": "sha512-H/XaPtPKli2MhW+3CQueo6Ni3Avggi6hP/YvgkEe1aSaxw+AeO8MFjq8DlgfTd9Iz4Yih3QCZI6YLMoyccnPRg==", +- "cpu": [ +- "ia32" +- ], +- "dev": true, +- "optional": true, +- "os": [ +- "win32" +- ], +- "engines": { +- "node": ">=12" ++ "node": ">=12.22" ++ }, ++ "funding": { ++ "type": "github", ++ "url": "https://github.com/sponsors/nzakas" + } + }, +- "node_modules/@esbuild/win32-x64": { +- "version": "0.18.17", +- "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.18.17.tgz", +- "integrity": "sha512-fGEb8f2BSA3CW7riJVurug65ACLuQAzKq0SSqkY2b2yHHH0MzDfbLyKIGzHwOI/gkHcxM/leuSW6D5w/LMNitA==", +- "cpu": [ +- "x64" +- ], +- "dev": true, +- "optional": true, +- "os": [ +- "win32" +- ], +- "engines": { +- "node": ">=12" +- } ++ "node_modules/@humanwhocodes/object-schema": { ++ "version": "2.0.3", ++ "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz", ++ "integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==", ++ "deprecated": "Use @eslint/object-schema instead", ++ "dev": true + }, + "node_modules/@isaacs/cliui": { + "version": "8.0.2", +@@ -1179,19 +1014,19 @@ + } + }, + "node_modules/@patternfly/patternfly": { +- "version": "5.0.0-alpha.64", +- "resolved": "https://registry.npmjs.org/@patternfly/patternfly/-/patternfly-5.0.0-alpha.64.tgz", +- "integrity": "sha512-VJOCpS/WyhjkKqoaCo3usQxoXAj90p81NDHDE3/4/xTUYb53xNNXDJ1YwkPkG0RDvs6DaS9U/hEmu1AbCa9VEw==" ++ "version": "5.3.1", ++ "resolved": "https://registry.npmjs.org/@patternfly/patternfly/-/patternfly-5.3.1.tgz", ++ "integrity": "sha512-KYIr9pKRTzHZNGuDuaa5j5CaZyLltvotPFGG1BiJalBDBGSOyk0BZCgHLowm4txKZXrLhorEuuv9XLrMQL8eoA==" + }, + "node_modules/@patternfly/react-core": { +- "version": "5.0.0-alpha.115", +- "resolved": "https://registry.npmjs.org/@patternfly/react-core/-/react-core-5.0.0-alpha.115.tgz", +- "integrity": "sha512-hkpu7KbUeMGukuF34QxOuTHUd5EnVuhH5VZ0S9IaOrgRiXnK/xZsf5YQPj/2TL4lx8QOPiOOzDzvxLgpNSYaBQ==", +- "dependencies": { +- "@patternfly/react-icons": "^5.0.0-alpha.19", +- "@patternfly/react-styles": "^5.0.0-alpha.16", +- "@patternfly/react-tokens": "^5.0.0-alpha.14", +- "focus-trap": "7.4.2", ++ "version": "5.3.4", ++ "resolved": "https://registry.npmjs.org/@patternfly/react-core/-/react-core-5.3.4.tgz", ++ "integrity": "sha512-zr2yeilIoFp8MFOo0vNgI8XuM+P2466zHvy4smyRNRH2/but2WObqx7Wu4ftd/eBMYdNqmTeuXe6JeqqRqnPMQ==", ++ "dependencies": { ++ "@patternfly/react-icons": "^5.3.2", ++ "@patternfly/react-styles": "^5.3.1", ++ "@patternfly/react-tokens": "^5.3.1", ++ "focus-trap": "7.5.2", + "react-dropzone": "^14.2.3", + "tslib": "^2.5.0" + }, +@@ -1201,23 +1036,23 @@ + } + }, + "node_modules/@patternfly/react-icons": { +- "version": "5.0.0-alpha.19", +- "resolved": "https://registry.npmjs.org/@patternfly/react-icons/-/react-icons-5.0.0-alpha.19.tgz", +- "integrity": "sha512-jyVSK6f9ueIO+pI2K2njI/4qdQR9WK953IUJtQ6PtNhLHKsAHOnqwHjBUrqxWOBZ+ty5MpqHPoB9Yd34i8vcxg==", ++ "version": "5.3.2", ++ "resolved": "https://registry.npmjs.org/@patternfly/react-icons/-/react-icons-5.3.2.tgz", ++ "integrity": "sha512-GEygYbl0H4zD8nZuTQy2dayKIrV2bMMeWKSOEZ16Y3EYNgYVUOUnN+J0naAEuEGH39Xb1DE9n+XUbE1PC4CxPA==", + "peerDependencies": { + "react": "^17 || ^18", + "react-dom": "^17 || ^18" + } + }, + "node_modules/@patternfly/react-styles": { +- "version": "5.0.0-alpha.16", +- "resolved": "https://registry.npmjs.org/@patternfly/react-styles/-/react-styles-5.0.0-alpha.16.tgz", +- "integrity": "sha512-RxU8sSKY0tM40xZwk+BR5vWotP+LZOH2vqdNFEIT7a1+1Kr9qSm5ktq34gnzK0nyWUaH08qL9da4HVo3/O+R4A==" ++ "version": "5.3.1", ++ "resolved": "https://registry.npmjs.org/@patternfly/react-styles/-/react-styles-5.3.1.tgz", ++ "integrity": "sha512-H6uBoFH3bJjD6PP75qZ4k+2TtF59vxf9sIVerPpwrGJcRgBZbvbMZCniSC3+S2LQ8DgXLnDvieq78jJzHz0hiA==" + }, + "node_modules/@patternfly/react-tokens": { +- "version": "5.0.0-prerelease.9", +- "resolved": "https://registry.npmjs.org/@patternfly/react-tokens/-/react-tokens-5.0.0-prerelease.9.tgz", +- "integrity": "sha512-x3kJolPS95LJSiS2n3T9KL6MNjtuM9qKKzbqK1nkiftAytubcoQ9O7ikEjDYiILHpupo5lG5H9Cr50kAwu1rsA==" ++ "version": "5.3.1", ++ "resolved": "https://registry.npmjs.org/@patternfly/react-tokens/-/react-tokens-5.3.1.tgz", ++ "integrity": "sha512-VYK0uVP2/2RJ7ZshJCCLeq0Boih5I1bv+9Z/Bg6h12dCkLs85XsxAX9Ve+BGIo5DF54/mzcRHE1RKYap4ISXuw==" + }, + "node_modules/@pkgjs/parseargs": { + "version": "0.11.0", +@@ -1228,84 +1063,6 @@ + "node": ">=14" + } + }, +- "node_modules/@rometools/cli-darwin-arm64": { +- "version": "12.1.3", +- "resolved": "https://registry.npmjs.org/@rometools/cli-darwin-arm64/-/cli-darwin-arm64-12.1.3.tgz", +- "integrity": "sha512-AmFTUDYjBuEGQp/Wwps+2cqUr+qhR7gyXAUnkL5psCuNCz3807TrUq/ecOoct5MIavGJTH6R4aaSL6+f+VlBEg==", +- "cpu": [ +- "arm64" +- ], +- "dev": true, +- "optional": true, +- "os": [ +- "darwin" +- ] +- }, +- "node_modules/@rometools/cli-darwin-x64": { +- "version": "12.1.3", +- "resolved": "https://registry.npmjs.org/@rometools/cli-darwin-x64/-/cli-darwin-x64-12.1.3.tgz", +- "integrity": "sha512-k8MbWna8q4LRlb005N2X+JS1UQ+s3ZLBBvwk4fP8TBxlAJXUz17jLLu/Fi+7DTTEmMhM84TWj4FDKW+rNar28g==", +- "cpu": [ +- "x64" +- ], +- "dev": true, +- "optional": true, +- "os": [ +- "darwin" +- ] +- }, +- "node_modules/@rometools/cli-linux-arm64": { +- "version": "12.1.3", +- "resolved": "https://registry.npmjs.org/@rometools/cli-linux-arm64/-/cli-linux-arm64-12.1.3.tgz", +- "integrity": "sha512-X/uLhJ2/FNA3nu5TiyeNPqiD3OZoFfNfRvw6a3ut0jEREPvEn72NI7WPijH/gxSz55znfQ7UQ6iM4DZumUknJg==", +- "cpu": [ +- "arm64" +- ], +- "dev": true, +- "optional": true, +- "os": [ +- "linux" +- ] +- }, +- "node_modules/@rometools/cli-linux-x64": { +- "version": "12.1.3", +- "resolved": "https://registry.npmjs.org/@rometools/cli-linux-x64/-/cli-linux-x64-12.1.3.tgz", +- "integrity": "sha512-csP17q1eWiUXx9z6Jr/JJPibkplyKIwiWPYNzvPCGE8pHlKhwZj3YHRuu7Dm/4EOqx0XFIuqqWZUYm9bkIC8xg==", +- "cpu": [ +- "x64" +- ], +- "dev": true, +- "optional": true, +- "os": [ +- "linux" +- ] +- }, +- "node_modules/@rometools/cli-win32-arm64": { +- "version": "12.1.3", +- "resolved": "https://registry.npmjs.org/@rometools/cli-win32-arm64/-/cli-win32-arm64-12.1.3.tgz", +- "integrity": "sha512-RymHWeod57EBOJY4P636CgUwYA6BQdkQjh56XKk4pLEHO6X1bFyMet2XL7KlHw5qOTalzuzf5jJqUs+vf3jdXQ==", +- "cpu": [ +- "arm64" +- ], +- "dev": true, +- "optional": true, +- "os": [ +- "win32" +- ] +- }, +- "node_modules/@rometools/cli-win32-x64": { +- "version": "12.1.3", +- "resolved": "https://registry.npmjs.org/@rometools/cli-win32-x64/-/cli-win32-x64-12.1.3.tgz", +- "integrity": "sha512-yHSKYidqJMV9nADqg78GYA+cZ0hS1twANAjiFibQdXj9aGzD+s/IzIFEIi/U/OBLvWYg/SCw0QVozi2vTlKFDQ==", +- "cpu": [ +- "x64" +- ], +- "dev": true, +- "optional": true, +- "os": [ +- "win32" +- ] +- }, + "node_modules/@types/eslint": { + "version": "8.44.1", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.44.1.tgz", +@@ -1342,6 +1099,12 @@ + "dev": true, + "peer": true + }, ++ "node_modules/@types/json5": { ++ "version": "0.0.29", ++ "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", ++ "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", ++ "dev": true ++ }, + "node_modules/@types/node": { + "version": "20.4.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.4.5.tgz", +@@ -1356,29 +1119,226 @@ + "dev": true + }, + "node_modules/@types/react": { +- "version": "18.2.17", +- "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.17.tgz", +- "integrity": "sha512-u+e7OlgPPh+aryjOm5UJMX32OvB2E3QASOAqVMY6Ahs90djagxwv2ya0IctglNbNTexC12qCSMZG47KPfy1hAA==", ++ "version": "18.3.3", ++ "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.3.tgz", ++ "integrity": "sha512-hti/R0pS0q1/xx+TsI73XIqk26eBsISZ2R0wUijXIngRK9R/e7Xw/cXVxQK7R5JjW+SV4zGcn5hXjudkN/pLIw==", + "dev": true, + "dependencies": { + "@types/prop-types": "*", +- "@types/scheduler": "*", + "csstype": "^3.0.2" + } + }, + "node_modules/@types/react-dom": { +- "version": "18.2.7", +- "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.2.7.tgz", +- "integrity": "sha512-GRaAEriuT4zp9N4p1i8BDBYmEyfo+xQ3yHjJU4eiK5NDa1RmUZG+unZABUTK4/Ox/M+GaHwb6Ow8rUITrtjszA==", ++ "version": "18.3.0", ++ "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.3.0.tgz", ++ "integrity": "sha512-EhwApuTmMBmXuFOikhQLIBUn6uFg81SwLMOAUgodJF14SOBOCMdU04gDoYi0WOJJHD144TL32z4yDqCW3dnkQg==", + "dev": true, + "dependencies": { + "@types/react": "*" + } + }, +- "node_modules/@types/scheduler": { +- "version": "0.16.3", +- "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.3.tgz", +- "integrity": "sha512-5cJ8CB4yAx7BH1oMvdU0Jh9lrEXyPkar6F9G/ERswkCuvP4KQZfZkSjcMbAICCpQTN4OuZn8tz0HiKv9TGZgrQ==", ++ "node_modules/@typescript-eslint/eslint-plugin": { ++ "version": "7.17.0", ++ "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.17.0.tgz", ++ "integrity": "sha512-pyiDhEuLM3PuANxH7uNYan1AaFs5XE0zw1hq69JBvGvE7gSuEoQl1ydtEe/XQeoC3GQxLXyOVa5kNOATgM638A==", ++ "dev": true, ++ "dependencies": { ++ "@eslint-community/regexpp": "^4.10.0", ++ "@typescript-eslint/scope-manager": "7.17.0", ++ "@typescript-eslint/type-utils": "7.17.0", ++ "@typescript-eslint/utils": "7.17.0", ++ "@typescript-eslint/visitor-keys": "7.17.0", ++ "graphemer": "^1.4.0", ++ "ignore": "^5.3.1", ++ "natural-compare": "^1.4.0", ++ "ts-api-utils": "^1.3.0" ++ }, ++ "engines": { ++ "node": "^18.18.0 || >=20.0.0" ++ }, ++ "funding": { ++ "type": "opencollective", ++ "url": "https://opencollective.com/typescript-eslint" ++ }, ++ "peerDependencies": { ++ "@typescript-eslint/parser": "^7.0.0", ++ "eslint": "^8.56.0" ++ }, ++ "peerDependenciesMeta": { ++ "typescript": { ++ "optional": true ++ } ++ } ++ }, ++ "node_modules/@typescript-eslint/parser": { ++ "version": "7.17.0", ++ "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-7.17.0.tgz", ++ "integrity": "sha512-puiYfGeg5Ydop8eusb/Hy1k7QmOU6X3nvsqCgzrB2K4qMavK//21+PzNE8qeECgNOIoertJPUC1SpegHDI515A==", ++ "dev": true, ++ "peer": true, ++ "dependencies": { ++ "@typescript-eslint/scope-manager": "7.17.0", ++ "@typescript-eslint/types": "7.17.0", ++ "@typescript-eslint/typescript-estree": "7.17.0", ++ "@typescript-eslint/visitor-keys": "7.17.0", ++ "debug": "^4.3.4" ++ }, ++ "engines": { ++ "node": "^18.18.0 || >=20.0.0" ++ }, ++ "funding": { ++ "type": "opencollective", ++ "url": "https://opencollective.com/typescript-eslint" ++ }, ++ "peerDependencies": { ++ "eslint": "^8.56.0" ++ }, ++ "peerDependenciesMeta": { ++ "typescript": { ++ "optional": true ++ } ++ } ++ }, ++ "node_modules/@typescript-eslint/scope-manager": { ++ "version": "7.17.0", ++ "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.17.0.tgz", ++ "integrity": "sha512-0P2jTTqyxWp9HiKLu/Vemr2Rg1Xb5B7uHItdVZ6iAenXmPo4SZ86yOPCJwMqpCyaMiEHTNqizHfsbmCFT1x9SA==", ++ "dev": true, ++ "dependencies": { ++ "@typescript-eslint/types": "7.17.0", ++ "@typescript-eslint/visitor-keys": "7.17.0" ++ }, ++ "engines": { ++ "node": "^18.18.0 || >=20.0.0" ++ }, ++ "funding": { ++ "type": "opencollective", ++ "url": "https://opencollective.com/typescript-eslint" ++ } ++ }, ++ "node_modules/@typescript-eslint/type-utils": { ++ "version": "7.17.0", ++ "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-7.17.0.tgz", ++ "integrity": "sha512-XD3aaBt+orgkM/7Cei0XNEm1vwUxQ958AOLALzPlbPqb8C1G8PZK85tND7Jpe69Wualri81PLU+Zc48GVKIMMA==", ++ "dev": true, ++ "dependencies": { ++ "@typescript-eslint/typescript-estree": "7.17.0", ++ "@typescript-eslint/utils": "7.17.0", ++ "debug": "^4.3.4", ++ "ts-api-utils": "^1.3.0" ++ }, ++ "engines": { ++ "node": "^18.18.0 || >=20.0.0" ++ }, ++ "funding": { ++ "type": "opencollective", ++ "url": "https://opencollective.com/typescript-eslint" ++ }, ++ "peerDependencies": { ++ "eslint": "^8.56.0" ++ }, ++ "peerDependenciesMeta": { ++ "typescript": { ++ "optional": true ++ } ++ } ++ }, ++ "node_modules/@typescript-eslint/types": { ++ "version": "7.17.0", ++ "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.17.0.tgz", ++ "integrity": "sha512-a29Ir0EbyKTKHnZWbNsrc/gqfIBqYPwj3F2M+jWE/9bqfEHg0AMtXzkbUkOG6QgEScxh2+Pz9OXe11jHDnHR7A==", ++ "dev": true, ++ "engines": { ++ "node": "^18.18.0 || >=20.0.0" ++ }, ++ "funding": { ++ "type": "opencollective", ++ "url": "https://opencollective.com/typescript-eslint" ++ } ++ }, ++ "node_modules/@typescript-eslint/typescript-estree": { ++ "version": "7.17.0", ++ "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.17.0.tgz", ++ "integrity": "sha512-72I3TGq93t2GoSBWI093wmKo0n6/b7O4j9o8U+f65TVD0FS6bI2180X5eGEr8MA8PhKMvYe9myZJquUT2JkCZw==", ++ "dev": true, ++ "dependencies": { ++ "@typescript-eslint/types": "7.17.0", ++ "@typescript-eslint/visitor-keys": "7.17.0", ++ "debug": "^4.3.4", ++ "globby": "^11.1.0", ++ "is-glob": "^4.0.3", ++ "minimatch": "^9.0.4", ++ "semver": "^7.6.0", ++ "ts-api-utils": "^1.3.0" ++ }, ++ "engines": { ++ "node": "^18.18.0 || >=20.0.0" ++ }, ++ "funding": { ++ "type": "opencollective", ++ "url": "https://opencollective.com/typescript-eslint" ++ }, ++ "peerDependenciesMeta": { ++ "typescript": { ++ "optional": true ++ } ++ } ++ }, ++ "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { ++ "version": "7.6.3", ++ "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", ++ "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", ++ "dev": true, ++ "bin": { ++ "semver": "bin/semver.js" ++ }, ++ "engines": { ++ "node": ">=10" ++ } ++ }, ++ "node_modules/@typescript-eslint/utils": { ++ "version": "7.17.0", ++ "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.17.0.tgz", ++ "integrity": "sha512-r+JFlm5NdB+JXc7aWWZ3fKSm1gn0pkswEwIYsrGPdsT2GjsRATAKXiNtp3vgAAO1xZhX8alIOEQnNMl3kbTgJw==", ++ "dev": true, ++ "dependencies": { ++ "@eslint-community/eslint-utils": "^4.4.0", ++ "@typescript-eslint/scope-manager": "7.17.0", ++ "@typescript-eslint/types": "7.17.0", ++ "@typescript-eslint/typescript-estree": "7.17.0" ++ }, ++ "engines": { ++ "node": "^18.18.0 || >=20.0.0" ++ }, ++ "funding": { ++ "type": "opencollective", ++ "url": "https://opencollective.com/typescript-eslint" ++ }, ++ "peerDependencies": { ++ "eslint": "^8.56.0" ++ } ++ }, ++ "node_modules/@typescript-eslint/visitor-keys": { ++ "version": "7.17.0", ++ "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.17.0.tgz", ++ "integrity": "sha512-RVGC9UhPOCsfCdI9pU++K4nD7to+jTcMIbXTSOcrLqUEW6gF2pU1UUbYJKc9cvcRSK1UDeMJ7pdMxf4bhMpV/A==", ++ "dev": true, ++ "dependencies": { ++ "@typescript-eslint/types": "7.17.0", ++ "eslint-visitor-keys": "^3.4.3" ++ }, ++ "engines": { ++ "node": "^18.18.0 || >=20.0.0" ++ }, ++ "funding": { ++ "type": "opencollective", ++ "url": "https://opencollective.com/typescript-eslint" ++ } ++ }, ++ "node_modules/@ungap/structured-clone": { ++ "version": "1.2.0", ++ "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", ++ "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==", + "dev": true + }, + "node_modules/@webassemblyjs/ast": { +@@ -1579,7 +1539,6 @@ + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz", + "integrity": "sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==", + "dev": true, +- "peer": true, + "bin": { + "acorn": "bin/acorn" + }, +@@ -1597,12 +1556,20 @@ + "acorn": "^8" + } + }, ++ "node_modules/acorn-jsx": { ++ "version": "5.3.2", ++ "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", ++ "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", ++ "dev": true, ++ "peerDependencies": { ++ "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" ++ } ++ }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, +- "peer": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", +@@ -1624,6 +1591,18 @@ + "ajv": "^6.9.1" + } + }, ++ "node_modules/ansi-escapes": { ++ "version": "6.2.1", ++ "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-6.2.1.tgz", ++ "integrity": "sha512-4nJ3yixlEthEJ9Rk4vPcdBRkZvQZlYyu8j4/Mqz5sgIkddmEnH2Yj2ZrnP9S3tQOvSNRUIgVNF/1yPpRAGNRig==", ++ "dev": true, ++ "engines": { ++ "node": ">=14.16" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/sindresorhus" ++ } ++ }, + "node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", +@@ -1667,13 +1646,35 @@ + "dev": true + }, + "node_modules/array-buffer-byte-length": { +- "version": "1.0.0", +- "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz", +- "integrity": "sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==", +- "peer": true, ++ "version": "1.0.1", ++ "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz", ++ "integrity": "sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==", + "dependencies": { +- "call-bind": "^1.0.2", +- "is-array-buffer": "^3.0.1" ++ "call-bind": "^1.0.5", ++ "is-array-buffer": "^3.0.4" ++ }, ++ "engines": { ++ "node": ">= 0.4" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, ++ "node_modules/array-includes": { ++ "version": "3.1.8", ++ "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.8.tgz", ++ "integrity": "sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==", ++ "dev": true, ++ "dependencies": { ++ "call-bind": "^1.0.7", ++ "define-properties": "^1.2.1", ++ "es-abstract": "^1.23.2", ++ "es-object-atoms": "^1.0.0", ++ "get-intrinsic": "^1.2.4", ++ "is-string": "^1.0.7" ++ }, ++ "engines": { ++ "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" +@@ -1688,10 +1689,133 @@ + "node": ">=8" + } + }, +- "node_modules/at-least-node": { +- "version": "1.0.0", +- "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", +- "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", ++ "node_modules/array.prototype.findlast": { ++ "version": "1.2.5", ++ "resolved": "https://registry.npmjs.org/array.prototype.findlast/-/array.prototype.findlast-1.2.5.tgz", ++ "integrity": "sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==", ++ "dev": true, ++ "dependencies": { ++ "call-bind": "^1.0.7", ++ "define-properties": "^1.2.1", ++ "es-abstract": "^1.23.2", ++ "es-errors": "^1.3.0", ++ "es-object-atoms": "^1.0.0", ++ "es-shim-unscopables": "^1.0.2" ++ }, ++ "engines": { ++ "node": ">= 0.4" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, ++ "node_modules/array.prototype.findlastindex": { ++ "version": "1.2.5", ++ "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.5.tgz", ++ "integrity": "sha512-zfETvRFA8o7EiNn++N5f/kaCw221hrpGsDmcpndVupkPzEc1Wuf3VgC0qby1BbHs7f5DVYjgtEU2LLh5bqeGfQ==", ++ "dev": true, ++ "dependencies": { ++ "call-bind": "^1.0.7", ++ "define-properties": "^1.2.1", ++ "es-abstract": "^1.23.2", ++ "es-errors": "^1.3.0", ++ "es-object-atoms": "^1.0.0", ++ "es-shim-unscopables": "^1.0.2" ++ }, ++ "engines": { ++ "node": ">= 0.4" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, ++ "node_modules/array.prototype.flat": { ++ "version": "1.3.2", ++ "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.2.tgz", ++ "integrity": "sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==", ++ "dev": true, ++ "dependencies": { ++ "call-bind": "^1.0.2", ++ "define-properties": "^1.2.0", ++ "es-abstract": "^1.22.1", ++ "es-shim-unscopables": "^1.0.0" ++ }, ++ "engines": { ++ "node": ">= 0.4" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, ++ "node_modules/array.prototype.flatmap": { ++ "version": "1.3.2", ++ "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.2.tgz", ++ "integrity": "sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==", ++ "dev": true, ++ "dependencies": { ++ "call-bind": "^1.0.2", ++ "define-properties": "^1.2.0", ++ "es-abstract": "^1.22.1", ++ "es-shim-unscopables": "^1.0.0" ++ }, ++ "engines": { ++ "node": ">= 0.4" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, ++ "node_modules/array.prototype.tosorted": { ++ "version": "1.1.4", ++ "resolved": "https://registry.npmjs.org/array.prototype.tosorted/-/array.prototype.tosorted-1.1.4.tgz", ++ "integrity": "sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==", ++ "dev": true, ++ "dependencies": { ++ "call-bind": "^1.0.7", ++ "define-properties": "^1.2.1", ++ "es-abstract": "^1.23.3", ++ "es-errors": "^1.3.0", ++ "es-shim-unscopables": "^1.0.2" ++ }, ++ "engines": { ++ "node": ">= 0.4" ++ } ++ }, ++ "node_modules/arraybuffer.prototype.slice": { ++ "version": "1.0.3", ++ "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz", ++ "integrity": "sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==", ++ "dev": true, ++ "dependencies": { ++ "array-buffer-byte-length": "^1.0.1", ++ "call-bind": "^1.0.5", ++ "define-properties": "^1.2.1", ++ "es-abstract": "^1.22.3", ++ "es-errors": "^1.2.1", ++ "get-intrinsic": "^1.2.3", ++ "is-array-buffer": "^3.0.4", ++ "is-shared-array-buffer": "^1.0.2" ++ }, ++ "engines": { ++ "node": ">= 0.4" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, ++ "node_modules/astral-regex": { ++ "version": "2.0.0", ++ "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", ++ "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", ++ "dev": true, ++ "engines": { ++ "node": ">=8" ++ } ++ }, ++ "node_modules/at-least-node": { ++ "version": "1.0.0", ++ "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", ++ "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", + "dev": true, + "engines": { + "node": ">= 4.0.0" +@@ -1706,10 +1830,12 @@ + } + }, + "node_modules/available-typed-arrays": { +- "version": "1.0.5", +- "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", +- "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", +- "peer": true, ++ "version": "1.0.7", ++ "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", ++ "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", ++ "dependencies": { ++ "possible-typed-array-names": "^1.0.0" ++ }, + "engines": { + "node": ">= 0.4" + }, +@@ -1828,6 +1954,13 @@ + "ieee754": "^1.2.1" + } + }, ++ "node_modules/buffer-builder": { ++ "version": "0.2.0", ++ "resolved": "https://registry.npmjs.org/buffer-builder/-/buffer-builder-0.2.0.tgz", ++ "integrity": "sha512-7VPMEPuYznPSoR21NE1zvd2Xna6c/CloiZCfcMXR1Jny6PjX0N4Nsa38zcBFo/FMK+BlA+FLKbJCQ0i2yxp+Xg==", ++ "dev": true, ++ "peer": true ++ }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", +@@ -1835,19 +1968,69 @@ + "dev": true, + "peer": true + }, +- "node_modules/call-bind": { +- "version": "1.0.2", +- "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", +- "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", ++ "node_modules/builtin-modules": { ++ "version": "3.3.0", ++ "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.3.0.tgz", ++ "integrity": "sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==", ++ "dev": true, ++ "peer": true, ++ "engines": { ++ "node": ">=6" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/sindresorhus" ++ } ++ }, ++ "node_modules/builtins": { ++ "version": "5.1.0", ++ "resolved": "https://registry.npmjs.org/builtins/-/builtins-5.1.0.tgz", ++ "integrity": "sha512-SW9lzGTLvWTP1AY8xeAMZimqDrIaSdLQUcVr9DMef51niJ022Ri87SwRRKYm4A6iHfkPaiVUu/Duw2Wc4J7kKg==", ++ "dev": true, ++ "peer": true, ++ "dependencies": { ++ "semver": "^7.0.0" ++ } ++ }, ++ "node_modules/builtins/node_modules/semver": { ++ "version": "7.6.3", ++ "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", ++ "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", ++ "dev": true, + "peer": true, ++ "bin": { ++ "semver": "bin/semver.js" ++ }, ++ "engines": { ++ "node": ">=10" ++ } ++ }, ++ "node_modules/call-bind": { ++ "version": "1.0.7", ++ "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", ++ "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", + "dependencies": { +- "function-bind": "^1.1.1", +- "get-intrinsic": "^1.0.2" ++ "es-define-property": "^1.0.0", ++ "es-errors": "^1.3.0", ++ "function-bind": "^1.1.2", ++ "get-intrinsic": "^1.2.4", ++ "set-function-length": "^1.2.1" ++ }, ++ "engines": { ++ "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, ++ "node_modules/callsites": { ++ "version": "3.1.0", ++ "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", ++ "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", ++ "dev": true, ++ "engines": { ++ "node": ">=6" ++ } ++ }, + "node_modules/caniuse-lite": { + "version": "1.0.30001517", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001517.tgz", +@@ -1911,9 +2094,9 @@ + } + }, + "node_modules/chrome-remote-interface": { +- "version": "0.32.2", +- "resolved": "https://registry.npmjs.org/chrome-remote-interface/-/chrome-remote-interface-0.32.2.tgz", +- "integrity": "sha512-3UbFKtEmqApehPQnqdblcggx7KveQphEMKQmdJZsOguE9ylw2N2/9Z7arO7xS55+DBJ/hyP8RrayLt4MMdJvQg==", ++ "version": "0.33.2", ++ "resolved": "https://registry.npmjs.org/chrome-remote-interface/-/chrome-remote-interface-0.33.2.tgz", ++ "integrity": "sha512-wvm9cOeBTrb218EC+6DteGt92iXr2iY0+XJP30f15JVDhqvWvJEVACh9GvUm8b9Yd8bxQivaLSb8k7mgrbyomQ==", + "dev": true, + "dependencies": { + "commander": "2.11.x", +@@ -1963,6 +2146,12 @@ + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, ++ "node_modules/colord": { ++ "version": "2.9.3", ++ "resolved": "https://registry.npmjs.org/colord/-/colord-2.9.3.tgz", ++ "integrity": "sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==", ++ "dev": true ++ }, + "node_modules/commander": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.11.0.tgz", +@@ -1991,6 +2180,32 @@ + "dev": true, + "peer": true + }, ++ "node_modules/cosmiconfig": { ++ "version": "9.0.0", ++ "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-9.0.0.tgz", ++ "integrity": "sha512-itvL5h8RETACmOTFc4UfIyB2RfEHi71Ax6E/PivVxq9NseKbOWpeyHEOIbmAw1rs8Ak0VursQNww7lf7YtUwzg==", ++ "dev": true, ++ "dependencies": { ++ "env-paths": "^2.2.1", ++ "import-fresh": "^3.3.0", ++ "js-yaml": "^4.1.0", ++ "parse-json": "^5.2.0" ++ }, ++ "engines": { ++ "node": ">=14" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/d-fischer" ++ }, ++ "peerDependencies": { ++ "typescript": ">=4.9.5" ++ }, ++ "peerDependenciesMeta": { ++ "typescript": { ++ "optional": true ++ } ++ } ++ }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", +@@ -2004,12 +2219,97 @@ + "node": ">= 8" + } + }, ++ "node_modules/css-functions-list": { ++ "version": "3.2.2", ++ "resolved": "https://registry.npmjs.org/css-functions-list/-/css-functions-list-3.2.2.tgz", ++ "integrity": "sha512-c+N0v6wbKVxTu5gOBBFkr9BEdBWaqqjQeiJ8QvSRIJOf+UxlJh930m8e6/WNeODIK0mYLFkoONrnj16i2EcvfQ==", ++ "dev": true, ++ "engines": { ++ "node": ">=12 || >=16" ++ } ++ }, ++ "node_modules/css-tree": { ++ "version": "2.3.1", ++ "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-2.3.1.tgz", ++ "integrity": "sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==", ++ "dev": true, ++ "dependencies": { ++ "mdn-data": "2.0.30", ++ "source-map-js": "^1.0.1" ++ }, ++ "engines": { ++ "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0" ++ } ++ }, ++ "node_modules/cssesc": { ++ "version": "3.0.0", ++ "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", ++ "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", ++ "dev": true, ++ "bin": { ++ "cssesc": "bin/cssesc" ++ }, ++ "engines": { ++ "node": ">=4" ++ } ++ }, + "node_modules/csstype": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz", + "integrity": "sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==", + "dev": true + }, ++ "node_modules/data-view-buffer": { ++ "version": "1.0.1", ++ "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.1.tgz", ++ "integrity": "sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==", ++ "dev": true, ++ "dependencies": { ++ "call-bind": "^1.0.6", ++ "es-errors": "^1.3.0", ++ "is-data-view": "^1.0.1" ++ }, ++ "engines": { ++ "node": ">= 0.4" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, ++ "node_modules/data-view-byte-length": { ++ "version": "1.0.1", ++ "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.1.tgz", ++ "integrity": "sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==", ++ "dev": true, ++ "dependencies": { ++ "call-bind": "^1.0.7", ++ "es-errors": "^1.3.0", ++ "is-data-view": "^1.0.1" ++ }, ++ "engines": { ++ "node": ">= 0.4" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, ++ "node_modules/data-view-byte-offset": { ++ "version": "1.0.0", ++ "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.0.tgz", ++ "integrity": "sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==", ++ "dev": true, ++ "dependencies": { ++ "call-bind": "^1.0.6", ++ "es-errors": "^1.3.0", ++ "is-data-view": "^1.0.1" ++ }, ++ "engines": { ++ "node": ">= 0.4" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, + "node_modules/date-fns": { + "version": "2.30.0", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-2.30.0.tgz", +@@ -2027,11 +2327,10 @@ + } + }, + "node_modules/debug": { +- "version": "4.3.4", +- "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", +- "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", ++ "version": "4.3.5", ++ "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.5.tgz", ++ "integrity": "sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg==", + "dev": true, +- "peer": true, + "dependencies": { + "ms": "2.1.2" + }, +@@ -2073,12 +2372,34 @@ + "url": "https://github.com/sponsors/ljharb" + } + }, ++ "node_modules/deep-is": { ++ "version": "0.1.4", ++ "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", ++ "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", ++ "dev": true ++ }, ++ "node_modules/define-data-property": { ++ "version": "1.1.4", ++ "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", ++ "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", ++ "dependencies": { ++ "es-define-property": "^1.0.0", ++ "es-errors": "^1.3.0", ++ "gopd": "^1.0.1" ++ }, ++ "engines": { ++ "node": ">= 0.4" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, + "node_modules/define-properties": { +- "version": "1.2.0", +- "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.0.tgz", +- "integrity": "sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==", +- "peer": true, ++ "version": "1.2.1", ++ "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", ++ "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", + "dependencies": { ++ "define-data-property": "^1.0.1", + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, +@@ -2101,6 +2422,18 @@ + "node": ">=8" + } + }, ++ "node_modules/doctrine": { ++ "version": "3.0.0", ++ "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", ++ "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", ++ "dev": true, ++ "dependencies": { ++ "esutils": "^2.0.2" ++ }, ++ "engines": { ++ "node": ">=6.0.0" ++ } ++ }, + "node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", +@@ -2140,6 +2473,103 @@ + "node": ">=10.13.0" + } + }, ++ "node_modules/env-paths": { ++ "version": "2.2.1", ++ "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", ++ "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", ++ "dev": true, ++ "engines": { ++ "node": ">=6" ++ } ++ }, ++ "node_modules/error-ex": { ++ "version": "1.3.2", ++ "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", ++ "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", ++ "dev": true, ++ "dependencies": { ++ "is-arrayish": "^0.2.1" ++ } ++ }, ++ "node_modules/es-abstract": { ++ "version": "1.23.3", ++ "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.3.tgz", ++ "integrity": "sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A==", ++ "dev": true, ++ "dependencies": { ++ "array-buffer-byte-length": "^1.0.1", ++ "arraybuffer.prototype.slice": "^1.0.3", ++ "available-typed-arrays": "^1.0.7", ++ "call-bind": "^1.0.7", ++ "data-view-buffer": "^1.0.1", ++ "data-view-byte-length": "^1.0.1", ++ "data-view-byte-offset": "^1.0.0", ++ "es-define-property": "^1.0.0", ++ "es-errors": "^1.3.0", ++ "es-object-atoms": "^1.0.0", ++ "es-set-tostringtag": "^2.0.3", ++ "es-to-primitive": "^1.2.1", ++ "function.prototype.name": "^1.1.6", ++ "get-intrinsic": "^1.2.4", ++ "get-symbol-description": "^1.0.2", ++ "globalthis": "^1.0.3", ++ "gopd": "^1.0.1", ++ "has-property-descriptors": "^1.0.2", ++ "has-proto": "^1.0.3", ++ "has-symbols": "^1.0.3", ++ "hasown": "^2.0.2", ++ "internal-slot": "^1.0.7", ++ "is-array-buffer": "^3.0.4", ++ "is-callable": "^1.2.7", ++ "is-data-view": "^1.0.1", ++ "is-negative-zero": "^2.0.3", ++ "is-regex": "^1.1.4", ++ "is-shared-array-buffer": "^1.0.3", ++ "is-string": "^1.0.7", ++ "is-typed-array": "^1.1.13", ++ "is-weakref": "^1.0.2", ++ "object-inspect": "^1.13.1", ++ "object-keys": "^1.1.1", ++ "object.assign": "^4.1.5", ++ "regexp.prototype.flags": "^1.5.2", ++ "safe-array-concat": "^1.1.2", ++ "safe-regex-test": "^1.0.3", ++ "string.prototype.trim": "^1.2.9", ++ "string.prototype.trimend": "^1.0.8", ++ "string.prototype.trimstart": "^1.0.8", ++ "typed-array-buffer": "^1.0.2", ++ "typed-array-byte-length": "^1.0.1", ++ "typed-array-byte-offset": "^1.0.2", ++ "typed-array-length": "^1.0.6", ++ "unbox-primitive": "^1.0.2", ++ "which-typed-array": "^1.1.15" ++ }, ++ "engines": { ++ "node": ">= 0.4" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, ++ "node_modules/es-define-property": { ++ "version": "1.0.0", ++ "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", ++ "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==", ++ "dependencies": { ++ "get-intrinsic": "^1.2.4" ++ }, ++ "engines": { ++ "node": ">= 0.4" ++ } ++ }, ++ "node_modules/es-errors": { ++ "version": "1.3.0", ++ "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", ++ "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", ++ "engines": { ++ "node": ">= 0.4" ++ } ++ }, + "node_modules/es-get-iterator": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.3.tgz", +@@ -2160,6 +2590,31 @@ + "url": "https://github.com/sponsors/ljharb" + } + }, ++ "node_modules/es-iterator-helpers": { ++ "version": "1.0.19", ++ "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.0.19.tgz", ++ "integrity": "sha512-zoMwbCcH5hwUkKJkT8kDIBZSz9I6mVG//+lDCinLCGov4+r7NIy0ld8o03M0cJxl2spVf6ESYVS6/gpIfq1FFw==", ++ "dev": true, ++ "dependencies": { ++ "call-bind": "^1.0.7", ++ "define-properties": "^1.2.1", ++ "es-abstract": "^1.23.3", ++ "es-errors": "^1.3.0", ++ "es-set-tostringtag": "^2.0.3", ++ "function-bind": "^1.1.2", ++ "get-intrinsic": "^1.2.4", ++ "globalthis": "^1.0.3", ++ "has-property-descriptors": "^1.0.2", ++ "has-proto": "^1.0.3", ++ "has-symbols": "^1.0.3", ++ "internal-slot": "^1.0.7", ++ "iterator.prototype": "^1.1.2", ++ "safe-array-concat": "^1.1.2" ++ }, ++ "engines": { ++ "node": ">= 0.4" ++ } ++ }, + "node_modules/es-module-lexer": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.3.0.tgz", +@@ -2167,41 +2622,95 @@ + "dev": true, + "peer": true + }, ++ "node_modules/es-object-atoms": { ++ "version": "1.0.0", ++ "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.0.0.tgz", ++ "integrity": "sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==", ++ "dev": true, ++ "dependencies": { ++ "es-errors": "^1.3.0" ++ }, ++ "engines": { ++ "node": ">= 0.4" ++ } ++ }, ++ "node_modules/es-set-tostringtag": { ++ "version": "2.0.3", ++ "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.3.tgz", ++ "integrity": "sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==", ++ "dev": true, ++ "dependencies": { ++ "get-intrinsic": "^1.2.4", ++ "has-tostringtag": "^1.0.2", ++ "hasown": "^2.0.1" ++ }, ++ "engines": { ++ "node": ">= 0.4" ++ } ++ }, ++ "node_modules/es-shim-unscopables": { ++ "version": "1.0.2", ++ "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.2.tgz", ++ "integrity": "sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==", ++ "dev": true, ++ "dependencies": { ++ "hasown": "^2.0.0" ++ } ++ }, ++ "node_modules/es-to-primitive": { ++ "version": "1.2.1", ++ "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", ++ "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", ++ "dev": true, ++ "dependencies": { ++ "is-callable": "^1.1.4", ++ "is-date-object": "^1.0.1", ++ "is-symbol": "^1.0.2" ++ }, ++ "engines": { ++ "node": ">= 0.4" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, + "node_modules/esbuild": { +- "version": "0.18.17", +- "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.18.17.tgz", +- "integrity": "sha512-1GJtYnUxsJreHYA0Y+iQz2UEykonY66HNWOb0yXYZi9/kNrORUEHVg87eQsCtqh59PEJ5YVZJO98JHznMJSWjg==", ++ "version": "0.23.0", ++ "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.23.0.tgz", ++ "integrity": "sha512-1lvV17H2bMYda/WaFb2jLPeHU3zml2k4/yagNMG8Q/YtfMjCwEUZa2eXXMgZTVSL5q1n4H7sQ0X6CdJDqqeCFA==", + "dev": true, + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { +- "node": ">=12" ++ "node": ">=18" + }, + "optionalDependencies": { +- "@esbuild/android-arm": "0.18.17", +- "@esbuild/android-arm64": "0.18.17", +- "@esbuild/android-x64": "0.18.17", +- "@esbuild/darwin-arm64": "0.18.17", +- "@esbuild/darwin-x64": "0.18.17", +- "@esbuild/freebsd-arm64": "0.18.17", +- "@esbuild/freebsd-x64": "0.18.17", +- "@esbuild/linux-arm": "0.18.17", +- "@esbuild/linux-arm64": "0.18.17", +- "@esbuild/linux-ia32": "0.18.17", +- "@esbuild/linux-loong64": "0.18.17", +- "@esbuild/linux-mips64el": "0.18.17", +- "@esbuild/linux-ppc64": "0.18.17", +- "@esbuild/linux-riscv64": "0.18.17", +- "@esbuild/linux-s390x": "0.18.17", +- "@esbuild/linux-x64": "0.18.17", +- "@esbuild/netbsd-x64": "0.18.17", +- "@esbuild/openbsd-x64": "0.18.17", +- "@esbuild/sunos-x64": "0.18.17", +- "@esbuild/win32-arm64": "0.18.17", +- "@esbuild/win32-ia32": "0.18.17", +- "@esbuild/win32-x64": "0.18.17" ++ "@esbuild/aix-ppc64": "0.23.0", ++ "@esbuild/android-arm": "0.23.0", ++ "@esbuild/android-arm64": "0.23.0", ++ "@esbuild/android-x64": "0.23.0", ++ "@esbuild/darwin-arm64": "0.23.0", ++ "@esbuild/darwin-x64": "0.23.0", ++ "@esbuild/freebsd-arm64": "0.23.0", ++ "@esbuild/freebsd-x64": "0.23.0", ++ "@esbuild/linux-arm": "0.23.0", ++ "@esbuild/linux-arm64": "0.23.0", ++ "@esbuild/linux-ia32": "0.23.0", ++ "@esbuild/linux-loong64": "0.23.0", ++ "@esbuild/linux-mips64el": "0.23.0", ++ "@esbuild/linux-ppc64": "0.23.0", ++ "@esbuild/linux-riscv64": "0.23.0", ++ "@esbuild/linux-s390x": "0.23.0", ++ "@esbuild/linux-x64": "0.23.0", ++ "@esbuild/netbsd-x64": "0.23.0", ++ "@esbuild/openbsd-arm64": "0.23.0", ++ "@esbuild/openbsd-x64": "0.23.0", ++ "@esbuild/sunos-x64": "0.23.0", ++ "@esbuild/win32-arm64": "0.23.0", ++ "@esbuild/win32-ia32": "0.23.0", ++ "@esbuild/win32-x64": "0.23.0" + } + }, + "node_modules/esbuild-plugin-copy": { +@@ -2299,16 +2808,18 @@ + } + }, + "node_modules/esbuild-sass-plugin": { +- "version": "2.10.0", +- "resolved": "https://registry.npmjs.org/esbuild-sass-plugin/-/esbuild-sass-plugin-2.10.0.tgz", +- "integrity": "sha512-STv849QGT8g77RRFmroSt4VBVKjv+dypKcO4aWz8IP4G5JbRH0KC0+B8ODuzlUNu9R5MbkGcev/62RDP/JcZ2Q==", ++ "version": "3.3.1", ++ "resolved": "https://registry.npmjs.org/esbuild-sass-plugin/-/esbuild-sass-plugin-3.3.1.tgz", ++ "integrity": "sha512-SnO1ls+d52n6j8gRRpjexXI8MsHEaumS0IdDHaYM29Y6gakzZYMls6i9ql9+AWMSQk/eryndmUpXEgT34QrX1A==", + "dev": true, + "dependencies": { +- "resolve": "^1.22.2", +- "sass": "^1.63.0" ++ "resolve": "^1.22.8", ++ "safe-identifier": "^0.4.2", ++ "sass": "^1.71.1" + }, + "peerDependencies": { +- "esbuild": "^0.18.0" ++ "esbuild": ">=0.20.1", ++ "sass-embedded": "^1.71.1" + } + }, + "node_modules/escalade": { +@@ -2330,1156 +2841,1474 @@ + "node": ">=0.8.0" + } + }, +- "node_modules/eslint-scope": { +- "version": "5.1.1", +- "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", +- "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", +- "dev": true, +- "peer": true, +- "dependencies": { +- "esrecurse": "^4.3.0", +- "estraverse": "^4.1.1" ++ "node_modules/eslint": { ++ "version": "8.57.0", ++ "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.0.tgz", ++ "integrity": "sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==", ++ "dev": true, ++ "dependencies": { ++ "@eslint-community/eslint-utils": "^4.2.0", ++ "@eslint-community/regexpp": "^4.6.1", ++ "@eslint/eslintrc": "^2.1.4", ++ "@eslint/js": "8.57.0", ++ "@humanwhocodes/config-array": "^0.11.14", ++ "@humanwhocodes/module-importer": "^1.0.1", ++ "@nodelib/fs.walk": "^1.2.8", ++ "@ungap/structured-clone": "^1.2.0", ++ "ajv": "^6.12.4", ++ "chalk": "^4.0.0", ++ "cross-spawn": "^7.0.2", ++ "debug": "^4.3.2", ++ "doctrine": "^3.0.0", ++ "escape-string-regexp": "^4.0.0", ++ "eslint-scope": "^7.2.2", ++ "eslint-visitor-keys": "^3.4.3", ++ "espree": "^9.6.1", ++ "esquery": "^1.4.2", ++ "esutils": "^2.0.2", ++ "fast-deep-equal": "^3.1.3", ++ "file-entry-cache": "^6.0.1", ++ "find-up": "^5.0.0", ++ "glob-parent": "^6.0.2", ++ "globals": "^13.19.0", ++ "graphemer": "^1.4.0", ++ "ignore": "^5.2.0", ++ "imurmurhash": "^0.1.4", ++ "is-glob": "^4.0.0", ++ "is-path-inside": "^3.0.3", ++ "js-yaml": "^4.1.0", ++ "json-stable-stringify-without-jsonify": "^1.0.1", ++ "levn": "^0.4.1", ++ "lodash.merge": "^4.6.2", ++ "minimatch": "^3.1.2", ++ "natural-compare": "^1.4.0", ++ "optionator": "^0.9.3", ++ "strip-ansi": "^6.0.1", ++ "text-table": "^0.2.0" ++ }, ++ "bin": { ++ "eslint": "bin/eslint.js" + }, + "engines": { +- "node": ">=8.0.0" ++ "node": "^12.22.0 || ^14.17.0 || >=16.0.0" ++ }, ++ "funding": { ++ "url": "https://opencollective.com/eslint" + } + }, +- "node_modules/esrecurse": { +- "version": "4.3.0", +- "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", +- "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", ++ "node_modules/eslint-compat-utils": { ++ "version": "0.5.1", ++ "resolved": "https://registry.npmjs.org/eslint-compat-utils/-/eslint-compat-utils-0.5.1.tgz", ++ "integrity": "sha512-3z3vFexKIEnjHE3zCMRo6fn/e44U7T1khUjg+Hp0ZQMCigh28rALD0nPFBcGZuiLC5rLZa2ubQHDRln09JfU2Q==", + "dev": true, + "peer": true, + "dependencies": { +- "estraverse": "^5.2.0" ++ "semver": "^7.5.4" + }, + "engines": { +- "node": ">=4.0" ++ "node": ">=12" ++ }, ++ "peerDependencies": { ++ "eslint": ">=6.0.0" + } + }, +- "node_modules/esrecurse/node_modules/estraverse": { +- "version": "5.3.0", +- "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", +- "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", ++ "node_modules/eslint-compat-utils/node_modules/semver": { ++ "version": "7.6.3", ++ "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", ++ "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "dev": true, + "peer": true, ++ "bin": { ++ "semver": "bin/semver.js" ++ }, + "engines": { +- "node": ">=4.0" ++ "node": ">=10" + } + }, +- "node_modules/estraverse": { +- "version": "4.3.0", +- "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", +- "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", ++ "node_modules/eslint-config-standard": { ++ "version": "17.1.0", ++ "resolved": "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-17.1.0.tgz", ++ "integrity": "sha512-IwHwmaBNtDK4zDHQukFDW5u/aTb8+meQWZvNFWkiGmbWjD6bqyuSSBxxXKkCftCUzc1zwCH2m/baCNDLGmuO5Q==", + "dev": true, +- "peer": true, ++ "funding": [ ++ { ++ "type": "github", ++ "url": "https://github.com/sponsors/feross" ++ }, ++ { ++ "type": "patreon", ++ "url": "https://www.patreon.com/feross" ++ }, ++ { ++ "type": "consulting", ++ "url": "https://feross.org/support" ++ } ++ ], + "engines": { +- "node": ">=4.0" ++ "node": ">=12.0.0" ++ }, ++ "peerDependencies": { ++ "eslint": "^8.0.1", ++ "eslint-plugin-import": "^2.25.2", ++ "eslint-plugin-n": "^15.0.0 || ^16.0.0 ", ++ "eslint-plugin-promise": "^6.0.0" + } + }, +- "node_modules/event-target-shim": { +- "version": "5.0.1", +- "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", +- "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==", ++ "node_modules/eslint-config-standard-jsx": { ++ "version": "11.0.0", ++ "resolved": "https://registry.npmjs.org/eslint-config-standard-jsx/-/eslint-config-standard-jsx-11.0.0.tgz", ++ "integrity": "sha512-+1EV/R0JxEK1L0NGolAr8Iktm3Rgotx3BKwgaX+eAuSX8D952LULKtjgZD3F+e6SvibONnhLwoTi9DPxN5LvvQ==", + "dev": true, +- "engines": { +- "node": ">=6" ++ "funding": [ ++ { ++ "type": "github", ++ "url": "https://github.com/sponsors/feross" ++ }, ++ { ++ "type": "patreon", ++ "url": "https://www.patreon.com/feross" ++ }, ++ { ++ "type": "consulting", ++ "url": "https://feross.org/support" ++ } ++ ], ++ "peerDependencies": { ++ "eslint": "^8.8.0", ++ "eslint-plugin-react": "^7.28.0" + } + }, +- "node_modules/events": { +- "version": "3.3.0", +- "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", +- "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", ++ "node_modules/eslint-config-standard-react": { ++ "version": "13.0.0", ++ "resolved": "https://registry.npmjs.org/eslint-config-standard-react/-/eslint-config-standard-react-13.0.0.tgz", ++ "integrity": "sha512-HrVPGj8UncHfV+BsdJTuJpVsomn6AIrke3Af2Fh4XFvQQDU+iO6N2ZL+UsC+scExft4fU3uf7fJwj7PKWnXJDA==", + "dev": true, +- "engines": { +- "node": ">=0.8.x" ++ "funding": [ ++ { ++ "type": "github", ++ "url": "https://github.com/sponsors/feross" ++ }, ++ { ++ "type": "patreon", ++ "url": "https://www.patreon.com/feross" ++ }, ++ { ++ "type": "consulting", ++ "url": "https://feross.org/support" ++ } ++ ], ++ "peerDependencies": { ++ "eslint": "^8.8.0", ++ "eslint-plugin-react": "^7.28.0", ++ "eslint-plugin-react-hooks": "^4.6.0" + } + }, +- "node_modules/fast-deep-equal": { +- "version": "3.1.3", +- "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", +- "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", ++ "node_modules/eslint-import-resolver-node": { ++ "version": "0.3.9", ++ "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz", ++ "integrity": "sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==", + "dev": true, +- "peer": true ++ "dependencies": { ++ "debug": "^3.2.7", ++ "is-core-module": "^2.13.0", ++ "resolve": "^1.22.4" ++ } + }, +- "node_modules/fast-glob": { +- "version": "3.3.1", +- "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.1.tgz", +- "integrity": "sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==", ++ "node_modules/eslint-import-resolver-node/node_modules/debug": { ++ "version": "3.2.7", ++ "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", ++ "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "dependencies": { +- "@nodelib/fs.stat": "^2.0.2", +- "@nodelib/fs.walk": "^1.2.3", +- "glob-parent": "^5.1.2", +- "merge2": "^1.3.0", +- "micromatch": "^4.0.4" +- }, +- "engines": { +- "node": ">=8.6.0" ++ "ms": "^2.1.1" + } + }, +- "node_modules/fast-json-stable-stringify": { +- "version": "2.1.0", +- "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", +- "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", ++ "node_modules/eslint-module-utils": { ++ "version": "2.8.1", ++ "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.8.1.tgz", ++ "integrity": "sha512-rXDXR3h7cs7dy9RNpUlQf80nX31XWJEyGq1tRMo+6GsO5VmTe4UTwtmonAD4ZkAsrfMVDA2wlGJ3790Ys+D49Q==", + "dev": true, +- "peer": true ++ "dependencies": { ++ "debug": "^3.2.7" ++ }, ++ "engines": { ++ "node": ">=4" ++ }, ++ "peerDependenciesMeta": { ++ "eslint": { ++ "optional": true ++ } ++ } + }, +- "node_modules/fastq": { +- "version": "1.15.0", +- "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", +- "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", ++ "node_modules/eslint-module-utils/node_modules/debug": { ++ "version": "3.2.7", ++ "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", ++ "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "dependencies": { +- "reusify": "^1.0.4" ++ "ms": "^2.1.1" + } + }, +- "node_modules/file-selector": { +- "version": "0.6.0", +- "resolved": "https://registry.npmjs.org/file-selector/-/file-selector-0.6.0.tgz", +- "integrity": "sha512-QlZ5yJC0VxHxQQsQhXvBaC7VRJ2uaxTf+Tfpu4Z/OcVQJVpZO+DGU0rkoVW5ce2SccxugvpBJoMvUs59iILYdw==", ++ "node_modules/eslint-plugin-es": { ++ "version": "3.0.1", ++ "resolved": "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz", ++ "integrity": "sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ==", ++ "dev": true, + "dependencies": { +- "tslib": "^2.4.0" ++ "eslint-utils": "^2.0.0", ++ "regexpp": "^3.0.0" + }, + "engines": { +- "node": ">= 12" ++ "node": ">=8.10.0" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/mysticatea" ++ }, ++ "peerDependencies": { ++ "eslint": ">=4.19.1" + } + }, +- "node_modules/fill-range": { +- "version": "7.1.1", +- "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", +- "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", ++ "node_modules/eslint-plugin-es-x": { ++ "version": "7.8.0", ++ "resolved": "https://registry.npmjs.org/eslint-plugin-es-x/-/eslint-plugin-es-x-7.8.0.tgz", ++ "integrity": "sha512-7Ds8+wAAoV3T+LAKeu39Y5BzXCrGKrcISfgKEqTS4BDN8SFEDQd0S43jiQ8vIa3wUKD07qitZdfzlenSi8/0qQ==", + "dev": true, ++ "funding": [ ++ "https://github.com/sponsors/ota-meshi", ++ "https://opencollective.com/eslint" ++ ], ++ "peer": true, + "dependencies": { +- "to-regex-range": "^5.0.1" ++ "@eslint-community/eslint-utils": "^4.1.2", ++ "@eslint-community/regexpp": "^4.11.0", ++ "eslint-compat-utils": "^0.5.1" + }, + "engines": { +- "node": ">=8" ++ "node": "^14.18.0 || >=16.0.0" ++ }, ++ "peerDependencies": { ++ "eslint": ">=8" ++ } ++ }, ++ "node_modules/eslint-plugin-import": { ++ "version": "2.29.1", ++ "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.29.1.tgz", ++ "integrity": "sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==", ++ "dev": true, ++ "dependencies": { ++ "array-includes": "^3.1.7", ++ "array.prototype.findlastindex": "^1.2.3", ++ "array.prototype.flat": "^1.3.2", ++ "array.prototype.flatmap": "^1.3.2", ++ "debug": "^3.2.7", ++ "doctrine": "^2.1.0", ++ "eslint-import-resolver-node": "^0.3.9", ++ "eslint-module-utils": "^2.8.0", ++ "hasown": "^2.0.0", ++ "is-core-module": "^2.13.1", ++ "is-glob": "^4.0.3", ++ "minimatch": "^3.1.2", ++ "object.fromentries": "^2.0.7", ++ "object.groupby": "^1.0.1", ++ "object.values": "^1.1.7", ++ "semver": "^6.3.1", ++ "tsconfig-paths": "^3.15.0" ++ }, ++ "engines": { ++ "node": ">=4" ++ }, ++ "peerDependencies": { ++ "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8" + } + }, +- "node_modules/find-yarn-workspace-root": { +- "version": "2.0.0", +- "resolved": "https://registry.npmjs.org/find-yarn-workspace-root/-/find-yarn-workspace-root-2.0.0.tgz", +- "integrity": "sha512-1IMnbjt4KzsQfnhnzNd8wUEgXZ44IzZaZmnLYx7D5FZlaHt2gW20Cri8Q+E/t5tIj4+epTBub+2Zxu/vNILzqQ==", ++ "node_modules/eslint-plugin-import/node_modules/brace-expansion": { ++ "version": "1.1.11", ++ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", ++ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { +- "micromatch": "^4.0.2" ++ "balanced-match": "^1.0.0", ++ "concat-map": "0.0.1" + } + }, +- "node_modules/focus-trap": { +- "version": "7.4.2", +- "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-7.4.2.tgz", +- "integrity": "sha512-KMjf+H5uDWPkwSQVqE5r/+vOkP5zBWwVBoWPIZxU3gfg+M8IT+Y8s+vXQqZvHEIXyHPKHrSm6m4G4ceF98OZ8w==", ++ "node_modules/eslint-plugin-import/node_modules/debug": { ++ "version": "3.2.7", ++ "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", ++ "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", ++ "dev": true, + "dependencies": { +- "tabbable": "^6.1.2" ++ "ms": "^2.1.1" + } + }, +- "node_modules/for-each": { +- "version": "0.3.3", +- "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", +- "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", +- "peer": true, ++ "node_modules/eslint-plugin-import/node_modules/doctrine": { ++ "version": "2.1.0", ++ "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", ++ "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", ++ "dev": true, + "dependencies": { +- "is-callable": "^1.1.3" ++ "esutils": "^2.0.2" ++ }, ++ "engines": { ++ "node": ">=0.10.0" + } + }, +- "node_modules/foreground-child": { +- "version": "3.1.1", +- "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", +- "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==", ++ "node_modules/eslint-plugin-import/node_modules/minimatch": { ++ "version": "3.1.2", ++ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", ++ "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", ++ "dev": true, + "dependencies": { +- "cross-spawn": "^7.0.0", +- "signal-exit": "^4.0.1" ++ "brace-expansion": "^1.1.7" + }, + "engines": { +- "node": ">=14" +- }, +- "funding": { +- "url": "https://github.com/sponsors/isaacs" ++ "node": "*" + } + }, +- "node_modules/fs-extra": { +- "version": "10.1.0", +- "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", +- "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", ++ "node_modules/eslint-plugin-n": { ++ "version": "16.6.2", ++ "resolved": "https://registry.npmjs.org/eslint-plugin-n/-/eslint-plugin-n-16.6.2.tgz", ++ "integrity": "sha512-6TyDmZ1HXoFQXnhCTUjVFULReoBPOAjpuiKELMkeP40yffI/1ZRO+d9ug/VC6fqISo2WkuIBk3cvuRPALaWlOQ==", + "dev": true, ++ "peer": true, + "dependencies": { +- "graceful-fs": "^4.2.0", +- "jsonfile": "^6.0.1", +- "universalify": "^2.0.0" ++ "@eslint-community/eslint-utils": "^4.4.0", ++ "builtins": "^5.0.1", ++ "eslint-plugin-es-x": "^7.5.0", ++ "get-tsconfig": "^4.7.0", ++ "globals": "^13.24.0", ++ "ignore": "^5.2.4", ++ "is-builtin-module": "^3.2.1", ++ "is-core-module": "^2.12.1", ++ "minimatch": "^3.1.2", ++ "resolve": "^1.22.2", ++ "semver": "^7.5.3" + }, + "engines": { +- "node": ">=12" ++ "node": ">=16.0.0" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/mysticatea" ++ }, ++ "peerDependencies": { ++ "eslint": ">=7.0.0" + } + }, +- "node_modules/fs.realpath": { +- "version": "1.0.0", +- "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", +- "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", +- "dev": true +- }, +- "node_modules/fsevents": { +- "version": "2.3.2", +- "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", +- "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", ++ "node_modules/eslint-plugin-n/node_modules/brace-expansion": { ++ "version": "1.1.11", ++ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", ++ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, +- "hasInstallScript": true, +- "optional": true, +- "os": [ +- "darwin" +- ], +- "engines": { +- "node": "^8.16.0 || ^10.6.0 || >=11.0.0" +- } +- }, +- "node_modules/function-bind": { +- "version": "1.1.1", +- "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", +- "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" +- }, +- "node_modules/functions-have-names": { +- "version": "1.2.3", +- "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", +- "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "peer": true, +- "funding": { +- "url": "https://github.com/sponsors/ljharb" ++ "dependencies": { ++ "balanced-match": "^1.0.0", ++ "concat-map": "0.0.1" + } + }, +- "node_modules/gensync": { +- "version": "1.0.0-beta.2", +- "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", +- "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", ++ "node_modules/eslint-plugin-n/node_modules/globals": { ++ "version": "13.24.0", ++ "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", ++ "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", + "dev": true, + "peer": true, ++ "dependencies": { ++ "type-fest": "^0.20.2" ++ }, + "engines": { +- "node": ">=6.9.0" ++ "node": ">=8" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/sindresorhus" + } + }, +- "node_modules/get-intrinsic": { +- "version": "1.2.1", +- "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.1.tgz", +- "integrity": "sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==", ++ "node_modules/eslint-plugin-n/node_modules/minimatch": { ++ "version": "3.1.2", ++ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", ++ "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", ++ "dev": true, + "peer": true, + "dependencies": { +- "function-bind": "^1.1.1", +- "has": "^1.0.3", +- "has-proto": "^1.0.1", +- "has-symbols": "^1.0.3" ++ "brace-expansion": "^1.1.7" + }, +- "funding": { +- "url": "https://github.com/sponsors/ljharb" ++ "engines": { ++ "node": "*" + } + }, +- "node_modules/gettext-parser": { +- "version": "7.0.1", +- "resolved": "https://registry.npmjs.org/gettext-parser/-/gettext-parser-7.0.1.tgz", +- "integrity": "sha512-LU+ieGH3L9HmKEArTlX816/iiAlyA0fx/n/QSeQpkAaH/+jxMk/5UtDkAzcVvW+KlY25/U+IE6dnfkJ8ynt8pQ==", ++ "node_modules/eslint-plugin-n/node_modules/semver": { ++ "version": "7.6.3", ++ "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", ++ "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "dev": true, +- "dependencies": { +- "content-type": "^1.0.5", +- "encoding": "^0.1.13", +- "readable-stream": "^4.3.0", +- "safe-buffer": "^5.2.1" ++ "peer": true, ++ "bin": { ++ "semver": "bin/semver.js" ++ }, ++ "engines": { ++ "node": ">=10" + } + }, +- "node_modules/glob": { +- "version": "10.3.3", +- "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.3.tgz", +- "integrity": "sha512-92vPiMb/iqpmEgsOoIDvTjc50wf9CCCvMzsi6W0JLPeUKE8TWP1a73PgqSrqy7iAZxaSD1YdzU7QZR5LF51MJw==", ++ "node_modules/eslint-plugin-node": { ++ "version": "11.1.0", ++ "resolved": "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-11.1.0.tgz", ++ "integrity": "sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g==", ++ "dev": true, + "dependencies": { +- "foreground-child": "^3.1.0", +- "jackspeak": "^2.0.3", +- "minimatch": "^9.0.1", +- "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", +- "path-scurry": "^1.10.1" +- }, +- "bin": { +- "glob": "dist/cjs/src/bin.js" ++ "eslint-plugin-es": "^3.0.0", ++ "eslint-utils": "^2.0.0", ++ "ignore": "^5.1.1", ++ "minimatch": "^3.0.4", ++ "resolve": "^1.10.1", ++ "semver": "^6.1.0" + }, + "engines": { +- "node": ">=16 || 14 >=14.17" ++ "node": ">=8.10.0" + }, +- "funding": { +- "url": "https://github.com/sponsors/isaacs" ++ "peerDependencies": { ++ "eslint": ">=5.16.0" + } + }, +- "node_modules/glob-parent": { +- "version": "5.1.2", +- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", +- "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", ++ "node_modules/eslint-plugin-node/node_modules/brace-expansion": { ++ "version": "1.1.11", ++ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", ++ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { +- "is-glob": "^4.0.1" +- }, +- "engines": { +- "node": ">= 6" ++ "balanced-match": "^1.0.0", ++ "concat-map": "0.0.1" + } + }, +- "node_modules/glob-to-regexp": { +- "version": "0.4.1", +- "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", +- "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", ++ "node_modules/eslint-plugin-node/node_modules/minimatch": { ++ "version": "3.1.2", ++ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", ++ "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, +- "peer": true ++ "dependencies": { ++ "brace-expansion": "^1.1.7" ++ }, ++ "engines": { ++ "node": "*" ++ } + }, +- "node_modules/globals": { +- "version": "11.12.0", +- "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", +- "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", ++ "node_modules/eslint-plugin-promise": { ++ "version": "6.6.0", ++ "resolved": "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-6.6.0.tgz", ++ "integrity": "sha512-57Zzfw8G6+Gq7axm2Pdo3gW/Rx3h9Yywgn61uE/3elTCOePEHVrn2i5CdfBwA1BLK0Q0WqctICIUSqXZW/VprQ==", + "dev": true, +- "peer": true, ++ "engines": { ++ "node": "^12.22.0 || ^14.17.0 || >=16.0.0" ++ }, ++ "funding": { ++ "url": "https://opencollective.com/eslint" ++ }, ++ "peerDependencies": { ++ "eslint": "^7.0.0 || ^8.0.0 || ^9.0.0" ++ } ++ }, ++ "node_modules/eslint-plugin-react": { ++ "version": "7.35.0", ++ "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.35.0.tgz", ++ "integrity": "sha512-v501SSMOWv8gerHkk+IIQBkcGRGrO2nfybfj5pLxuJNFTPxxA3PSryhXTK+9pNbtkggheDdsC0E9Q8CuPk6JKA==", ++ "dev": true, ++ "dependencies": { ++ "array-includes": "^3.1.8", ++ "array.prototype.findlast": "^1.2.5", ++ "array.prototype.flatmap": "^1.3.2", ++ "array.prototype.tosorted": "^1.1.4", ++ "doctrine": "^2.1.0", ++ "es-iterator-helpers": "^1.0.19", ++ "estraverse": "^5.3.0", ++ "hasown": "^2.0.2", ++ "jsx-ast-utils": "^2.4.1 || ^3.0.0", ++ "minimatch": "^3.1.2", ++ "object.entries": "^1.1.8", ++ "object.fromentries": "^2.0.8", ++ "object.values": "^1.2.0", ++ "prop-types": "^15.8.1", ++ "resolve": "^2.0.0-next.5", ++ "semver": "^6.3.1", ++ "string.prototype.matchall": "^4.0.11", ++ "string.prototype.repeat": "^1.0.0" ++ }, + "engines": { + "node": ">=4" ++ }, ++ "peerDependencies": { ++ "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7" + } + }, +- "node_modules/globalyzer": { +- "version": "0.1.0", +- "resolved": "https://registry.npmjs.org/globalyzer/-/globalyzer-0.1.0.tgz", +- "integrity": "sha512-40oNTM9UfG6aBmuKxk/giHn5nQ8RVz/SS4Ir6zgzOv9/qC3kKZ9v4etGTcJbEl/NyVQH7FGU7d+X1egr57Md2Q==", +- "dev": true +- }, +- "node_modules/globby": { +- "version": "11.1.0", +- "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", +- "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", ++ "node_modules/eslint-plugin-react-hooks": { ++ "version": "4.6.2", ++ "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.2.tgz", ++ "integrity": "sha512-QzliNJq4GinDBcD8gPB5v0wh6g8q3SUi6EFF0x8N/BL9PoVs0atuGc47ozMRyOWAKdwaZ5OnbOEa3WR+dSGKuQ==", + "dev": true, +- "dependencies": { +- "array-union": "^2.1.0", +- "dir-glob": "^3.0.1", +- "fast-glob": "^3.2.9", +- "ignore": "^5.2.0", +- "merge2": "^1.4.1", +- "slash": "^3.0.0" +- }, + "engines": { + "node": ">=10" + }, +- "funding": { +- "url": "https://github.com/sponsors/sindresorhus" ++ "peerDependencies": { ++ "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0" + } + }, +- "node_modules/globrex": { +- "version": "0.1.2", +- "resolved": "https://registry.npmjs.org/globrex/-/globrex-0.1.2.tgz", +- "integrity": "sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==", +- "dev": true +- }, +- "node_modules/gopd": { +- "version": "1.0.1", +- "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", +- "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", +- "peer": true, ++ "node_modules/eslint-plugin-react/node_modules/brace-expansion": { ++ "version": "1.1.11", ++ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", ++ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", ++ "dev": true, + "dependencies": { +- "get-intrinsic": "^1.1.3" +- }, +- "funding": { +- "url": "https://github.com/sponsors/ljharb" ++ "balanced-match": "^1.0.0", ++ "concat-map": "0.0.1" + } + }, +- "node_modules/graceful-fs": { +- "version": "4.2.11", +- "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", +- "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", +- "dev": true +- }, +- "node_modules/has": { +- "version": "1.0.3", +- "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", +- "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", ++ "node_modules/eslint-plugin-react/node_modules/doctrine": { ++ "version": "2.1.0", ++ "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", ++ "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", ++ "dev": true, + "dependencies": { +- "function-bind": "^1.1.1" ++ "esutils": "^2.0.2" + }, + "engines": { +- "node": ">= 0.4.0" +- } +- }, +- "node_modules/has-bigints": { +- "version": "1.0.2", +- "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", +- "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", +- "peer": true, +- "funding": { +- "url": "https://github.com/sponsors/ljharb" ++ "node": ">=0.10.0" + } + }, +- "node_modules/has-flag": { +- "version": "3.0.0", +- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", +- "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", ++ "node_modules/eslint-plugin-react/node_modules/estraverse": { ++ "version": "5.3.0", ++ "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", ++ "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { +- "node": ">=4" ++ "node": ">=4.0" + } + }, +- "node_modules/has-property-descriptors": { +- "version": "1.0.0", +- "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", +- "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", +- "peer": true, ++ "node_modules/eslint-plugin-react/node_modules/minimatch": { ++ "version": "3.1.2", ++ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", ++ "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", ++ "dev": true, + "dependencies": { +- "get-intrinsic": "^1.1.1" ++ "brace-expansion": "^1.1.7" + }, +- "funding": { +- "url": "https://github.com/sponsors/ljharb" ++ "engines": { ++ "node": "*" + } + }, +- "node_modules/has-proto": { +- "version": "1.0.1", +- "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", +- "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", +- "peer": true, +- "engines": { +- "node": ">= 0.4" ++ "node_modules/eslint-plugin-react/node_modules/resolve": { ++ "version": "2.0.0-next.5", ++ "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.5.tgz", ++ "integrity": "sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==", ++ "dev": true, ++ "dependencies": { ++ "is-core-module": "^2.13.0", ++ "path-parse": "^1.0.7", ++ "supports-preserve-symlinks-flag": "^1.0.0" ++ }, ++ "bin": { ++ "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, +- "node_modules/has-symbols": { +- "version": "1.0.3", +- "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", +- "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", ++ "node_modules/eslint-scope": { ++ "version": "5.1.1", ++ "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", ++ "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", ++ "dev": true, + "peer": true, +- "engines": { +- "node": ">= 0.4" ++ "dependencies": { ++ "esrecurse": "^4.3.0", ++ "estraverse": "^4.1.1" + }, +- "funding": { +- "url": "https://github.com/sponsors/ljharb" ++ "engines": { ++ "node": ">=8.0.0" + } + }, +- "node_modules/has-tostringtag": { +- "version": "1.0.0", +- "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", +- "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", +- "peer": true, ++ "node_modules/eslint-utils": { ++ "version": "2.1.0", ++ "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", ++ "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", ++ "dev": true, + "dependencies": { +- "has-symbols": "^1.0.2" ++ "eslint-visitor-keys": "^1.1.0" + }, + "engines": { +- "node": ">= 0.4" ++ "node": ">=6" + }, + "funding": { +- "url": "https://github.com/sponsors/ljharb" ++ "url": "https://github.com/sponsors/mysticatea" + } + }, +- "node_modules/htmlparser": { +- "version": "1.7.7", +- "resolved": "https://registry.npmjs.org/htmlparser/-/htmlparser-1.7.7.tgz", +- "integrity": "sha512-zpK66ifkT0fauyFh2Mulrq4AqGTucxGtOhZ8OjkbSfcCpkqQEI8qRkY0tSQSJNAQ4HUZkgWaU4fK4EH6SVH9PQ==", ++ "node_modules/eslint-utils/node_modules/eslint-visitor-keys": { ++ "version": "1.3.0", ++ "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", ++ "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "dev": true, + "engines": { +- "node": ">=0.1.33" ++ "node": ">=4" + } + }, +- "node_modules/iconv-lite": { +- "version": "0.6.3", +- "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", +- "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", ++ "node_modules/eslint-visitor-keys": { ++ "version": "3.4.3", ++ "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", ++ "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true, +- "dependencies": { +- "safer-buffer": ">= 2.1.2 < 3.0.0" ++ "engines": { ++ "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, ++ "funding": { ++ "url": "https://opencollective.com/eslint" ++ } ++ }, ++ "node_modules/eslint/node_modules/ansi-regex": { ++ "version": "5.0.1", ++ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", ++ "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", ++ "dev": true, + "engines": { +- "node": ">=0.10.0" ++ "node": ">=8" + } + }, +- "node_modules/ieee754": { +- "version": "1.2.1", +- "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", +- "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", +- "dev": true, +- "funding": [ +- { +- "type": "github", +- "url": "https://github.com/sponsors/feross" +- }, +- { +- "type": "patreon", +- "url": "https://www.patreon.com/feross" +- }, +- { +- "type": "consulting", +- "url": "https://feross.org/support" +- } +- ] +- }, +- "node_modules/ignore": { +- "version": "5.2.4", +- "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", +- "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", ++ "node_modules/eslint/node_modules/ansi-styles": { ++ "version": "4.3.0", ++ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", ++ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, ++ "dependencies": { ++ "color-convert": "^2.0.1" ++ }, + "engines": { +- "node": ">= 4" ++ "node": ">=8" ++ }, ++ "funding": { ++ "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, +- "node_modules/immutable": { +- "version": "4.3.1", +- "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.1.tgz", +- "integrity": "sha512-lj9cnmB/kVS0QHsJnYKD1uo3o39nrbKxszjnqS9Fr6NB7bZzW45U6WSGBPKXDL/CvDKqDNPA4r3DoDQ8GTxo2A==", +- "dev": true +- }, +- "node_modules/inflight": { +- "version": "1.0.6", +- "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", +- "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", ++ "node_modules/eslint/node_modules/brace-expansion": { ++ "version": "1.1.11", ++ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", ++ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { +- "once": "^1.3.0", +- "wrappy": "1" ++ "balanced-match": "^1.0.0", ++ "concat-map": "0.0.1" + } + }, +- "node_modules/inherits": { +- "version": "2.0.4", +- "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", +- "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", +- "dev": true +- }, +- "node_modules/internal-slot": { +- "version": "1.0.5", +- "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.5.tgz", +- "integrity": "sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==", +- "peer": true, ++ "node_modules/eslint/node_modules/chalk": { ++ "version": "4.1.2", ++ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", ++ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", ++ "dev": true, + "dependencies": { +- "get-intrinsic": "^1.2.0", +- "has": "^1.0.3", +- "side-channel": "^1.0.4" ++ "ansi-styles": "^4.1.0", ++ "supports-color": "^7.1.0" + }, + "engines": { +- "node": ">= 0.4" ++ "node": ">=10" ++ }, ++ "funding": { ++ "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, +- "node_modules/is-arguments": { +- "version": "1.1.1", +- "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", +- "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", +- "peer": true, ++ "node_modules/eslint/node_modules/color-convert": { ++ "version": "2.0.1", ++ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", ++ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", ++ "dev": true, + "dependencies": { +- "call-bind": "^1.0.2", +- "has-tostringtag": "^1.0.0" ++ "color-name": "~1.1.4" + }, + "engines": { +- "node": ">= 0.4" +- }, +- "funding": { +- "url": "https://github.com/sponsors/ljharb" ++ "node": ">=7.0.0" + } + }, +- "node_modules/is-array-buffer": { +- "version": "3.0.2", +- "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz", +- "integrity": "sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==", +- "peer": true, +- "dependencies": { +- "call-bind": "^1.0.2", +- "get-intrinsic": "^1.2.0", +- "is-typed-array": "^1.1.10" ++ "node_modules/eslint/node_modules/color-name": { ++ "version": "1.1.4", ++ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", ++ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", ++ "dev": true ++ }, ++ "node_modules/eslint/node_modules/escape-string-regexp": { ++ "version": "4.0.0", ++ "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", ++ "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", ++ "dev": true, ++ "engines": { ++ "node": ">=10" + }, + "funding": { +- "url": "https://github.com/sponsors/ljharb" ++ "url": "https://github.com/sponsors/sindresorhus" + } + }, +- "node_modules/is-bigint": { +- "version": "1.0.4", +- "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", +- "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", +- "peer": true, ++ "node_modules/eslint/node_modules/eslint-scope": { ++ "version": "7.2.2", ++ "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", ++ "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", ++ "dev": true, + "dependencies": { +- "has-bigints": "^1.0.1" ++ "esrecurse": "^4.3.0", ++ "estraverse": "^5.2.0" ++ }, ++ "engines": { ++ "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { +- "url": "https://github.com/sponsors/ljharb" ++ "url": "https://opencollective.com/eslint" + } + }, +- "node_modules/is-binary-path": { +- "version": "2.1.0", +- "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", +- "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", ++ "node_modules/eslint/node_modules/estraverse": { ++ "version": "5.3.0", ++ "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", ++ "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", ++ "dev": true, ++ "engines": { ++ "node": ">=4.0" ++ } ++ }, ++ "node_modules/eslint/node_modules/glob-parent": { ++ "version": "6.0.2", ++ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", ++ "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "dependencies": { +- "binary-extensions": "^2.0.0" ++ "is-glob": "^4.0.3" + }, + "engines": { +- "node": ">=8" ++ "node": ">=10.13.0" + } + }, +- "node_modules/is-boolean-object": { +- "version": "1.1.2", +- "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", +- "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", +- "peer": true, ++ "node_modules/eslint/node_modules/globals": { ++ "version": "13.24.0", ++ "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", ++ "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", ++ "dev": true, + "dependencies": { +- "call-bind": "^1.0.2", +- "has-tostringtag": "^1.0.0" ++ "type-fest": "^0.20.2" + }, + "engines": { +- "node": ">= 0.4" ++ "node": ">=8" + }, + "funding": { +- "url": "https://github.com/sponsors/ljharb" ++ "url": "https://github.com/sponsors/sindresorhus" + } + }, +- "node_modules/is-callable": { +- "version": "1.2.7", +- "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", +- "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", +- "peer": true, ++ "node_modules/eslint/node_modules/has-flag": { ++ "version": "4.0.0", ++ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", ++ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", ++ "dev": true, + "engines": { +- "node": ">= 0.4" +- }, +- "funding": { +- "url": "https://github.com/sponsors/ljharb" ++ "node": ">=8" + } + }, +- "node_modules/is-core-module": { +- "version": "2.12.1", +- "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.12.1.tgz", +- "integrity": "sha512-Q4ZuBAe2FUsKtyQJoQHlvP8OvBERxO3jEmy1I7hcRXcJBGGHFh/aJBswbXuS9sgrDH2QUO8ilkwNPHvHMd8clg==", ++ "node_modules/eslint/node_modules/minimatch": { ++ "version": "3.1.2", ++ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", ++ "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { +- "has": "^1.0.3" ++ "brace-expansion": "^1.1.7" + }, +- "funding": { +- "url": "https://github.com/sponsors/ljharb" ++ "engines": { ++ "node": "*" + } + }, +- "node_modules/is-date-object": { +- "version": "1.0.5", +- "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", +- "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", +- "peer": true, ++ "node_modules/eslint/node_modules/strip-ansi": { ++ "version": "6.0.1", ++ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", ++ "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", ++ "dev": true, + "dependencies": { +- "has-tostringtag": "^1.0.0" ++ "ansi-regex": "^5.0.1" + }, + "engines": { +- "node": ">= 0.4" +- }, +- "funding": { +- "url": "https://github.com/sponsors/ljharb" ++ "node": ">=8" + } + }, +- "node_modules/is-docker": { +- "version": "2.2.1", +- "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", +- "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", ++ "node_modules/eslint/node_modules/supports-color": { ++ "version": "7.2.0", ++ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", ++ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, +- "bin": { +- "is-docker": "cli.js" ++ "dependencies": { ++ "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" ++ } ++ }, ++ "node_modules/espree": { ++ "version": "9.6.1", ++ "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", ++ "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", ++ "dev": true, ++ "dependencies": { ++ "acorn": "^8.9.0", ++ "acorn-jsx": "^5.3.2", ++ "eslint-visitor-keys": "^3.4.1" ++ }, ++ "engines": { ++ "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { +- "url": "https://github.com/sponsors/sindresorhus" ++ "url": "https://opencollective.com/eslint" + } + }, +- "node_modules/is-extglob": { +- "version": "2.1.1", +- "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", +- "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", ++ "node_modules/esquery": { ++ "version": "1.6.0", ++ "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz", ++ "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==", + "dev": true, ++ "dependencies": { ++ "estraverse": "^5.1.0" ++ }, + "engines": { +- "node": ">=0.10.0" ++ "node": ">=0.10" + } + }, +- "node_modules/is-fullwidth-code-point": { +- "version": "3.0.0", +- "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", +- "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", ++ "node_modules/esquery/node_modules/estraverse": { ++ "version": "5.3.0", ++ "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", ++ "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", ++ "dev": true, + "engines": { +- "node": ">=8" ++ "node": ">=4.0" + } + }, +- "node_modules/is-glob": { +- "version": "4.0.3", +- "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", +- "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", ++ "node_modules/esrecurse": { ++ "version": "4.3.0", ++ "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", ++ "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "dependencies": { +- "is-extglob": "^2.1.1" ++ "estraverse": "^5.2.0" + }, + "engines": { +- "node": ">=0.10.0" ++ "node": ">=4.0" + } + }, +- "node_modules/is-map": { +- "version": "2.0.2", +- "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.2.tgz", +- "integrity": "sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==", +- "peer": true, +- "funding": { +- "url": "https://github.com/sponsors/ljharb" ++ "node_modules/esrecurse/node_modules/estraverse": { ++ "version": "5.3.0", ++ "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", ++ "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", ++ "dev": true, ++ "engines": { ++ "node": ">=4.0" + } + }, +- "node_modules/is-number": { +- "version": "7.0.0", +- "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", +- "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", ++ "node_modules/estraverse": { ++ "version": "4.3.0", ++ "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", ++ "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true, ++ "peer": true, + "engines": { +- "node": ">=0.12.0" ++ "node": ">=4.0" + } + }, +- "node_modules/is-number-object": { +- "version": "1.0.7", +- "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", +- "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", +- "peer": true, +- "dependencies": { +- "has-tostringtag": "^1.0.0" +- }, ++ "node_modules/esutils": { ++ "version": "2.0.3", ++ "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", ++ "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", ++ "dev": true, + "engines": { +- "node": ">= 0.4" +- }, +- "funding": { +- "url": "https://github.com/sponsors/ljharb" ++ "node": ">=0.10.0" + } + }, +- "node_modules/is-regex": { +- "version": "1.1.4", +- "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", +- "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", +- "peer": true, +- "dependencies": { +- "call-bind": "^1.0.2", +- "has-tostringtag": "^1.0.0" +- }, ++ "node_modules/event-target-shim": { ++ "version": "5.0.1", ++ "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", ++ "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==", ++ "dev": true, + "engines": { +- "node": ">= 0.4" +- }, +- "funding": { +- "url": "https://github.com/sponsors/ljharb" ++ "node": ">=6" + } + }, +- "node_modules/is-set": { +- "version": "2.0.2", +- "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.2.tgz", +- "integrity": "sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==", +- "peer": true, +- "funding": { +- "url": "https://github.com/sponsors/ljharb" ++ "node_modules/events": { ++ "version": "3.3.0", ++ "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", ++ "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", ++ "dev": true, ++ "engines": { ++ "node": ">=0.8.x" + } + }, +- "node_modules/is-shared-array-buffer": { +- "version": "1.0.2", +- "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", +- "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", +- "peer": true, ++ "node_modules/fast-deep-equal": { ++ "version": "3.1.3", ++ "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", ++ "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", ++ "dev": true ++ }, ++ "node_modules/fast-glob": { ++ "version": "3.3.2", ++ "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", ++ "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", ++ "dev": true, + "dependencies": { +- "call-bind": "^1.0.2" ++ "@nodelib/fs.stat": "^2.0.2", ++ "@nodelib/fs.walk": "^1.2.3", ++ "glob-parent": "^5.1.2", ++ "merge2": "^1.3.0", ++ "micromatch": "^4.0.4" + }, +- "funding": { +- "url": "https://github.com/sponsors/ljharb" ++ "engines": { ++ "node": ">=8.6.0" + } + }, +- "node_modules/is-string": { +- "version": "1.0.7", +- "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", +- "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", +- "peer": true, +- "dependencies": { +- "has-tostringtag": "^1.0.0" +- }, ++ "node_modules/fast-json-stable-stringify": { ++ "version": "2.1.0", ++ "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", ++ "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", ++ "dev": true ++ }, ++ "node_modules/fast-levenshtein": { ++ "version": "2.0.6", ++ "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", ++ "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", ++ "dev": true ++ }, ++ "node_modules/fast-uri": { ++ "version": "3.0.1", ++ "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.0.1.tgz", ++ "integrity": "sha512-MWipKbbYiYI0UC7cl8m/i/IWTqfC8YXsqjzybjddLsFjStroQzsHXkc73JutMvBiXmOvapk+axIl79ig5t55Bw==", ++ "dev": true ++ }, ++ "node_modules/fastest-levenshtein": { ++ "version": "1.0.16", ++ "resolved": "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.16.tgz", ++ "integrity": "sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==", ++ "dev": true, + "engines": { +- "node": ">= 0.4" +- }, +- "funding": { +- "url": "https://github.com/sponsors/ljharb" ++ "node": ">= 4.9.1" + } + }, +- "node_modules/is-symbol": { +- "version": "1.0.4", +- "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", +- "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", +- "peer": true, ++ "node_modules/fastq": { ++ "version": "1.15.0", ++ "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", ++ "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", ++ "dev": true, + "dependencies": { +- "has-symbols": "^1.0.2" +- }, +- "engines": { +- "node": ">= 0.4" +- }, +- "funding": { +- "url": "https://github.com/sponsors/ljharb" ++ "reusify": "^1.0.4" + } + }, +- "node_modules/is-typed-array": { +- "version": "1.1.12", +- "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.12.tgz", +- "integrity": "sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg==", +- "peer": true, ++ "node_modules/file-entry-cache": { ++ "version": "6.0.1", ++ "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", ++ "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", ++ "dev": true, + "dependencies": { +- "which-typed-array": "^1.1.11" ++ "flat-cache": "^3.0.4" + }, + "engines": { +- "node": ">= 0.4" +- }, +- "funding": { +- "url": "https://github.com/sponsors/ljharb" +- } +- }, +- "node_modules/is-weakmap": { +- "version": "2.0.1", +- "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.1.tgz", +- "integrity": "sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==", +- "peer": true, +- "funding": { +- "url": "https://github.com/sponsors/ljharb" ++ "node": "^10.12.0 || >=12.0.0" + } + }, +- "node_modules/is-weakset": { +- "version": "2.0.2", +- "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.2.tgz", +- "integrity": "sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==", +- "peer": true, ++ "node_modules/file-selector": { ++ "version": "0.6.0", ++ "resolved": "https://registry.npmjs.org/file-selector/-/file-selector-0.6.0.tgz", ++ "integrity": "sha512-QlZ5yJC0VxHxQQsQhXvBaC7VRJ2uaxTf+Tfpu4Z/OcVQJVpZO+DGU0rkoVW5ce2SccxugvpBJoMvUs59iILYdw==", + "dependencies": { +- "call-bind": "^1.0.2", +- "get-intrinsic": "^1.1.1" ++ "tslib": "^2.4.0" + }, +- "funding": { +- "url": "https://github.com/sponsors/ljharb" ++ "engines": { ++ "node": ">= 12" + } + }, +- "node_modules/is-wsl": { +- "version": "2.2.0", +- "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", +- "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", ++ "node_modules/fill-range": { ++ "version": "7.1.1", ++ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", ++ "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "dev": true, + "dependencies": { +- "is-docker": "^2.0.0" ++ "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, +- "node_modules/isarray": { +- "version": "2.0.5", +- "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", +- "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", +- "peer": true +- }, +- "node_modules/isexe": { +- "version": "2.0.0", +- "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", +- "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" +- }, +- "node_modules/jackspeak": { +- "version": "2.2.2", +- "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.2.2.tgz", +- "integrity": "sha512-mgNtVv4vUuaKA97yxUHoA3+FkuhtxkjdXEWOyB/N76fjy0FjezEt34oy3epBtvCvS+7DyKwqCFWx/oJLV5+kCg==", ++ "node_modules/find-up": { ++ "version": "5.0.0", ++ "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", ++ "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", ++ "dev": true, + "dependencies": { +- "@isaacs/cliui": "^8.0.2" ++ "locate-path": "^6.0.0", ++ "path-exists": "^4.0.0" + }, + "engines": { +- "node": ">=14" ++ "node": ">=10" + }, + "funding": { +- "url": "https://github.com/sponsors/isaacs" +- }, +- "optionalDependencies": { +- "@pkgjs/parseargs": "^0.11.0" ++ "url": "https://github.com/sponsors/sindresorhus" + } + }, +- "node_modules/jed": { +- "version": "1.1.1", +- "resolved": "https://registry.npmjs.org/jed/-/jed-1.1.1.tgz", +- "integrity": "sha512-z35ZSEcXHxLW4yumw0dF6L464NT36vmx3wxJw8MDpraBcWuNVgUPZgPJKcu1HekNgwlMFNqol7i/IpSbjhqwqA==", +- "dev": true ++ "node_modules/find-yarn-workspace-root": { ++ "version": "2.0.0", ++ "resolved": "https://registry.npmjs.org/find-yarn-workspace-root/-/find-yarn-workspace-root-2.0.0.tgz", ++ "integrity": "sha512-1IMnbjt4KzsQfnhnzNd8wUEgXZ44IzZaZmnLYx7D5FZlaHt2gW20Cri8Q+E/t5tIj4+epTBub+2Zxu/vNILzqQ==", ++ "dev": true, ++ "dependencies": { ++ "micromatch": "^4.0.2" ++ } + }, +- "node_modules/jest-worker": { +- "version": "27.5.1", +- "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", +- "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", ++ "node_modules/flat-cache": { ++ "version": "3.2.0", ++ "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", ++ "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", + "dev": true, +- "peer": true, + "dependencies": { +- "@types/node": "*", +- "merge-stream": "^2.0.0", +- "supports-color": "^8.0.0" ++ "flatted": "^3.2.9", ++ "keyv": "^4.5.3", ++ "rimraf": "^3.0.2" + }, + "engines": { +- "node": ">= 10.13.0" ++ "node": "^10.12.0 || >=12.0.0" + } + }, +- "node_modules/jest-worker/node_modules/has-flag": { +- "version": "4.0.0", +- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", +- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", ++ "node_modules/flat-cache/node_modules/brace-expansion": { ++ "version": "1.1.11", ++ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", ++ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, +- "peer": true, +- "engines": { +- "node": ">=8" ++ "dependencies": { ++ "balanced-match": "^1.0.0", ++ "concat-map": "0.0.1" + } + }, +- "node_modules/jest-worker/node_modules/supports-color": { +- "version": "8.1.1", +- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", +- "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", ++ "node_modules/flat-cache/node_modules/glob": { ++ "version": "7.2.3", ++ "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", ++ "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", ++ "deprecated": "Glob versions prior to v9 are no longer supported", + "dev": true, +- "peer": true, + "dependencies": { +- "has-flag": "^4.0.0" ++ "fs.realpath": "^1.0.0", ++ "inflight": "^1.0.4", ++ "inherits": "2", ++ "minimatch": "^3.1.1", ++ "once": "^1.3.0", ++ "path-is-absolute": "^1.0.0" + }, + "engines": { +- "node": ">=10" ++ "node": "*" + }, + "funding": { +- "url": "https://github.com/chalk/supports-color?sponsor=1" ++ "url": "https://github.com/sponsors/isaacs" + } + }, +- "node_modules/js-tokens": { +- "version": "4.0.0", +- "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", +- "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" +- }, +- "node_modules/jsesc": { +- "version": "2.5.2", +- "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", +- "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", ++ "node_modules/flat-cache/node_modules/minimatch": { ++ "version": "3.1.2", ++ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", ++ "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, +- "peer": true, +- "bin": { +- "jsesc": "bin/jsesc" ++ "dependencies": { ++ "brace-expansion": "^1.1.7" + }, + "engines": { +- "node": ">=4" ++ "node": "*" + } + }, +- "node_modules/json-parse-even-better-errors": { +- "version": "2.3.1", +- "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", +- "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", ++ "node_modules/flat-cache/node_modules/rimraf": { ++ "version": "3.0.2", ++ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", ++ "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", ++ "deprecated": "Rimraf versions prior to v4 are no longer supported", + "dev": true, +- "peer": true +- }, +- "node_modules/json-schema-traverse": { +- "version": "0.4.1", +- "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", +- "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", +- "dev": true, +- "peer": true +- }, +- "node_modules/json5": { +- "version": "2.2.3", +- "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", +- "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", +- "dev": true, +- "peer": true, ++ "dependencies": { ++ "glob": "^7.1.3" ++ }, + "bin": { +- "json5": "lib/cli.js" ++ "rimraf": "bin.js" + }, +- "engines": { +- "node": ">=6" ++ "funding": { ++ "url": "https://github.com/sponsors/isaacs" + } + }, +- "node_modules/jsonfile": { +- "version": "6.1.0", +- "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", +- "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", +- "dev": true, ++ "node_modules/flatted": { ++ "version": "3.3.1", ++ "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz", ++ "integrity": "sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==", ++ "dev": true ++ }, ++ "node_modules/focus-trap": { ++ "version": "7.5.2", ++ "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-7.5.2.tgz", ++ "integrity": "sha512-p6vGNNWLDGwJCiEjkSK6oERj/hEyI9ITsSwIUICBoKLlWiTWXJRfQibCwcoi50rTZdbi87qDtUlMCmQwsGSgPw==", + "dependencies": { +- "universalify": "^2.0.0" +- }, +- "optionalDependencies": { +- "graceful-fs": "^4.1.6" ++ "tabbable": "^6.2.0" + } + }, +- "node_modules/klaw-sync": { +- "version": "6.0.0", +- "resolved": "https://registry.npmjs.org/klaw-sync/-/klaw-sync-6.0.0.tgz", +- "integrity": "sha512-nIeuVSzdCCs6TDPTqI8w1Yre34sSq7AkZ4B3sfOBbI2CgVSB4Du4aLQijFU2+lhAFCwt9+42Hel6lQNIv6AntQ==", +- "dev": true, ++ "node_modules/for-each": { ++ "version": "0.3.3", ++ "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", ++ "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", + "dependencies": { +- "graceful-fs": "^4.1.11" ++ "is-callable": "^1.1.3" + } + }, +- "node_modules/loader-runner": { +- "version": "4.3.0", +- "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", +- "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", +- "dev": true, +- "peer": true, ++ "node_modules/foreground-child": { ++ "version": "3.2.1", ++ "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.2.1.tgz", ++ "integrity": "sha512-PXUUyLqrR2XCWICfv6ukppP96sdFwWbNEnfEMt7jNsISjMsvaLNinAHNDYyvkyU+SZG2BTSbT5NjG+vZslfGTA==", ++ "dependencies": { ++ "cross-spawn": "^7.0.0", ++ "signal-exit": "^4.0.1" ++ }, + "engines": { +- "node": ">=6.11.5" ++ "node": ">=14" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/isaacs" + } + }, +- "node_modules/loose-envify": { +- "version": "1.4.0", +- "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", +- "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", ++ "node_modules/fs-extra": { ++ "version": "10.1.0", ++ "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", ++ "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", ++ "dev": true, + "dependencies": { +- "js-tokens": "^3.0.0 || ^4.0.0" ++ "graceful-fs": "^4.2.0", ++ "jsonfile": "^6.0.1", ++ "universalify": "^2.0.0" + }, +- "bin": { +- "loose-envify": "cli.js" ++ "engines": { ++ "node": ">=12" + } + }, +- "node_modules/lru-cache": { +- "version": "5.1.1", +- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", +- "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", +- "dev": true, +- "peer": true, +- "dependencies": { +- "yallist": "^3.0.2" ++ "node_modules/fs.realpath": { ++ "version": "1.0.0", ++ "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", ++ "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", ++ "dev": true ++ }, ++ "node_modules/function-bind": { ++ "version": "1.1.2", ++ "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", ++ "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" + } + }, +- "node_modules/magic-string": { +- "version": "0.25.9", +- "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz", +- "integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==", ++ "node_modules/function.prototype.name": { ++ "version": "1.1.6", ++ "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.6.tgz", ++ "integrity": "sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==", + "dev": true, + "dependencies": { +- "sourcemap-codec": "^1.4.8" ++ "call-bind": "^1.0.2", ++ "define-properties": "^1.2.0", ++ "es-abstract": "^1.22.1", ++ "functions-have-names": "^1.2.3" ++ }, ++ "engines": { ++ "node": ">= 0.4" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" + } + }, +- "node_modules/merge-stream": { +- "version": "2.0.0", +- "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", +- "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", +- "dev": true, +- "peer": true ++ "node_modules/functions-have-names": { ++ "version": "1.2.3", ++ "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", ++ "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } + }, +- "node_modules/merge2": { +- "version": "1.4.1", +- "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", +- "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", ++ "node_modules/gensync": { ++ "version": "1.0.0-beta.2", ++ "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", ++ "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true, ++ "peer": true, + "engines": { +- "node": ">= 8" ++ "node": ">=6.9.0" + } + }, +- "node_modules/micromatch": { +- "version": "4.0.5", +- "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", +- "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", ++ "node_modules/get-east-asian-width": { ++ "version": "1.2.0", ++ "resolved": "https://registry.npmjs.org/get-east-asian-width/-/get-east-asian-width-1.2.0.tgz", ++ "integrity": "sha512-2nk+7SIVb14QrgXFHcm84tD4bKQz0RxPuMT8Ag5KPOq7J5fEmAg0UbXdTOSHqNuHSU28k55qnceesxXRZGzKWA==", + "dev": true, ++ "engines": { ++ "node": ">=18" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/sindresorhus" ++ } ++ }, ++ "node_modules/get-intrinsic": { ++ "version": "1.2.4", ++ "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", ++ "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", + "dependencies": { +- "braces": "^3.0.2", +- "picomatch": "^2.3.1" ++ "es-errors": "^1.3.0", ++ "function-bind": "^1.1.2", ++ "has-proto": "^1.0.1", ++ "has-symbols": "^1.0.3", ++ "hasown": "^2.0.0" + }, + "engines": { +- "node": ">=8.6" ++ "node": ">= 0.4" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" + } + }, +- "node_modules/mime-db": { +- "version": "1.52.0", +- "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", +- "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", ++ "node_modules/get-symbol-description": { ++ "version": "1.0.2", ++ "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.2.tgz", ++ "integrity": "sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==", + "dev": true, +- "peer": true, ++ "dependencies": { ++ "call-bind": "^1.0.5", ++ "es-errors": "^1.3.0", ++ "get-intrinsic": "^1.2.4" ++ }, + "engines": { +- "node": ">= 0.6" ++ "node": ">= 0.4" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" + } + }, +- "node_modules/mime-types": { +- "version": "2.1.35", +- "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", +- "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", ++ "node_modules/get-tsconfig": { ++ "version": "4.7.6", ++ "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.7.6.tgz", ++ "integrity": "sha512-ZAqrLlu18NbDdRaHq+AKXzAmqIUPswPWKUchfytdAjiRFnCe5ojG2bstg6mRiZabkKfCoL/e98pbBELIV/YCeA==", + "dev": true, + "peer": true, + "dependencies": { +- "mime-db": "1.52.0" ++ "resolve-pkg-maps": "^1.0.0" ++ }, ++ "funding": { ++ "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1" ++ } ++ }, ++ "node_modules/gettext-parser": { ++ "version": "8.0.0", ++ "resolved": "https://registry.npmjs.org/gettext-parser/-/gettext-parser-8.0.0.tgz", ++ "integrity": "sha512-eFmhDi2xQ+2reMRY2AbJ2oa10uFOl1oyGbAKdCZiNOk94NJHi7aN0OBELSC9v35ZAPQdr+uRBi93/Gu4SlBdrA==", ++ "dev": true, ++ "dependencies": { ++ "content-type": "^1.0.5", ++ "encoding": "^0.1.13", ++ "readable-stream": "^4.5.2", ++ "safe-buffer": "^5.2.1" + }, + "engines": { +- "node": ">= 0.6" ++ "node": ">=18" + } + }, +- "node_modules/minimatch": { +- "version": "9.0.3", +- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", +- "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", ++ "node_modules/glob": { ++ "version": "11.0.0", ++ "resolved": "https://registry.npmjs.org/glob/-/glob-11.0.0.tgz", ++ "integrity": "sha512-9UiX/Bl6J2yaBbxKoEBRm4Cipxgok8kQYcOPEhScPwebu2I0HoQOuYdIO6S3hLuWoZgpDpwQZMzTFxgpkyT76g==", + "dependencies": { +- "brace-expansion": "^2.0.1" ++ "foreground-child": "^3.1.0", ++ "jackspeak": "^4.0.1", ++ "minimatch": "^10.0.0", ++ "minipass": "^7.1.2", ++ "package-json-from-dist": "^1.0.0", ++ "path-scurry": "^2.0.0" ++ }, ++ "bin": { ++ "glob": "dist/esm/bin.mjs" + }, + "engines": { +- "node": ">=16 || 14 >=14.17" ++ "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, +- "node_modules/minimist": { +- "version": "1.2.8", +- "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", +- "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", ++ "node_modules/glob-parent": { ++ "version": "5.1.2", ++ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", ++ "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, +- "funding": { +- "url": "https://github.com/sponsors/ljharb" +- } +- }, +- "node_modules/minipass": { +- "version": "7.0.2", +- "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.2.tgz", +- "integrity": "sha512-eL79dXrE1q9dBbDCLg7xfn/vl7MS4F1gvJAgjJrQli/jbQWdUttuVawphqpffoIYfRdq78LHx6GP4bU/EQ2ATA==", ++ "dependencies": { ++ "is-glob": "^4.0.1" ++ }, + "engines": { +- "node": ">=16 || 14 >=14.17" ++ "node": ">= 6" + } + }, +- "node_modules/ms": { +- "version": "2.1.2", +- "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", +- "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", +- "dev": true, +- "peer": true +- }, +- "node_modules/neo-async": { +- "version": "2.6.2", +- "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", +- "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", ++ "node_modules/glob-to-regexp": { ++ "version": "0.4.1", ++ "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", ++ "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", + "dev": true, + "peer": true + }, +- "node_modules/node-releases": { +- "version": "2.0.13", +- "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz", +- "integrity": "sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==", +- "dev": true, +- "peer": true ++ "node_modules/glob/node_modules/minimatch": { ++ "version": "10.0.1", ++ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.0.1.tgz", ++ "integrity": "sha512-ethXTt3SGGR+95gudmqJ1eNhRO7eGEGIgYA9vnPatK4/etz2MEVDno5GMCibdMTuBMyElzIlgxMna3K94XDIDQ==", ++ "dependencies": { ++ "brace-expansion": "^2.0.1" ++ }, ++ "engines": { ++ "node": "20 || >=22" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/isaacs" ++ } + }, +- "node_modules/node-watch": { +- "version": "0.7.3", +- "resolved": "https://registry.npmjs.org/node-watch/-/node-watch-0.7.3.tgz", +- "integrity": "sha512-3l4E8uMPY1HdMMryPRUAl+oIHtXtyiTlIiESNSVSNxcPfzAFzeTbXFQkZfAwBbo0B1qMSG8nUABx+Gd+YrbKrQ==", ++ "node_modules/global-modules": { ++ "version": "2.0.0", ++ "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz", ++ "integrity": "sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==", + "dev": true, ++ "dependencies": { ++ "global-prefix": "^3.0.0" ++ }, + "engines": { + "node": ">=6" + } + }, +- "node_modules/normalize-path": { ++ "node_modules/global-prefix": { + "version": "3.0.0", +- "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", +- "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", ++ "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz", ++ "integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==", + "dev": true, ++ "dependencies": { ++ "ini": "^1.3.5", ++ "kind-of": "^6.0.2", ++ "which": "^1.3.1" ++ }, + "engines": { +- "node": ">=0.10.0" ++ "node": ">=6" + } + }, +- "node_modules/object-assign": { +- "version": "4.1.1", +- "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", +- "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", +- "engines": { +- "node": ">=0.10.0" +- } ++ "node_modules/global-prefix/node_modules/which": { ++ "version": "1.3.1", ++ "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", ++ "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", ++ "dev": true, ++ "dependencies": { ++ "isexe": "^2.0.0" ++ }, ++ "bin": { ++ "which": "bin/which" ++ } + }, +- "node_modules/object-inspect": { +- "version": "1.12.3", +- "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz", +- "integrity": "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==", ++ "node_modules/globals": { ++ "version": "11.12.0", ++ "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", ++ "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", ++ "dev": true, + "peer": true, ++ "engines": { ++ "node": ">=4" ++ } ++ }, ++ "node_modules/globalthis": { ++ "version": "1.0.4", ++ "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", ++ "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", ++ "dev": true, ++ "dependencies": { ++ "define-properties": "^1.2.1", ++ "gopd": "^1.0.1" ++ }, ++ "engines": { ++ "node": ">= 0.4" ++ }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, +- "node_modules/object-is": { +- "version": "1.1.5", +- "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz", +- "integrity": "sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==", +- "peer": true, ++ "node_modules/globalyzer": { ++ "version": "0.1.0", ++ "resolved": "https://registry.npmjs.org/globalyzer/-/globalyzer-0.1.0.tgz", ++ "integrity": "sha512-40oNTM9UfG6aBmuKxk/giHn5nQ8RVz/SS4Ir6zgzOv9/qC3kKZ9v4etGTcJbEl/NyVQH7FGU7d+X1egr57Md2Q==", ++ "dev": true ++ }, ++ "node_modules/globby": { ++ "version": "11.1.0", ++ "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", ++ "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", ++ "dev": true, + "dependencies": { +- "call-bind": "^1.0.2", +- "define-properties": "^1.1.3" ++ "array-union": "^2.1.0", ++ "dir-glob": "^3.0.1", ++ "fast-glob": "^3.2.9", ++ "ignore": "^5.2.0", ++ "merge2": "^1.4.1", ++ "slash": "^3.0.0" ++ }, ++ "engines": { ++ "node": ">=10" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/sindresorhus" ++ } ++ }, ++ "node_modules/globjoin": { ++ "version": "0.1.4", ++ "resolved": "https://registry.npmjs.org/globjoin/-/globjoin-0.1.4.tgz", ++ "integrity": "sha512-xYfnw62CKG8nLkZBfWbhWwDw02CHty86jfPcc2cr3ZfeuK9ysoVPPEUxf21bAD/rWAgk52SuBrLJlefNy8mvFg==", ++ "dev": true ++ }, ++ "node_modules/globrex": { ++ "version": "0.1.2", ++ "resolved": "https://registry.npmjs.org/globrex/-/globrex-0.1.2.tgz", ++ "integrity": "sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==", ++ "dev": true ++ }, ++ "node_modules/gopd": { ++ "version": "1.0.1", ++ "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", ++ "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", ++ "dependencies": { ++ "get-intrinsic": "^1.1.3" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, ++ "node_modules/graceful-fs": { ++ "version": "4.2.11", ++ "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", ++ "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", ++ "dev": true ++ }, ++ "node_modules/graphemer": { ++ "version": "1.4.0", ++ "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", ++ "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", ++ "dev": true ++ }, ++ "node_modules/has-bigints": { ++ "version": "1.0.2", ++ "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", ++ "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, ++ "node_modules/has-flag": { ++ "version": "3.0.0", ++ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", ++ "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", ++ "dev": true, ++ "engines": { ++ "node": ">=4" ++ } ++ }, ++ "node_modules/has-property-descriptors": { ++ "version": "1.0.2", ++ "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", ++ "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", ++ "dependencies": { ++ "es-define-property": "^1.0.0" + }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, ++ "node_modules/has-proto": { ++ "version": "1.0.3", ++ "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", ++ "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==", + "engines": { + "node": ">= 0.4" + }, +@@ -3487,25 +4316,23 @@ + "url": "https://github.com/sponsors/ljharb" + } + }, +- "node_modules/object-keys": { +- "version": "1.1.1", +- "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", +- "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", +- "peer": true, ++ "node_modules/has-symbols": { ++ "version": "1.0.3", ++ "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", ++ "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "engines": { + "node": ">= 0.4" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" + } + }, +- "node_modules/object.assign": { +- "version": "4.1.4", +- "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", +- "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", +- "peer": true, ++ "node_modules/has-tostringtag": { ++ "version": "1.0.2", ++ "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", ++ "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", + "dependencies": { +- "call-bind": "^1.0.2", +- "define-properties": "^1.1.4", +- "has-symbols": "^1.0.3", +- "object-keys": "^1.1.1" ++ "has-symbols": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" +@@ -3514,447 +4341,2566 @@ + "url": "https://github.com/sponsors/ljharb" + } + }, +- "node_modules/once": { +- "version": "1.4.0", +- "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", +- "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", ++ "node_modules/hasown": { ++ "version": "2.0.2", ++ "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", ++ "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", ++ "dependencies": { ++ "function-bind": "^1.1.2" ++ }, ++ "engines": { ++ "node": ">= 0.4" ++ } ++ }, ++ "node_modules/html-tags": { ++ "version": "3.3.1", ++ "resolved": "https://registry.npmjs.org/html-tags/-/html-tags-3.3.1.tgz", ++ "integrity": "sha512-ztqyC3kLto0e9WbNp0aeP+M3kTt+nbaIveGmUxAtZa+8iFgKLUOD4YKM5j+f3QD89bra7UeumolZHKuOXnTmeQ==", ++ "dev": true, ++ "engines": { ++ "node": ">=8" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/sindresorhus" ++ } ++ }, ++ "node_modules/htmlparser": { ++ "version": "1.7.7", ++ "resolved": "https://registry.npmjs.org/htmlparser/-/htmlparser-1.7.7.tgz", ++ "integrity": "sha512-zpK66ifkT0fauyFh2Mulrq4AqGTucxGtOhZ8OjkbSfcCpkqQEI8qRkY0tSQSJNAQ4HUZkgWaU4fK4EH6SVH9PQ==", ++ "dev": true, ++ "engines": { ++ "node": ">=0.1.33" ++ } ++ }, ++ "node_modules/iconv-lite": { ++ "version": "0.6.3", ++ "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", ++ "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dev": true, + "dependencies": { +- "wrappy": "1" ++ "safer-buffer": ">= 2.1.2 < 3.0.0" ++ }, ++ "engines": { ++ "node": ">=0.10.0" + } + }, +- "node_modules/open": { +- "version": "7.4.2", +- "resolved": "https://registry.npmjs.org/open/-/open-7.4.2.tgz", +- "integrity": "sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==", ++ "node_modules/ieee754": { ++ "version": "1.2.1", ++ "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", ++ "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", ++ "dev": true, ++ "funding": [ ++ { ++ "type": "github", ++ "url": "https://github.com/sponsors/feross" ++ }, ++ { ++ "type": "patreon", ++ "url": "https://www.patreon.com/feross" ++ }, ++ { ++ "type": "consulting", ++ "url": "https://feross.org/support" ++ } ++ ] ++ }, ++ "node_modules/ignore": { ++ "version": "5.3.1", ++ "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", ++ "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", ++ "dev": true, ++ "engines": { ++ "node": ">= 4" ++ } ++ }, ++ "node_modules/immutable": { ++ "version": "4.3.1", ++ "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.1.tgz", ++ "integrity": "sha512-lj9cnmB/kVS0QHsJnYKD1uo3o39nrbKxszjnqS9Fr6NB7bZzW45U6WSGBPKXDL/CvDKqDNPA4r3DoDQ8GTxo2A==", ++ "dev": true ++ }, ++ "node_modules/import-fresh": { ++ "version": "3.3.0", ++ "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", ++ "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, + "dependencies": { +- "is-docker": "^2.0.0", +- "is-wsl": "^2.1.1" ++ "parent-module": "^1.0.0", ++ "resolve-from": "^4.0.0" + }, + "engines": { +- "node": ">=8" ++ "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, +- "node_modules/os-tmpdir": { +- "version": "1.0.2", +- "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", +- "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", ++ "node_modules/imurmurhash": { ++ "version": "0.1.4", ++ "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", ++ "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "engines": { +- "node": ">=0.10.0" ++ "node": ">=0.8.19" + } + }, +- "node_modules/patch-package": { +- "version": "7.0.2", +- "resolved": "https://registry.npmjs.org/patch-package/-/patch-package-7.0.2.tgz", +- "integrity": "sha512-PMYfL8LXxGIRmxXLqlEaBxzKPu7/SdP13ld6GSfAUJUZRmBDPp8chZs0dpzaAFn9TSPnFiMwkC6PJt6pBiAl8Q==", ++ "node_modules/inflight": { ++ "version": "1.0.6", ++ "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", ++ "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "dev": true, + "dependencies": { +- "@yarnpkg/lockfile": "^1.1.0", +- "chalk": "^4.1.2", +- "ci-info": "^3.7.0", +- "cross-spawn": "^7.0.3", +- "find-yarn-workspace-root": "^2.0.0", +- "fs-extra": "^9.0.0", +- "klaw-sync": "^6.0.0", +- "minimist": "^1.2.6", +- "open": "^7.4.2", +- "rimraf": "^2.6.3", +- "semver": "^7.5.3", +- "slash": "^2.0.0", +- "tmp": "^0.0.33", +- "yaml": "^2.2.2" ++ "once": "^1.3.0", ++ "wrappy": "1" ++ } ++ }, ++ "node_modules/inherits": { ++ "version": "2.0.4", ++ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", ++ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", ++ "dev": true ++ }, ++ "node_modules/ini": { ++ "version": "1.3.8", ++ "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", ++ "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", ++ "dev": true ++ }, ++ "node_modules/internal-slot": { ++ "version": "1.0.7", ++ "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.7.tgz", ++ "integrity": "sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==", ++ "dependencies": { ++ "es-errors": "^1.3.0", ++ "hasown": "^2.0.0", ++ "side-channel": "^1.0.4" + }, ++ "engines": { ++ "node": ">= 0.4" ++ } ++ }, ++ "node_modules/irregular-plurals": { ++ "version": "3.5.0", ++ "resolved": "https://registry.npmjs.org/irregular-plurals/-/irregular-plurals-3.5.0.tgz", ++ "integrity": "sha512-1ANGLZ+Nkv1ptFb2pa8oG8Lem4krflKuX/gINiHJHjJUKaJHk/SXk5x6K3J+39/p0h1RQ2saROclJJ+QLvETCQ==", ++ "dev": true, ++ "engines": { ++ "node": ">=8" ++ } ++ }, ++ "node_modules/is-arguments": { ++ "version": "1.1.1", ++ "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", ++ "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", ++ "peer": true, ++ "dependencies": { ++ "call-bind": "^1.0.2", ++ "has-tostringtag": "^1.0.0" ++ }, ++ "engines": { ++ "node": ">= 0.4" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, ++ "node_modules/is-array-buffer": { ++ "version": "3.0.4", ++ "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.4.tgz", ++ "integrity": "sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==", ++ "dependencies": { ++ "call-bind": "^1.0.2", ++ "get-intrinsic": "^1.2.1" ++ }, ++ "engines": { ++ "node": ">= 0.4" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, ++ "node_modules/is-arrayish": { ++ "version": "0.2.1", ++ "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", ++ "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", ++ "dev": true ++ }, ++ "node_modules/is-async-function": { ++ "version": "2.0.0", ++ "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.0.0.tgz", ++ "integrity": "sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==", ++ "dev": true, ++ "dependencies": { ++ "has-tostringtag": "^1.0.0" ++ }, ++ "engines": { ++ "node": ">= 0.4" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, ++ "node_modules/is-bigint": { ++ "version": "1.0.4", ++ "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", ++ "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", ++ "dependencies": { ++ "has-bigints": "^1.0.1" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, ++ "node_modules/is-binary-path": { ++ "version": "2.1.0", ++ "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", ++ "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", ++ "dev": true, ++ "dependencies": { ++ "binary-extensions": "^2.0.0" ++ }, ++ "engines": { ++ "node": ">=8" ++ } ++ }, ++ "node_modules/is-boolean-object": { ++ "version": "1.1.2", ++ "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", ++ "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", ++ "dependencies": { ++ "call-bind": "^1.0.2", ++ "has-tostringtag": "^1.0.0" ++ }, ++ "engines": { ++ "node": ">= 0.4" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, ++ "node_modules/is-builtin-module": { ++ "version": "3.2.1", ++ "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-3.2.1.tgz", ++ "integrity": "sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A==", ++ "dev": true, ++ "peer": true, ++ "dependencies": { ++ "builtin-modules": "^3.3.0" ++ }, ++ "engines": { ++ "node": ">=6" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/sindresorhus" ++ } ++ }, ++ "node_modules/is-callable": { ++ "version": "1.2.7", ++ "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", ++ "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", ++ "engines": { ++ "node": ">= 0.4" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, ++ "node_modules/is-core-module": { ++ "version": "2.15.0", ++ "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.0.tgz", ++ "integrity": "sha512-Dd+Lb2/zvk9SKy1TGCt1wFJFo/MWBPMX5x7KcvLajWTGuomczdQX61PvY5yK6SVACwpoexWo81IfFyoKY2QnTA==", ++ "dev": true, ++ "dependencies": { ++ "hasown": "^2.0.2" ++ }, ++ "engines": { ++ "node": ">= 0.4" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, ++ "node_modules/is-data-view": { ++ "version": "1.0.1", ++ "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.1.tgz", ++ "integrity": "sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==", ++ "dev": true, ++ "dependencies": { ++ "is-typed-array": "^1.1.13" ++ }, ++ "engines": { ++ "node": ">= 0.4" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, ++ "node_modules/is-date-object": { ++ "version": "1.0.5", ++ "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", ++ "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", ++ "dependencies": { ++ "has-tostringtag": "^1.0.0" ++ }, ++ "engines": { ++ "node": ">= 0.4" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, ++ "node_modules/is-docker": { ++ "version": "2.2.1", ++ "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", ++ "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", ++ "dev": true, ++ "bin": { ++ "is-docker": "cli.js" ++ }, ++ "engines": { ++ "node": ">=8" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/sindresorhus" ++ } ++ }, ++ "node_modules/is-extglob": { ++ "version": "2.1.1", ++ "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", ++ "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", ++ "dev": true, ++ "engines": { ++ "node": ">=0.10.0" ++ } ++ }, ++ "node_modules/is-finalizationregistry": { ++ "version": "1.0.2", ++ "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.0.2.tgz", ++ "integrity": "sha512-0by5vtUJs8iFQb5TYUHHPudOR+qXYIMKtiUzvLIZITZUjknFmziyBJuLhVRc+Ds0dREFlskDNJKYIdIzu/9pfw==", ++ "dev": true, ++ "dependencies": { ++ "call-bind": "^1.0.2" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, ++ "node_modules/is-fullwidth-code-point": { ++ "version": "3.0.0", ++ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", ++ "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", ++ "engines": { ++ "node": ">=8" ++ } ++ }, ++ "node_modules/is-generator-function": { ++ "version": "1.0.10", ++ "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz", ++ "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==", ++ "dev": true, ++ "dependencies": { ++ "has-tostringtag": "^1.0.0" ++ }, ++ "engines": { ++ "node": ">= 0.4" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, ++ "node_modules/is-glob": { ++ "version": "4.0.3", ++ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", ++ "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", ++ "dev": true, ++ "dependencies": { ++ "is-extglob": "^2.1.1" ++ }, ++ "engines": { ++ "node": ">=0.10.0" ++ } ++ }, ++ "node_modules/is-map": { ++ "version": "2.0.2", ++ "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.2.tgz", ++ "integrity": "sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==", ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, ++ "node_modules/is-negative-zero": { ++ "version": "2.0.3", ++ "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz", ++ "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==", ++ "dev": true, ++ "engines": { ++ "node": ">= 0.4" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, ++ "node_modules/is-number": { ++ "version": "7.0.0", ++ "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", ++ "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", ++ "dev": true, ++ "engines": { ++ "node": ">=0.12.0" ++ } ++ }, ++ "node_modules/is-number-object": { ++ "version": "1.0.7", ++ "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", ++ "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", ++ "dependencies": { ++ "has-tostringtag": "^1.0.0" ++ }, ++ "engines": { ++ "node": ">= 0.4" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, ++ "node_modules/is-path-inside": { ++ "version": "3.0.3", ++ "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", ++ "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", ++ "dev": true, ++ "engines": { ++ "node": ">=8" ++ } ++ }, ++ "node_modules/is-plain-object": { ++ "version": "5.0.0", ++ "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", ++ "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", ++ "dev": true, ++ "engines": { ++ "node": ">=0.10.0" ++ } ++ }, ++ "node_modules/is-regex": { ++ "version": "1.1.4", ++ "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", ++ "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", ++ "dependencies": { ++ "call-bind": "^1.0.2", ++ "has-tostringtag": "^1.0.0" ++ }, ++ "engines": { ++ "node": ">= 0.4" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, ++ "node_modules/is-set": { ++ "version": "2.0.2", ++ "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.2.tgz", ++ "integrity": "sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==", ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, ++ "node_modules/is-shared-array-buffer": { ++ "version": "1.0.3", ++ "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.3.tgz", ++ "integrity": "sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==", ++ "dependencies": { ++ "call-bind": "^1.0.7" ++ }, ++ "engines": { ++ "node": ">= 0.4" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, ++ "node_modules/is-string": { ++ "version": "1.0.7", ++ "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", ++ "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", ++ "dependencies": { ++ "has-tostringtag": "^1.0.0" ++ }, ++ "engines": { ++ "node": ">= 0.4" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, ++ "node_modules/is-symbol": { ++ "version": "1.0.4", ++ "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", ++ "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", ++ "dependencies": { ++ "has-symbols": "^1.0.2" ++ }, ++ "engines": { ++ "node": ">= 0.4" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, ++ "node_modules/is-typed-array": { ++ "version": "1.1.13", ++ "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.13.tgz", ++ "integrity": "sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==", ++ "dev": true, ++ "dependencies": { ++ "which-typed-array": "^1.1.14" ++ }, ++ "engines": { ++ "node": ">= 0.4" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, ++ "node_modules/is-unicode-supported": { ++ "version": "1.3.0", ++ "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-1.3.0.tgz", ++ "integrity": "sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ==", ++ "dev": true, ++ "engines": { ++ "node": ">=12" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/sindresorhus" ++ } ++ }, ++ "node_modules/is-weakmap": { ++ "version": "2.0.1", ++ "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.1.tgz", ++ "integrity": "sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==", ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, ++ "node_modules/is-weakref": { ++ "version": "1.0.2", ++ "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", ++ "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", ++ "dev": true, ++ "dependencies": { ++ "call-bind": "^1.0.2" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, ++ "node_modules/is-weakset": { ++ "version": "2.0.2", ++ "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.2.tgz", ++ "integrity": "sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==", ++ "dependencies": { ++ "call-bind": "^1.0.2", ++ "get-intrinsic": "^1.1.1" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, ++ "node_modules/is-wsl": { ++ "version": "2.2.0", ++ "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", ++ "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", ++ "dev": true, ++ "dependencies": { ++ "is-docker": "^2.0.0" ++ }, ++ "engines": { ++ "node": ">=8" ++ } ++ }, ++ "node_modules/isarray": { ++ "version": "2.0.5", ++ "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", ++ "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==" ++ }, ++ "node_modules/isexe": { ++ "version": "2.0.0", ++ "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", ++ "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" ++ }, ++ "node_modules/iterator.prototype": { ++ "version": "1.1.2", ++ "resolved": "https://registry.npmjs.org/iterator.prototype/-/iterator.prototype-1.1.2.tgz", ++ "integrity": "sha512-DR33HMMr8EzwuRL8Y9D3u2BMj8+RqSE850jfGu59kS7tbmPLzGkZmVSfyCFSDxuZiEY6Rzt3T2NA/qU+NwVj1w==", ++ "dev": true, ++ "dependencies": { ++ "define-properties": "^1.2.1", ++ "get-intrinsic": "^1.2.1", ++ "has-symbols": "^1.0.3", ++ "reflect.getprototypeof": "^1.0.4", ++ "set-function-name": "^2.0.1" ++ } ++ }, ++ "node_modules/jackspeak": { ++ "version": "4.0.1", ++ "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-4.0.1.tgz", ++ "integrity": "sha512-cub8rahkh0Q/bw1+GxP7aeSe29hHHn2V4m29nnDlvCdlgU+3UGxkZp7Z53jLUdpX3jdTO0nJZUDl3xvbWc2Xog==", ++ "dependencies": { ++ "@isaacs/cliui": "^8.0.2" ++ }, ++ "engines": { ++ "node": "20 || >=22" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/isaacs" ++ }, ++ "optionalDependencies": { ++ "@pkgjs/parseargs": "^0.11.0" ++ } ++ }, ++ "node_modules/jed": { ++ "version": "1.1.1", ++ "resolved": "https://registry.npmjs.org/jed/-/jed-1.1.1.tgz", ++ "integrity": "sha512-z35ZSEcXHxLW4yumw0dF6L464NT36vmx3wxJw8MDpraBcWuNVgUPZgPJKcu1HekNgwlMFNqol7i/IpSbjhqwqA==", ++ "dev": true ++ }, ++ "node_modules/jest-worker": { ++ "version": "27.5.1", ++ "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", ++ "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", ++ "dev": true, ++ "peer": true, ++ "dependencies": { ++ "@types/node": "*", ++ "merge-stream": "^2.0.0", ++ "supports-color": "^8.0.0" ++ }, ++ "engines": { ++ "node": ">= 10.13.0" ++ } ++ }, ++ "node_modules/jest-worker/node_modules/has-flag": { ++ "version": "4.0.0", ++ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", ++ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", ++ "dev": true, ++ "peer": true, ++ "engines": { ++ "node": ">=8" ++ } ++ }, ++ "node_modules/jest-worker/node_modules/supports-color": { ++ "version": "8.1.1", ++ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", ++ "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", ++ "dev": true, ++ "peer": true, ++ "dependencies": { ++ "has-flag": "^4.0.0" ++ }, ++ "engines": { ++ "node": ">=10" ++ }, ++ "funding": { ++ "url": "https://github.com/chalk/supports-color?sponsor=1" ++ } ++ }, ++ "node_modules/js-tokens": { ++ "version": "4.0.0", ++ "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", ++ "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" ++ }, ++ "node_modules/js-yaml": { ++ "version": "4.1.0", ++ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", ++ "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", ++ "dev": true, ++ "dependencies": { ++ "argparse": "^2.0.1" ++ }, ++ "bin": { ++ "js-yaml": "bin/js-yaml.js" ++ } ++ }, ++ "node_modules/jsesc": { ++ "version": "2.5.2", ++ "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", ++ "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", ++ "dev": true, ++ "peer": true, ++ "bin": { ++ "jsesc": "bin/jsesc" ++ }, ++ "engines": { ++ "node": ">=4" ++ } ++ }, ++ "node_modules/json-buffer": { ++ "version": "3.0.1", ++ "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", ++ "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", ++ "dev": true ++ }, ++ "node_modules/json-parse-even-better-errors": { ++ "version": "2.3.1", ++ "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", ++ "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", ++ "dev": true ++ }, ++ "node_modules/json-schema-traverse": { ++ "version": "0.4.1", ++ "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", ++ "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", ++ "dev": true ++ }, ++ "node_modules/json-stable-stringify-without-jsonify": { ++ "version": "1.0.1", ++ "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", ++ "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", ++ "dev": true ++ }, ++ "node_modules/json5": { ++ "version": "2.2.3", ++ "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", ++ "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", ++ "dev": true, ++ "peer": true, ++ "bin": { ++ "json5": "lib/cli.js" ++ }, ++ "engines": { ++ "node": ">=6" ++ } ++ }, ++ "node_modules/jsonfile": { ++ "version": "6.1.0", ++ "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", ++ "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", ++ "dev": true, ++ "dependencies": { ++ "universalify": "^2.0.0" ++ }, ++ "optionalDependencies": { ++ "graceful-fs": "^4.1.6" ++ } ++ }, ++ "node_modules/jsx-ast-utils": { ++ "version": "3.3.5", ++ "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.5.tgz", ++ "integrity": "sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==", ++ "dev": true, ++ "dependencies": { ++ "array-includes": "^3.1.6", ++ "array.prototype.flat": "^1.3.1", ++ "object.assign": "^4.1.4", ++ "object.values": "^1.1.6" ++ }, ++ "engines": { ++ "node": ">=4.0" ++ } ++ }, ++ "node_modules/keyv": { ++ "version": "4.5.4", ++ "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", ++ "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", ++ "dev": true, ++ "dependencies": { ++ "json-buffer": "3.0.1" ++ } ++ }, ++ "node_modules/kind-of": { ++ "version": "6.0.3", ++ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", ++ "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", ++ "dev": true, ++ "engines": { ++ "node": ">=0.10.0" ++ } ++ }, ++ "node_modules/klaw-sync": { ++ "version": "6.0.0", ++ "resolved": "https://registry.npmjs.org/klaw-sync/-/klaw-sync-6.0.0.tgz", ++ "integrity": "sha512-nIeuVSzdCCs6TDPTqI8w1Yre34sSq7AkZ4B3sfOBbI2CgVSB4Du4aLQijFU2+lhAFCwt9+42Hel6lQNIv6AntQ==", ++ "dev": true, ++ "dependencies": { ++ "graceful-fs": "^4.1.11" ++ } ++ }, ++ "node_modules/known-css-properties": { ++ "version": "0.34.0", ++ "resolved": "https://registry.npmjs.org/known-css-properties/-/known-css-properties-0.34.0.tgz", ++ "integrity": "sha512-tBECoUqNFbyAY4RrbqsBQqDFpGXAEbdD5QKr8kACx3+rnArmuuR22nKQWKazvp07N9yjTyDZaw/20UIH8tL9DQ==", ++ "dev": true ++ }, ++ "node_modules/levn": { ++ "version": "0.4.1", ++ "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", ++ "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", ++ "dev": true, ++ "dependencies": { ++ "prelude-ls": "^1.2.1", ++ "type-check": "~0.4.0" ++ }, ++ "engines": { ++ "node": ">= 0.8.0" ++ } ++ }, ++ "node_modules/lines-and-columns": { ++ "version": "1.2.4", ++ "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", ++ "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", ++ "dev": true ++ }, ++ "node_modules/loader-runner": { ++ "version": "4.3.0", ++ "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", ++ "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", ++ "dev": true, ++ "peer": true, ++ "engines": { ++ "node": ">=6.11.5" ++ } ++ }, ++ "node_modules/locate-path": { ++ "version": "6.0.0", ++ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", ++ "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", ++ "dev": true, ++ "dependencies": { ++ "p-locate": "^5.0.0" ++ }, ++ "engines": { ++ "node": ">=10" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/sindresorhus" ++ } ++ }, ++ "node_modules/lodash.merge": { ++ "version": "4.6.2", ++ "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", ++ "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", ++ "dev": true ++ }, ++ "node_modules/lodash.truncate": { ++ "version": "4.4.2", ++ "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", ++ "integrity": "sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw==", ++ "dev": true ++ }, ++ "node_modules/log-symbols": { ++ "version": "6.0.0", ++ "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-6.0.0.tgz", ++ "integrity": "sha512-i24m8rpwhmPIS4zscNzK6MSEhk0DUWa/8iYQWxhffV8jkI4Phvs3F+quL5xvS0gdQR0FyTCMMH33Y78dDTzzIw==", ++ "dev": true, ++ "dependencies": { ++ "chalk": "^5.3.0", ++ "is-unicode-supported": "^1.3.0" ++ }, ++ "engines": { ++ "node": ">=18" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/sindresorhus" ++ } ++ }, ++ "node_modules/log-symbols/node_modules/chalk": { ++ "version": "5.3.0", ++ "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz", ++ "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==", ++ "dev": true, ++ "engines": { ++ "node": "^12.17.0 || ^14.13 || >=16.0.0" ++ }, ++ "funding": { ++ "url": "https://github.com/chalk/chalk?sponsor=1" ++ } ++ }, ++ "node_modules/loose-envify": { ++ "version": "1.4.0", ++ "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", ++ "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", ++ "dependencies": { ++ "js-tokens": "^3.0.0 || ^4.0.0" ++ }, ++ "bin": { ++ "loose-envify": "cli.js" ++ } ++ }, ++ "node_modules/lru-cache": { ++ "version": "5.1.1", ++ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", ++ "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", ++ "dev": true, ++ "peer": true, ++ "dependencies": { ++ "yallist": "^3.0.2" ++ } ++ }, ++ "node_modules/magic-string": { ++ "version": "0.25.9", ++ "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz", ++ "integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==", ++ "dev": true, ++ "dependencies": { ++ "sourcemap-codec": "^1.4.8" ++ } ++ }, ++ "node_modules/mathml-tag-names": { ++ "version": "2.1.3", ++ "resolved": "https://registry.npmjs.org/mathml-tag-names/-/mathml-tag-names-2.1.3.tgz", ++ "integrity": "sha512-APMBEanjybaPzUrfqU0IMU5I0AswKMH7k8OTLs0vvV4KZpExkTkY87nR/zpbuTPj+gARop7aGUbl11pnDfW6xg==", ++ "dev": true, ++ "funding": { ++ "type": "github", ++ "url": "https://github.com/sponsors/wooorm" ++ } ++ }, ++ "node_modules/mdn-data": { ++ "version": "2.0.30", ++ "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.30.tgz", ++ "integrity": "sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==", ++ "dev": true ++ }, ++ "node_modules/meow": { ++ "version": "13.2.0", ++ "resolved": "https://registry.npmjs.org/meow/-/meow-13.2.0.tgz", ++ "integrity": "sha512-pxQJQzB6djGPXh08dacEloMFopsOqGVRKFPYvPOt9XDZ1HasbgDZA74CJGreSU4G3Ak7EFJGoiH2auq+yXISgA==", ++ "dev": true, ++ "engines": { ++ "node": ">=18" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/sindresorhus" ++ } ++ }, ++ "node_modules/merge-stream": { ++ "version": "2.0.0", ++ "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", ++ "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", ++ "dev": true, ++ "peer": true ++ }, ++ "node_modules/merge2": { ++ "version": "1.4.1", ++ "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", ++ "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", ++ "dev": true, ++ "engines": { ++ "node": ">= 8" ++ } ++ }, ++ "node_modules/micromatch": { ++ "version": "4.0.7", ++ "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.7.tgz", ++ "integrity": "sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==", ++ "dev": true, ++ "dependencies": { ++ "braces": "^3.0.3", ++ "picomatch": "^2.3.1" ++ }, ++ "engines": { ++ "node": ">=8.6" ++ } ++ }, ++ "node_modules/mime-db": { ++ "version": "1.52.0", ++ "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", ++ "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", ++ "dev": true, ++ "peer": true, ++ "engines": { ++ "node": ">= 0.6" ++ } ++ }, ++ "node_modules/mime-types": { ++ "version": "2.1.35", ++ "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", ++ "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", ++ "dev": true, ++ "peer": true, ++ "dependencies": { ++ "mime-db": "1.52.0" ++ }, ++ "engines": { ++ "node": ">= 0.6" ++ } ++ }, ++ "node_modules/minimatch": { ++ "version": "9.0.5", ++ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", ++ "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", ++ "dev": true, ++ "dependencies": { ++ "brace-expansion": "^2.0.1" ++ }, ++ "engines": { ++ "node": ">=16 || 14 >=14.17" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/isaacs" ++ } ++ }, ++ "node_modules/minimist": { ++ "version": "1.2.8", ++ "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", ++ "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", ++ "dev": true, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, ++ "node_modules/minipass": { ++ "version": "7.1.2", ++ "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", ++ "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", ++ "engines": { ++ "node": ">=16 || 14 >=14.17" ++ } ++ }, ++ "node_modules/ms": { ++ "version": "2.1.2", ++ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", ++ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", ++ "dev": true ++ }, ++ "node_modules/nanoid": { ++ "version": "3.3.7", ++ "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", ++ "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", ++ "dev": true, ++ "funding": [ ++ { ++ "type": "github", ++ "url": "https://github.com/sponsors/ai" ++ } ++ ], ++ "bin": { ++ "nanoid": "bin/nanoid.cjs" ++ }, ++ "engines": { ++ "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" ++ } ++ }, ++ "node_modules/natural-compare": { ++ "version": "1.4.0", ++ "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", ++ "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", ++ "dev": true ++ }, ++ "node_modules/neo-async": { ++ "version": "2.6.2", ++ "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", ++ "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", ++ "dev": true, ++ "peer": true ++ }, ++ "node_modules/node-releases": { ++ "version": "2.0.13", ++ "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz", ++ "integrity": "sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==", ++ "dev": true, ++ "peer": true ++ }, ++ "node_modules/node-watch": { ++ "version": "0.7.3", ++ "resolved": "https://registry.npmjs.org/node-watch/-/node-watch-0.7.3.tgz", ++ "integrity": "sha512-3l4E8uMPY1HdMMryPRUAl+oIHtXtyiTlIiESNSVSNxcPfzAFzeTbXFQkZfAwBbo0B1qMSG8nUABx+Gd+YrbKrQ==", ++ "dev": true, ++ "engines": { ++ "node": ">=6" ++ } ++ }, ++ "node_modules/normalize-path": { ++ "version": "3.0.0", ++ "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", ++ "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", ++ "dev": true, ++ "engines": { ++ "node": ">=0.10.0" ++ } ++ }, ++ "node_modules/object-assign": { ++ "version": "4.1.1", ++ "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", ++ "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", ++ "engines": { ++ "node": ">=0.10.0" ++ } ++ }, ++ "node_modules/object-inspect": { ++ "version": "1.13.2", ++ "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.2.tgz", ++ "integrity": "sha512-IRZSRuzJiynemAXPYtPe5BoI/RESNYR7TYm50MC5Mqbd3Jmw5y790sErYw3V6SryFJD64b74qQQs9wn5Bg/k3g==", ++ "engines": { ++ "node": ">= 0.4" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, ++ "node_modules/object-is": { ++ "version": "1.1.5", ++ "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz", ++ "integrity": "sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==", ++ "peer": true, ++ "dependencies": { ++ "call-bind": "^1.0.2", ++ "define-properties": "^1.1.3" ++ }, ++ "engines": { ++ "node": ">= 0.4" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, ++ "node_modules/object-keys": { ++ "version": "1.1.1", ++ "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", ++ "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", ++ "engines": { ++ "node": ">= 0.4" ++ } ++ }, ++ "node_modules/object.assign": { ++ "version": "4.1.5", ++ "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.5.tgz", ++ "integrity": "sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==", ++ "dependencies": { ++ "call-bind": "^1.0.5", ++ "define-properties": "^1.2.1", ++ "has-symbols": "^1.0.3", ++ "object-keys": "^1.1.1" ++ }, ++ "engines": { ++ "node": ">= 0.4" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, ++ "node_modules/object.entries": { ++ "version": "1.1.8", ++ "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.8.tgz", ++ "integrity": "sha512-cmopxi8VwRIAw/fkijJohSfpef5PdN0pMQJN6VC/ZKvn0LIknWD8KtgY6KlQdEc4tIjcQ3HxSMmnvtzIscdaYQ==", ++ "dev": true, ++ "dependencies": { ++ "call-bind": "^1.0.7", ++ "define-properties": "^1.2.1", ++ "es-object-atoms": "^1.0.0" ++ }, ++ "engines": { ++ "node": ">= 0.4" ++ } ++ }, ++ "node_modules/object.fromentries": { ++ "version": "2.0.8", ++ "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.8.tgz", ++ "integrity": "sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==", ++ "dev": true, ++ "dependencies": { ++ "call-bind": "^1.0.7", ++ "define-properties": "^1.2.1", ++ "es-abstract": "^1.23.2", ++ "es-object-atoms": "^1.0.0" ++ }, ++ "engines": { ++ "node": ">= 0.4" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, ++ "node_modules/object.groupby": { ++ "version": "1.0.3", ++ "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.3.tgz", ++ "integrity": "sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==", ++ "dev": true, ++ "dependencies": { ++ "call-bind": "^1.0.7", ++ "define-properties": "^1.2.1", ++ "es-abstract": "^1.23.2" ++ }, ++ "engines": { ++ "node": ">= 0.4" ++ } ++ }, ++ "node_modules/object.values": { ++ "version": "1.2.0", ++ "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.2.0.tgz", ++ "integrity": "sha512-yBYjY9QX2hnRmZHAjG/f13MzmBzxzYgQhFrke06TTyKY5zSTEqkOeukBzIdVA3j3ulu8Qa3MbVFShV7T2RmGtQ==", ++ "dev": true, ++ "dependencies": { ++ "call-bind": "^1.0.7", ++ "define-properties": "^1.2.1", ++ "es-object-atoms": "^1.0.0" ++ }, ++ "engines": { ++ "node": ">= 0.4" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, ++ "node_modules/once": { ++ "version": "1.4.0", ++ "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", ++ "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", ++ "dev": true, ++ "dependencies": { ++ "wrappy": "1" ++ } ++ }, ++ "node_modules/open": { ++ "version": "7.4.2", ++ "resolved": "https://registry.npmjs.org/open/-/open-7.4.2.tgz", ++ "integrity": "sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==", ++ "dev": true, ++ "dependencies": { ++ "is-docker": "^2.0.0", ++ "is-wsl": "^2.1.1" ++ }, ++ "engines": { ++ "node": ">=8" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/sindresorhus" ++ } ++ }, ++ "node_modules/optionator": { ++ "version": "0.9.4", ++ "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", ++ "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", ++ "dev": true, ++ "dependencies": { ++ "deep-is": "^0.1.3", ++ "fast-levenshtein": "^2.0.6", ++ "levn": "^0.4.1", ++ "prelude-ls": "^1.2.1", ++ "type-check": "^0.4.0", ++ "word-wrap": "^1.2.5" ++ }, ++ "engines": { ++ "node": ">= 0.8.0" ++ } ++ }, ++ "node_modules/os-tmpdir": { ++ "version": "1.0.2", ++ "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", ++ "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", ++ "dev": true, ++ "engines": { ++ "node": ">=0.10.0" ++ } ++ }, ++ "node_modules/p-limit": { ++ "version": "3.1.0", ++ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", ++ "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", ++ "dev": true, ++ "dependencies": { ++ "yocto-queue": "^0.1.0" ++ }, ++ "engines": { ++ "node": ">=10" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/sindresorhus" ++ } ++ }, ++ "node_modules/p-locate": { ++ "version": "5.0.0", ++ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", ++ "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", ++ "dev": true, ++ "dependencies": { ++ "p-limit": "^3.0.2" ++ }, ++ "engines": { ++ "node": ">=10" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/sindresorhus" ++ } ++ }, ++ "node_modules/package-json-from-dist": { ++ "version": "1.0.0", ++ "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.0.tgz", ++ "integrity": "sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw==" ++ }, ++ "node_modules/parent-module": { ++ "version": "1.0.1", ++ "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", ++ "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", ++ "dev": true, ++ "dependencies": { ++ "callsites": "^3.0.0" ++ }, ++ "engines": { ++ "node": ">=6" ++ } ++ }, ++ "node_modules/parse-json": { ++ "version": "5.2.0", ++ "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", ++ "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", ++ "dev": true, ++ "dependencies": { ++ "@babel/code-frame": "^7.0.0", ++ "error-ex": "^1.3.1", ++ "json-parse-even-better-errors": "^2.3.0", ++ "lines-and-columns": "^1.1.6" ++ }, ++ "engines": { ++ "node": ">=8" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/sindresorhus" ++ } ++ }, ++ "node_modules/patch-package": { ++ "version": "7.0.2", ++ "resolved": "https://registry.npmjs.org/patch-package/-/patch-package-7.0.2.tgz", ++ "integrity": "sha512-PMYfL8LXxGIRmxXLqlEaBxzKPu7/SdP13ld6GSfAUJUZRmBDPp8chZs0dpzaAFn9TSPnFiMwkC6PJt6pBiAl8Q==", ++ "dev": true, ++ "dependencies": { ++ "@yarnpkg/lockfile": "^1.1.0", ++ "chalk": "^4.1.2", ++ "ci-info": "^3.7.0", ++ "cross-spawn": "^7.0.3", ++ "find-yarn-workspace-root": "^2.0.0", ++ "fs-extra": "^9.0.0", ++ "klaw-sync": "^6.0.0", ++ "minimist": "^1.2.6", ++ "open": "^7.4.2", ++ "rimraf": "^2.6.3", ++ "semver": "^7.5.3", ++ "slash": "^2.0.0", ++ "tmp": "^0.0.33", ++ "yaml": "^2.2.2" ++ }, ++ "bin": { ++ "patch-package": "index.js" ++ }, ++ "engines": { ++ "node": ">=14", ++ "npm": ">5" ++ } ++ }, ++ "node_modules/patch-package/node_modules/ansi-styles": { ++ "version": "4.3.0", ++ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", ++ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", ++ "dev": true, ++ "dependencies": { ++ "color-convert": "^2.0.1" ++ }, ++ "engines": { ++ "node": ">=8" ++ }, ++ "funding": { ++ "url": "https://github.com/chalk/ansi-styles?sponsor=1" ++ } ++ }, ++ "node_modules/patch-package/node_modules/chalk": { ++ "version": "4.1.2", ++ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", ++ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", ++ "dev": true, ++ "dependencies": { ++ "ansi-styles": "^4.1.0", ++ "supports-color": "^7.1.0" ++ }, ++ "engines": { ++ "node": ">=10" ++ }, ++ "funding": { ++ "url": "https://github.com/chalk/chalk?sponsor=1" ++ } ++ }, ++ "node_modules/patch-package/node_modules/color-convert": { ++ "version": "2.0.1", ++ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", ++ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", ++ "dev": true, ++ "dependencies": { ++ "color-name": "~1.1.4" ++ }, ++ "engines": { ++ "node": ">=7.0.0" ++ } ++ }, ++ "node_modules/patch-package/node_modules/color-name": { ++ "version": "1.1.4", ++ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", ++ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", ++ "dev": true ++ }, ++ "node_modules/patch-package/node_modules/fs-extra": { ++ "version": "9.1.0", ++ "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", ++ "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", ++ "dev": true, ++ "dependencies": { ++ "at-least-node": "^1.0.0", ++ "graceful-fs": "^4.2.0", ++ "jsonfile": "^6.0.1", ++ "universalify": "^2.0.0" ++ }, ++ "engines": { ++ "node": ">=10" ++ } ++ }, ++ "node_modules/patch-package/node_modules/has-flag": { ++ "version": "4.0.0", ++ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", ++ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", ++ "dev": true, ++ "engines": { ++ "node": ">=8" ++ } ++ }, ++ "node_modules/patch-package/node_modules/lru-cache": { ++ "version": "6.0.0", ++ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", ++ "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", ++ "dev": true, ++ "dependencies": { ++ "yallist": "^4.0.0" ++ }, ++ "engines": { ++ "node": ">=10" ++ } ++ }, ++ "node_modules/patch-package/node_modules/semver": { ++ "version": "7.5.4", ++ "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", ++ "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", ++ "dev": true, ++ "dependencies": { ++ "lru-cache": "^6.0.0" ++ }, ++ "bin": { ++ "semver": "bin/semver.js" ++ }, ++ "engines": { ++ "node": ">=10" ++ } ++ }, ++ "node_modules/patch-package/node_modules/slash": { ++ "version": "2.0.0", ++ "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", ++ "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==", ++ "dev": true, ++ "engines": { ++ "node": ">=6" ++ } ++ }, ++ "node_modules/patch-package/node_modules/supports-color": { ++ "version": "7.2.0", ++ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", ++ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", ++ "dev": true, ++ "dependencies": { ++ "has-flag": "^4.0.0" ++ }, ++ "engines": { ++ "node": ">=8" ++ } ++ }, ++ "node_modules/patch-package/node_modules/yallist": { ++ "version": "4.0.0", ++ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", ++ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", ++ "dev": true ++ }, ++ "node_modules/path-exists": { ++ "version": "4.0.0", ++ "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", ++ "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", ++ "dev": true, ++ "engines": { ++ "node": ">=8" ++ } ++ }, ++ "node_modules/path-is-absolute": { ++ "version": "1.0.1", ++ "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", ++ "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", ++ "dev": true, ++ "engines": { ++ "node": ">=0.10.0" ++ } ++ }, ++ "node_modules/path-key": { ++ "version": "3.1.1", ++ "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", ++ "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", ++ "engines": { ++ "node": ">=8" ++ } ++ }, ++ "node_modules/path-parse": { ++ "version": "1.0.7", ++ "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", ++ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", ++ "dev": true ++ }, ++ "node_modules/path-scurry": { ++ "version": "2.0.0", ++ "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-2.0.0.tgz", ++ "integrity": "sha512-ypGJsmGtdXUOeM5u93TyeIEfEhM6s+ljAhrk5vAvSx8uyY/02OvrZnA0YNGUrPXfpJMgI1ODd3nwz8Npx4O4cg==", ++ "dependencies": { ++ "lru-cache": "^11.0.0", ++ "minipass": "^7.1.2" ++ }, ++ "engines": { ++ "node": "20 || >=22" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/isaacs" ++ } ++ }, ++ "node_modules/path-scurry/node_modules/lru-cache": { ++ "version": "11.0.0", ++ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.0.0.tgz", ++ "integrity": "sha512-Qv32eSV1RSCfhY3fpPE2GNZ8jgM9X7rdAfemLWqTUxwiyIC4jJ6Sy0fZ8H+oLWevO6i4/bizg7c8d8i6bxrzbA==", ++ "engines": { ++ "node": "20 || >=22" ++ } ++ }, ++ "node_modules/path-type": { ++ "version": "4.0.0", ++ "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", ++ "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", ++ "dev": true, ++ "engines": { ++ "node": ">=8" ++ } ++ }, ++ "node_modules/picocolors": { ++ "version": "1.0.1", ++ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz", ++ "integrity": "sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==", ++ "dev": true ++ }, ++ "node_modules/picomatch": { ++ "version": "2.3.1", ++ "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", ++ "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", ++ "dev": true, ++ "engines": { ++ "node": ">=8.6" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/jonschlinkert" ++ } ++ }, ++ "node_modules/plur": { ++ "version": "5.1.0", ++ "resolved": "https://registry.npmjs.org/plur/-/plur-5.1.0.tgz", ++ "integrity": "sha512-VP/72JeXqak2KiOzjgKtQen5y3IZHn+9GOuLDafPv0eXa47xq0At93XahYBs26MsifCQ4enGKwbjBTKgb9QJXg==", ++ "dev": true, ++ "dependencies": { ++ "irregular-plurals": "^3.3.0" ++ }, ++ "engines": { ++ "node": "^12.20.0 || ^14.13.1 || >=16.0.0" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/sindresorhus" ++ } ++ }, ++ "node_modules/possible-typed-array-names": { ++ "version": "1.0.0", ++ "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz", ++ "integrity": "sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==", ++ "engines": { ++ "node": ">= 0.4" ++ } ++ }, ++ "node_modules/postcss": { ++ "version": "8.4.39", ++ "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.39.tgz", ++ "integrity": "sha512-0vzE+lAiG7hZl1/9I8yzKLx3aR9Xbof3fBHKunvMfOCYAtMhrsnccJY2iTURb9EZd5+pLuiNV9/c/GZJOHsgIw==", ++ "dev": true, ++ "funding": [ ++ { ++ "type": "opencollective", ++ "url": "https://opencollective.com/postcss/" ++ }, ++ { ++ "type": "tidelift", ++ "url": "https://tidelift.com/funding/github/npm/postcss" ++ }, ++ { ++ "type": "github", ++ "url": "https://github.com/sponsors/ai" ++ } ++ ], ++ "dependencies": { ++ "nanoid": "^3.3.7", ++ "picocolors": "^1.0.1", ++ "source-map-js": "^1.2.0" ++ }, ++ "engines": { ++ "node": "^10 || ^12 || >=14" ++ } ++ }, ++ "node_modules/postcss-media-query-parser": { ++ "version": "0.2.3", ++ "resolved": "https://registry.npmjs.org/postcss-media-query-parser/-/postcss-media-query-parser-0.2.3.tgz", ++ "integrity": "sha512-3sOlxmbKcSHMjlUXQZKQ06jOswE7oVkXPxmZdoB1r5l0q6gTFTQSHxNxOrCccElbW7dxNytifNEo8qidX2Vsig==", ++ "dev": true ++ }, ++ "node_modules/postcss-resolve-nested-selector": { ++ "version": "0.1.1", ++ "resolved": "https://registry.npmjs.org/postcss-resolve-nested-selector/-/postcss-resolve-nested-selector-0.1.1.tgz", ++ "integrity": "sha512-HvExULSwLqHLgUy1rl3ANIqCsvMS0WHss2UOsXhXnQaZ9VCc2oBvIpXrl00IUFT5ZDITME0o6oiXeiHr2SAIfw==", ++ "dev": true ++ }, ++ "node_modules/postcss-safe-parser": { ++ "version": "7.0.0", ++ "resolved": "https://registry.npmjs.org/postcss-safe-parser/-/postcss-safe-parser-7.0.0.tgz", ++ "integrity": "sha512-ovehqRNVCpuFzbXoTb4qLtyzK3xn3t/CUBxOs8LsnQjQrShaB4lKiHoVqY8ANaC0hBMHq5QVWk77rwGklFUDrg==", ++ "dev": true, ++ "funding": [ ++ { ++ "type": "opencollective", ++ "url": "https://opencollective.com/postcss/" ++ }, ++ { ++ "type": "tidelift", ++ "url": "https://tidelift.com/funding/github/npm/postcss-safe-parser" ++ }, ++ { ++ "type": "github", ++ "url": "https://github.com/sponsors/ai" ++ } ++ ], ++ "engines": { ++ "node": ">=18.0" ++ }, ++ "peerDependencies": { ++ "postcss": "^8.4.31" ++ } ++ }, ++ "node_modules/postcss-scss": { ++ "version": "4.0.9", ++ "resolved": "https://registry.npmjs.org/postcss-scss/-/postcss-scss-4.0.9.tgz", ++ "integrity": "sha512-AjKOeiwAitL/MXxQW2DliT28EKukvvbEWx3LBmJIRN8KfBGZbRTxNYW0kSqi1COiTZ57nZ9NW06S6ux//N1c9A==", ++ "dev": true, ++ "funding": [ ++ { ++ "type": "opencollective", ++ "url": "https://opencollective.com/postcss/" ++ }, ++ { ++ "type": "tidelift", ++ "url": "https://tidelift.com/funding/github/npm/postcss-scss" ++ }, ++ { ++ "type": "github", ++ "url": "https://github.com/sponsors/ai" ++ } ++ ], ++ "engines": { ++ "node": ">=12.0" ++ }, ++ "peerDependencies": { ++ "postcss": "^8.4.29" ++ } ++ }, ++ "node_modules/postcss-selector-parser": { ++ "version": "6.1.1", ++ "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.1.tgz", ++ "integrity": "sha512-b4dlw/9V8A71rLIDsSwVmak9z2DuBUB7CA1/wSdelNEzqsjoSPeADTWNO09lpH49Diy3/JIZ2bSPB1dI3LJCHg==", ++ "dev": true, ++ "dependencies": { ++ "cssesc": "^3.0.0", ++ "util-deprecate": "^1.0.2" ++ }, ++ "engines": { ++ "node": ">=4" ++ } ++ }, ++ "node_modules/postcss-value-parser": { ++ "version": "4.2.0", ++ "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", ++ "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", ++ "dev": true ++ }, ++ "node_modules/prelude-ls": { ++ "version": "1.2.1", ++ "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", ++ "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", ++ "dev": true, ++ "engines": { ++ "node": ">= 0.8.0" ++ } ++ }, ++ "node_modules/process": { ++ "version": "0.11.10", ++ "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", ++ "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", ++ "dev": true, ++ "engines": { ++ "node": ">= 0.6.0" ++ } ++ }, ++ "node_modules/prop-types": { ++ "version": "15.8.1", ++ "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", ++ "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", ++ "dependencies": { ++ "loose-envify": "^1.4.0", ++ "object-assign": "^4.1.1", ++ "react-is": "^16.13.1" ++ } ++ }, ++ "node_modules/punycode": { ++ "version": "2.3.0", ++ "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", ++ "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", ++ "dev": true, ++ "engines": { ++ "node": ">=6" ++ } ++ }, ++ "node_modules/queue-microtask": { ++ "version": "1.2.3", ++ "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", ++ "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", ++ "dev": true, ++ "funding": [ ++ { ++ "type": "github", ++ "url": "https://github.com/sponsors/feross" ++ }, ++ { ++ "type": "patreon", ++ "url": "https://www.patreon.com/feross" ++ }, ++ { ++ "type": "consulting", ++ "url": "https://feross.org/support" ++ } ++ ] ++ }, ++ "node_modules/qunit": { ++ "version": "2.21.1", ++ "resolved": "https://registry.npmjs.org/qunit/-/qunit-2.21.1.tgz", ++ "integrity": "sha512-SMA8IBZamI9MyVB4dShGpn6+X6plO8mIyfZTQ815XBvv/nVMeUj+yxsw8SgZVnrMlrAvTziJkmjOhaDwkNMHWQ==", ++ "dev": true, ++ "dependencies": { ++ "commander": "7.2.0", ++ "node-watch": "0.7.3", ++ "tiny-glob": "0.2.9" ++ }, ++ "bin": { ++ "qunit": "bin/qunit.js" ++ }, ++ "engines": { ++ "node": ">=10" ++ } ++ }, ++ "node_modules/qunit/node_modules/commander": { ++ "version": "7.2.0", ++ "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", ++ "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", ++ "dev": true, ++ "engines": { ++ "node": ">= 10" ++ } ++ }, ++ "node_modules/randombytes": { ++ "version": "2.1.0", ++ "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", ++ "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", ++ "dev": true, ++ "peer": true, ++ "dependencies": { ++ "safe-buffer": "^5.1.0" ++ } ++ }, ++ "node_modules/react": { ++ "version": "18.3.1", ++ "resolved": "https://registry.npmjs.org/react/-/react-18.3.1.tgz", ++ "integrity": "sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==", ++ "dependencies": { ++ "loose-envify": "^1.1.0" ++ }, ++ "engines": { ++ "node": ">=0.10.0" ++ } ++ }, ++ "node_modules/react-dom": { ++ "version": "18.3.1", ++ "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.3.1.tgz", ++ "integrity": "sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==", ++ "dependencies": { ++ "loose-envify": "^1.1.0", ++ "scheduler": "^0.23.2" ++ }, ++ "peerDependencies": { ++ "react": "^18.3.1" ++ } ++ }, ++ "node_modules/react-dropzone": { ++ "version": "14.2.3", ++ "resolved": "https://registry.npmjs.org/react-dropzone/-/react-dropzone-14.2.3.tgz", ++ "integrity": "sha512-O3om8I+PkFKbxCukfIR3QAGftYXDZfOE2N1mr/7qebQJHs7U+/RSL/9xomJNpRg9kM5h9soQSdf0Gc7OHF5Fug==", ++ "dependencies": { ++ "attr-accept": "^2.2.2", ++ "file-selector": "^0.6.0", ++ "prop-types": "^15.8.1" ++ }, ++ "engines": { ++ "node": ">= 10.13" ++ }, ++ "peerDependencies": { ++ "react": ">= 16.8 || 18.0.0" ++ } ++ }, ++ "node_modules/react-is": { ++ "version": "16.13.1", ++ "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", ++ "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" ++ }, ++ "node_modules/react-xml-parser": { ++ "version": "1.1.8", ++ "resolved": "https://registry.npmjs.org/react-xml-parser/-/react-xml-parser-1.1.8.tgz", ++ "integrity": "sha512-yX9k9LNCRzzNnFWoyo9cWEjtor6n6VD0Uh7z1ww5rIP6h5vdhJKEmowsm9RumEJMRdr7akcT4mMBScpsz573qQ==" ++ }, ++ "node_modules/readable-stream": { ++ "version": "4.5.2", ++ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.5.2.tgz", ++ "integrity": "sha512-yjavECdqeZ3GLXNgRXgeQEdz9fvDDkNKyHnbHRFtOr7/LcfgBcmct7t/ET+HaCTqfh06OzoAxrkN/IfjJBVe+g==", ++ "dev": true, ++ "dependencies": { ++ "abort-controller": "^3.0.0", ++ "buffer": "^6.0.3", ++ "events": "^3.3.0", ++ "process": "^0.11.10", ++ "string_decoder": "^1.3.0" ++ }, ++ "engines": { ++ "node": "^12.22.0 || ^14.17.0 || >=16.0.0" ++ } ++ }, ++ "node_modules/readdirp": { ++ "version": "3.6.0", ++ "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", ++ "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", ++ "dev": true, ++ "dependencies": { ++ "picomatch": "^2.2.1" ++ }, ++ "engines": { ++ "node": ">=8.10.0" ++ } ++ }, ++ "node_modules/reflect.getprototypeof": { ++ "version": "1.0.6", ++ "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.6.tgz", ++ "integrity": "sha512-fmfw4XgoDke3kdI6h4xcUz1dG8uaiv5q9gcEwLS4Pnth2kxT+GZ7YehS1JTMGBQmtV7Y4GFGbs2re2NqhdozUg==", ++ "dev": true, ++ "dependencies": { ++ "call-bind": "^1.0.7", ++ "define-properties": "^1.2.1", ++ "es-abstract": "^1.23.1", ++ "es-errors": "^1.3.0", ++ "get-intrinsic": "^1.2.4", ++ "globalthis": "^1.0.3", ++ "which-builtin-type": "^1.1.3" ++ }, ++ "engines": { ++ "node": ">= 0.4" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, ++ "node_modules/regenerator-runtime": { ++ "version": "0.13.11", ++ "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", ++ "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", ++ "peer": true ++ }, ++ "node_modules/regexp.prototype.flags": { ++ "version": "1.5.2", ++ "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.2.tgz", ++ "integrity": "sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw==", ++ "dependencies": { ++ "call-bind": "^1.0.6", ++ "define-properties": "^1.2.1", ++ "es-errors": "^1.3.0", ++ "set-function-name": "^2.0.1" ++ }, ++ "engines": { ++ "node": ">= 0.4" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, ++ "node_modules/regexpp": { ++ "version": "3.2.0", ++ "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", ++ "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", ++ "dev": true, ++ "engines": { ++ "node": ">=8" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/mysticatea" ++ } ++ }, ++ "node_modules/require-from-string": { ++ "version": "2.0.2", ++ "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", ++ "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", ++ "dev": true, ++ "engines": { ++ "node": ">=0.10.0" ++ } ++ }, ++ "node_modules/resolve": { ++ "version": "1.22.8", ++ "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", ++ "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", ++ "dev": true, ++ "dependencies": { ++ "is-core-module": "^2.13.0", ++ "path-parse": "^1.0.7", ++ "supports-preserve-symlinks-flag": "^1.0.0" ++ }, ++ "bin": { ++ "resolve": "bin/resolve" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, ++ "node_modules/resolve-from": { ++ "version": "4.0.0", ++ "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", ++ "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", ++ "dev": true, ++ "engines": { ++ "node": ">=4" ++ } ++ }, ++ "node_modules/resolve-pkg-maps": { ++ "version": "1.0.0", ++ "resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz", ++ "integrity": "sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==", ++ "dev": true, ++ "peer": true, ++ "funding": { ++ "url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1" ++ } ++ }, ++ "node_modules/reusify": { ++ "version": "1.0.4", ++ "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", ++ "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", ++ "dev": true, ++ "engines": { ++ "iojs": ">=1.0.0", ++ "node": ">=0.10.0" ++ } ++ }, ++ "node_modules/rimraf": { ++ "version": "2.7.1", ++ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", ++ "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", ++ "dev": true, ++ "dependencies": { ++ "glob": "^7.1.3" ++ }, ++ "bin": { ++ "rimraf": "bin.js" ++ } ++ }, ++ "node_modules/rimraf/node_modules/brace-expansion": { ++ "version": "1.1.11", ++ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", ++ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", ++ "dev": true, ++ "dependencies": { ++ "balanced-match": "^1.0.0", ++ "concat-map": "0.0.1" ++ } ++ }, ++ "node_modules/rimraf/node_modules/glob": { ++ "version": "7.2.3", ++ "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", ++ "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", ++ "dev": true, ++ "dependencies": { ++ "fs.realpath": "^1.0.0", ++ "inflight": "^1.0.4", ++ "inherits": "2", ++ "minimatch": "^3.1.1", ++ "once": "^1.3.0", ++ "path-is-absolute": "^1.0.0" ++ }, ++ "engines": { ++ "node": "*" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/isaacs" ++ } ++ }, ++ "node_modules/rimraf/node_modules/minimatch": { ++ "version": "3.1.2", ++ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", ++ "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", ++ "dev": true, ++ "dependencies": { ++ "brace-expansion": "^1.1.7" ++ }, ++ "engines": { ++ "node": "*" ++ } ++ }, ++ "node_modules/run-parallel": { ++ "version": "1.2.0", ++ "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", ++ "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", ++ "dev": true, ++ "funding": [ ++ { ++ "type": "github", ++ "url": "https://github.com/sponsors/feross" ++ }, ++ { ++ "type": "patreon", ++ "url": "https://www.patreon.com/feross" ++ }, ++ { ++ "type": "consulting", ++ "url": "https://feross.org/support" ++ } ++ ], ++ "dependencies": { ++ "queue-microtask": "^1.2.2" ++ } ++ }, ++ "node_modules/rxjs": { ++ "version": "7.8.1", ++ "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", ++ "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==", ++ "dev": true, ++ "peer": true, ++ "dependencies": { ++ "tslib": "^2.1.0" ++ } ++ }, ++ "node_modules/safe-array-concat": { ++ "version": "1.1.2", ++ "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.2.tgz", ++ "integrity": "sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==", ++ "dev": true, ++ "dependencies": { ++ "call-bind": "^1.0.7", ++ "get-intrinsic": "^1.2.4", ++ "has-symbols": "^1.0.3", ++ "isarray": "^2.0.5" ++ }, ++ "engines": { ++ "node": ">=0.4" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, ++ "node_modules/safe-buffer": { ++ "version": "5.2.1", ++ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", ++ "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", ++ "dev": true, ++ "funding": [ ++ { ++ "type": "github", ++ "url": "https://github.com/sponsors/feross" ++ }, ++ { ++ "type": "patreon", ++ "url": "https://www.patreon.com/feross" ++ }, ++ { ++ "type": "consulting", ++ "url": "https://feross.org/support" ++ } ++ ] ++ }, ++ "node_modules/safe-identifier": { ++ "version": "0.4.2", ++ "resolved": "https://registry.npmjs.org/safe-identifier/-/safe-identifier-0.4.2.tgz", ++ "integrity": "sha512-6pNbSMW6OhAi9j+N8V+U715yBQsaWJ7eyEUaOrawX+isg5ZxhUlV1NipNtgaKHmFGiABwt+ZF04Ii+3Xjkg+8w==", ++ "dev": true ++ }, ++ "node_modules/safe-regex-test": { ++ "version": "1.0.3", ++ "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.3.tgz", ++ "integrity": "sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==", ++ "dev": true, ++ "dependencies": { ++ "call-bind": "^1.0.6", ++ "es-errors": "^1.3.0", ++ "is-regex": "^1.1.4" ++ }, ++ "engines": { ++ "node": ">= 0.4" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, ++ "node_modules/safer-buffer": { ++ "version": "2.1.2", ++ "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", ++ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", ++ "dev": true ++ }, ++ "node_modules/sass": { ++ "version": "1.77.8", ++ "resolved": "https://registry.npmjs.org/sass/-/sass-1.77.8.tgz", ++ "integrity": "sha512-4UHg6prsrycW20fqLGPShtEvo/WyHRVRHwOP4DzkUrObWoWI05QBSfzU71TVB7PFaL104TwNaHpjlWXAZbQiNQ==", ++ "dev": true, ++ "dependencies": { ++ "chokidar": ">=3.0.0 <4.0.0", ++ "immutable": "^4.0.0", ++ "source-map-js": ">=0.6.2 <2.0.0" ++ }, ++ "bin": { ++ "sass": "sass.js" ++ }, ++ "engines": { ++ "node": ">=14.0.0" ++ } ++ }, ++ "node_modules/sass-embedded": { ++ "version": "1.77.8", ++ "resolved": "https://registry.npmjs.org/sass-embedded/-/sass-embedded-1.77.8.tgz", ++ "integrity": "sha512-WGXA6jcaoBo5Uhw0HX/s6z/sl3zyYQ7ZOnLOJzqwpctFcFmU4L07zn51e2VSkXXFpQZFAdMZNqOGz/7h/fvcRA==", ++ "dev": true, ++ "peer": true, ++ "dependencies": { ++ "@bufbuild/protobuf": "^1.0.0", ++ "buffer-builder": "^0.2.0", ++ "immutable": "^4.0.0", ++ "rxjs": "^7.4.0", ++ "supports-color": "^8.1.1", ++ "varint": "^6.0.0" ++ }, ++ "engines": { ++ "node": ">=16.0.0" ++ }, ++ "optionalDependencies": { ++ "sass-embedded-android-arm": "1.77.8", ++ "sass-embedded-android-arm64": "1.77.8", ++ "sass-embedded-android-ia32": "1.77.8", ++ "sass-embedded-android-x64": "1.77.8", ++ "sass-embedded-darwin-arm64": "1.77.8", ++ "sass-embedded-darwin-x64": "1.77.8", ++ "sass-embedded-linux-arm": "1.77.8", ++ "sass-embedded-linux-arm64": "1.77.8", ++ "sass-embedded-linux-ia32": "1.77.8", ++ "sass-embedded-linux-musl-arm": "1.77.8", ++ "sass-embedded-linux-musl-arm64": "1.77.8", ++ "sass-embedded-linux-musl-ia32": "1.77.8", ++ "sass-embedded-linux-musl-x64": "1.77.8", ++ "sass-embedded-linux-x64": "1.77.8", ++ "sass-embedded-win32-arm64": "1.77.8", ++ "sass-embedded-win32-ia32": "1.77.8", ++ "sass-embedded-win32-x64": "1.77.8" ++ } ++ }, ++ "node_modules/sass-embedded-linux-musl-x64": { ++ "version": "1.77.8", ++ "resolved": "https://registry.npmjs.org/sass-embedded-linux-musl-x64/-/sass-embedded-linux-musl-x64-1.77.8.tgz", ++ "integrity": "sha512-2NtRpMXHeFo9kaYxuZ+Ewwo39CE7BTS2JDfXkTjZTZqd8H+8KC53eBh516YQnn2oiqxSiKxm7a6pxbxGZGwXOQ==", ++ "cpu": [ ++ "x64" ++ ], ++ "dev": true, ++ "optional": true, ++ "os": [ ++ "linux" ++ ], ++ "peer": true, ++ "engines": { ++ "node": ">=14.0.0" ++ } ++ }, ++ "node_modules/sass-embedded-linux-x64": { ++ "version": "1.77.8", ++ "resolved": "https://registry.npmjs.org/sass-embedded-linux-x64/-/sass-embedded-linux-x64-1.77.8.tgz", ++ "integrity": "sha512-ND5qZLWUCpOn7LJfOf0gLSZUWhNIysY+7NZK1Ctq+pM6tpJky3JM5I1jSMplNxv5H3o8p80n0gSm+fcjsEFfjQ==", ++ "cpu": [ ++ "x64" ++ ], ++ "dev": true, ++ "optional": true, ++ "os": [ ++ "linux" ++ ], ++ "peer": true, + "bin": { +- "patch-package": "index.js" ++ "sass": "dart-sass/sass" + }, + "engines": { +- "node": ">=14", +- "npm": ">5" ++ "node": ">=14.0.0" + } + }, +- "node_modules/patch-package/node_modules/ansi-styles": { +- "version": "4.3.0", +- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", +- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", ++ "node_modules/sass-embedded/node_modules/has-flag": { ++ "version": "4.0.0", ++ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", ++ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, +- "dependencies": { +- "color-convert": "^2.0.1" +- }, ++ "peer": true, + "engines": { + "node": ">=8" +- }, +- "funding": { +- "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, +- "node_modules/patch-package/node_modules/chalk": { +- "version": "4.1.2", +- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", +- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", ++ "node_modules/sass-embedded/node_modules/supports-color": { ++ "version": "8.1.1", ++ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", ++ "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, ++ "peer": true, + "dependencies": { +- "ansi-styles": "^4.1.0", +- "supports-color": "^7.1.0" ++ "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { +- "url": "https://github.com/chalk/chalk?sponsor=1" ++ "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, +- "node_modules/patch-package/node_modules/color-convert": { +- "version": "2.0.1", +- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", +- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", +- "dev": true, ++ "node_modules/scheduler": { ++ "version": "0.23.2", ++ "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz", ++ "integrity": "sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==", + "dependencies": { +- "color-name": "~1.1.4" +- }, +- "engines": { +- "node": ">=7.0.0" ++ "loose-envify": "^1.1.0" + } + }, +- "node_modules/patch-package/node_modules/color-name": { +- "version": "1.1.4", +- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", +- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", +- "dev": true +- }, +- "node_modules/patch-package/node_modules/fs-extra": { +- "version": "9.1.0", +- "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", +- "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", ++ "node_modules/schema-utils": { ++ "version": "3.3.0", ++ "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", ++ "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", + "dev": true, ++ "peer": true, + "dependencies": { +- "at-least-node": "^1.0.0", +- "graceful-fs": "^4.2.0", +- "jsonfile": "^6.0.1", +- "universalify": "^2.0.0" ++ "@types/json-schema": "^7.0.8", ++ "ajv": "^6.12.5", ++ "ajv-keywords": "^3.5.2" + }, + "engines": { +- "node": ">=10" ++ "node": ">= 10.13.0" ++ }, ++ "funding": { ++ "type": "opencollective", ++ "url": "https://opencollective.com/webpack" + } + }, +- "node_modules/patch-package/node_modules/has-flag": { +- "version": "4.0.0", +- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", +- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", ++ "node_modules/semver": { ++ "version": "6.3.1", ++ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", ++ "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, +- "engines": { +- "node": ">=8" ++ "bin": { ++ "semver": "bin/semver.js" + } + }, +- "node_modules/patch-package/node_modules/lru-cache": { +- "version": "6.0.0", +- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", +- "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", ++ "node_modules/serialize-javascript": { ++ "version": "6.0.1", ++ "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.1.tgz", ++ "integrity": "sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w==", + "dev": true, ++ "peer": true, + "dependencies": { +- "yallist": "^4.0.0" +- }, +- "engines": { +- "node": ">=10" ++ "randombytes": "^2.1.0" + } + }, +- "node_modules/patch-package/node_modules/semver": { +- "version": "7.5.4", +- "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", +- "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", +- "dev": true, ++ "node_modules/set-function-length": { ++ "version": "1.2.2", ++ "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", ++ "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", + "dependencies": { +- "lru-cache": "^6.0.0" +- }, +- "bin": { +- "semver": "bin/semver.js" ++ "define-data-property": "^1.1.4", ++ "es-errors": "^1.3.0", ++ "function-bind": "^1.1.2", ++ "get-intrinsic": "^1.2.4", ++ "gopd": "^1.0.1", ++ "has-property-descriptors": "^1.0.2" + }, + "engines": { +- "node": ">=10" ++ "node": ">= 0.4" + } + }, +- "node_modules/patch-package/node_modules/slash": { +- "version": "2.0.0", +- "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", +- "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==", +- "dev": true, ++ "node_modules/set-function-name": { ++ "version": "2.0.2", ++ "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", ++ "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", ++ "dependencies": { ++ "define-data-property": "^1.1.4", ++ "es-errors": "^1.3.0", ++ "functions-have-names": "^1.2.3", ++ "has-property-descriptors": "^1.0.2" ++ }, + "engines": { +- "node": ">=6" ++ "node": ">= 0.4" + } + }, +- "node_modules/patch-package/node_modules/supports-color": { +- "version": "7.2.0", +- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", +- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", +- "dev": true, ++ "node_modules/shebang-command": { ++ "version": "2.0.0", ++ "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", ++ "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dependencies": { +- "has-flag": "^4.0.0" ++ "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, +- "node_modules/patch-package/node_modules/yallist": { +- "version": "4.0.0", +- "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", +- "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", +- "dev": true +- }, +- "node_modules/path-is-absolute": { +- "version": "1.0.1", +- "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", +- "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", +- "dev": true, +- "engines": { +- "node": ">=0.10.0" +- } +- }, +- "node_modules/path-key": { +- "version": "3.1.1", +- "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", +- "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", ++ "node_modules/shebang-regex": { ++ "version": "3.0.0", ++ "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", ++ "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "engines": { + "node": ">=8" + } + }, +- "node_modules/path-parse": { +- "version": "1.0.7", +- "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", +- "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", +- "dev": true +- }, +- "node_modules/path-scurry": { +- "version": "1.10.1", +- "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.10.1.tgz", +- "integrity": "sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==", ++ "node_modules/side-channel": { ++ "version": "1.0.6", ++ "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", ++ "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", + "dependencies": { +- "lru-cache": "^9.1.1 || ^10.0.0", +- "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" ++ "call-bind": "^1.0.7", ++ "es-errors": "^1.3.0", ++ "get-intrinsic": "^1.2.4", ++ "object-inspect": "^1.13.1" + }, + "engines": { +- "node": ">=16 || 14 >=14.17" ++ "node": ">= 0.4" + }, + "funding": { +- "url": "https://github.com/sponsors/isaacs" ++ "url": "https://github.com/sponsors/ljharb" + } + }, +- "node_modules/path-scurry/node_modules/lru-cache": { +- "version": "10.0.0", +- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.0.tgz", +- "integrity": "sha512-svTf/fzsKHffP42sujkO/Rjs37BCIsQVRCeNYIm9WN8rgT7ffoUnRtZCqU+6BqcSBdv8gwJeTz8knJpgACeQMw==", ++ "node_modules/signal-exit": { ++ "version": "4.0.2", ++ "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.0.2.tgz", ++ "integrity": "sha512-MY2/qGx4enyjprQnFaZsHib3Yadh3IXyV2C321GY0pjGfVBu4un0uDJkwgdxqO+Rdx8JMT8IfJIRwbYVz3Ob3Q==", + "engines": { +- "node": "14 || >=16.14" ++ "node": ">=14" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/isaacs" + } + }, +- "node_modules/path-type": { +- "version": "4.0.0", +- "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", +- "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", ++ "node_modules/sizzle": { ++ "version": "2.3.10", ++ "resolved": "https://registry.npmjs.org/sizzle/-/sizzle-2.3.10.tgz", ++ "integrity": "sha512-kPGev+SiByuzi/YPDTqCwdKLWCaN9+14ve86yH0gP6Efue04xjLYWJrcLC6y1buFyIVXkwHNXPsOTEd1MYVPbQ==", ++ "dev": true ++ }, ++ "node_modules/slash": { ++ "version": "3.0.0", ++ "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", ++ "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, +- "node_modules/picocolors": { +- "version": "1.0.0", +- "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", +- "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", +- "dev": true, +- "peer": true +- }, +- "node_modules/picomatch": { +- "version": "2.3.1", +- "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", +- "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", ++ "node_modules/slice-ansi": { ++ "version": "4.0.0", ++ "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", ++ "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", + "dev": true, ++ "dependencies": { ++ "ansi-styles": "^4.0.0", ++ "astral-regex": "^2.0.0", ++ "is-fullwidth-code-point": "^3.0.0" ++ }, + "engines": { +- "node": ">=8.6" ++ "node": ">=10" + }, + "funding": { +- "url": "https://github.com/sponsors/jonschlinkert" ++ "url": "https://github.com/chalk/slice-ansi?sponsor=1" + } + }, +- "node_modules/process": { +- "version": "0.11.10", +- "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", +- "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", ++ "node_modules/slice-ansi/node_modules/ansi-styles": { ++ "version": "4.3.0", ++ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", ++ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, +- "engines": { +- "node": ">= 0.6.0" +- } +- }, +- "node_modules/prop-types": { +- "version": "15.8.1", +- "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", +- "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", + "dependencies": { +- "loose-envify": "^1.4.0", +- "object-assign": "^4.1.1", +- "react-is": "^16.13.1" +- } +- }, +- "node_modules/punycode": { +- "version": "2.3.0", +- "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", +- "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", +- "dev": true, +- "peer": true, +- "engines": { +- "node": ">=6" +- } +- }, +- "node_modules/queue-microtask": { +- "version": "1.2.3", +- "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", +- "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", +- "dev": true, +- "funding": [ +- { +- "type": "github", +- "url": "https://github.com/sponsors/feross" +- }, +- { +- "type": "patreon", +- "url": "https://www.patreon.com/feross" +- }, +- { +- "type": "consulting", +- "url": "https://feross.org/support" +- } +- ] ++ "color-convert": "^2.0.1" ++ }, ++ "engines": { ++ "node": ">=8" ++ }, ++ "funding": { ++ "url": "https://github.com/chalk/ansi-styles?sponsor=1" ++ } + }, +- "node_modules/qunit": { +- "version": "2.19.4", +- "resolved": "https://registry.npmjs.org/qunit/-/qunit-2.19.4.tgz", +- "integrity": "sha512-aqUzzUeCqlleWYKlpgfdHHw9C6KxkB9H3wNfiBg5yHqQMzy0xw/pbCRHYFkjl8MsP/t8qkTQE+JTYL71azgiew==", ++ "node_modules/slice-ansi/node_modules/color-convert": { ++ "version": "2.0.1", ++ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", ++ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { +- "commander": "7.2.0", +- "node-watch": "0.7.3", +- "tiny-glob": "0.2.9" +- }, +- "bin": { +- "qunit": "bin/qunit.js" ++ "color-name": "~1.1.4" + }, + "engines": { +- "node": ">=10" ++ "node": ">=7.0.0" + } + }, +- "node_modules/qunit/node_modules/commander": { +- "version": "7.2.0", +- "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", +- "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", ++ "node_modules/slice-ansi/node_modules/color-name": { ++ "version": "1.1.4", ++ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", ++ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", ++ "dev": true ++ }, ++ "node_modules/source-map": { ++ "version": "0.6.1", ++ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", ++ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, ++ "peer": true, + "engines": { +- "node": ">= 10" ++ "node": ">=0.10.0" + } + }, +- "node_modules/randombytes": { +- "version": "2.1.0", +- "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", +- "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", ++ "node_modules/source-map-js": { ++ "version": "1.2.0", ++ "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz", ++ "integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==", ++ "dev": true, ++ "engines": { ++ "node": ">=0.10.0" ++ } ++ }, ++ "node_modules/source-map-support": { ++ "version": "0.5.21", ++ "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", ++ "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "dev": true, + "peer": true, + "dependencies": { +- "safe-buffer": "^5.1.0" ++ "buffer-from": "^1.0.0", ++ "source-map": "^0.6.0" + } + }, +- "node_modules/react": { +- "version": "18.2.0", +- "resolved": "https://registry.npmjs.org/react/-/react-18.2.0.tgz", +- "integrity": "sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==", ++ "node_modules/sourcemap-codec": { ++ "version": "1.4.8", ++ "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", ++ "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", ++ "deprecated": "Please use @jridgewell/sourcemap-codec instead", ++ "dev": true ++ }, ++ "node_modules/stop-iteration-iterator": { ++ "version": "1.0.0", ++ "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.0.0.tgz", ++ "integrity": "sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==", ++ "peer": true, + "dependencies": { +- "loose-envify": "^1.1.0" ++ "internal-slot": "^1.0.4" + }, + "engines": { +- "node": ">=0.10.0" ++ "node": ">= 0.4" + } + }, +- "node_modules/react-dom": { +- "version": "18.2.0", +- "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz", +- "integrity": "sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==", ++ "node_modules/string_decoder": { ++ "version": "1.3.0", ++ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", ++ "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", ++ "dev": true, + "dependencies": { +- "loose-envify": "^1.1.0", +- "scheduler": "^0.23.0" +- }, +- "peerDependencies": { +- "react": "^18.2.0" ++ "safe-buffer": "~5.2.0" + } + }, +- "node_modules/react-dropzone": { +- "version": "14.2.3", +- "resolved": "https://registry.npmjs.org/react-dropzone/-/react-dropzone-14.2.3.tgz", +- "integrity": "sha512-O3om8I+PkFKbxCukfIR3QAGftYXDZfOE2N1mr/7qebQJHs7U+/RSL/9xomJNpRg9kM5h9soQSdf0Gc7OHF5Fug==", ++ "node_modules/string-width": { ++ "version": "5.1.2", ++ "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", ++ "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dependencies": { +- "attr-accept": "^2.2.2", +- "file-selector": "^0.6.0", +- "prop-types": "^15.8.1" ++ "eastasianwidth": "^0.2.0", ++ "emoji-regex": "^9.2.2", ++ "strip-ansi": "^7.0.1" + }, + "engines": { +- "node": ">= 10.13" ++ "node": ">=12" + }, +- "peerDependencies": { +- "react": ">= 16.8 || 18.0.0" ++ "funding": { ++ "url": "https://github.com/sponsors/sindresorhus" + } + }, +- "node_modules/react-is": { +- "version": "16.13.1", +- "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", +- "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" +- }, +- "node_modules/react-xml-parser": { +- "version": "1.1.8", +- "resolved": "https://registry.npmjs.org/react-xml-parser/-/react-xml-parser-1.1.8.tgz", +- "integrity": "sha512-yX9k9LNCRzzNnFWoyo9cWEjtor6n6VD0Uh7z1ww5rIP6h5vdhJKEmowsm9RumEJMRdr7akcT4mMBScpsz573qQ==" +- }, +- "node_modules/readable-stream": { +- "version": "4.5.2", +- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.5.2.tgz", +- "integrity": "sha512-yjavECdqeZ3GLXNgRXgeQEdz9fvDDkNKyHnbHRFtOr7/LcfgBcmct7t/ET+HaCTqfh06OzoAxrkN/IfjJBVe+g==", +- "dev": true, ++ "node_modules/string-width-cjs": { ++ "name": "string-width", ++ "version": "4.2.3", ++ "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", ++ "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { +- "abort-controller": "^3.0.0", +- "buffer": "^6.0.3", +- "events": "^3.3.0", +- "process": "^0.11.10", +- "string_decoder": "^1.3.0" ++ "emoji-regex": "^8.0.0", ++ "is-fullwidth-code-point": "^3.0.0", ++ "strip-ansi": "^6.0.1" + }, + "engines": { +- "node": "^12.22.0 || ^14.17.0 || >=16.0.0" ++ "node": ">=8" + } + }, +- "node_modules/readdirp": { +- "version": "3.6.0", +- "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", +- "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", +- "dev": true, ++ "node_modules/string-width-cjs/node_modules/ansi-regex": { ++ "version": "5.0.1", ++ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", ++ "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", ++ "engines": { ++ "node": ">=8" ++ } ++ }, ++ "node_modules/string-width-cjs/node_modules/emoji-regex": { ++ "version": "8.0.0", ++ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", ++ "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" ++ }, ++ "node_modules/string-width-cjs/node_modules/strip-ansi": { ++ "version": "6.0.1", ++ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", ++ "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { +- "picomatch": "^2.2.1" ++ "ansi-regex": "^5.0.1" + }, + "engines": { +- "node": ">=8.10.0" ++ "node": ">=8" + } + }, +- "node_modules/regenerator-runtime": { +- "version": "0.13.11", +- "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", +- "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", +- "peer": true +- }, +- "node_modules/regexp.prototype.flags": { +- "version": "1.5.0", +- "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.0.tgz", +- "integrity": "sha512-0SutC3pNudRKgquxGoRGIz946MZVHqbNfPjBdxeOhBrdgDKlRoXmYLQN9xRbrR09ZXWeGAdPuif7egofn6v5LA==", +- "peer": true, ++ "node_modules/string.prototype.matchall": { ++ "version": "4.0.11", ++ "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.11.tgz", ++ "integrity": "sha512-NUdh0aDavY2og7IbBPenWqR9exH+E26Sv8e0/eTe1tltDGZL+GtBkDAnnyBtmekfK6/Dq3MkcGtzXFEd1LQrtg==", ++ "dev": true, + "dependencies": { +- "call-bind": "^1.0.2", +- "define-properties": "^1.2.0", +- "functions-have-names": "^1.2.3" ++ "call-bind": "^1.0.7", ++ "define-properties": "^1.2.1", ++ "es-abstract": "^1.23.2", ++ "es-errors": "^1.3.0", ++ "es-object-atoms": "^1.0.0", ++ "get-intrinsic": "^1.2.4", ++ "gopd": "^1.0.1", ++ "has-symbols": "^1.0.3", ++ "internal-slot": "^1.0.7", ++ "regexp.prototype.flags": "^1.5.2", ++ "set-function-name": "^2.0.2", ++ "side-channel": "^1.0.6" + }, + "engines": { + "node": ">= 0.4" +@@ -3963,384 +6909,421 @@ + "url": "https://github.com/sponsors/ljharb" + } + }, +- "node_modules/resolve": { +- "version": "1.22.2", +- "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.2.tgz", +- "integrity": "sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==", ++ "node_modules/string.prototype.repeat": { ++ "version": "1.0.0", ++ "resolved": "https://registry.npmjs.org/string.prototype.repeat/-/string.prototype.repeat-1.0.0.tgz", ++ "integrity": "sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==", + "dev": true, + "dependencies": { +- "is-core-module": "^2.11.0", +- "path-parse": "^1.0.7", +- "supports-preserve-symlinks-flag": "^1.0.0" +- }, +- "bin": { +- "resolve": "bin/resolve" +- }, +- "funding": { +- "url": "https://github.com/sponsors/ljharb" ++ "define-properties": "^1.1.3", ++ "es-abstract": "^1.17.5" + } + }, +- "node_modules/reusify": { +- "version": "1.0.4", +- "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", +- "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", ++ "node_modules/string.prototype.trim": { ++ "version": "1.2.9", ++ "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.9.tgz", ++ "integrity": "sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==", + "dev": true, ++ "dependencies": { ++ "call-bind": "^1.0.7", ++ "define-properties": "^1.2.1", ++ "es-abstract": "^1.23.0", ++ "es-object-atoms": "^1.0.0" ++ }, + "engines": { +- "iojs": ">=1.0.0", +- "node": ">=0.10.0" ++ "node": ">= 0.4" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" + } + }, +- "node_modules/rimraf": { +- "version": "2.7.1", +- "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", +- "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", ++ "node_modules/string.prototype.trimend": { ++ "version": "1.0.8", ++ "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.8.tgz", ++ "integrity": "sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==", + "dev": true, + "dependencies": { +- "glob": "^7.1.3" ++ "call-bind": "^1.0.7", ++ "define-properties": "^1.2.1", ++ "es-object-atoms": "^1.0.0" + }, +- "bin": { +- "rimraf": "bin.js" ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" + } + }, +- "node_modules/rimraf/node_modules/brace-expansion": { +- "version": "1.1.11", +- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", +- "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", ++ "node_modules/string.prototype.trimstart": { ++ "version": "1.0.8", ++ "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz", ++ "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==", + "dev": true, + "dependencies": { +- "balanced-match": "^1.0.0", +- "concat-map": "0.0.1" ++ "call-bind": "^1.0.7", ++ "define-properties": "^1.2.1", ++ "es-object-atoms": "^1.0.0" ++ }, ++ "engines": { ++ "node": ">= 0.4" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" + } + }, +- "node_modules/rimraf/node_modules/glob": { +- "version": "7.2.3", +- "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", +- "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", +- "dev": true, ++ "node_modules/strip-ansi": { ++ "version": "7.1.0", ++ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", ++ "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dependencies": { +- "fs.realpath": "^1.0.0", +- "inflight": "^1.0.4", +- "inherits": "2", +- "minimatch": "^3.1.1", +- "once": "^1.3.0", +- "path-is-absolute": "^1.0.0" ++ "ansi-regex": "^6.0.1" + }, + "engines": { +- "node": "*" ++ "node": ">=12" + }, + "funding": { +- "url": "https://github.com/sponsors/isaacs" ++ "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, +- "node_modules/rimraf/node_modules/minimatch": { +- "version": "3.1.2", +- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", +- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", ++ "node_modules/strip-ansi-cjs": { ++ "name": "strip-ansi", ++ "version": "6.0.1", ++ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", ++ "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", ++ "dependencies": { ++ "ansi-regex": "^5.0.1" ++ }, ++ "engines": { ++ "node": ">=8" ++ } ++ }, ++ "node_modules/strip-ansi-cjs/node_modules/ansi-regex": { ++ "version": "5.0.1", ++ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", ++ "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", ++ "engines": { ++ "node": ">=8" ++ } ++ }, ++ "node_modules/strip-bom": { ++ "version": "3.0.0", ++ "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", ++ "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", + "dev": true, +- "dependencies": { +- "brace-expansion": "^1.1.7" +- }, + "engines": { +- "node": "*" ++ "node": ">=4" + } + }, +- "node_modules/rome": { +- "version": "12.1.3", +- "resolved": "https://registry.npmjs.org/rome/-/rome-12.1.3.tgz", +- "integrity": "sha512-e+ff72hxDpe/t5/Us7YRBVw3PBET7SeczTQNn6tvrWdrCaAw3qOukQQ+tDCkyFtS4yGsnhjrJbm43ctNbz27Yg==", ++ "node_modules/strip-json-comments": { ++ "version": "3.1.1", ++ "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", ++ "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, +- "hasInstallScript": true, +- "bin": { +- "rome": "bin/rome" +- }, + "engines": { +- "node": ">=14.*" ++ "node": ">=8" + }, +- "optionalDependencies": { +- "@rometools/cli-darwin-arm64": "12.1.3", +- "@rometools/cli-darwin-x64": "12.1.3", +- "@rometools/cli-linux-arm64": "12.1.3", +- "@rometools/cli-linux-x64": "12.1.3", +- "@rometools/cli-win32-arm64": "12.1.3", +- "@rometools/cli-win32-x64": "12.1.3" ++ "funding": { ++ "url": "https://github.com/sponsors/sindresorhus" + } + }, +- "node_modules/run-parallel": { +- "version": "1.2.0", +- "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", +- "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", ++ "node_modules/stylelint": { ++ "version": "16.7.0", ++ "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-16.7.0.tgz", ++ "integrity": "sha512-Q1ATiXlz+wYr37a7TGsfvqYn2nSR3T/isw3IWlZQzFzCNoACHuGBb6xBplZXz56/uDRJHIygxjh7jbV/8isewA==", + "dev": true, + "funding": [ + { +- "type": "github", +- "url": "https://github.com/sponsors/feross" +- }, +- { +- "type": "patreon", +- "url": "https://www.patreon.com/feross" ++ "type": "opencollective", ++ "url": "https://opencollective.com/stylelint" + }, + { +- "type": "consulting", +- "url": "https://feross.org/support" ++ "type": "github", ++ "url": "https://github.com/sponsors/stylelint" + } + ], + "dependencies": { +- "queue-microtask": "^1.2.2" ++ "@csstools/css-parser-algorithms": "^2.7.1", ++ "@csstools/css-tokenizer": "^2.4.1", ++ "@csstools/media-query-list-parser": "^2.1.13", ++ "@csstools/selector-specificity": "^3.1.1", ++ "@dual-bundle/import-meta-resolve": "^4.1.0", ++ "balanced-match": "^2.0.0", ++ "colord": "^2.9.3", ++ "cosmiconfig": "^9.0.0", ++ "css-functions-list": "^3.2.2", ++ "css-tree": "^2.3.1", ++ "debug": "^4.3.5", ++ "fast-glob": "^3.3.2", ++ "fastest-levenshtein": "^1.0.16", ++ "file-entry-cache": "^9.0.0", ++ "global-modules": "^2.0.0", ++ "globby": "^11.1.0", ++ "globjoin": "^0.1.4", ++ "html-tags": "^3.3.1", ++ "ignore": "^5.3.1", ++ "imurmurhash": "^0.1.4", ++ "is-plain-object": "^5.0.0", ++ "known-css-properties": "^0.34.0", ++ "mathml-tag-names": "^2.1.3", ++ "meow": "^13.2.0", ++ "micromatch": "^4.0.7", ++ "normalize-path": "^3.0.0", ++ "picocolors": "^1.0.1", ++ "postcss": "^8.4.39", ++ "postcss-resolve-nested-selector": "^0.1.1", ++ "postcss-safe-parser": "^7.0.0", ++ "postcss-selector-parser": "^6.1.0", ++ "postcss-value-parser": "^4.2.0", ++ "resolve-from": "^5.0.0", ++ "string-width": "^4.2.3", ++ "strip-ansi": "^7.1.0", ++ "supports-hyperlinks": "^3.0.0", ++ "svg-tags": "^1.0.0", ++ "table": "^6.8.2", ++ "write-file-atomic": "^5.0.1" ++ }, ++ "bin": { ++ "stylelint": "bin/stylelint.mjs" ++ }, ++ "engines": { ++ "node": ">=18.12.0" + } + }, +- "node_modules/safe-buffer": { +- "version": "5.2.1", +- "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", +- "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", ++ "node_modules/stylelint-config-recommended": { ++ "version": "14.0.1", ++ "resolved": "https://registry.npmjs.org/stylelint-config-recommended/-/stylelint-config-recommended-14.0.1.tgz", ++ "integrity": "sha512-bLvc1WOz/14aPImu/cufKAZYfXs/A/owZfSMZ4N+16WGXLoX5lOir53M6odBxvhgmgdxCVnNySJmZKx73T93cg==", + "dev": true, + "funding": [ + { +- "type": "github", +- "url": "https://github.com/sponsors/feross" +- }, +- { +- "type": "patreon", +- "url": "https://www.patreon.com/feross" ++ "type": "opencollective", ++ "url": "https://opencollective.com/stylelint" + }, + { +- "type": "consulting", +- "url": "https://feross.org/support" ++ "type": "github", ++ "url": "https://github.com/sponsors/stylelint" + } +- ] +- }, +- "node_modules/safer-buffer": { +- "version": "2.1.2", +- "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", +- "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", +- "dev": true ++ ], ++ "engines": { ++ "node": ">=18.12.0" ++ }, ++ "peerDependencies": { ++ "stylelint": "^16.1.0" ++ } + }, +- "node_modules/sass": { +- "version": "1.64.1", +- "resolved": "https://registry.npmjs.org/sass/-/sass-1.64.1.tgz", +- "integrity": "sha512-16rRACSOFEE8VN7SCgBu1MpYCyN7urj9At898tyzdXFhC+a+yOX5dXwAR7L8/IdPJ1NB8OYoXmD55DM30B2kEQ==", ++ "node_modules/stylelint-config-recommended-scss": { ++ "version": "14.0.0", ++ "resolved": "https://registry.npmjs.org/stylelint-config-recommended-scss/-/stylelint-config-recommended-scss-14.0.0.tgz", ++ "integrity": "sha512-HDvpoOAQ1RpF+sPbDOT2Q2/YrBDEJDnUymmVmZ7mMCeNiFSdhRdyGEimBkz06wsN+HaFwUh249gDR+I9JR7Onw==", + "dev": true, + "dependencies": { +- "chokidar": ">=3.0.0 <4.0.0", +- "immutable": "^4.0.0", +- "source-map-js": ">=0.6.2 <2.0.0" +- }, +- "bin": { +- "sass": "sass.js" ++ "postcss-scss": "^4.0.9", ++ "stylelint-config-recommended": "^14.0.0", ++ "stylelint-scss": "^6.0.0" + }, + "engines": { +- "node": ">=14.0.0" +- } +- }, +- "node_modules/scheduler": { +- "version": "0.23.0", +- "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.0.tgz", +- "integrity": "sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==", +- "dependencies": { +- "loose-envify": "^1.1.0" ++ "node": ">=18.12.0" ++ }, ++ "peerDependencies": { ++ "postcss": "^8.3.3", ++ "stylelint": "^16.0.2" ++ }, ++ "peerDependenciesMeta": { ++ "postcss": { ++ "optional": true ++ } + } + }, +- "node_modules/schema-utils": { +- "version": "3.3.0", +- "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", +- "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", ++ "node_modules/stylelint-config-standard": { ++ "version": "36.0.1", ++ "resolved": "https://registry.npmjs.org/stylelint-config-standard/-/stylelint-config-standard-36.0.1.tgz", ++ "integrity": "sha512-8aX8mTzJ6cuO8mmD5yon61CWuIM4UD8Q5aBcWKGSf6kg+EC3uhB+iOywpTK4ca6ZL7B49en8yanOFtUW0qNzyw==", + "dev": true, +- "peer": true, ++ "funding": [ ++ { ++ "type": "opencollective", ++ "url": "https://opencollective.com/stylelint" ++ }, ++ { ++ "type": "github", ++ "url": "https://github.com/sponsors/stylelint" ++ } ++ ], + "dependencies": { +- "@types/json-schema": "^7.0.8", +- "ajv": "^6.12.5", +- "ajv-keywords": "^3.5.2" ++ "stylelint-config-recommended": "^14.0.1" + }, + "engines": { +- "node": ">= 10.13.0" ++ "node": ">=18.12.0" + }, +- "funding": { +- "type": "opencollective", +- "url": "https://opencollective.com/webpack" +- } +- }, +- "node_modules/semver": { +- "version": "6.3.1", +- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", +- "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", +- "dev": true, +- "bin": { +- "semver": "bin/semver.js" ++ "peerDependencies": { ++ "stylelint": "^16.1.0" + } + }, +- "node_modules/serialize-javascript": { +- "version": "6.0.1", +- "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.1.tgz", +- "integrity": "sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w==", ++ "node_modules/stylelint-config-standard-scss": { ++ "version": "13.1.0", ++ "resolved": "https://registry.npmjs.org/stylelint-config-standard-scss/-/stylelint-config-standard-scss-13.1.0.tgz", ++ "integrity": "sha512-Eo5w7/XvwGHWkeGLtdm2FZLOMYoZl1omP2/jgFCXyl2x5yNz7/8vv4Tj6slHvMSSUNTaGoam/GAZ0ZhukvalfA==", + "dev": true, +- "peer": true, +- "dependencies": { +- "randombytes": "^2.1.0" +- } +- }, +- "node_modules/shebang-command": { +- "version": "2.0.0", +- "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", +- "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dependencies": { +- "shebang-regex": "^3.0.0" ++ "stylelint-config-recommended-scss": "^14.0.0", ++ "stylelint-config-standard": "^36.0.0" + }, + "engines": { +- "node": ">=8" +- } +- }, +- "node_modules/shebang-regex": { +- "version": "3.0.0", +- "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", +- "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", +- "engines": { +- "node": ">=8" ++ "node": ">=18.12.0" ++ }, ++ "peerDependencies": { ++ "postcss": "^8.3.3", ++ "stylelint": "^16.3.1" ++ }, ++ "peerDependenciesMeta": { ++ "postcss": { ++ "optional": true ++ } + } + }, +- "node_modules/side-channel": { +- "version": "1.0.4", +- "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", +- "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", +- "peer": true, ++ "node_modules/stylelint-formatter-pretty": { ++ "version": "4.0.0", ++ "resolved": "https://registry.npmjs.org/stylelint-formatter-pretty/-/stylelint-formatter-pretty-4.0.0.tgz", ++ "integrity": "sha512-tVuAEhvdTcLzlupqPEPhpBoszX3hB6AnI/OSqEIZOxRatHDHSlu/MaU13MUDzEPOgdoFfDzsVqhp4j2DltaIvg==", ++ "dev": true, ++ "funding": [ ++ { ++ "type": "kofi", ++ "url": "https://ko-fi.com/mrcgrtz" ++ }, ++ { ++ "type": "liberapay", ++ "url": "https://liberapay.com/mrcgrtz/" ++ } ++ ], + "dependencies": { +- "call-bind": "^1.0.0", +- "get-intrinsic": "^1.0.2", +- "object-inspect": "^1.9.0" ++ "ansi-escapes": "^6.2.0", ++ "log-symbols": "^6.0.0", ++ "picocolors": "^1.0.0", ++ "plur": "^5.1.0", ++ "string-width": "^7.0.0", ++ "supports-hyperlinks": "^3.0.0" + }, +- "funding": { +- "url": "https://github.com/sponsors/ljharb" +- } +- }, +- "node_modules/signal-exit": { +- "version": "4.0.2", +- "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.0.2.tgz", +- "integrity": "sha512-MY2/qGx4enyjprQnFaZsHib3Yadh3IXyV2C321GY0pjGfVBu4un0uDJkwgdxqO+Rdx8JMT8IfJIRwbYVz3Ob3Q==", + "engines": { +- "node": ">=14" ++ "node": ">=18.12.0" + }, +- "funding": { +- "url": "https://github.com/sponsors/isaacs" ++ "peerDependencies": { ++ "stylelint": ">=16.0.0" + } + }, +- "node_modules/sizzle": { +- "version": "2.3.10", +- "resolved": "https://registry.npmjs.org/sizzle/-/sizzle-2.3.10.tgz", +- "integrity": "sha512-kPGev+SiByuzi/YPDTqCwdKLWCaN9+14ve86yH0gP6Efue04xjLYWJrcLC6y1buFyIVXkwHNXPsOTEd1MYVPbQ==", ++ "node_modules/stylelint-formatter-pretty/node_modules/emoji-regex": { ++ "version": "10.3.0", ++ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-10.3.0.tgz", ++ "integrity": "sha512-QpLs9D9v9kArv4lfDEgg1X/gN5XLnf/A6l9cs8SPZLRZR3ZkY9+kwIQTxm+fsSej5UMYGE8fdoaZVIBlqG0XTw==", + "dev": true + }, +- "node_modules/slash": { +- "version": "3.0.0", +- "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", +- "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", ++ "node_modules/stylelint-formatter-pretty/node_modules/string-width": { ++ "version": "7.2.0", ++ "resolved": "https://registry.npmjs.org/string-width/-/string-width-7.2.0.tgz", ++ "integrity": "sha512-tsaTIkKW9b4N+AEj+SVA+WhJzV7/zMhcSu78mLKWSk7cXMOSHsBKFWUs0fWwq8QyK3MgJBQRX6Gbi4kYbdvGkQ==", + "dev": true, ++ "dependencies": { ++ "emoji-regex": "^10.3.0", ++ "get-east-asian-width": "^1.0.0", ++ "strip-ansi": "^7.1.0" ++ }, + "engines": { +- "node": ">=8" ++ "node": ">=18" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/sindresorhus" + } + }, +- "node_modules/source-map": { +- "version": "0.6.1", +- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", +- "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", ++ "node_modules/stylelint-scss": { ++ "version": "6.4.1", ++ "resolved": "https://registry.npmjs.org/stylelint-scss/-/stylelint-scss-6.4.1.tgz", ++ "integrity": "sha512-+clI2bQC2FPOt06ZwUlXZZ95IO2C5bKTP0GLN1LNQPVvISfSNcgMKv/VTwym1mK9vnqhHbOk8lO4rj4nY7L9pw==", + "dev": true, +- "peer": true, ++ "dependencies": { ++ "known-css-properties": "^0.34.0", ++ "postcss-media-query-parser": "^0.2.3", ++ "postcss-resolve-nested-selector": "^0.1.1", ++ "postcss-selector-parser": "^6.1.0", ++ "postcss-value-parser": "^4.2.0" ++ }, + "engines": { +- "node": ">=0.10.0" ++ "node": ">=18.12.0" ++ }, ++ "peerDependencies": { ++ "stylelint": "^16.0.2" + } + }, +- "node_modules/source-map-js": { +- "version": "1.0.2", +- "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", +- "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", ++ "node_modules/stylelint/node_modules/ansi-regex": { ++ "version": "5.0.1", ++ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", ++ "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { +- "node": ">=0.10.0" ++ "node": ">=8" + } + }, +- "node_modules/source-map-support": { +- "version": "0.5.21", +- "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", +- "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", +- "dev": true, +- "peer": true, +- "dependencies": { +- "buffer-from": "^1.0.0", +- "source-map": "^0.6.0" +- } ++ "node_modules/stylelint/node_modules/balanced-match": { ++ "version": "2.0.0", ++ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-2.0.0.tgz", ++ "integrity": "sha512-1ugUSr8BHXRnK23KfuYS+gVMC3LB8QGH9W1iGtDPsNWoQbgtXSExkBu2aDR4epiGWZOjZsj6lDl/N/AqqTC3UA==", ++ "dev": true + }, +- "node_modules/sourcemap-codec": { +- "version": "1.4.8", +- "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", +- "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", +- "deprecated": "Please use @jridgewell/sourcemap-codec instead", ++ "node_modules/stylelint/node_modules/emoji-regex": { ++ "version": "8.0.0", ++ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", ++ "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, +- "node_modules/stop-iteration-iterator": { +- "version": "1.0.0", +- "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.0.0.tgz", +- "integrity": "sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==", +- "peer": true, ++ "node_modules/stylelint/node_modules/file-entry-cache": { ++ "version": "9.0.0", ++ "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-9.0.0.tgz", ++ "integrity": "sha512-6MgEugi8p2tiUhqO7GnPsmbCCzj0YRCwwaTbpGRyKZesjRSzkqkAE9fPp7V2yMs5hwfgbQLgdvSSkGNg1s5Uvw==", ++ "dev": true, + "dependencies": { +- "internal-slot": "^1.0.4" ++ "flat-cache": "^5.0.0" + }, + "engines": { +- "node": ">= 0.4" ++ "node": ">=18" + } + }, +- "node_modules/string_decoder": { +- "version": "1.3.0", +- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", +- "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", ++ "node_modules/stylelint/node_modules/flat-cache": { ++ "version": "5.0.0", ++ "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-5.0.0.tgz", ++ "integrity": "sha512-JrqFmyUl2PnPi1OvLyTVHnQvwQ0S+e6lGSwu8OkAZlSaNIZciTY2H/cOOROxsBA1m/LZNHDsqAgDZt6akWcjsQ==", + "dev": true, + "dependencies": { +- "safe-buffer": "~5.2.0" ++ "flatted": "^3.3.1", ++ "keyv": "^4.5.4" ++ }, ++ "engines": { ++ "node": ">=18" + } + }, +- "node_modules/string-width": { +- "version": "5.1.2", +- "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", +- "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", +- "dependencies": { +- "eastasianwidth": "^0.2.0", +- "emoji-regex": "^9.2.2", +- "strip-ansi": "^7.0.1" +- }, ++ "node_modules/stylelint/node_modules/resolve-from": { ++ "version": "5.0.0", ++ "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", ++ "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", ++ "dev": true, + "engines": { +- "node": ">=12" +- }, +- "funding": { +- "url": "https://github.com/sponsors/sindresorhus" ++ "node": ">=8" + } + }, +- "node_modules/string-width-cjs": { +- "name": "string-width", ++ "node_modules/stylelint/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", ++ "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" +- }, +- "engines": { +- "node": ">=8" +- } +- }, +- "node_modules/string-width-cjs/node_modules/ansi-regex": { +- "version": "5.0.1", +- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", +- "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", ++ }, + "engines": { + "node": ">=8" + } + }, +- "node_modules/string-width-cjs/node_modules/emoji-regex": { +- "version": "8.0.0", +- "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", +- "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" +- }, +- "node_modules/string-width-cjs/node_modules/strip-ansi": { ++ "node_modules/stylelint/node_modules/string-width/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", ++ "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, +@@ -4348,50 +7331,50 @@ + "node": ">=8" + } + }, +- "node_modules/strip-ansi": { +- "version": "7.1.0", +- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", +- "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", ++ "node_modules/supports-color": { ++ "version": "5.5.0", ++ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", ++ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", ++ "dev": true, + "dependencies": { +- "ansi-regex": "^6.0.1" ++ "has-flag": "^3.0.0" + }, + "engines": { +- "node": ">=12" +- }, +- "funding": { +- "url": "https://github.com/chalk/strip-ansi?sponsor=1" ++ "node": ">=4" + } + }, +- "node_modules/strip-ansi-cjs": { +- "name": "strip-ansi", +- "version": "6.0.1", +- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", +- "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", ++ "node_modules/supports-hyperlinks": { ++ "version": "3.0.0", ++ "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-3.0.0.tgz", ++ "integrity": "sha512-QBDPHyPQDRTy9ku4URNGY5Lah8PAaXs6tAAwp55sL5WCsSW7GIfdf6W5ixfziW+t7wh3GVvHyHHyQ1ESsoRvaA==", ++ "dev": true, + "dependencies": { +- "ansi-regex": "^5.0.1" ++ "has-flag": "^4.0.0", ++ "supports-color": "^7.0.0" + }, + "engines": { +- "node": ">=8" ++ "node": ">=14.18" + } + }, +- "node_modules/strip-ansi-cjs/node_modules/ansi-regex": { +- "version": "5.0.1", +- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", +- "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", ++ "node_modules/supports-hyperlinks/node_modules/has-flag": { ++ "version": "4.0.0", ++ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", ++ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", ++ "dev": true, + "engines": { + "node": ">=8" + } + }, +- "node_modules/supports-color": { +- "version": "5.5.0", +- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", +- "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", ++ "node_modules/supports-hyperlinks/node_modules/supports-color": { ++ "version": "7.2.0", ++ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", ++ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { +- "has-flag": "^3.0.0" ++ "has-flag": "^4.0.0" + }, + "engines": { +- "node": ">=4" ++ "node": ">=8" + } + }, + "node_modules/supports-preserve-symlinks-flag": { +@@ -4406,11 +7389,96 @@ + "url": "https://github.com/sponsors/ljharb" + } + }, ++ "node_modules/svg-tags": { ++ "version": "1.0.0", ++ "resolved": "https://registry.npmjs.org/svg-tags/-/svg-tags-1.0.0.tgz", ++ "integrity": "sha512-ovssysQTa+luh7A5Weu3Rta6FJlFBBbInjOh722LIt6klpU2/HtdUbszju/G4devcvk8PGt7FCLv5wftu3THUA==", ++ "dev": true ++ }, + "node_modules/tabbable": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/tabbable/-/tabbable-6.2.0.tgz", + "integrity": "sha512-Cat63mxsVJlzYvN51JmVXIgNoUokrIaT2zLclCXjRd8boZ0004U4KCs/sToJ75C6sdlByWxpYnb5Boif1VSFew==" + }, ++ "node_modules/table": { ++ "version": "6.8.2", ++ "resolved": "https://registry.npmjs.org/table/-/table-6.8.2.tgz", ++ "integrity": "sha512-w2sfv80nrAh2VCbqR5AK27wswXhqcck2AhfnNW76beQXskGZ1V12GwS//yYVa3d3fcvAip2OUnbDAjW2k3v9fA==", ++ "dev": true, ++ "dependencies": { ++ "ajv": "^8.0.1", ++ "lodash.truncate": "^4.4.2", ++ "slice-ansi": "^4.0.0", ++ "string-width": "^4.2.3", ++ "strip-ansi": "^6.0.1" ++ }, ++ "engines": { ++ "node": ">=10.0.0" ++ } ++ }, ++ "node_modules/table/node_modules/ajv": { ++ "version": "8.17.1", ++ "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", ++ "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", ++ "dev": true, ++ "dependencies": { ++ "fast-deep-equal": "^3.1.3", ++ "fast-uri": "^3.0.1", ++ "json-schema-traverse": "^1.0.0", ++ "require-from-string": "^2.0.2" ++ }, ++ "funding": { ++ "type": "github", ++ "url": "https://github.com/sponsors/epoberezkin" ++ } ++ }, ++ "node_modules/table/node_modules/ansi-regex": { ++ "version": "5.0.1", ++ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", ++ "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", ++ "dev": true, ++ "engines": { ++ "node": ">=8" ++ } ++ }, ++ "node_modules/table/node_modules/emoji-regex": { ++ "version": "8.0.0", ++ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", ++ "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", ++ "dev": true ++ }, ++ "node_modules/table/node_modules/json-schema-traverse": { ++ "version": "1.0.0", ++ "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", ++ "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", ++ "dev": true ++ }, ++ "node_modules/table/node_modules/string-width": { ++ "version": "4.2.3", ++ "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", ++ "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", ++ "dev": true, ++ "dependencies": { ++ "emoji-regex": "^8.0.0", ++ "is-fullwidth-code-point": "^3.0.0", ++ "strip-ansi": "^6.0.1" ++ }, ++ "engines": { ++ "node": ">=8" ++ } ++ }, ++ "node_modules/table/node_modules/strip-ansi": { ++ "version": "6.0.1", ++ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", ++ "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", ++ "dev": true, ++ "dependencies": { ++ "ansi-regex": "^5.0.1" ++ }, ++ "engines": { ++ "node": ">=8" ++ } ++ }, + "node_modules/tapable": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", +@@ -4481,6 +7549,12 @@ + "dev": true, + "peer": true + }, ++ "node_modules/text-table": { ++ "version": "0.2.0", ++ "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", ++ "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", ++ "dev": true ++ }, + "node_modules/tiny-glob": { + "version": "0.2.9", + "resolved": "https://registry.npmjs.org/tiny-glob/-/tiny-glob-0.2.9.tgz", +@@ -4524,6 +7598,18 @@ + "node": ">=8.0" + } + }, ++ "node_modules/ts-api-utils": { ++ "version": "1.3.0", ++ "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.3.0.tgz", ++ "integrity": "sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==", ++ "dev": true, ++ "engines": { ++ "node": ">=16" ++ }, ++ "peerDependencies": { ++ "typescript": ">=4.2.0" ++ } ++ }, + "node_modules/ts-loader": { + "version": "9.4.4", + "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-9.4.4.tgz", +@@ -4646,15 +7732,136 @@ + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, ++ "node_modules/tsconfig-paths": { ++ "version": "3.15.0", ++ "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz", ++ "integrity": "sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==", ++ "dev": true, ++ "dependencies": { ++ "@types/json5": "^0.0.29", ++ "json5": "^1.0.2", ++ "minimist": "^1.2.6", ++ "strip-bom": "^3.0.0" ++ } ++ }, ++ "node_modules/tsconfig-paths/node_modules/json5": { ++ "version": "1.0.2", ++ "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", ++ "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", ++ "dev": true, ++ "dependencies": { ++ "minimist": "^1.2.0" ++ }, ++ "bin": { ++ "json5": "lib/cli.js" ++ } ++ }, + "node_modules/tslib": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.1.tgz", + "integrity": "sha512-t0hLfiEKfMUoqhG+U1oid7Pva4bbDPHYfJNiB7BiIjRkj1pyC++4N3huJfqY6aRH6VTB0rvtzQwjM4K6qpfOig==" + }, ++ "node_modules/type-check": { ++ "version": "0.4.0", ++ "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", ++ "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", ++ "dev": true, ++ "dependencies": { ++ "prelude-ls": "^1.2.1" ++ }, ++ "engines": { ++ "node": ">= 0.8.0" ++ } ++ }, ++ "node_modules/type-fest": { ++ "version": "0.20.2", ++ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", ++ "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", ++ "dev": true, ++ "engines": { ++ "node": ">=10" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/sindresorhus" ++ } ++ }, ++ "node_modules/typed-array-buffer": { ++ "version": "1.0.2", ++ "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.2.tgz", ++ "integrity": "sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==", ++ "dev": true, ++ "dependencies": { ++ "call-bind": "^1.0.7", ++ "es-errors": "^1.3.0", ++ "is-typed-array": "^1.1.13" ++ }, ++ "engines": { ++ "node": ">= 0.4" ++ } ++ }, ++ "node_modules/typed-array-byte-length": { ++ "version": "1.0.1", ++ "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.1.tgz", ++ "integrity": "sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==", ++ "dev": true, ++ "dependencies": { ++ "call-bind": "^1.0.7", ++ "for-each": "^0.3.3", ++ "gopd": "^1.0.1", ++ "has-proto": "^1.0.3", ++ "is-typed-array": "^1.1.13" ++ }, ++ "engines": { ++ "node": ">= 0.4" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, ++ "node_modules/typed-array-byte-offset": { ++ "version": "1.0.2", ++ "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.2.tgz", ++ "integrity": "sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA==", ++ "dev": true, ++ "dependencies": { ++ "available-typed-arrays": "^1.0.7", ++ "call-bind": "^1.0.7", ++ "for-each": "^0.3.3", ++ "gopd": "^1.0.1", ++ "has-proto": "^1.0.3", ++ "is-typed-array": "^1.1.13" ++ }, ++ "engines": { ++ "node": ">= 0.4" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, ++ "node_modules/typed-array-length": { ++ "version": "1.0.6", ++ "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.6.tgz", ++ "integrity": "sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g==", ++ "dev": true, ++ "dependencies": { ++ "call-bind": "^1.0.7", ++ "for-each": "^0.3.3", ++ "gopd": "^1.0.1", ++ "has-proto": "^1.0.3", ++ "is-typed-array": "^1.1.13", ++ "possible-typed-array-names": "^1.0.0" ++ }, ++ "engines": { ++ "node": ">= 0.4" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, + "node_modules/typescript": { +- "version": "5.1.6", +- "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.1.6.tgz", +- "integrity": "sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA==", ++ "version": "5.5.3", ++ "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.5.3.tgz", ++ "integrity": "sha512-/hreyEujaB0w76zKo6717l3L0o/qEUtRgdvUBvlkhoWeOVMjMuHNHk0BRBzikzuGDqNmPQbg5ifMEqsHLiIUcQ==", + "dev": true, + "bin": { + "tsc": "bin/tsc", +@@ -4664,6 +7871,21 @@ + "node": ">=14.17" + } + }, ++ "node_modules/unbox-primitive": { ++ "version": "1.0.2", ++ "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", ++ "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", ++ "dev": true, ++ "dependencies": { ++ "call-bind": "^1.0.2", ++ "has-bigints": "^1.0.2", ++ "has-symbols": "^1.0.3", ++ "which-boxed-primitive": "^1.0.2" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, + "node_modules/universalify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", +@@ -4709,11 +7931,23 @@ + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, +- "peer": true, + "dependencies": { + "punycode": "^2.1.0" + } + }, ++ "node_modules/util-deprecate": { ++ "version": "1.0.2", ++ "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", ++ "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", ++ "dev": true ++ }, ++ "node_modules/varint": { ++ "version": "6.0.0", ++ "resolved": "https://registry.npmjs.org/varint/-/varint-6.0.0.tgz", ++ "integrity": "sha512-cXEIW6cfr15lFv563k4GuVuW/fiwjknytD37jIOLSdSWuOI6WnO/oKwmP2FQTU2l01LP8/M5TSAJpzUaGe3uWg==", ++ "dev": true, ++ "peer": true ++ }, + "node_modules/watchpack": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", +@@ -4804,7 +8038,6 @@ + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", + "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", +- "peer": true, + "dependencies": { + "is-bigint": "^1.0.1", + "is-boolean-object": "^1.1.0", +@@ -4816,11 +8049,36 @@ + "url": "https://github.com/sponsors/ljharb" + } + }, ++ "node_modules/which-builtin-type": { ++ "version": "1.1.3", ++ "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.1.3.tgz", ++ "integrity": "sha512-YmjsSMDBYsM1CaFiayOVT06+KJeXf0o5M/CAd4o1lTadFAtacTUM49zoYxr/oroopFDfhvN6iEcBxUyc3gvKmw==", ++ "dev": true, ++ "dependencies": { ++ "function.prototype.name": "^1.1.5", ++ "has-tostringtag": "^1.0.0", ++ "is-async-function": "^2.0.0", ++ "is-date-object": "^1.0.5", ++ "is-finalizationregistry": "^1.0.2", ++ "is-generator-function": "^1.0.10", ++ "is-regex": "^1.1.4", ++ "is-weakref": "^1.0.2", ++ "isarray": "^2.0.5", ++ "which-boxed-primitive": "^1.0.2", ++ "which-collection": "^1.0.1", ++ "which-typed-array": "^1.1.9" ++ }, ++ "engines": { ++ "node": ">= 0.4" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/ljharb" ++ } ++ }, + "node_modules/which-collection": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.1.tgz", + "integrity": "sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==", +- "peer": true, + "dependencies": { + "is-map": "^2.0.1", + "is-set": "^2.0.1", +@@ -4832,16 +8090,15 @@ + } + }, + "node_modules/which-typed-array": { +- "version": "1.1.11", +- "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.11.tgz", +- "integrity": "sha512-qe9UWWpkeG5yzZ0tNYxDmd7vo58HDBc39mZ0xWWpolAGADdFOzkfamWLDxkOWcvHQKVmdTyQdLD4NOfjLWTKew==", +- "peer": true, ++ "version": "1.1.15", ++ "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.15.tgz", ++ "integrity": "sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==", + "dependencies": { +- "available-typed-arrays": "^1.0.5", +- "call-bind": "^1.0.2", ++ "available-typed-arrays": "^1.0.7", ++ "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", +- "has-tostringtag": "^1.0.0" ++ "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" +@@ -4850,6 +8107,15 @@ + "url": "https://github.com/sponsors/ljharb" + } + }, ++ "node_modules/word-wrap": { ++ "version": "1.2.5", ++ "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", ++ "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", ++ "dev": true, ++ "engines": { ++ "node": ">=0.10.0" ++ } ++ }, + "node_modules/wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", +@@ -4967,6 +8233,19 @@ + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true + }, ++ "node_modules/write-file-atomic": { ++ "version": "5.0.1", ++ "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-5.0.1.tgz", ++ "integrity": "sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==", ++ "dev": true, ++ "dependencies": { ++ "imurmurhash": "^0.1.4", ++ "signal-exit": "^4.0.1" ++ }, ++ "engines": { ++ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" ++ } ++ }, + "node_modules/ws": { + "version": "7.5.10", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.10.tgz", +@@ -5003,6 +8282,18 @@ + "engines": { + "node": ">= 14" + } ++ }, ++ "node_modules/yocto-queue": { ++ "version": "0.1.0", ++ "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", ++ "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", ++ "dev": true, ++ "engines": { ++ "node": ">=10" ++ }, ++ "funding": { ++ "url": "https://github.com/sponsors/sindresorhus" ++ } + } + } + } +diff --git a/package.json b/package.json +index 62afd37..8aa4749 100644 +--- a/package.json ++++ b/package.json +@@ -1,51 +1,71 @@ + { +- "name": "tukit", +- "description": "Cockpit module for Transactional Update", +- "type": "module", +- "main": "index.js", +- "repository": "https://github.com/openSUSE/cockpit-tukit", +- "author": "", +- "license": "LGPL-2.1", +- "scripts": { +- "watch": "ESBUILD_WATCH='true' ./build.js", +- "build": "tsc -noEmit && ./build.js", +- "lint": "biome check .", +- "format": "biome format . --write", +- "postinstall": "patch-package" +- }, +- "devDependencies": { +- "@babel/preset-typescript": "^7.21.4", +- "@biomejs/biome": "1.8.3", +- "@types/react": "^18.0.37", +- "@types/react-dom": "^18.0.11", +- "argparse": "^2.0.1", +- "chrome-remote-interface": "^0.32.1", +- "esbuild": "^0.18.6", +- "esbuild-plugin-copy": "^2.1.1", +- "esbuild-plugin-replace": "^1.3.0", +- "esbuild-sass-plugin": "^2.10.0", +- "gettext-parser": "7.0.1", +- "htmlparser": "^1.7.7", +- "jed": "^1.1.1", +- "patch-package": "^7.0.2", +- "qunit": "^2.9.3", +- "sass": "^1.61.0", +- "sizzle": "^2.3.3", +- "ts-loader": "^9.4.2", +- "typescript": "^5.0.4" +- }, +- "peerDependencies": { +- "date-fns": "^2.30.0", +- "deep-equal": "^2.2.2" +- }, +- "dependencies": { +- "@patternfly/patternfly": "5.0.0-alpha.64", +- "@patternfly/react-core": "5.0.0-alpha.115", +- "@patternfly/react-icons": "5.0.0-alpha.19", +- "@patternfly/react-styles": "5.0.0-alpha.16", +- "glob": "^10.3.3", +- "react": "18.2.0", +- "react-dom": "18.2.0", +- "react-xml-parser": "^1.1.8" +- } ++ "name": "tukit", ++ "description": "Cockpit module for Transactional Update", ++ "type": "module", ++ "main": "index.js", ++ "repository": "https://github.com/openSUSE/cockpit-tukit", ++ "author": "", ++ "license": "LGPL-2.1", ++ "scripts": { ++ "watch": "ESBUILD_WATCH='true' ./build.js", ++ "build": "tsc -noEmit && ./build.js", ++ "eslint": "eslint src/", ++ "eslint:fix": "eslint --fix src/", ++ "stylelint": "stylelint src/*{.css,scss}", ++ "stylelint:fix": "stylelint --fix src/*{.css,scss}", ++ "lint": "biome check .", ++ "format": "biome format . --write", ++ "ci": "biome ci && npm run eslint && npm run stylelint", ++ "postinstall": "patch-package" ++ }, ++ "devDependencies": { ++ "@babel/preset-typescript": "^7.21.4", ++ "@biomejs/biome": "1.8.3", ++ "@types/react": "^18.3.3", ++ "@types/react-dom": "^18.3.0", ++ "@typescript-eslint/eslint-plugin": "7.17.0", ++ "argparse": "^2.0.1", ++ "chrome-remote-interface": "^0.33.0", ++ "esbuild": "^0.23.0", ++ "esbuild-plugin-copy": "^2.1.1", ++ "esbuild-plugin-replace": "^1.4.0", ++ "esbuild-sass-plugin": "^3.3.1", ++ "eslint": "^8.57.0", ++ "eslint-config-standard": "^17.1.0", ++ "eslint-config-standard-jsx": "^11.0.0", ++ "eslint-config-standard-react": "^13.0.0", ++ "eslint-plugin-import": "^2.29.1", ++ "eslint-plugin-node": "^11.1.0", ++ "eslint-plugin-promise": "^6.6.0", ++ "eslint-plugin-react": "^7.35.0", ++ "eslint-plugin-react-hooks": "^4.6.2", ++ "gettext-parser": "8.0.0", ++ "htmlparser": "^1.7.7", ++ "jed": "^1.1.1", ++ "patch-package": "^7.0.2", ++ "qunit": "^2.21.1", ++ "sass": "^1.77.8", ++ "sizzle": "^2.3.3", ++ "stylelint": "16.7.0", ++ "stylelint-config-recommended-scss": "14.0.0", ++ "stylelint-config-standard": "36.0.1", ++ "stylelint-config-standard-scss": "13.1.0", ++ "stylelint-formatter-pretty": "4.0.0", ++ "ts-loader": "^9.4.2", ++ "typescript": "5.5.3" ++ }, ++ "peerDependencies": { ++ "date-fns": "^2.30.0", ++ "deep-equal": "^2.2.2" ++ }, ++ "dependencies": { ++ "@patternfly/patternfly": "5.3.1", ++ "@patternfly/react-core": "5.3.4", ++ "@patternfly/react-icons": "5.3.2", ++ "@patternfly/react-styles": "5.3.1", ++ "glob": "^11.0.0", ++ "react": "18.3.1", ++ "react-dom": "18.3.1", ++ "react-xml-parser": "^1.1.8" ++ } + } +diff --git a/cockpit-tukit.spec.in b/packaging/cockpit-tukit.spec.in +similarity index 100% +rename from cockpit-tukit.spec.in +rename to packaging/cockpit-tukit.spec.in +diff --git a/patches/glob+10.3.3.patch b/patches/glob+10.3.3.patch +deleted file mode 100644 +index 1fcc64d..0000000 +--- a/patches/glob+10.3.3.patch ++++ /dev/null +@@ -1,11 +0,0 @@ +-diff --git a/node_modules/glob/dist/mjs/index.js b/node_modules/glob/dist/mjs/index.js +-index 7b27011..76b7c27 100644 +---- a/node_modules/glob/dist/mjs/index.js +-+++ b/node_modules/glob/dist/mjs/index.js +-@@ -53,4 +53,5 @@ export const glob = Object.assign(glob_, { +- unescape, +- }); +- glob.glob = glob; +-+export {glob as default}; +- //# sourceMappingURL=index.js.map +-\ No newline at end of file +diff --git a/patches/glob+11.0.0.patch b/patches/glob+11.0.0.patch +new file mode 100644 +index 0000000..b4b9e9c +--- /dev/null ++++ b/patches/glob+11.0.0.patch +@@ -0,0 +1,11 @@ ++diff --git a/node_modules/glob/dist/esm/index.js b/node_modules/glob/dist/esm/index.js ++index e15c1f9..0eda344 100644 ++--- a/node_modules/glob/dist/esm/index.js +++++ b/node_modules/glob/dist/esm/index.js ++@@ -52,4 +52,5 @@ export const glob = Object.assign(glob_, { ++ unescape, ++ }); ++ glob.glob = glob; +++export { glob as default }; ++ //# sourceMappingURL=index.js.map ++\ No newline at end of file +diff --git a/src/app.tsx b/src/app.tsx +index c3d0a84..e0090d3 100644 +--- a/src/app.tsx ++++ b/src/app.tsx +@@ -25,19 +25,19 @@ import "cockpit-dark-theme"; + import { page_status } from "notifications"; + import React, { useState, useEffect } from "react"; + import { +- Button, +- Card, +- CardBody, +- CardTitle, +- DataList, +- EmptyState, +- EmptyStateBody, +- EmptyStateIcon, +- Gallery, +- Page, +- PageSection, +- Spinner, +- Title, ++ Button, ++ Card, ++ CardBody, ++ CardTitle, ++ DataList, ++ EmptyState, ++ EmptyStateBody, ++ EmptyStateIcon, ++ Gallery, ++ Page, ++ PageSection, ++ Spinner, ++ Title, + } from "@patternfly/react-core"; + import { ExclamationCircleIcon, RedoIcon } from "@patternfly/react-icons"; + +@@ -47,10 +47,10 @@ import StatusPanel from "./components/StatusPanel"; + import UpdatesPanel from "./components/UpdatesPanel"; + + import { +- type Snapshot, +- createSnapshot, +- snapshotsProxy, +- tukitdProxy, ++ type Snapshot, ++ createSnapshot, ++ snapshotsProxy, ++ tukitdProxy, + } from "./tukit"; + import { type Status, mostSevereStatus } from "./status"; + import type { Update } from "./update"; +@@ -60,213 +60,213 @@ const _ = cockpit.gettext; + superuser.reload_page_on_change(); + + const Application = () => { +- const [status, setStatus] = useState([]); ++ const [status, setStatus] = useState([]); + +- const [snapshots, setSnapshots] = useState([]); +- const [snapshotsWaiting, setSnapshotsWaiting] = useState(null); +- const [snapshotsDirty, setSnapshotsDirty] = useState(true); ++ const [snapshots, setSnapshots] = useState([]); ++ const [snapshotsWaiting, setSnapshotsWaiting] = useState(null); ++ const [snapshotsDirty, setSnapshotsDirty] = useState(true); + +- const [updates, setUpdates] = useState([]); +- const [updatesWaiting, setUpdatesWaiting] = useState(null); +- const [updatesError, setUpdatesError] = useState(null); +- const [updatesDirty, setUpdatesDirty] = useState(true); ++ const [updates, setUpdates] = useState([]); ++ const [updatesWaiting, setUpdatesWaiting] = useState(null); ++ const [updatesError, setUpdatesError] = useState(null); ++ const [updatesDirty, setUpdatesDirty] = useState(true); + +- const [serviceReady, setServiceReady] = useState(false); ++ const [serviceReady, setServiceReady] = useState(false); + +- useEvent(superuser, "changed"); ++ useEvent(superuser, "changed"); + +- const setDirty = (v: boolean) => { +- setSnapshotsDirty(v); +- setUpdatesDirty(v); +- }; ++ const setDirty = (v: boolean) => { ++ setSnapshotsDirty(v); ++ setUpdatesDirty(v); ++ }; + +- useEffect(() => { +- if (superuser.allowed) getSnapshots(); +- // TODO: FIX! +- // eslint-disable-next-line react-hooks/exhaustive-deps +- }, [snapshotsDirty, superuser.allowed]); ++ useEffect(() => { ++ if (superuser.allowed) getSnapshots(); ++ // TODO: FIX! ++ // eslint-disable-next-line react-hooks/exhaustive-deps ++ }, [snapshotsDirty, superuser.allowed]); + +- // forward status to Cockpit +- useEffect(() => { +- if (status.length > 0) { +- // page_status can show only one status +- // use most important one +- page_status.set_own(mostSevereStatus(status)); +- } else { +- page_status.set_own(null); +- } +- }, [status]); ++ // forward status to Cockpit ++ useEffect(() => { ++ if (status.length > 0) { ++ // page_status can show only one status ++ // use most important one ++ page_status.set_own(mostSevereStatus(status)); ++ } else { ++ page_status.set_own(null); ++ } ++ }, [status]); + +- const showServiceDetails = () => { +- cockpit.jump("/system/services#/tukitd.service", cockpit.transport.host); +- }; ++ const showServiceDetails = () => { ++ cockpit.jump("/system/services#/tukitd.service", cockpit.transport.host); ++ }; + +- const loading = () => { +- return ( +- +- +- {_("Loading...")} +- +- ); +- }; ++ const loading = () => { ++ return ( ++ ++ ++ {_("Loading...")} ++ ++ ); ++ }; + +- const serviceProblem = () => { +- // service proxy not ready yet? +- if (!serviceReady) { +- tukitdProxy().wait(() => { +- setServiceReady(true); +- }); +- return loading(); +- } +- if (!tukitdProxy().exists) { +- return ( +- +- +- +- {_("Transactional update service not installed")} +- +- +- {_("Please ensure package tukitd is installed.")} +- +- +- ); +- } +- if (tukitdProxy().state !== "running") { +- return ( +- +- +- +- {_("Transactional update service not running")} +- +- +- +- +- +- ); +- } +- if (!superuser.allowed) { +- return ( +- +- +- +- {_( +- "Administrative access is required to access updates and snapshots.", +- )} +- +- +- ); +- } +- return false; +- }; ++ const serviceProblem = () => { ++ // service proxy not ready yet? ++ if (!serviceReady) { ++ tukitdProxy().wait(() => { ++ setServiceReady(true); ++ }); ++ return loading(); ++ } ++ if (!tukitdProxy().exists) { ++ return ( ++ ++ ++ ++ {_("Transactional update service not installed")} ++ ++ ++ {_("Please ensure package tukitd is installed.")} ++ ++ ++ ); ++ } ++ if (tukitdProxy().state !== "running") { ++ return ( ++ ++ ++ ++ {_("Transactional update service not running")} ++ ++ ++ ++ ++ ++ ); ++ } ++ if (!superuser.allowed) { ++ return ( ++ ++ ++ ++ {_( ++ "Administrative access is required to access updates and snapshots.", ++ )} ++ ++ ++ ); ++ } ++ return false; ++ }; + +- const getSnapshots = () => { +- if (!snapshotsDirty) { +- return; +- } +- setSnapshotsDirty(false); ++ const getSnapshots = () => { ++ if (!snapshotsDirty) { ++ return; ++ } ++ setSnapshotsDirty(false); + +- setSnapshotsWaiting(_("Fetching snapshots...")); +- const proxy = snapshotsProxy(); +- proxy.wait(async () => { +- try { +- const snaps = ( +- await proxy.List("number,default,active,date,description") +- ).map((snap) => createSnapshot(snap)); +- // remove "current" snapshot +- snaps.shift(); +- snaps.sort((a, b) => b.number - a.number); +- // mark old snapshots +- let active: Snapshot | null = null; +- for (const snap of snaps) { +- if (active) snap.old = true; +- if (snap.active) active = snap; +- } +- setSnapshots(snaps); +- } catch (e) { +- // service problems are reported in serviceProblem() +- if (serviceReady && tukitdProxy().state === "running") { +- alert(`ERROR ${e}`); +- } +- } +- setSnapshotsWaiting(null); +- }); +- }; ++ setSnapshotsWaiting(_("Fetching snapshots...")); ++ const proxy = snapshotsProxy(); ++ proxy.wait(async () => { ++ try { ++ const snaps = ( ++ await proxy.List("number,default,active,date,description") ++ ).map((snap) => createSnapshot(snap)); ++ // remove "current" snapshot ++ snaps.shift(); ++ snaps.sort((a, b) => b.number - a.number); ++ // mark old snapshots ++ let active: Snapshot | null = null; ++ for (const snap of snaps) { ++ if (active) snap.old = true; ++ if (snap.active) active = snap; ++ } ++ setSnapshots(snaps); ++ } catch (e) { ++ // service problems are reported in serviceProblem() ++ if (serviceReady && tukitdProxy().state === "running") { ++ alert(`ERROR ${e}`); ++ } ++ } ++ setSnapshotsWaiting(null); ++ }); ++ }; + +- return ( +- +- +- +- +- +- +- +- {_("Snapshots & Updates")} +- +- +- +- {serviceProblem() || (snapshotsWaiting && loading()) || ( +- +- {updates.length > 0 && ( +- +- )} +- {snapshots.map((item) => ( +- +- ))} +- +- )} +- +- +- +- +- +- ); ++ return ( ++ ++ ++ ++ ++ ++ ++ ++ {_("Snapshots & Updates")} ++ ++ ++ ++ {serviceProblem() || (snapshotsWaiting && loading()) || ( ++ ++ {updates.length > 0 && ( ++ ++ )} ++ {snapshots.map((item) => ( ++ ++ ))} ++ ++ )} ++ ++ ++ ++ ++ ++ ); + }; + + export default Application; +diff --git a/src/components/SnapshotItem.tsx b/src/components/SnapshotItem.tsx +index 4000496..014eb2c 100644 +--- a/src/components/SnapshotItem.tsx ++++ b/src/components/SnapshotItem.tsx +@@ -20,25 +20,25 @@ + + import cockpit from "cockpit"; + import * as timeformat from "timeformat"; +-import type React from "react"; +-import { useState } from "react"; ++// biome-ignore lint/style/useImportType: this is not used as a type ++import React, { useState } from "react"; + import { +- Badge, +- Button, +- DataListItem, +- DataListToggle, +- DataListItemRow, +- DataListItemCells, +- DataListCell, +- DataListAction, +- DataListContent, +- Dropdown, +- DropdownItem, +- Label, +- Tooltip, +- type MenuToggleElement, +- MenuToggle, +- DropdownList, ++ Badge, ++ Button, ++ DataListItem, ++ DataListToggle, ++ DataListItemRow, ++ DataListItemCells, ++ DataListCell, ++ DataListAction, ++ DataListContent, ++ Dropdown, ++ DropdownItem, ++ Label, ++ Tooltip, ++ type MenuToggleElement, ++ MenuToggle, ++ DropdownList, + } from "@patternfly/react-core"; + import { DropdownPosition } from "@patternfly/react-core/deprecated"; + import { CheckCircleIcon, EllipsisVIcon } from "@patternfly/react-icons"; +@@ -47,180 +47,180 @@ import type { Snapshot } from "@/tukit"; + const _ = cockpit.gettext; + + type SnapshotItemProps = { +- item: Snapshot; +- waiting: string | null; +- setWaiting: (waiting: string | null) => void; +- setDirty: (dirty: boolean) => void; ++ item: Snapshot; ++ waiting: string | null; ++ setWaiting: (waiting: string | null) => void; ++ setDirty: (dirty: boolean) => void; + }; + + const SnapshotItem = ({ +- item, +- setDirty, +- setWaiting, +- waiting, ++ item, ++ setDirty, ++ setWaiting, ++ waiting, + }: SnapshotItemProps) => { +- const [expanded, setExpanded] = useState(false); +- const [menuOpen, setMenuOpen] = useState(false); ++ const [expanded, setExpanded] = useState(false); ++ const [menuOpen, setMenuOpen] = useState(false); + +- const rollback = async (snap: Snapshot, msg: string, reboot: boolean) => { +- setWaiting(msg); +- try { +- let script = `transactional-update rollback ${snap.number}`; +- if (reboot) { +- script = `${script} && reboot`; +- } +- const out = await cockpit.script(script, { +- superuser: "require", +- err: "message", +- }); +- console.log(`rollback output: ${out}`); +- setDirty(true); +- } catch (e) { +- console.log(`rollback error: ${e}`); +- // TODO: better error handling +- alert(e); +- } +- setWaiting(null); +- }; +- const rollbackAndReboot = (snap: Snapshot) => { +- rollback(snap, _("Rolling back..."), true); +- }; +- const rollbackOnly = (snap: Snapshot) => { +- rollback(snap, _("Rolling back..."), false); +- }; +- const activateAndReboot = (snap: Snapshot) => { +- rollback(snap, _("Activating..."), true); +- }; +- const activateOnly = (snap: Snapshot) => { +- rollback(snap, _("Activating..."), false); +- }; +- const actions = (item: Snapshot): JSX.Element[] | undefined => { +- if (item.old) { +- return [ +- { +- rollbackOnly(item); +- }} +- > +- {_("Rollback without Reboot")} +- , +- ]; +- } +- if (!item.active && !item.old) { +- return [ +- { +- activateOnly(item); +- }} +- > +- {_("Activate without Reboot")} +- , +- ]; +- } +- return undefined; +- }; +- return ( +- +- +- { +- setExpanded(!expanded); +- }} +- isExpanded={expanded} +- /> +- +- #{item.number} +- , +- +- {item.description} +- , +- +- +- {timeformat.distanceToNow(item.date, false)} +- +- , +- +- {item.active && ( +- +- )} +- {item.default && } +- , +- +- {!item.active && !item.old && ( +- +- )} +- {item.old && ( +- +- )} +- , +- ]} +- /> +- +- {actions(item) && ( +- ) => ( +- { +- setMenuOpen(!menuOpen); +- }} +- isExpanded={menuOpen} +- > +- +- +- )} +- popperProps={{ +- position: DropdownPosition.right, +- }} +- > +- {actions(item)} +- +- )} +- +- +- +- More details about selected snapshot More details about selected +- snapshot More details about selected snapshot More details about +- selected snapshot +- +- +- ); ++ const rollback = async (snap: Snapshot, msg: string, reboot: boolean) => { ++ setWaiting(msg); ++ try { ++ let script = `transactional-update rollback ${snap.number}`; ++ if (reboot) { ++ script = `${script} && reboot`; ++ } ++ const out = await cockpit.script(script, { ++ superuser: "require", ++ err: "message", ++ }); ++ console.log(`rollback output: ${out}`); ++ setDirty(true); ++ } catch (e) { ++ console.log(`rollback error: ${e}`); ++ // TODO: better error handling ++ alert(e); ++ } ++ setWaiting(null); ++ }; ++ const rollbackAndReboot = (snap: Snapshot) => { ++ rollback(snap, _("Rolling back..."), true); ++ }; ++ const rollbackOnly = (snap: Snapshot) => { ++ rollback(snap, _("Rolling back..."), false); ++ }; ++ const activateAndReboot = (snap: Snapshot) => { ++ rollback(snap, _("Activating..."), true); ++ }; ++ const activateOnly = (snap: Snapshot) => { ++ rollback(snap, _("Activating..."), false); ++ }; ++ const actions = (item: Snapshot): JSX.Element[] | undefined => { ++ if (item.old) { ++ return [ ++ { ++ rollbackOnly(item); ++ }} ++ > ++ {_("Rollback without Reboot")} ++ , ++ ]; ++ } ++ if (!item.active && !item.old) { ++ return [ ++ { ++ activateOnly(item); ++ }} ++ > ++ {_("Activate without Reboot")} ++ , ++ ]; ++ } ++ return undefined; ++ }; ++ return ( ++ ++ ++ { ++ setExpanded(!expanded); ++ }} ++ isExpanded={expanded} ++ /> ++ ++ #{item.number} ++ , ++ ++ {item.description} ++ , ++ ++ ++ {timeformat.distanceToNow(item.date, false)} ++ ++ , ++ ++ {item.active && ( ++ ++ )} ++ {item.default && } ++ , ++ ++ {!item.active && !item.old && ( ++ ++ )} ++ {item.old && ( ++ ++ )} ++ , ++ ]} ++ /> ++ ++ {actions(item) && ( ++ ) => ( ++ { ++ setMenuOpen(!menuOpen); ++ }} ++ isExpanded={menuOpen} ++ > ++ ++ ++ )} ++ popperProps={{ ++ position: DropdownPosition.right, ++ }} ++ > ++ {actions(item)} ++ ++ )} ++ ++ ++ ++ More details about selected snapshot More details about selected ++ snapshot More details about selected snapshot More details about ++ selected snapshot ++ ++ ++ ); + }; + + export default SnapshotItem; +diff --git a/src/components/StatusPanel.tsx b/src/components/StatusPanel.tsx +index 6c4cf69..1836fa6 100644 +--- a/src/components/StatusPanel.tsx ++++ b/src/components/StatusPanel.tsx +@@ -21,19 +21,19 @@ + import cockpit from "cockpit"; + import React, { useEffect } from "react"; + import { +- Card, +- CardBody, +- CardTitle, +- List, +- ListItem, +- Tooltip, ++ Card, ++ CardBody, ++ CardTitle, ++ List, ++ ListItem, ++ Tooltip, + } from "@patternfly/react-core"; + import { +- CheckCircleIcon, +- ExclamationCircleIcon, +- ExclamationTriangleIcon, +- InfoCircleIcon, +- PendingIcon, ++ CheckCircleIcon, ++ ExclamationCircleIcon, ++ ExclamationTriangleIcon, ++ InfoCircleIcon, ++ PendingIcon, + } from "@patternfly/react-icons"; + + import "./StatusPanel.scss"; +@@ -44,109 +44,109 @@ import type { Snapshot } from "@/tukit"; + const _ = cockpit.gettext; + + type StatusPanelProps = { +- updates: Update[]; +- waiting: string | null | boolean; +- status: Status[]; +- setStatus: (status: Status[]) => void; +- updatesError: string | null; +- snapshots: Snapshot[]; ++ updates: Update[]; ++ waiting: string | null | boolean; ++ status: Status[]; ++ setStatus: (status: Status[]) => void; ++ updatesError: string | null; ++ snapshots: Snapshot[]; + }; + + const StatusPanel = ({ +- waiting, +- status, +- setStatus, +- updates, +- updatesError, +- snapshots, ++ waiting, ++ status, ++ setStatus, ++ updates, ++ updatesError, ++ snapshots, + }: StatusPanelProps) => { +- // update page status +- useEffect(() => { +- if (waiting) { +- setStatus([ +- { +- type: "", +- key: "wait", +- title: waiting, +- details: { icon: "pending" }, +- }, +- ]); +- return; +- } +- const s: Status[] = []; +- if (updatesError) { +- s.push({ +- key: "updates-error", +- type: "error", +- title: updatesError, +- }); +- } +- if (snapshots.length > 0 && !snapshots[0].active) { +- s.push({ +- key: "new-snapshot", +- type: "info", +- title: cockpit.format( +- _("New snapshot #$1 available: $0"), +- snapshots[0].description, +- snapshots[0].number, +- ), +- }); +- } +- if (updates.length > 0) { +- const security_updates = updates.filter((u) => u.category === "security"); +- const [t, msg] = +- security_updates.length > 0 +- ? (["warning", _("Security updates available")] as const) +- : (["info", _("Updates available")] as const); +- s.push({ +- key: "updates", +- type: t, +- title: msg, +- }); +- } +- // no status? it's good! +- if (s.length === 0) { +- s.push({ +- type: "", +- key: "system-ok", +- title: _("System is up to date"), +- details: { icon: "check" }, +- }); +- } +- setStatus(s); +- }, [waiting, snapshots, updates, updatesError, setStatus]); ++ // update page status ++ useEffect(() => { ++ if (waiting) { ++ setStatus([ ++ { ++ type: "", ++ key: "wait", ++ title: waiting, ++ details: { icon: "pending" }, ++ }, ++ ]); ++ return; ++ } ++ const s: Status[] = []; ++ if (updatesError) { ++ s.push({ ++ key: "updates-error", ++ type: "error", ++ title: updatesError, ++ }); ++ } ++ if (snapshots.length > 0 && !snapshots[0].active) { ++ s.push({ ++ key: "new-snapshot", ++ type: "info", ++ title: cockpit.format( ++ _("New snapshot #$1 available: $0"), ++ snapshots[0].description, ++ snapshots[0].number, ++ ), ++ }); ++ } ++ if (updates.length > 0) { ++ const security_updates = updates.filter((u) => u.category === "security"); ++ const [t, msg] = ++ security_updates.length > 0 ++ ? (["warning", _("Security updates available")] as const) ++ : (["info", _("Updates available")] as const); ++ s.push({ ++ key: "updates", ++ type: t, ++ title: msg, ++ }); ++ } ++ // no status? it's good! ++ if (s.length === 0) { ++ s.push({ ++ type: "", ++ key: "system-ok", ++ title: _("System is up to date"), ++ details: { icon: "check" }, ++ }); ++ } ++ setStatus(s); ++ }, [waiting, snapshots, updates, updatesError, setStatus]); + +- const icon = (s: Status) => { +- const i = s.details?.icon || s.type; +- const c = `tukit-status-${i}`; +- if (i === "error") return ; +- if (i === "warning") return ; +- if (i === "check") return ; +- if (i === "pending") return ; +- return ; +- }; +- return ( +- +- {_("Status")} +- +- +- {status.map((s) => ( +- +- +- {s.title} +- +- +- ))} +- +- +- +- ); ++ const icon = (s: Status) => { ++ const i = s.details?.icon || s.type; ++ const c = `tukit-status-${i}`; ++ if (i === "error") return ; ++ if (i === "warning") return ; ++ if (i === "check") return ; ++ if (i === "pending") return ; ++ return ; ++ }; ++ return ( ++ ++ {_("Status")} ++ ++ ++ {status.map((s) => ( ++ ++ ++ {s.title} ++ ++ ++ ))} ++ ++ ++ ++ ); + }; + + export default StatusPanel; +diff --git a/src/components/UpdatesItem.tsx b/src/components/UpdatesItem.tsx +index 1aa159c..9e1b856 100644 +--- a/src/components/UpdatesItem.tsx ++++ b/src/components/UpdatesItem.tsx +@@ -19,35 +19,35 @@ + */ + + import cockpit from "cockpit"; +-import type React from "react"; +-import { useState } from "react"; ++// biome-ignore lint/style/useImportType: this is not used as a type ++import React, { useState } from "react"; + import { +- Button, +- DataList, +- DataListItem, +- DataListToggle, +- DataListItemRow, +- DataListItemCells, +- DataListCell, +- DataListAction, +- DataListContent, +- Dropdown, +- DropdownItem, +- Label, +- Modal, +- ModalVariant, +- Tooltip, +- DropdownList, +- type MenuToggleElement, +- MenuToggle, ++ Button, ++ DataList, ++ DataListItem, ++ DataListToggle, ++ DataListItemRow, ++ DataListItemCells, ++ DataListCell, ++ DataListAction, ++ DataListContent, ++ Dropdown, ++ DropdownItem, ++ Label, ++ Modal, ++ ModalVariant, ++ Tooltip, ++ DropdownList, ++ type MenuToggleElement, ++ MenuToggle, + } from "@patternfly/react-core"; + import { DropdownPosition } from "@patternfly/react-core/deprecated"; + import { +- BugIcon, +- ExclamationTriangleIcon, +- InfoCircleIcon, +- PackageIcon, +- EllipsisVIcon, ++ BugIcon, ++ ExclamationTriangleIcon, ++ InfoCircleIcon, ++ PackageIcon, ++ EllipsisVIcon, + } from "@patternfly/react-icons"; + import { transactionsProxy } from "../tukit"; + import { type Update, categoryProps, severityProps } from "../update"; +@@ -58,313 +58,313 @@ import "./UpdatesItem.scss"; + const _ = cockpit.gettext; + + const UpdateDetails = ({ u }: { u: Update }) => { +- const [dialogVisible, setDialogVisible] = useState(false); +- return ( +- <> +- +- {dialogVisible && ( +- setDialogVisible(false)} +- actions={[ +- , +- ]} +- > +- +- {Object.entries(u).map(([k, v]) => ( +- +- +- +- {k} +- , +- +- +- {v ? linkify(v) : ""} +- +- , +- ]} +- /> +- +- +- ))} +- +- +- )} +- +- ); ++ const [dialogVisible, setDialogVisible] = useState(false); ++ return ( ++ <> ++ ++ {dialogVisible && ( ++ setDialogVisible(false)} ++ actions={[ ++ , ++ ]} ++ > ++ ++ {Object.entries(u).map(([k, v]) => ( ++ ++ ++ ++ {k} ++ , ++ ++ ++ {v ? linkify(v) : ""} ++ ++ , ++ ]} ++ /> ++ ++ ++ ))} ++ ++ ++ )} ++ ++ ); + }; + + const UpdateItem = ({ u }: { u: Update }) => { +- const icon = () => { +- if (u.kind === "package") return ; +- if (u.kind === "patch") return ; +- return ; +- }; +- const updateCells = (u: Update) => { +- // package +- if (u.kind === "package") +- return [ +- +- +- {u.name} +- +- , +- +- +- {u.edition} +- +- , +- +- +- {u["edition-old"]} +- +- , +- ]; +- // patch +- return [ +- +- +- {u.name} +- +- , +- +- {u.summary} +- , +- +- +- +- , +- ]; +- }; +- return ( +- +- +- +- {icon()} +- , +- ...updateCells(u), +- ]} +- /> +- +- +- +- +- +- ); ++ const icon = () => { ++ if (u.kind === "package") return ; ++ if (u.kind === "patch") return ; ++ return ; ++ }; ++ const updateCells = (u: Update) => { ++ // package ++ if (u.kind === "package") ++ return [ ++ ++ ++ {u.name} ++ ++ , ++ ++ ++ {u.edition} ++ ++ , ++ ++ ++ {u["edition-old"]} ++ ++ , ++ ]; ++ // patch ++ return [ ++ ++ ++ {u.name} ++ ++ , ++ ++ {u.summary} ++ , ++ ++ ++ ++ , ++ ]; ++ }; ++ return ( ++ ++ ++ ++ {icon()} ++ , ++ ...updateCells(u), ++ ]} ++ /> ++ ++ ++ ++ ++ ++ ); + }; + + type UpdatesItemProps = { +- updates: Update[]; +- waiting: string | null | boolean; +- setWaiting: (waiting: string | null) => void; +- setError: (error: string | null) => void; +- setDirty: (dirty: boolean) => void; ++ updates: Update[]; ++ waiting: string | null | boolean; ++ setWaiting: (waiting: string | null) => void; ++ setError: (error: string | null) => void; ++ setDirty: (dirty: boolean) => void; + }; + + const UpdatesItem = ({ +- updates, +- setError, +- setDirty, +- setWaiting, +- waiting, ++ updates, ++ setError, ++ setDirty, ++ setWaiting, ++ waiting, + }: UpdatesItemProps) => { +- const [expanded, setExpanded] = useState(false); +- const [menuOpen, setMenuOpen] = useState(false); ++ const [expanded, setExpanded] = useState(false); ++ const [menuOpen, setMenuOpen] = useState(false); + +- const update = async (reboot: boolean) => { +- setWaiting(_("Installing updates...")); +- const proxy = transactionsProxy(); ++ const update = async (reboot: boolean) => { ++ setWaiting(_("Installing updates...")); ++ const proxy = transactionsProxy(); + +- function finishedHandler( +- ev: CustomEvent, +- snapID: string, +- exitcode: number, +- output: string, +- ) { +- console.log("command finished"); +- console.log(`exit ${exitcode}`); +- console.log(`output: ${output}`); +- setWaiting(null); +- setDirty(true); +- // run once (no {once: true} support in cockpit's event_mixin) +- proxy.removeEventListener("CommandExecuted", finishedHandler); +- } ++ function finishedHandler( ++ ev: CustomEvent, ++ snapID: string, ++ exitcode: number, ++ output: string, ++ ) { ++ console.log("command finished"); ++ console.log(`exit ${exitcode}`); ++ console.log(`output: ${output}`); ++ setWaiting(null); ++ setDirty(true); ++ // run once (no {once: true} support in cockpit's event_mixin) ++ proxy.removeEventListener("CommandExecuted", finishedHandler); ++ } + +- function errorHandler( +- ev: CustomEvent, +- snapID: string, +- exitcode: number, +- output: string, +- ) { +- console.log(`exit ${exitcode}`); +- console.log(`output: ${output}`); +- setError( +- cockpit.format( +- _("Error installing updates: command exited with code $0"), +- exitcode, +- ), +- ); +- setWaiting(null); +- // don't reload to not loose the error status +- // setDirty(true); +- // run once (no {once: true} support in cockpit's event_mixin) +- proxy.removeEventListener("Error", errorHandler); +- } ++ function errorHandler( ++ ev: CustomEvent, ++ snapID: string, ++ exitcode: number, ++ output: string, ++ ) { ++ console.log(`exit ${exitcode}`); ++ console.log(`output: ${output}`); ++ setError( ++ cockpit.format( ++ _("Error installing updates: command exited with code $0"), ++ exitcode, ++ ), ++ ); ++ setWaiting(null); ++ // don't reload to not loose the error status ++ // setDirty(true); ++ // run once (no {once: true} support in cockpit's event_mixin) ++ proxy.removeEventListener("Error", errorHandler); ++ } + +- proxy.wait(async () => { +- try { +- // You can find the "CommandExecuted" | "Error" events and `ExecuteAndReboot` function from here: +- // https://github.com/openSUSE/transactional-update/blob/master/dbus/org.opensuse.tukit.Transaction.xml +- proxy.addEventListener("CommandExecuted", finishedHandler); +- proxy.addEventListener("Error", errorHandler); +- const cmd = "zypper --non-interactive up"; +- const rebootMethod = reboot ? "systemd" : "none"; +- // base: default, active or number of base snapshot +- // reboot: auto, rebootmgr, systemd, kured, kexec, none +- const snapID = await proxy.ExecuteAndReboot( +- "default", +- cmd, +- rebootMethod, +- ); +- console.log(`new snapshot: ${snapID}`); +- } catch (_e) { +- const e = _e as Error; +- setWaiting(null); +- // this is "early" error returned directly from method +- setError(e.toString()); +- } +- }); +- }; ++ proxy.wait(async () => { ++ try { ++ // You can find the "CommandExecuted" | "Error" events and `ExecuteAndReboot` function from here: ++ // https://github.com/openSUSE/transactional-update/blob/master/dbus/org.opensuse.tukit.Transaction.xml ++ proxy.addEventListener("CommandExecuted", finishedHandler); ++ proxy.addEventListener("Error", errorHandler); ++ const cmd = "zypper --non-interactive up"; ++ const rebootMethod = reboot ? "systemd" : "none"; ++ // base: default, active or number of base snapshot ++ // reboot: auto, rebootmgr, systemd, kured, kexec, none ++ const snapID = await proxy.ExecuteAndReboot( ++ "default", ++ cmd, ++ rebootMethod, ++ ); ++ console.log(`new snapshot: ${snapID}`); ++ } catch (_e) { ++ const e = _e as Error; ++ setWaiting(null); ++ // this is "early" error returned directly from method ++ setError(e.toString()); ++ } ++ }); ++ }; + +- const updateAndReboot = () => { +- update(true); +- }; +- const updateOnly = () => { +- update(false); +- }; ++ const updateAndReboot = () => { ++ update(true); ++ }; ++ const updateOnly = () => { ++ update(false); ++ }; + +- return ( +- +- +- { +- setExpanded(!expanded); +- }} +- isExpanded={expanded} +- /> +- +- +- , +- +- +- {cockpit.format(_("Available updates ($0)"), updates.length)} +- +- , +- +- +- , +- ]} +- /> +- +- ) => ( +- { +- setMenuOpen(!menuOpen); +- }} +- isExpanded={menuOpen} +- > +- +- +- )} +- popperProps={{ +- position: DropdownPosition.right, +- }} +- > +- +- { +- updateOnly(); +- }} +- > +- {_("Update without Reboot")} +- +- +- +- +- +- +- +- {updates.map((u: Update) => ( +- +- ))} +- +- +- +- ); ++ return ( ++ ++ ++ { ++ setExpanded(!expanded); ++ }} ++ isExpanded={expanded} ++ /> ++ ++ ++ , ++ ++ ++ {cockpit.format(_("Available updates ($0)"), updates.length)} ++ ++ , ++ ++ ++ , ++ ]} ++ /> ++ ++ ) => ( ++ { ++ setMenuOpen(!menuOpen); ++ }} ++ isExpanded={menuOpen} ++ > ++ ++ ++ )} ++ popperProps={{ ++ position: DropdownPosition.right, ++ }} ++ > ++ ++ { ++ updateOnly(); ++ }} ++ > ++ {_("Update without Reboot")} ++ ++ ++ ++ ++ ++ ++ ++ {updates.map((u: Update) => ( ++ ++ ))} ++ ++ ++ ++ ); + }; + + export default UpdatesItem; +diff --git a/src/components/UpdatesPanel.tsx b/src/components/UpdatesPanel.tsx +index 79ed5f1..9654933 100644 +--- a/src/components/UpdatesPanel.tsx ++++ b/src/components/UpdatesPanel.tsx +@@ -22,22 +22,22 @@ import * as timeformat from "timeformat"; + import React, { useState, useEffect } from "react"; + import XMLParser, { type XMLElement } from "react-xml-parser"; + import { +- Button, +- Card, +- CardBody, +- CardTitle, +- Flex, +- FlexItem, +- Text, ++ Button, ++ Card, ++ CardBody, ++ CardTitle, ++ Flex, ++ FlexItem, ++ Text, + } from "@patternfly/react-core"; + import { +- kindPrio, +- categoryPrio, +- severityPrio, +- type KindValues, +- type CategoryValues, +- type SeverityValues, +- type Update, ++ kindPrio, ++ categoryPrio, ++ severityPrio, ++ type KindValues, ++ type CategoryValues, ++ type SeverityValues, ++ type Update, + } from "../update"; + import { decodeHTMLEntities } from "../utils"; + +@@ -45,148 +45,149 @@ const _ = cockpit.gettext; + + // simplify structure of XMLParser return values + const flattenXMLData = (data: XMLElement, prefix = ""): Update => { +- // TODO: safer parsing to make sure we actually have a valid Update object +- const values: any = {}; +- // NOTE: this will make {"": value} for root item +- if (data.value) values[prefix] = data.value; +- if (prefix !== "") prefix = `${prefix}_`; +- for (const key of Object.keys(data.attributes)) { +- values[`${prefix}${key}`] = data.attributes[key]; +- } +- for (const child of data.children) { +- Object.assign(values, flattenXMLData(child, `${prefix}${child.name}`)); +- } +- return values as Update; ++ // TODO: safer parsing to make sure we actually have a valid Update object ++ // eslint-disable-next-line @typescript-eslint/no-explicit-any ++ const values: any = {}; ++ // NOTE: this will make {"": value} for root item ++ if (data.value) values[prefix] = data.value; ++ if (prefix !== "") prefix = `${prefix}_`; ++ for (const key of Object.keys(data.attributes)) { ++ values[`${prefix}${key}`] = data.attributes[key]; ++ } ++ for (const child of data.children) { ++ Object.assign(values, flattenXMLData(child, `${prefix}${child.name}`)); ++ } ++ return values as Update; + }; + + type UpdatesPanelProps = { +- dirty: boolean; +- adminAccess: boolean; +- waiting: string | null; +- setUpdates: (updates: Update[]) => void; +- setError: (error: string | null) => void; +- setWaiting: (waiting: string | null) => void; +- setDirty: (dirty: boolean) => void; ++ dirty: boolean; ++ adminAccess: boolean; ++ waiting: string | null; ++ setUpdates: (updates: Update[]) => void; ++ setError: (error: string | null) => void; ++ setWaiting: (waiting: string | null) => void; ++ setDirty: (dirty: boolean) => void; + }; + + const UpdatesPanel = ({ +- adminAccess, +- setUpdates, +- setError, +- dirty, +- setDirty, +- waiting, +- setWaiting, ++ adminAccess, ++ setUpdates, ++ setError, ++ dirty, ++ setDirty, ++ waiting, ++ setWaiting, + }: UpdatesPanelProps) => { +- const [lastCheck, setLastCheck] = useState(); ++ const [lastCheck, setLastCheck] = useState(); + +- const getUpdates = async (arg: string) => { +- const cmd = ["zypper", "-q", "--xmlout", arg]; +- let out: string = await cockpit.spawn(cmd, { +- superuser: "require", +- err: "message", // TODO: check if it works as expected +- }); +- // convert line breaks in descriptions to not loose them during +- // xml parsing +- out = out.replaceAll(/[^<]+<\/description>/g, (d) => +- d +- // only keep newlines followed by space (indent) or bullet char +- .replaceAll(/\n([-* ])/g, (_, fc) => ` ${fc}`) +- // escape percentage sign to avoid URI decoding problems in XMLParser +- .replaceAll(/%/g, "%25"), +- ); +- const xml = new XMLParser().parseFromString(out); +- return xml +- .getElementsByTagName("update") +- .map((e) => flattenXMLData(e)) +- .map((u) => { +- return { +- ...u, +- description: decodeHTMLEntities(u.description), +- }; +- }); +- }; +- const updateKey = ( +- u: Update, +- ): [KindValues, CategoryValues, SeverityValues, string] => { +- return [ +- kindPrio[u.kind], +- categoryPrio[u.category], +- severityPrio[u.severity], +- u.name, +- ]; +- }; +- const updateCmp = (a: Update, b: Update) => { +- const ak = updateKey(a); +- const bk = updateKey(b); +- if (ak > bk) return 1; +- if (ak < bk) return -1; +- return 0; +- }; +- const checkUpdates = async () => { +- if (!dirty) { +- return; +- } +- setDirty(false); ++ const getUpdates = async (arg: string) => { ++ const cmd = ["zypper", "-q", "--xmlout", arg]; ++ let out: string = await cockpit.spawn(cmd, { ++ superuser: "require", ++ err: "message", // TODO: check if it works as expected ++ }); ++ // convert line breaks in descriptions to not loose them during ++ // xml parsing ++ out = out.replaceAll(/[^<]+<\/description>/g, (d) => ++ d ++ // only keep newlines followed by space (indent) or bullet char ++ .replaceAll(/\n([-* ])/g, (_, fc) => ` ${fc}`) ++ // escape percentage sign to avoid URI decoding problems in XMLParser ++ .replaceAll(/%/g, "%25"), ++ ); ++ const xml = new XMLParser().parseFromString(out); ++ return xml ++ .getElementsByTagName("update") ++ .map((e) => flattenXMLData(e)) ++ .map((u) => { ++ return { ++ ...u, ++ description: decodeHTMLEntities(u.description), ++ }; ++ }); ++ }; ++ const updateKey = ( ++ u: Update, ++ ): [KindValues, CategoryValues, SeverityValues, string] => { ++ return [ ++ kindPrio[u.kind], ++ categoryPrio[u.category], ++ severityPrio[u.severity], ++ u.name, ++ ]; ++ }; ++ const updateCmp = (a: Update, b: Update) => { ++ const ak = updateKey(a); ++ const bk = updateKey(b); ++ if (ak > bk) return 1; ++ if (ak < bk) return -1; ++ return 0; ++ }; ++ const checkUpdates = async () => { ++ if (!dirty) { ++ return; ++ } ++ setDirty(false); + +- setError(null); +- setWaiting(_("Checking for updates...")); +- try { +- const refcmd = ["zypper", "ref"]; +- await cockpit.spawn(refcmd, { superuser: true, err: "message" }); +- const updates = Array.prototype.concat( +- await getUpdates("list-updates"), +- await getUpdates("list-patches"), +- ); +- updates.sort(updateCmp); +- setUpdates(updates); +- setLastCheck(new Date()); +- } catch (_e) { +- const e: Error = _e as Error; +- setError( +- cockpit.format(_("Error checking for updates: $0"), e.toString()), +- ); +- } +- setWaiting(null); +- }; ++ setError(null); ++ setWaiting(_("Checking for updates...")); ++ try { ++ const refcmd = ["zypper", "ref"]; ++ await cockpit.spawn(refcmd, { superuser: true, err: "message" }); ++ const updates = Array.prototype.concat( ++ await getUpdates("list-updates"), ++ await getUpdates("list-patches"), ++ ); ++ updates.sort(updateCmp); ++ setUpdates(updates); ++ setLastCheck(new Date()); ++ } catch (_e) { ++ const e: Error = _e as Error; ++ setError( ++ cockpit.format(_("Error checking for updates: $0"), e.toString()), ++ ); ++ } ++ setWaiting(null); ++ }; + +- useEffect(() => { +- // auto-check updates on initial load +- checkUpdates(); +- // TODO: FIX! +- // eslint-disable-next-line react-hooks/exhaustive-deps +- }, [dirty]); +- return ( +- +- {_("Updates")} +- +- +- +- {lastCheck && ( +- +- {cockpit.format( +- _("Last Checked: $0"), +- timeformat.dateTime(lastCheck), +- )} +- +- )} +- +- +- +- +- +- +- +- ); ++ useEffect(() => { ++ // auto-check updates on initial load ++ checkUpdates(); ++ // TODO: FIX! ++ // eslint-disable-next-line react-hooks/exhaustive-deps ++ }, [dirty]); ++ return ( ++ ++ {_("Updates")} ++ ++ ++ ++ {lastCheck && ( ++ ++ {cockpit.format( ++ _("Last Checked: $0"), ++ timeformat.dateTime(lastCheck), ++ )} ++ ++ )} ++ ++ ++ ++ ++ ++ ++ ++ ); + }; + + export default UpdatesPanel; +diff --git a/src/index.ts b/src/index.ts +index f8955b1..af745ed 100644 +--- a/src/index.ts ++++ b/src/index.ts +@@ -15,7 +15,7 @@ + * along with Cockpit; If not, see . + */ + +-import "../pkg/lib/patternfly/patternfly-5-cockpit.scss"; ++import "patternfly/patternfly-5-cockpit.scss"; + + import React from "react"; + import { createRoot } from "react-dom/client"; +@@ -28,15 +28,15 @@ import Application from "./app"; + * out of the dist/index.js and since it will maintain the order of the imported CSS, + * the overrides will be correctly in the end of our stylesheet. + */ +-import "../pkg/lib/patternfly/patternfly-5-overrides.scss"; ++import "patternfly/patternfly-5-overrides.scss"; + import "./app.scss"; + /* + console.log(foo("foo")) + */ + document.addEventListener("DOMContentLoaded", () => { +- const container = document.getElementById("app"); +- if (container) { +- const root = createRoot(container); +- root.render(React.createElement(Application, {})); +- } ++ const container = document.getElementById("app"); ++ if (container) { ++ const root = createRoot(container); ++ root.render(React.createElement(Application, {})); ++ } + }); +diff --git a/src/manifest.json b/src/manifest.json +index 9857830..522ba2b 100644 +--- a/src/manifest.json ++++ b/src/manifest.json +@@ -1,18 +1,18 @@ + { +- "name": "updates", +- "requires": { +- "cockpit": "251" +- }, +- "tools": { +- "index": { +- "label": "Software Updates", +- "docs": [ +- { +- "label": "Transactional Update", +- "url": "https://documentation.suse.com/sle-micro/html/SLE-Micro-all/article-administration-slemicro.html#sec-transactional-udate" +- } +- ] +- } +- }, +- "preload": ["index"] ++ "name": "updates", ++ "requires": { ++ "cockpit": "251" ++ }, ++ "tools": { ++ "index": { ++ "label": "Software Updates", ++ "docs": [ ++ { ++ "label": "Transactional Update", ++ "url": "https://documentation.suse.com/sle-micro/html/SLE-Micro-all/article-administration-slemicro.html#sec-transactional-udate" ++ } ++ ] ++ } ++ }, ++ "preload": ["index"] + } +diff --git a/src/status.ts b/src/status.ts +index eb9486c..316daa9 100644 +--- a/src/status.ts ++++ b/src/status.ts +@@ -19,26 +19,26 @@ + */ + + const statusSeverity = { +- "": -1, +- info: 0, +- warning: 1, +- error: 2, ++ "": -1, ++ info: 0, ++ warning: 1, ++ error: 2, + } as const; + + type StatusSeverity = keyof typeof statusSeverity; + + export type Status = { +- key: "wait" | "updates" | "updates-error" | "new-snapshot" | "system-ok"; +- title: string | null | boolean; +- type: StatusSeverity; +- details?: { icon: string }; ++ key: "wait" | "updates" | "updates-error" | "new-snapshot" | "system-ok"; ++ title: string | null | boolean; ++ type: StatusSeverity; ++ details?: { icon: string }; + }; + + export const mostSevereStatus = (statuses: Status[]): Status | null => { +- if (statuses.length === 0) return null; +- let ret = statuses[0]; +- for (const status of statuses) { +- if (statusSeverity[status.type] > statusSeverity[ret.type]) ret = status; +- } +- return ret; ++ if (statuses.length === 0) return null; ++ let ret = statuses[0]; ++ for (const status of statuses) { ++ if (statusSeverity[status.type] > statusSeverity[ret.type]) ret = status; ++ } ++ return ret; + }; +diff --git a/src/tukit.ts b/src/tukit.ts +index 4aab7b2..c5a1e8f 100644 +--- a/src/tukit.ts ++++ b/src/tukit.ts +@@ -24,146 +24,146 @@ import { stringToBool } from "./utils"; + + let _dbusClient: DbusClient; + const dbusClient = (): DbusClient => { +- if (!_dbusClient) { +- _dbusClient = cockpit.dbus("org.opensuse.tukit", { +- bus: "system", +- superuser: "try", +- }); +- } +- return _dbusClient; ++ if (!_dbusClient) { ++ _dbusClient = cockpit.dbus("org.opensuse.tukit", { ++ bus: "system", ++ superuser: "try", ++ }); ++ } ++ return _dbusClient; + }; + + type SnapshotRecordKeys = T extends `${infer K},${infer Rest}` +- ? K | SnapshotRecordKeys +- : T extends `${infer K}` +- ? K +- : never; ++ ? K | SnapshotRecordKeys ++ : T extends `${infer K}` ++ ? K ++ : never; + + export type SnapshotRecord = { +- [k in SnapshotRecordKeys]: string; ++ [k in SnapshotRecordKeys]: string; + }; + + type SnapshotMethods = { +- List: (args: T) => SnapshotRecord[]; ++ List: (args: T) => SnapshotRecord[]; + }; + + let _snapshotProxy: Proxy; + const snapshotsProxy = () => { +- if (!_snapshotProxy) { +- _snapshotProxy = dbusClient().proxy( +- "org.opensuse.tukit.Snapshot", +- "/org/opensuse/tukit/Snapshot", +- ); +- } +- return _snapshotProxy; ++ if (!_snapshotProxy) { ++ _snapshotProxy = dbusClient().proxy( ++ "org.opensuse.tukit.Snapshot", ++ "/org/opensuse/tukit/Snapshot", ++ ); ++ } ++ return _snapshotProxy; + }; + + type SnapIn = { +- number: string; +- default: string; +- active: string; +- date: string; +- description: string; ++ number: string; ++ default: string; ++ active: string; ++ date: string; ++ description: string; + }; + + export type Snapshot = { +- number: number; +- default: boolean; +- active: boolean; +- date: Date; +- description: string; +- old?: boolean; ++ number: number; ++ default: boolean; ++ active: boolean; ++ date: Date; ++ description: string; ++ old?: boolean; + }; + + const createSnapshot = (snap: SnapIn): Snapshot => { +- if (Array.isArray(snap)) { +- const [number, dflt, active, date, description] = snap; +- return { +- number: Number.parseInt(number), +- default: stringToBool(dflt), +- active: stringToBool(active), +- date: new Date(`${date}Z`), // dates are UTC but have no marking +- description, +- }; +- } +- return { +- number: Number.parseInt(snap.number), +- default: stringToBool(snap.default), +- active: stringToBool(snap.active), +- date: new Date(`${snap.date}Z`), // dates are UTC but have no marking +- description: snap.description, +- }; ++ if (Array.isArray(snap)) { ++ const [number, dflt, active, date, description] = snap; ++ return { ++ number: Number.parseInt(number), ++ default: stringToBool(dflt), ++ active: stringToBool(active), ++ date: new Date(`${date}Z`), // dates are UTC but have no marking ++ description, ++ }; ++ } ++ return { ++ number: Number.parseInt(snap.number), ++ default: stringToBool(snap.default), ++ active: stringToBool(snap.active), ++ date: new Date(`${snap.date}Z`), // dates are UTC but have no marking ++ description: snap.description, ++ }; + }; + + type TransactionEvent = "TransactionOpened" | "CommandExecuted" | "Error"; + + type TransactionEventCallback = +- T extends "TransactionOpened" +- ? (event: CustomEvent, snapshot: string) => void +- : T extends "Error" +- ? ( +- event: CustomEvent, +- snapshot: string, +- returncode: number, +- output: string, +- ) => void +- : T extends "CommandExecuted" +- ? ( +- event: CustomEvent, +- snapshot: string, +- returncode: number, +- output: string, +- ) => void +- : never; ++ T extends "TransactionOpened" ++ ? (event: CustomEvent, snapshot: string) => void ++ : T extends "Error" ++ ? ( ++ event: CustomEvent, ++ snapshot: string, ++ returncode: number, ++ output: string, ++ ) => void ++ : T extends "CommandExecuted" ++ ? ( ++ event: CustomEvent, ++ snapshot: string, ++ returncode: number, ++ output: string, ++ ) => void ++ : never; + + // https://kubic.opensuse.org/documentation/man-pages/transactional-update.conf.5.html#REBOOT_METHOD + type TransactionReboot = +- | "auto" +- | "cured" +- | "rebootmgr" +- | "systemd" +- | "kexec" +- | "notify" +- | "none"; ++ | "auto" ++ | "cured" ++ | "rebootmgr" ++ | "systemd" ++ | "kexec" ++ | "notify" ++ | "none"; + type TransactionsMethods = { +- addEventListener: ( +- event: T, +- callback: TransactionEventCallback, +- ) => void; +- removeEventListener: ( +- event: T, +- callback: TransactionEventCallback, +- ) => void; +- ExecuteAndReboot: ( +- base: "default" | "base" | string, +- command: string, +- rebootmethod: TransactionReboot, +- ) => Promise; ++ addEventListener: ( ++ event: T, ++ callback: TransactionEventCallback, ++ ) => void; ++ removeEventListener: ( ++ event: T, ++ callback: TransactionEventCallback, ++ ) => void; ++ ExecuteAndReboot: ( ++ base: "default" | "base" | string, ++ command: string, ++ rebootmethod: TransactionReboot, ++ ) => Promise; + }; + + let _transactionsProxy: Proxy; + const transactionsProxy = () => { +- if (!_transactionsProxy) { +- _transactionsProxy = dbusClient().proxy( +- "org.opensuse.tukit.Transaction", +- "/org/opensuse/tukit/Transaction", +- ); +- } +- return _transactionsProxy; ++ if (!_transactionsProxy) { ++ _transactionsProxy = dbusClient().proxy( ++ "org.opensuse.tukit.Transaction", ++ "/org/opensuse/tukit/Transaction", ++ ); ++ } ++ return _transactionsProxy; + }; + + let _tukitdProxy: ServiceProxy; + const tukitdProxy = () => { +- if (!_tukitdProxy) { +- _tukitdProxy = serviceProxy("tukitd"); +- } +- return _tukitdProxy; ++ if (!_tukitdProxy) { ++ _tukitdProxy = serviceProxy("tukitd"); ++ } ++ return _tukitdProxy; + }; + + export { +- dbusClient, +- snapshotsProxy, +- createSnapshot, +- transactionsProxy, +- tukitdProxy, ++ dbusClient, ++ snapshotsProxy, ++ createSnapshot, ++ transactionsProxy, ++ tukitdProxy, + }; +diff --git a/src/update.tsx b/src/update.tsx +index 8ee8ebf..d43cc82 100644 +--- a/src/update.tsx ++++ b/src/update.tsx +@@ -20,9 +20,9 @@ + + import React from "react"; + import { +- ExclamationCircleIcon, +- ExclamationTriangleIcon, +- InfoCircleIcon, ++ ExclamationCircleIcon, ++ ExclamationTriangleIcon, ++ InfoCircleIcon, + } from "@patternfly/react-icons"; + + type ConstValues = T[keyof T]; +@@ -31,9 +31,9 @@ export const kindPrio = { patch: 0, package: 1 } as const; + export type KindKeys = keyof typeof kindPrio; + export type KindValues = ConstValues; + export const categoryPrio = { +- security: 0, +- recommended: 1, +- feature: 2, ++ security: 0, ++ recommended: 1, ++ feature: 2, + } as const; + export type CategoryKeys = keyof typeof categoryPrio; + export type CategoryValues = ConstValues; +@@ -42,14 +42,14 @@ export type SeverityKeys = keyof typeof severityPrio; + export type SeverityValues = ConstValues; + + export type Update = { +- kind: KindKeys; +- category: CategoryKeys; +- severity: SeverityKeys; +- name: string; +- description: string | null; +- edition: string; +- "edition-old": string; +- summary: string; ++ kind: KindKeys; ++ category: CategoryKeys; ++ severity: SeverityKeys; ++ name: string; ++ description: string | null; ++ edition: string; ++ "edition-old": string; ++ summary: string; + }; + + const prioLabelColor = { 0: "red", 1: "blue", 2: "auto" } as const; +@@ -61,23 +61,23 @@ type Undefined = T extends E ? undefined : T; + type FAKE_LABEL_TYPE2 = Undefined; + + const prioIcon = { +- 0: , +- 1: , +- 2: , ++ 0: , ++ 1: , ++ 2: , + } as const; + + // remove _disabled to enable props + const prioProps = (p: keyof typeof prioLabelColor) => { +- return { +- color: prioLabelColor[p] as unknown as FAKE_LABEL_TYPE2< +- typeof prioLabelColor +- >, +- icon_disabled: prioIcon[p], +- variant: "outline" as const, +- }; ++ return { ++ color: prioLabelColor[p] as unknown as FAKE_LABEL_TYPE2< ++ typeof prioLabelColor ++ >, ++ icon_disabled: prioIcon[p], ++ variant: "outline" as const, ++ }; + }; + + export const categoryProps = (u: { category: CategoryKeys }) => +- prioProps(categoryPrio[u.category]); ++ prioProps(categoryPrio[u.category]); + export const severityProps = (u: { severity: SeverityKeys }) => +- prioProps(severityPrio[u.severity]); ++ prioProps(severityPrio[u.severity]); +diff --git a/src/utils.tsx b/src/utils.tsx +index b879d03..d9eb242 100644 +--- a/src/utils.tsx ++++ b/src/utils.tsx +@@ -20,43 +20,43 @@ + import React, { type Key } from "react"; + + export const stringToBool = (s: string) => { +- return ["yes", "true", "1"].includes(s.toLowerCase()); ++ return ["yes", "true", "1"].includes(s.toLowerCase()); + }; + + // decode selected named html entities found in zypper's xml output and generic + // numeric ones. + // see: https://github.com/openSUSE/libzypp/blob/master/zypp-core/parser/xml/XmlEscape.cc + export const decodeHTMLEntities = (s: string | null): string | null => { +- if (!s) return null; ++ if (!s) return null; + +- const entities = { lt: "<", gt: ">", amp: "&", apos: "'", quot: '"' }; +- return s +- .replaceAll(/&#(\d+);/g, (_, num) => String.fromCharCode(num)) +- .replaceAll( +- /&([a-z]+);/g, +- (m, e: keyof typeof entities) => entities[e] || m, +- ); ++ const entities = { lt: "<", gt: ">", amp: "&", apos: "'", quot: '"' }; ++ return s ++ .replaceAll(/&#(\d+);/g, (_, num) => String.fromCharCode(num)) ++ .replaceAll( ++ /&([a-z]+);/g, ++ (m, e: keyof typeof entities) => entities[e] || m, ++ ); + }; + + const tagURLPrefix = { +- bsc: "https://bugzilla.suse.com/show_bug.cgi?id=", +- boo: "https://bugzilla.opensuse.org/show_bug.cgi?id=", ++ bsc: "https://bugzilla.suse.com/show_bug.cgi?id=", ++ boo: "https://bugzilla.opensuse.org/show_bug.cgi?id=", + }; + // convert tagged items found in text to clickable links + export const linkify = (s: string) => { +- const parts = s.split(/((?:bsc|boo)#\d+)/); +- return parts.map((p) => { +- const m = p.match(/(bsc|boo)#(\d+)/); +- if (m === null) return p; +- return ( +- +- {m[0]} +- +- ); +- }); ++ const parts = s.split(/((?:bsc|boo)#\d+)/); ++ return parts.map((p) => { ++ const m = p.match(/(bsc|boo)#(\d+)/); ++ if (m === null) return p; ++ return ( ++ ++ {m[0]} ++ ++ ); ++ }); + }; +diff --git a/tsconfig.json b/tsconfig.json +index eb645a3..59efb8d 100644 +--- a/tsconfig.json ++++ b/tsconfig.json +@@ -1,24 +1,24 @@ + { +- "compilerOptions": { +- "target": "es6", +- "module": "es6", +- "strict": true, +- "importHelpers": true, +- "moduleResolution": "node", +- "experimentalDecorators": true, +- "esModuleInterop": true, +- "allowSyntheticDefaultImports": true, +- "sourceMap": true, +- "skipLibCheck": true, +- "baseUrl": ".", +- "jsx": "react", +- "allowJs": true, +- "paths": { +- "@/*": ["src/*"], +- "*": ["types/*"] +- }, +- "lib": ["dom", "dom.iterable", "ES2021.String", "ES2021"] +- }, +- "include": ["src/*.ts", "src/*.tsx", "src/**/*.ts", "src/**/*.tsx"], +- "exclude": ["node_modules", "types"] ++ "compilerOptions": { ++ "target": "es6", ++ "module": "es6", ++ "strict": true, ++ "importHelpers": true, ++ "moduleResolution": "node", ++ "experimentalDecorators": true, ++ "esModuleInterop": true, ++ "allowSyntheticDefaultImports": true, ++ "sourceMap": true, ++ "skipLibCheck": true, ++ "baseUrl": ".", ++ "jsx": "react", ++ "allowJs": true, ++ "paths": { ++ "@/*": ["src/*"], ++ "*": ["types/*"] ++ }, ++ "lib": ["dom", "dom.iterable", "ES2021.String", "ES2021"] ++ }, ++ "include": ["src/*.ts", "src/*.tsx", "src/**/*.ts", "src/**/*.tsx"], ++ "exclude": ["node_modules", "types"] + } +diff --git a/types/cockpit.d.ts b/types/cockpit.d.ts +index c497028..1c8e98c 100644 +--- a/types/cockpit.d.ts ++++ b/types/cockpit.d.ts +@@ -1,112 +1,112 @@ + // https://github.com/cockpit-project/cockpit/pull/13214 + + declare module "cockpit" { +- type Func1 = (arg: T) => R; +- +- type DbusOptions = { +- bus: "session" | "user" | "system" | "none"; +- address?: string; +- superuser?: "require" | "try"; +- track?: boolean; +- }; +- +- type Fail = { +- message: string; +- problem?: string; +- }; +- +- type SpawnFail = Fail & { +- exit_status?: number; +- exit_signal?: number; +- }; +- +- type ErrorConfig = "message" | "out" | "ignore" | "pty"; +- +- /** +- * https://github.com/cockpit-project/cockpit/blob/main/src/bridge/cockpitrouter.c#L615-L621 +- * @deprecated boolean is tecnically valid but it's not well documented +- */ +- type SuperUserBool = boolean; +- type Superuser = "require" | "try" | SuperUserBool; +- type ProblemCodes = +- | "access-denied" +- | "authentication-failed" +- | "internal-error" +- | "no-cockpit" +- | "no-session" +- | "not-found" +- | "terminated" +- | "timeout" +- | "unknown-hostkey" +- | "no-forwarding"; +- +- type SpawnConfig = { +- err?: ErrorConfig; +- binary?: boolean; +- directory?: string; +- host?: string; +- environ?: string[]; +- pty?: boolean; +- batch?: boolean; +- latency?: number; +- superuser?: Superuser; +- }; +- +- type ProxyMethods any>> = { +- [k in keyof T]: T[k]; +- }; +- +- type Proxy any> = {}> = +- ProxyMethods & { +- client: DbusClient; +- path: string; +- iface: string; +- valid: boolean; +- data: Object; +- wait: (callback: () => void) => Promise; +- }; +- +- type DbusEvent = "close" | "owner"; +- +- type DBusEventCallback = T extends "close" +- ? (event: CustomEvent, options: { problem?: string }) => void +- : T extends "owner" +- ? (event: CustomEvent, owner?: string | null) => void +- : never; +- +- interface DbusClient { +- wait: (callback: () => void) => Promise; +- close(problem?: string): void; +- proxy any> = {}>( +- interface?: string, +- path?: string, +- ): Proxy; +- proxies(interface?: string[], path?: string[]): Proxy[]; +- addEventListener( +- event: T, +- callback: DBusEventCallback, +- ): void; +- options: DbusOptions; +- unique_name: string; +- } +- +- interface ClosableWithProblem { +- close(problem?: ProblemCodes): void; +- } +- +- interface SpawnPromise extends Promise, ClosableWithProblem { +- stream(callback: Func1): SpawnPromise; +- input(data?: string | Uint8Array, stream?: boolean): SpawnPromise; +- } +- +- function gettext(text: string): string; +- function gettext(context: string, text: string): string; +- function format(template: string, args: string | Object): string; +- function format(template: string, ...args: string[] | Object[]): string; +- function dbus(name: string, options?: DbusOptions): DbusClient; +- function jump(todo: string, host?: string | null): void; +- function script(execute: string, args: SpawnConfig): SpawnPromise; +- function spawn(args: string | string[], options?: SpawnConfig): SpawnPromise; +- +- const transport: { host?: string | null }; ++ type Func1 = (arg: T) => R; ++ ++ type DbusOptions = { ++ bus: "session" | "user" | "system" | "none"; ++ address?: string; ++ superuser?: "require" | "try"; ++ track?: boolean; ++ }; ++ ++ type Fail = { ++ message: string; ++ problem?: string; ++ }; ++ ++ type SpawnFail = Fail & { ++ exit_status?: number; ++ exit_signal?: number; ++ }; ++ ++ type ErrorConfig = "message" | "out" | "ignore" | "pty"; ++ ++ /** ++ * https://github.com/cockpit-project/cockpit/blob/main/src/bridge/cockpitrouter.c#L615-L621 ++ * @deprecated boolean is tecnically valid but it's not well documented ++ */ ++ type SuperUserBool = boolean; ++ type Superuser = "require" | "try" | SuperUserBool; ++ type ProblemCodes = ++ | "access-denied" ++ | "authentication-failed" ++ | "internal-error" ++ | "no-cockpit" ++ | "no-session" ++ | "not-found" ++ | "terminated" ++ | "timeout" ++ | "unknown-hostkey" ++ | "no-forwarding"; ++ ++ type SpawnConfig = { ++ err?: ErrorConfig; ++ binary?: boolean; ++ directory?: string; ++ host?: string; ++ environ?: string[]; ++ pty?: boolean; ++ batch?: boolean; ++ latency?: number; ++ superuser?: Superuser; ++ }; ++ ++ type ProxyMethods any>> = { ++ [k in keyof T]: T[k]; ++ }; ++ ++ type Proxy any> = {}> = ++ ProxyMethods & { ++ client: DbusClient; ++ path: string; ++ iface: string; ++ valid: boolean; ++ data: Object; ++ wait: (callback: () => void) => Promise; ++ }; ++ ++ type DbusEvent = "close" | "owner"; ++ ++ type DBusEventCallback = T extends "close" ++ ? (event: CustomEvent, options: { problem?: string }) => void ++ : T extends "owner" ++ ? (event: CustomEvent, owner?: string | null) => void ++ : never; ++ ++ interface DbusClient { ++ wait: (callback: () => void) => Promise; ++ close(problem?: string): void; ++ proxy any> = {}>( ++ interface?: string, ++ path?: string, ++ ): Proxy; ++ proxies(interface?: string[], path?: string[]): Proxy[]; ++ addEventListener( ++ event: T, ++ callback: DBusEventCallback, ++ ): void; ++ options: DbusOptions; ++ unique_name: string; ++ } ++ ++ interface ClosableWithProblem { ++ close(problem?: ProblemCodes): void; ++ } ++ ++ interface SpawnPromise extends Promise, ClosableWithProblem { ++ stream(callback: Func1): SpawnPromise; ++ input(data?: string | Uint8Array, stream?: boolean): SpawnPromise; ++ } ++ ++ function gettext(text: string): string; ++ function gettext(context: string, text: string): string; ++ function format(template: string, args: string | Object): string; ++ function format(template: string, ...args: string[] | Object[]): string; ++ function dbus(name: string, options?: DbusOptions): DbusClient; ++ function jump(todo: string, host?: string | null): void; ++ function script(execute: string, args: SpawnConfig): SpawnPromise; ++ function spawn(args: string | string[], options?: SpawnConfig): SpawnPromise; ++ ++ const transport: { host?: string | null }; + } +diff --git a/types/hooks.d.ts b/types/hooks.d.ts +index a656971..b38d4f7 100644 +--- a/types/hooks.d.ts ++++ b/types/hooks.d.ts +@@ -1,5 +1,5 @@ + import type { Superuser } from "superuser"; + + declare module "hooks" { +- function useEvent(obj: Superuser, event: "changed"): void; ++ function useEvent(obj: Superuser, event: "changed"): void; + } +diff --git a/types/notifications.d.ts b/types/notifications.d.ts +index fe2b558..8bc69a8 100644 +--- a/types/notifications.d.ts ++++ b/types/notifications.d.ts +@@ -2,11 +2,11 @@ + import type { Status } from "@/status"; + + declare module "notifications" { +- class PageStatus { +- constructor(); +- get(page: string, host: string): string | null; +- set_own(status: Status | null): void; +- } ++ class PageStatus { ++ constructor(); ++ get(page: string, host: string): string | null; ++ set_own(status: Status | null): void; ++ } + +- const page_status: PageStatus; ++ const page_status: PageStatus; + } +diff --git a/types/react-xml-parser.d.ts b/types/react-xml-parser.d.ts +index 8fd59ab..b502cc3 100644 +--- a/types/react-xml-parser.d.ts ++++ b/types/react-xml-parser.d.ts +@@ -1,19 +1,19 @@ + // Copied and modified from https://github.com/matanshiloah/xml-parser/pull/42 + + declare module "react-xml-parser" { +- interface XMLElement { +- name: string; +- attributes: { +- [name: string]: string; +- }; +- value: string; +- children: XMLElement[]; +- } ++ interface XMLElement { ++ name: string; ++ attributes: { ++ [name: string]: string; ++ }; ++ value: string; ++ children: XMLElement[]; ++ } + +- export default class XMLParser { +- constructor(); +- public parseFromString(string: string): XMLParser; +- public toString(xml: XMLElement): string; +- public getElementsByTagName(tagName: string): XMLElement[]; +- } ++ export default class XMLParser { ++ constructor(); ++ public parseFromString(string: string): XMLParser; ++ public toString(xml: XMLElement): string; ++ public getElementsByTagName(tagName: string): XMLElement[]; ++ } + } +diff --git a/types/service.d.ts b/types/service.d.ts +index f3a2975..88b452e 100644 +--- a/types/service.d.ts ++++ b/types/service.d.ts +@@ -1,18 +1,18 @@ + declare module "service" { +- type ServiceProxy = { +- exists: boolean | null; +- state: +- | "starting" +- | "running" +- | "stopping" +- | "stopped" +- | "failed" +- | null +- | undefined; +- enabled: boolean | null | undefined; +- wait: (callback: () => void) => Promise; ++ type ServiceProxy = { ++ exists: boolean | null; ++ state: ++ | "starting" ++ | "running" ++ | "stopping" ++ | "stopped" ++ | "failed" ++ | null ++ | undefined; ++ enabled: boolean | null | undefined; ++ wait: (callback: () => void) => Promise; + +- /* ++ /* + start: start, + stop: stop, + restart: restart, +@@ -22,7 +22,7 @@ declare module "service" { + disable: disable, + + getRunJournal: getRunJournal, */ +- }; ++ }; + +- function proxy(name: string, kind?: string): ServiceProxy; ++ function proxy(name: string, kind?: string): ServiceProxy; + } +diff --git a/types/superuser.d.ts b/types/superuser.d.ts +index ff13f07..a31dfa6 100644 +--- a/types/superuser.d.ts ++++ b/types/superuser.d.ts +@@ -1,8 +1,8 @@ + declare module "superuser" { +- type Superuser = { +- allowed: boolean | null; +- reload_page_on_change(): void; +- }; ++ type Superuser = { ++ allowed: boolean | null; ++ reload_page_on_change(): void; ++ }; + +- const superuser: Superuser; ++ const superuser: Superuser; + } +diff --git a/types/timeformat.d.ts b/types/timeformat.d.ts +index 9f0a6d4..b0fb400 100644 +--- a/types/timeformat.d.ts ++++ b/types/timeformat.d.ts +@@ -1,14 +1,14 @@ + declare module "timeformat" { +- function dateFormatLang(): string; +- function formatter(options?: Intl.DateTimeFormatOptions | undefined): string; +- function time(t: Date | number): string; +- function timeSeconds(t: Date | number): string; +- function date(t: Date | number): string; +- function dateShort(t: Date | number): string; +- function dateTime(t: Date | number): string; +- function dateTimeSeconds(t: Date | number): string; +- function dateTimeNoYear(t: Date | number): string; +- function weekdayDate(t: Date | number): string; +- function dateShortFormat(): string; +- function distanceToNow(t: Date | number, addSuffix?: boolean): string; ++ function dateFormatLang(): string; ++ function formatter(options?: Intl.DateTimeFormatOptions | undefined): string; ++ function time(t: Date | number): string; ++ function timeSeconds(t: Date | number): string; ++ function date(t: Date | number): string; ++ function dateShort(t: Date | number): string; ++ function dateTime(t: Date | number): string; ++ function dateTimeSeconds(t: Date | number): string; ++ function dateTimeNoYear(t: Date | number): string; ++ function weekdayDate(t: Date | number): string; ++ function dateShortFormat(): string; ++ function distanceToNow(t: Date | number, addSuffix?: boolean): string; + } +diff --git a/webpack.config.js b/webpack.config.js +deleted file mode 100644 +index 8831788..0000000 +--- a/webpack.config.js ++++ /dev/null +@@ -1,154 +0,0 @@ +-const fs = require("node:fs"); +-const path = require("node:path"); +- +-const copy = require("copy-webpack-plugin"); +-const extract = require("mini-css-extract-plugin"); +-const TerserJSPlugin = require("terser-webpack-plugin"); +-const CssMinimizerPlugin = require("css-minimizer-webpack-plugin"); +-const CompressionPlugin = require("compression-webpack-plugin"); +-const CockpitPoPlugin = require("./src/lib/cockpit-po-plugin"); +-const CockpitRsyncPlugin = require("./src/lib/cockpit-rsync-plugin"); +- +-/* A standard nodejs and webpack pattern */ +-const production = process.env.NODE_ENV === "production"; +- +-// Obtain package name from package.json +-const packageJson = JSON.parse(fs.readFileSync("package.json")); +- +-// Non-JS files which are copied verbatim to dist/ +-const copy_files = ["./src/index.html", "./src/manifest.json"]; +- +-const plugins = [ +- new copy({ patterns: copy_files }), +- new extract({ filename: "[name].css" }), +- +- new CockpitPoPlugin(), +- new CockpitRsyncPlugin({ dest: packageJson.name }), +-]; +- +-/* Only minimize when in production mode */ +-if (production) { +- plugins.unshift( +- new CompressionPlugin({ +- test: /\.(js|html|css)$/, +- deleteOriginalAssets: true, +- }), +- ); +-} +- +-module.exports = { +- mode: production ? "production" : "development", +- resolve: { +- // extensions:['.ts','.tsx'], +- extensions: ["*", ".js", ".jsx", ".tsx", ".ts"], +- modules: ["node_modules", path.resolve(__dirname, "src/lib")], +- alias: { "font-awesome": "font-awesome-sass/assets/stylesheets" }, +- }, +- resolveLoader: { +- modules: ["node_modules", path.resolve(__dirname, "src/lib")], +- }, +- watchOptions: { +- ignored: /node_modules/, +- }, +- entry: { +- index: "./src/index.ts", +- }, +- // cockpit.js gets included via