From 695a61ad275b9dc39267bdb7aa5bda585a9f5d42 Mon Sep 17 00:00:00 2001 From: Ian Dunn Date: Wed, 8 Feb 2023 09:09:48 -0800 Subject: [PATCH 001/130] Tests: Delete redundant test, add missing one. New tests were added for `rest_delete_totp` in #504 which cover the same functionality. `generate_qr_code_url` was also refactored there, but a test wasn't included. --- .gitignore | 1 + phpunit.xml.dist | 1 + ...class-two-factor-backup-codes-rest-api.php | 2 +- tests/providers/class-two-factor-totp.php | 41 ++++++------------- 4 files changed, 16 insertions(+), 29 deletions(-) diff --git a/.gitignore b/.gitignore index 7da52a0e..9d288c60 100644 --- a/.gitignore +++ b/.gitignore @@ -3,5 +3,6 @@ /npm-debug.log /vendor/ /dist/ +/tests/.phpunit.result.cache /tests/logs/ /wordpress/ diff --git a/phpunit.xml.dist b/phpunit.xml.dist index 6ef81938..35ce0ed7 100644 --- a/phpunit.xml.dist +++ b/phpunit.xml.dist @@ -5,6 +5,7 @@ convertErrorsToExceptions="true" convertNoticesToExceptions="true" convertWarningsToExceptions="true" + cacheResultFile="./tests/.phpunit.result.cache" > diff --git a/tests/providers/class-two-factor-backup-codes-rest-api.php b/tests/providers/class-two-factor-backup-codes-rest-api.php index 8adf074e..6f1aa1b7 100644 --- a/tests/providers/class-two-factor-backup-codes-rest-api.php +++ b/tests/providers/class-two-factor-backup-codes-rest-api.php @@ -169,7 +169,7 @@ public function test_cannot_generate_code_for_different_user() { /** * Verify that an admin can create Backup codes for another user. * - * @covers Two_Factor_Backup_Codes::ajax_generate_json + * @covers Two_Factor_Backup_Codes::rest_generate_codes */ public function test_generate_codes_for_other_users() { wp_set_current_user( self::$admin_id ); diff --git a/tests/providers/class-two-factor-totp.php b/tests/providers/class-two-factor-totp.php index 7b11611d..c50f14ae 100644 --- a/tests/providers/class-two-factor-totp.php +++ b/tests/providers/class-two-factor-totp.php @@ -85,6 +85,19 @@ public function test_user_two_factor_options_generates_key() { $this->assertStringContainsString( __( 'Authentication Code:', 'two-factor' ), $content ); } + /** + * Verify QR code URL generation. + * + * @covers Two_Factor_Totp::generate_qr_code_url + */ + public function test_generate_qr_code_url() { + $user = new WP_User( self::factory()->user->create() ); + $expected = 'otpauth://totp/Test%20Blog%3A'. rawurlencode( $user->user_login ) .'?secret=my%20secret%20key&issuer=Test%20Blog'; + $actual = $this->provider->generate_qr_code_url( $user, 'my secret key' ); + + $this->assertSame( $expected, $actual ); + } + /** * Verify base32 encoding. * @@ -195,32 +208,4 @@ public function test_is_valid_key() { $this->assertFalse( $this->provider->is_valid_key( 'abc233' ), 'Lowercase chars are invalid' ); $this->assertFalse( $this->provider->is_valid_key( 'has a space' ), 'Spaces not allowed' ); } - - /** - * Verify secret deletion. - * - * @covers Two_Factor_Totp::user_two_factor_options_update - */ - public function test_user_can_delete_secret() { - $user = new WP_User( self::factory()->user->create() ); - $key = $this->provider->generate_key(); - - // Configure secret for the user. - $this->provider->set_user_totp_key( $user->ID, $key ); - - $this->assertEquals( - $key, - $this->provider->get_user_totp_key( $user->ID ), - 'Secret was stored and can be fetched' - ); - - $this->provider->delete_user_totp_key( $user->ID ); - - $this->assertEquals( - '', - $this->provider->get_user_totp_key( $user->ID ), - 'Secret has been deleted' - ); - } - } From 0d611353ca753b297fe65b8245a03d6ced9aeaf3 Mon Sep 17 00:00:00 2001 From: Ian Dunn Date: Wed, 8 Feb 2023 09:26:35 -0800 Subject: [PATCH 002/130] Tests: Ignore view/controller code with minimal coverage value --- phpunit.xml.dist | 5 +++++ providers/class-two-factor-backup-codes.php | 6 ++++++ providers/class-two-factor-totp.php | 4 ++++ 3 files changed, 15 insertions(+) diff --git a/phpunit.xml.dist b/phpunit.xml.dist index 35ce0ed7..bf0cc436 100644 --- a/phpunit.xml.dist +++ b/phpunit.xml.dist @@ -17,11 +17,16 @@ + includes providers class-two-factor-compat.php class-two-factor-core.php two-factor.php + + includes/function.login-footer.php + includes/function.login-header.php + diff --git a/providers/class-two-factor-backup-codes.php b/providers/class-two-factor-backup-codes.php index 7a8da399..79e05ad0 100644 --- a/providers/class-two-factor-backup-codes.php +++ b/providers/class-two-factor-backup-codes.php @@ -46,6 +46,8 @@ public static function get_instance() { * Class constructor. * * @since 0.1-dev + * + * @codeCoverageIgnore */ protected function __construct() { add_action( 'rest_api_init', array( $this, 'register_rest_routes' ) ); @@ -57,6 +59,8 @@ protected function __construct() { /** * Register the rest-api endpoints required for this provider. + * + * @codeCoverageIgnore */ public function register_rest_routes() { register_rest_route( @@ -95,6 +99,8 @@ public function register_rest_routes() { * Displays an admin notice when backup codes have run out. * * @since 0.1-dev + * + * @codeCoverageIgnore */ public function admin_notices() { $user = wp_get_current_user(); diff --git a/providers/class-two-factor-totp.php b/providers/class-two-factor-totp.php index f1a2a86b..e791da6f 100644 --- a/providers/class-two-factor-totp.php +++ b/providers/class-two-factor-totp.php @@ -59,6 +59,8 @@ protected function __construct() { /** * Register the rest-api endpoints required for this provider. + * + * @codeCoverageIgnore */ public function register_rest_routes() { register_rest_route( @@ -119,6 +121,8 @@ public function get_label() { /** * Enqueue scripts + * + * @codeCoverageIgnore */ public function enqueue_assets( $hook_suffix ) { $environment_prefix = file_exists( TWO_FACTOR_DIR . '/dist' ) ? '/dist' : ''; From 88634af04c14881bdfe8d8c24c130c1191822660 Mon Sep 17 00:00:00 2001 From: Ian Dunn Date: Thu, 9 Feb 2023 07:16:46 -0800 Subject: [PATCH 003/130] Backup Codes: Always generate 10 codes via REST. The internal function accepts a param for flexibility, but currently there's no use case for letting the user choose how many they want. --- class-two-factor-core.php | 2 +- providers/class-two-factor-backup-codes.php | 13 +--- ...class-two-factor-backup-codes-rest-api.php | 65 +------------------ 3 files changed, 6 insertions(+), 74 deletions(-) diff --git a/class-two-factor-core.php b/class-two-factor-core.php index ee15420a..8faa53eb 100644 --- a/class-two-factor-core.php +++ b/class-two-factor-core.php @@ -512,7 +512,7 @@ public static function filter_authenticate_block_cookies( $user ) { return $user; } - + /** * If the current user can login via API requests such as XML-RPC and REST. * diff --git a/providers/class-two-factor-backup-codes.php b/providers/class-two-factor-backup-codes.php index 79e05ad0..d4df12ef 100644 --- a/providers/class-two-factor-backup-codes.php +++ b/providers/class-two-factor-backup-codes.php @@ -77,14 +77,6 @@ public function register_rest_routes() { 'required' => true, 'type' => 'number', ), - 'number' => array( - 'type' => 'number', - 'default' => self::NUMBER_OF_CODES, - ), - 'append' => array( - 'type' => 'boolean', - 'default' => false, - ), 'enable_provider' => array( 'required' => false, 'type' => 'boolean', @@ -269,9 +261,10 @@ public function rest_generate_codes( $request ) { $user_id = $request['user_id']; $user = get_user_by( 'id', $user_id ); + // Hardcode these, the user shouldn't be able to choose them. $args = array( - 'number' => $request['number'], - 'method' => wp_validate_boolean( $request['append'] ) ? 'append' : 'replace', + 'number' => self::NUMBER_OF_CODES, + 'method' => 'replace', ); // Setup the return data. diff --git a/tests/providers/class-two-factor-backup-codes-rest-api.php b/tests/providers/class-two-factor-backup-codes-rest-api.php index 6f1aa1b7..a9db798e 100644 --- a/tests/providers/class-two-factor-backup-codes-rest-api.php +++ b/tests/providers/class-two-factor-backup-codes-rest-api.php @@ -56,7 +56,7 @@ public static function wpTearDownAfterClass() { } /** - * Verify that the downloaded file contains the requested number of codes. + * Verify that the downloaded file contains the default number of codes. * * @covers Two_Factor_Backup_Codes::rest_generate_codes */ @@ -67,7 +67,6 @@ public function test_generate_code_and_validate_in_download_file() { $request->set_body_params( array( 'user_id' => self::$admin_id, - 'number' => 5, ) ); @@ -77,71 +76,11 @@ public function test_generate_code_and_validate_in_download_file() { $this->assertEquals( 200, $response->get_status() ); $this->assertNotEmpty( $data['download_link'] ); $this->assertNotEmpty( $data['codes'] ); - $this->assertCount( 5, $data['codes'] ); + $this->assertCount( 10, $data['codes'] ); $this->assertTrue( self::$provider->validate_code( wp_get_current_user(), $data['codes'][0] ) ); $this->assertStringContainsString( $data['codes'][0], $data['download_link'] ); } - /** - * Verify that overwriting, and appending works. - * - * @covers Two_Factor_Backup_Codes::rest_generate_codes - */ - public function test_generate_code_append() { - wp_set_current_user( self::$admin_id ); - - $request = new WP_REST_Request( 'POST', '/' . Two_Factor_Core::REST_NAMESPACE . '/generate-backup-codes' ); - $request->set_body_params( - array( - 'user_id' => self::$admin_id, - 'number' => 5, - ) - ); - - $response = rest_do_request( $request ); - $discarded = $response->get_data(); - - $this->assertEquals( 200, $response->get_status() ); - $this->assertEquals( 5, $discarded['remaining'] ); - - $request = new WP_REST_Request( 'POST', '/' . Two_Factor_Core::REST_NAMESPACE . '/generate-backup-codes' ); - $request->set_body_params( - array( - 'user_id' => self::$admin_id, - 'number' => 5, - ) - ); - - $response = rest_do_request( $request ); - $first = $response->get_data(); - - $this->assertEquals( 200, $response->get_status() ); - $this->assertNotEmpty( $first['codes'] ); - $this->assertEquals( 5, $first['remaining'] ); - - $request = new WP_REST_Request( 'POST', '/' . Two_Factor_Core::REST_NAMESPACE . '/generate-backup-codes' ); - $request->set_body_params( - array( - 'user_id' => self::$admin_id, - 'number' => 1, - 'append' => true, - ) - ); - - $response = rest_do_request( $request ); - $second = $response->get_data(); - - $this->assertEquals( 200, $response->get_status() ); - $this->assertNotEmpty( $second['codes'] ); - $this->assertEquals( 6, $second['remaining'] ); - - $this->assertEquals( $second['remaining'], self::$provider->codes_remaining_for_user( wp_get_current_user() ) ); - - $this->assertFalse( self::$provider->validate_code( wp_get_current_user(), $discarded['codes'][0] ) ); - $this->assertTrue( self::$provider->validate_code( wp_get_current_user(), $first['codes'][0] ) ); - $this->assertTrue( self::$provider->validate_code( wp_get_current_user(), $second['codes'][0] ) ); - } - /** * Verify that a user without edit_user capabilities cannot generate codes for another. * From 5d91ba63e793422c064dc3fbd6ab59db698a5e43 Mon Sep 17 00:00:00 2001 From: Ian Dunn Date: Fri, 10 Feb 2023 15:03:49 -0800 Subject: [PATCH 004/130] Tests: Add provider `@group` attributes for convenience. --- tests/providers/class-two-factor-backup-codes-rest-api.php | 1 + tests/providers/class-two-factor-backup-codes.php | 1 + tests/providers/class-two-factor-dummy.php | 1 + tests/providers/class-two-factor-email.php | 1 + tests/providers/class-two-factor-fido-u2f.php | 1 + tests/providers/class-two-factor-totp-rest-api.php | 1 + tests/providers/class-two-factor-totp.php | 1 + 7 files changed, 7 insertions(+) diff --git a/tests/providers/class-two-factor-backup-codes-rest-api.php b/tests/providers/class-two-factor-backup-codes-rest-api.php index a9db798e..368f3230 100644 --- a/tests/providers/class-two-factor-backup-codes-rest-api.php +++ b/tests/providers/class-two-factor-backup-codes-rest-api.php @@ -10,6 +10,7 @@ * * @package Two_Factor * @group providers + * @group backup-codes */ class Tests_Two_Factor_Backup_Codes_REST_API extends WP_Test_REST_TestCase { diff --git a/tests/providers/class-two-factor-backup-codes.php b/tests/providers/class-two-factor-backup-codes.php index a198f6f0..84033bbd 100644 --- a/tests/providers/class-two-factor-backup-codes.php +++ b/tests/providers/class-two-factor-backup-codes.php @@ -10,6 +10,7 @@ * * @package Two_Factor * @group providers + * @group backup-codes */ class Tests_Two_Factor_Backup_Codes extends WP_UnitTestCase { diff --git a/tests/providers/class-two-factor-dummy.php b/tests/providers/class-two-factor-dummy.php index f7589b87..12765804 100644 --- a/tests/providers/class-two-factor-dummy.php +++ b/tests/providers/class-two-factor-dummy.php @@ -10,6 +10,7 @@ * * @package Two_Factor * @group providers + * @group dummy */ class Tests_Two_Factor_Dummy extends WP_UnitTestCase { diff --git a/tests/providers/class-two-factor-email.php b/tests/providers/class-two-factor-email.php index 2f52a489..ef138116 100644 --- a/tests/providers/class-two-factor-email.php +++ b/tests/providers/class-two-factor-email.php @@ -10,6 +10,7 @@ * * @package Two_Factor * @group providers + * @group email */ class Tests_Two_Factor_Email extends WP_UnitTestCase { diff --git a/tests/providers/class-two-factor-fido-u2f.php b/tests/providers/class-two-factor-fido-u2f.php index e364f04e..1c529c15 100644 --- a/tests/providers/class-two-factor-fido-u2f.php +++ b/tests/providers/class-two-factor-fido-u2f.php @@ -10,6 +10,7 @@ * * @package Two_Factor * @group providers + * @group u2f */ class Tests_Two_Factor_FIDO_U2F extends WP_UnitTestCase { diff --git a/tests/providers/class-two-factor-totp-rest-api.php b/tests/providers/class-two-factor-totp-rest-api.php index 67e3cec0..0dfc38bf 100644 --- a/tests/providers/class-two-factor-totp-rest-api.php +++ b/tests/providers/class-two-factor-totp-rest-api.php @@ -10,6 +10,7 @@ * * @package Two_Factor * @group providers + * @group totp */ class Tests_Two_Factor_Totp_REST_API extends WP_Test_REST_TestCase { diff --git a/tests/providers/class-two-factor-totp.php b/tests/providers/class-two-factor-totp.php index c50f14ae..a363e4ac 100644 --- a/tests/providers/class-two-factor-totp.php +++ b/tests/providers/class-two-factor-totp.php @@ -10,6 +10,7 @@ * * @package Two_Factor * @group providers + * @group totp */ class Tests_Two_Factor_Totp extends WP_UnitTestCase { From 4c9607bdbe2c37a83ca165c3f26cb1e6bf685679 Mon Sep 17 00:00:00 2001 From: Dion Hulse Date: Mon, 13 Feb 2023 14:18:56 +1000 Subject: [PATCH 005/130] Add rate limiting to two factor attempts. (#510) * Add a rate limit between two-factor login attempts. * Add a warning upon login that the user previously failed to complete the two-factor prompt. Co-authored-by: Ian Dunn --- class-two-factor-core.php | 142 ++++++++++++++++++++++++++++++++ tests/class-two-factor-core.php | 90 ++++++++++++++++++++ 2 files changed, 232 insertions(+) diff --git a/class-two-factor-core.php b/class-two-factor-core.php index 8faa53eb..20877a07 100644 --- a/class-two-factor-core.php +++ b/class-two-factor-core.php @@ -35,6 +35,20 @@ class Two_Factor_Core { */ const USER_META_NONCE_KEY = '_two_factor_nonce'; + /** + * The user meta key to store the last failed timestamp. + * + * @type string + */ + const USER_RATE_LIMIT_KEY = '_two_factor_last_login_failure'; + + /** + * The user meta key to store the number of failed login attempts. + * + * @var string + */ + const USER_FAILED_LOGIN_ATTEMPTS_KEY = '_two_factor_failed_login_attempts'; + /** * URL query paramater used for our custom actions. * @@ -600,6 +614,31 @@ public static function backup_2fa() { exit; } + /** + * Displays a message informing the user that their account has had failed login attempts. + * + * @param WP_User $user WP_User object of the logged-in user. + */ + public static function maybe_show_last_login_failure_notice( $user ) { + $last_failed_two_factor_login = (int) get_user_meta( $user->ID, self::USER_RATE_LIMIT_KEY, true ); + $failed_login_count = (int) get_user_meta( $user->ID, self::USER_FAILED_LOGIN_ATTEMPTS_KEY, true ); + + if ( $last_failed_two_factor_login ) { + echo '
'; + printf( + _n( + 'WARNING: Your account has attempted to login without providing a valid two factor token. The last failed login occured %2$s ago. If this wasn\'t you, you should reset your password.', + 'WARNING: Your account has attempted to login %1$s times without providing a valid two factor token. The last failed login occured %2$s ago. If this wasn\'t you, you should reset your password.', + $failed_login_count, + 'two-factor' + ), + number_format_i18n( $failed_login_count ), + human_time_diff( $last_failed_two_factor_login, time() ) + ); + echo '
'; + } + } + /** * Generates the html form for the second step of the authentication process. * @@ -635,6 +674,8 @@ public static function login_html( $user, $login_nonce, $redirect_to, $error_msg if ( ! empty( $error_msg ) ) { echo '
' . esc_html( $error_msg ) . '
'; + } else { + self::maybe_show_last_login_failure_notice( $user ); } ?> @@ -864,6 +905,75 @@ public static function verify_login_nonce( $user_id, $nonce ) { return false; } + /** + * Determine the minimum wait between two factor attempts for a user. + * + * This implements an increasing backoff, requiring an attacker to wait longer + * each time to attempt to brute-force the login. + * + * @param WP_User $user The user being operated upon. + * @return int Time delay in seconds between login attempts. + */ + public static function get_user_time_delay( $user ) { + /** + * Filter the minimum time duration between two factor attempts. + * + * @param int $rate_limit The number of seconds between two factor attempts. + */ + $rate_limit = apply_filters( 'two_factor_rate_limit', 1 ); + + $user_failed_logins = get_user_meta( $user->ID, self::USER_FAILED_LOGIN_ATTEMPTS_KEY, true ); + if ( $user_failed_logins ) { + $rate_limit = pow( 2, $user_failed_logins ) * $rate_limit; + + /** + * Filter the maximum time duration a user may be locked out from retrying two factor authentications. + * + * @param int $max_rate_limit The maximum number of seconds a user might be locked out for. Default 15 minutes. + */ + $max_rate_limit = apply_filters( 'two_factor_max_rate_limit', 15 * MINUTE_IN_SECONDS ); + + $rate_limit = min( $max_rate_limit, $rate_limit ); + } + + /** + * Filters the per-user time duration between two factor login attempts. + * + * @param int $rate_limit The number of seconds between two factor attempts. + * @param WP_User $user The user attempting to login. + */ + return apply_filters( 'two_factor_user_rate_limit', $rate_limit, $user ); + } + + /** + * Determine if a time delay between user two factor login attempts should be triggered. + * + * @since 0.8.0 + * + * @param WP_User $user The User. + * @return bool True if rate limit is okay, false if not. + */ + public static function is_user_rate_limited( $user ) { + $rate_limit = self::get_user_time_delay( $user ); + $last_failed = get_user_meta( $user->ID, self::USER_RATE_LIMIT_KEY, true ); + + $rate_limited = false; + if ( $last_failed && $last_failed + $rate_limit > time() ) { + $rate_limited = true; + } + + /** + * Filter whether this login attempt is rate limited or not. + * + * This allows for dedicated plugins to rate limit two factor login attempts + * based on their own rules. + * + * @param bool $rate_limited Whether the user login is rate limited. + * @param WP_User $user The user attempting to login. + */ + return apply_filters( 'two_factor_is_user_rate_limited', $rate_limited, $user ); + } + /** * Login form validation. * @@ -910,10 +1020,40 @@ public static function login_form_validate_2fa() { exit; } + // Rate limit two factor authentication attempts. + if ( true === self::is_user_rate_limited( $user ) ) { + $time_delay = self::get_user_time_delay( $user ); + $last_login = get_user_meta( $user->ID, self::USER_RATE_LIMIT_KEY, true ); + + $error = new WP_Error( + 'two_factor_too_fast', + sprintf( + __( 'ERROR: Too many invalid verification codes, you can try again in %s. This limit protects your account against automated attacks.', 'two-factor' ), + human_time_diff( $last_login + $time_delay ) + ) + ); + + do_action( 'wp_login_failed', $user->user_login, $error ); + + $login_nonce = self::create_login_nonce( $user->ID ); + if ( ! $login_nonce ) { + wp_die( esc_html__( 'Failed to create a login nonce.', 'two-factor' ) ); + } + + self::login_html( $user, $login_nonce['key'], $_REQUEST['redirect_to'], esc_html( $error->get_error_message() ), $provider ); + exit; + } + // Ask the provider to verify the second factor. if ( true !== $provider->validate_authentication( $user ) ) { do_action( 'wp_login_failed', $user->user_login, new WP_Error( 'two_factor_invalid', __( 'ERROR: Invalid verification code.', 'two-factor' ) ) ); + // Store the last time a failed login occured. + update_user_meta( $user->ID, self::USER_RATE_LIMIT_KEY, time() ); + + // Store the number of failed login attempts. + update_user_meta( $user->ID, self::USER_FAILED_LOGIN_ATTEMPTS_KEY, 1 + (int) get_user_meta( $user->ID, self::USER_FAILED_LOGIN_ATTEMPTS_KEY, true ) ); + $login_nonce = self::create_login_nonce( $user->ID ); if ( ! $login_nonce ) { wp_die( esc_html__( 'Failed to create a login nonce.', 'two-factor' ) ); @@ -924,6 +1064,8 @@ public static function login_form_validate_2fa() { } self::delete_login_nonce( $user->ID ); + delete_user_meta( $user->ID, self::USER_RATE_LIMIT_KEY ); + delete_user_meta( $user->ID, self::USER_FAILED_LOGIN_ATTEMPTS_KEY ); $rememberme = false; if ( isset( $_REQUEST['rememberme'] ) && $_REQUEST['rememberme'] ) { diff --git a/tests/class-two-factor-core.php b/tests/class-two-factor-core.php index 5986d766..1ee3dc5a 100644 --- a/tests/class-two-factor-core.php +++ b/tests/class-two-factor-core.php @@ -472,4 +472,94 @@ public function test_invalid_nonce_deletes_valid_nonce() { ); } + /** + * Test that the lockout time delay for two factor attempts is respected. + * + * @covers Two_Factor_Core::get_user_time_delay() + */ + public function test_get_user_time_delay() { + $user = $this->get_dummy_user(); + + // Default values, sans filters. + $rate_limit = 1; + $max_rate_limit = 15 * MINUTE_IN_SECONDS; + + // User has never logged in, validate the minimum time delay is in play. + $this->assertEquals( $rate_limit, Two_Factor_Core::get_user_time_delay( $user ) ); + + // Simulate 5 failed login attempts, and validate that the lockout is as expected. + update_user_meta( $user->ID, Two_Factor_Core::USER_FAILED_LOGIN_ATTEMPTS_KEY, 5 ); + $this->assertEquals( pow( 2, 5 ) * $rate_limit, Two_Factor_Core::get_user_time_delay( $user ) ); + + // Simulate 100 failed login attempts, validate that the lockout is not greater than $max_rate_limit + update_user_meta( $user->ID, Two_Factor_Core::USER_FAILED_LOGIN_ATTEMPTS_KEY, 100 ); + $this->assertEquals( $max_rate_limit, Two_Factor_Core::get_user_time_delay( $user ) ); + } + + /** + * Test that the user rate limit functions return as expected. + * + * @covers Two_Factor_Core::is_user_rate_limited() + */ + public function test_is_user_rate_limited() { + $user = $this->get_dummy_user(); + + // User has never logged in, validate they're not rate limited. + $this->assertFalse( Two_Factor_Core::is_user_rate_limited( $user ) ); + + // Failed login attempt at time(), user should be rate limited. + update_user_meta( $user->ID, Two_Factor_Core::USER_FAILED_LOGIN_ATTEMPTS_KEY, 1 ); + update_user_meta( $user->ID, Two_Factor_Core::USER_RATE_LIMIT_KEY, time() ); + $this->assertTrue( Two_Factor_Core::is_user_rate_limited( $user ) ); + + // 8 failed logins a minite ago, user should be rate limited. + update_user_meta( $user->ID, Two_Factor_Core::USER_FAILED_LOGIN_ATTEMPTS_KEY, 8 ); + update_user_meta( $user->ID, Two_Factor_Core::USER_RATE_LIMIT_KEY, time() - MINUTE_IN_SECONDS ); + $this->assertTrue( Two_Factor_Core::is_user_rate_limited( $user ) ); + + // 8 failed logins an hour ago, user should not be rate limited. + update_user_meta( $user->ID, Two_Factor_Core::USER_FAILED_LOGIN_ATTEMPTS_KEY, 8 ); + update_user_meta( $user->ID, Two_Factor_Core::USER_RATE_LIMIT_KEY, time() - HOUR_IN_SECONDS ); + $this->assertFalse( Two_Factor_Core::is_user_rate_limited( $user ) ); + } + + /** + * Test that the "invalid login attempts have occurred" login notice works as expected. + * + * @covers Two_Factor_Core::maybe_show_last_login_failure_notice() + */ + public function test_maybe_show_last_login_failure_notice() { + $user = $this->get_dummy_user(); + + // User has never logged in, validate they're not rate limited. + ob_start(); + Two_Factor_Core::maybe_show_last_login_failure_notice( $user ); + $contents = ob_get_clean(); + + $this->assertEmpty( $contents ); + + // A failed login attempts 5 seconds ago. + // Should throw a notice, even though it's the current user, it will only be displayed if there's no other 2FA errors. + update_user_meta( $user->ID, Two_Factor_Core::USER_FAILED_LOGIN_ATTEMPTS_KEY, 1 ); + update_user_meta( $user->ID, Two_Factor_Core::USER_RATE_LIMIT_KEY, time() - 5 ); + ob_start(); + Two_Factor_Core::maybe_show_last_login_failure_notice( $user ); + $contents = ob_get_clean(); + + $this->assertNotEmpty( $contents ); + $this->assertStringNotContainsString( '1 times', $contents ); + $this->assertStringContainsString( 'login without providing a valid two factor token', $contents ); + + // 5 failed login attempts 5 hours ago - User should be informed. + $five_hours_ago = time() - 5 * HOUR_IN_SECONDS; + update_user_meta( $user->ID, Two_Factor_Core::USER_FAILED_LOGIN_ATTEMPTS_KEY, 5 ); + update_user_meta( $user->ID, Two_Factor_Core::USER_RATE_LIMIT_KEY, $five_hours_ago ); + ob_start(); + Two_Factor_Core::maybe_show_last_login_failure_notice( $user ); + $contents = ob_get_clean(); + + $this->assertNotEmpty( $contents ); + $this->assertStringContainsString( '5 times', $contents ); + $this->assertStringContainsString( human_time_diff( $five_hours_ago ), $contents ); + } } From 249e50de354d447990624b41a153c7cd43b86cf5 Mon Sep 17 00:00:00 2001 From: Dion Hulse Date: Mon, 13 Feb 2023 14:19:59 +1000 Subject: [PATCH 006/130] TOTP: Enforce single-use of TOTP one-time passwords. (#517) TOTP: Prevent re-use of TOTP tokens, and prevent a previously-generated token being valid if a newer token is used to login. Co-authored-by: Ian Dunn --- providers/class-two-factor-totp.php | 79 ++++++++++++++++---- tests/providers/class-two-factor-totp.php | 90 +++++++++++++++++++++++ 2 files changed, 155 insertions(+), 14 deletions(-) diff --git a/providers/class-two-factor-totp.php b/providers/class-two-factor-totp.php index e791da6f..ac20ae9f 100644 --- a/providers/class-two-factor-totp.php +++ b/providers/class-two-factor-totp.php @@ -11,12 +11,19 @@ class Two_Factor_Totp extends Two_Factor_Provider { /** - * The user meta token key. + * The user meta key for the TOTP Secret key. * * @var string */ const SECRET_META_KEY = '_two_factor_totp_key'; + /** + * The user meta key for the last successful TOTP token timestamp logged in with. + * + * @var string + */ + const LAST_SUCCESSFUL_LOGIN_META_KEY = '_two_factor_totp_last_successful_login'; + const DEFAULT_KEY_BIT_SIZE = 160; const DEFAULT_CRYPTO = 'sha1'; const DEFAULT_DIGIT_COUNT = 6; @@ -408,6 +415,7 @@ public function set_user_totp_key( $user_id, $key ) { * @return boolean If the key was deleted successfully. */ public function delete_user_totp_key( $user_id ) { + delete_user_meta( $user_id, self::LAST_SUCCESSFUL_LOGIN_META_KEY ); return delete_user_meta( $user_id, self::SECRET_META_KEY ); } @@ -434,29 +442,70 @@ public function is_valid_key( $key ) { * @param WP_User $user WP_User object of the logged-in user. * * @return bool Whether the user gave a valid code - * - * @codeCoverageIgnore */ public function validate_authentication( $user ) { - if ( ! empty( $_REQUEST['authcode'] ) ) { - return $this->is_valid_authcode( - $this->get_user_totp_key( $user->ID ), - sanitize_text_field( $_REQUEST['authcode'] ) - ); + if ( empty( $_REQUEST['authcode'] ) ) { + return false; } - return false; + return $this->validate_code_for_user( + $user, + sanitize_text_field( $_REQUEST['authcode'] ) + ); } /** - * Checks if a given code is valid for a given key, allowing for a certain amount of time drift + * Validates an authentication code for a given user, preventing re-use and older TOTP keys. + * + * @param WP_User $user WP_User object of the logged-in user. + * @param int $code The TOTP token to validate. + * + * @return bool Whether the code is valid for the user and a newer code has not been used. + */ + public function validate_code_for_user( $user, $code ) { + $valid_timestamp = $this->get_authcode_valid_ticktime( + $this->get_user_totp_key( $user->ID ), + $code + ); + + if ( ! $valid_timestamp ) { + return false; + } + + $last_totp_login = (int) get_user_meta( $user->ID, self::LAST_SUCCESSFUL_LOGIN_META_KEY, true ); + + // The TOTP authentication is not valid, if we've seen the same or newer code. + if ( $last_totp_login && $last_totp_login >= $valid_timestamp ) { + return false; + } + + update_user_meta( $user->ID, self::LAST_SUCCESSFUL_LOGIN_META_KEY, $valid_timestamp ); + + return true; + } + + + /** + * Checks if a given code is valid for a given key, allowing for a certain amount of time drift. * * @param string $key The share secret key to use. * @param string $authcode The code to test. * - * @return bool Whether the code is valid within the time frame + * @return bool Whether the code is valid within the time frame. */ public static function is_valid_authcode( $key, $authcode ) { + return (bool) self::get_authcode_valid_ticktime( $key, $authcode ); + } + + /** + * Checks if a given code is valid for a given key, allowing for a certain amount of time drift. + * + * @param string $key The share secret key to use. + * @param string $authcode The code to test. + * + * @return false|int Returns the timestamp of the authcode on success, False otherwise. + */ + public static function get_authcode_valid_ticktime( $key, $authcode ) { /** * Filter the maximum ticks to allow when checking valid codes. * @@ -474,14 +523,16 @@ public static function is_valid_authcode( $key, $authcode ) { $ticks = range( - $max_ticks, $max_ticks ); usort( $ticks, array( __CLASS__, 'abssort' ) ); - $time = time() / self::DEFAULT_TIME_STEP_SEC; + $time = floor( time() / self::DEFAULT_TIME_STEP_SEC ); foreach ( $ticks as $offset ) { $log_time = $time + $offset; - if ( hash_equals(self::calc_totp( $key, $log_time ), $authcode ) ) { - return true; + if ( hash_equals( self::calc_totp( $key, $log_time ), $authcode ) ) { + // Return the tick timestamp. + return $log_time * self::DEFAULT_TIME_STEP_SEC; } } + return false; } diff --git a/tests/providers/class-two-factor-totp.php b/tests/providers/class-two-factor-totp.php index a363e4ac..356f6c1b 100644 --- a/tests/providers/class-two-factor-totp.php +++ b/tests/providers/class-two-factor-totp.php @@ -141,6 +141,7 @@ public function test_base32_decode_exception() { * Verify authcode validation. * * @covers Two_Factor_Totp::is_valid_authcode + * @covers Two_Factor_Totp::get_authcode_valid_ticktime * @covers Two_Factor_Totp::generate_key * @covers Two_Factor_Totp::calc_totp * @covers Two_Factor_Totp::pack64 @@ -158,6 +159,7 @@ public function test_is_valid_authcode() { * Verify authcode rejection. * * @covers Two_Factor_Totp::is_valid_authcode + * @covers Two_Factor_Totp::get_authcode_valid_ticktime */ public function test_invalid_authcode_rejected() { $key = $this->provider->generate_key(); @@ -209,4 +211,92 @@ public function test_is_valid_key() { $this->assertFalse( $this->provider->is_valid_key( 'abc233' ), 'Lowercase chars are invalid' ); $this->assertFalse( $this->provider->is_valid_key( 'has a space' ), 'Spaces not allowed' ); } + + /** + * Test that the validation function works. + * + * @covers Two_Factor_Totp::validate_authentication + * @covers Two_Factor_Totp::validate_code_for_user + * @covers Two_Factor_Totp::get_authcode_valid_ticktime + */ + function test_validate_authentication() { + $user = new WP_User( self::factory()->user->create() ); + $key = $this->provider->generate_key(); + + // Configure secret for the user. + $this->provider->set_user_totp_key( $user->ID, $key ); + + $authcode = $this->provider->calc_totp( $key ); + + // Validate that a missing key results in failure. + unset( $_REQUEST['authcode'] ); + $this->assertFalse( $this->provider->validate_authentication( $user ) ); + + // Validate that an invalid key doesn't succeed. + $_REQUEST['authcode'] = '123456'; // Okay, that's valid once in a blue moon. + $this->assertFalse( $this->provider->validate_authentication( $user ) ); + + // Validate that the login would succeed using the current authcode. + $_REQUEST['authcode'] = $authcode; + $this->assertTrue( $this->provider->validate_authentication( $user ) ); + + // Validate that a second attempt with the same authcode will fail. + $this->assertFalse( $this->provider->validate_authentication( $user ) ); + } + + /** + * Test that the validation function works. + * + * @covers Two_Factor_Totp::validate_code_for_user + * @covers Two_Factor_Totp::get_authcode_valid_ticktime + */ + function test_validate_code_for_user() { + $user = new WP_User( self::factory()->user->create() ); + $key = $this->provider->generate_key(); + + // Configure secret for the user. + $this->provider->set_user_totp_key( $user->ID, $key ); + + $oldcode = $this->provider->calc_totp( $key, floor( time() / Two_Factor_Totp::DEFAULT_TIME_STEP_SEC ) - 2 ); + $prevcode = $this->provider->calc_totp( $key, floor( time() / Two_Factor_Totp::DEFAULT_TIME_STEP_SEC ) - 1 ); + $authcode = $this->provider->calc_totp( $key ); + $nextcode = $this->provider->calc_totp( $key, floor( time() / Two_Factor_Totp::DEFAULT_TIME_STEP_SEC ) + 1 ); + + // Validate that the login would succeed using the previous authcode. + $this->assertTrue( $this->provider->validate_code_for_user( $user, $prevcode ) ); + + // Validate that the login would succeed using the current authcode. + $this->assertTrue( $this->provider->validate_code_for_user( $user, $authcode ) ); + + // Validate that a second attempt with the same authcode will fail. + $this->assertFalse( $this->provider->validate_code_for_user( $user, $authcode ) ); + + // Validate that the future authcode will succeed (but not more than once) + $this->assertTrue( $this->provider->validate_code_for_user( $user, $nextcode ) ); + $this->assertFalse( $this->provider->validate_code_for_user( $user, $nextcode ) ); + + // Validate that the older unused authcode will not succeed. + $this->assertFalse( $this->provider->validate_code_for_user( $user, $oldcode ) ); + + } + + /** + * Validate that the time returned for a tick is correct. + * + * @covers Two_Factor_Totp::get_authcode_valid_ticktime + */ + function test_get_authcode_valid_ticktime() { + $key = $this->provider->generate_key(); + $max_grace_period = Two_Factor_Totp::DEFAULT_TIME_STEP_ALLOWANCE; + + foreach ( range( - $max_grace_period, $max_grace_period ) as $tick ) { + $tick_time = floor( time() / Two_Factor_Totp::DEFAULT_TIME_STEP_SEC ) + $tick; + $expected = $tick_time * Two_Factor_Totp::DEFAULT_TIME_STEP_SEC; + $code = $this->provider->calc_totp( $key, $tick_time ); + + $this->assertEquals( $expected, Two_Factor_Totp::get_authcode_valid_ticktime( $key, $code ) ); + } + + $this->assertFalse( Two_Factor_Totp::get_authcode_valid_ticktime( $key, '000000' ) ); + } } From f7e42d6b935528e2bcc50e1ae149016491b25124 Mon Sep 17 00:00:00 2001 From: Ian Dunn Date: Tue, 14 Feb 2023 08:48:55 -0800 Subject: [PATCH 007/130] Tests: Test for missing user/token more precisely. Previously the missing token wasn't tested for, and the FUT was passed an invalid data type for the user. --- tests/providers/class-two-factor-email.php | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/tests/providers/class-two-factor-email.php b/tests/providers/class-two-factor-email.php index ef138116..93e5dc76 100644 --- a/tests/providers/class-two-factor-email.php +++ b/tests/providers/class-two-factor-email.php @@ -177,12 +177,20 @@ public function test_authentication_page_no_user() { } /** - * Verify that email validation with no user returns false. + * Verify that email validation fails if user or token are missing. * * @covers Two_Factor_Email::validate_authentication */ - public function test_validate_authentication_no_user_is_false() { - $this->assertFalse( $this->provider->validate_authentication( false ) ); + public function test_validate_authentication_fails_with_missing_input() { + $logged_out_user = new WP_User(); + $valid_user = new WP_User( self::factory()->user->create() ); + + // User but no code. + $this->assertFalse( $this->provider->validate_authentication( $valid_user ) ); + + // Code but no user. + $_REQUEST['two-factor-email-code'] = $this->provider->generate_token( $valid_user->ID ); + $this->assertFalse( $this->provider->validate_authentication( $logged_out_user ) ); } /** From 2991f4c2bcec9ce1e2872ab87fb91ba1513b76d1 Mon Sep 17 00:00:00 2001 From: Dion Hulse Date: Wed, 15 Feb 2023 10:24:31 +1000 Subject: [PATCH 008/130] Include whitespace between the leading text and the code input. (#519) * Include whitespace between the leading text and the code input. * Switch from using
to using CSS. --- class-two-factor-core.php | 3 +++ providers/class-two-factor-backup-codes.php | 2 +- providers/class-two-factor-email.php | 2 +- providers/class-two-factor-totp.php | 2 +- 4 files changed, 6 insertions(+), 3 deletions(-) diff --git a/class-two-factor-core.php b/class-two-factor-core.php index 20877a07..9d57c16d 100644 --- a/class-two-factor-core.php +++ b/class-two-factor-core.php @@ -772,6 +772,9 @@ public static function login_html( $user, $login_nonce, $redirect_to, $error_msg .jetpack-sso-form-display #loginform > div { display: block; } + #login form p.two-factor-prompt { + margin-bottom: 1em; + } -


+

diff --git a/providers/class-two-factor-email.php b/providers/class-two-factor-email.php index 5946c719..b8566c11 100644 --- a/providers/class-two-factor-email.php +++ b/providers/class-two-factor-email.php @@ -266,7 +266,7 @@ public function authentication_page( $user ) { require_once ABSPATH . '/wp-admin/includes/template.php'; ?> -

+

diff --git a/providers/class-two-factor-totp.php b/providers/class-two-factor-totp.php index ac20ae9f..01d4aad0 100644 --- a/providers/class-two-factor-totp.php +++ b/providers/class-two-factor-totp.php @@ -638,7 +638,7 @@ public function is_available_for_user( $user ) { public function authentication_page( $user ) { require_once ABSPATH . '/wp-admin/includes/template.php'; ?> -

+

From f845b1aa43f4f6d04f60142a24bdfba3298872e7 Mon Sep 17 00:00:00 2001 From: Dion Hulse Date: Wed, 15 Feb 2023 14:06:29 +1000 Subject: [PATCH 009/130] Composer: Install WordPress 6.1.1, always use the latest 6.x version of WordPress, update other dependencies. (#524) --- composer.json | 2 +- composer.lock | 417 +++++++++++++++++++++++++------------------------- 2 files changed, 213 insertions(+), 206 deletions(-) diff --git a/composer.json b/composer.json index cb5117f7..0d349468 100644 --- a/composer.json +++ b/composer.json @@ -35,7 +35,7 @@ "phpcompatibility/phpcompatibility-wp": "dev-master", "phpunit/phpunit": "^9.5", "roots/wordpress-core-installer": "^1.100", - "roots/wordpress-full": "^6.0", + "roots/wordpress-full": "~6.0", "spatie/phpunit-watcher": "^1.23", "wp-coding-standards/wpcs": "^2.3", "wp-phpunit/wp-phpunit": "^6.0", diff --git a/composer.lock b/composer.lock index 2132aa32..123ab53c 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "12826df59a0a7ebb198b76b38e827b5a", + "content-hash": "890b6a822d871c829b2df7ae4468f12e", "packages": [], "packages-dev": [ { @@ -348,30 +348,30 @@ }, { "name": "doctrine/instantiator", - "version": "1.4.1", + "version": "1.5.0", "source": { "type": "git", "url": "https://github.com/doctrine/instantiator.git", - "reference": "10dcfce151b967d20fde1b34ae6640712c3891bc" + "reference": "0a0fa9780f5d4e507415a065172d26a98d02047b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/instantiator/zipball/10dcfce151b967d20fde1b34ae6640712c3891bc", - "reference": "10dcfce151b967d20fde1b34ae6640712c3891bc", + "url": "https://api.github.com/repos/doctrine/instantiator/zipball/0a0fa9780f5d4e507415a065172d26a98d02047b", + "reference": "0a0fa9780f5d4e507415a065172d26a98d02047b", "shasum": "" }, "require": { "php": "^7.1 || ^8.0" }, "require-dev": { - "doctrine/coding-standard": "^9", + "doctrine/coding-standard": "^9 || ^11", "ext-pdo": "*", "ext-phar": "*", "phpbench/phpbench": "^0.16 || ^1", "phpstan/phpstan": "^1.4", "phpstan/phpstan-phpunit": "^1", "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5", - "vimeo/psalm": "^4.22" + "vimeo/psalm": "^4.30 || ^5.4" }, "type": "library", "autoload": { @@ -398,7 +398,7 @@ ], "support": { "issues": "https://github.com/doctrine/instantiator/issues", - "source": "https://github.com/doctrine/instantiator/tree/1.4.1" + "source": "https://github.com/doctrine/instantiator/tree/1.5.0" }, "funding": [ { @@ -414,7 +414,7 @@ "type": "tidelift" } ], - "time": "2022-03-03T08:28:38+00:00" + "time": "2022-12-30T00:15:36+00:00" }, { "name": "evenement/evenement", @@ -677,16 +677,16 @@ }, { "name": "guzzlehttp/psr7", - "version": "2.4.1", + "version": "2.4.3", "source": { "type": "git", "url": "https://github.com/guzzle/psr7.git", - "reference": "69568e4293f4fa993f3b0e51c9723e1e17c41379" + "reference": "67c26b443f348a51926030c83481b85718457d3d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/psr7/zipball/69568e4293f4fa993f3b0e51c9723e1e17c41379", - "reference": "69568e4293f4fa993f3b0e51c9723e1e17c41379", + "url": "https://api.github.com/repos/guzzle/psr7/zipball/67c26b443f348a51926030c83481b85718457d3d", + "reference": "67c26b443f348a51926030c83481b85718457d3d", "shasum": "" }, "require": { @@ -776,7 +776,7 @@ ], "support": { "issues": "https://github.com/guzzle/psr7/issues", - "source": "https://github.com/guzzle/psr7/tree/2.4.1" + "source": "https://github.com/guzzle/psr7/tree/2.4.3" }, "funding": [ { @@ -792,7 +792,7 @@ "type": "tidelift" } ], - "time": "2022-08-28T14:45:39+00:00" + "time": "2022-10-26T14:07:24+00:00" }, { "name": "jolicode/jolinotif", @@ -917,16 +917,16 @@ }, { "name": "nikic/php-parser", - "version": "v4.15.1", + "version": "v4.15.3", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "0ef6c55a3f47f89d7a374e6f835197a0b5fcf900" + "reference": "570e980a201d8ed0236b0a62ddf2c9cbb2034039" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/0ef6c55a3f47f89d7a374e6f835197a0b5fcf900", - "reference": "0ef6c55a3f47f89d7a374e6f835197a0b5fcf900", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/570e980a201d8ed0236b0a62ddf2c9cbb2034039", + "reference": "570e980a201d8ed0236b0a62ddf2c9cbb2034039", "shasum": "" }, "require": { @@ -967,9 +967,9 @@ ], "support": { "issues": "https://github.com/nikic/PHP-Parser/issues", - "source": "https://github.com/nikic/PHP-Parser/tree/v4.15.1" + "source": "https://github.com/nikic/PHP-Parser/tree/v4.15.3" }, - "time": "2022-09-04T07:30:47+00:00" + "time": "2023-01-16T22:05:37+00:00" }, { "name": "phar-io/manifest", @@ -1171,12 +1171,12 @@ "source": { "type": "git", "url": "https://github.com/PHPCompatibility/PHPCompatibility.git", - "reference": "d88a4cfaa4d064c8b82d6dab679d57d8ec233cab" + "reference": "3ec0bfb201b660e358a2b1c3fcd7d934515e84b9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/PHPCompatibility/PHPCompatibility/zipball/d88a4cfaa4d064c8b82d6dab679d57d8ec233cab", - "reference": "d88a4cfaa4d064c8b82d6dab679d57d8ec233cab", + "url": "https://api.github.com/repos/PHPCompatibility/PHPCompatibility/zipball/3ec0bfb201b660e358a2b1c3fcd7d934515e84b9", + "reference": "3ec0bfb201b660e358a2b1c3fcd7d934515e84b9", "shasum": "" }, "require": { @@ -1238,20 +1238,20 @@ "issues": "https://github.com/PHPCompatibility/PHPCompatibility/issues", "source": "https://github.com/PHPCompatibility/PHPCompatibility" }, - "time": "2022-10-09T12:05:16+00:00" + "time": "2023-02-11T00:52:13+00:00" }, { "name": "phpcompatibility/phpcompatibility-paragonie", - "version": "1.3.1", + "version": "1.3.2", "source": { "type": "git", "url": "https://github.com/PHPCompatibility/PHPCompatibilityParagonie.git", - "reference": "ddabec839cc003651f2ce695c938686d1086cf43" + "reference": "bba5a9dfec7fcfbd679cfaf611d86b4d3759da26" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/PHPCompatibility/PHPCompatibilityParagonie/zipball/ddabec839cc003651f2ce695c938686d1086cf43", - "reference": "ddabec839cc003651f2ce695c938686d1086cf43", + "url": "https://api.github.com/repos/PHPCompatibility/PHPCompatibilityParagonie/zipball/bba5a9dfec7fcfbd679cfaf611d86b4d3759da26", + "reference": "bba5a9dfec7fcfbd679cfaf611d86b4d3759da26", "shasum": "" }, "require": { @@ -1288,13 +1288,14 @@ "paragonie", "phpcs", "polyfill", - "standards" + "standards", + "static analysis" ], "support": { "issues": "https://github.com/PHPCompatibility/PHPCompatibilityParagonie/issues", "source": "https://github.com/PHPCompatibility/PHPCompatibilityParagonie" }, - "time": "2021-02-15T10:24:51+00:00" + "time": "2022-10-25T01:46:02+00:00" }, { "name": "phpcompatibility/phpcompatibility-wp", @@ -1302,12 +1303,12 @@ "source": { "type": "git", "url": "https://github.com/PHPCompatibility/PHPCompatibilityWP.git", - "reference": "dbb88b4f397fe2d52af984cae7714d7cd28d5bc3" + "reference": "262f9d81273932315d15d704f69b9d678b939cb3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/PHPCompatibility/PHPCompatibilityWP/zipball/dbb88b4f397fe2d52af984cae7714d7cd28d5bc3", - "reference": "dbb88b4f397fe2d52af984cae7714d7cd28d5bc3", + "url": "https://api.github.com/repos/PHPCompatibility/PHPCompatibilityWP/zipball/262f9d81273932315d15d704f69b9d678b939cb3", + "reference": "262f9d81273932315d15d704f69b9d678b939cb3", "shasum": "" }, "require": { @@ -1315,10 +1316,10 @@ "phpcompatibility/phpcompatibility-paragonie": "^1.0" }, "require-dev": { - "dealerdirect/phpcodesniffer-composer-installer": "^0.7" + "dealerdirect/phpcodesniffer-composer-installer": "^1.0" }, "suggest": { - "dealerdirect/phpcodesniffer-composer-installer": "^0.7 || This Composer plugin will sort out the PHP_CodeSniffer 'installed_paths' automatically.", + "dealerdirect/phpcodesniffer-composer-installer": "^1.0 || This Composer plugin will sort out the PHP_CodeSniffer 'installed_paths' automatically.", "roave/security-advisories": "dev-master || Helps prevent installing dependencies with known security issues." }, "default-branch": true, @@ -1350,36 +1351,42 @@ "issues": "https://github.com/PHPCompatibility/PHPCompatibilityWP/issues", "source": "https://github.com/PHPCompatibility/PHPCompatibilityWP" }, - "time": "2022-09-04T21:13:10+00:00" + "time": "2023-01-05T13:34:27+00:00" }, { "name": "phpcsstandards/phpcsutils", - "version": "1.0.0-alpha3", + "version": "1.0.1", "source": { "type": "git", "url": "https://github.com/PHPCSStandards/PHPCSUtils.git", - "reference": "a16c989b8421e29c336ece5c4099b48585994673" + "reference": "4fd2e30c7465112ca2e3646037bfb9e6f0f4d4f3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/PHPCSStandards/PHPCSUtils/zipball/a16c989b8421e29c336ece5c4099b48585994673", - "reference": "a16c989b8421e29c336ece5c4099b48585994673", + "url": "https://api.github.com/repos/PHPCSStandards/PHPCSUtils/zipball/4fd2e30c7465112ca2e3646037bfb9e6f0f4d4f3", + "reference": "4fd2e30c7465112ca2e3646037bfb9e6f0f4d4f3", "shasum": "" }, "require": { - "dealerdirect/phpcodesniffer-composer-installer": "^0.4.1 || ^0.5 || ^0.6.2 || ^0.7", + "dealerdirect/phpcodesniffer-composer-installer": "^0.4.1 || ^0.5 || ^0.6.2 || ^0.7 || ^1.0", "php": ">=5.4", - "squizlabs/php_codesniffer": "^2.6.0 || ^3.1.0 || 4.0.x-dev@dev" - }, - "conflict": { - "squizlabs/php_codesniffer": "3.5.3" + "squizlabs/php_codesniffer": "^3.7.1 || 4.0.x-dev@dev" }, "require-dev": { - "php-parallel-lint/php-console-highlighter": "^0.5", - "php-parallel-lint/php-parallel-lint": "^1.2.0", - "phpunit/phpunit": "^4.5 || ^5.0 || ^6.0 || ^7.0 || ^8.0 || ^9.0" + "ext-filter": "*", + "php-parallel-lint/php-console-highlighter": "^1.0", + "php-parallel-lint/php-parallel-lint": "^1.3.2", + "phpcsstandards/phpcsdevcs": "^1.1.3", + "phpunit/phpunit": "^4.8.36 || ^5.7.21 || ^6.0 || ^7.0 || ^8.0 || ^9.3", + "yoast/phpunit-polyfills": "^1.0.1" }, "type": "phpcodesniffer-standard", + "extra": { + "branch-alias": { + "dev-stable": "1.x-dev", + "dev-develop": "1.x-dev" + } + }, "autoload": { "classmap": [ "PHPCSUtils/" @@ -1407,9 +1414,9 @@ "phpcbf", "phpcodesniffer-standard", "phpcs", - "phpcs2", "phpcs3", "standards", + "static analysis", "tokens", "utility" ], @@ -1418,20 +1425,20 @@ "issues": "https://github.com/PHPCSStandards/PHPCSUtils/issues", "source": "https://github.com/PHPCSStandards/PHPCSUtils" }, - "time": "2020-06-28T21:57:33+00:00" + "time": "2023-01-05T12:08:37+00:00" }, { "name": "phpunit/php-code-coverage", - "version": "9.2.17", + "version": "9.2.24", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-code-coverage.git", - "reference": "aa94dc41e8661fe90c7316849907cba3007b10d8" + "reference": "2cf940ebc6355a9d430462811b5aaa308b174bed" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/aa94dc41e8661fe90c7316849907cba3007b10d8", - "reference": "aa94dc41e8661fe90c7316849907cba3007b10d8", + "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/2cf940ebc6355a9d430462811b5aaa308b174bed", + "reference": "2cf940ebc6355a9d430462811b5aaa308b174bed", "shasum": "" }, "require": { @@ -1487,7 +1494,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/php-code-coverage/issues", - "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.17" + "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.24" }, "funding": [ { @@ -1495,7 +1502,7 @@ "type": "github" } ], - "time": "2022-08-30T12:24:04+00:00" + "time": "2023-01-26T08:26:55+00:00" }, { "name": "phpunit/php-file-iterator", @@ -1740,20 +1747,20 @@ }, { "name": "phpunit/phpunit", - "version": "9.5.25", + "version": "9.6.3", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "3e6f90ca7e3d02025b1d147bd8d4a89fd4ca8a1d" + "reference": "e7b1615e3e887d6c719121c6d4a44b0ab9645555" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/3e6f90ca7e3d02025b1d147bd8d4a89fd4ca8a1d", - "reference": "3e6f90ca7e3d02025b1d147bd8d4a89fd4ca8a1d", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/e7b1615e3e887d6c719121c6d4a44b0ab9645555", + "reference": "e7b1615e3e887d6c719121c6d4a44b0ab9645555", "shasum": "" }, "require": { - "doctrine/instantiator": "^1.3.1", + "doctrine/instantiator": "^1.3.1 || ^2", "ext-dom": "*", "ext-json": "*", "ext-libxml": "*", @@ -1791,7 +1798,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "9.5-dev" + "dev-master": "9.6-dev" } }, "autoload": { @@ -1822,7 +1829,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/phpunit/issues", - "source": "https://github.com/sebastianbergmann/phpunit/tree/9.5.25" + "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.3" }, "funding": [ { @@ -1838,7 +1845,7 @@ "type": "tidelift" } ], - "time": "2022-09-25T03:44:45+00:00" + "time": "2023-02-04T13:37:15+00:00" }, { "name": "psr/container", @@ -2375,22 +2382,22 @@ }, { "name": "roots/wordpress-full", - "version": "6.0.2", + "version": "6.1.1", "source": { "type": "git", "url": "https://github.com/WordPress/WordPress.git", - "reference": "6.0.2" + "reference": "6.1.1" }, "dist": { "type": "zip", - "url": "https://downloads.wordpress.org/release/wordpress-6.0.2.zip", - "shasum": "9dff179d1243fe7535d8254e8d12b1af366e906e" + "url": "https://downloads.wordpress.org/release/wordpress-6.1.1.zip", + "shasum": "e4c74640c50b27d59dfab8cf5578769eb668d10a" }, "require": { "php": ">= 5.6.20" }, "provide": { - "wordpress/core-implementation": "6.0.2" + "wordpress/core-implementation": "6.1.1" }, "suggest": { "ext-curl": "Performs remote request operations.", @@ -2441,7 +2448,7 @@ "type": "other" } ], - "time": "2022-08-30T17:52:01+00:00" + "time": "2022-11-15T19:14:27+00:00" }, { "name": "sebastian/cli-parser", @@ -2809,16 +2816,16 @@ }, { "name": "sebastian/environment", - "version": "5.1.4", + "version": "5.1.5", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/environment.git", - "reference": "1b5dff7bb151a4db11d49d90e5408e4e938270f7" + "reference": "830c43a844f1f8d5b7a1f6d6076b784454d8b7ed" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/1b5dff7bb151a4db11d49d90e5408e4e938270f7", - "reference": "1b5dff7bb151a4db11d49d90e5408e4e938270f7", + "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/830c43a844f1f8d5b7a1f6d6076b784454d8b7ed", + "reference": "830c43a844f1f8d5b7a1f6d6076b784454d8b7ed", "shasum": "" }, "require": { @@ -2860,7 +2867,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/environment/issues", - "source": "https://github.com/sebastianbergmann/environment/tree/5.1.4" + "source": "https://github.com/sebastianbergmann/environment/tree/5.1.5" }, "funding": [ { @@ -2868,7 +2875,7 @@ "type": "github" } ], - "time": "2022-04-03T09:37:03+00:00" + "time": "2023-02-03T06:03:51+00:00" }, { "name": "sebastian/exporter", @@ -3182,16 +3189,16 @@ }, { "name": "sebastian/recursion-context", - "version": "4.0.4", + "version": "4.0.5", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/recursion-context.git", - "reference": "cd9d8cf3c5804de4341c283ed787f099f5506172" + "reference": "e75bd0f07204fec2a0af9b0f3cfe97d05f92efc1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/cd9d8cf3c5804de4341c283ed787f099f5506172", - "reference": "cd9d8cf3c5804de4341c283ed787f099f5506172", + "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/e75bd0f07204fec2a0af9b0f3cfe97d05f92efc1", + "reference": "e75bd0f07204fec2a0af9b0f3cfe97d05f92efc1", "shasum": "" }, "require": { @@ -3230,10 +3237,10 @@ } ], "description": "Provides functionality to recursively process PHP variables", - "homepage": "http://www.github.com/sebastianbergmann/recursion-context", + "homepage": "https://github.com/sebastianbergmann/recursion-context", "support": { "issues": "https://github.com/sebastianbergmann/recursion-context/issues", - "source": "https://github.com/sebastianbergmann/recursion-context/tree/4.0.4" + "source": "https://github.com/sebastianbergmann/recursion-context/tree/4.0.5" }, "funding": [ { @@ -3241,7 +3248,7 @@ "type": "github" } ], - "time": "2020-10-26T13:17:30+00:00" + "time": "2023-02-03T06:07:39+00:00" }, { "name": "sebastian/resource-operations", @@ -3300,16 +3307,16 @@ }, { "name": "sebastian/type", - "version": "3.2.0", + "version": "3.2.1", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/type.git", - "reference": "fb3fe09c5f0bae6bc27ef3ce933a1e0ed9464b6e" + "reference": "75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/fb3fe09c5f0bae6bc27ef3ce933a1e0ed9464b6e", - "reference": "fb3fe09c5f0bae6bc27ef3ce933a1e0ed9464b6e", + "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7", + "reference": "75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7", "shasum": "" }, "require": { @@ -3344,7 +3351,7 @@ "homepage": "https://github.com/sebastianbergmann/type", "support": { "issues": "https://github.com/sebastianbergmann/type/issues", - "source": "https://github.com/sebastianbergmann/type/tree/3.2.0" + "source": "https://github.com/sebastianbergmann/type/tree/3.2.1" }, "funding": [ { @@ -3352,7 +3359,7 @@ "type": "github" } ], - "time": "2022-09-12T14:47:03+00:00" + "time": "2023-02-03T06:13:03+00:00" }, { "name": "sebastian/version", @@ -3409,16 +3416,16 @@ }, { "name": "sirbrillig/phpcs-variable-analysis", - "version": "v2.11.9", + "version": "v2.11.10", "source": { "type": "git", "url": "https://github.com/sirbrillig/phpcs-variable-analysis.git", - "reference": "62730888d225d55a613854b6a76fb1f9f57d1618" + "reference": "0f25a3766f26df91d6bdda0c8931303fc85499d7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sirbrillig/phpcs-variable-analysis/zipball/62730888d225d55a613854b6a76fb1f9f57d1618", - "reference": "62730888d225d55a613854b6a76fb1f9f57d1618", + "url": "https://api.github.com/repos/sirbrillig/phpcs-variable-analysis/zipball/0f25a3766f26df91d6bdda0c8931303fc85499d7", + "reference": "0f25a3766f26df91d6bdda0c8931303fc85499d7", "shasum": "" }, "require": { @@ -3426,7 +3433,7 @@ "squizlabs/php_codesniffer": "^3.5.6" }, "require-dev": { - "dealerdirect/phpcodesniffer-composer-installer": "^0.7.0", + "dealerdirect/phpcodesniffer-composer-installer": "^0.7 || ^1.0", "phpcsstandards/phpcsdevcs": "^1.1", "phpstan/phpstan": "^1.7", "phpunit/phpunit": "^4.8.36 || ^5.7.21 || ^6.5 || ^7.0 || ^8.0 || ^9.0", @@ -3463,7 +3470,7 @@ "source": "https://github.com/sirbrillig/phpcs-variable-analysis", "wiki": "https://github.com/sirbrillig/phpcs-variable-analysis/wiki" }, - "time": "2022-10-05T23:31:46+00:00" + "time": "2023-01-05T18:45:16+00:00" }, { "name": "spatie/phpunit-watcher", @@ -3587,16 +3594,16 @@ }, { "name": "symfony/config", - "version": "v5.4.11", + "version": "v5.4.19", "source": { "type": "git", "url": "https://github.com/symfony/config.git", - "reference": "ec79e03125c1d2477e43dde8528535d90cc78379" + "reference": "9bd60843443cda9638efdca7c41eb82ed0026179" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/config/zipball/ec79e03125c1d2477e43dde8528535d90cc78379", - "reference": "ec79e03125c1d2477e43dde8528535d90cc78379", + "url": "https://api.github.com/repos/symfony/config/zipball/9bd60843443cda9638efdca7c41eb82ed0026179", + "reference": "9bd60843443cda9638efdca7c41eb82ed0026179", "shasum": "" }, "require": { @@ -3646,7 +3653,7 @@ "description": "Helps you find, load, combine, autofill and validate configuration values of any kind", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/config/tree/v5.4.11" + "source": "https://github.com/symfony/config/tree/v5.4.19" }, "funding": [ { @@ -3662,20 +3669,20 @@ "type": "tidelift" } ], - "time": "2022-07-20T13:00:38+00:00" + "time": "2023-01-08T13:23:55+00:00" }, { "name": "symfony/console", - "version": "v5.4.14", + "version": "v5.4.19", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "984ea2c0f45f42dfed01d2f3987b187467c4b16d" + "reference": "dccb8d251a9017d5994c988b034d3e18aaabf740" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/984ea2c0f45f42dfed01d2f3987b187467c4b16d", - "reference": "984ea2c0f45f42dfed01d2f3987b187467c4b16d", + "url": "https://api.github.com/repos/symfony/console/zipball/dccb8d251a9017d5994c988b034d3e18aaabf740", + "reference": "dccb8d251a9017d5994c988b034d3e18aaabf740", "shasum": "" }, "require": { @@ -3745,7 +3752,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v5.4.14" + "source": "https://github.com/symfony/console/tree/v5.4.19" }, "funding": [ { @@ -3761,7 +3768,7 @@ "type": "tidelift" } ], - "time": "2022-10-07T08:01:20+00:00" + "time": "2023-01-01T08:32:19+00:00" }, { "name": "symfony/deprecation-contracts", @@ -3832,16 +3839,16 @@ }, { "name": "symfony/filesystem", - "version": "v5.4.13", + "version": "v5.4.19", "source": { "type": "git", "url": "https://github.com/symfony/filesystem.git", - "reference": "ac09569844a9109a5966b9438fc29113ce77cf51" + "reference": "648bfaca6a494f3e22378123bcee2894045dc9d8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/filesystem/zipball/ac09569844a9109a5966b9438fc29113ce77cf51", - "reference": "ac09569844a9109a5966b9438fc29113ce77cf51", + "url": "https://api.github.com/repos/symfony/filesystem/zipball/648bfaca6a494f3e22378123bcee2894045dc9d8", + "reference": "648bfaca6a494f3e22378123bcee2894045dc9d8", "shasum": "" }, "require": { @@ -3876,7 +3883,7 @@ "description": "Provides basic utilities for the filesystem", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/filesystem/tree/v5.4.13" + "source": "https://github.com/symfony/filesystem/tree/v5.4.19" }, "funding": [ { @@ -3892,20 +3899,20 @@ "type": "tidelift" } ], - "time": "2022-09-21T19:53:16+00:00" + "time": "2023-01-14T19:14:44+00:00" }, { "name": "symfony/finder", - "version": "v5.4.11", + "version": "v5.4.19", "source": { "type": "git", "url": "https://github.com/symfony/finder.git", - "reference": "7872a66f57caffa2916a584db1aa7f12adc76f8c" + "reference": "6071aebf810ad13fe8200c224f36103abb37cf1f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/finder/zipball/7872a66f57caffa2916a584db1aa7f12adc76f8c", - "reference": "7872a66f57caffa2916a584db1aa7f12adc76f8c", + "url": "https://api.github.com/repos/symfony/finder/zipball/6071aebf810ad13fe8200c224f36103abb37cf1f", + "reference": "6071aebf810ad13fe8200c224f36103abb37cf1f", "shasum": "" }, "require": { @@ -3939,7 +3946,7 @@ "description": "Finds files and directories via an intuitive fluent interface", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/finder/tree/v5.4.11" + "source": "https://github.com/symfony/finder/tree/v5.4.19" }, "funding": [ { @@ -3955,20 +3962,20 @@ "type": "tidelift" } ], - "time": "2022-07-29T07:37:50+00:00" + "time": "2023-01-14T19:14:44+00:00" }, { "name": "symfony/polyfill-ctype", - "version": "v1.26.0", + "version": "v1.27.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-ctype.git", - "reference": "6fd1b9a79f6e3cf65f9e679b23af304cd9e010d4" + "reference": "5bbc823adecdae860bb64756d639ecfec17b050a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/6fd1b9a79f6e3cf65f9e679b23af304cd9e010d4", - "reference": "6fd1b9a79f6e3cf65f9e679b23af304cd9e010d4", + "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/5bbc823adecdae860bb64756d639ecfec17b050a", + "reference": "5bbc823adecdae860bb64756d639ecfec17b050a", "shasum": "" }, "require": { @@ -3983,7 +3990,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.26-dev" + "dev-main": "1.27-dev" }, "thanks": { "name": "symfony/polyfill", @@ -4021,7 +4028,7 @@ "portable" ], "support": { - "source": "https://github.com/symfony/polyfill-ctype/tree/v1.26.0" + "source": "https://github.com/symfony/polyfill-ctype/tree/v1.27.0" }, "funding": [ { @@ -4037,20 +4044,20 @@ "type": "tidelift" } ], - "time": "2022-05-24T11:49:31+00:00" + "time": "2022-11-03T14:55:06+00:00" }, { "name": "symfony/polyfill-intl-grapheme", - "version": "v1.26.0", + "version": "v1.27.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-grapheme.git", - "reference": "433d05519ce6990bf3530fba6957499d327395c2" + "reference": "511a08c03c1960e08a883f4cffcacd219b758354" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/433d05519ce6990bf3530fba6957499d327395c2", - "reference": "433d05519ce6990bf3530fba6957499d327395c2", + "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/511a08c03c1960e08a883f4cffcacd219b758354", + "reference": "511a08c03c1960e08a883f4cffcacd219b758354", "shasum": "" }, "require": { @@ -4062,7 +4069,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.26-dev" + "dev-main": "1.27-dev" }, "thanks": { "name": "symfony/polyfill", @@ -4102,7 +4109,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.26.0" + "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.27.0" }, "funding": [ { @@ -4118,20 +4125,20 @@ "type": "tidelift" } ], - "time": "2022-05-24T11:49:31+00:00" + "time": "2022-11-03T14:55:06+00:00" }, { "name": "symfony/polyfill-intl-normalizer", - "version": "v1.26.0", + "version": "v1.27.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-normalizer.git", - "reference": "219aa369ceff116e673852dce47c3a41794c14bd" + "reference": "19bd1e4fcd5b91116f14d8533c57831ed00571b6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/219aa369ceff116e673852dce47c3a41794c14bd", - "reference": "219aa369ceff116e673852dce47c3a41794c14bd", + "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/19bd1e4fcd5b91116f14d8533c57831ed00571b6", + "reference": "19bd1e4fcd5b91116f14d8533c57831ed00571b6", "shasum": "" }, "require": { @@ -4143,7 +4150,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.26-dev" + "dev-main": "1.27-dev" }, "thanks": { "name": "symfony/polyfill", @@ -4186,7 +4193,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.26.0" + "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.27.0" }, "funding": [ { @@ -4202,20 +4209,20 @@ "type": "tidelift" } ], - "time": "2022-05-24T11:49:31+00:00" + "time": "2022-11-03T14:55:06+00:00" }, { "name": "symfony/polyfill-mbstring", - "version": "v1.26.0", + "version": "v1.27.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-mbstring.git", - "reference": "9344f9cb97f3b19424af1a21a3b0e75b0a7d8d7e" + "reference": "8ad114f6b39e2c98a8b0e3bd907732c207c2b534" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/9344f9cb97f3b19424af1a21a3b0e75b0a7d8d7e", - "reference": "9344f9cb97f3b19424af1a21a3b0e75b0a7d8d7e", + "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/8ad114f6b39e2c98a8b0e3bd907732c207c2b534", + "reference": "8ad114f6b39e2c98a8b0e3bd907732c207c2b534", "shasum": "" }, "require": { @@ -4230,7 +4237,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.26-dev" + "dev-main": "1.27-dev" }, "thanks": { "name": "symfony/polyfill", @@ -4269,7 +4276,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.26.0" + "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.27.0" }, "funding": [ { @@ -4285,20 +4292,20 @@ "type": "tidelift" } ], - "time": "2022-05-24T11:49:31+00:00" + "time": "2022-11-03T14:55:06+00:00" }, { "name": "symfony/polyfill-php73", - "version": "v1.26.0", + "version": "v1.27.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php73.git", - "reference": "e440d35fa0286f77fb45b79a03fedbeda9307e85" + "reference": "9e8ecb5f92152187c4799efd3c96b78ccab18ff9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/e440d35fa0286f77fb45b79a03fedbeda9307e85", - "reference": "e440d35fa0286f77fb45b79a03fedbeda9307e85", + "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/9e8ecb5f92152187c4799efd3c96b78ccab18ff9", + "reference": "9e8ecb5f92152187c4799efd3c96b78ccab18ff9", "shasum": "" }, "require": { @@ -4307,7 +4314,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.26-dev" + "dev-main": "1.27-dev" }, "thanks": { "name": "symfony/polyfill", @@ -4348,7 +4355,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php73/tree/v1.26.0" + "source": "https://github.com/symfony/polyfill-php73/tree/v1.27.0" }, "funding": [ { @@ -4364,20 +4371,20 @@ "type": "tidelift" } ], - "time": "2022-05-24T11:49:31+00:00" + "time": "2022-11-03T14:55:06+00:00" }, { "name": "symfony/polyfill-php80", - "version": "v1.26.0", + "version": "v1.27.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php80.git", - "reference": "cfa0ae98841b9e461207c13ab093d76b0fa7bace" + "reference": "7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/cfa0ae98841b9e461207c13ab093d76b0fa7bace", - "reference": "cfa0ae98841b9e461207c13ab093d76b0fa7bace", + "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936", + "reference": "7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936", "shasum": "" }, "require": { @@ -4386,7 +4393,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.26-dev" + "dev-main": "1.27-dev" }, "thanks": { "name": "symfony/polyfill", @@ -4431,7 +4438,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php80/tree/v1.26.0" + "source": "https://github.com/symfony/polyfill-php80/tree/v1.27.0" }, "funding": [ { @@ -4447,20 +4454,20 @@ "type": "tidelift" } ], - "time": "2022-05-10T07:21:04+00:00" + "time": "2022-11-03T14:55:06+00:00" }, { "name": "symfony/polyfill-php81", - "version": "v1.26.0", + "version": "v1.27.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php81.git", - "reference": "13f6d1271c663dc5ae9fb843a8f16521db7687a1" + "reference": "707403074c8ea6e2edaf8794b0157a0bfa52157a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php81/zipball/13f6d1271c663dc5ae9fb843a8f16521db7687a1", - "reference": "13f6d1271c663dc5ae9fb843a8f16521db7687a1", + "url": "https://api.github.com/repos/symfony/polyfill-php81/zipball/707403074c8ea6e2edaf8794b0157a0bfa52157a", + "reference": "707403074c8ea6e2edaf8794b0157a0bfa52157a", "shasum": "" }, "require": { @@ -4469,7 +4476,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.26-dev" + "dev-main": "1.27-dev" }, "thanks": { "name": "symfony/polyfill", @@ -4510,7 +4517,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php81/tree/v1.26.0" + "source": "https://github.com/symfony/polyfill-php81/tree/v1.27.0" }, "funding": [ { @@ -4526,20 +4533,20 @@ "type": "tidelift" } ], - "time": "2022-05-24T11:49:31+00:00" + "time": "2022-11-03T14:55:06+00:00" }, { "name": "symfony/process", - "version": "v5.4.11", + "version": "v5.4.19", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "6e75fe6874cbc7e4773d049616ab450eff537bf1" + "reference": "c5ba874c9b636dbccf761e22ce750e88ec3f55e1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/6e75fe6874cbc7e4773d049616ab450eff537bf1", - "reference": "6e75fe6874cbc7e4773d049616ab450eff537bf1", + "url": "https://api.github.com/repos/symfony/process/zipball/c5ba874c9b636dbccf761e22ce750e88ec3f55e1", + "reference": "c5ba874c9b636dbccf761e22ce750e88ec3f55e1", "shasum": "" }, "require": { @@ -4572,7 +4579,7 @@ "description": "Executes commands in sub-processes", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/process/tree/v5.4.11" + "source": "https://github.com/symfony/process/tree/v5.4.19" }, "funding": [ { @@ -4588,7 +4595,7 @@ "type": "tidelift" } ], - "time": "2022-06-27T16:58:25+00:00" + "time": "2023-01-01T08:32:19+00:00" }, { "name": "symfony/service-contracts", @@ -4675,16 +4682,16 @@ }, { "name": "symfony/stopwatch", - "version": "v5.4.13", + "version": "v5.4.19", "source": { "type": "git", "url": "https://github.com/symfony/stopwatch.git", - "reference": "6df7a3effde34d81717bbef4591e5ffe32226d69" + "reference": "bd2b066090fd6a67039371098fa25a84cb2679ec" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/stopwatch/zipball/6df7a3effde34d81717bbef4591e5ffe32226d69", - "reference": "6df7a3effde34d81717bbef4591e5ffe32226d69", + "url": "https://api.github.com/repos/symfony/stopwatch/zipball/bd2b066090fd6a67039371098fa25a84cb2679ec", + "reference": "bd2b066090fd6a67039371098fa25a84cb2679ec", "shasum": "" }, "require": { @@ -4717,7 +4724,7 @@ "description": "Provides a way to profile code", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/stopwatch/tree/v5.4.13" + "source": "https://github.com/symfony/stopwatch/tree/v5.4.19" }, "funding": [ { @@ -4733,20 +4740,20 @@ "type": "tidelift" } ], - "time": "2022-09-28T13:19:49+00:00" + "time": "2023-01-01T08:32:19+00:00" }, { "name": "symfony/string", - "version": "v5.4.14", + "version": "v5.4.19", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "089e7237497fae7a9c404d0c3aeb8db3254733e4" + "reference": "0a01071610fd861cc160dfb7e2682ceec66064cb" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/089e7237497fae7a9c404d0c3aeb8db3254733e4", - "reference": "089e7237497fae7a9c404d0c3aeb8db3254733e4", + "url": "https://api.github.com/repos/symfony/string/zipball/0a01071610fd861cc160dfb7e2682ceec66064cb", + "reference": "0a01071610fd861cc160dfb7e2682ceec66064cb", "shasum": "" }, "require": { @@ -4803,7 +4810,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v5.4.14" + "source": "https://github.com/symfony/string/tree/v5.4.19" }, "funding": [ { @@ -4819,20 +4826,20 @@ "type": "tidelift" } ], - "time": "2022-10-05T15:16:54+00:00" + "time": "2023-01-01T08:32:19+00:00" }, { "name": "symfony/yaml", - "version": "v5.4.14", + "version": "v5.4.19", "source": { "type": "git", "url": "https://github.com/symfony/yaml.git", - "reference": "e83fe9a72011f07c662da46a05603d66deeeb487" + "reference": "71c05db20cb9b54d381a28255f17580e2b7e36a5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/yaml/zipball/e83fe9a72011f07c662da46a05603d66deeeb487", - "reference": "e83fe9a72011f07c662da46a05603d66deeeb487", + "url": "https://api.github.com/repos/symfony/yaml/zipball/71c05db20cb9b54d381a28255f17580e2b7e36a5", + "reference": "71c05db20cb9b54d381a28255f17580e2b7e36a5", "shasum": "" }, "require": { @@ -4878,7 +4885,7 @@ "description": "Loads and dumps YAML files", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/yaml/tree/v5.4.14" + "source": "https://github.com/symfony/yaml/tree/v5.4.19" }, "funding": [ { @@ -4894,7 +4901,7 @@ "type": "tidelift" } ], - "time": "2022-10-03T15:15:50+00:00" + "time": "2023-01-10T18:51:14+00:00" }, { "name": "theseer/tokenizer", @@ -4999,16 +5006,16 @@ }, { "name": "wp-phpunit/wp-phpunit", - "version": "6.0.2", + "version": "6.1.1", "source": { "type": "git", "url": "https://github.com/wp-phpunit/wp-phpunit.git", - "reference": "88c786f68c6abe1061f9e40f5e8b299e41a50287" + "reference": "49521597fa525f762a50a4a6d22ed180839519fd" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-phpunit/wp-phpunit/zipball/88c786f68c6abe1061f9e40f5e8b299e41a50287", - "reference": "88c786f68c6abe1061f9e40f5e8b299e41a50287", + "url": "https://api.github.com/repos/wp-phpunit/wp-phpunit/zipball/49521597fa525f762a50a4a6d22ed180839519fd", + "reference": "49521597fa525f762a50a4a6d22ed180839519fd", "shasum": "" }, "type": "library", @@ -5043,20 +5050,20 @@ "issues": "https://github.com/wp-phpunit/issues", "source": "https://github.com/wp-phpunit/wp-phpunit" }, - "time": "2022-08-30T21:14:52+00:00" + "time": "2022-11-02T12:52:44+00:00" }, { "name": "yoast/phpunit-polyfills", - "version": "1.0.3", + "version": "1.0.4", "source": { "type": "git", "url": "https://github.com/Yoast/PHPUnit-Polyfills.git", - "reference": "5ea3536428944955f969bc764bbe09738e151ada" + "reference": "3c621ff5429d2b1ff96dc5808ad6cde99d31ea4c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Yoast/PHPUnit-Polyfills/zipball/5ea3536428944955f969bc764bbe09738e151ada", - "reference": "5ea3536428944955f969bc764bbe09738e151ada", + "url": "https://api.github.com/repos/Yoast/PHPUnit-Polyfills/zipball/3c621ff5429d2b1ff96dc5808ad6cde99d31ea4c", + "reference": "3c621ff5429d2b1ff96dc5808ad6cde99d31ea4c", "shasum": "" }, "require": { @@ -5064,7 +5071,7 @@ "phpunit/phpunit": "^4.8.36 || ^5.7.21 || ^6.0 || ^7.0 || ^8.0 || ^9.0" }, "require-dev": { - "yoast/yoastcs": "^2.2.0" + "yoast/yoastcs": "^2.2.1" }, "type": "library", "extra": { @@ -5104,7 +5111,7 @@ "issues": "https://github.com/Yoast/PHPUnit-Polyfills/issues", "source": "https://github.com/Yoast/PHPUnit-Polyfills" }, - "time": "2021-11-23T01:37:03+00:00" + "time": "2022-11-16T09:07:52+00:00" }, { "name": "yosymfony/resource-watcher", @@ -5186,5 +5193,5 @@ "platform-overrides": { "php": "7.4" }, - "plugin-api-version": "2.3.0" + "plugin-api-version": "2.1.0" } From 4bfb2ec81163490d592338959e86a36c3b943088 Mon Sep 17 00:00:00 2001 From: Dion Hulse Date: Fri, 17 Feb 2023 12:52:23 +1000 Subject: [PATCH 010/130] Add unit tests for Two_Factor_Provider::get_code(). (#522) * Add unit tests for Two_Factor_Provider::get_code(). * Add a test that validates an array of characters results in the correct character output * Explicitly check the length of the generated codes, and add a test for a string input of valid characters. --------- Co-authored-by: Ian Dunn --- providers/class-two-factor-provider.php | 2 +- tests/providers/class-two-factor-provider.php | 37 +++++++++++++++++++ 2 files changed, 38 insertions(+), 1 deletion(-) create mode 100644 tests/providers/class-two-factor-provider.php diff --git a/providers/class-two-factor-provider.php b/providers/class-two-factor-provider.php index a2f9be06..59d65a33 100644 --- a/providers/class-two-factor-provider.php +++ b/providers/class-two-factor-provider.php @@ -89,7 +89,7 @@ abstract public function is_available_for_user( $user ); * @param string|array $chars Valid auth code characters. * @return string */ - public function get_code( $length = 8, $chars = '1234567890' ) { + public static function get_code( $length = 8, $chars = '1234567890' ) { $code = ''; if ( is_array( $chars ) ) { $chars = implode( '', $chars ); diff --git a/tests/providers/class-two-factor-provider.php b/tests/providers/class-two-factor-provider.php new file mode 100644 index 00000000..93024544 --- /dev/null +++ b/tests/providers/class-two-factor-provider.php @@ -0,0 +1,37 @@ +assertEquals( '111', $code ); + + $code = Two_Factor_Provider::get_code( 8, '1' ); + $this->assertEquals( '11111111', $code ); + + $code = Two_Factor_Provider::get_code( 8, 'A' ); + $this->assertEquals( 'AAAAAAAA', $code ); + + $code = Two_Factor_Provider::get_code( 30, array( 'A', 'B', 'C' ) ); + $this->assertSame( 1, preg_match( '/^[ABC]{30}$/', $code ) ); + + $code = Two_Factor_Provider::get_code( 30, 'DEF' ); + $this->assertSame( 1, preg_match( '/^[DEF]{30}$/', $code ) ); + + $code = Two_Factor_Provider::get_code( 8 ); + $this->assertEquals( 8, strlen( $code ) ); + } +} From 8df59407435c7d23ae1f88e7653f10236a811de3 Mon Sep 17 00:00:00 2001 From: Ian Dunn Date: Wed, 15 Feb 2023 12:09:36 -0800 Subject: [PATCH 011/130] Tests: Generate an HTML coverage report when running tests locally. This makes it convenient to check coverage locally, instead of having to go to Coveralls. --- composer.json | 4 ++-- phpunit.xml.dist | 1 + readme.md | 21 +++++++++++++++++++++ 3 files changed, 24 insertions(+), 2 deletions(-) diff --git a/composer.json b/composer.json index 0d349468..79ea5465 100644 --- a/composer.json +++ b/composer.json @@ -44,10 +44,10 @@ "scripts": { "lint": "phpcs", "lint-php8": "phpcs -p --standard=PHPCompatibilityWP --runtime-set testVersion 8.0- --extensions=php --ignore='vendor/,wordpress/,node_modules/' .", - "test": "phpunit", + "test": "php -d xdebug.mode=coverage vendor/bin/phpunit", "test:watch": [ "Composer\\Config::disableProcessTimeout", - "phpunit-watcher watch" + "phpunit-watcher watch --no-coverage" ], "format": "phpcbf" } diff --git a/phpunit.xml.dist b/phpunit.xml.dist index bf0cc436..09d13727 100644 --- a/phpunit.xml.dist +++ b/phpunit.xml.dist @@ -29,6 +29,7 @@ + diff --git a/readme.md b/readme.md index 9f0ad4bd..e0f8cb20 100644 --- a/readme.md +++ b/readme.md @@ -27,6 +27,27 @@ See `package.json` for other available scripts you might want to use during deve When you're ready, open [a pull request](https://help.github.com/articles/creating-a-pull-request-from-a-fork/) with the suggested changes. +## Testing + +### Running tests in Docker + +1. Run `npm run env start` +1. Run `npm run test` or `npm run test:watch`. + +### Running tests locally + +1. Create a MySQL database for the tests. Don't reuse an existing database, because all of the data will be deleted every time the tests are run. +1. Add the following to your `~/.bashrc`, with the values for the database you created above: + ``` + export WORDPRESS_DB_NAME=wp_tests + export WORDPRESS_DB_USER=wp_tests + export WORDPRESS_DB_PASSWORD=wp_tests + ``` +1. `source ~/.bashrc` +1. Run `composer run test` or `composer run test:watch`. + +To view the code coverage report, you can open a web browser, go to `File > Open file...`, and then select `{path to two-factor}/tests/logs/html/index.html`. + ## Deployments Deployments [to WP.org plugin repository](https://wordpress.org/plugins/two-factor/) are handled automatically by the GitHub action [.github/workflows/deploy.yml](.github/workflows/deploy.yml). All merges to the `master` branch are commited to the [`trunk` directory](https://plugins.trac.wordpress.org/browser/two-factor/trunk) while all [Git tags](https://github.com/WordPress/two-factor/tags) are pushed as versioned releases [under the `tags` directory](https://plugins.trac.wordpress.org/browser/two-factor/tags). From 183349263d97c9c6d8c4d17bbd1a55cf29cdb381 Mon Sep 17 00:00:00 2001 From: Ian Dunn Date: Fri, 24 Feb 2023 10:48:57 -0800 Subject: [PATCH 012/130] Core: Reset compromised passwords after 2FA failures (#482) After a reasonable number of 2nd-factor attempts, it's safe to assume that the password been compromised and an attacker is trying to brute force the 2nd factor. The existing rate limit mitigates brute force attempts, but many 2nd factors -- like TOTP and backup codes -- are very weak on their own, so it's not safe to give attackers unlimited attempts. Since we know that the password is compromised, we have the responsibility to reset it and inform the user. That will guarantee that attackers can't brute force it (unless they compromise the new password). --- class-two-factor-core.php | 207 +++++++++++++++++++++++++++++++- tests/bootstrap.php | 2 + tests/class-two-factor-core.php | 179 +++++++++++++++++++++++++++ 3 files changed, 387 insertions(+), 1 deletion(-) diff --git a/class-two-factor-core.php b/class-two-factor-core.php index 9d57c16d..d4cead04 100644 --- a/class-two-factor-core.php +++ b/class-two-factor-core.php @@ -49,6 +49,13 @@ class Two_Factor_Core { */ const USER_FAILED_LOGIN_ATTEMPTS_KEY = '_two_factor_failed_login_attempts'; + /** + * The user meta key to store whether or not the password was reset. + * + * @var string + */ + const USER_PASSWORD_WAS_RESET_KEY = '_two_factor_password_was_reset'; + /** * URL query paramater used for our custom actions. * @@ -81,7 +88,7 @@ class Two_Factor_Core { /** * Set up filters and actions. * - * @param object $compat A compaitbility later for plugins. + * @param object $compat A compatibility layer for plugins. * * @since 0.1-dev */ @@ -89,6 +96,8 @@ public static function add_hooks( $compat ) { add_action( 'plugins_loaded', array( __CLASS__, 'load_textdomain' ) ); add_action( 'init', array( __CLASS__, 'get_providers' ) ); add_action( 'wp_login', array( __CLASS__, 'wp_login' ), 10, 2 ); + add_filter( 'wp_login_errors', array( __CLASS__, 'maybe_show_reset_password_notice' ) ); + add_action( 'after_password_reset', array( __CLASS__, 'clear_password_reset_notice' ) ); add_action( 'login_form_validate_2fa', array( __CLASS__, 'login_form_validate_2fa' ) ); add_action( 'login_form_backup_2fa', array( __CLASS__, 'backup_2fa' ) ); add_action( 'show_user_profile', array( __CLASS__, 'user_two_factor_options' ) ); @@ -639,6 +648,47 @@ public static function maybe_show_last_login_failure_notice( $user ) { } } + /** + * Show the password reset notice if the user's password was reset. + * + * They were also sent an email notification in `send_password_reset_email()`, but email sent from a typical + * web server is not reliable enough to trust completely. + * + * @param WP_Error $errors + */ + public static function maybe_show_reset_password_notice( $errors ) { + if ( 'incorrect_password' !== $errors->get_error_code() ) { + return $errors; + } + + $attempted_user = get_user_by( 'login', $_POST['log'] ); + $password_was_reset = get_user_meta( $attempted_user->ID, self::USER_PASSWORD_WAS_RESET_KEY, true ); + + if ( ! $password_was_reset ) { + return $errors; + } + + $errors->remove( 'incorrect_password' ); + $errors->add( + 'two_factor_password_reset', + sprintf( + __( 'Your password was reset because of too many failed Two Factor attempts. You will need to create a new password to regain access. Please check your email for more information.', 'two-factor' ), + esc_url( add_query_arg( 'action', 'lostpassword', wp_login_url() ) ) + ) + ); + + return $errors; + } + + /** + * Clear the password reset notice after the user resets their password. + * + * @param WP_User $user + */ + public static function clear_password_reset_notice( $user ) { + delete_user_meta( $user->ID, self::USER_PASSWORD_WAS_RESET_KEY ); + } + /** * Generates the html form for the second step of the authentication process. * @@ -1057,6 +1107,13 @@ public static function login_form_validate_2fa() { // Store the number of failed login attempts. update_user_meta( $user->ID, self::USER_FAILED_LOGIN_ATTEMPTS_KEY, 1 + (int) get_user_meta( $user->ID, self::USER_FAILED_LOGIN_ATTEMPTS_KEY, true ) ); + if ( self::should_reset_password( $user->ID ) ) { + self::reset_compromised_password( $user ); + self::send_password_reset_emails( $user ); + self::show_password_reset_error(); + exit; + } + $login_nonce = self::create_login_nonce( $user->ID ); if ( ! $login_nonce ) { wp_die( esc_html__( 'Failed to create a login nonce.', 'two-factor' ) ); @@ -1116,6 +1173,154 @@ public static function login_form_validate_2fa() { exit; } + /** + * Determine if the user's password should be reset. + * + * @param int $user_id + * + * @return bool + */ + public static function should_reset_password( $user_id ) { + $failed_attempts = (int) get_user_meta( $user_id, self::USER_FAILED_LOGIN_ATTEMPTS_KEY, true ); + + /** + * Filters the maximum number of failed attempts on a 2nd factor before the user's + * password will be reset. After a reasonable number of attempts, it's safe to assume + * that the password has been compromised and an attacker is trying to brute force the 2nd + * factor. + * + * ⚠️ `get_user_time_delay()` mitigates brute force attempts, but many 2nd factors -- + * like TOTP and backup codes -- are very weak on their own, so it's not safe to give + * attackers unlimited attempts. Setting this to a very large number is strongly + * discouraged. + * + * @param int $limit The number of attempts before the password is reset. + */ + $failed_attempt_limit = apply_filters( 'two_factor_failed_attempt_limit', 30 ); + + return $failed_attempts >= $failed_attempt_limit; + } + + /** + * Reset a compromised password. + * + * If we know that the the password is compromised, we have the responsibility to reset it and inform the + * user. `get_user_time_delay()` mitigates brute force attempts, but this acts as an extra layer of defense + * which guarantees that attackers can't brute force it (unless they compromise the new password). + * + * @param WP_User $user The user who failed to login + */ + public static function reset_compromised_password( $user ) { + // Unhook because `wp_password_change_notification()` wouldn't notify the site admin when + // their password is compromised. + remove_action( 'after_password_reset', 'wp_password_change_notification' ); + reset_password( $user, wp_generate_password( 25 ) ); + update_user_meta( $user->ID, self::USER_PASSWORD_WAS_RESET_KEY, true ); + add_action( 'after_password_reset', 'wp_password_change_notification' ); + + self::delete_login_nonce( $user->ID ); + delete_user_meta( $user->ID, self::USER_RATE_LIMIT_KEY ); + delete_user_meta( $user->ID, self::USER_FAILED_LOGIN_ATTEMPTS_KEY ); + } + + /** + * Notify the user and admin that a password was reset for being compromised. + * + * @param WP_User $user The user whose password should be reset + */ + public static function send_password_reset_emails( $user ) { + self::notify_user_password_reset( $user ); + + /** + * Filters whether or not to email the site admin when a user's password has been + * compromised and reset. + * + * @param bool $reset `true` to notify the admin, `false` to not notify them. + */ + $notify_admin = apply_filters( 'two_factor_notify_admin_user_password_reset', true ); + $admin_email = get_option( 'admin_email' ); + + if ( $notify_admin && $admin_email !== $user->user_email ) { + self::notify_admin_user_password_reset( $user ); + } + } + + /** + * Notify the user that their password has been compromised and reset. + * + * @param WP_User $user The user to notify + * + * @return bool `true` if the email was sent, `false` if it failed. + */ + public static function notify_user_password_reset( $user ) { + $user_message = sprintf( + 'Hello %1$s, an unusually high number of failed login attempts have been detected on your account at %2$s. + + These attempts successfully entered your password, and were only blocked because they failed to enter your second authentication factor. Despite not being able to access your account, this behavior indicates that the attackers have compromised your password. The most common reasons for this are that your password was easy to guess, or was reused on another site which has been compromised. + + To protect your account, your password has been reset, and you will need to create a new one. For advice on setting a strong password, please read %3$s + + To pick a new password, please visit %4$s + + This is an automated notification. If you would like to speak to a site administrator, please contact them directly.', + esc_html( $user->user_login ), + home_url(), + 'https://wordpress.org/documentation/article/password-best-practices/', + esc_url( add_query_arg( 'action', 'lostpassword', wp_login_url() ) ), + ); + $user_message = str_replace( "\t", '', $user_message ); + + return wp_mail( $user->user_email, 'Your password was compromised and has been reset', $user_message ); + } + + /** + * Notify the admin that a user's password was compromised and reset. + * + * @param WP_User $user The user whose password was reset. + * + * @return bool `true` if the email was sent, `false` if it failed. + */ + public static function notify_admin_user_password_reset( $user ) { + $admin_email = get_option( 'admin_email' ); + $subject = sprintf( 'Compromised password for %s has been reset', esc_html( $user->user_login ) ); + + $message = sprintf( + 'Hello, this is a notice from the Two Factor plugin to inform you that an unusually high number of failed login attempts have been detected on the %1$s account (ID %2$d). + + Those attempts successfully entered the user\'s password, and were only blocked because they entered invalid second authentication factors. + + To protect their account, the password has automatically been reset, and they have been notified that they will need to create a new one. + + If you do not wish to receive these notifications, you can disable them with the `two_factor_notify_admin_user_password_reset` filter. See %3$s for more information. + + Thank you', + esc_html( $user->user_login ), + $user->ID, + 'https://developer.wordpress.org/plugins/hooks/' + ); + $message = str_replace( "\t", '', $message ); + + return wp_mail( $admin_email, $subject, $message ); + } + + /** + * Show the password reset error when on the login screen. + */ + public static function show_password_reset_error() { + $error = new WP_Error( + 'too_many_attempts', + sprintf( + '

%s

+

%s

', + __( 'There have been too many failed two-factor authentication attempts, which often indicates that the password has been compromised. The password has been reset in order to protect the account.', 'two-factor' ), + __( 'If you are the owner of this account, please check your email for instructions on regaining access.', 'two-factor' ) + ) + ); + + login_header( __( 'Password Reset', 'two-factor' ), '', $error ); + login_footer(); + } + /** * Filter the columns on the Users admin screen. * diff --git a/tests/bootstrap.php b/tests/bootstrap.php index f3d2ff66..88447b08 100644 --- a/tests/bootstrap.php +++ b/tests/bootstrap.php @@ -23,6 +23,8 @@ // Give access to tests_add_filter() function. require_once getenv( 'WP_PHPUNIT__DIR' ) . '/includes/functions.php'; +require_once dirname( __DIR__ ) . '/includes/function.login-header.php'; +require_once dirname( __DIR__ ) . '/includes/function.login-footer.php'; // Activate the plugin. tests_add_filter( diff --git a/tests/class-two-factor-core.php b/tests/class-two-factor-core.php index 1ee3dc5a..7186bfca 100644 --- a/tests/class-two-factor-core.php +++ b/tests/class-two-factor-core.php @@ -562,4 +562,183 @@ public function test_maybe_show_last_login_failure_notice() { $this->assertStringContainsString( '5 times', $contents ); $this->assertStringContainsString( human_time_diff( $five_hours_ago ), $contents ); } + + /** + * @covers Two_Factor_Core::maybe_show_reset_password_notice() + */ + public function test_no_reset_notice_when_no_errors() { + $errors = new WP_Error(); + Two_Factor_Core::maybe_show_reset_password_notice( $errors ); + $this->assertCount( 0, $errors->get_error_codes() ); + } + + /** + * @covers Two_Factor_Core::maybe_show_reset_password_notice() + */ + public function test_no_reset_notice_when_different_error() { + $errors = new WP_Error( 'foo_bar', 'Foo Bar' ); + Two_Factor_Core::maybe_show_reset_password_notice( $errors ); + $this->assertCount( 1, $errors->get_error_codes() ); + $this->assertSame( 'foo_bar', $errors->get_error_code() ); + } + + /** + * @covers Two_Factor_Core::maybe_show_reset_password_notice() + */ + public function test_no_reset_notice_when_password_not_reset() { + $user = self::factory()->user->create_and_get(); + $errors = new WP_Error( 'incorrect_password', 'Incorrect password' ); + $_POST['log'] = $user->user_login; + + Two_Factor_Core::maybe_show_reset_password_notice( $errors ); + $this->assertCount( 1, $errors->get_error_codes() ); + $this->assertSame( 'incorrect_password', $errors->get_error_code() ); + } + + /** + * @covers Two_Factor_Core::maybe_show_reset_password_notice() + */ + public function test_reset_notice_when_password_was_reset() { + $user = self::factory()->user->create_and_get(); + $errors = new WP_Error( 'incorrect_password', 'Incorrect password' ); + $_POST['log'] = $user->user_login; + + update_user_meta( $user->ID, Two_Factor_Core::USER_PASSWORD_WAS_RESET_KEY, true ); + Two_Factor_Core::maybe_show_reset_password_notice( $errors ); + $this->assertCount( 1, $errors->get_error_codes() ); + $this->assertSame( 'two_factor_password_reset', $errors->get_error_code() ); + } + + /** + * @covers Two_Factor_Core::clear_password_reset_notice() + */ + public function test_clear_password_reset_notice() { + $user = self::factory()->user->create_and_get(); + update_user_meta( $user->ID, Two_Factor_Core::USER_PASSWORD_WAS_RESET_KEY, true ); + + Two_Factor_Core::clear_password_reset_notice( $user ); + $this->assertEmpty( get_user_meta( $user->ID, Two_Factor_Core::USER_PASSWORD_WAS_RESET_KEY, true ) ); + } + + /** + * @covers Two_Factor_Core::should_reset_password() + */ + public function test_should_reset_password() { + $user = self::factory()->user->create_and_get(); + + // Test default limit. + update_user_meta( $user->ID, Two_Factor_Core::USER_FAILED_LOGIN_ATTEMPTS_KEY, 29 ); + $this->assertFalse( Two_Factor_Core::should_reset_password( $user->ID ) ); + update_user_meta( $user->ID, Two_Factor_Core::USER_FAILED_LOGIN_ATTEMPTS_KEY, 30 ); + $this->assertTrue( Two_Factor_Core::should_reset_password( $user->ID ) ); + update_user_meta( $user->ID, Two_Factor_Core::USER_FAILED_LOGIN_ATTEMPTS_KEY, 31 ); + $this->assertTrue( Two_Factor_Core::should_reset_password( $user->ID ) ); + + // Test filtered limit. + $strict_limit = function() { + return 7; + }; + + add_filter( 'two_factor_failed_attempt_limit', $strict_limit ); + update_user_meta( $user->ID, Two_Factor_Core::USER_FAILED_LOGIN_ATTEMPTS_KEY, 6 ); + $this->assertFalse( Two_Factor_Core::should_reset_password( $user->ID ) ); + update_user_meta( $user->ID, Two_Factor_Core::USER_FAILED_LOGIN_ATTEMPTS_KEY, 7 ); + $this->assertTrue( Two_Factor_Core::should_reset_password( $user->ID ) ); + update_user_meta( $user->ID, Two_Factor_Core::USER_FAILED_LOGIN_ATTEMPTS_KEY, 8 ); + $this->assertTrue( Two_Factor_Core::should_reset_password( $user->ID ) ); + remove_filter( 'two_factor_failed_attempt_limit', $strict_limit ); + } + + /** + * Resetting a password should change the password and notify the user and admin. + * + * @covers Two_Factor_Core::reset_compromised_password() + */ + public function test_reset_compromised_password() { + $user = self::factory()->user->create_and_get(); + $old_hash = $user->user_pass; + + // Simulate entered password but failed 2FA too many times. + Two_Factor_Core::create_login_nonce( $user->ID ); + update_user_meta( $user->ID, Two_Factor_Core::USER_RATE_LIMIT_KEY, time() ); + update_user_meta( $user->ID, Two_Factor_Core::USER_FAILED_LOGIN_ATTEMPTS_KEY, 30 ); + + Two_Factor_Core::reset_compromised_password( $user ); + $user = get_user_by( 'id', $user->ID ); + $this->assertNotSame( $old_hash, $user->user_pass ); + $this->assertSame( '1', get_user_meta( $user->ID, Two_Factor_Core::USER_PASSWORD_WAS_RESET_KEY, true ) ); + $this->assertEmpty( get_user_meta( $user->ID, Two_Factor_Core::USER_META_NONCE_KEY, true ) ); + $this->assertEmpty( get_user_meta( $user->ID, Two_Factor_Core::USER_RATE_LIMIT_KEY ) ); + $this->assertEmpty( get_user_meta( $user->ID, Two_Factor_Core::USER_FAILED_LOGIN_ATTEMPTS_KEY ) ); + } + + /** + * @covers Two_Factor_Core::send_password_reset_emails() + * @covers Two_Factor_Core::notify_user_password_reset() + * @covers Two_Factor_Core::notify_admin_user_password_reset() + */ + public function test_both_password_reset_notifications_sent() { + $user = self::factory()->user->create_and_get(); + $mailer = tests_retrieve_phpmailer_instance(); + $admin_email = get_option( 'admin_email' ); + + Two_Factor_Core::send_password_reset_emails( $user ); + + $this->assertCount( 2, $mailer->mock_sent ); + $this->assertContains( $user->user_email, $mailer->mock_sent[0]['to'][0] ); + $this->assertContains( $admin_email, $mailer->mock_sent[1]['to'][0] ); + + reset_phpmailer_instance(); + } + + /** + * @covers Two_Factor_Core::send_password_reset_emails() + * @covers Two_Factor_Core::notify_user_password_reset() + */ + public function test_single_email_sent_when_admin_password_reset() { + $admin = get_user_by( 'id', 1 ); + $mailer = tests_retrieve_phpmailer_instance(); + $admin_email = get_option( 'admin_email' ); + + Two_Factor_Core::send_password_reset_emails( $admin ); + + $this->assertSame( $admin->user_email, $admin_email ); + $this->assertCount( 1, $mailer->mock_sent ); + $this->assertContains( $admin_email, $mailer->mock_sent[0]['to'][0] ); + $this->assertStringStartsWith( 'Your password was compromised', $mailer->mock_sent[0]['subject'] ); + + reset_phpmailer_instance(); + } + + /** + * @covers Two_Factor_Core::send_password_reset_emails() + * @covers Two_Factor_Core::notify_user_password_reset() + */ + public function test_dont_notify_admin_when_filter_disabled() { + $user = self::factory()->user->create_and_get(); + $mailer = tests_retrieve_phpmailer_instance(); + $admin_email = get_option( 'admin_email' ); + + add_filter( 'two_factor_notify_admin_user_password_reset', '__return_false' ); + Two_Factor_Core::send_password_reset_emails( $user ); + remove_filter( 'two_factor_notify_admin_user_password_reset', '__return_false' ); + + $this->assertNotSame( $user->user_email, $admin_email ); + $this->assertCount( 1, $mailer->mock_sent ); + $this->assertContains( $user->user_email, $mailer->mock_sent[0]['to'][0] ); + $this->assertNotContains( $admin_email, $mailer->mock_sent[0]['to'][0] ); + + reset_phpmailer_instance(); + } + + /** + * @covers Two_Factor_Core::show_password_reset_error + */ + public function test_show_password_reset_error() { + ob_start(); + Two_Factor_Core::show_password_reset_error(); + $contents = ob_get_clean(); + + $this->assertStringContainsString( 'check your email for instructions on regaining access', $contents ); + } } From 26ee8986cd60f1329b0a4761e740298985c04790 Mon Sep 17 00:00:00 2001 From: Dion Hulse Date: Mon, 27 Feb 2023 15:50:52 +1000 Subject: [PATCH 013/130] Add a TOTP Issuer filter, Document the other TOTP Filters (#530) * Document the TOTP Filters. * Add a issuer filter. --- providers/class-two-factor-totp.php | 40 +++++++++++++++++++++++------ 1 file changed, 32 insertions(+), 8 deletions(-) diff --git a/providers/class-two-factor-totp.php b/providers/class-two-factor-totp.php index 01d4aad0..295e5009 100644 --- a/providers/class-two-factor-totp.php +++ b/providers/class-two-factor-totp.php @@ -213,23 +213,47 @@ public function rest_setup_totp( $request ) { * @return string */ public static function generate_qr_code_url( $user, $secret_key ) { - $site_name = get_bloginfo( 'name', 'display' ); + $issuer = get_bloginfo( 'name', 'display' ); - // Must follow TOTP format for a "label": - // https://github.com/google/google-authenticator/wiki/Key-Uri-Format#label - // Do not URL encode, that will be done later. - $totp_title = apply_filters( 'two_factor_totp_title', $site_name . ':' . $user->user_login, $user ); + /** + * Filter the Issuer for the TOTP. + * + * Must follow the TOTP format for a "issuer". Do not URL Encode. + * + * @see https://github.com/google/google-authenticator/wiki/Key-Uri-Format#issuer + * @param string $issuer The issuer for TOTP. + */ + $issuer = apply_filters( 'two_factor_totp_issuer', $issuer ); + + /** + * Filter the Label for the TOTP. + * + * Must follow the TOTP format for a "label". Do not URL Encode. + * + * @see https://github.com/google/google-authenticator/wiki/Key-Uri-Format#label + * @param string $totp_title The label for the TOTP. + * @param WP_User $user The User object. + * @param string $issuer The issuer of the TOTP. This should be the prefix of the result. + */ + $totp_title = apply_filters( 'two_factor_totp_title', $issuer . ':' . $user->user_login, $user, $issuer ); $totp_url = add_query_arg( array( 'secret' => rawurlencode( $secret_key ), - 'issuer' => rawurlencode( $site_name ), + 'issuer' => rawurlencode( $issuer ), ), 'otpauth://totp/' . rawurlencode( $totp_title ) ); - // Must follow TOTP format: - // https://github.com/google/google-authenticator/wiki/Key-Uri-Format + /** + * Filter the TOTP generated URL. + * + * Must follow the TOTP format. Do not URL Encode. + * + * @see https://github.com/google/google-authenticator/wiki/Key-Uri-Format + * @param string $totp_url The TOTP URL. + * @param WP_User $user The user object. + */ $totp_url = apply_filters( 'two_factor_totp_url', $totp_url, $user ); $totp_url = esc_url( $totp_url, array( 'otpauth' ) ); From 5ef4ccadbe1c55f67b3b8addce9ab966a55ea87a Mon Sep 17 00:00:00 2001 From: Dion Hulse Date: Tue, 28 Feb 2023 13:07:25 +1000 Subject: [PATCH 014/130] Support login-by-email in maybe_show_reset_password_notice(). (#532) --- class-two-factor-core.php | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/class-two-factor-core.php b/class-two-factor-core.php index d4cead04..adb98114 100644 --- a/class-two-factor-core.php +++ b/class-two-factor-core.php @@ -661,7 +661,20 @@ public static function maybe_show_reset_password_notice( $errors ) { return $errors; } - $attempted_user = get_user_by( 'login', $_POST['log'] ); + if ( ! isset( $_POST['log'] ) ) { + return $errors; + } + + $user_name = sanitize_user( wp_unslash( $_POST['log'] ) ); + $attempted_user = get_user_by( 'login', $user_name ); + if ( ! $attempted_user && str_contains( $user_name, '@' ) ) { + $attempted_user = get_user_by( 'email', $user_name ); + } + + if ( ! $attempted_user ) { + return $errors; + } + $password_was_reset = get_user_meta( $attempted_user->ID, self::USER_PASSWORD_WAS_RESET_KEY, true ); if ( ! $password_was_reset ) { From 917f67a9a5b100e417b30db5609403329961851a Mon Sep 17 00:00:00 2001 From: Dion Hulse Date: Thu, 2 Mar 2023 13:55:08 +1000 Subject: [PATCH 015/130] Switch to using `$_REQUEST` directly instead of `filter_input()` and remove `backup_2fa` (#527) * Remove `filter_input()` in preference for $_REQUEST for future testability. * Remove the need for the backup_2fa route * Remove sanitize_key() and sanitize_text_field() from input variables, these are not fields that need sanitization. Either they match an expected value or they don't. * Don't process 2FA attempts unless it's a post request. --- class-two-factor-core.php | 70 +++++++++++---------------------- tests/class-two-factor-core.php | 7 ---- 2 files changed, 24 insertions(+), 53 deletions(-) diff --git a/class-two-factor-core.php b/class-two-factor-core.php index adb98114..30ecb860 100644 --- a/class-two-factor-core.php +++ b/class-two-factor-core.php @@ -99,7 +99,6 @@ public static function add_hooks( $compat ) { add_filter( 'wp_login_errors', array( __CLASS__, 'maybe_show_reset_password_notice' ) ); add_action( 'after_password_reset', array( __CLASS__, 'clear_password_reset_notice' ) ); add_action( 'login_form_validate_2fa', array( __CLASS__, 'login_form_validate_2fa' ) ); - add_action( 'login_form_backup_2fa', array( __CLASS__, 'backup_2fa' ) ); add_action( 'show_user_profile', array( __CLASS__, 'user_two_factor_options' ) ); add_action( 'edit_user_profile', array( __CLASS__, 'user_two_factor_options' ) ); add_action( 'personal_options_update', array( __CLASS__, 'user_two_factor_options_update' ) ); @@ -277,7 +276,11 @@ public static function get_user_update_action_url( $user_id, $action ) { * @return boolean */ public static function is_valid_user_action( $user_id, $action ) { - $request_nonce = filter_input( INPUT_GET, self::USER_SETTINGS_ACTION_NONCE_QUERY_ARG, FILTER_CALLBACK, array( 'options' => 'sanitize_key' ) ); + $request_nonce = isset( $_REQUEST[ self::USER_SETTINGS_ACTION_NONCE_QUERY_ARG ] ) ? wp_unslash( $_REQUEST[ self::USER_SETTINGS_ACTION_NONCE_QUERY_ARG ] ) : ''; + + if ( ! $user_id || ! $action || ! $request_nonce ) { + return false; + } return wp_verify_nonce( $request_nonce, @@ -310,10 +313,10 @@ public static function current_user_being_edited() { * @return void */ public static function trigger_user_settings_action() { - $action = filter_input( INPUT_GET, self::USER_SETTINGS_ACTION_QUERY_VAR, FILTER_CALLBACK, array( 'options' => 'sanitize_key' ) ); + $action = isset( $_REQUEST[ self::USER_SETTINGS_ACTION_QUERY_VAR ] ) ? wp_unslash( $_REQUEST[ self::USER_SETTINGS_ACTION_QUERY_VAR ] ) : ''; $user_id = self::current_user_being_edited(); - if ( ! empty( $action ) && self::is_valid_user_action( $user_id, $action ) ) { + if ( self::is_valid_user_action( $user_id, $action ) ) { /** * This action is triggered when a valid Two Factor settings * action is detected and it passes the nonce validation. @@ -586,43 +589,6 @@ public static function show_two_factor_login( $user ) { self::login_html( $user, $login_nonce['key'], $redirect_to ); } - /** - * Display the Backup code 2fa screen. - * - * @since 0.1-dev - */ - public static function backup_2fa() { - $wp_auth_id = filter_input( INPUT_GET, 'wp-auth-id', FILTER_SANITIZE_NUMBER_INT ); - $nonce = filter_input( INPUT_GET, 'wp-auth-nonce', FILTER_CALLBACK, array( 'options' => 'sanitize_key' ) ); - $provider = filter_input( INPUT_GET, 'provider', FILTER_CALLBACK, array( 'options' => 'sanitize_text_field' ) ); - - if ( ! $wp_auth_id || ! $nonce || ! $provider ) { - return; - } - - $user = get_userdata( $wp_auth_id ); - if ( ! $user ) { - return; - } - - if ( true !== self::verify_login_nonce( $user->ID, $nonce ) ) { - wp_safe_redirect( home_url() ); - exit; - } - - $providers = self::get_available_providers_for_user( $user ); - if ( isset( $providers[ $provider ] ) ) { - $provider = $providers[ $provider ]; - } else { - wp_die( esc_html__( 'Cheatin’ uh?', 'two-factor' ), 403 ); - } - - $redirect_to = filter_input( INPUT_GET, 'redirect_to', FILTER_SANITIZE_URL ); - self::login_html( $user, $nonce, $redirect_to, '', $provider ); - - exit; - } - /** * Displays a message informing the user that their account has had failed login attempts. * @@ -762,7 +728,7 @@ public static function login_html( $user, $login_nonce, $redirect_to, $error_msg $backup_provider = $backup_providers[ $backup_classname ]; $login_url = self::login_url( array( - 'action' => 'backup_2fa', + 'action' => 'validate_2fa', 'provider' => $backup_classname, 'wp-auth-id' => $user->ID, 'wp-auth-nonce' => $login_nonce, @@ -798,7 +764,7 @@ public static function login_html( $user, $login_nonce, $redirect_to, $error_msg foreach ( $backup_providers as $backup_classname => $backup_provider ) : $login_url = self::login_url( array( - 'action' => 'backup_2fa', + 'action' => 'validate_2fa', 'provider' => $backup_classname, 'wp-auth-id' => $user->ID, 'wp-auth-nonce' => $login_nonce, @@ -1046,8 +1012,10 @@ public static function is_user_rate_limited( $user ) { * @since 0.1-dev */ public static function login_form_validate_2fa() { - $wp_auth_id = filter_input( INPUT_POST, 'wp-auth-id', FILTER_SANITIZE_NUMBER_INT ); - $nonce = filter_input( INPUT_POST, 'wp-auth-nonce', FILTER_CALLBACK, array( 'options' => 'sanitize_key' ) ); + $wp_auth_id = ! empty( $_REQUEST['wp-auth-id'] ) ? absint( $_REQUEST['wp-auth-id'] ) : 0; + $nonce = ! empty( $_REQUEST['wp-auth-nonce'] ) ? wp_unslash( $_REQUEST['wp-auth-nonce'] ) : ''; + $provider = ! empty( $_REQUEST['provider'] ) ? wp_unslash( $_REQUEST['provider'] ) : false; + $is_post_request = ( 'POST' === strtoupper( $_SERVER['REQUEST_METHOD'] ) ); if ( ! $wp_auth_id || ! $nonce ) { return; @@ -1063,7 +1031,6 @@ public static function login_form_validate_2fa() { exit; } - $provider = filter_input( INPUT_POST, 'provider', FILTER_CALLBACK, array( 'options' => 'sanitize_text_field' ) ); if ( $provider ) { $providers = self::get_available_providers_for_user( $user ); if ( isset( $providers[ $provider ] ) ) { @@ -1086,6 +1053,17 @@ public static function login_form_validate_2fa() { exit; } + // If the form hasn't been submitted, just display the auth form. + if ( ! $is_post_request ) { + $login_nonce = self::create_login_nonce( $user->ID ); + if ( ! $login_nonce ) { + wp_die( esc_html__( 'Failed to create a login nonce.', 'two-factor' ) ); + } + + self::login_html( $user, $login_nonce['key'], $_REQUEST['redirect_to'], '', $provider ); + exit; + } + // Rate limit two factor authentication attempts. if ( true === self::is_user_rate_limited( $user ) ) { $time_delay = self::get_user_time_delay( $user ); diff --git a/tests/class-two-factor-core.php b/tests/class-two-factor-core.php index 7186bfca..4b4a59a2 100644 --- a/tests/class-two-factor-core.php +++ b/tests/class-two-factor-core.php @@ -113,13 +113,6 @@ public function test_add_hooks() { array( 'Two_Factor_Core', 'login_form_validate_2fa' ) ) ); - $this->assertGreaterThan( - 0, - has_action( - 'login_form_backup_2fa', - array( 'Two_Factor_Core', 'backup_2fa' ) - ) - ); } /** From 5d727214182844da9df646bae5dcdaa9f9a600e3 Mon Sep 17 00:00:00 2001 From: Dion Hulse Date: Fri, 3 Mar 2023 13:12:56 +1000 Subject: [PATCH 016/130] Be more tolerant of user input for auth codes (#518) * Add placeholder examples on authcode prompt screen. * Be more tollerant of user input, allowing for authentication apps which show the authcode as '123 456'. * TOTP: Add a unit test that validates invalid characters in the authcode do not pass, and that spaces/leading/trailing whitespace is acceptable. * Tests: Verify that Backup codes validate_authentication fails appropriately without a code. * Replace all whitespace mid-string in the authcode, and add a common function to provide the sanitization. * Tests: Add a test for Two_Factor_Provider::sanitize_code_from_request() and Two_Factor_Provider::get_code(). * Switch from input[type=tel] to input[type=text][inputmode=numeric] for Authcode inputs, add a Javascript handler to enforce numeric-only inputs. * Switch to including a space in the digit placeholder, '123 456' and auto-insert a space mid-way through. * Automatically submit the 2FA form upon the correct length code being inserted. --- class-two-factor-core.php | 42 ++++++++++++++++++- providers/class-two-factor-backup-codes.php | 8 +++- providers/class-two-factor-email.php | 8 ++-- providers/class-two-factor-provider.php | 23 ++++++++++ providers/class-two-factor-totp.php | 18 ++++---- .../class-two-factor-backup-codes.php | 12 ++++-- tests/providers/class-two-factor-provider.php | 31 ++++++++++++++ tests/providers/class-two-factor-totp.php | 27 ++++++++++++ 8 files changed, 149 insertions(+), 20 deletions(-) diff --git a/class-two-factor-core.php b/class-two-factor-core.php index 30ecb860..7a22e1ca 100644 --- a/class-two-factor-core.php +++ b/class-two-factor-core.php @@ -804,8 +804,48 @@ public static function login_html( $user, $login_nonce, $redirect_to, $error_msg #login form p.two-factor-prompt { margin-bottom: 1em; } + .input.authcode { + letter-spacing: .3em; + } + .input.authcode::placeholder { + opacity: 0.5; + } - +

- +

sanitize_code_from_request( 'two-factor-backup-code' ); + if ( ! $backup_code ) { + return false; + } + return $this->validate_code( $user, $backup_code ); } diff --git a/providers/class-two-factor-email.php b/providers/class-two-factor-email.php index b8566c11..4a5e3308 100644 --- a/providers/class-two-factor-email.php +++ b/providers/class-two-factor-email.php @@ -269,7 +269,7 @@ public function authentication_page( $user ) {

- +

@@ -313,13 +313,11 @@ public function pre_process_authentication( $user ) { * @return boolean */ public function validate_authentication( $user ) { - if ( ! isset( $user->ID ) || ! isset( $_REQUEST['two-factor-email-code'] ) ) { + $code = $this->sanitize_code_from_request( 'two-factor-email-code' ); + if ( ! isset( $user->ID ) || ! $code ) { return false; } - // Ensure there are no spaces or line breaks around the code. - $code = trim( sanitize_text_field( $_REQUEST['two-factor-email-code'] ) ); // phpcs:ignore WordPress.Security.NonceVerification.Recommended, handled by the core method already. - return $this->validate_token( $user->ID, $code ); } diff --git a/providers/class-two-factor-provider.php b/providers/class-two-factor-provider.php index 59d65a33..f7c84ecb 100644 --- a/providers/class-two-factor-provider.php +++ b/providers/class-two-factor-provider.php @@ -99,4 +99,27 @@ public static function get_code( $length = 8, $chars = '1234567890' ) { } return $code; } + + /** + * Sanitizes a numeric code to be used as an auth code. + * + * @param string $field The _REQUEST field to check for the code. + * @param int $length The valid expected length of the field. + * @return false|string Auth code on success, false if the field is not set or not expected length. + */ + public static function sanitize_code_from_request( $field, $length = 0 ) { + if ( empty( $_REQUEST[ $field ] ) ) { + return false; + } + + $code = wp_unslash( $_REQUEST[ $field ] ); // phpcs:ignore WordPress.Security.NonceVerification.Recommended, handled by the core method already. + $code = preg_replace( '/\s+/', '', $code ); + + // Maybe validate the length. + if ( $length && strlen( $code ) !== $length ) { + return false; + } + + return (string) $code; + } } diff --git a/providers/class-two-factor-totp.php b/providers/class-two-factor-totp.php index 295e5009..12a80763 100644 --- a/providers/class-two-factor-totp.php +++ b/providers/class-two-factor-totp.php @@ -176,7 +176,7 @@ public function rest_setup_totp( $request ) { $user = get_user_by( 'id', $user_id ); $key = $request['key']; - $code = $request['code']; + $code = preg_replace( '/\s+/', '', $request['code'] ); if ( ! $this->is_valid_key( $key ) ) { return new WP_Error( 'invalid_key', __( 'Invalid Two Factor Authentication secret key.', 'two-factor' ), array( 'status' => 400 ) ); @@ -338,7 +338,11 @@ public function user_two_factor_options( $user ) {

@@ -468,14 +472,12 @@ public function is_valid_key( $key ) { * @return bool Whether the user gave a valid code */ public function validate_authentication( $user ) { - if ( empty( $_REQUEST['authcode'] ) ) { + $code = $this->sanitize_code_from_request( 'authcode', self::DEFAULT_DIGIT_COUNT ); + if ( ! $code ) { return false; } - return $this->validate_code_for_user( - $user, - sanitize_text_field( $_REQUEST['authcode'] ) - ); + return $this->validate_code_for_user( $user, $code ); } /** @@ -667,7 +669,7 @@ public function authentication_page( $user ) {

- +

items = $security_keys; $u2f_list_table->prepare_items(); @@ -328,7 +328,7 @@ public static function delete_link( $item ) { public static function wp_ajax_inline_save() { check_ajax_referer( 'keyinlineeditnonce', '_inline_edit' ); - require TWO_FACTOR_DIR . 'providers/class-two-factor-fido-u2f-admin-list-table.php'; + require_once TWO_FACTOR_DIR . 'providers/class-two-factor-fido-u2f-admin-list-table.php'; $wp_list_table = new Two_Factor_FIDO_U2F_Admin_List_Table(); if ( ! isset( $_POST['keyHandle'] ) ) { diff --git a/tests/bootstrap.php b/tests/bootstrap.php index 88447b08..5afbd140 100644 --- a/tests/bootstrap.php +++ b/tests/bootstrap.php @@ -30,9 +30,9 @@ tests_add_filter( 'muplugins_loaded', function() { - require dirname( __DIR__ ) . '/two-factor.php'; + require_once dirname( __DIR__ ) . '/two-factor.php'; } ); // Start up the WP testing environment. -require getenv( 'WP_PHPUNIT__DIR' ) . '/includes/bootstrap.php'; +require_once getenv( 'WP_PHPUNIT__DIR' ) . '/includes/bootstrap.php'; From f03351154348f1ed05c1556b9728a30be5976ce8 Mon Sep 17 00:00:00 2001 From: Birgit Pauli-Haack Date: Tue, 23 Apr 2024 09:41:09 +0200 Subject: [PATCH 055/130] Update readme.txt --- readme.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/readme.txt b/readme.txt index d0ba9f1c..1bb5a113 100644 --- a/readme.txt +++ b/readme.txt @@ -2,7 +2,7 @@ Contributors: georgestephanis, valendesigns, stevenkword, extendwings, sgrant, aaroncampbell, johnbillion, stevegrunwell, netweb, kasparsd, alihusnainarshad, passoniate Tags: two factor, two step, authentication, login, totp, fido u2f, u2f, email, backup codes, 2fa, yubikey Requires at least: 4.3 -Tested up to: 6.2 +Tested up to: 6.5 Requires PHP: 5.6 Stable tag: 0.8.2 From c1fe518a364b5c2002442110b1b60626d505a88e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 23 Apr 2024 08:37:40 +0000 Subject: [PATCH 056/130] Bump webpack-dev-middleware from 5.3.3 to 5.3.4 Bumps [webpack-dev-middleware](https://github.com/webpack/webpack-dev-middleware) from 5.3.3 to 5.3.4. - [Release notes](https://github.com/webpack/webpack-dev-middleware/releases) - [Changelog](https://github.com/webpack/webpack-dev-middleware/blob/v5.3.4/CHANGELOG.md) - [Commits](https://github.com/webpack/webpack-dev-middleware/compare/v5.3.3...v5.3.4) --- updated-dependencies: - dependency-name: webpack-dev-middleware dependency-type: indirect ... Signed-off-by: dependabot[bot] --- package-lock.json | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/package-lock.json b/package-lock.json index 160d1919..28dec32e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -14510,9 +14510,9 @@ } }, "webpack-dev-middleware": { - "version": "5.3.3", - "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.3.tgz", - "integrity": "sha512-hj5CYrY0bZLB+eTO+x/j67Pkrquiy7kWepMHmUMoPsmcUaeEnQJqFzHJOyxgWlq746/wUuA64p9ta34Kyb01pA==", + "version": "5.3.4", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.4.tgz", + "integrity": "sha512-BVdTqhhs+0IfoeAf7EoH5WE+exCmqGerHfDM0IL096Px60Tq2Mn9MAbnaGUe6HiMa41KMCYF19gyzZmBcq/o4Q==", "dev": true, "requires": { "colorette": "^2.0.10", @@ -14523,9 +14523,9 @@ }, "dependencies": { "ajv": { - "version": "8.11.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.11.0.tgz", - "integrity": "sha512-wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg==", + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", @@ -14550,15 +14550,15 @@ "dev": true }, "schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.2.0.tgz", + "integrity": "sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==", "dev": true, "requires": { "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", + "ajv": "^8.9.0", "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" + "ajv-keywords": "^5.1.0" } } } From 9ff2df393e1c2051e88d09fa88d6ae65df3e1a2f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 23 Apr 2024 08:37:40 +0000 Subject: [PATCH 057/130] Bump follow-redirects from 1.15.2 to 1.15.6 Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.15.2 to 1.15.6. - [Release notes](https://github.com/follow-redirects/follow-redirects/releases) - [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.15.2...v1.15.6) --- updated-dependencies: - dependency-name: follow-redirects dependency-type: indirect ... Signed-off-by: dependabot[bot] --- package-lock.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index 160d1919..a198daae 100644 --- a/package-lock.json +++ b/package-lock.json @@ -6689,9 +6689,9 @@ "dev": true }, "follow-redirects": { - "version": "1.15.2", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz", - "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==", + "version": "1.15.6", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.6.tgz", + "integrity": "sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==", "dev": true }, "for-in": { From 5431fc1c2593ba4b5af01c5afee0ea6224f99ea8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 23 Apr 2024 08:37:44 +0000 Subject: [PATCH 058/130] Bump @babel/traverse from 7.19.3 to 7.24.1 Bumps [@babel/traverse](https://github.com/babel/babel/tree/HEAD/packages/babel-traverse) from 7.19.3 to 7.24.1. - [Release notes](https://github.com/babel/babel/releases) - [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md) - [Commits](https://github.com/babel/babel/commits/v7.24.1/packages/babel-traverse) --- updated-dependencies: - dependency-name: "@babel/traverse" dependency-type: indirect ... Signed-off-by: dependabot[bot] --- package-lock.json | 165 ++++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 151 insertions(+), 14 deletions(-) diff --git a/package-lock.json b/package-lock.json index 160d1919..dfbb63d8 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1243,21 +1243,158 @@ } }, "@babel/traverse": { - "version": "7.19.3", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.19.3.tgz", - "integrity": "sha512-qh5yf6149zhq2sgIXmwjnsvmnNQC2iw70UFjp4olxucKrWd/dvlUsBI88VSLUsnMNF7/vnOiA+nk1+yLoCqROQ==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.19.3", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.19.0", - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.19.3", - "@babel/types": "^7.19.3", - "debug": "^4.1.0", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.1.tgz", + "integrity": "sha512-xuU6o9m68KeqZbQuDt2TcKSxUw/mrsvavlEqQ1leZ/B+C9tk6E4sRWy97WaXgvq5E+nU3cXMxv3WKOCanVMCmQ==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.24.1", + "@babel/generator": "^7.24.1", + "@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.24.1", + "@babel/types": "^7.24.0", + "debug": "^4.3.1", "globals": "^11.1.0" + }, + "dependencies": { + "@babel/code-frame": { + "version": "7.24.2", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz", + "integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==", + "dev": true, + "requires": { + "@babel/highlight": "^7.24.2", + "picocolors": "^1.0.0" + } + }, + "@babel/generator": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.4.tgz", + "integrity": "sha512-Xd6+v6SnjWVx/nus+y0l1sxMOTOMBkyL4+BIdbALyatQnAe/SRVjANeDPSCYaX+i1iJmuGSKf3Z+E+V/va1Hvw==", + "dev": true, + "requires": { + "@babel/types": "^7.24.0", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^2.5.1" + } + }, + "@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 + }, + "@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, + "requires": { + "@babel/template": "^7.22.15", + "@babel/types": "^7.23.0" + } + }, + "@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, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@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, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@babel/helper-string-parser": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", + "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", + "dev": true + }, + "@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 + }, + "@babel/highlight": { + "version": "7.24.2", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.2.tgz", + "integrity": "sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==", + "dev": true, + "requires": { + "@babel/helper-validator-identifier": "^7.22.20", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" + } + }, + "@babel/parser": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.4.tgz", + "integrity": "sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg==", + "dev": true + }, + "@babel/template": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", + "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.23.5", + "@babel/parser": "^7.24.0", + "@babel/types": "^7.24.0" + } + }, + "@babel/types": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", + "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", + "dev": true, + "requires": { + "@babel/helper-string-parser": "^7.23.4", + "@babel/helper-validator-identifier": "^7.22.20", + "to-fast-properties": "^2.0.0" + } + }, + "@jridgewell/gen-mapping": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", + "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", + "dev": true, + "requires": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + } + }, + "@jridgewell/set-array": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", + "dev": true + }, + "@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "dev": true, + "requires": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + } } }, "@babel/types": { From f64b9c70e006d96e0a128d1a121eb34fb363f4c8 Mon Sep 17 00:00:00 2001 From: Kaspars Dambis Date: Tue, 23 Apr 2024 11:48:20 +0300 Subject: [PATCH 059/130] Bump the version --- two-factor.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/two-factor.php b/two-factor.php index 276054cc..7bb246d4 100644 --- a/two-factor.php +++ b/two-factor.php @@ -12,7 +12,7 @@ * Plugin URI: https://wordpress.org/plugins/two-factor/ * Description: Two-Factor Authentication using time-based one-time passwords, Universal 2nd Factor (FIDO U2F), email and backup verification codes. * Author: Plugin Contributors - * Version: 0.8.2 + * Version: 0.9.0 * Author URI: https://github.com/wordpress/two-factor/graphs/contributors * Network: True * Text Domain: two-factor @@ -26,7 +26,7 @@ /** * Version of the plugin. */ -define( 'TWO_FACTOR_VERSION', '0.8.2' ); +define( 'TWO_FACTOR_VERSION', '0.9.0' ); /** * Include the base class here, so that other plugins can also extend it. From b86efd5c8b8ccca65c02ad1a838c64d950f4ad08 Mon Sep 17 00:00:00 2001 From: Kaspars Dambis Date: Tue, 23 Apr 2024 13:00:54 +0300 Subject: [PATCH 060/130] Bump the stable tag too --- readme.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/readme.txt b/readme.txt index 1bb5a113..081e5f26 100644 --- a/readme.txt +++ b/readme.txt @@ -4,7 +4,7 @@ Tags: two factor, two step, authentication, login, totp, fido u2f, Requires at least: 4.3 Tested up to: 6.5 Requires PHP: 5.6 -Stable tag: 0.8.2 +Stable tag: 0.9.0 Enable Two-Factor Authentication using time-based one-time passwords (OTP, Google Authenticator), Universal 2nd Factor (FIDO U2F, YubiKey), email and backup verification codes. From 7d1c0ecf23d3b0e4e2a24ea196ba0377a6b6b7da Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 25 Apr 2024 10:32:30 +0000 Subject: [PATCH 061/130] Bump axios and @wordpress/scripts Bumps [axios](https://github.com/axios/axios) to 1.6.8 and updates ancestor dependency [@wordpress/scripts](https://github.com/WordPress/gutenberg/tree/HEAD/packages/scripts). These dependencies need to be updated together. Updates `axios` from 0.25.0 to 1.6.8 - [Release notes](https://github.com/axios/axios/releases) - [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md) - [Commits](https://github.com/axios/axios/compare/v0.25.0...v1.6.8) Updates `@wordpress/scripts` from 24.3.0 to 27.7.0 - [Release notes](https://github.com/WordPress/gutenberg/releases) - [Changelog](https://github.com/WordPress/gutenberg/blob/trunk/packages/scripts/CHANGELOG.md) - [Commits](https://github.com/WordPress/gutenberg/commits/@wordpress/scripts@27.7.0/packages/scripts) --- updated-dependencies: - dependency-name: axios dependency-type: indirect - dependency-name: "@wordpress/scripts" dependency-type: direct:development ... Signed-off-by: dependabot[bot] --- package-lock.json | 10436 ++++++++++++++++++++++++++++++++++---------- package.json | 2 +- 2 files changed, 8144 insertions(+), 2294 deletions(-) diff --git a/package-lock.json b/package-lock.json index 5e9200c2..1c462b55 100644 --- a/package-lock.json +++ b/package-lock.json @@ -3,6 +3,12 @@ "requires": true, "lockfileVersion": 1, "dependencies": { + "@aashutoshrathi/word-wrap": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz", + "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==", + "dev": true + }, "@ampproject/remapping": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", @@ -349,6 +355,30 @@ "integrity": "sha512-pJ9xOlNWHiy9+FuFP09DEAFbAn4JskgRsVcc169w2xRBC3FRGuQEwjeIMMND9L2zc0iEhO/tGv4Zq+km+hxNpQ==", "dev": true }, + "@babel/plugin-bugfix-firefox-class-in-computed-class-key": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.24.4.tgz", + "integrity": "sha512-qpl6vOOEEzTLLcsuqYYo8yDtrTocmu2xkGvgNebvPjT9DTtfFYGmgDqY+rBYXNlqL4s9qLDn6xkrJv4RxAPiTA==", + "dev": true, + "requires": { + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-plugin-utils": "^7.24.0" + }, + "dependencies": { + "@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 + }, + "@babel/helper-plugin-utils": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", + "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", + "dev": true + } + } + }, "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { "version": "7.18.6", "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.18.6.tgz", @@ -369,6 +399,30 @@ "@babel/plugin-proposal-optional-chaining": "^7.18.9" } }, + "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.24.1.tgz", + "integrity": "sha512-m9m/fXsXLiHfwdgydIFnpk+7jlVbnvlK5B2EKiPdLUb6WX654ZaaEWJUjk8TftRbZpK0XibovlLWX4KIZhV6jw==", + "dev": true, + "requires": { + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-plugin-utils": "^7.24.0" + }, + "dependencies": { + "@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 + }, + "@babel/helper-plugin-utils": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", + "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", + "dev": true + } + } + }, "@babel/plugin-proposal-async-generator-functions": { "version": "7.19.1", "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.19.1.tgz", @@ -591,6 +645,23 @@ "@babel/helper-plugin-utils": "^7.18.6" } }, + "@babel/plugin-syntax-import-attributes": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.24.1.tgz", + "integrity": "sha512-zhQTMH0X2nVLnb04tz+s7AMuasX8U0FnpE+nHTOhSOINjWMnopoZTxtIKsd45n4GQ/HIZLyfIpoul8e2m0DnRA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.24.0" + }, + "dependencies": { + "@babel/helper-plugin-utils": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", + "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", + "dev": true + } + } + }, "@babel/plugin-syntax-import-meta": { "version": "7.10.4", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", @@ -699,6 +770,16 @@ "@babel/helper-plugin-utils": "^7.18.6" } }, + "@babel/plugin-syntax-unicode-sets-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz", + "integrity": "sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + } + }, "@babel/plugin-transform-arrow-functions": { "version": "7.18.6", "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.18.6.tgz", @@ -708,6 +789,135 @@ "@babel/helper-plugin-utils": "^7.18.6" } }, + "@babel/plugin-transform-async-generator-functions": { + "version": "7.24.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.24.3.tgz", + "integrity": "sha512-Qe26CMYVjpQxJ8zxM1340JFNjZaF+ISWpr1Kt/jGo+ZTUzKkfw/pphEWbRCb+lmSM6k/TOgfYLvmbHkUQ0asIg==", + "dev": true, + "requires": { + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-remap-async-to-generator": "^7.22.20", + "@babel/plugin-syntax-async-generators": "^7.8.4" + }, + "dependencies": { + "@babel/code-frame": { + "version": "7.24.2", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz", + "integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==", + "dev": true, + "requires": { + "@babel/highlight": "^7.24.2", + "picocolors": "^1.0.0" + } + }, + "@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, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@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 + }, + "@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, + "requires": { + "@babel/template": "^7.22.15", + "@babel/types": "^7.23.0" + } + }, + "@babel/helper-plugin-utils": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", + "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", + "dev": true + }, + "@babel/helper-remap-async-to-generator": { + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.22.20.tgz", + "integrity": "sha512-pBGyV4uBqOns+0UvhsTO8qgl8hO89PmiDYv+/COyp1aeMcmfrfruz+/nCMFiYyFF/Knn0yfrC85ZzNFjembFTw==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-wrap-function": "^7.22.20" + } + }, + "@babel/helper-string-parser": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", + "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", + "dev": true + }, + "@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 + }, + "@babel/helper-wrap-function": { + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.22.20.tgz", + "integrity": "sha512-pms/UwkOpnQe/PDAEdV/d7dVCoBbB+R4FvYoHGZz+4VPcg7RtYy2KP7S2lbuWM6FCSgob5wshfGESbC/hzNXZw==", + "dev": true, + "requires": { + "@babel/helper-function-name": "^7.22.5", + "@babel/template": "^7.22.15", + "@babel/types": "^7.22.19" + } + }, + "@babel/highlight": { + "version": "7.24.2", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.2.tgz", + "integrity": "sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==", + "dev": true, + "requires": { + "@babel/helper-validator-identifier": "^7.22.20", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" + } + }, + "@babel/parser": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.4.tgz", + "integrity": "sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg==", + "dev": true + }, + "@babel/template": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", + "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.23.5", + "@babel/parser": "^7.24.0", + "@babel/types": "^7.24.0" + } + }, + "@babel/types": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", + "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", + "dev": true, + "requires": { + "@babel/helper-string-parser": "^7.23.4", + "@babel/helper-validator-identifier": "^7.22.20", + "to-fast-properties": "^2.0.0" + } + } + } + }, "@babel/plugin-transform-async-to-generator": { "version": "7.18.6", "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.18.6.tgz", @@ -737,6 +947,357 @@ "@babel/helper-plugin-utils": "^7.18.9" } }, + "@babel/plugin-transform-class-properties": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.24.1.tgz", + "integrity": "sha512-OMLCXi0NqvJfORTaPQBwqLXHhb93wkBKZ4aNwMl6WtehO7ar+cmp+89iPEQPqxAnxsOKTaMcs3POz3rKayJ72g==", + "dev": true, + "requires": { + "@babel/helper-create-class-features-plugin": "^7.24.1", + "@babel/helper-plugin-utils": "^7.24.0" + }, + "dependencies": { + "@babel/code-frame": { + "version": "7.24.2", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz", + "integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==", + "dev": true, + "requires": { + "@babel/highlight": "^7.24.2", + "picocolors": "^1.0.0" + } + }, + "@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, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@babel/helper-create-class-features-plugin": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.24.4.tgz", + "integrity": "sha512-lG75yeuUSVu0pIcbhiYMXBXANHrpUPaOfu7ryAzskCgKUHuAxRQI5ssrtmF0X9UXldPlvT0XM/A4F44OXRt6iQ==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-function-name": "^7.23.0", + "@babel/helper-member-expression-to-functions": "^7.23.0", + "@babel/helper-optimise-call-expression": "^7.22.5", + "@babel/helper-replace-supers": "^7.24.1", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "semver": "^6.3.1" + } + }, + "@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 + }, + "@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, + "requires": { + "@babel/template": "^7.22.15", + "@babel/types": "^7.23.0" + } + }, + "@babel/helper-member-expression-to-functions": { + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.23.0.tgz", + "integrity": "sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA==", + "dev": true, + "requires": { + "@babel/types": "^7.23.0" + } + }, + "@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, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@babel/helper-plugin-utils": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", + "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", + "dev": true + }, + "@babel/helper-replace-supers": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.24.1.tgz", + "integrity": "sha512-QCR1UqC9BzG5vZl8BMicmZ28RuUBnHhAMddD8yHFHDRH9lLTZ9uUPehX8ctVPT8l0TKblJidqcgUUKGVrePleQ==", + "dev": true, + "requires": { + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-member-expression-to-functions": "^7.23.0", + "@babel/helper-optimise-call-expression": "^7.22.5" + } + }, + "@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, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@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, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@babel/helper-string-parser": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", + "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", + "dev": true + }, + "@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 + }, + "@babel/highlight": { + "version": "7.24.2", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.2.tgz", + "integrity": "sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==", + "dev": true, + "requires": { + "@babel/helper-validator-identifier": "^7.22.20", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" + } + }, + "@babel/parser": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.4.tgz", + "integrity": "sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg==", + "dev": true + }, + "@babel/template": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", + "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.23.5", + "@babel/parser": "^7.24.0", + "@babel/types": "^7.24.0" + } + }, + "@babel/types": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", + "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", + "dev": true, + "requires": { + "@babel/helper-string-parser": "^7.23.4", + "@babel/helper-validator-identifier": "^7.22.20", + "to-fast-properties": "^2.0.0" + } + }, + "semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true + } + } + }, + "@babel/plugin-transform-class-static-block": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.24.4.tgz", + "integrity": "sha512-B8q7Pz870Hz/q9UgP8InNpY01CSLDSCyqX7zcRuv3FcPl87A2G17lASroHWaCtbdIcbYzOZ7kWmXFKbijMSmFg==", + "dev": true, + "requires": { + "@babel/helper-create-class-features-plugin": "^7.24.4", + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-class-static-block": "^7.14.5" + }, + "dependencies": { + "@babel/code-frame": { + "version": "7.24.2", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz", + "integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==", + "dev": true, + "requires": { + "@babel/highlight": "^7.24.2", + "picocolors": "^1.0.0" + } + }, + "@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, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@babel/helper-create-class-features-plugin": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.24.4.tgz", + "integrity": "sha512-lG75yeuUSVu0pIcbhiYMXBXANHrpUPaOfu7ryAzskCgKUHuAxRQI5ssrtmF0X9UXldPlvT0XM/A4F44OXRt6iQ==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-function-name": "^7.23.0", + "@babel/helper-member-expression-to-functions": "^7.23.0", + "@babel/helper-optimise-call-expression": "^7.22.5", + "@babel/helper-replace-supers": "^7.24.1", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "semver": "^6.3.1" + } + }, + "@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 + }, + "@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, + "requires": { + "@babel/template": "^7.22.15", + "@babel/types": "^7.23.0" + } + }, + "@babel/helper-member-expression-to-functions": { + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.23.0.tgz", + "integrity": "sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA==", + "dev": true, + "requires": { + "@babel/types": "^7.23.0" + } + }, + "@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, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@babel/helper-plugin-utils": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", + "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", + "dev": true + }, + "@babel/helper-replace-supers": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.24.1.tgz", + "integrity": "sha512-QCR1UqC9BzG5vZl8BMicmZ28RuUBnHhAMddD8yHFHDRH9lLTZ9uUPehX8ctVPT8l0TKblJidqcgUUKGVrePleQ==", + "dev": true, + "requires": { + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-member-expression-to-functions": "^7.23.0", + "@babel/helper-optimise-call-expression": "^7.22.5" + } + }, + "@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, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@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, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@babel/helper-string-parser": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", + "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", + "dev": true + }, + "@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 + }, + "@babel/highlight": { + "version": "7.24.2", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.2.tgz", + "integrity": "sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==", + "dev": true, + "requires": { + "@babel/helper-validator-identifier": "^7.22.20", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" + } + }, + "@babel/parser": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.4.tgz", + "integrity": "sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg==", + "dev": true + }, + "@babel/template": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", + "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.23.5", + "@babel/parser": "^7.24.0", + "@babel/types": "^7.24.0" + } + }, + "@babel/types": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", + "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", + "dev": true, + "requires": { + "@babel/helper-string-parser": "^7.23.4", + "@babel/helper-validator-identifier": "^7.22.20", + "to-fast-properties": "^2.0.0" + } + }, + "semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true + } + } + }, "@babel/plugin-transform-classes": { "version": "7.19.0", "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.19.0.tgz", @@ -791,6 +1352,24 @@ "@babel/helper-plugin-utils": "^7.18.9" } }, + "@babel/plugin-transform-dynamic-import": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.24.1.tgz", + "integrity": "sha512-av2gdSTyXcJVdI+8aFZsCAtR29xJt0S5tas+Ef8NvBNmD1a+N/3ecMLeMBgfcK+xzsjdLDT6oHt+DFPyeqUbDA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-dynamic-import": "^7.8.3" + }, + "dependencies": { + "@babel/helper-plugin-utils": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", + "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", + "dev": true + } + } + }, "@babel/plugin-transform-exponentiation-operator": { "version": "7.18.6", "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.18.6.tgz", @@ -801,6 +1380,24 @@ "@babel/helper-plugin-utils": "^7.18.6" } }, + "@babel/plugin-transform-export-namespace-from": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.24.1.tgz", + "integrity": "sha512-Ft38m/KFOyzKw2UaJFkWG9QnHPG/Q/2SkOrRk4pNBPg5IPZ+dOxcmkK5IyuBcxiNPyyYowPGUReyBvrvZs7IlQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3" + }, + "dependencies": { + "@babel/helper-plugin-utils": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", + "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", + "dev": true + } + } + }, "@babel/plugin-transform-for-of": { "version": "7.18.8", "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.18.8.tgz", @@ -821,6 +1418,24 @@ "@babel/helper-plugin-utils": "^7.18.9" } }, + "@babel/plugin-transform-json-strings": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.24.1.tgz", + "integrity": "sha512-U7RMFmRvoasscrIFy5xA4gIp8iWnWubnKkKuUGJjsuOH7GfbMkB+XZzeslx2kLdEGdOJDamEmCqOks6e8nv8DQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-json-strings": "^7.8.3" + }, + "dependencies": { + "@babel/helper-plugin-utils": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", + "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", + "dev": true + } + } + }, "@babel/plugin-transform-literals": { "version": "7.18.9", "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.18.9.tgz", @@ -830,10 +1445,28 @@ "@babel/helper-plugin-utils": "^7.18.9" } }, - "@babel/plugin-transform-member-expression-literals": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.18.6.tgz", - "integrity": "sha512-qSF1ihLGO3q+/g48k85tUjD033C29TNTVB2paCwZPVmOsjn9pClvYYrM2VeJpBY2bcNkuny0YUyTNRyRxJ54KA==", + "@babel/plugin-transform-logical-assignment-operators": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.24.1.tgz", + "integrity": "sha512-OhN6J4Bpz+hIBqItTeWJujDOfNP+unqv/NJgyhlpSqgBTPm37KkMmZV6SYcOj+pnDbdcl1qRGV/ZiIjX9Iy34w==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" + }, + "dependencies": { + "@babel/helper-plugin-utils": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", + "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", + "dev": true + } + } + }, + "@babel/plugin-transform-member-expression-literals": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.18.6.tgz", + "integrity": "sha512-qSF1ihLGO3q+/g48k85tUjD033C29TNTVB2paCwZPVmOsjn9pClvYYrM2VeJpBY2bcNkuny0YUyTNRyRxJ54KA==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.18.6" @@ -904,6 +1537,142 @@ "@babel/helper-plugin-utils": "^7.18.6" } }, + "@babel/plugin-transform-nullish-coalescing-operator": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.24.1.tgz", + "integrity": "sha512-iQ+caew8wRrhCikO5DrUYx0mrmdhkaELgFa+7baMcVuhxIkN7oxt06CZ51D65ugIb1UWRQ8oQe+HXAVM6qHFjw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" + }, + "dependencies": { + "@babel/helper-plugin-utils": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", + "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", + "dev": true + } + } + }, + "@babel/plugin-transform-numeric-separator": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.24.1.tgz", + "integrity": "sha512-7GAsGlK4cNL2OExJH1DzmDeKnRv/LXq0eLUSvudrehVA5Rgg4bIrqEUW29FbKMBRT0ztSqisv7kjP+XIC4ZMNw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-numeric-separator": "^7.10.4" + }, + "dependencies": { + "@babel/helper-plugin-utils": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", + "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", + "dev": true + } + } + }, + "@babel/plugin-transform-object-rest-spread": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.24.1.tgz", + "integrity": "sha512-XjD5f0YqOtebto4HGISLNfiNMTTs6tbkFf2TOqJlYKYmbo+mN9Dnpl4SRoofiziuOWMIyq3sZEUqLo3hLITFEA==", + "dev": true, + "requires": { + "@babel/helper-compilation-targets": "^7.23.6", + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.24.1" + }, + "dependencies": { + "@babel/compat-data": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.4.tgz", + "integrity": "sha512-vg8Gih2MLK+kOkHJp4gBEIkyaIi00jgWot2D9QOmmfLC8jINSOzmCLta6Bvz/JSBCqnegV0L80jhxkol5GWNfQ==", + "dev": true + }, + "@babel/helper-compilation-targets": { + "version": "7.23.6", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz", + "integrity": "sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.23.5", + "@babel/helper-validator-option": "^7.23.5", + "browserslist": "^4.22.2", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + } + }, + "@babel/helper-plugin-utils": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", + "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", + "dev": true + }, + "@babel/helper-validator-option": { + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz", + "integrity": "sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==", + "dev": true + }, + "@babel/plugin-transform-parameters": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.24.1.tgz", + "integrity": "sha512-8Jl6V24g+Uw5OGPeWNKrKqXPDw2YDjLc53ojwfMcKwlEoETKU9rU0mHUtcg9JntWI/QYzGAXNWEcVHZ+fR+XXg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.24.0" + } + }, + "browserslist": { + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", + "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", + "dev": true, + "requires": { + "caniuse-lite": "^1.0.30001587", + "electron-to-chromium": "^1.4.668", + "node-releases": "^2.0.14", + "update-browserslist-db": "^1.0.13" + } + }, + "caniuse-lite": { + "version": "1.0.30001612", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001612.tgz", + "integrity": "sha512-lFgnZ07UhaCcsSZgWW0K5j4e69dK1u/ltrL9lTUiFOwNHs12S3UMIEYgBV0Z6C6hRDev7iRnMzzYmKabYdXF9g==", + "dev": true + }, + "electron-to-chromium": { + "version": "1.4.748", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.748.tgz", + "integrity": "sha512-VWqjOlPZn70UZ8FTKUOkUvBLeTQ0xpty66qV0yJcAGY2/CthI4xyW9aEozRVtuwv3Kpf5xTesmJUcPwuJmgP4A==", + "dev": true + }, + "node-releases": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", + "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", + "dev": true + }, + "semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true + }, + "update-browserslist-db": { + "version": "1.0.13", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", + "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", + "dev": true, + "requires": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + } + } + } + }, "@babel/plugin-transform-object-super": { "version": "7.18.6", "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.18.6.tgz", @@ -914,6 +1683,75 @@ "@babel/helper-replace-supers": "^7.18.6" } }, + "@babel/plugin-transform-optional-catch-binding": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.24.1.tgz", + "integrity": "sha512-oBTH7oURV4Y+3EUrf6cWn1OHio3qG/PVwO5J03iSJmBg6m2EhKjkAu/xuaXaYwWW9miYtvbWv4LNf0AmR43LUA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" + }, + "dependencies": { + "@babel/helper-plugin-utils": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", + "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", + "dev": true + } + } + }, + "@babel/plugin-transform-optional-chaining": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.24.1.tgz", + "integrity": "sha512-n03wmDt+987qXwAgcBlnUUivrZBPZ8z1plL0YvgQalLm+ZE5BMhGm94jhxXtA1wzv1Cu2aaOv1BM9vbVttrzSg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/plugin-syntax-optional-chaining": "^7.8.3" + }, + "dependencies": { + "@babel/helper-plugin-utils": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", + "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", + "dev": true + }, + "@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, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@babel/helper-string-parser": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", + "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", + "dev": true + }, + "@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 + }, + "@babel/types": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", + "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", + "dev": true, + "requires": { + "@babel/helper-string-parser": "^7.23.4", + "@babel/helper-validator-identifier": "^7.22.20", + "to-fast-properties": "^2.0.0" + } + } + } + }, "@babel/plugin-transform-parameters": { "version": "7.18.8", "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.18.8.tgz", @@ -923,6 +1761,358 @@ "@babel/helper-plugin-utils": "^7.18.6" } }, + "@babel/plugin-transform-private-methods": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.24.1.tgz", + "integrity": "sha512-tGvisebwBO5em4PaYNqt4fkw56K2VALsAbAakY0FjTYqJp7gfdrgr7YX76Or8/cpik0W6+tj3rZ0uHU9Oil4tw==", + "dev": true, + "requires": { + "@babel/helper-create-class-features-plugin": "^7.24.1", + "@babel/helper-plugin-utils": "^7.24.0" + }, + "dependencies": { + "@babel/code-frame": { + "version": "7.24.2", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz", + "integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==", + "dev": true, + "requires": { + "@babel/highlight": "^7.24.2", + "picocolors": "^1.0.0" + } + }, + "@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, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@babel/helper-create-class-features-plugin": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.24.4.tgz", + "integrity": "sha512-lG75yeuUSVu0pIcbhiYMXBXANHrpUPaOfu7ryAzskCgKUHuAxRQI5ssrtmF0X9UXldPlvT0XM/A4F44OXRt6iQ==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-function-name": "^7.23.0", + "@babel/helper-member-expression-to-functions": "^7.23.0", + "@babel/helper-optimise-call-expression": "^7.22.5", + "@babel/helper-replace-supers": "^7.24.1", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "semver": "^6.3.1" + } + }, + "@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 + }, + "@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, + "requires": { + "@babel/template": "^7.22.15", + "@babel/types": "^7.23.0" + } + }, + "@babel/helper-member-expression-to-functions": { + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.23.0.tgz", + "integrity": "sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA==", + "dev": true, + "requires": { + "@babel/types": "^7.23.0" + } + }, + "@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, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@babel/helper-plugin-utils": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", + "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", + "dev": true + }, + "@babel/helper-replace-supers": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.24.1.tgz", + "integrity": "sha512-QCR1UqC9BzG5vZl8BMicmZ28RuUBnHhAMddD8yHFHDRH9lLTZ9uUPehX8ctVPT8l0TKblJidqcgUUKGVrePleQ==", + "dev": true, + "requires": { + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-member-expression-to-functions": "^7.23.0", + "@babel/helper-optimise-call-expression": "^7.22.5" + } + }, + "@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, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@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, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@babel/helper-string-parser": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", + "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", + "dev": true + }, + "@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 + }, + "@babel/highlight": { + "version": "7.24.2", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.2.tgz", + "integrity": "sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==", + "dev": true, + "requires": { + "@babel/helper-validator-identifier": "^7.22.20", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" + } + }, + "@babel/parser": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.4.tgz", + "integrity": "sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg==", + "dev": true + }, + "@babel/template": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", + "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.23.5", + "@babel/parser": "^7.24.0", + "@babel/types": "^7.24.0" + } + }, + "@babel/types": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", + "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", + "dev": true, + "requires": { + "@babel/helper-string-parser": "^7.23.4", + "@babel/helper-validator-identifier": "^7.22.20", + "to-fast-properties": "^2.0.0" + } + }, + "semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true + } + } + }, + "@babel/plugin-transform-private-property-in-object": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.24.1.tgz", + "integrity": "sha512-pTHxDVa0BpUbvAgX3Gat+7cSciXqUcY9j2VZKTbSB6+VQGpNgNO9ailxTGHSXlqOnX1Hcx1Enme2+yv7VqP9bg==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-create-class-features-plugin": "^7.24.1", + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5" + }, + "dependencies": { + "@babel/code-frame": { + "version": "7.24.2", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz", + "integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==", + "dev": true, + "requires": { + "@babel/highlight": "^7.24.2", + "picocolors": "^1.0.0" + } + }, + "@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, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@babel/helper-create-class-features-plugin": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.24.4.tgz", + "integrity": "sha512-lG75yeuUSVu0pIcbhiYMXBXANHrpUPaOfu7ryAzskCgKUHuAxRQI5ssrtmF0X9UXldPlvT0XM/A4F44OXRt6iQ==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-function-name": "^7.23.0", + "@babel/helper-member-expression-to-functions": "^7.23.0", + "@babel/helper-optimise-call-expression": "^7.22.5", + "@babel/helper-replace-supers": "^7.24.1", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "semver": "^6.3.1" + } + }, + "@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 + }, + "@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, + "requires": { + "@babel/template": "^7.22.15", + "@babel/types": "^7.23.0" + } + }, + "@babel/helper-member-expression-to-functions": { + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.23.0.tgz", + "integrity": "sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA==", + "dev": true, + "requires": { + "@babel/types": "^7.23.0" + } + }, + "@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, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@babel/helper-plugin-utils": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", + "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", + "dev": true + }, + "@babel/helper-replace-supers": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.24.1.tgz", + "integrity": "sha512-QCR1UqC9BzG5vZl8BMicmZ28RuUBnHhAMddD8yHFHDRH9lLTZ9uUPehX8ctVPT8l0TKblJidqcgUUKGVrePleQ==", + "dev": true, + "requires": { + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-member-expression-to-functions": "^7.23.0", + "@babel/helper-optimise-call-expression": "^7.22.5" + } + }, + "@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, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@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, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@babel/helper-string-parser": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", + "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", + "dev": true + }, + "@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 + }, + "@babel/highlight": { + "version": "7.24.2", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.2.tgz", + "integrity": "sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==", + "dev": true, + "requires": { + "@babel/helper-validator-identifier": "^7.22.20", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" + } + }, + "@babel/parser": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.4.tgz", + "integrity": "sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg==", + "dev": true + }, + "@babel/template": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", + "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.23.5", + "@babel/parser": "^7.24.0", + "@babel/types": "^7.24.0" + } + }, + "@babel/types": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", + "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", + "dev": true, + "requires": { + "@babel/helper-string-parser": "^7.23.4", + "@babel/helper-validator-identifier": "^7.22.20", + "to-fast-properties": "^2.0.0" + } + }, + "semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true + } + } + }, "@babel/plugin-transform-property-literals": { "version": "7.18.6", "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.18.6.tgz", @@ -933,21 +2123,37 @@ } }, "@babel/plugin-transform-react-constant-elements": { - "version": "7.18.12", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-constant-elements/-/plugin-transform-react-constant-elements-7.18.12.tgz", - "integrity": "sha512-Q99U9/ttiu+LMnRU8psd23HhvwXmKWDQIpocm0JKaICcZHnw+mdQbHm6xnSy7dOl8I5PELakYtNBubNQlBXbZw==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-constant-elements/-/plugin-transform-react-constant-elements-7.24.1.tgz", + "integrity": "sha512-QXp1U9x0R7tkiGB0FOk8o74jhnap0FlZ5gNkRIWdG3eP+SvMFg118e1zaWewDzgABb106QSKpVsD3Wgd8t6ifA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.18.9" + "@babel/helper-plugin-utils": "^7.24.0" + }, + "dependencies": { + "@babel/helper-plugin-utils": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", + "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", + "dev": true + } } }, "@babel/plugin-transform-react-display-name": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.18.6.tgz", - "integrity": "sha512-TV4sQ+T013n61uMoygyMRm+xf04Bd5oqFpv2jAEQwSZ8NwQA7zeRPg1LMVg2PWi3zWBz+CLKD+v5bcpZ/BS0aA==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.24.1.tgz", + "integrity": "sha512-mvoQg2f9p2qlpDQRBC7M3c3XTr0k7cp/0+kFKKO/7Gtu0LSw16eKB+Fabe2bDT/UpsyasTBBkAnbdsLrkD5XMw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.18.6" + "@babel/helper-plugin-utils": "^7.24.0" + }, + "dependencies": { + "@babel/helper-plugin-utils": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", + "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", + "dev": true + } } }, "@babel/plugin-transform-react-jsx": { @@ -964,22 +2170,133 @@ } }, "@babel/plugin-transform-react-jsx-development": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.18.6.tgz", - "integrity": "sha512-SA6HEjwYFKF7WDjWcMcMGUimmw/nhNRDWxr+KaLSCrkD/LMDBvWRmHAYgE1HDeF8KUuI8OAu+RT6EOtKxSW2qA==", - "dev": true, - "requires": { - "@babel/plugin-transform-react-jsx": "^7.18.6" - } - }, - "@babel/plugin-transform-react-pure-annotations": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.18.6.tgz", - "integrity": "sha512-I8VfEPg9r2TRDdvnHgPepTKvuRomzA8+u+nhY7qSI1fR2hRNebasZEETLyM5mAUr0Ku56OkXJ0I7NHJnO6cJiQ==", + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.22.5.tgz", + "integrity": "sha512-bDhuzwWMuInwCYeDeMzyi7TaBgRQei6DqxhbyniL7/VG4RSS7HtSL2QbY4eESy1KJqlWt8g3xeEBGPuo+XqC8A==", "dev": true, "requires": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" + "@babel/plugin-transform-react-jsx": "^7.22.5" + }, + "dependencies": { + "@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, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@babel/helper-module-imports": { + "version": "7.24.3", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.3.tgz", + "integrity": "sha512-viKb0F9f2s0BCS22QSF308z/+1YWKV/76mwt61NBzS5izMzDPwdq1pTrzf+Li3npBWX9KdQbkeCt1jSAM7lZqg==", + "dev": true, + "requires": { + "@babel/types": "^7.24.0" + } + }, + "@babel/helper-plugin-utils": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", + "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", + "dev": true + }, + "@babel/helper-string-parser": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", + "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", + "dev": true + }, + "@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 + }, + "@babel/plugin-syntax-jsx": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.24.1.tgz", + "integrity": "sha512-2eCtxZXf+kbkMIsXS4poTvT4Yu5rXiRa+9xGVT56raghjmBTKMpFNc9R4IDiB4emao9eO22Ox7CxuJG7BgExqA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.24.0" + } + }, + "@babel/plugin-transform-react-jsx": { + "version": "7.23.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.23.4.tgz", + "integrity": "sha512-5xOpoPguCZCRbo/JeHlloSkTA8Bld1J/E1/kLfD1nsuiW1m8tduTA1ERCgIZokDflX/IBzKcqR3l7VlRgiIfHA==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-module-imports": "^7.22.15", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-jsx": "^7.23.3", + "@babel/types": "^7.23.4" + } + }, + "@babel/types": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", + "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", + "dev": true, + "requires": { + "@babel/helper-string-parser": "^7.23.4", + "@babel/helper-validator-identifier": "^7.22.20", + "to-fast-properties": "^2.0.0" + } + } + } + }, + "@babel/plugin-transform-react-pure-annotations": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.24.1.tgz", + "integrity": "sha512-+pWEAaDJvSm9aFvJNpLiM2+ktl2Sn2U5DdyiWdZBxmLc6+xGt88dvFqsHiAiDS+8WqUwbDfkKz9jRxK3M0k+kA==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-plugin-utils": "^7.24.0" + }, + "dependencies": { + "@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, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@babel/helper-plugin-utils": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", + "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", + "dev": true + }, + "@babel/helper-string-parser": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", + "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", + "dev": true + }, + "@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 + }, + "@babel/types": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", + "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", + "dev": true, + "requires": { + "@babel/helper-string-parser": "^7.23.4", + "@babel/helper-validator-identifier": "^7.22.20", + "to-fast-properties": "^2.0.0" + } + } } }, "@babel/plugin-transform-regenerator": { @@ -1081,6 +2398,93 @@ "@babel/helper-plugin-utils": "^7.18.9" } }, + "@babel/plugin-transform-unicode-property-regex": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.24.1.tgz", + "integrity": "sha512-Ss4VvlfYV5huWApFsF8/Sq0oXnGO+jB+rijFEFugTd3cwSObUSnUi88djgR5528Csl0uKlrI331kRqe56Ov2Ng==", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.24.0" + }, + "dependencies": { + "@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, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@babel/helper-create-regexp-features-plugin": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.22.15.tgz", + "integrity": "sha512-29FkPLFjn4TPEa3RE7GpW+qbE8tlsu3jntNYNfcGsc49LphF1PQIiD+vMZ1z1xVOKt+93khA9tc2JBs3kBjA7w==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "regexpu-core": "^5.3.1", + "semver": "^6.3.1" + } + }, + "@babel/helper-plugin-utils": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", + "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", + "dev": true + }, + "@babel/helper-string-parser": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", + "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", + "dev": true + }, + "@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 + }, + "@babel/types": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", + "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", + "dev": true, + "requires": { + "@babel/helper-string-parser": "^7.23.4", + "@babel/helper-validator-identifier": "^7.22.20", + "to-fast-properties": "^2.0.0" + } + }, + "regexpu-core": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.2.tgz", + "integrity": "sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==", + "dev": true, + "requires": { + "@babel/regjsgen": "^0.8.0", + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^10.1.0", + "regjsparser": "^0.9.1", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.1.0" + } + }, + "semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true + }, + "unicode-match-property-value-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz", + "integrity": "sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==", + "dev": true + } + } + }, "@babel/plugin-transform-unicode-regex": { "version": "7.18.6", "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.18.6.tgz", @@ -1091,6 +2495,93 @@ "@babel/helper-plugin-utils": "^7.18.6" } }, + "@babel/plugin-transform-unicode-sets-regex": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.24.1.tgz", + "integrity": "sha512-fqj4WuzzS+ukpgerpAoOnMfQXwUHFxXUZUE84oL2Kao2N8uSlvcpnAidKASgsNgzZHBsHWvcm8s9FPWUhAb8fA==", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.24.0" + }, + "dependencies": { + "@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, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@babel/helper-create-regexp-features-plugin": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.22.15.tgz", + "integrity": "sha512-29FkPLFjn4TPEa3RE7GpW+qbE8tlsu3jntNYNfcGsc49LphF1PQIiD+vMZ1z1xVOKt+93khA9tc2JBs3kBjA7w==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "regexpu-core": "^5.3.1", + "semver": "^6.3.1" + } + }, + "@babel/helper-plugin-utils": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", + "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", + "dev": true + }, + "@babel/helper-string-parser": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", + "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", + "dev": true + }, + "@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 + }, + "@babel/types": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", + "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", + "dev": true, + "requires": { + "@babel/helper-string-parser": "^7.23.4", + "@babel/helper-validator-identifier": "^7.22.20", + "to-fast-properties": "^2.0.0" + } + }, + "regexpu-core": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.2.tgz", + "integrity": "sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==", + "dev": true, + "requires": { + "@babel/regjsgen": "^0.8.0", + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^10.1.0", + "regjsparser": "^0.9.1", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.1.0" + } + }, + "semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true + }, + "unicode-match-property-value-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz", + "integrity": "sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==", + "dev": true + } + } + }, "@babel/preset-env": { "version": "7.19.3", "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.19.3.tgz", @@ -1188,17 +2679,94 @@ } }, "@babel/preset-react": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.18.6.tgz", - "integrity": "sha512-zXr6atUmyYdiWRVLOZahakYmOBHtWc2WGCkP8PYTgZi0iJXDY2CN180TdrIW4OGOAdLc7TifzDIvtx6izaRIzg==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.24.1.tgz", + "integrity": "sha512-eFa8up2/8cZXLIpkafhaADTXSnl7IsUFCYenRWrARBz0/qZwcT0RBXpys0LJU4+WfPoF2ZG6ew6s2V6izMCwRA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-validator-option": "^7.18.6", - "@babel/plugin-transform-react-display-name": "^7.18.6", - "@babel/plugin-transform-react-jsx": "^7.18.6", - "@babel/plugin-transform-react-jsx-development": "^7.18.6", - "@babel/plugin-transform-react-pure-annotations": "^7.18.6" + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-validator-option": "^7.23.5", + "@babel/plugin-transform-react-display-name": "^7.24.1", + "@babel/plugin-transform-react-jsx": "^7.23.4", + "@babel/plugin-transform-react-jsx-development": "^7.22.5", + "@babel/plugin-transform-react-pure-annotations": "^7.24.1" + }, + "dependencies": { + "@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, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@babel/helper-module-imports": { + "version": "7.24.3", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.3.tgz", + "integrity": "sha512-viKb0F9f2s0BCS22QSF308z/+1YWKV/76mwt61NBzS5izMzDPwdq1pTrzf+Li3npBWX9KdQbkeCt1jSAM7lZqg==", + "dev": true, + "requires": { + "@babel/types": "^7.24.0" + } + }, + "@babel/helper-plugin-utils": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", + "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", + "dev": true + }, + "@babel/helper-string-parser": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", + "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", + "dev": true + }, + "@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 + }, + "@babel/helper-validator-option": { + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz", + "integrity": "sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==", + "dev": true + }, + "@babel/plugin-syntax-jsx": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.24.1.tgz", + "integrity": "sha512-2eCtxZXf+kbkMIsXS4poTvT4Yu5rXiRa+9xGVT56raghjmBTKMpFNc9R4IDiB4emao9eO22Ox7CxuJG7BgExqA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.24.0" + } + }, + "@babel/plugin-transform-react-jsx": { + "version": "7.23.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.23.4.tgz", + "integrity": "sha512-5xOpoPguCZCRbo/JeHlloSkTA8Bld1J/E1/kLfD1nsuiW1m8tduTA1ERCgIZokDflX/IBzKcqR3l7VlRgiIfHA==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-module-imports": "^7.22.15", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-jsx": "^7.23.3", + "@babel/types": "^7.23.4" + } + }, + "@babel/types": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", + "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", + "dev": true, + "requires": { + "@babel/helper-string-parser": "^7.23.4", + "@babel/helper-validator-identifier": "^7.22.20", + "to-fast-properties": "^2.0.0" + } + } } }, "@babel/preset-typescript": { @@ -1212,6 +2780,12 @@ "@babel/plugin-transform-typescript": "^7.18.6" } }, + "@babel/regjsgen": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@babel/regjsgen/-/regjsgen-0.8.0.tgz", + "integrity": "sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==", + "dev": true + }, "@babel/runtime": { "version": "7.19.0", "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.19.0.tgz", @@ -1278,9 +2852,9 @@ "dev": true }, "@csstools/selector-specificity": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-2.0.2.tgz", - "integrity": "sha512-IkpVW/ehM1hWKln4fCA3NzJU8KwD+kIOvPZA4cqxoJHtE21CCzjyp+Kxbu0i5I4tBNOlXPL9mjwnWlL0VEG4Fg==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-2.2.0.tgz", + "integrity": "sha512-+OJ9konv95ClSTOJCmMZqpd5+YGsB2S+x6w3E1oaM8UuR5j8nTNHYSz8c9BEPGDOCMQYIEEGlVPj/VY64iTbGw==", "dev": true }, "@discoveryjs/json-ext": { @@ -1300,16 +2874,39 @@ "jsdoc-type-pratt-parser": "~2.2.3" } }, + "@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, + "requires": { + "eslint-visitor-keys": "^3.3.0" + }, + "dependencies": { + "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 + } + } + }, + "@eslint-community/regexpp": { + "version": "4.10.0", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.10.0.tgz", + "integrity": "sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==", + "dev": true + }, "@eslint/eslintrc": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.3.2.tgz", - "integrity": "sha512-AXYd23w1S/bv3fTs3Lz0vjiYemS08jWkI3hYyS9I1ry+0f+Yjs1wm+sU0BS8qDOPrBIkp4qHYC16I8uVtpLajQ==", + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz", + "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==", "dev": true, "requires": { "ajv": "^6.12.4", "debug": "^4.3.2", - "espree": "^9.4.0", - "globals": "^13.15.0", + "espree": "^9.6.0", + "globals": "^13.19.0", "ignore": "^5.2.0", "import-fresh": "^3.2.1", "js-yaml": "^4.1.0", @@ -1324,9 +2921,9 @@ "dev": true }, "globals": { - "version": "13.17.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.17.0.tgz", - "integrity": "sha512-1C+6nQRb1GwGMKm2dH/E7enFAMxGTmGI7/dEdhy/DNelv85w9B72t3uc5frtMNXIbzrarJJ/lTCjcaZwbLJmyw==", + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", "dev": true, "requires": { "type-fest": "^0.20.2" @@ -1349,6 +2946,12 @@ } } }, + "@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 + }, "@hapi/hoek": { "version": "9.3.0", "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-9.3.0.tgz", @@ -1365,22 +2968,16 @@ } }, "@humanwhocodes/config-array": { - "version": "0.10.7", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.10.7.tgz", - "integrity": "sha512-MDl6D6sBsaV452/QSdX+4CXIjZhIcI0PELsxUjk4U828yd58vk3bTIvk/6w5FY+4hIy9sLW0sfrV7K7Kc++j/w==", + "version": "0.11.14", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.14.tgz", + "integrity": "sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==", "dev": true, "requires": { - "@humanwhocodes/object-schema": "^1.2.1", - "debug": "^4.1.1", - "minimatch": "^3.0.4" + "@humanwhocodes/object-schema": "^2.0.2", + "debug": "^4.3.1", + "minimatch": "^3.0.5" } }, - "@humanwhocodes/gitignore-to-minimatch": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@humanwhocodes/gitignore-to-minimatch/-/gitignore-to-minimatch-1.0.2.tgz", - "integrity": "sha512-rSqmMJDdLFUsyxR6FMtD00nfQKKLFb1kv+qBbOVKqErvloEIJLo5bDTJTQNTYgeyp78JsA7u/NPi5jT1GR/MuA==", - "dev": true - }, "@humanwhocodes/module-importer": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", @@ -1388,9 +2985,9 @@ "dev": true }, "@humanwhocodes/object-schema": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", - "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", + "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==", "dev": true }, "@istanbuljs/load-nyc-config": { @@ -1458,16 +3055,16 @@ "dev": true }, "@jest/console": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/console/-/console-27.5.1.tgz", - "integrity": "sha512-kZ/tNpS3NXn0mlXXXPNuDZnb4c0oZ20r4K5eemM2k30ZC3G0T02nXUvyhf5YdbXWHPEJLc9qGLxEZ216MdL+Zg==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-29.7.0.tgz", + "integrity": "sha512-5Ni4CU7XHQi32IJ398EEP4RrB8eV09sXP2ROqD4bksHrnTree52PsxvX8tpL8LvTZ3pFzXyPbNQReSN41CAhOg==", "dev": true, "requires": { - "@jest/types": "^27.5.1", + "@jest/types": "^29.6.3", "@types/node": "*", "chalk": "^4.0.0", - "jest-message-util": "^27.5.1", - "jest-util": "^27.5.1", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0", "slash": "^3.0.0" }, "dependencies": { @@ -1523,37 +3120,37 @@ } }, "@jest/core": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/core/-/core-27.5.1.tgz", - "integrity": "sha512-AK6/UTrvQD0Cd24NSqmIA6rKsu0tKIxfiCducZvqxYdmMisOYAsdItspT+fQDQYARPf8XgjAFZi0ogW2agH5nQ==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/core/-/core-29.7.0.tgz", + "integrity": "sha512-n7aeXWKMnGtDA48y8TLWJPJmLmmZ642Ceo78cYWEpiD7FzDgmNDV/GCVRorPABdXLJZ/9wzzgZAlHjXjxDHGsg==", "dev": true, "requires": { - "@jest/console": "^27.5.1", - "@jest/reporters": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", + "@jest/console": "^29.7.0", + "@jest/reporters": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", "@types/node": "*", "ansi-escapes": "^4.2.1", "chalk": "^4.0.0", - "emittery": "^0.8.1", + "ci-info": "^3.2.0", "exit": "^0.1.2", "graceful-fs": "^4.2.9", - "jest-changed-files": "^27.5.1", - "jest-config": "^27.5.1", - "jest-haste-map": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-resolve-dependencies": "^27.5.1", - "jest-runner": "^27.5.1", - "jest-runtime": "^27.5.1", - "jest-snapshot": "^27.5.1", - "jest-util": "^27.5.1", - "jest-validate": "^27.5.1", - "jest-watcher": "^27.5.1", + "jest-changed-files": "^29.7.0", + "jest-config": "^29.7.0", + "jest-haste-map": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-regex-util": "^29.6.3", + "jest-resolve": "^29.7.0", + "jest-resolve-dependencies": "^29.7.0", + "jest-runner": "^29.7.0", + "jest-runtime": "^29.7.0", + "jest-snapshot": "^29.7.0", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "jest-watcher": "^29.7.0", "micromatch": "^4.0.4", - "rimraf": "^3.0.0", + "pretty-format": "^29.7.0", "slash": "^3.0.0", "strip-ansi": "^6.0.0" }, @@ -1610,198 +3207,630 @@ } }, "@jest/environment": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-27.5.1.tgz", - "integrity": "sha512-/WQjhPJe3/ghaol/4Bq480JKXV/Rfw8nQdN7f41fM8VDHLcxKXou6QyXAh3EFr9/bVG3x74z1NWDkP87EiY8gA==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.7.0.tgz", + "integrity": "sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw==", "dev": true, "requires": { - "@jest/fake-timers": "^27.5.1", - "@jest/types": "^27.5.1", + "@jest/fake-timers": "^29.7.0", + "@jest/types": "^29.6.3", "@types/node": "*", - "jest-mock": "^27.5.1" + "jest-mock": "^29.7.0" + } + }, + "@jest/expect": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/expect/-/expect-29.7.0.tgz", + "integrity": "sha512-8uMeAMycttpva3P1lBHB8VciS9V0XAr3GymPpipdyQXbBcuhkLQOSe8E/p92RyAdToS6ZD1tFkX+CkhoECE0dQ==", + "dev": true, + "requires": { + "expect": "^29.7.0", + "jest-snapshot": "^29.7.0" + } + }, + "@jest/expect-utils": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.7.0.tgz", + "integrity": "sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA==", + "dev": true, + "requires": { + "jest-get-type": "^29.6.3" } }, "@jest/fake-timers": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-27.5.1.tgz", - "integrity": "sha512-/aPowoolwa07k7/oM3aASneNeBGCmGQsc3ugN4u6s4C/+s5M64MFo/+djTdiwcbQlRfFElGuDXWzaWj6QgKObQ==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.7.0.tgz", + "integrity": "sha512-q4DH1Ha4TTFPdxLsqDXK1d3+ioSL7yL5oCMJZgDYm6i+6CygW5E5xVr/D1HdsGxjt1ZWSfUAs9OxSB/BNelWrQ==", "dev": true, "requires": { - "@jest/types": "^27.5.1", - "@sinonjs/fake-timers": "^8.0.1", + "@jest/types": "^29.6.3", + "@sinonjs/fake-timers": "^10.0.2", "@types/node": "*", - "jest-message-util": "^27.5.1", - "jest-mock": "^27.5.1", - "jest-util": "^27.5.1" + "jest-message-util": "^29.7.0", + "jest-mock": "^29.7.0", + "jest-util": "^29.7.0" } }, "@jest/globals": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-27.5.1.tgz", - "integrity": "sha512-ZEJNB41OBQQgGzgyInAv0UUfDDj3upmHydjieSxFvTRuZElrx7tXg/uVQ5hYVEwiXs3+aMsAeEc9X7xiSKCm4Q==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-29.7.0.tgz", + "integrity": "sha512-mpiz3dutLbkW2MNFubUGUEVLkTGiqW6yLVTA+JbP6fI6J5iL9Y0Nlg8k95pcF8ctKwCS7WVxteBs29hhfAotzQ==", "dev": true, "requires": { - "@jest/environment": "^27.5.1", - "@jest/types": "^27.5.1", - "expect": "^27.5.1" + "@jest/environment": "^29.7.0", + "@jest/expect": "^29.7.0", + "@jest/types": "^29.6.3", + "jest-mock": "^29.7.0" } }, "@jest/reporters": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-27.5.1.tgz", - "integrity": "sha512-cPXh9hWIlVJMQkVk84aIvXuBB4uQQmFqZiacloFuGiP3ah1sbCxCosidXFDfqG8+6fO1oR2dTJTlsOy4VFmUfw==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-29.7.0.tgz", + "integrity": "sha512-DApq0KJbJOEzAFYjHADNNxAE3KbhxQB1y5Kplb5Waqw6zVbuWatSnMjE5gs8FUgEPmNsnZA3NCWl9NG0ia04Pg==", "dev": true, "requires": { "@bcoe/v8-coverage": "^0.2.3", - "@jest/console": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", + "@jest/console": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@jridgewell/trace-mapping": "^0.3.18", "@types/node": "*", "chalk": "^4.0.0", "collect-v8-coverage": "^1.0.0", "exit": "^0.1.2", - "glob": "^7.1.2", + "glob": "^7.1.3", "graceful-fs": "^4.2.9", "istanbul-lib-coverage": "^3.0.0", - "istanbul-lib-instrument": "^5.1.0", + "istanbul-lib-instrument": "^6.0.0", "istanbul-lib-report": "^3.0.0", "istanbul-lib-source-maps": "^4.0.0", "istanbul-reports": "^3.1.3", - "jest-haste-map": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0", + "jest-worker": "^29.7.0", "slash": "^3.0.0", - "source-map": "^0.6.0", "string-length": "^4.0.1", - "terminal-link": "^2.0.0", - "v8-to-istanbul": "^8.1.0" + "strip-ansi": "^6.0.0", + "v8-to-istanbul": "^9.0.1" }, "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "@babel/code-frame": { + "version": "7.24.2", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz", + "integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==", "dev": true, "requires": { - "color-convert": "^2.0.1" + "@babel/highlight": "^7.24.2", + "picocolors": "^1.0.0" } }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "@babel/compat-data": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.4.tgz", + "integrity": "sha512-vg8Gih2MLK+kOkHJp4gBEIkyaIi00jgWot2D9QOmmfLC8jINSOzmCLta6Bvz/JSBCqnegV0L80jhxkol5GWNfQ==", + "dev": true + }, + "@babel/core": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.4.tgz", + "integrity": "sha512-MBVlMXP+kkl5394RBLSxxk/iLTeVGuXTV3cIDXavPpMMqnSnt6apKgan/U8O3USWZCWZT/TbgfEpKa4uMgN4Dg==", + "dev": true, + "requires": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.24.2", + "@babel/generator": "^7.24.4", + "@babel/helper-compilation-targets": "^7.23.6", + "@babel/helper-module-transforms": "^7.23.3", + "@babel/helpers": "^7.24.4", + "@babel/parser": "^7.24.4", + "@babel/template": "^7.24.0", + "@babel/traverse": "^7.24.1", + "@babel/types": "^7.24.0", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + }, + "dependencies": { + "semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true + } + } + }, + "@babel/generator": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.4.tgz", + "integrity": "sha512-Xd6+v6SnjWVx/nus+y0l1sxMOTOMBkyL4+BIdbALyatQnAe/SRVjANeDPSCYaX+i1iJmuGSKf3Z+E+V/va1Hvw==", "dev": true, "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "@babel/types": "^7.24.0", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^2.5.1" } }, - "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==", + "@babel/helper-compilation-targets": { + "version": "7.23.6", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz", + "integrity": "sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==", "dev": true, "requires": { - "color-name": "~1.1.4" + "@babel/compat-data": "^7.23.5", + "@babel/helper-validator-option": "^7.23.5", + "browserslist": "^4.22.2", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "dependencies": { + "semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true + } } }, - "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==", + "@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 }, - "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 + "@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, + "requires": { + "@babel/template": "^7.22.15", + "@babel/types": "^7.23.0" + } }, - "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 + "@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, + "requires": { + "@babel/types": "^7.22.5" + } }, - "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==", + "@babel/helper-module-imports": { + "version": "7.24.3", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.3.tgz", + "integrity": "sha512-viKb0F9f2s0BCS22QSF308z/+1YWKV/76mwt61NBzS5izMzDPwdq1pTrzf+Li3npBWX9KdQbkeCt1jSAM7lZqg==", "dev": true, "requires": { - "has-flag": "^4.0.0" + "@babel/types": "^7.24.0" } - } - } - }, - "@jest/source-map": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-27.5.1.tgz", - "integrity": "sha512-y9NIHUYF3PJRlHk98NdC/N1gl88BL08aQQgu4k4ZopQkCw9t9cV8mtl3TV8b/YCB8XaVTFrmUTAJvjsntDireg==", - "dev": true, - "requires": { - "callsites": "^3.0.0", - "graceful-fs": "^4.2.9", - "source-map": "^0.6.0" + }, + "@babel/helper-module-transforms": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.23.3.tgz", + "integrity": "sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==", + "dev": true, + "requires": { + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-module-imports": "^7.22.15", + "@babel/helper-simple-access": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "@babel/helper-validator-identifier": "^7.22.20" + } + }, + "@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, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@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, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@babel/helper-string-parser": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", + "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", + "dev": true + }, + "@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 + }, + "@babel/helper-validator-option": { + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz", + "integrity": "sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==", + "dev": true + }, + "@babel/helpers": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.4.tgz", + "integrity": "sha512-FewdlZbSiwaVGlgT1DPANDuCHaDMiOo+D/IDYRFYjHOuv66xMSJ7fQwwODwRNAPkADIO/z1EoF/l2BCWlWABDw==", + "dev": true, + "requires": { + "@babel/template": "^7.24.0", + "@babel/traverse": "^7.24.1", + "@babel/types": "^7.24.0" + } + }, + "@babel/highlight": { + "version": "7.24.2", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.2.tgz", + "integrity": "sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==", + "dev": true, + "requires": { + "@babel/helper-validator-identifier": "^7.22.20", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" + }, + "dependencies": { + "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, + "requires": { + "color-convert": "^1.9.0" + } + }, + "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, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "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, + "requires": { + "color-name": "1.1.3" + } + }, + "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 + }, + "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 + }, + "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, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "@babel/parser": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.4.tgz", + "integrity": "sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg==", + "dev": true + }, + "@babel/template": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", + "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.23.5", + "@babel/parser": "^7.24.0", + "@babel/types": "^7.24.0" + } + }, + "@babel/traverse": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.1.tgz", + "integrity": "sha512-xuU6o9m68KeqZbQuDt2TcKSxUw/mrsvavlEqQ1leZ/B+C9tk6E4sRWy97WaXgvq5E+nU3cXMxv3WKOCanVMCmQ==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.24.1", + "@babel/generator": "^7.24.1", + "@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.24.1", + "@babel/types": "^7.24.0", + "debug": "^4.3.1", + "globals": "^11.1.0" + } + }, + "@babel/types": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", + "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", + "dev": true, + "requires": { + "@babel/helper-string-parser": "^7.23.4", + "@babel/helper-validator-identifier": "^7.22.20", + "to-fast-properties": "^2.0.0" + } + }, + "@jridgewell/gen-mapping": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", + "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", + "dev": true, + "requires": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + } + }, + "@jridgewell/set-array": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", + "dev": true + }, + "@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "dev": true, + "requires": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "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, + "requires": { + "color-convert": "^2.0.1" + } + }, + "browserslist": { + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", + "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", + "dev": true, + "requires": { + "caniuse-lite": "^1.0.30001587", + "electron-to-chromium": "^1.4.668", + "node-releases": "^2.0.14", + "update-browserslist-db": "^1.0.13" + } + }, + "caniuse-lite": { + "version": "1.0.30001612", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001612.tgz", + "integrity": "sha512-lFgnZ07UhaCcsSZgWW0K5j4e69dK1u/ltrL9lTUiFOwNHs12S3UMIEYgBV0Z6C6hRDev7iRnMzzYmKabYdXF9g==", + "dev": true + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "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, + "requires": { + "color-name": "~1.1.4" + } + }, + "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 + }, + "convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true + }, + "electron-to-chromium": { + "version": "1.4.748", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.748.tgz", + "integrity": "sha512-VWqjOlPZn70UZ8FTKUOkUvBLeTQ0xpty66qV0yJcAGY2/CthI4xyW9aEozRVtuwv3Kpf5xTesmJUcPwuJmgP4A==", + "dev": true + }, + "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 + }, + "istanbul-lib-instrument": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.2.tgz", + "integrity": "sha512-1WUsZ9R1lA0HtBSohTkm39WTPlNKSJ5iFk7UwqXkBLoHQT+hfqPsfsTDVuZdKGaBwn7din9bS7SsnoAr943hvw==", + "dev": true, + "requires": { + "@babel/core": "^7.23.9", + "@babel/parser": "^7.23.9", + "@istanbuljs/schema": "^0.1.3", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^7.5.4" + } + }, + "node-releases": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", + "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", + "dev": true + }, + "semver": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + }, + "dependencies": { + "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, + "requires": { + "yallist": "^4.0.0" + } + } + } + }, + "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, + "requires": { + "has-flag": "^4.0.0" + } + }, + "update-browserslist-db": { + "version": "1.0.13", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", + "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", + "dev": true, + "requires": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + } + } + }, + "@jest/schemas": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz", + "integrity": "sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==", + "dev": true, + "requires": { + "@sinclair/typebox": "^0.27.8" + } + }, + "@jest/source-map": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-29.6.3.tgz", + "integrity": "sha512-MHjT95QuipcPrpLM+8JMSzFx6eHp5Bm+4XeFDJlwsvVBjmKNiIAvasGK2fxz2WbGRlnvqehFbh07MMa7n3YJnw==", + "dev": true, + "requires": { + "@jridgewell/trace-mapping": "^0.3.18", + "callsites": "^3.0.0", + "graceful-fs": "^4.2.9" }, "dependencies": { - "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 + "@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "dev": true, + "requires": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } } } }, "@jest/test-result": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-27.5.1.tgz", - "integrity": "sha512-EW35l2RYFUcUQxFJz5Cv5MTOxlJIQs4I7gxzi2zVU7PJhOwfYq1MdC5nhSmYjX1gmMmLPvB3sIaC+BkcHRBfag==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-29.7.0.tgz", + "integrity": "sha512-Fdx+tv6x1zlkJPcWXmMDAG2HBnaR9XPSd5aDWQVsfrZmLVT3lU1cwyxLgRmXR9yrq4NBoEm9BMsfgFzTQAbJYA==", "dev": true, "requires": { - "@jest/console": "^27.5.1", - "@jest/types": "^27.5.1", + "@jest/console": "^29.7.0", + "@jest/types": "^29.6.3", "@types/istanbul-lib-coverage": "^2.0.0", "collect-v8-coverage": "^1.0.0" } }, "@jest/test-sequencer": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-27.5.1.tgz", - "integrity": "sha512-LCheJF7WB2+9JuCS7VB/EmGIdQuhtqjRNI9A43idHv3E4KltCTsPsLxvdaubFHSYwY/fNjMWjl6vNRhDiN7vpQ==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-29.7.0.tgz", + "integrity": "sha512-GQwJ5WZVrKnOJuiYiAF52UNUJXgTZx1NHjFSEB0qEMmSZKAkdMoIzw/Cj6x6NF4AvV23AUqDpFzQkN/eYCYTxw==", "dev": true, "requires": { - "@jest/test-result": "^27.5.1", + "@jest/test-result": "^29.7.0", "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-runtime": "^27.5.1" + "jest-haste-map": "^29.7.0", + "slash": "^3.0.0" } }, "@jest/transform": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", - "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-29.7.0.tgz", + "integrity": "sha512-ok/BTPFzFKVMwO5eOHRrvnBVHdRy9IrsrW1GpMaQ9MCnilNLXQKmAX8s1YXDFaai9xJpac2ySzV0YeRRECr2Vw==", "dev": true, "requires": { - "@babel/core": "^7.1.0", - "@jest/types": "^27.5.1", + "@babel/core": "^7.11.6", + "@jest/types": "^29.6.3", + "@jridgewell/trace-mapping": "^0.3.18", "babel-plugin-istanbul": "^6.1.1", "chalk": "^4.0.0", - "convert-source-map": "^1.4.0", - "fast-json-stable-stringify": "^2.0.0", + "convert-source-map": "^2.0.0", + "fast-json-stable-stringify": "^2.1.0", "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-util": "^27.5.1", + "jest-haste-map": "^29.7.0", + "jest-regex-util": "^29.6.3", + "jest-util": "^29.7.0", "micromatch": "^4.0.4", "pirates": "^4.0.4", "slash": "^3.0.0", - "source-map": "^0.6.1", - "write-file-atomic": "^3.0.0" + "write-file-atomic": "^4.0.2" }, "dependencies": { + "@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "dev": true, + "requires": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, "ansi-styles": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", @@ -1836,18 +3865,18 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, + "convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true + }, "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 }, - "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 - }, "supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", @@ -1856,19 +3885,30 @@ "requires": { "has-flag": "^4.0.0" } + }, + "write-file-atomic": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", + "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", + "dev": true, + "requires": { + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.7" + } } } }, "@jest/types": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.3.tgz", + "integrity": "sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==", "dev": true, "requires": { + "@jest/schemas": "^29.6.3", "@types/istanbul-lib-coverage": "^2.0.0", "@types/istanbul-reports": "^3.0.0", "@types/node": "*", - "@types/yargs": "^16.0.0", + "@types/yargs": "^17.0.8", "chalk": "^4.0.0" }, "dependencies": { @@ -1946,306 +3986,2181 @@ "dev": true }, "@jridgewell/source-map": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.2.tgz", - "integrity": "sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==", + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.6.tgz", + "integrity": "sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==", "dev": true, "requires": { - "@jridgewell/gen-mapping": "^0.3.0", - "@jridgewell/trace-mapping": "^0.3.9" + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25" }, "dependencies": { "@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", + "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", + "dev": true, + "requires": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + } + }, + "@jridgewell/set-array": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", + "dev": true + }, + "@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "dev": true, + "requires": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + } + } + }, + "@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 + }, + "@jridgewell/trace-mapping": { + "version": "0.3.15", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.15.tgz", + "integrity": "sha512-oWZNOULl+UbhsgB51uuZzglikfIKSUBO/M9W2OfEjn7cmqoAiCgmv9lyACTUacZwBz0ITnJ2NqjU8Tx0DHL88g==", + "dev": true, + "requires": { + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + }, + "@kwsites/file-exists": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@kwsites/file-exists/-/file-exists-1.1.1.tgz", + "integrity": "sha512-m9/5YGR18lIwxSFDwfE3oA7bWuq9kdau6ugN4H2rJeyhFQZcG9AgSHkQtSD15a8WvTgfz9aikZMrKPHvbpqFiw==", + "dev": true, + "requires": { + "debug": "^4.1.1" + } + }, + "@kwsites/promise-deferred": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@kwsites/promise-deferred/-/promise-deferred-1.1.1.tgz", + "integrity": "sha512-GaHYm+c0O9MjZRu0ongGBRbinu8gVAMd2UZjji6jVmqKtZluZnptXGWhz1E8j8D2HJ3f/yMxKAUC0b+57wncIw==", + "dev": true + }, + "@leichtgewicht/ip-codec": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.5.tgz", + "integrity": "sha512-Vo+PSpZG2/fmgmiNzYK9qWRh8h/CHrwD0mo1h1DzL4yzHNSfWYujGTYsWGreD000gcgmZ7K4Ys6Tx9TxtsKdDw==", + "dev": true + }, + "@nicolo-ribaudo/eslint-scope-5-internals": { + "version": "5.1.1-v1", + "resolved": "https://registry.npmjs.org/@nicolo-ribaudo/eslint-scope-5-internals/-/eslint-scope-5-internals-5.1.1-v1.tgz", + "integrity": "sha512-54/JRvkLIzzDWshCWfuhadfrfZVPiElY8Fcgmg1HroEly/EDSszzhBAsarCux+D/kOslTRquNzuyGSmUSTTHGg==", + "dev": true, + "requires": { + "eslint-scope": "5.1.1" + } + }, + "@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, + "requires": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + } + }, + "@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 + }, + "@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, + "requires": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + } + }, + "@pkgr/core": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.1.1.tgz", + "integrity": "sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA==", + "dev": true + }, + "@pmmmwh/react-refresh-webpack-plugin": { + "version": "0.5.11", + "resolved": "https://registry.npmjs.org/@pmmmwh/react-refresh-webpack-plugin/-/react-refresh-webpack-plugin-0.5.11.tgz", + "integrity": "sha512-7j/6vdTym0+qZ6u4XbSAxrWBGYSdCfTzySkj7WAFgDLmSyWlOrWvpyzxlFh5jtw9dn0oL/jtW+06XfFiisN3JQ==", + "dev": true, + "requires": { + "ansi-html-community": "^0.0.8", + "common-path-prefix": "^3.0.0", + "core-js-pure": "^3.23.3", + "error-stack-parser": "^2.0.6", + "find-up": "^5.0.0", + "html-entities": "^2.1.0", + "loader-utils": "^2.0.4", + "schema-utils": "^3.0.0", + "source-map": "^0.7.3" + } + }, + "@polka/url": { + "version": "1.0.0-next.25", + "resolved": "https://registry.npmjs.org/@polka/url/-/url-1.0.0-next.25.tgz", + "integrity": "sha512-j7P6Rgr3mmtdkeDGTe0E/aYyWEWVtc5yFXtHCRHs28/jptDEWfaVOc5T7cblqy1XKPPfCxJc/8DwQ5YgLOZOVQ==", + "dev": true + }, + "@puppeteer/browsers": { + "version": "1.4.6", + "resolved": "https://registry.npmjs.org/@puppeteer/browsers/-/browsers-1.4.6.tgz", + "integrity": "sha512-x4BEjr2SjOPowNeiguzjozQbsc6h437ovD/wu+JpaenxVLm3jkgzHY2xOslMTp50HoTvQreMjiexiGQw1sqZlQ==", + "dev": true, + "requires": { + "debug": "4.3.4", + "extract-zip": "2.0.1", + "progress": "2.0.3", + "proxy-agent": "6.3.0", + "tar-fs": "3.0.4", + "unbzip2-stream": "1.4.3", + "yargs": "17.7.1" + }, + "dependencies": { + "extract-zip": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz", + "integrity": "sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==", + "dev": true, + "requires": { + "@types/yauzl": "^2.9.1", + "debug": "^4.1.1", + "get-stream": "^5.1.0", + "yauzl": "^2.10.0" + } + }, + "yargs": { + "version": "17.7.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.1.tgz", + "integrity": "sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw==", + "dev": true, + "requires": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + } + } + } + }, + "@sentry/core": { + "version": "6.19.7", + "resolved": "https://registry.npmjs.org/@sentry/core/-/core-6.19.7.tgz", + "integrity": "sha512-tOfZ/umqB2AcHPGbIrsFLcvApdTm9ggpi/kQZFkej7kMphjT+SGBiQfYtjyg9jcRW+ilAR4JXC9BGKsdEQ+8Vw==", + "dev": true, + "requires": { + "@sentry/hub": "6.19.7", + "@sentry/minimal": "6.19.7", + "@sentry/types": "6.19.7", + "@sentry/utils": "6.19.7", + "tslib": "^1.9.3" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + } + } + }, + "@sentry/hub": { + "version": "6.19.7", + "resolved": "https://registry.npmjs.org/@sentry/hub/-/hub-6.19.7.tgz", + "integrity": "sha512-y3OtbYFAqKHCWezF0EGGr5lcyI2KbaXW2Ik7Xp8Mu9TxbSTuwTe4rTntwg8ngPjUQU3SUHzgjqVB8qjiGqFXCA==", + "dev": true, + "requires": { + "@sentry/types": "6.19.7", + "@sentry/utils": "6.19.7", + "tslib": "^1.9.3" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + } + } + }, + "@sentry/minimal": { + "version": "6.19.7", + "resolved": "https://registry.npmjs.org/@sentry/minimal/-/minimal-6.19.7.tgz", + "integrity": "sha512-wcYmSJOdvk6VAPx8IcmZgN08XTXRwRtB1aOLZm+MVHjIZIhHoBGZJYTVQS/BWjldsamj2cX3YGbGXNunaCfYJQ==", + "dev": true, + "requires": { + "@sentry/hub": "6.19.7", + "@sentry/types": "6.19.7", + "tslib": "^1.9.3" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + } + } + }, + "@sentry/node": { + "version": "6.19.7", + "resolved": "https://registry.npmjs.org/@sentry/node/-/node-6.19.7.tgz", + "integrity": "sha512-gtmRC4dAXKODMpHXKfrkfvyBL3cI8y64vEi3fDD046uqYcrWdgoQsffuBbxMAizc6Ez1ia+f0Flue6p15Qaltg==", + "dev": true, + "requires": { + "@sentry/core": "6.19.7", + "@sentry/hub": "6.19.7", + "@sentry/types": "6.19.7", + "@sentry/utils": "6.19.7", + "cookie": "^0.4.1", + "https-proxy-agent": "^5.0.0", + "lru_map": "^0.3.3", + "tslib": "^1.9.3" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + } + } + }, + "@sentry/types": { + "version": "6.19.7", + "resolved": "https://registry.npmjs.org/@sentry/types/-/types-6.19.7.tgz", + "integrity": "sha512-jH84pDYE+hHIbVnab3Hr+ZXr1v8QABfhx39KknxqKWr2l0oEItzepV0URvbEhB446lk/S/59230dlUUIBGsXbg==", + "dev": true + }, + "@sentry/utils": { + "version": "6.19.7", + "resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-6.19.7.tgz", + "integrity": "sha512-z95ECmE3i9pbWoXQrD/7PgkBAzJYR+iXtPuTkpBjDKs86O3mT+PXOT3BAn79w2wkn7/i3vOGD2xVr1uiMl26dA==", + "dev": true, + "requires": { + "@sentry/types": "6.19.7", + "tslib": "^1.9.3" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + } + } + }, + "@sideway/address": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/@sideway/address/-/address-4.1.5.tgz", + "integrity": "sha512-IqO/DUQHUkPeixNQ8n0JA6102hT9CmaljNTPmQ1u8MEhBo/R4Q8eKLN/vGZxuebwOroDB4cbpjheD4+/sKFK4Q==", + "dev": true, + "requires": { + "@hapi/hoek": "^9.0.0" + } + }, + "@sideway/formula": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@sideway/formula/-/formula-3.0.1.tgz", + "integrity": "sha512-/poHZJJVjx3L+zVD6g9KgHfYnb443oi7wLu/XKojDviHy6HOEOA6z1Trk5aR1dGcmPenJEgb2sK2I80LeS3MIg==", + "dev": true + }, + "@sideway/pinpoint": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@sideway/pinpoint/-/pinpoint-2.0.0.tgz", + "integrity": "sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ==", + "dev": true + }, + "@sinclair/typebox": { + "version": "0.27.8", + "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", + "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==", + "dev": true + }, + "@sindresorhus/is": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.6.0.tgz", + "integrity": "sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==", + "dev": true + }, + "@sinonjs/commons": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz", + "integrity": "sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==", + "dev": true, + "requires": { + "type-detect": "4.0.8" + } + }, + "@sinonjs/fake-timers": { + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz", + "integrity": "sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==", + "dev": true, + "requires": { + "@sinonjs/commons": "^3.0.0" + } + }, + "@svgr/babel-plugin-add-jsx-attribute": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-8.0.0.tgz", + "integrity": "sha512-b9MIk7yhdS1pMCZM8VeNfUlSKVRhsHZNMl5O9SfaX0l0t5wjdgu4IDzGB8bpnGBBOjGST3rRFVsaaEtI4W6f7g==", + "dev": true + }, + "@svgr/babel-plugin-remove-jsx-attribute": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-attribute/-/babel-plugin-remove-jsx-attribute-8.0.0.tgz", + "integrity": "sha512-BcCkm/STipKvbCl6b7QFrMh/vx00vIP63k2eM66MfHJzPr6O2U0jYEViXkHJWqXqQYjdeA9cuCl5KWmlwjDvbA==", + "dev": true + }, + "@svgr/babel-plugin-remove-jsx-empty-expression": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-empty-expression/-/babel-plugin-remove-jsx-empty-expression-8.0.0.tgz", + "integrity": "sha512-5BcGCBfBxB5+XSDSWnhTThfI9jcO5f0Ai2V24gZpG+wXF14BzwxxdDb4g6trdOux0rhibGs385BeFMSmxtS3uA==", + "dev": true + }, + "@svgr/babel-plugin-replace-jsx-attribute-value": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-replace-jsx-attribute-value/-/babel-plugin-replace-jsx-attribute-value-8.0.0.tgz", + "integrity": "sha512-KVQ+PtIjb1BuYT3ht8M5KbzWBhdAjjUPdlMtpuw/VjT8coTrItWX6Qafl9+ji831JaJcu6PJNKCV0bp01lBNzQ==", + "dev": true + }, + "@svgr/babel-plugin-svg-dynamic-title": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-dynamic-title/-/babel-plugin-svg-dynamic-title-8.0.0.tgz", + "integrity": "sha512-omNiKqwjNmOQJ2v6ge4SErBbkooV2aAWwaPFs2vUY7p7GhVkzRkJ00kILXQvRhA6miHnNpXv7MRnnSjdRjK8og==", + "dev": true + }, + "@svgr/babel-plugin-svg-em-dimensions": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-em-dimensions/-/babel-plugin-svg-em-dimensions-8.0.0.tgz", + "integrity": "sha512-mURHYnu6Iw3UBTbhGwE/vsngtCIbHE43xCRK7kCw4t01xyGqb2Pd+WXekRRoFOBIY29ZoOhUCTEweDMdrjfi9g==", + "dev": true + }, + "@svgr/babel-plugin-transform-react-native-svg": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-react-native-svg/-/babel-plugin-transform-react-native-svg-8.1.0.tgz", + "integrity": "sha512-Tx8T58CHo+7nwJ+EhUwx3LfdNSG9R2OKfaIXXs5soiy5HtgoAEkDay9LIimLOcG8dJQH1wPZp/cnAv6S9CrR1Q==", + "dev": true + }, + "@svgr/babel-plugin-transform-svg-component": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-svg-component/-/babel-plugin-transform-svg-component-8.0.0.tgz", + "integrity": "sha512-DFx8xa3cZXTdb/k3kfPeaixecQLgKh5NVBMwD0AQxOzcZawK4oo1Jh9LbrcACUivsCA7TLG8eeWgrDXjTMhRmw==", + "dev": true + }, + "@svgr/babel-preset": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-preset/-/babel-preset-8.1.0.tgz", + "integrity": "sha512-7EYDbHE7MxHpv4sxvnVPngw5fuR6pw79SkcrILHJ/iMpuKySNCl5W1qcwPEpU+LgyRXOaAFgH0KhwD18wwg6ug==", + "dev": true, + "requires": { + "@svgr/babel-plugin-add-jsx-attribute": "8.0.0", + "@svgr/babel-plugin-remove-jsx-attribute": "8.0.0", + "@svgr/babel-plugin-remove-jsx-empty-expression": "8.0.0", + "@svgr/babel-plugin-replace-jsx-attribute-value": "8.0.0", + "@svgr/babel-plugin-svg-dynamic-title": "8.0.0", + "@svgr/babel-plugin-svg-em-dimensions": "8.0.0", + "@svgr/babel-plugin-transform-react-native-svg": "8.1.0", + "@svgr/babel-plugin-transform-svg-component": "8.0.0" + } + }, + "@svgr/core": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/@svgr/core/-/core-8.1.0.tgz", + "integrity": "sha512-8QqtOQT5ACVlmsvKOJNEaWmRPmcojMOzCz4Hs2BGG/toAp/K38LcsMRyLp349glq5AzJbCEeimEoxaX6v/fLrA==", + "dev": true, + "requires": { + "@babel/core": "^7.21.3", + "@svgr/babel-preset": "8.1.0", + "camelcase": "^6.2.0", + "cosmiconfig": "^8.1.3", + "snake-case": "^3.0.4" + }, + "dependencies": { + "@babel/code-frame": { + "version": "7.24.2", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz", + "integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==", + "dev": true, + "requires": { + "@babel/highlight": "^7.24.2", + "picocolors": "^1.0.0" + } + }, + "@babel/compat-data": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.4.tgz", + "integrity": "sha512-vg8Gih2MLK+kOkHJp4gBEIkyaIi00jgWot2D9QOmmfLC8jINSOzmCLta6Bvz/JSBCqnegV0L80jhxkol5GWNfQ==", + "dev": true + }, + "@babel/core": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.4.tgz", + "integrity": "sha512-MBVlMXP+kkl5394RBLSxxk/iLTeVGuXTV3cIDXavPpMMqnSnt6apKgan/U8O3USWZCWZT/TbgfEpKa4uMgN4Dg==", + "dev": true, + "requires": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.24.2", + "@babel/generator": "^7.24.4", + "@babel/helper-compilation-targets": "^7.23.6", + "@babel/helper-module-transforms": "^7.23.3", + "@babel/helpers": "^7.24.4", + "@babel/parser": "^7.24.4", + "@babel/template": "^7.24.0", + "@babel/traverse": "^7.24.1", + "@babel/types": "^7.24.0", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + } + }, + "@babel/generator": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.4.tgz", + "integrity": "sha512-Xd6+v6SnjWVx/nus+y0l1sxMOTOMBkyL4+BIdbALyatQnAe/SRVjANeDPSCYaX+i1iJmuGSKf3Z+E+V/va1Hvw==", + "dev": true, + "requires": { + "@babel/types": "^7.24.0", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^2.5.1" + } + }, + "@babel/helper-compilation-targets": { + "version": "7.23.6", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz", + "integrity": "sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.23.5", + "@babel/helper-validator-option": "^7.23.5", + "browserslist": "^4.22.2", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + } + }, + "@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 + }, + "@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, + "requires": { + "@babel/template": "^7.22.15", + "@babel/types": "^7.23.0" + } + }, + "@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, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@babel/helper-module-imports": { + "version": "7.24.3", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.3.tgz", + "integrity": "sha512-viKb0F9f2s0BCS22QSF308z/+1YWKV/76mwt61NBzS5izMzDPwdq1pTrzf+Li3npBWX9KdQbkeCt1jSAM7lZqg==", + "dev": true, + "requires": { + "@babel/types": "^7.24.0" + } + }, + "@babel/helper-module-transforms": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.23.3.tgz", + "integrity": "sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==", + "dev": true, + "requires": { + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-module-imports": "^7.22.15", + "@babel/helper-simple-access": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "@babel/helper-validator-identifier": "^7.22.20" + } + }, + "@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, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@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, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@babel/helper-string-parser": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", + "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", + "dev": true + }, + "@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 + }, + "@babel/helper-validator-option": { + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz", + "integrity": "sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==", + "dev": true + }, + "@babel/helpers": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.4.tgz", + "integrity": "sha512-FewdlZbSiwaVGlgT1DPANDuCHaDMiOo+D/IDYRFYjHOuv66xMSJ7fQwwODwRNAPkADIO/z1EoF/l2BCWlWABDw==", + "dev": true, + "requires": { + "@babel/template": "^7.24.0", + "@babel/traverse": "^7.24.1", + "@babel/types": "^7.24.0" + } + }, + "@babel/highlight": { + "version": "7.24.2", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.2.tgz", + "integrity": "sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==", + "dev": true, + "requires": { + "@babel/helper-validator-identifier": "^7.22.20", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" + } + }, + "@babel/parser": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.4.tgz", + "integrity": "sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg==", + "dev": true + }, + "@babel/template": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", + "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.23.5", + "@babel/parser": "^7.24.0", + "@babel/types": "^7.24.0" + } + }, + "@babel/traverse": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.1.tgz", + "integrity": "sha512-xuU6o9m68KeqZbQuDt2TcKSxUw/mrsvavlEqQ1leZ/B+C9tk6E4sRWy97WaXgvq5E+nU3cXMxv3WKOCanVMCmQ==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.24.1", + "@babel/generator": "^7.24.1", + "@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.24.1", + "@babel/types": "^7.24.0", + "debug": "^4.3.1", + "globals": "^11.1.0" + } + }, + "@babel/types": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", + "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", + "dev": true, + "requires": { + "@babel/helper-string-parser": "^7.23.4", + "@babel/helper-validator-identifier": "^7.22.20", + "to-fast-properties": "^2.0.0" + } + }, + "@jridgewell/gen-mapping": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", + "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", + "dev": true, + "requires": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + } + }, + "@jridgewell/set-array": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", + "dev": true + }, + "@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "dev": true, + "requires": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "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 + }, + "browserslist": { + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", + "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", + "dev": true, + "requires": { + "caniuse-lite": "^1.0.30001587", + "electron-to-chromium": "^1.4.668", + "node-releases": "^2.0.14", + "update-browserslist-db": "^1.0.13" + } + }, + "caniuse-lite": { + "version": "1.0.30001612", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001612.tgz", + "integrity": "sha512-lFgnZ07UhaCcsSZgWW0K5j4e69dK1u/ltrL9lTUiFOwNHs12S3UMIEYgBV0Z6C6hRDev7iRnMzzYmKabYdXF9g==", + "dev": true + }, + "convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true + }, + "cosmiconfig": { + "version": "8.3.6", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.3.6.tgz", + "integrity": "sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==", + "dev": true, + "requires": { + "import-fresh": "^3.3.0", + "js-yaml": "^4.1.0", + "parse-json": "^5.2.0", + "path-type": "^4.0.0" + } + }, + "electron-to-chromium": { + "version": "1.4.748", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.748.tgz", + "integrity": "sha512-VWqjOlPZn70UZ8FTKUOkUvBLeTQ0xpty66qV0yJcAGY2/CthI4xyW9aEozRVtuwv3Kpf5xTesmJUcPwuJmgP4A==", + "dev": true + }, + "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, + "requires": { + "argparse": "^2.0.1" + } + }, + "node-releases": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", + "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", + "dev": true + }, + "semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true + }, + "update-browserslist-db": { + "version": "1.0.13", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", + "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", + "dev": true, + "requires": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + } + } + } + }, + "@svgr/hast-util-to-babel-ast": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@svgr/hast-util-to-babel-ast/-/hast-util-to-babel-ast-8.0.0.tgz", + "integrity": "sha512-EbDKwO9GpfWP4jN9sGdYwPBU0kdomaPIL2Eu4YwmgP+sJeXT+L7bMwJUBnhzfH8Q2qMBqZ4fJwpCyYsAN3mt2Q==", + "dev": true, + "requires": { + "@babel/types": "^7.21.3", + "entities": "^4.4.0" + }, + "dependencies": { + "@babel/helper-string-parser": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", + "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", + "dev": true + }, + "@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 + }, + "@babel/types": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", + "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", + "dev": true, + "requires": { + "@babel/helper-string-parser": "^7.23.4", + "@babel/helper-validator-identifier": "^7.22.20", + "to-fast-properties": "^2.0.0" + } + } + } + }, + "@svgr/plugin-jsx": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/@svgr/plugin-jsx/-/plugin-jsx-8.1.0.tgz", + "integrity": "sha512-0xiIyBsLlr8quN+WyuxooNW9RJ0Dpr8uOnH/xrCVO8GLUcwHISwj1AG0k+LFzteTkAA0GbX0kj9q6Dk70PTiPA==", + "dev": true, + "requires": { + "@babel/core": "^7.21.3", + "@svgr/babel-preset": "8.1.0", + "@svgr/hast-util-to-babel-ast": "8.0.0", + "svg-parser": "^2.0.4" + }, + "dependencies": { + "@babel/code-frame": { + "version": "7.24.2", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz", + "integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==", + "dev": true, + "requires": { + "@babel/highlight": "^7.24.2", + "picocolors": "^1.0.0" + } + }, + "@babel/compat-data": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.4.tgz", + "integrity": "sha512-vg8Gih2MLK+kOkHJp4gBEIkyaIi00jgWot2D9QOmmfLC8jINSOzmCLta6Bvz/JSBCqnegV0L80jhxkol5GWNfQ==", + "dev": true + }, + "@babel/core": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.4.tgz", + "integrity": "sha512-MBVlMXP+kkl5394RBLSxxk/iLTeVGuXTV3cIDXavPpMMqnSnt6apKgan/U8O3USWZCWZT/TbgfEpKa4uMgN4Dg==", + "dev": true, + "requires": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.24.2", + "@babel/generator": "^7.24.4", + "@babel/helper-compilation-targets": "^7.23.6", + "@babel/helper-module-transforms": "^7.23.3", + "@babel/helpers": "^7.24.4", + "@babel/parser": "^7.24.4", + "@babel/template": "^7.24.0", + "@babel/traverse": "^7.24.1", + "@babel/types": "^7.24.0", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + } + }, + "@babel/generator": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.4.tgz", + "integrity": "sha512-Xd6+v6SnjWVx/nus+y0l1sxMOTOMBkyL4+BIdbALyatQnAe/SRVjANeDPSCYaX+i1iJmuGSKf3Z+E+V/va1Hvw==", + "dev": true, + "requires": { + "@babel/types": "^7.24.0", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^2.5.1" + } + }, + "@babel/helper-compilation-targets": { + "version": "7.23.6", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz", + "integrity": "sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.23.5", + "@babel/helper-validator-option": "^7.23.5", + "browserslist": "^4.22.2", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + } + }, + "@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 + }, + "@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, + "requires": { + "@babel/template": "^7.22.15", + "@babel/types": "^7.23.0" + } + }, + "@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, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@babel/helper-module-imports": { + "version": "7.24.3", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.3.tgz", + "integrity": "sha512-viKb0F9f2s0BCS22QSF308z/+1YWKV/76mwt61NBzS5izMzDPwdq1pTrzf+Li3npBWX9KdQbkeCt1jSAM7lZqg==", + "dev": true, + "requires": { + "@babel/types": "^7.24.0" + } + }, + "@babel/helper-module-transforms": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.23.3.tgz", + "integrity": "sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==", + "dev": true, + "requires": { + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-module-imports": "^7.22.15", + "@babel/helper-simple-access": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "@babel/helper-validator-identifier": "^7.22.20" + } + }, + "@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, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@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, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@babel/helper-string-parser": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", + "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", + "dev": true + }, + "@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 + }, + "@babel/helper-validator-option": { + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz", + "integrity": "sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==", + "dev": true + }, + "@babel/helpers": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.4.tgz", + "integrity": "sha512-FewdlZbSiwaVGlgT1DPANDuCHaDMiOo+D/IDYRFYjHOuv66xMSJ7fQwwODwRNAPkADIO/z1EoF/l2BCWlWABDw==", + "dev": true, + "requires": { + "@babel/template": "^7.24.0", + "@babel/traverse": "^7.24.1", + "@babel/types": "^7.24.0" + } + }, + "@babel/highlight": { + "version": "7.24.2", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.2.tgz", + "integrity": "sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==", + "dev": true, + "requires": { + "@babel/helper-validator-identifier": "^7.22.20", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" + } + }, + "@babel/parser": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.4.tgz", + "integrity": "sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg==", + "dev": true + }, + "@babel/template": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", + "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.23.5", + "@babel/parser": "^7.24.0", + "@babel/types": "^7.24.0" + } + }, + "@babel/traverse": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.1.tgz", + "integrity": "sha512-xuU6o9m68KeqZbQuDt2TcKSxUw/mrsvavlEqQ1leZ/B+C9tk6E4sRWy97WaXgvq5E+nU3cXMxv3WKOCanVMCmQ==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.24.1", + "@babel/generator": "^7.24.1", + "@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.24.1", + "@babel/types": "^7.24.0", + "debug": "^4.3.1", + "globals": "^11.1.0" + } + }, + "@babel/types": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", + "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", + "dev": true, + "requires": { + "@babel/helper-string-parser": "^7.23.4", + "@babel/helper-validator-identifier": "^7.22.20", + "to-fast-properties": "^2.0.0" + } + }, + "@jridgewell/gen-mapping": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", + "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", + "dev": true, + "requires": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + } + }, + "@jridgewell/set-array": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", + "dev": true + }, + "@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "dev": true, + "requires": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "browserslist": { + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", + "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", + "dev": true, + "requires": { + "caniuse-lite": "^1.0.30001587", + "electron-to-chromium": "^1.4.668", + "node-releases": "^2.0.14", + "update-browserslist-db": "^1.0.13" + } + }, + "caniuse-lite": { + "version": "1.0.30001612", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001612.tgz", + "integrity": "sha512-lFgnZ07UhaCcsSZgWW0K5j4e69dK1u/ltrL9lTUiFOwNHs12S3UMIEYgBV0Z6C6hRDev7iRnMzzYmKabYdXF9g==", + "dev": true + }, + "convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true + }, + "electron-to-chromium": { + "version": "1.4.748", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.748.tgz", + "integrity": "sha512-VWqjOlPZn70UZ8FTKUOkUvBLeTQ0xpty66qV0yJcAGY2/CthI4xyW9aEozRVtuwv3Kpf5xTesmJUcPwuJmgP4A==", + "dev": true + }, + "node-releases": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", + "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", + "dev": true + }, + "semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true + }, + "update-browserslist-db": { + "version": "1.0.13", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", + "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", + "dev": true, + "requires": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + } + } + } + }, + "@svgr/plugin-svgo": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/@svgr/plugin-svgo/-/plugin-svgo-8.1.0.tgz", + "integrity": "sha512-Ywtl837OGO9pTLIN/onoWLmDQ4zFUycI1g76vuKGEz6evR/ZTJlJuz3G/fIkb6OVBJ2g0o6CGJzaEjfmEo3AHA==", + "dev": true, + "requires": { + "cosmiconfig": "^8.1.3", + "deepmerge": "^4.3.1", + "svgo": "^3.0.2" + }, + "dependencies": { + "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 + }, + "cosmiconfig": { + "version": "8.3.6", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.3.6.tgz", + "integrity": "sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==", + "dev": true, + "requires": { + "import-fresh": "^3.3.0", + "js-yaml": "^4.1.0", + "parse-json": "^5.2.0", + "path-type": "^4.0.0" + } + }, + "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, + "requires": { + "argparse": "^2.0.1" + } + } + } + }, + "@svgr/webpack": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/@svgr/webpack/-/webpack-8.1.0.tgz", + "integrity": "sha512-LnhVjMWyMQV9ZmeEy26maJk+8HTIbd59cH4F2MJ439k9DqejRisfFNGAPvRYlKETuh9LrImlS8aKsBgKjMA8WA==", + "dev": true, + "requires": { + "@babel/core": "^7.21.3", + "@babel/plugin-transform-react-constant-elements": "^7.21.3", + "@babel/preset-env": "^7.20.2", + "@babel/preset-react": "^7.18.6", + "@babel/preset-typescript": "^7.21.0", + "@svgr/core": "8.1.0", + "@svgr/plugin-jsx": "8.1.0", + "@svgr/plugin-svgo": "8.1.0" + }, + "dependencies": { + "@babel/code-frame": { + "version": "7.24.2", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz", + "integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==", + "dev": true, + "requires": { + "@babel/highlight": "^7.24.2", + "picocolors": "^1.0.0" + } + }, + "@babel/compat-data": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.4.tgz", + "integrity": "sha512-vg8Gih2MLK+kOkHJp4gBEIkyaIi00jgWot2D9QOmmfLC8jINSOzmCLta6Bvz/JSBCqnegV0L80jhxkol5GWNfQ==", + "dev": true + }, + "@babel/core": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.4.tgz", + "integrity": "sha512-MBVlMXP+kkl5394RBLSxxk/iLTeVGuXTV3cIDXavPpMMqnSnt6apKgan/U8O3USWZCWZT/TbgfEpKa4uMgN4Dg==", + "dev": true, + "requires": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.24.2", + "@babel/generator": "^7.24.4", + "@babel/helper-compilation-targets": "^7.23.6", + "@babel/helper-module-transforms": "^7.23.3", + "@babel/helpers": "^7.24.4", + "@babel/parser": "^7.24.4", + "@babel/template": "^7.24.0", + "@babel/traverse": "^7.24.1", + "@babel/types": "^7.24.0", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + } + }, + "@babel/generator": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.4.tgz", + "integrity": "sha512-Xd6+v6SnjWVx/nus+y0l1sxMOTOMBkyL4+BIdbALyatQnAe/SRVjANeDPSCYaX+i1iJmuGSKf3Z+E+V/va1Hvw==", + "dev": true, + "requires": { + "@babel/types": "^7.24.0", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^2.5.1" + } + }, + "@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, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@babel/helper-builder-binary-assignment-operator-visitor": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.22.15.tgz", + "integrity": "sha512-QkBXwGgaoC2GtGZRoma6kv7Szfv06khvhFav67ZExau2RaXzy8MpHSMO2PNoP2XtmQphJQRHFfg77Bq731Yizw==", + "dev": true, + "requires": { + "@babel/types": "^7.22.15" + } + }, + "@babel/helper-compilation-targets": { + "version": "7.23.6", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz", + "integrity": "sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.23.5", + "@babel/helper-validator-option": "^7.23.5", + "browserslist": "^4.22.2", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + } + }, + "@babel/helper-create-class-features-plugin": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.24.4.tgz", + "integrity": "sha512-lG75yeuUSVu0pIcbhiYMXBXANHrpUPaOfu7ryAzskCgKUHuAxRQI5ssrtmF0X9UXldPlvT0XM/A4F44OXRt6iQ==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-function-name": "^7.23.0", + "@babel/helper-member-expression-to-functions": "^7.23.0", + "@babel/helper-optimise-call-expression": "^7.22.5", + "@babel/helper-replace-supers": "^7.24.1", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "semver": "^6.3.1" + } + }, + "@babel/helper-create-regexp-features-plugin": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.22.15.tgz", + "integrity": "sha512-29FkPLFjn4TPEa3RE7GpW+qbE8tlsu3jntNYNfcGsc49LphF1PQIiD+vMZ1z1xVOKt+93khA9tc2JBs3kBjA7w==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "regexpu-core": "^5.3.1", + "semver": "^6.3.1" + } + }, + "@babel/helper-define-polyfill-provider": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.6.2.tgz", + "integrity": "sha512-LV76g+C502biUK6AyZ3LK10vDpDyCzZnhZFXkH1L75zHPj68+qc8Zfpx2th+gzwA2MzyK+1g/3EPl62yFnVttQ==", + "dev": true, + "requires": { + "@babel/helper-compilation-targets": "^7.22.6", + "@babel/helper-plugin-utils": "^7.22.5", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2" + } + }, + "@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 + }, + "@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, + "requires": { + "@babel/template": "^7.22.15", + "@babel/types": "^7.23.0" + } + }, + "@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, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@babel/helper-member-expression-to-functions": { + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.23.0.tgz", + "integrity": "sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA==", + "dev": true, + "requires": { + "@babel/types": "^7.23.0" + } + }, + "@babel/helper-module-imports": { + "version": "7.24.3", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.3.tgz", + "integrity": "sha512-viKb0F9f2s0BCS22QSF308z/+1YWKV/76mwt61NBzS5izMzDPwdq1pTrzf+Li3npBWX9KdQbkeCt1jSAM7lZqg==", + "dev": true, + "requires": { + "@babel/types": "^7.24.0" + } + }, + "@babel/helper-module-transforms": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.23.3.tgz", + "integrity": "sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==", + "dev": true, + "requires": { + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-module-imports": "^7.22.15", + "@babel/helper-simple-access": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "@babel/helper-validator-identifier": "^7.22.20" + } + }, + "@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, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@babel/helper-plugin-utils": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", + "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", + "dev": true + }, + "@babel/helper-remap-async-to-generator": { + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.22.20.tgz", + "integrity": "sha512-pBGyV4uBqOns+0UvhsTO8qgl8hO89PmiDYv+/COyp1aeMcmfrfruz+/nCMFiYyFF/Knn0yfrC85ZzNFjembFTw==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-wrap-function": "^7.22.20" + } + }, + "@babel/helper-replace-supers": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.24.1.tgz", + "integrity": "sha512-QCR1UqC9BzG5vZl8BMicmZ28RuUBnHhAMddD8yHFHDRH9lLTZ9uUPehX8ctVPT8l0TKblJidqcgUUKGVrePleQ==", + "dev": true, + "requires": { + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-member-expression-to-functions": "^7.23.0", + "@babel/helper-optimise-call-expression": "^7.22.5" + } + }, + "@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, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@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, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@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, + "requires": { + "@babel/types": "^7.22.5" + } + }, + "@babel/helper-string-parser": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", + "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", + "dev": true + }, + "@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 + }, + "@babel/helper-validator-option": { + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz", + "integrity": "sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==", + "dev": true + }, + "@babel/helper-wrap-function": { + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.22.20.tgz", + "integrity": "sha512-pms/UwkOpnQe/PDAEdV/d7dVCoBbB+R4FvYoHGZz+4VPcg7RtYy2KP7S2lbuWM6FCSgob5wshfGESbC/hzNXZw==", + "dev": true, + "requires": { + "@babel/helper-function-name": "^7.22.5", + "@babel/template": "^7.22.15", + "@babel/types": "^7.22.19" + } + }, + "@babel/helpers": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.4.tgz", + "integrity": "sha512-FewdlZbSiwaVGlgT1DPANDuCHaDMiOo+D/IDYRFYjHOuv66xMSJ7fQwwODwRNAPkADIO/z1EoF/l2BCWlWABDw==", + "dev": true, + "requires": { + "@babel/template": "^7.24.0", + "@babel/traverse": "^7.24.1", + "@babel/types": "^7.24.0" + } + }, + "@babel/highlight": { + "version": "7.24.2", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.2.tgz", + "integrity": "sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==", + "dev": true, + "requires": { + "@babel/helper-validator-identifier": "^7.22.20", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" + } + }, + "@babel/parser": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.4.tgz", + "integrity": "sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg==", + "dev": true + }, + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.24.1.tgz", + "integrity": "sha512-y4HqEnkelJIOQGd+3g1bTeKsA5c6qM7eOn7VggGVbBc0y8MLSKHacwcIE2PplNlQSj0PqS9rrXL/nkPVK+kUNg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.24.0" + } + }, + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.24.1.tgz", + "integrity": "sha512-Hj791Ii4ci8HqnaKHAlLNs+zaLXb0EzSDhiAWp5VNlyvCNymYfacs64pxTxbH1znW/NcArSmwpmG9IKE/TUVVQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/plugin-transform-optional-chaining": "^7.24.1" + } + }, + "@babel/plugin-proposal-private-property-in-object": { + "version": "7.21.0-placeholder-for-preset-env.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz", + "integrity": "sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==", + "dev": true + }, + "@babel/plugin-syntax-import-assertions": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.24.1.tgz", + "integrity": "sha512-IuwnI5XnuF189t91XbxmXeCDz3qs6iDRO7GJ++wcfgeXNs/8FmIlKcpDSXNVyuLQxlwvskmI3Ct73wUODkJBlQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.24.0" + } + }, + "@babel/plugin-syntax-jsx": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.24.1.tgz", + "integrity": "sha512-2eCtxZXf+kbkMIsXS4poTvT4Yu5rXiRa+9xGVT56raghjmBTKMpFNc9R4IDiB4emao9eO22Ox7CxuJG7BgExqA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.24.0" + } + }, + "@babel/plugin-syntax-typescript": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.24.1.tgz", + "integrity": "sha512-Yhnmvy5HZEnHUty6i++gcfH1/l68AHnItFHnaCv6hn9dNh0hQvvQJsxpi4BMBFN5DLeHBuucT/0DgzXif/OyRw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.24.0" + } + }, + "@babel/plugin-transform-arrow-functions": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.24.1.tgz", + "integrity": "sha512-ngT/3NkRhsaep9ck9uj2Xhv9+xB1zShY3tM3g6om4xxCELwCDN4g4Aq5dRn48+0hasAql7s2hdBOysCfNpr4fw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.24.0" + } + }, + "@babel/plugin-transform-async-to-generator": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.24.1.tgz", + "integrity": "sha512-AawPptitRXp1y0n4ilKcGbRYWfbbzFWz2NqNu7dacYDtFtz0CMjG64b3LQsb3KIgnf4/obcUL78hfaOS7iCUfw==", + "dev": true, + "requires": { + "@babel/helper-module-imports": "^7.24.1", + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-remap-async-to-generator": "^7.22.20" + } + }, + "@babel/plugin-transform-block-scoped-functions": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.24.1.tgz", + "integrity": "sha512-TWWC18OShZutrv9C6mye1xwtam+uNi2bnTOCBUd5sZxyHOiWbU6ztSROofIMrK84uweEZC219POICK/sTYwfgg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.24.0" + } + }, + "@babel/plugin-transform-block-scoping": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.24.4.tgz", + "integrity": "sha512-nIFUZIpGKDf9O9ttyRXpHFpKC+X3Y5mtshZONuEUYBomAKoM4y029Jr+uB1bHGPhNmK8YXHevDtKDOLmtRrp6g==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.24.0" + } + }, + "@babel/plugin-transform-classes": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.24.1.tgz", + "integrity": "sha512-ZTIe3W7UejJd3/3R4p7ScyyOoafetUShSf4kCqV0O7F/RiHxVj/wRaRnQlrGwflvcehNA8M42HkAiEDYZu2F1Q==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-compilation-targets": "^7.23.6", + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-function-name": "^7.23.0", + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-replace-supers": "^7.24.1", + "@babel/helper-split-export-declaration": "^7.22.6", + "globals": "^11.1.0" + } + }, + "@babel/plugin-transform-computed-properties": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.24.1.tgz", + "integrity": "sha512-5pJGVIUfJpOS+pAqBQd+QMaTD2vCL/HcePooON6pDpHgRp4gNRmzyHTPIkXntwKsq3ayUFVfJaIKPw2pOkOcTw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/template": "^7.24.0" + } + }, + "@babel/plugin-transform-destructuring": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.24.1.tgz", + "integrity": "sha512-ow8jciWqNxR3RYbSNVuF4U2Jx130nwnBnhRw6N6h1bOejNkABmcI5X5oz29K4alWX7vf1C+o6gtKXikzRKkVdw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.24.0" + } + }, + "@babel/plugin-transform-dotall-regex": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.24.1.tgz", + "integrity": "sha512-p7uUxgSoZwZ2lPNMzUkqCts3xlp8n+o05ikjy7gbtFJSt9gdU88jAmtfmOxHM14noQXBxfgzf2yRWECiNVhTCw==", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.24.0" + } + }, + "@babel/plugin-transform-duplicate-keys": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.24.1.tgz", + "integrity": "sha512-msyzuUnvsjsaSaocV6L7ErfNsa5nDWL1XKNnDePLgmz+WdU4w/J8+AxBMrWfi9m4IxfL5sZQKUPQKDQeeAT6lA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.24.0" + } + }, + "@babel/plugin-transform-exponentiation-operator": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.24.1.tgz", + "integrity": "sha512-U1yX13dVBSwS23DEAqU+Z/PkwE9/m7QQy8Y9/+Tdb8UWYaGNDYwTLi19wqIAiROr8sXVum9A/rtiH5H0boUcTw==", + "dev": true, + "requires": { + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.22.15", + "@babel/helper-plugin-utils": "^7.24.0" + } + }, + "@babel/plugin-transform-for-of": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.24.1.tgz", + "integrity": "sha512-OxBdcnF04bpdQdR3i4giHZNZQn7cm8RQKcSwA17wAAqEELo1ZOwp5FFgeptWUQXFyT9kwHo10aqqauYkRZPCAg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5" + } + }, + "@babel/plugin-transform-function-name": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.24.1.tgz", + "integrity": "sha512-BXmDZpPlh7jwicKArQASrj8n22/w6iymRnvHYYd2zO30DbE277JO20/7yXJT3QxDPtiQiOxQBbZH4TpivNXIxA==", + "dev": true, + "requires": { + "@babel/helper-compilation-targets": "^7.23.6", + "@babel/helper-function-name": "^7.23.0", + "@babel/helper-plugin-utils": "^7.24.0" + } + }, + "@babel/plugin-transform-literals": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.24.1.tgz", + "integrity": "sha512-zn9pwz8U7nCqOYIiBaOxoQOtYmMODXTJnkxG4AtX8fPmnCRYWBOHD0qcpwS9e2VDSp1zNJYpdnFMIKb8jmwu6g==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.24.0" + } + }, + "@babel/plugin-transform-member-expression-literals": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.24.1.tgz", + "integrity": "sha512-4ojai0KysTWXzHseJKa1XPNXKRbuUrhkOPY4rEGeR+7ChlJVKxFa3H3Bz+7tWaGKgJAXUWKOGmltN+u9B3+CVg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.24.0" + } + }, + "@babel/plugin-transform-modules-amd": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.24.1.tgz", + "integrity": "sha512-lAxNHi4HVtjnHd5Rxg3D5t99Xm6H7b04hUS7EHIXcUl2EV4yl1gWdqZrNzXnSrHveL9qMdbODlLF55mvgjAfaQ==", + "dev": true, + "requires": { + "@babel/helper-module-transforms": "^7.23.3", + "@babel/helper-plugin-utils": "^7.24.0" + } + }, + "@babel/plugin-transform-modules-commonjs": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.24.1.tgz", + "integrity": "sha512-szog8fFTUxBfw0b98gEWPaEqF42ZUD/T3bkynW/wtgx2p/XCP55WEsb+VosKceRSd6njipdZvNogqdtI4Q0chw==", + "dev": true, + "requires": { + "@babel/helper-module-transforms": "^7.23.3", + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-simple-access": "^7.22.5" + } + }, + "@babel/plugin-transform-modules-systemjs": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.24.1.tgz", + "integrity": "sha512-mqQ3Zh9vFO1Tpmlt8QPnbwGHzNz3lpNEMxQb1kAemn/erstyqw1r9KeOlOfo3y6xAnFEcOv2tSyrXfmMk+/YZA==", + "dev": true, + "requires": { + "@babel/helper-hoist-variables": "^7.22.5", + "@babel/helper-module-transforms": "^7.23.3", + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-validator-identifier": "^7.22.20" + } + }, + "@babel/plugin-transform-modules-umd": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.24.1.tgz", + "integrity": "sha512-tuA3lpPj+5ITfcCluy6nWonSL7RvaG0AOTeAuvXqEKS34lnLzXpDb0dcP6K8jD0zWZFNDVly90AGFJPnm4fOYg==", + "dev": true, + "requires": { + "@babel/helper-module-transforms": "^7.23.3", + "@babel/helper-plugin-utils": "^7.24.0" + } + }, + "@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.22.5.tgz", + "integrity": "sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ==", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + } + }, + "@babel/plugin-transform-new-target": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.24.1.tgz", + "integrity": "sha512-/rurytBM34hYy0HKZQyA0nHbQgQNFm4Q/BOc9Hflxi2X3twRof7NaE5W46j4kQitm7SvACVRXsa6N/tSZxvPug==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.24.0" + } + }, + "@babel/plugin-transform-object-super": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.24.1.tgz", + "integrity": "sha512-oKJqR3TeI5hSLRxudMjFQ9re9fBVUU0GICqM3J1mi8MqlhVr6hC/ZN4ttAyMuQR6EZZIY6h/exe5swqGNNIkWQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-replace-supers": "^7.24.1" + } + }, + "@babel/plugin-transform-parameters": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.24.1.tgz", + "integrity": "sha512-8Jl6V24g+Uw5OGPeWNKrKqXPDw2YDjLc53ojwfMcKwlEoETKU9rU0mHUtcg9JntWI/QYzGAXNWEcVHZ+fR+XXg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.24.0" + } + }, + "@babel/plugin-transform-property-literals": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.24.1.tgz", + "integrity": "sha512-LetvD7CrHmEx0G442gOomRr66d7q8HzzGGr4PMHGr+5YIm6++Yke+jxj246rpvsbyhJwCLxcTn6zW1P1BSenqA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.24.0" + } + }, + "@babel/plugin-transform-regenerator": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.24.1.tgz", + "integrity": "sha512-sJwZBCzIBE4t+5Q4IGLaaun5ExVMRY0lYwos/jNecjMrVCygCdph3IKv0tkP5Fc87e/1+bebAmEAGBfnRD+cnw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.24.0", + "regenerator-transform": "^0.15.2" + } + }, + "@babel/plugin-transform-reserved-words": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.24.1.tgz", + "integrity": "sha512-JAclqStUfIwKN15HrsQADFgeZt+wexNQ0uLhuqvqAUFoqPMjEcFCYZBhq0LUdz6dZK/mD+rErhW71fbx8RYElg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.24.0" + } + }, + "@babel/plugin-transform-shorthand-properties": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.24.1.tgz", + "integrity": "sha512-LyjVB1nsJ6gTTUKRjRWx9C1s9hE7dLfP/knKdrfeH9UPtAGjYGgxIbFfx7xyLIEWs7Xe1Gnf8EWiUqfjLhInZA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.24.0" + } + }, + "@babel/plugin-transform-spread": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.24.1.tgz", + "integrity": "sha512-KjmcIM+fxgY+KxPVbjelJC6hrH1CgtPmTvdXAfn3/a9CnWGSTY7nH4zm5+cjmWJybdcPSsD0++QssDsjcpe47g==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5" + } + }, + "@babel/plugin-transform-sticky-regex": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.24.1.tgz", + "integrity": "sha512-9v0f1bRXgPVcPrngOQvLXeGNNVLc8UjMVfebo9ka0WF3/7+aVUHmaJVT3sa0XCzEFioPfPHZiOcYG9qOsH63cw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.24.0" + } + }, + "@babel/plugin-transform-template-literals": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.24.1.tgz", + "integrity": "sha512-WRkhROsNzriarqECASCNu/nojeXCDTE/F2HmRgOzi7NGvyfYGq1NEjKBK3ckLfRgGc6/lPAqP0vDOSw3YtG34g==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.24.0" + } + }, + "@babel/plugin-transform-typeof-symbol": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.24.1.tgz", + "integrity": "sha512-CBfU4l/A+KruSUoW+vTQthwcAdwuqbpRNB8HQKlZABwHRhsdHZ9fezp4Sn18PeAlYxTNiLMlx4xUBV3AWfg1BA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.24.0" + } + }, + "@babel/plugin-transform-typescript": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.24.4.tgz", + "integrity": "sha512-79t3CQ8+oBGk/80SQ8MN3Bs3obf83zJ0YZjDmDaEZN8MqhMI760apl5z6a20kFeMXBwJX99VpKT8CKxEBp5H1g==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-create-class-features-plugin": "^7.24.4", + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/plugin-syntax-typescript": "^7.24.1" + } + }, + "@babel/plugin-transform-unicode-escapes": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.24.1.tgz", + "integrity": "sha512-RlkVIcWT4TLI96zM660S877E7beKlQw7Ig+wqkKBiWfj0zH5Q4h50q6er4wzZKRNSYpfo6ILJ+hrJAGSX2qcNw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.24.0" + } + }, + "@babel/plugin-transform-unicode-regex": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.24.1.tgz", + "integrity": "sha512-2A/94wgZgxfTsiLaQ2E36XAOdcZmGAaEEgVmxQWwZXWkGhvoHbaqXcKnU8zny4ycpu3vNqg0L/PcCiYtHtA13g==", + "dev": true, + "requires": { + "@babel/helper-create-regexp-features-plugin": "^7.22.15", + "@babel/helper-plugin-utils": "^7.24.0" + } + }, + "@babel/preset-env": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.24.4.tgz", + "integrity": "sha512-7Kl6cSmYkak0FK/FXjSEnLJ1N9T/WA2RkMhu17gZ/dsxKJUuTYNIylahPTzqpLyJN4WhDif8X0XK1R8Wsguo/A==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.24.4", + "@babel/helper-compilation-targets": "^7.23.6", + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-validator-option": "^7.23.5", + "@babel/plugin-bugfix-firefox-class-in-computed-class-key": "^7.24.4", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.24.1", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.24.1", + "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": "^7.24.1", + "@babel/plugin-proposal-private-property-in-object": "7.21.0-placeholder-for-preset-env.2", + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3", + "@babel/plugin-syntax-import-assertions": "^7.24.1", + "@babel/plugin-syntax-import-attributes": "^7.24.1", + "@babel/plugin-syntax-import-meta": "^7.10.4", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5", + "@babel/plugin-syntax-unicode-sets-regex": "^7.18.6", + "@babel/plugin-transform-arrow-functions": "^7.24.1", + "@babel/plugin-transform-async-generator-functions": "^7.24.3", + "@babel/plugin-transform-async-to-generator": "^7.24.1", + "@babel/plugin-transform-block-scoped-functions": "^7.24.1", + "@babel/plugin-transform-block-scoping": "^7.24.4", + "@babel/plugin-transform-class-properties": "^7.24.1", + "@babel/plugin-transform-class-static-block": "^7.24.4", + "@babel/plugin-transform-classes": "^7.24.1", + "@babel/plugin-transform-computed-properties": "^7.24.1", + "@babel/plugin-transform-destructuring": "^7.24.1", + "@babel/plugin-transform-dotall-regex": "^7.24.1", + "@babel/plugin-transform-duplicate-keys": "^7.24.1", + "@babel/plugin-transform-dynamic-import": "^7.24.1", + "@babel/plugin-transform-exponentiation-operator": "^7.24.1", + "@babel/plugin-transform-export-namespace-from": "^7.24.1", + "@babel/plugin-transform-for-of": "^7.24.1", + "@babel/plugin-transform-function-name": "^7.24.1", + "@babel/plugin-transform-json-strings": "^7.24.1", + "@babel/plugin-transform-literals": "^7.24.1", + "@babel/plugin-transform-logical-assignment-operators": "^7.24.1", + "@babel/plugin-transform-member-expression-literals": "^7.24.1", + "@babel/plugin-transform-modules-amd": "^7.24.1", + "@babel/plugin-transform-modules-commonjs": "^7.24.1", + "@babel/plugin-transform-modules-systemjs": "^7.24.1", + "@babel/plugin-transform-modules-umd": "^7.24.1", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.22.5", + "@babel/plugin-transform-new-target": "^7.24.1", + "@babel/plugin-transform-nullish-coalescing-operator": "^7.24.1", + "@babel/plugin-transform-numeric-separator": "^7.24.1", + "@babel/plugin-transform-object-rest-spread": "^7.24.1", + "@babel/plugin-transform-object-super": "^7.24.1", + "@babel/plugin-transform-optional-catch-binding": "^7.24.1", + "@babel/plugin-transform-optional-chaining": "^7.24.1", + "@babel/plugin-transform-parameters": "^7.24.1", + "@babel/plugin-transform-private-methods": "^7.24.1", + "@babel/plugin-transform-private-property-in-object": "^7.24.1", + "@babel/plugin-transform-property-literals": "^7.24.1", + "@babel/plugin-transform-regenerator": "^7.24.1", + "@babel/plugin-transform-reserved-words": "^7.24.1", + "@babel/plugin-transform-shorthand-properties": "^7.24.1", + "@babel/plugin-transform-spread": "^7.24.1", + "@babel/plugin-transform-sticky-regex": "^7.24.1", + "@babel/plugin-transform-template-literals": "^7.24.1", + "@babel/plugin-transform-typeof-symbol": "^7.24.1", + "@babel/plugin-transform-unicode-escapes": "^7.24.1", + "@babel/plugin-transform-unicode-property-regex": "^7.24.1", + "@babel/plugin-transform-unicode-regex": "^7.24.1", + "@babel/plugin-transform-unicode-sets-regex": "^7.24.1", + "@babel/preset-modules": "0.1.6-no-external-plugins", + "babel-plugin-polyfill-corejs2": "^0.4.10", + "babel-plugin-polyfill-corejs3": "^0.10.4", + "babel-plugin-polyfill-regenerator": "^0.6.1", + "core-js-compat": "^3.31.0", + "semver": "^6.3.1" + } + }, + "@babel/preset-modules": { + "version": "0.1.6-no-external-plugins", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.6-no-external-plugins.tgz", + "integrity": "sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/types": "^7.4.4", + "esutils": "^2.0.2" + } + }, + "@babel/preset-typescript": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.24.1.tgz", + "integrity": "sha512-1DBaMmRDpuYQBPWD8Pf/WEwCrtgRHxsZnP4mIy9G/X+hFfbI47Q2G4t1Paakld84+qsk2fSsUPMKg71jkoOOaQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.24.0", + "@babel/helper-validator-option": "^7.23.5", + "@babel/plugin-syntax-jsx": "^7.24.1", + "@babel/plugin-transform-modules-commonjs": "^7.24.1", + "@babel/plugin-transform-typescript": "^7.24.1" + } + }, + "@babel/template": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", + "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.23.5", + "@babel/parser": "^7.24.0", + "@babel/types": "^7.24.0" + } + }, + "@babel/traverse": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.1.tgz", + "integrity": "sha512-xuU6o9m68KeqZbQuDt2TcKSxUw/mrsvavlEqQ1leZ/B+C9tk6E4sRWy97WaXgvq5E+nU3cXMxv3WKOCanVMCmQ==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.24.1", + "@babel/generator": "^7.24.1", + "@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.24.1", + "@babel/types": "^7.24.0", + "debug": "^4.3.1", + "globals": "^11.1.0" + } + }, + "@babel/types": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", + "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", + "dev": true, + "requires": { + "@babel/helper-string-parser": "^7.23.4", + "@babel/helper-validator-identifier": "^7.22.20", + "to-fast-properties": "^2.0.0" + } + }, + "@jridgewell/gen-mapping": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", + "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", + "dev": true, + "requires": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + } + }, + "@jridgewell/set-array": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", + "dev": true + }, + "@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "dev": true, + "requires": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "babel-plugin-polyfill-corejs2": { + "version": "0.4.11", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.11.tgz", + "integrity": "sha512-sMEJ27L0gRHShOh5G54uAAPaiCOygY/5ratXuiyb2G46FmlSpc9eFCzYVyDiPxfNbwzA7mYahmjQc5q+CZQ09Q==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.22.6", + "@babel/helper-define-polyfill-provider": "^0.6.2", + "semver": "^6.3.1" + } + }, + "babel-plugin-polyfill-corejs3": { + "version": "0.10.4", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.10.4.tgz", + "integrity": "sha512-25J6I8NGfa5YkCDogHRID3fVCadIR8/pGl1/spvCkzb6lVn6SR3ojpx9nOn9iEBcUsjY24AmdKm5khcfKdylcg==", + "dev": true, + "requires": { + "@babel/helper-define-polyfill-provider": "^0.6.1", + "core-js-compat": "^3.36.1" + } + }, + "babel-plugin-polyfill-regenerator": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.6.2.tgz", + "integrity": "sha512-2R25rQZWP63nGwaAswvDazbPXfrM3HwVoBXK6HcqeKrSrL/JqcC/rDcf95l4r7LXLyxDXc8uQDa064GubtCABg==", + "dev": true, + "requires": { + "@babel/helper-define-polyfill-provider": "^0.6.2" + } + }, + "browserslist": { + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", + "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", + "dev": true, + "requires": { + "caniuse-lite": "^1.0.30001587", + "electron-to-chromium": "^1.4.668", + "node-releases": "^2.0.14", + "update-browserslist-db": "^1.0.13" + } + }, + "caniuse-lite": { + "version": "1.0.30001612", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001612.tgz", + "integrity": "sha512-lFgnZ07UhaCcsSZgWW0K5j4e69dK1u/ltrL9lTUiFOwNHs12S3UMIEYgBV0Z6C6hRDev7iRnMzzYmKabYdXF9g==", + "dev": true + }, + "convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true + }, + "core-js-compat": { + "version": "3.37.0", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.37.0.tgz", + "integrity": "sha512-vYq4L+T8aS5UuFg4UwDhc7YNRWVeVZwltad9C/jV3R2LgVOpS9BDr7l/WL6BN0dbV3k1XejPTHqqEzJgsa0frA==", + "dev": true, + "requires": { + "browserslist": "^4.23.0" + } + }, + "electron-to-chromium": { + "version": "1.4.748", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.748.tgz", + "integrity": "sha512-VWqjOlPZn70UZ8FTKUOkUvBLeTQ0xpty66qV0yJcAGY2/CthI4xyW9aEozRVtuwv3Kpf5xTesmJUcPwuJmgP4A==", + "dev": true + }, + "node-releases": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", + "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", + "dev": true + }, + "regenerator-transform": { + "version": "0.15.2", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.2.tgz", + "integrity": "sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==", + "dev": true, + "requires": { + "@babel/runtime": "^7.8.4" + } + }, + "regexpu-core": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.2.tgz", + "integrity": "sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==", + "dev": true, + "requires": { + "@babel/regjsgen": "^0.8.0", + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^10.1.0", + "regjsparser": "^0.9.1", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.1.0" + } + }, + "semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true + }, + "unicode-match-property-value-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz", + "integrity": "sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==", + "dev": true + }, + "update-browserslist-db": { + "version": "1.0.13", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", + "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", "dev": true, "requires": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" + "escalade": "^3.1.1", + "picocolors": "^1.0.0" } } } }, - "@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 - }, - "@jridgewell/trace-mapping": { - "version": "0.3.15", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.15.tgz", - "integrity": "sha512-oWZNOULl+UbhsgB51uuZzglikfIKSUBO/M9W2OfEjn7cmqoAiCgmv9lyACTUacZwBz0ITnJ2NqjU8Tx0DHL88g==", - "dev": true, - "requires": { - "@jridgewell/resolve-uri": "^3.0.3", - "@jridgewell/sourcemap-codec": "^1.4.10" - } - }, - "@kwsites/file-exists": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@kwsites/file-exists/-/file-exists-1.1.1.tgz", - "integrity": "sha512-m9/5YGR18lIwxSFDwfE3oA7bWuq9kdau6ugN4H2rJeyhFQZcG9AgSHkQtSD15a8WvTgfz9aikZMrKPHvbpqFiw==", - "dev": true, - "requires": { - "debug": "^4.1.1" - } - }, - "@kwsites/promise-deferred": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@kwsites/promise-deferred/-/promise-deferred-1.1.1.tgz", - "integrity": "sha512-GaHYm+c0O9MjZRu0ongGBRbinu8gVAMd2UZjji6jVmqKtZluZnptXGWhz1E8j8D2HJ3f/yMxKAUC0b+57wncIw==", - "dev": true - }, - "@leichtgewicht/ip-codec": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.4.tgz", - "integrity": "sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A==", - "dev": true - }, - "@nicolo-ribaudo/eslint-scope-5-internals": { - "version": "5.1.1-v1", - "resolved": "https://registry.npmjs.org/@nicolo-ribaudo/eslint-scope-5-internals/-/eslint-scope-5-internals-5.1.1-v1.tgz", - "integrity": "sha512-54/JRvkLIzzDWshCWfuhadfrfZVPiElY8Fcgmg1HroEly/EDSszzhBAsarCux+D/kOslTRquNzuyGSmUSTTHGg==", - "dev": true, - "requires": { - "eslint-scope": "5.1.1" - } - }, - "@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, - "requires": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - } - }, - "@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 - }, - "@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==", + "@szmarczak/http-timer": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-4.0.6.tgz", + "integrity": "sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==", "dev": true, "requires": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" + "defer-to-connect": "^2.0.0" } }, - "@pmmmwh/react-refresh-webpack-plugin": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/@pmmmwh/react-refresh-webpack-plugin/-/react-refresh-webpack-plugin-0.5.7.tgz", - "integrity": "sha512-bcKCAzF0DV2IIROp9ZHkRJa6O4jy7NlnHdWL3GmcUxYWNjLXkK5kfELELwEfSP5hXPfVL/qOGMAROuMQb9GG8Q==", + "@tannin/compile": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@tannin/compile/-/compile-1.1.0.tgz", + "integrity": "sha512-n8m9eNDfoNZoxdvWiTfW/hSPhehzLJ3zW7f8E7oT6mCROoMNWCB4TYtv041+2FMAxweiE0j7i1jubQU4MEC/Gg==", "dev": true, "requires": { - "ansi-html-community": "^0.0.8", - "common-path-prefix": "^3.0.0", - "core-js-pure": "^3.8.1", - "error-stack-parser": "^2.0.6", - "find-up": "^5.0.0", - "html-entities": "^2.1.0", - "loader-utils": "^2.0.0", - "schema-utils": "^3.0.0", - "source-map": "^0.7.3" + "@tannin/evaluate": "^1.2.0", + "@tannin/postfix": "^1.1.0" } }, - "@polka/url": { - "version": "1.0.0-next.21", - "resolved": "https://registry.npmjs.org/@polka/url/-/url-1.0.0-next.21.tgz", - "integrity": "sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g==", + "@tannin/evaluate": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@tannin/evaluate/-/evaluate-1.2.0.tgz", + "integrity": "sha512-3ioXvNowbO/wSrxsDG5DKIMxC81P0QrQTYai8zFNY+umuoHWRPbQ/TuuDEOju9E+jQDXmj6yI5GyejNuh8I+eg==", "dev": true }, - "@sideway/address": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/@sideway/address/-/address-4.1.4.tgz", - "integrity": "sha512-7vwq+rOHVWjyXxVlR76Agnvhy8I9rpzjosTESvmhNeXOXdZZB15Fl+TI9x1SiHZH5Jv2wTGduSxFDIaq0m3DUw==", + "@tannin/plural-forms": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@tannin/plural-forms/-/plural-forms-1.1.0.tgz", + "integrity": "sha512-xl9R2mDZO/qiHam1AgMnAES6IKIg7OBhcXqy6eDsRCdXuxAFPcjrej9HMjyCLE0DJ/8cHf0i5OQTstuBRhpbHw==", "dev": true, "requires": { - "@hapi/hoek": "^9.0.0" + "@tannin/compile": "^1.1.0" } }, - "@sideway/formula": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@sideway/formula/-/formula-3.0.1.tgz", - "integrity": "sha512-/poHZJJVjx3L+zVD6g9KgHfYnb443oi7wLu/XKojDviHy6HOEOA6z1Trk5aR1dGcmPenJEgb2sK2I80LeS3MIg==", + "@tannin/postfix": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@tannin/postfix/-/postfix-1.1.0.tgz", + "integrity": "sha512-oocsqY7g0cR+Gur5jRQLSrX2OtpMLMse1I10JQBm8CdGMrDkh1Mg2gjsiquMHRtBs4Qwu5wgEp5GgIYHk4SNPw==", "dev": true }, - "@sideway/pinpoint": { + "@tootallnate/once": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@sideway/pinpoint/-/pinpoint-2.0.0.tgz", - "integrity": "sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ==", - "dev": true - }, - "@sindresorhus/is": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.6.0.tgz", - "integrity": "sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==", - "dev": true - }, - "@sinonjs/commons": { - "version": "1.8.3", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.3.tgz", - "integrity": "sha512-xkNcLAn/wZaX14RPlwizcKicDk9G3F8m2nU3L7Ukm5zBgTwiT0wsoFAHx9Jq56fJA1z/7uKGtCRu16sOUCLIHQ==", - "dev": true, - "requires": { - "type-detect": "4.0.8" - } - }, - "@sinonjs/fake-timers": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-8.1.0.tgz", - "integrity": "sha512-OAPJUAtgeINhh/TAlUID4QTs53Njm7xzddaVlEs/SXwgtiD1tW22zAB/W1wdqfrpmikgaWQ9Fw6Ws+hsiRm5Vg==", - "dev": true, - "requires": { - "@sinonjs/commons": "^1.7.0" - } - }, - "@svgr/babel-plugin-add-jsx-attribute": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-6.3.1.tgz", - "integrity": "sha512-jDBKArXYO1u0B1dmd2Nf8Oy6aTF5vLDfLoO9Oon/GLkqZ/NiggYWZA+a2HpUMH4ITwNqS3z43k8LWApB8S583w==", - "dev": true - }, - "@svgr/babel-plugin-remove-jsx-attribute": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-attribute/-/babel-plugin-remove-jsx-attribute-6.3.1.tgz", - "integrity": "sha512-dQzyJ4prwjcFd929T43Z8vSYiTlTu8eafV40Z2gO7zy/SV5GT+ogxRJRBIKWomPBOiaVXFg3jY4S5hyEN3IBjQ==", - "dev": true - }, - "@svgr/babel-plugin-remove-jsx-empty-expression": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-empty-expression/-/babel-plugin-remove-jsx-empty-expression-6.3.1.tgz", - "integrity": "sha512-HBOUc1XwSU67fU26V5Sfb8MQsT0HvUyxru7d0oBJ4rA2s4HW3PhyAPC7fV/mdsSGpAvOdd8Wpvkjsr0fWPUO7A==", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", + "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", "dev": true }, - "@svgr/babel-plugin-replace-jsx-attribute-value": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-replace-jsx-attribute-value/-/babel-plugin-replace-jsx-attribute-value-6.3.1.tgz", - "integrity": "sha512-C12e6aN4BXAolRrI601gPn5MDFCRHO7C4TM8Kks+rDtl8eEq+NN1sak0eAzJu363x3TmHXdZn7+Efd2nr9I5dA==", - "dev": true - }, - "@svgr/babel-plugin-svg-dynamic-title": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-dynamic-title/-/babel-plugin-svg-dynamic-title-6.3.1.tgz", - "integrity": "sha512-6NU55Mmh3M5u2CfCCt6TX29/pPneutrkJnnDCHbKZnjukZmmgUAZLtZ2g6ZoSPdarowaQmAiBRgAHqHmG0vuqA==", - "dev": true - }, - "@svgr/babel-plugin-svg-em-dimensions": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-em-dimensions/-/babel-plugin-svg-em-dimensions-6.3.1.tgz", - "integrity": "sha512-HV1NGHYTTe1vCNKlBgq/gKuCSfaRlKcHIADn7P8w8U3Zvujdw1rmusutghJ1pZJV7pDt3Gt8ws+SVrqHnBO/Qw==", - "dev": true - }, - "@svgr/babel-plugin-transform-react-native-svg": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-react-native-svg/-/babel-plugin-transform-react-native-svg-6.3.1.tgz", - "integrity": "sha512-2wZhSHvTolFNeKDAN/ZmIeSz2O9JSw72XD+o2bNp2QAaWqa8KGpn5Yk5WHso6xqfSAiRzAE+GXlsrBO4UP9LLw==", - "dev": true - }, - "@svgr/babel-plugin-transform-svg-component": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-svg-component/-/babel-plugin-transform-svg-component-6.3.1.tgz", - "integrity": "sha512-cZ8Tr6ZAWNUFfDeCKn/pGi976iWSkS8ijmEYKosP+6ktdZ7lW9HVLHojyusPw3w0j8PI4VBeWAXAmi/2G7owxw==", - "dev": true - }, - "@svgr/babel-preset": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/@svgr/babel-preset/-/babel-preset-6.4.0.tgz", - "integrity": "sha512-Ytuh7N282fv2Cy1JePf6HZ29/G5Hb8mQAjx4iykPjvfFl9NK6o5lZavmewgjOGT8kNPtwgvheuOQn4CifHRUhQ==", - "dev": true, - "requires": { - "@svgr/babel-plugin-add-jsx-attribute": "^6.3.1", - "@svgr/babel-plugin-remove-jsx-attribute": "^6.3.1", - "@svgr/babel-plugin-remove-jsx-empty-expression": "^6.3.1", - "@svgr/babel-plugin-replace-jsx-attribute-value": "^6.3.1", - "@svgr/babel-plugin-svg-dynamic-title": "^6.3.1", - "@svgr/babel-plugin-svg-em-dimensions": "^6.3.1", - "@svgr/babel-plugin-transform-react-native-svg": "^6.3.1", - "@svgr/babel-plugin-transform-svg-component": "^6.3.1" - } - }, - "@svgr/core": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/@svgr/core/-/core-6.4.0.tgz", - "integrity": "sha512-wU9uyF6BUnwAqG7fDOowmDQzmbvovj1uq/iETfMK9xwQNaT+e7yN7SmDDcETXC72dnOrMcRuEWw0JEvpJha+yg==", - "dev": true, - "requires": { - "@svgr/babel-preset": "^6.4.0", - "@svgr/plugin-jsx": "^6.4.0", - "camelcase": "^6.2.0", - "cosmiconfig": "^7.0.1" - } - }, - "@svgr/hast-util-to-babel-ast": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/@svgr/hast-util-to-babel-ast/-/hast-util-to-babel-ast-6.4.0.tgz", - "integrity": "sha512-PjcU8jCneKXJnrREycsgfgQ/bzR1ogSKC5MBeUu2wmEoJIjzXX7X14DDktUjU9bkBy26yMDiVHn46Nl82P3WEg==", - "dev": true, - "requires": { - "@babel/types": "^7.18.4", - "entities": "^4.3.0" - } - }, - "@svgr/plugin-jsx": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/@svgr/plugin-jsx/-/plugin-jsx-6.4.0.tgz", - "integrity": "sha512-gu6E7v8qRAtCxbymI1et3G7athogvKvzsJkSWiHVZsuVZbyx5O2b7+DIkKvAGh2RvEzgSvfGf8QD1BaHal2vBw==", - "dev": true, - "requires": { - "@babel/core": "^7.18.5", - "@svgr/babel-preset": "^6.4.0", - "@svgr/hast-util-to-babel-ast": "^6.4.0", - "svg-parser": "^2.0.4" - } - }, - "@svgr/plugin-svgo": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/@svgr/plugin-svgo/-/plugin-svgo-6.3.1.tgz", - "integrity": "sha512-yJIjTDKPYqzFVjmsbH5EdIwEsmKxjxdXSGJVLeUgwZOZPAkNQmD1v7LDbOdOKbR44FG8465Du+zWPdbYGnbMbw==", - "dev": true, - "requires": { - "cosmiconfig": "^7.0.1", - "deepmerge": "^4.2.2", - "svgo": "^2.8.0" - } - }, - "@svgr/webpack": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/@svgr/webpack/-/webpack-6.4.0.tgz", - "integrity": "sha512-ejt2JdVX6k0XzUjVObMcTzTgsaCadEVCHBvOt3J0Vcp3eFirf0nqsjQCUD+ogFep25+ICDMZa1nLlotbXxKDXw==", - "dev": true, - "requires": { - "@babel/core": "^7.18.5", - "@babel/plugin-transform-react-constant-elements": "^7.17.12", - "@babel/preset-env": "^7.18.2", - "@babel/preset-react": "^7.17.12", - "@babel/preset-typescript": "^7.17.12", - "@svgr/core": "^6.4.0", - "@svgr/plugin-jsx": "^6.4.0", - "@svgr/plugin-svgo": "^6.3.1" - } - }, - "@szmarczak/http-timer": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-4.0.6.tgz", - "integrity": "sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==", - "dev": true, - "requires": { - "defer-to-connect": "^2.0.0" - } - }, - "@tootallnate/once": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", - "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", + "@tootallnate/quickjs-emscripten": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/@tootallnate/quickjs-emscripten/-/quickjs-emscripten-0.23.0.tgz", + "integrity": "sha512-C5Mc6rdnsaJDjO3UpGW/CQTHtCKaYlScZTly4JIu97Jxo/odCiH0ITnDXSJPTOrEKk/ycSZ0AOgTmkDtkOsvIA==", "dev": true }, "@trysound/sax": { @@ -2255,31 +6170,62 @@ "dev": true }, "@types/babel__core": { - "version": "7.1.19", - "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.19.tgz", - "integrity": "sha512-WEOTgRsbYkvA/KCsDwVEGkd7WAr1e3g31VHQ8zy5gul/V1qKullU/BU5I68X5v7V3GnB9eotmom4v5a5gjxorw==", + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", + "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", "dev": true, "requires": { - "@babel/parser": "^7.1.0", - "@babel/types": "^7.0.0", + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", "@types/babel__generator": "*", "@types/babel__template": "*", "@types/babel__traverse": "*" + }, + "dependencies": { + "@babel/helper-string-parser": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", + "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", + "dev": true + }, + "@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 + }, + "@babel/parser": { + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.4.tgz", + "integrity": "sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg==", + "dev": true + }, + "@babel/types": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", + "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", + "dev": true, + "requires": { + "@babel/helper-string-parser": "^7.23.4", + "@babel/helper-validator-identifier": "^7.22.20", + "to-fast-properties": "^2.0.0" + } + } } }, "@types/babel__generator": { - "version": "7.6.4", - "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.4.tgz", - "integrity": "sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==", + "version": "7.6.8", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.8.tgz", + "integrity": "sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==", "dev": true, "requires": { "@babel/types": "^7.0.0" } }, "@types/babel__template": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.1.tgz", - "integrity": "sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==", + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", + "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", "dev": true, "requires": { "@babel/parser": "^7.1.0", @@ -2287,18 +6233,43 @@ } }, "@types/babel__traverse": { - "version": "7.18.2", - "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.18.2.tgz", - "integrity": "sha512-FcFaxOr2V5KZCviw1TnutEMVUVsGt4D2hP1TAfXZAMKuHYW3xQhe3jTxNPWutgCJ3/X1c5yX8ZoGVEItxKbwBg==", + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.5.tgz", + "integrity": "sha512-WXCyOcRtH37HAUkpXhUduaxdm82b4GSlyTqajXviN4EfiuPgNYR109xMCKvpl6zPIpua0DGlMEDCq+g8EdoheQ==", "dev": true, "requires": { - "@babel/types": "^7.3.0" + "@babel/types": "^7.20.7" + }, + "dependencies": { + "@babel/helper-string-parser": { + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", + "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", + "dev": true + }, + "@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 + }, + "@babel/types": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", + "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", + "dev": true, + "requires": { + "@babel/helper-string-parser": "^7.23.4", + "@babel/helper-validator-identifier": "^7.22.20", + "to-fast-properties": "^2.0.0" + } + } } }, "@types/body-parser": { - "version": "1.19.2", - "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz", - "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==", + "version": "1.19.5", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.5.tgz", + "integrity": "sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==", "dev": true, "requires": { "@types/connect": "*", @@ -2306,9 +6277,9 @@ } }, "@types/bonjour": { - "version": "3.5.10", - "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.10.tgz", - "integrity": "sha512-p7ienRMiS41Nu2/igbJxxLDWrSZ0WxM8UQgCeO9KhoVF7cOVFkrKsiDr1EsJIla8vV3oEEjGcz11jc5yimhzZw==", + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.13.tgz", + "integrity": "sha512-z9fJ5Im06zvUL548KvYNecEVlA7cVDkGUi6kZusb04mpyEFKCIZJvloCcmpmLaIahDpOQGHaHmG6imtPMmPXGQ==", "dev": true, "requires": { "@types/node": "*" @@ -2327,18 +6298,18 @@ } }, "@types/connect": { - "version": "3.4.35", - "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", - "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", + "version": "3.4.38", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.38.tgz", + "integrity": "sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==", "dev": true, "requires": { "@types/node": "*" } }, "@types/connect-history-api-fallback": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.3.5.tgz", - "integrity": "sha512-h8QJa8xSb1WD4fpKBDcATDNGXghFj6/3GRWG6dhmRcu0RX1Ubasur2Uvx5aeEwlf0MwblEC2bMzzMQntxnw/Cw==", + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.5.4.tgz", + "integrity": "sha512-n6Cr2xS1h4uAulPRdlw6Jl6s1oG8KrVilPN2yUITEs+K48EzMJJ3W1xy8K5eWuFvjp3R74AOIGSmp2UfBJ8HFw==", "dev": true, "requires": { "@types/express-serve-static-core": "*", @@ -2346,9 +6317,9 @@ } }, "@types/eslint": { - "version": "8.4.6", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.4.6.tgz", - "integrity": "sha512-/fqTbjxyFUaYNO7VcW5g+4npmqVACz1bB7RTHYuLj+PRjw9hrCwrUXVQFpChUS0JsyEFvMZ7U/PfmvWgxJhI9g==", + "version": "8.56.10", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.56.10.tgz", + "integrity": "sha512-Shavhk87gCtY2fhXDctcfS3e6FdxWkCx1iUZ9eEUbh7rTqlZT0/IzOkCOVt0fCjcFuZ9FPYfuezTBImfHCDBGQ==", "dev": true, "requires": { "@types/estree": "*", @@ -2356,9 +6327,9 @@ } }, "@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==", + "version": "3.7.7", + "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.7.tgz", + "integrity": "sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg==", "dev": true, "requires": { "@types/eslint": "*", @@ -2366,32 +6337,33 @@ } }, "@types/estree": { - "version": "0.0.51", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.51.tgz", - "integrity": "sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==", + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz", + "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==", "dev": true }, "@types/express": { - "version": "4.17.14", - "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.14.tgz", - "integrity": "sha512-TEbt+vaPFQ+xpxFLFssxUDXj5cWCxZJjIcB7Yg0k0GMHGtgtQgpvx/MUQUeAkNbA9AAGrwkAsoeItdTgS7FMyg==", + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.21.tgz", + "integrity": "sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==", "dev": true, "requires": { "@types/body-parser": "*", - "@types/express-serve-static-core": "^4.17.18", + "@types/express-serve-static-core": "^4.17.33", "@types/qs": "*", "@types/serve-static": "*" } }, "@types/express-serve-static-core": { - "version": "4.17.31", - "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.31.tgz", - "integrity": "sha512-DxMhY+NAsTwMMFHBTtJFNp5qiHKJ7TeqOo23zVEM9alT1Ml27Q3xcTH0xwxn7Q0BbMcVEJOs/7aQtUWupUQN3Q==", + "version": "4.19.0", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.19.0.tgz", + "integrity": "sha512-bGyep3JqPCRry1wq+O5n7oiBgGWmeIJXPjXXCo8EK0u8duZGSYar7cGqd3ML2JUsLGeB7fmc06KYo9fLGWqPvQ==", "dev": true, "requires": { "@types/node": "*", "@types/qs": "*", - "@types/range-parser": "*" + "@types/range-parser": "*", + "@types/send": "*" } }, "@types/glob": { @@ -2405,9 +6377,9 @@ } }, "@types/graceful-fs": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.5.tgz", - "integrity": "sha512-anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw==", + "version": "4.1.9", + "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.9.tgz", + "integrity": "sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ==", "dev": true, "requires": { "@types/node": "*" @@ -2419,39 +6391,56 @@ "integrity": "sha512-SZs7ekbP8CN0txVG2xVRH6EgKmEm31BOxA07vkFaETzZz1xh+cbt8BcI0slpymvwhx5dlFnQG2rTlPVQn+iRPQ==", "dev": true }, + "@types/http-errors": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@types/http-errors/-/http-errors-2.0.4.tgz", + "integrity": "sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA==", + "dev": true + }, "@types/http-proxy": { - "version": "1.17.9", - "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.9.tgz", - "integrity": "sha512-QsbSjA/fSk7xB+UXlCT3wHBy5ai9wOcNDWwZAtud+jXhwOM3l+EYZh8Lng4+/6n8uar0J7xILzqftJdJ/Wdfkw==", + "version": "1.17.14", + "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.14.tgz", + "integrity": "sha512-SSrD0c1OQzlFX7pGu1eXxSEjemej64aaNPRhhVYUGqXh0BtldAAx37MG8btcumvpgKyZp1F5Gn3JkktdxiFv6w==", "dev": true, "requires": { "@types/node": "*" } }, "@types/istanbul-lib-coverage": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz", - "integrity": "sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==", + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz", + "integrity": "sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==", "dev": true }, "@types/istanbul-lib-report": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", - "integrity": "sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz", + "integrity": "sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==", "dev": true, "requires": { "@types/istanbul-lib-coverage": "*" } }, "@types/istanbul-reports": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz", - "integrity": "sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz", + "integrity": "sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==", "dev": true, "requires": { "@types/istanbul-lib-report": "*" } }, + "@types/jsdom": { + "version": "20.0.1", + "resolved": "https://registry.npmjs.org/@types/jsdom/-/jsdom-20.0.1.tgz", + "integrity": "sha512-d0r18sZPmMQr1eG35u12FZfhIXNrnsPU/g5wvRKCUf/tOGilKKwYMYGqh33BNR6ba+2gkHw1EUiHoN3mn7E5IQ==", + "dev": true, + "requires": { + "@types/node": "*", + "@types/tough-cookie": "*", + "parse5": "^7.0.0" + } + }, "@types/json-schema": { "version": "7.0.11", "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", @@ -2474,9 +6463,9 @@ } }, "@types/mime": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/mime/-/mime-3.0.1.tgz", - "integrity": "sha512-Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA==", + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.5.tgz", + "integrity": "sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==", "dev": true }, "@types/minimatch": { @@ -2486,9 +6475,9 @@ "dev": true }, "@types/minimist": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.2.tgz", - "integrity": "sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==", + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==", "dev": true }, "@types/node": { @@ -2497,10 +6486,19 @@ "integrity": "sha512-0os9vz6BpGwxGe9LOhgP/ncvYN5Tx1fNcd2TM3rD/aCGBkysb+ZWpXEocG24h6ZzOi13+VB8HndAQFezsSOw1w==", "dev": true }, + "@types/node-forge": { + "version": "1.3.11", + "resolved": "https://registry.npmjs.org/@types/node-forge/-/node-forge-1.3.11.tgz", + "integrity": "sha512-FQx220y22OKNTqaByeBGqHWYz4cl94tpcxeFdvBo3wjG6XPBuZ0BNgNZRV5J5TFmmcsJ4IzsLkmGRiQbnYsBEQ==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, "@types/normalize-package-data": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz", - "integrity": "sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==", + "version": "2.4.4", + "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.4.tgz", + "integrity": "sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==", "dev": true }, "@types/parse-json": { @@ -2509,12 +6507,6 @@ "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", "dev": true }, - "@types/prettier": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.7.1.tgz", - "integrity": "sha512-ri0UmynRRvZiiUJdiz38MmIblKK+oH30MztdBVR95dv/Ubw6neWSb8u1XpRb72L4qsZOhz+L+z9JD40SJmfWow==", - "dev": true - }, "@types/prop-types": { "version": "15.7.5", "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz", @@ -2522,15 +6514,15 @@ "dev": true }, "@types/qs": { - "version": "6.9.7", - "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", - "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==", + "version": "6.9.15", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.15.tgz", + "integrity": "sha512-uXHQKES6DQKKCLh441Xv/dwxOq1TVS3JPUMlEqoEglvlhR6Mxnlew/Xq/LRVHpLyk7iK3zODe1qYHIMltO7XGg==", "dev": true }, "@types/range-parser": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz", - "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==", + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.7.tgz", + "integrity": "sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==", "dev": true }, "@types/react": { @@ -2574,56 +6566,79 @@ "integrity": "sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==", "dev": true }, + "@types/semver": { + "version": "7.5.8", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.8.tgz", + "integrity": "sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==", + "dev": true + }, + "@types/send": { + "version": "0.17.4", + "resolved": "https://registry.npmjs.org/@types/send/-/send-0.17.4.tgz", + "integrity": "sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==", + "dev": true, + "requires": { + "@types/mime": "^1", + "@types/node": "*" + } + }, "@types/serve-index": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.1.tgz", - "integrity": "sha512-d/Hs3nWDxNL2xAczmOVZNj92YZCS6RGxfBPjKzuu/XirCgXdpKEb88dYNbrYGint6IVWLNP+yonwVAuRC0T2Dg==", + "version": "1.9.4", + "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.4.tgz", + "integrity": "sha512-qLpGZ/c2fhSs5gnYsQxtDEq3Oy8SXPClIXkW5ghvAvsNuVSA8k+gCONcUCS/UjLEYvYps+e8uBtfgXgvhwfNug==", "dev": true, "requires": { "@types/express": "*" } }, "@types/serve-static": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.0.tgz", - "integrity": "sha512-z5xyF6uh8CbjAu9760KDKsH2FcDxZ2tFCsA4HIMWE6IkiYMXfVoa+4f9KX+FN0ZLsaMw1WNG2ETLA6N+/YA+cg==", + "version": "1.15.7", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.7.tgz", + "integrity": "sha512-W8Ym+h8nhuRwaKPaDw34QUkwsGi6Rc4yYqvKFo5rm2FUEhCFbzVWrxXUxuKK8TASjWsysJY0nsmNCGhCOIsrOw==", "dev": true, "requires": { - "@types/mime": "*", - "@types/node": "*" + "@types/http-errors": "*", + "@types/node": "*", + "@types/send": "*" } }, "@types/sockjs": { - "version": "0.3.33", - "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.33.tgz", - "integrity": "sha512-f0KEEe05NvUnat+boPTZ0dgaLZ4SfSouXUgv5noUiefG2ajgKjmETo9ZJyuqsl7dfl2aHlLJUiki6B4ZYldiiw==", + "version": "0.3.36", + "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.36.tgz", + "integrity": "sha512-MK9V6NzAS1+Ud7JV9lJLFqW85VbC9dq3LmwZCuBe4wBDgKC0Kj/jd8Xl+nSviU+Qc3+m7umHHyHg//2KSa0a0Q==", "dev": true, "requires": { "@types/node": "*" } }, "@types/source-list-map": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/@types/source-list-map/-/source-list-map-0.1.2.tgz", - "integrity": "sha512-K5K+yml8LTo9bWJI/rECfIPrGgxdpeNbj+d53lwN4QjW1MCwlkhUms+gtdzigTeUyBr09+u8BwOIY3MXvHdcsA==", + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/@types/source-list-map/-/source-list-map-0.1.6.tgz", + "integrity": "sha512-5JcVt1u5HDmlXkwOD2nslZVllBBc7HDuOICfiZah2Z0is8M8g+ddAEawbmd3VjedfDHBzxCaXLs07QEmb7y54g==", "dev": true }, "@types/stack-utils": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.1.tgz", - "integrity": "sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.3.tgz", + "integrity": "sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==", "dev": true }, "@types/tapable": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/@types/tapable/-/tapable-1.0.8.tgz", - "integrity": "sha512-ipixuVrh2OdNmauvtT51o3d8z12p6LtFW9in7U79der/kwejjdNchQC5UMn5u/KxNoM7VHHOs/l8KS8uHxhODQ==", + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/@types/tapable/-/tapable-1.0.12.tgz", + "integrity": "sha512-bTHG8fcxEqv1M9+TD14P8ok8hjxoOCkfKc8XXLaaD05kI7ohpeI956jtDOD3XHKBQrlyPughUtzm1jtVhHpA5Q==", + "dev": true + }, + "@types/tough-cookie": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-4.0.5.tgz", + "integrity": "sha512-/Ad8+nIOV7Rl++6f1BdKxFSMgmoqEoYbHRpPcx3JEfv8VRsQe9Z4mCXeJBzxs7mbHY/XOZZuXlRNfhpVPbs6ZA==", "dev": true }, "@types/uglify-js": { - "version": "3.17.0", - "resolved": "https://registry.npmjs.org/@types/uglify-js/-/uglify-js-3.17.0.tgz", - "integrity": "sha512-3HO6rm0y+/cqvOyA8xcYLweF0TKXlAxmQASjbOi49Co51A1N4nR4bEwBgRoD9kNM+rqFGArjKr654SLp2CoGmQ==", + "version": "3.17.5", + "resolved": "https://registry.npmjs.org/@types/uglify-js/-/uglify-js-3.17.5.tgz", + "integrity": "sha512-TU+fZFBTBcXj/GpDpDaBmgWk/gn96kMZ+uocaFUlV2f8a6WdMzzI44QBCmGcCiYR0Y6ZlNRiyUyKKt5nl/lbzQ==", "dev": true, "requires": { "source-map": "^0.6.1" @@ -2638,9 +6653,9 @@ } }, "@types/webpack": { - "version": "4.41.32", - "resolved": "https://registry.npmjs.org/@types/webpack/-/webpack-4.41.32.tgz", - "integrity": "sha512-cb+0ioil/7oz5//7tZUSwbrSAN/NWHrQylz5cW8G0dWTcF/g+/dSdMlKVZspBYuMAN1+WnwHrkxiRrLcwd0Heg==", + "version": "4.41.38", + "resolved": "https://registry.npmjs.org/@types/webpack/-/webpack-4.41.38.tgz", + "integrity": "sha512-oOW7E931XJU1mVfCnxCVgv8GLFL768pDO5u2Gzk82i8yTIgX6i7cntyZOkZYb/JtYM8252SN9bQp9tgkVDSsRw==", "dev": true, "requires": { "@types/node": "*", @@ -2660,9 +6675,9 @@ } }, "@types/webpack-sources": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@types/webpack-sources/-/webpack-sources-3.2.0.tgz", - "integrity": "sha512-Ft7YH3lEVRQ6ls8k4Ff1oB4jN6oy/XmU6tQISKdhfh+1mR+viZFphS6WL0IrtDOzvefmJg5a0s7ZQoRXwqTEFg==", + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/@types/webpack-sources/-/webpack-sources-3.2.3.tgz", + "integrity": "sha512-4nZOdMwSPHZ4pTEZzSp0AsTM4K7Qmu40UKW4tJDiOVs20UzYF9l+qUe4s0ftfN0pin06n+5cWWDJXH+sbhAiDw==", "dev": true, "requires": { "@types/node": "*", @@ -2671,33 +6686,33 @@ } }, "@types/ws": { - "version": "8.5.3", - "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.3.tgz", - "integrity": "sha512-6YOoWjruKj1uLf3INHH7D3qTXwFfEsg1kf3c0uDdSBJwfa/llkwIjrAGV7j7mVgGNbzTQ3HiHKKDXl6bJPD97w==", + "version": "8.5.10", + "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.10.tgz", + "integrity": "sha512-vmQSUcfalpIq0R9q7uTo2lXs6eGIpt9wtnLdMv9LVpIjCA/+ufZRozlVoVelIYixx1ugCBKDhn89vnsEGOCx9A==", "dev": true, "requires": { "@types/node": "*" } }, "@types/yargs": { - "version": "16.0.4", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.4.tgz", - "integrity": "sha512-T8Yc9wt/5LbJyCaLiHPReJa0kApcIgJ7Bn735GjItUfh08Z1pJvu8QZqb9s+mMvKV6WUQRV7K2R46YbjMXTTJw==", + "version": "17.0.32", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.32.tgz", + "integrity": "sha512-xQ67Yc/laOG5uMfX/093MRlGGCIBzZMarVa+gfNKJxWAIgykYpVGkBdbqEzGDDfCrVUj6Hiff4mTZ5BA6TmAog==", "dev": true, "requires": { "@types/yargs-parser": "*" } }, "@types/yargs-parser": { - "version": "21.0.0", - "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz", - "integrity": "sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==", + "version": "21.0.3", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.3.tgz", + "integrity": "sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==", "dev": true }, "@types/yauzl": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.10.0.tgz", - "integrity": "sha512-Cn6WYCm0tXv8p6k+A8PvbDG763EDpBoTzHdA+Q/MF6H3sapGjCm9NzoaJncJS9tUKSuCoDs9XHxYYsQDgxR6kw==", + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.10.3.tgz", + "integrity": "sha512-oJoftv0LSuaDZE3Le4DbKX+KS9G36NzOeSap90UIK0yMA/NhKJhqlSGtNDORNRaIbQfzjXDrQa0ytJ6mNRGz/Q==", "dev": true, "optional": true, "requires": { @@ -2868,173 +6883,187 @@ } } }, + "@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 + }, "@webassemblyjs/ast": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz", - "integrity": "sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.12.1.tgz", + "integrity": "sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg==", "dev": true, "requires": { - "@webassemblyjs/helper-numbers": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1" + "@webassemblyjs/helper-numbers": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6" } }, "@webassemblyjs/floating-point-hex-parser": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz", - "integrity": "sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ==", + "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 }, "@webassemblyjs/helper-api-error": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz", - "integrity": "sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg==", + "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 }, "@webassemblyjs/helper-buffer": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz", - "integrity": "sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA==", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.12.1.tgz", + "integrity": "sha512-nzJwQw99DNDKr9BVCOZcLuJJUlqkJh+kVzVl6Fmq/tI5ZtEyWT1KZMyOXltXLZJmDtvLCDgwsyrkohEtopTXCw==", "dev": true }, "@webassemblyjs/helper-numbers": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz", - "integrity": "sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ==", + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz", + "integrity": "sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==", "dev": true, "requires": { - "@webassemblyjs/floating-point-hex-parser": "1.11.1", - "@webassemblyjs/helper-api-error": "1.11.1", + "@webassemblyjs/floating-point-hex-parser": "1.11.6", + "@webassemblyjs/helper-api-error": "1.11.6", "@xtuc/long": "4.2.2" } }, "@webassemblyjs/helper-wasm-bytecode": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz", - "integrity": "sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q==", + "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 }, "@webassemblyjs/helper-wasm-section": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz", - "integrity": "sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg==", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.12.1.tgz", + "integrity": "sha512-Jif4vfB6FJlUlSbgEMHUyk1j234GTNG9dBJ4XJdOySoj518Xj0oGsNi59cUQF4RRMS9ouBUxDDdyBVfPTypa5g==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-buffer": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/wasm-gen": "1.11.1" + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-buffer": "1.12.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/wasm-gen": "1.12.1" } }, "@webassemblyjs/ieee754": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz", - "integrity": "sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ==", + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz", + "integrity": "sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==", "dev": true, "requires": { "@xtuc/ieee754": "^1.2.0" } }, "@webassemblyjs/leb128": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.1.tgz", - "integrity": "sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw==", + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.6.tgz", + "integrity": "sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==", "dev": true, "requires": { "@xtuc/long": "4.2.2" } }, "@webassemblyjs/utf8": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.1.tgz", - "integrity": "sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ==", + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.6.tgz", + "integrity": "sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==", "dev": true }, "@webassemblyjs/wasm-edit": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz", - "integrity": "sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA==", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.12.1.tgz", + "integrity": "sha512-1DuwbVvADvS5mGnXbE+c9NfA8QRcZ6iKquqjjmR10k6o+zzsRVesil54DKexiowcFCPdr/Q0qaMgB01+SQ1u6g==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-buffer": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/helper-wasm-section": "1.11.1", - "@webassemblyjs/wasm-gen": "1.11.1", - "@webassemblyjs/wasm-opt": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1", - "@webassemblyjs/wast-printer": "1.11.1" + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-buffer": "1.12.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/helper-wasm-section": "1.12.1", + "@webassemblyjs/wasm-gen": "1.12.1", + "@webassemblyjs/wasm-opt": "1.12.1", + "@webassemblyjs/wasm-parser": "1.12.1", + "@webassemblyjs/wast-printer": "1.12.1" } }, "@webassemblyjs/wasm-gen": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz", - "integrity": "sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA==", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.12.1.tgz", + "integrity": "sha512-TDq4Ojh9fcohAw6OIMXqiIcTq5KUXTGRkVxbSo1hQnSy6lAM5GSdfwWeSxpAo0YzgsgF182E/U0mDNhuA0tW7w==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/ieee754": "1.11.1", - "@webassemblyjs/leb128": "1.11.1", - "@webassemblyjs/utf8": "1.11.1" + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/ieee754": "1.11.6", + "@webassemblyjs/leb128": "1.11.6", + "@webassemblyjs/utf8": "1.11.6" } }, "@webassemblyjs/wasm-opt": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz", - "integrity": "sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw==", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.12.1.tgz", + "integrity": "sha512-Jg99j/2gG2iaz3hijw857AVYekZe2SAskcqlWIZXjji5WStnOpVoat3gQfT/Q5tb2djnCjBtMocY/Su1GfxPBg==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-buffer": "1.11.1", - "@webassemblyjs/wasm-gen": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1" + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-buffer": "1.12.1", + "@webassemblyjs/wasm-gen": "1.12.1", + "@webassemblyjs/wasm-parser": "1.12.1" } }, "@webassemblyjs/wasm-parser": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz", - "integrity": "sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA==", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.12.1.tgz", + "integrity": "sha512-xikIi7c2FHXysxXe3COrVUPSheuBtpcfhbpFj4gmu7KRLYOzANztwUU0IbsqvMqzuNK2+glRGWCEqZo1WCLyAQ==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-api-error": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/ieee754": "1.11.1", - "@webassemblyjs/leb128": "1.11.1", - "@webassemblyjs/utf8": "1.11.1" + "@webassemblyjs/ast": "1.12.1", + "@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" } }, "@webassemblyjs/wast-printer": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz", - "integrity": "sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg==", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.12.1.tgz", + "integrity": "sha512-+X4WAlOisVWQMikjbcvY2e0rwPsKQ9F688lksZhBcPycBBuii3O7m8FACbDMWDojpAqvjIncrG8J0XHKyQfVeA==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/ast": "1.12.1", "@xtuc/long": "4.2.2" } }, "@webpack-cli/configtest": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-1.2.0.tgz", - "integrity": "sha512-4FB8Tj6xyVkyqjj1OaTqCjXYULB9FMkqQ8yGrZjRDrYh0nOE+7Lhs45WioWQQMV+ceFlE368Ukhe6xdvJM9Egg==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-2.1.1.tgz", + "integrity": "sha512-wy0mglZpDSiSS0XHrVR+BAdId2+yxPSoJW8fsna3ZpYSlufjvxnP4YbKTCBZnNIcGN4r6ZPXV55X4mYExOfLmw==", "dev": true }, "@webpack-cli/info": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-1.5.0.tgz", - "integrity": "sha512-e8tSXZpw2hPl2uMJY6fsMswaok5FdlGNRTktvFk2sD8RjH0hE2+XistawJx1vmKteh4NmGmNUrp+Tb2w+udPcQ==", - "dev": true, - "requires": { - "envinfo": "^7.7.3" - } + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-2.0.2.tgz", + "integrity": "sha512-zLHQdI/Qs1UyT5UBdWNqsARasIA+AaF8t+4u2aS2nEpBQh2mWIVb8qAklq0eUENnC5mOItrIB4LiS9xMtph18A==", + "dev": true }, "@webpack-cli/serve": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-1.7.0.tgz", - "integrity": "sha512-oxnCNGj88fL+xzV+dacXs44HcDwf1ovs3AuEzvP7mqXw7fQntqIhQ1BRmynh4qEKQSSSRSWVyXRjmTbZIX9V2Q==", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-2.0.5.tgz", + "integrity": "sha512-lqaoKnRYBdo1UgDX8uF24AfGMifWK19TxPmM5FHc2vAGxrJ/qtyUyFBWoY1tISZdelsQ5fBcOusifo5o5wSJxQ==", "dev": true }, + "@wordpress/api-fetch": { + "version": "6.53.0", + "resolved": "https://registry.npmjs.org/@wordpress/api-fetch/-/api-fetch-6.53.0.tgz", + "integrity": "sha512-jHYueGfGfe89akyw1A28WGl17qIKTukMTwol4rHkZY43ygUmSJiTF/FSsExzMwk/j7OmGGr+GTa1TPO/tc71Lw==", + "dev": true, + "requires": { + "@babel/runtime": "^7.16.0", + "@wordpress/i18n": "^4.56.0", + "@wordpress/url": "^3.57.0" + } + }, "@wordpress/babel-plugin-import-jsx-pragma": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/@wordpress/babel-plugin-import-jsx-pragma/-/babel-plugin-import-jsx-pragma-4.2.0.tgz", @@ -3062,9 +7091,9 @@ } }, "@wordpress/base-styles": { - "version": "4.10.0", - "resolved": "https://registry.npmjs.org/@wordpress/base-styles/-/base-styles-4.10.0.tgz", - "integrity": "sha512-vNNMpDTFCLdvEW604xgzFIYrwfx08/z8QNJBEzu0u3iFIHc5XAYEgFWINtLwtCJGCBjFEMk/9dMOk5DQKCfrOQ==", + "version": "4.47.0", + "resolved": "https://registry.npmjs.org/@wordpress/base-styles/-/base-styles-4.47.0.tgz", + "integrity": "sha512-1myPBFLuMnuxUE8M2VGZ+wbGhgasLNqFdxQnWfYDMRhaSESsZgaLaMoasNZ4+e/N7Nssl97ad/XGwZ721HXqvQ==", "dev": true }, "@wordpress/browserslist-config": { @@ -3074,13 +7103,29 @@ "dev": true }, "@wordpress/dependency-extraction-webpack-plugin": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@wordpress/dependency-extraction-webpack-plugin/-/dependency-extraction-webpack-plugin-4.2.0.tgz", - "integrity": "sha512-8TA0z98GkAIlQPjYPUcpbJQby9XbqzHzFN3Li1VZhU6nC0GW/wPpfZ0m0jmmimRwSnAvHleA687cuN79+SIlxg==", + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@wordpress/dependency-extraction-webpack-plugin/-/dependency-extraction-webpack-plugin-5.7.0.tgz", + "integrity": "sha512-s/xUnAEKwXmSUZLqrvX4n3tBWegxaiQfXJwd264MRJUmz4JibWJnvevkxM6tooEetu36xGiVHAIPvfvEEEtntQ==", "dev": true, "requires": { - "json2php": "^0.0.5", - "webpack-sources": "^3.2.2" + "json2php": "^0.0.7" + } + }, + "@wordpress/e2e-test-utils-playwright": { + "version": "0.24.0", + "resolved": "https://registry.npmjs.org/@wordpress/e2e-test-utils-playwright/-/e2e-test-utils-playwright-0.24.0.tgz", + "integrity": "sha512-r/lTk9y3rmoKASZ1Bn+vYtv5Xw0e3RxT8nXJIpM0eaHmRxTg7u7aHvIVEfi6ZDAKWuuywoCDP/KAdy9FR3lhDQ==", + "dev": true, + "requires": { + "@wordpress/api-fetch": "^6.53.0", + "@wordpress/keycodes": "^3.56.0", + "@wordpress/url": "^3.57.0", + "change-case": "^4.1.2", + "form-data": "^4.0.0", + "get-port": "^5.1.1", + "lighthouse": "^10.4.0", + "mime": "^3.0.0", + "web-vitals": "^3.5.0" } }, "@wordpress/element": { @@ -3220,39 +7265,80 @@ } } }, + "@wordpress/hooks": { + "version": "3.56.0", + "resolved": "https://registry.npmjs.org/@wordpress/hooks/-/hooks-3.56.0.tgz", + "integrity": "sha512-sxoNbXdqfhlRNduDqR5y5Cq7Rwm5ATZGIr5U9nrM5RHWd+8v7g8wpB/rpTSqi+HeCW3suiFuN6qJJZ4eFwRB2w==", + "dev": true, + "requires": { + "@babel/runtime": "^7.16.0" + } + }, + "@wordpress/i18n": { + "version": "4.56.0", + "resolved": "https://registry.npmjs.org/@wordpress/i18n/-/i18n-4.56.0.tgz", + "integrity": "sha512-W+WL8vxwqUeicgXvIHZ3Htq6pYrJe2Dn/9SBsQ7gFPUrGWe2ww5IzPocLv4rAha3lca2ZVIX2q47rGaSs9t8Kw==", + "dev": true, + "requires": { + "@babel/runtime": "^7.16.0", + "@wordpress/hooks": "^3.56.0", + "gettext-parser": "^1.3.1", + "memize": "^2.1.0", + "sprintf-js": "^1.1.1", + "tannin": "^1.2.0" + }, + "dependencies": { + "sprintf-js": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz", + "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==", + "dev": true + } + } + }, "@wordpress/jest-console": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/@wordpress/jest-console/-/jest-console-6.2.0.tgz", - "integrity": "sha512-gbgBdSxCLO5vUVhIA3S8ISPE8zTBNlhzL0SWIZxIR75XBooBztzwL85+kpEc2b1rAHRY7qSNlbzAUnjiW3D0Kw==", + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@wordpress/jest-console/-/jest-console-7.27.0.tgz", + "integrity": "sha512-mzKShc0zUHyWsHt/fK2L3cJDWWAp9AttzENDTo7RuynqJWTDOGsqsnDr6zITyVcaL0my8ApVTiWu5OxzBXXvfg==", "dev": true, "requires": { "@babel/runtime": "^7.16.0", - "jest-matcher-utils": "^27.4.2" + "jest-matcher-utils": "^29.6.2" } }, "@wordpress/jest-preset-default": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/@wordpress/jest-preset-default/-/jest-preset-default-10.0.0.tgz", - "integrity": "sha512-fAFp4qICN4neW49gPDm1A1q269cUKX6Y0UWyVWgrmmuHVI0GHe474Edwqh6gebx0HmlxoFTl/U/WOl0kHahVcQ==", + "version": "11.27.0", + "resolved": "https://registry.npmjs.org/@wordpress/jest-preset-default/-/jest-preset-default-11.27.0.tgz", + "integrity": "sha512-5fyyKthW+BNpv+Ndtgl2+1uHsmEWqTtf3PN+FL3qRfYCTPbvasxZBkGx2bpnt0D9ajcrpGmbllwOoM0dhY8Q6w==", + "dev": true, + "requires": { + "@wordpress/jest-console": "^7.27.0", + "babel-jest": "^29.6.2" + } + }, + "@wordpress/keycodes": { + "version": "3.56.0", + "resolved": "https://registry.npmjs.org/@wordpress/keycodes/-/keycodes-3.56.0.tgz", + "integrity": "sha512-YIvqB0AEsu3fjkuQHNT7XladaTDE1Thntv+oqzkRejdNodH5tbPb3CAePAK3F7iQurZ0GCaqlmJTy9qcHwDU0Q==", "dev": true, "requires": { - "@wordpress/jest-console": "^6.2.0", - "babel-jest": "^27.4.5" + "@babel/runtime": "^7.16.0", + "@wordpress/i18n": "^4.56.0" } }, "@wordpress/npm-package-json-lint-config": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/npm-package-json-lint-config/-/npm-package-json-lint-config-4.4.0.tgz", - "integrity": "sha512-pA+PJ7GHbA1leDbsgJy3LKEPvI89cGtQ8FJ0VupmarRSDoXEtZ29QCe/hnuNb3ckPnSWy+DOjHUK6sqJIsPWaQ==", + "version": "4.41.0", + "resolved": "https://registry.npmjs.org/@wordpress/npm-package-json-lint-config/-/npm-package-json-lint-config-4.41.0.tgz", + "integrity": "sha512-HStjqoxdB4zTU9i3BCzvbI0OyVZ3L6phSeoRwk2uU1cT41O883ouoBGE9DcEIzufKeuFCeqCBJf8NRk8S2h/sg==", "dev": true }, "@wordpress/postcss-plugins-preset": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/@wordpress/postcss-plugins-preset/-/postcss-plugins-preset-4.3.0.tgz", - "integrity": "sha512-J+ZL8K9+pnXxWAQnjLpd69hdU5/ddFwqF8QDuGvacprKCBJyVyiKj9MuDQZW4m9fAEcQXyTRO7Il6PEevAWEmg==", + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@wordpress/postcss-plugins-preset/-/postcss-plugins-preset-4.40.0.tgz", + "integrity": "sha512-xnd+XZI5s9hyGtt314WgH3prxQVBMLEjmTTz0g1+9x1avrYxIwhv1ZxMNittrAq2IP1qBzT5IwsPzJ+wCgcEyw==", "dev": true, "requires": { - "@wordpress/base-styles": "^4.10.0", + "@wordpress/base-styles": "^4.47.0", "autoprefixer": "^10.2.5" } }, @@ -3263,68 +7349,257 @@ "dev": true }, "@wordpress/scripts": { - "version": "24.3.0", - "resolved": "https://registry.npmjs.org/@wordpress/scripts/-/scripts-24.3.0.tgz", - "integrity": "sha512-fAB8eo7Atf78e/bfbxRg/Oe9n+aHbOtMx7MDCt1EV/OHdChzdINp1tPq4Xc0kHgLPj38Z6F3NFWQ7g2Ta4imZA==", + "version": "27.7.0", + "resolved": "https://registry.npmjs.org/@wordpress/scripts/-/scripts-27.7.0.tgz", + "integrity": "sha512-dFkye4tO3xbFbqi1RMgiicykT074C2VuenT9Kc1L9oUwFmHa4BVDskcNIMKWl3CzDb2gtNEjsZx77CMQTzgLAQ==", "dev": true, "requires": { "@babel/core": "^7.16.0", - "@pmmmwh/react-refresh-webpack-plugin": "^0.5.2", - "@svgr/webpack": "^6.2.1", - "@wordpress/babel-preset-default": "^7.3.0", - "@wordpress/browserslist-config": "^5.2.0", - "@wordpress/dependency-extraction-webpack-plugin": "^4.2.0", - "@wordpress/eslint-plugin": "^13.3.0", - "@wordpress/jest-preset-default": "^10.0.0", - "@wordpress/npm-package-json-lint-config": "^4.4.0", - "@wordpress/postcss-plugins-preset": "^4.3.0", - "@wordpress/prettier-config": "^2.2.0", - "@wordpress/stylelint-config": "^21.2.0", + "@pmmmwh/react-refresh-webpack-plugin": "^0.5.11", + "@svgr/webpack": "^8.0.1", + "@wordpress/babel-preset-default": "^7.40.0", + "@wordpress/browserslist-config": "^5.39.0", + "@wordpress/dependency-extraction-webpack-plugin": "^5.7.0", + "@wordpress/e2e-test-utils-playwright": "^0.24.0", + "@wordpress/eslint-plugin": "^17.13.0", + "@wordpress/jest-preset-default": "^11.27.0", + "@wordpress/npm-package-json-lint-config": "^4.41.0", + "@wordpress/postcss-plugins-preset": "^4.40.0", + "@wordpress/prettier-config": "^3.13.0", + "@wordpress/stylelint-config": "^21.39.0", "adm-zip": "^0.5.9", - "babel-jest": "^27.4.5", + "babel-jest": "^29.6.2", "babel-loader": "^8.2.3", - "browserslist": "^4.17.6", + "browserslist": "^4.21.10", "chalk": "^4.0.0", "check-node-version": "^4.1.0", "clean-webpack-plugin": "^3.0.0", "copy-webpack-plugin": "^10.2.0", "cross-spawn": "^5.1.0", "css-loader": "^6.2.0", - "cssnano": "^5.0.7", + "cssnano": "^6.0.1", "cwd": "^0.10.0", "dir-glob": "^3.0.1", "eslint": "^8.3.0", "expect-puppeteer": "^4.4.0", "fast-glob": "^3.2.7", "filenamify": "^4.2.0", - "jest": "^27.4.5", - "jest-dev-server": "^6.0.2", - "jest-environment-node": "^27.4.4", + "jest": "^29.6.2", + "jest-dev-server": "^9.0.1", + "jest-environment-jsdom": "^29.6.2", + "jest-environment-node": "^29.6.2", "markdownlint-cli": "^0.31.1", "merge-deep": "^3.0.3", "mini-css-extract-plugin": "^2.5.1", "minimist": "^1.2.0", - "npm-package-json-lint": "^5.0.0", + "npm-package-json-lint": "^6.4.0", "npm-packlist": "^3.0.0", "postcss": "^8.4.5", "postcss-loader": "^6.2.1", - "prettier": "npm:wp-prettier@2.6.2", + "prettier": "npm:wp-prettier@3.0.3", "puppeteer-core": "^13.2.0", - "react-refresh": "^0.10.0", + "react-refresh": "^0.14.0", "read-pkg-up": "^7.0.1", "resolve-bin": "^0.4.0", "sass": "^1.35.2", "sass-loader": "^12.1.0", "source-map-loader": "^3.0.0", "stylelint": "^14.2.0", - "terser-webpack-plugin": "^5.1.4", + "terser-webpack-plugin": "^5.3.9", "url-loader": "^4.1.1", - "webpack": "^5.47.1", - "webpack-bundle-analyzer": "^4.4.2", - "webpack-cli": "^4.9.1", - "webpack-dev-server": "^4.4.0" + "webpack": "^5.88.2", + "webpack-bundle-analyzer": "^4.9.1", + "webpack-cli": "^5.1.4", + "webpack-dev-server": "^4.15.1" }, "dependencies": { + "@es-joy/jsdoccomment": { + "version": "0.41.0", + "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.41.0.tgz", + "integrity": "sha512-aKUhyn1QI5Ksbqcr3fFJj16p99QdjUxXAEuFst1Z47DRyoiMwivIH9MV/ARcJOCXVjPfjITciej8ZD2O/6qUmw==", + "dev": true, + "requires": { + "comment-parser": "1.4.1", + "esquery": "^1.5.0", + "jsdoc-type-pratt-parser": "~4.0.0" + } + }, + "@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "dev": true + }, + "@typescript-eslint/eslint-plugin": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.21.0.tgz", + "integrity": "sha512-oy9+hTPCUFpngkEZUSzbf9MxI65wbKFoQYsgPdILTfbUldp5ovUuphZVe4i30emU9M/kP+T64Di0mxl7dSw3MA==", + "dev": true, + "requires": { + "@eslint-community/regexpp": "^4.5.1", + "@typescript-eslint/scope-manager": "6.21.0", + "@typescript-eslint/type-utils": "6.21.0", + "@typescript-eslint/utils": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0", + "debug": "^4.3.4", + "graphemer": "^1.4.0", + "ignore": "^5.2.4", + "natural-compare": "^1.4.0", + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" + } + }, + "@typescript-eslint/parser": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.21.0.tgz", + "integrity": "sha512-tbsV1jPne5CkFQCgPBcDOt30ItF7aJoZL997JSF7MhGQqOeT3svWRYxiqlfA5RUdlHN6Fi+EI9bxqbdyAUZjYQ==", + "dev": true, + "requires": { + "@typescript-eslint/scope-manager": "6.21.0", + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/typescript-estree": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0", + "debug": "^4.3.4" + } + }, + "@typescript-eslint/scope-manager": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.21.0.tgz", + "integrity": "sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==", + "dev": true, + "requires": { + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0" + } + }, + "@typescript-eslint/type-utils": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.21.0.tgz", + "integrity": "sha512-rZQI7wHfao8qMX3Rd3xqeYSMCL3SoiSQLBATSiVKARdFGCYSRvmViieZjqc58jKgs8Y8i9YvVVhRbHSTA4VBag==", + "dev": true, + "requires": { + "@typescript-eslint/typescript-estree": "6.21.0", + "@typescript-eslint/utils": "6.21.0", + "debug": "^4.3.4", + "ts-api-utils": "^1.0.1" + } + }, + "@typescript-eslint/types": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.21.0.tgz", + "integrity": "sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==", + "dev": true + }, + "@typescript-eslint/typescript-estree": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.21.0.tgz", + "integrity": "sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==", + "dev": true, + "requires": { + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "minimatch": "9.0.3", + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" + } + }, + "@typescript-eslint/utils": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.21.0.tgz", + "integrity": "sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==", + "dev": true, + "requires": { + "@eslint-community/eslint-utils": "^4.4.0", + "@types/json-schema": "^7.0.12", + "@types/semver": "^7.5.0", + "@typescript-eslint/scope-manager": "6.21.0", + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/typescript-estree": "6.21.0", + "semver": "^7.5.4" + } + }, + "@typescript-eslint/visitor-keys": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.21.0.tgz", + "integrity": "sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==", + "dev": true, + "requires": { + "@typescript-eslint/types": "6.21.0", + "eslint-visitor-keys": "^3.4.1" + } + }, + "@wordpress/babel-plugin-import-jsx-pragma": { + "version": "4.39.0", + "resolved": "https://registry.npmjs.org/@wordpress/babel-plugin-import-jsx-pragma/-/babel-plugin-import-jsx-pragma-4.39.0.tgz", + "integrity": "sha512-yQySutPQq+Joa3ePzc9X8f5hZacmcn5e9KMiJYrXBUqj5VKl4RR8N3e+UOl1lWoB2NI/7bA9tW9TXJlDpHJX1w==", + "dev": true + }, + "@wordpress/babel-preset-default": { + "version": "7.40.0", + "resolved": "https://registry.npmjs.org/@wordpress/babel-preset-default/-/babel-preset-default-7.40.0.tgz", + "integrity": "sha512-/guM3C4NMoLK0pNO5Epbm/50L/MqXB0k3+fLtPbw3BC3v8Aus7ktE2l85gilowNyE3kYAyjFR/BsG5tassnaVQ==", + "dev": true, + "requires": { + "@babel/core": "^7.16.0", + "@babel/plugin-transform-react-jsx": "^7.16.0", + "@babel/plugin-transform-runtime": "^7.16.0", + "@babel/preset-env": "^7.16.0", + "@babel/preset-typescript": "^7.16.0", + "@babel/runtime": "^7.16.0", + "@wordpress/babel-plugin-import-jsx-pragma": "^4.39.0", + "@wordpress/browserslist-config": "^5.39.0", + "@wordpress/warning": "^2.56.0", + "browserslist": "^4.21.10", + "core-js": "^3.31.0", + "react": "^18.2.0" + } + }, + "@wordpress/browserslist-config": { + "version": "5.39.0", + "resolved": "https://registry.npmjs.org/@wordpress/browserslist-config/-/browserslist-config-5.39.0.tgz", + "integrity": "sha512-oy5CRWS3WsaFN/KAgOUIE6mmyuFu5qmKZZhQ+voCN+ifXTsj1J6ypR3RyY03Cbojy6kidyVYl3qRyMxbbUwWSQ==", + "dev": true + }, + "@wordpress/eslint-plugin": { + "version": "17.13.0", + "resolved": "https://registry.npmjs.org/@wordpress/eslint-plugin/-/eslint-plugin-17.13.0.tgz", + "integrity": "sha512-QnG5HmOd+XsweKOvrqbOugm9rINUjcsh1jo2SN4cbbTWZJ6nPmcfLS0YJdrKkgOQUnKDPQgBPVEyI8tp19OtBw==", + "dev": true, + "requires": { + "@babel/eslint-parser": "^7.16.0", + "@typescript-eslint/eslint-plugin": "^6.4.1", + "@typescript-eslint/parser": "^6.4.1", + "@wordpress/babel-preset-default": "^7.40.0", + "@wordpress/prettier-config": "^3.13.0", + "cosmiconfig": "^7.0.0", + "eslint-config-prettier": "^8.3.0", + "eslint-plugin-import": "^2.25.2", + "eslint-plugin-jest": "^27.2.3", + "eslint-plugin-jsdoc": "^46.4.6", + "eslint-plugin-jsx-a11y": "^6.5.1", + "eslint-plugin-playwright": "^0.15.3", + "eslint-plugin-prettier": "^5.0.0", + "eslint-plugin-react": "^7.27.0", + "eslint-plugin-react-hooks": "^4.3.0", + "globals": "^13.12.0", + "requireindex": "^1.2.0" + } + }, + "@wordpress/prettier-config": { + "version": "3.13.0", + "resolved": "https://registry.npmjs.org/@wordpress/prettier-config/-/prettier-config-3.13.0.tgz", + "integrity": "sha512-oNayHsdAhP3ER4T7KjNrmdtEIZjYJAdIDdScjNOKmK3Qvp02VP9TPfDGhLSjiYmOiQcyrIz/uuf9MJ9JCcdGng==", + "dev": true + }, + "@wordpress/warning": { + "version": "2.56.0", + "resolved": "https://registry.npmjs.org/@wordpress/warning/-/warning-2.56.0.tgz", + "integrity": "sha512-Bd1Zy5eWQPKoQsfQwD9T1KZWPpq+ZFyozirx+Z5MnX59J0i80p8KiEMcmXhPH+Os9An2PtlVV9j0gY9z5z0oAw==", + "dev": true + }, "ansi-styles": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", @@ -3334,6 +7609,33 @@ "color-convert": "^2.0.1" } }, + "brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0" + } + }, + "browserslist": { + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", + "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", + "dev": true, + "requires": { + "caniuse-lite": "^1.0.30001587", + "electron-to-chromium": "^1.4.668", + "node-releases": "^2.0.14", + "update-browserslist-db": "^1.0.13" + } + }, + "caniuse-lite": { + "version": "1.0.30001612", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001612.tgz", + "integrity": "sha512-lFgnZ07UhaCcsSZgWW0K5j4e69dK1u/ltrL9lTUiFOwNHs12S3UMIEYgBV0Z6C6hRDev7iRnMzzYmKabYdXF9g==", + "dev": true + }, "chalk": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", @@ -3359,18 +7661,225 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, + "comment-parser": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.4.1.tgz", + "integrity": "sha512-buhp5kePrmda3vhc5B9t7pUQXAb2Tnd0qgpkIhPhkHXxJpiPJ11H0ZEU0oBpJ2QztSbzG/ZxMj/CHsYJqRHmyg==", + "dev": true + }, + "core-js": { + "version": "3.37.0", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.37.0.tgz", + "integrity": "sha512-fu5vHevQ8ZG4og+LXug8ulUtVxjOcEYvifJr7L5Bfq9GOztVqsKd9/59hUk2ZSbCrS3BqUr3EpaYGIYzq7g3Ug==", + "dev": true + }, + "electron-to-chromium": { + "version": "1.4.748", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.748.tgz", + "integrity": "sha512-VWqjOlPZn70UZ8FTKUOkUvBLeTQ0xpty66qV0yJcAGY2/CthI4xyW9aEozRVtuwv3Kpf5xTesmJUcPwuJmgP4A==", + "dev": true + }, + "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 + }, + "eslint-plugin-jest": { + "version": "27.9.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-27.9.0.tgz", + "integrity": "sha512-QIT7FH7fNmd9n4se7FFKHbsLKGQiw885Ds6Y/sxKgCZ6natwCsXdgPOADnYVxN2QrRweF0FZWbJ6S7Rsn7llug==", + "dev": true, + "requires": { + "@typescript-eslint/utils": "^5.10.0" + }, + "dependencies": { + "@typescript-eslint/scope-manager": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz", + "integrity": "sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==", + "dev": true, + "requires": { + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/visitor-keys": "5.62.0" + } + }, + "@typescript-eslint/types": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.62.0.tgz", + "integrity": "sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==", + "dev": true + }, + "@typescript-eslint/typescript-estree": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz", + "integrity": "sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==", + "dev": true, + "requires": { + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/visitor-keys": "5.62.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + } + }, + "@typescript-eslint/utils": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.62.0.tgz", + "integrity": "sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==", + "dev": true, + "requires": { + "@eslint-community/eslint-utils": "^4.2.0", + "@types/json-schema": "^7.0.9", + "@types/semver": "^7.3.12", + "@typescript-eslint/scope-manager": "5.62.0", + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/typescript-estree": "5.62.0", + "eslint-scope": "^5.1.1", + "semver": "^7.3.7" + } + }, + "@typescript-eslint/visitor-keys": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz", + "integrity": "sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==", + "dev": true, + "requires": { + "@typescript-eslint/types": "5.62.0", + "eslint-visitor-keys": "^3.3.0" + } + } + } + }, + "eslint-plugin-jsdoc": { + "version": "46.10.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-46.10.1.tgz", + "integrity": "sha512-x8wxIpv00Y50NyweDUpa+58ffgSAI5sqe+zcZh33xphD0AVh+1kqr1ombaTRb7Fhpove1zfUuujlX9DWWBP5ag==", + "dev": true, + "requires": { + "@es-joy/jsdoccomment": "~0.41.0", + "are-docs-informative": "^0.0.2", + "comment-parser": "1.4.1", + "debug": "^4.3.4", + "escape-string-regexp": "^4.0.0", + "esquery": "^1.5.0", + "is-builtin-module": "^3.2.1", + "semver": "^7.5.4", + "spdx-expression-parse": "^4.0.0" + } + }, + "eslint-plugin-prettier": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-5.1.3.tgz", + "integrity": "sha512-C9GCVAs4Eq7ZC/XFQHITLiHJxQngdtraXaM+LoUFoFp/lHNl2Zn8f3WQbe9HvTBBQ9YnKFB0/2Ajdqwo5D1EAw==", + "dev": true, + "requires": { + "prettier-linter-helpers": "^1.0.0", + "synckit": "^0.8.6" + } + }, + "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 + }, + "esquery": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", + "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", + "dev": true, + "requires": { + "estraverse": "^5.1.0" + } + }, + "globals": { + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", + "dev": true, + "requires": { + "type-fest": "^0.20.2" + } + }, "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 }, + "ignore": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", + "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", + "dev": true + }, + "jsdoc-type-pratt-parser": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-4.0.0.tgz", + "integrity": "sha512-YtOli5Cmzy3q4dP26GraSOeAhqecewG04hoO8DY56CH4KJ9Fvv5qKWUCCo3HZob7esJQHCv6/+bnTy72xZZaVQ==", + "dev": true + }, + "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, + "requires": { + "yallist": "^4.0.0" + } + }, + "minimatch": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "dev": true, + "requires": { + "brace-expansion": "^2.0.1" + } + }, + "node-releases": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", + "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", + "dev": true + }, "prettier": { - "version": "npm:wp-prettier@2.6.2", - "resolved": "https://registry.npmjs.org/wp-prettier/-/wp-prettier-2.6.2.tgz", - "integrity": "sha512-AV33EzqiFJ3fj+mPlKABN59YFPReLkDxQnj067Z3uEOeRQf3g05WprL0RDuqM7UBhSRo9W1rMSC2KvZmjE5UOA==", + "version": "npm:wp-prettier@3.0.3", + "resolved": "https://registry.npmjs.org/wp-prettier/-/wp-prettier-3.0.3.tgz", + "integrity": "sha512-X4UlrxDTH8oom9qXlcjnydsjAOD2BmB6yFmvS4Z2zdTzqqpRWb+fbqrH412+l+OUXmbzJlSXjlMFYPgYG12IAA==", "dev": true }, + "react": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react/-/react-18.2.0.tgz", + "integrity": "sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==", + "dev": true, + "requires": { + "loose-envify": "^1.1.0" + } + }, + "semver": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + }, + "spdx-expression-parse": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-4.0.0.tgz", + "integrity": "sha512-Clya5JIij/7C6bRR22+tnGXbc4VKlibKSVj2iHvVeX5iMW7s1SIQlqu699JkODJJIhh/pUu8L0/VLh8xflD+LQ==", + "dev": true, + "requires": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, "supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", @@ -3379,19 +7888,51 @@ "requires": { "has-flag": "^4.0.0" } + }, + "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 + }, + "update-browserslist-db": { + "version": "1.0.13", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", + "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", + "dev": true, + "requires": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true } } }, "@wordpress/stylelint-config": { - "version": "21.2.0", - "resolved": "https://registry.npmjs.org/@wordpress/stylelint-config/-/stylelint-config-21.2.0.tgz", - "integrity": "sha512-qRkTjzrOiE5CECChT3NEGrFjPKQOS5vJFBuDpa95k/hSO/Q9hI9dHLQwSVTTHOhtFXqa8be0+QhBJHPQ90DDUw==", + "version": "21.39.0", + "resolved": "https://registry.npmjs.org/@wordpress/stylelint-config/-/stylelint-config-21.39.0.tgz", + "integrity": "sha512-MNFsOpriCtNXs1TfPQwPkU7/4Jo0e0IfGJdvRYHp8mSv0VqY1vn9CW8QJ8xqrWYqxCOG6Z+Zn9IPToEM5mqz5A==", "dev": true, "requires": { "stylelint-config-recommended": "^6.0.0", "stylelint-config-recommended-scss": "^5.0.2" } }, + "@wordpress/url": { + "version": "3.57.0", + "resolved": "https://registry.npmjs.org/@wordpress/url/-/url-3.57.0.tgz", + "integrity": "sha512-W3F0KVEaMoRENya7GGUPXrZGYnhAg3fuLSLpNcf1skSrM5rUVMNdeRlZj+jln1O/+qjboJnC+y+IzOlQRwlS6A==", + "dev": true, + "requires": { + "@babel/runtime": "^7.16.0", + "remove-accents": "^0.5.0" + } + }, "@wordpress/warning": { "version": "2.19.0", "resolved": "https://registry.npmjs.org/@wordpress/warning/-/warning-2.19.0.tgz", @@ -3433,33 +7974,25 @@ } }, "acorn": { - "version": "8.8.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.0.tgz", - "integrity": "sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w==", + "version": "8.11.3", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", + "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", "dev": true }, "acorn-globals": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-6.0.0.tgz", - "integrity": "sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-7.0.1.tgz", + "integrity": "sha512-umOSDSDrfHbTNPuNpC2NSnnA3LUrqpevPb4T9jRx4MagXNS0rs+gwiTcAvqCRmsD6utzsrzNt+ebm00SNWiC3Q==", "dev": true, "requires": { - "acorn": "^7.1.1", - "acorn-walk": "^7.1.1" - }, - "dependencies": { - "acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", - "dev": true - } + "acorn": "^8.1.0", + "acorn-walk": "^8.0.2" } }, "acorn-import-assertions": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz", - "integrity": "sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==", + "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 }, "acorn-jsx": { @@ -3469,15 +8002,15 @@ "dev": true }, "acorn-walk": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", - "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.2.tgz", + "integrity": "sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==", "dev": true }, "adm-zip": { - "version": "0.5.9", - "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.5.9.tgz", - "integrity": "sha512-s+3fXLkeeLjZ2kLjCBwQufpI5fuN+kIGBxu6530nVQZGVol0d7Y/M88/xw9HGGUcJjKf8LutN3VPRUBq6N7Ajg==", + "version": "0.5.12", + "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.5.12.tgz", + "integrity": "sha512-6TVU49mK6KZb4qG6xWaaM4C7sA/sgUMLy/JYMOzkcp3BvVLpW0fXDFQiIzAuxFCt/2+xD7fNIiPFAoLZPhVNLQ==", "dev": true }, "agent-base": { @@ -3517,9 +8050,9 @@ }, "dependencies": { "ajv": { - "version": "8.11.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.11.0.tgz", - "integrity": "sha512-wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg==", + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", @@ -3542,6 +8075,12 @@ "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", "dev": true }, + "ansi-colors": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", + "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", + "dev": true + }, "ansi-escapes": { "version": "4.3.2", "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", @@ -3573,15 +8112,21 @@ } }, "anymatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", - "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", "dev": true, "requires": { "normalize-path": "^3.0.0", "picomatch": "^2.0.4" } }, + "are-docs-informative": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/are-docs-informative/-/are-docs-informative-0.0.2.tgz", + "integrity": "sha512-ixiS0nLNNG5jNQzgZJNoUpBKdo9yTYZMGJ+QgT2jmjR7G7+QHRCc4v6LQ3NgE7EBJq+o0ams3waJwkrlBom8Ig==", + "dev": true + }, "argparse": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", @@ -3620,9 +8165,9 @@ "dev": true }, "array-flatten": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz", - "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==", "dev": true }, "array-includes": { @@ -3692,6 +8237,15 @@ "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==", "dev": true }, + "ast-types": { + "version": "0.13.4", + "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.13.4.tgz", + "integrity": "sha512-x1FCFnFifvYDDzTaLII71vG5uvDwgtmDTEVWAxrgeiR8VjMONcCXJx7E+USjDtHlwFmt9MysbqgF9b9Vjr6w+w==", + "dev": true, + "requires": { + "tslib": "^2.0.1" + } + }, "ast-types-flow": { "version": "0.0.7", "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.7.tgz", @@ -3717,17 +8271,59 @@ "dev": true }, "autoprefixer": { - "version": "10.4.12", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.12.tgz", - "integrity": "sha512-WrCGV9/b97Pa+jtwf5UGaRjgQIg7OK3D06GnoYoZNcG1Xb8Gt3EfuKjlhh9i/VtT16g6PYjZ69jdJ2g8FxSC4Q==", + "version": "10.4.19", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.19.tgz", + "integrity": "sha512-BaENR2+zBZ8xXhM4pUaKUxlVdxZ0EZhjvbopwnXmxRUfqDmwSpC2lAi/QXvx7NRdPCo1WKEcEF6mV64si1z4Ew==", "dev": true, "requires": { - "browserslist": "^4.21.4", - "caniuse-lite": "^1.0.30001407", - "fraction.js": "^4.2.0", + "browserslist": "^4.23.0", + "caniuse-lite": "^1.0.30001599", + "fraction.js": "^4.3.7", "normalize-range": "^0.1.2", "picocolors": "^1.0.0", "postcss-value-parser": "^4.2.0" + }, + "dependencies": { + "browserslist": { + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", + "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", + "dev": true, + "requires": { + "caniuse-lite": "^1.0.30001587", + "electron-to-chromium": "^1.4.668", + "node-releases": "^2.0.14", + "update-browserslist-db": "^1.0.13" + } + }, + "caniuse-lite": { + "version": "1.0.30001612", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001612.tgz", + "integrity": "sha512-lFgnZ07UhaCcsSZgWW0K5j4e69dK1u/ltrL9lTUiFOwNHs12S3UMIEYgBV0Z6C6hRDev7iRnMzzYmKabYdXF9g==", + "dev": true + }, + "electron-to-chromium": { + "version": "1.4.748", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.748.tgz", + "integrity": "sha512-VWqjOlPZn70UZ8FTKUOkUvBLeTQ0xpty66qV0yJcAGY2/CthI4xyW9aEozRVtuwv3Kpf5xTesmJUcPwuJmgP4A==", + "dev": true + }, + "node-releases": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", + "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", + "dev": true + }, + "update-browserslist-db": { + "version": "1.0.13", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", + "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", + "dev": true, + "requires": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + } + } } }, "axe-core": { @@ -3737,12 +8333,14 @@ "dev": true }, "axios": { - "version": "0.25.0", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.25.0.tgz", - "integrity": "sha512-cD8FOb0tRH3uuEe6+evtAbgJtfxr7ly3fQjYcMcuPlgkwVS9xboaVIpcDV+cYQe+yGykgwZCs1pzjntcGa6l5g==", + "version": "1.6.8", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.6.8.tgz", + "integrity": "sha512-v/ZHtJDU39mDpyBoFVkETcd/uNdxrWRrg3bKpOKzXFA6Bvqopts6ALSMU3y6ijYxbw2B+wPrIv46egTzJXCLGQ==", "dev": true, "requires": { - "follow-redirects": "^1.14.7" + "follow-redirects": "^1.15.6", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" } }, "axobject-query": { @@ -3751,17 +8349,22 @@ "integrity": "sha512-Td525n+iPOOyUQIeBfcASuG6uJsDOITl7Mds5gFyerkWiX7qhUTdYUBlSgNMyVqtSJqwpt1kXGLdUt6SykLMRA==", "dev": true }, + "b4a": { + "version": "1.6.6", + "resolved": "https://registry.npmjs.org/b4a/-/b4a-1.6.6.tgz", + "integrity": "sha512-5Tk1HLk6b6ctmjIkAcU/Ujv/1WqiDl0F0JdRCR80VsOcUlHcu7pWeWRlOqQLHfDEsVx9YH/aif5AG4ehoCtTmg==", + "dev": true + }, "babel-jest": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-27.5.1.tgz", - "integrity": "sha512-cdQ5dXjGRd0IBRATiQ4mZGlGlRE8kJpjPOixdNRdT+m3UcNqmYWN6rK6nvtXYfY3D76cb8s/O1Ss8ea24PIwcg==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.7.0.tgz", + "integrity": "sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg==", "dev": true, "requires": { - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", + "@jest/transform": "^29.7.0", "@types/babel__core": "^7.1.14", "babel-plugin-istanbul": "^6.1.1", - "babel-preset-jest": "^27.5.1", + "babel-preset-jest": "^29.6.3", "chalk": "^4.0.0", "graceful-fs": "^4.2.9", "slash": "^3.0.0" @@ -3819,9 +8422,9 @@ } }, "babel-loader": { - "version": "8.2.5", - "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.2.5.tgz", - "integrity": "sha512-OSiFfH89LrEMiWd4pLNqGz4CwJDtbs2ZVc+iGu2HrkRfPxId9F2anQj38IxWpmRfsUY0aBZYi1EFcd3mhtRMLQ==", + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.3.0.tgz", + "integrity": "sha512-H8SvsMF+m9t15HNLMipppzkC+Y2Yq+v3SonZyU70RBL/h1gxPkH08Ot8pEE9Z4Kd+czyWJClmFS8qzIP9OZ04Q==", "dev": true, "requires": { "find-cache-dir": "^3.3.1", @@ -3866,14 +8469,14 @@ } }, "babel-plugin-jest-hoist": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.5.1.tgz", - "integrity": "sha512-50wCwD5EMNW4aRpOwtqzyZHIewTYNxLA4nhB+09d8BIssfNfzBRhkBIHiaPv1Si226TQSvp8gxAJm2iY2qs2hQ==", + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.6.3.tgz", + "integrity": "sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg==", "dev": true, "requires": { "@babel/template": "^7.3.3", "@babel/types": "^7.3.3", - "@types/babel__core": "^7.0.0", + "@types/babel__core": "^7.1.14", "@types/babel__traverse": "^7.0.6" } }, @@ -3928,12 +8531,12 @@ } }, "babel-preset-jest": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-27.5.1.tgz", - "integrity": "sha512-Nptf2FzlPCWYuJg41HBqXVT8ym6bXOevuCTbhxlUpjwtysGaIWFvDEjp4y+G7fl13FgOdjs7P/DmErqH7da0Ag==", + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.6.3.tgz", + "integrity": "sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA==", "dev": true, "requires": { - "babel-plugin-jest-hoist": "^27.5.1", + "babel-plugin-jest-hoist": "^29.6.3", "babel-preset-current-node-syntax": "^1.0.0" } }, @@ -3943,12 +8546,25 @@ "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", "dev": true }, + "bare-events": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/bare-events/-/bare-events-2.2.2.tgz", + "integrity": "sha512-h7z00dWdG0PYOQEvChhOSWvOfkIKsdZGkWr083FgN/HyoQuebSew/cgirYqh9SCuy/hRvxc5Vy6Fw8xAmYHLkQ==", + "dev": true, + "optional": true + }, "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 }, + "basic-ftp": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/basic-ftp/-/basic-ftp-5.0.5.tgz", + "integrity": "sha512-4Bcg1P8xhUuqcii/S0Z9wiHIrQVPMermM1any+MX5GeGD7faD3/msQUDGLol9wOcz4/jbg/WJnGqoJF6LiBdtg==", + "dev": true + }, "batch": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", @@ -3962,9 +8578,9 @@ "dev": true }, "binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", "dev": true }, "bl": { @@ -3979,9 +8595,9 @@ }, "dependencies": { "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", "dev": true, "requires": { "inherits": "^2.0.3", @@ -3992,21 +8608,21 @@ } }, "body-parser": { - "version": "1.20.0", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.0.tgz", - "integrity": "sha512-DfJ+q6EPcGKZD1QWUjSpqp+Q7bDQTsQIF4zfUAtZ6qk+H/3/QRhg9CEp39ss+/T2vw0+HaidC0ecJj/DRLIaKg==", + "version": "1.20.2", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.2.tgz", + "integrity": "sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA==", "dev": true, "requires": { "bytes": "3.1.2", - "content-type": "~1.0.4", + "content-type": "~1.0.5", "debug": "2.6.9", "depd": "2.0.0", "destroy": "1.2.0", "http-errors": "2.0.0", "iconv-lite": "0.4.24", "on-finished": "2.4.1", - "qs": "6.10.3", - "raw-body": "2.5.1", + "qs": "6.11.0", + "raw-body": "2.5.2", "type-is": "~1.6.18", "unpipe": "1.0.0" }, @@ -4035,13 +8651,11 @@ } }, "bonjour-service": { - "version": "1.0.14", - "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.0.14.tgz", - "integrity": "sha512-HIMbgLnk1Vqvs6B4Wq5ep7mxvj9sGz5d1JJyDNSGNIdA/w2MCz6GTjWTdjqOJV1bEPj+6IkxDvWNFKEBxNt4kQ==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.2.1.tgz", + "integrity": "sha512-oSzCS2zV14bh2kji6vNe7vrpJYCHGvcZnlffFQ1MEoX/WOeQ/teD8SYWKR942OI3INjq8OMNJlbPK5LLLUxFDw==", "dev": true, "requires": { - "array-flatten": "^2.1.2", - "dns-equal": "^1.0.0", "fast-deep-equal": "^3.1.3", "multicast-dns": "^7.2.5" } @@ -4071,12 +8685,6 @@ "fill-range": "^7.0.1" } }, - "browser-process-hrtime": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz", - "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==", - "dev": true - }, "browserslist": { "version": "4.21.4", "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.4.tgz", @@ -4120,6 +8728,47 @@ "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", "dev": true }, + "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 + }, + "builtins": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/builtins/-/builtins-5.1.0.tgz", + "integrity": "sha512-SW9lzGTLvWTP1AY8xeAMZimqDrIaSdLQUcVr9DMef51niJ022Ri87SwRRKYm4A6iHfkPaiVUu/Duw2Wc4J7kKg==", + "dev": true, + "requires": { + "semver": "^7.0.0" + }, + "dependencies": { + "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, + "requires": { + "yallist": "^4.0.0" + } + }, + "semver": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + } + } + }, "bytes": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", @@ -4342,9 +8991,9 @@ } }, "chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", "dev": true, "requires": { "anymatch": "~3.1.2", @@ -4374,22 +9023,51 @@ "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", "dev": true }, + "chrome-launcher": { + "version": "0.15.2", + "resolved": "https://registry.npmjs.org/chrome-launcher/-/chrome-launcher-0.15.2.tgz", + "integrity": "sha512-zdLEwNo3aUVzIhKhTtXfxhdvZhUghrnmkvcAq2NoDd+LeOHKf03H5jwZ8T/STsAlzyALkBVK552iaG1fGf1xVQ==", + "dev": true, + "requires": { + "@types/node": "*", + "escape-string-regexp": "^4.0.0", + "is-wsl": "^2.2.0", + "lighthouse-logger": "^1.0.0" + }, + "dependencies": { + "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 + } + } + }, "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 }, + "chromium-bidi": { + "version": "0.4.16", + "resolved": "https://registry.npmjs.org/chromium-bidi/-/chromium-bidi-0.4.16.tgz", + "integrity": "sha512-7ZbXdWERxRxSwo3txsBjjmc/NLxqb1Bk30mRb0BMS4YIaiV6zvKZqL/UAH+DdqcDYayDWk2n/y8klkBDODrPvA==", + "dev": true, + "requires": { + "mitt": "3.0.0" + } + }, "ci-info": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.4.0.tgz", - "integrity": "sha512-t5QdPT5jq3o262DOQ8zA6E1tlH2upmUc4Hlvrbx1pGYJuiiHl7O7rvVNI+l8HTVhd/q3Qc9vqimkNk5yiXsAug==", + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", + "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", "dev": true }, "cjs-module-lexer": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.2.tgz", - "integrity": "sha512-cOU9usZw8/dXIXKtwa8pM0OTJQuJkxMN6w30csNRUerHfeQ5R6U3kkU/FtJeIf3M202OHfY2U8ccInBG7/xogA==", + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.3.tgz", + "integrity": "sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ==", "dev": true }, "clean-webpack-plugin": { @@ -4480,9 +9158,9 @@ "dev": true }, "collect-v8-coverage": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz", - "integrity": "sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz", + "integrity": "sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==", "dev": true }, "color-convert": { @@ -4507,9 +9185,9 @@ "dev": true }, "colorette": { - "version": "2.0.19", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.19.tgz", - "integrity": "sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==", + "version": "2.0.20", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", + "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", "dev": true }, "colors": { @@ -4528,9 +9206,9 @@ } }, "commander": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-5.1.0.tgz", - "integrity": "sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==", + "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 }, "comment-parser": { @@ -4610,6 +9288,20 @@ "typedarray": "^0.0.6" } }, + "configstore": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz", + "integrity": "sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==", + "dev": true, + "requires": { + "dot-prop": "^5.2.0", + "graceful-fs": "^4.1.2", + "make-dir": "^3.0.0", + "unique-string": "^2.0.0", + "write-file-atomic": "^3.0.0", + "xdg-basedir": "^4.0.0" + } + }, "connect-history-api-fallback": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz", @@ -4645,9 +9337,9 @@ } }, "content-type": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", - "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", "dev": true }, "convert-source-map": { @@ -4660,9 +9352,9 @@ } }, "cookie": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", - "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", + "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==", "dev": true }, "cookie-signature": { @@ -4692,9 +9384,9 @@ }, "dependencies": { "ajv": { - "version": "8.11.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.11.0.tgz", - "integrity": "sha512-wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg==", + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", @@ -4739,15 +9431,15 @@ "dev": true }, "schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.2.0.tgz", + "integrity": "sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==", "dev": true, "requires": { "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", + "ajv": "^8.9.0", "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" + "ajv-keywords": "^5.1.0" } }, "slash": { @@ -4798,13 +9490,79 @@ "yaml": "^1.10.0" } }, + "create-jest": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/create-jest/-/create-jest-29.7.0.tgz", + "integrity": "sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q==", + "dev": true, + "requires": { + "@jest/types": "^29.6.3", + "chalk": "^4.0.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "jest-config": "^29.7.0", + "jest-util": "^29.7.0", + "prompts": "^2.0.1" + }, + "dependencies": { + "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, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "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, + "requires": { + "color-name": "~1.1.4" + } + }, + "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 + }, + "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 + }, + "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, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, "cross-fetch": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.1.5.tgz", - "integrity": "sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-4.0.0.tgz", + "integrity": "sha512-e4a5N8lVvuLgAWgnCrLr2PP0YyDOTHa9H/Rj54dirp61qXnNq46m82bRhNqIA5VccJtWBvPTFRV3TtvHUKPB1g==", "dev": true, "requires": { - "node-fetch": "2.6.7" + "node-fetch": "^2.6.12" } }, "cross-spawn": { @@ -4816,34 +9574,64 @@ "lru-cache": "^4.0.1", "shebang-command": "^1.2.0", "which": "^1.2.9" + }, + "dependencies": { + "lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "dev": true, + "requires": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==", + "dev": true + } } }, + "crypto-random-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz", + "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==", + "dev": true + }, + "csp_evaluator": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/csp_evaluator/-/csp_evaluator-1.1.1.tgz", + "integrity": "sha512-N3ASg0C4kNPUaNxt1XAvzHIVuzdtr8KLgfk1O8WDyimp1GisPAHESupArO2ieHk9QWbrJ/WkQODyh21Ps/xhxw==", + "dev": true + }, "css-declaration-sorter": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-6.3.1.tgz", - "integrity": "sha512-fBffmak0bPAnyqc/HO8C3n2sHrp9wcqQz6ES9koRF2/mLOVAx9zIQ3Y7R29sYCteTPqMCwns4WYQoCX91Xl3+w==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-7.2.0.tgz", + "integrity": "sha512-h70rUM+3PNFuaBDTLe8wF/cdWu+dOZmb7pJt8Z2sedYbAcQVQV/tEchueg3GWxwqS0cxtbxmaHEdkNACqcvsow==", "dev": true }, "css-functions-list": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/css-functions-list/-/css-functions-list-3.1.0.tgz", - "integrity": "sha512-/9lCvYZaUbBGvYUgYGFJ4dcYiyqdhSjG7IPVluoV8A1ILjkF7ilmhp1OGUz8n+nmBcu0RNrQAzgD8B6FJbrt2w==", + "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 }, "css-loader": { - "version": "6.7.1", - "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.7.1.tgz", - "integrity": "sha512-yB5CNFa14MbPJcomwNh3wLThtkZgcNyI2bNMRt8iE5Z8Vwl7f8vQXFAzn2HDOJvtDq2NTZBUGMSUNNyrv3/+cw==", + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.11.0.tgz", + "integrity": "sha512-CTJ+AEQJjq5NzLga5pE39qdiSV56F8ywCIsqNIRF0r7BDgWsN25aazToqAFg7ZrtA/U016xudB3ffgweORxX7g==", "dev": true, "requires": { "icss-utils": "^5.1.0", - "postcss": "^8.4.7", - "postcss-modules-extract-imports": "^3.0.0", - "postcss-modules-local-by-default": "^4.0.0", - "postcss-modules-scope": "^3.0.0", + "postcss": "^8.4.33", + "postcss-modules-extract-imports": "^3.1.0", + "postcss-modules-local-by-default": "^4.0.5", + "postcss-modules-scope": "^3.2.0", "postcss-modules-values": "^4.0.0", "postcss-value-parser": "^4.2.0", - "semver": "^7.3.5" + "semver": "^7.5.4" }, "dependencies": { "lru-cache": { @@ -4856,9 +9644,9 @@ } }, "semver": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", - "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", "dev": true, "requires": { "lru-cache": "^6.0.0" @@ -4873,34 +9661,26 @@ } }, "css-select": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", - "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz", + "integrity": "sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==", "dev": true, "requires": { "boolbase": "^1.0.0", - "css-what": "^6.0.1", - "domhandler": "^4.3.1", - "domutils": "^2.8.0", + "css-what": "^6.1.0", + "domhandler": "^5.0.2", + "domutils": "^3.0.1", "nth-check": "^2.0.1" } }, "css-tree": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz", - "integrity": "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==", + "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, "requires": { - "mdn-data": "2.0.14", - "source-map": "^0.6.1" - }, - "dependencies": { - "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 - } + "mdn-data": "2.0.30", + "source-map-js": "^1.0.1" } }, "css-what": { @@ -4916,72 +9696,132 @@ "dev": true }, "cssnano": { - "version": "5.1.13", - "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-5.1.13.tgz", - "integrity": "sha512-S2SL2ekdEz6w6a2epXn4CmMKU4K3KpcyXLKfAYc9UQQqJRkD/2eLUG0vJ3Db/9OvO5GuAdgXw3pFbR6abqghDQ==", + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-6.1.2.tgz", + "integrity": "sha512-rYk5UeX7VAM/u0lNqewCdasdtPK81CgX8wJFLEIXHbV2oldWRgJAsZrdhRXkV1NJzA2g850KiFm9mMU2HxNxMA==", "dev": true, "requires": { - "cssnano-preset-default": "^5.2.12", - "lilconfig": "^2.0.3", - "yaml": "^1.10.2" + "cssnano-preset-default": "^6.1.2", + "lilconfig": "^3.1.1" } }, "cssnano-preset-default": { - "version": "5.2.12", - "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-5.2.12.tgz", - "integrity": "sha512-OyCBTZi+PXgylz9HAA5kHyoYhfGcYdwFmyaJzWnzxuGRtnMw/kR6ilW9XzlzlRAtB6PLT/r+prYgkef7hngFew==", - "dev": true, - "requires": { - "css-declaration-sorter": "^6.3.0", - "cssnano-utils": "^3.1.0", - "postcss-calc": "^8.2.3", - "postcss-colormin": "^5.3.0", - "postcss-convert-values": "^5.1.2", - "postcss-discard-comments": "^5.1.2", - "postcss-discard-duplicates": "^5.1.0", - "postcss-discard-empty": "^5.1.1", - "postcss-discard-overridden": "^5.1.0", - "postcss-merge-longhand": "^5.1.6", - "postcss-merge-rules": "^5.1.2", - "postcss-minify-font-values": "^5.1.0", - "postcss-minify-gradients": "^5.1.1", - "postcss-minify-params": "^5.1.3", - "postcss-minify-selectors": "^5.2.1", - "postcss-normalize-charset": "^5.1.0", - "postcss-normalize-display-values": "^5.1.0", - "postcss-normalize-positions": "^5.1.1", - "postcss-normalize-repeat-style": "^5.1.1", - "postcss-normalize-string": "^5.1.0", - "postcss-normalize-timing-functions": "^5.1.0", - "postcss-normalize-unicode": "^5.1.0", - "postcss-normalize-url": "^5.1.0", - "postcss-normalize-whitespace": "^5.1.1", - "postcss-ordered-values": "^5.1.3", - "postcss-reduce-initial": "^5.1.0", - "postcss-reduce-transforms": "^5.1.0", - "postcss-svgo": "^5.1.0", - "postcss-unique-selectors": "^5.1.1" + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-6.1.2.tgz", + "integrity": "sha512-1C0C+eNaeN8OcHQa193aRgYexyJtU8XwbdieEjClw+J9d94E41LwT6ivKH0WT+fYwYWB0Zp3I3IZ7tI/BbUbrg==", + "dev": true, + "requires": { + "browserslist": "^4.23.0", + "css-declaration-sorter": "^7.2.0", + "cssnano-utils": "^4.0.2", + "postcss-calc": "^9.0.1", + "postcss-colormin": "^6.1.0", + "postcss-convert-values": "^6.1.0", + "postcss-discard-comments": "^6.0.2", + "postcss-discard-duplicates": "^6.0.3", + "postcss-discard-empty": "^6.0.3", + "postcss-discard-overridden": "^6.0.2", + "postcss-merge-longhand": "^6.0.5", + "postcss-merge-rules": "^6.1.1", + "postcss-minify-font-values": "^6.1.0", + "postcss-minify-gradients": "^6.0.3", + "postcss-minify-params": "^6.1.0", + "postcss-minify-selectors": "^6.0.4", + "postcss-normalize-charset": "^6.0.2", + "postcss-normalize-display-values": "^6.0.2", + "postcss-normalize-positions": "^6.0.2", + "postcss-normalize-repeat-style": "^6.0.2", + "postcss-normalize-string": "^6.0.2", + "postcss-normalize-timing-functions": "^6.0.2", + "postcss-normalize-unicode": "^6.1.0", + "postcss-normalize-url": "^6.0.2", + "postcss-normalize-whitespace": "^6.0.2", + "postcss-ordered-values": "^6.0.2", + "postcss-reduce-initial": "^6.1.0", + "postcss-reduce-transforms": "^6.0.2", + "postcss-svgo": "^6.0.3", + "postcss-unique-selectors": "^6.0.4" + }, + "dependencies": { + "browserslist": { + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", + "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", + "dev": true, + "requires": { + "caniuse-lite": "^1.0.30001587", + "electron-to-chromium": "^1.4.668", + "node-releases": "^2.0.14", + "update-browserslist-db": "^1.0.13" + } + }, + "caniuse-lite": { + "version": "1.0.30001612", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001612.tgz", + "integrity": "sha512-lFgnZ07UhaCcsSZgWW0K5j4e69dK1u/ltrL9lTUiFOwNHs12S3UMIEYgBV0Z6C6hRDev7iRnMzzYmKabYdXF9g==", + "dev": true + }, + "electron-to-chromium": { + "version": "1.4.748", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.748.tgz", + "integrity": "sha512-VWqjOlPZn70UZ8FTKUOkUvBLeTQ0xpty66qV0yJcAGY2/CthI4xyW9aEozRVtuwv3Kpf5xTesmJUcPwuJmgP4A==", + "dev": true + }, + "node-releases": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", + "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", + "dev": true + }, + "update-browserslist-db": { + "version": "1.0.13", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", + "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", + "dev": true, + "requires": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + } + } } }, "cssnano-utils": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cssnano-utils/-/cssnano-utils-3.1.0.tgz", - "integrity": "sha512-JQNR19/YZhz4psLX/rQ9M83e3z2Wf/HdJbryzte4a3NSuafyp9w/I4U+hx5C2S9g41qlstH7DEWnZaaj83OuEA==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/cssnano-utils/-/cssnano-utils-4.0.2.tgz", + "integrity": "sha512-ZR1jHg+wZ8o4c3zqf1SIUSTIvm/9mU343FMR6Obe/unskbvpGhZOo1J6d/r8D1pzkRQYuwbcH3hToOuoA2G7oQ==", "dev": true }, "csso": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/csso/-/csso-4.2.0.tgz", - "integrity": "sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==", + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/csso/-/csso-5.0.5.tgz", + "integrity": "sha512-0LrrStPOdJj+SPCCrGhzryycLjwcgUSHBtxNA8aIDxf0GLsRh1cKYhB00Gd1lDOS4yGH69+SNn13+TWbVHETFQ==", "dev": true, "requires": { - "css-tree": "^1.1.2" + "css-tree": "~2.2.0" + }, + "dependencies": { + "css-tree": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-2.2.1.tgz", + "integrity": "sha512-OA0mILzGc1kCOCSJerOeqDxDQ4HOh+G8NbOJFOTgOCzpw7fCBubk0fEyxp8AgOL/jvLgYA/uV0cMbe43ElF1JA==", + "dev": true, + "requires": { + "mdn-data": "2.0.28", + "source-map-js": "^1.0.1" + } + }, + "mdn-data": { + "version": "2.0.28", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.28.tgz", + "integrity": "sha512-aylIc7Z9y4yzHYAJNuESG3hfhC+0Ibp/MAMiaOZgNv4pmEdFyfZhhhny4MNiAfWdBQ1RQ2mfDWmM1x8SvGyp8g==", + "dev": true + } } }, "cssom": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz", - "integrity": "sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==", + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.5.0.tgz", + "integrity": "sha512-iKuQcq+NdHqlAcwUY0o/HL69XQrUaQdMjmStJ8JFmUaiiQErlhrmuigkg/CU4E2J0IyUKUrMAgl36TvN67MqTw==", "dev": true }, "cssstyle": { @@ -5023,15 +9863,48 @@ "integrity": "sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==", "dev": true }, + "data-uri-to-buffer": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-6.0.2.tgz", + "integrity": "sha512-7hvf7/GW8e86rW0ptuwS3OcBGDjIi6SZva7hCyWC0yYry2cOPmLIjXAUHI6DK2HsnwJd9ifmt57i8eV2n4YNpw==", + "dev": true + }, "data-urls": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-2.0.0.tgz", - "integrity": "sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-3.0.2.tgz", + "integrity": "sha512-Jy/tj3ldjZJo63sVAvg6LHt2mHvl4V6AgRAmNDtLdm7faqtsx+aJG42rsyCo9JCoRVKwPFzKlIPx3DIibwSIaQ==", "dev": true, "requires": { - "abab": "^2.0.3", - "whatwg-mimetype": "^2.3.0", - "whatwg-url": "^8.0.0" + "abab": "^2.0.6", + "whatwg-mimetype": "^3.0.0", + "whatwg-url": "^11.0.0" + }, + "dependencies": { + "tr46": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-3.0.0.tgz", + "integrity": "sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==", + "dev": true, + "requires": { + "punycode": "^2.1.1" + } + }, + "webidl-conversions": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", + "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", + "dev": true + }, + "whatwg-url": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-11.0.0.tgz", + "integrity": "sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==", + "dev": true, + "requires": { + "tr46": "^3.0.0", + "webidl-conversions": "^7.0.0" + } + } } }, "dateformat": { @@ -5040,6 +9913,12 @@ "integrity": "sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q==", "dev": true }, + "debounce": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/debounce/-/debounce-1.2.1.tgz", + "integrity": "sha512-XRRe6Glud4rd/ZGQfiV1ruXSfbvfJedlV9Y6zOlP+2K04vBYiJEte6stfFkCP03aMnY5tsipamumUjL14fofug==", + "dev": true + }, "debug": { "version": "4.3.4", "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", @@ -5056,9 +9935,9 @@ "dev": true }, "decamelize-keys": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.0.tgz", - "integrity": "sha512-ocLWuYzRPoS9bfiSdDd3cxvrzovVMZnRDVEzAs+hWIVXGDbHxWMECij2OBuyB/An0FFW/nLuq6Kv1i/YC5Qfzg==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.1.tgz", + "integrity": "sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==", "dev": true, "requires": { "decamelize": "^1.1.0", @@ -5074,9 +9953,9 @@ } }, "decimal.js": { - "version": "10.4.1", - "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.1.tgz", - "integrity": "sha512-F29o+vci4DodHYT9UrR5IEbfBw9pE5eSapIJdTqXK5+6hq+t8VRxwQyKlW2i+KDKFkkJQRvFyI/QXD83h8LyQw==", + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz", + "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==", "dev": true }, "decompress-response": { @@ -5097,9 +9976,9 @@ } }, "dedent": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", - "integrity": "sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==", + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/dedent/-/dedent-1.5.3.tgz", + "integrity": "sha512-NHQtfOOW68WD8lgypbLA5oT+Bt0xXJhiYvoR6SmmNXZfpzOGXwdKWmcwG8N7PwVVWV3eF/68nmD9BaJSsTBhyQ==", "dev": true }, "deep-extend": { @@ -5115,9 +9994,9 @@ "dev": true }, "deepmerge": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz", - "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==", + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", "dev": true }, "default-gateway": { @@ -5160,6 +10039,17 @@ "object-keys": "^1.1.1" } }, + "degenerator": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/degenerator/-/degenerator-5.0.1.tgz", + "integrity": "sha512-TllpMR/t0M5sqCXfj85i4XaAzxmS5tVA16dqvdkMwGmzI+dXLXnw3J+3Vdv7VKw+ThlTMboK6i9rnZ6Nntj5CQ==", + "dev": true, + "requires": { + "ast-types": "^0.13.4", + "escodegen": "^2.1.0", + "esprima": "^4.0.1" + } + }, "del": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/del/-/del-4.1.1.tgz", @@ -5253,15 +10143,15 @@ "dev": true }, "devtools-protocol": { - "version": "0.0.981744", - "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.981744.tgz", - "integrity": "sha512-0cuGS8+jhR67Fy7qG3i3Pc7Aw494sb9yG9QgpG97SFVWwolgYjlhJg7n+UaHxOQT30d1TYu/EYe9k01ivLErIg==", + "version": "0.0.1155343", + "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.1155343.tgz", + "integrity": "sha512-oD9vGBV2wTc7fAzAM6KC0chSgs234V8+qDEeK+mcbRj2UvcuA7lgBztGi/opj/iahcXD3BSj8Ymvib628yy9FA==", "dev": true }, "diff-sequences": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz", - "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.6.3.tgz", + "integrity": "sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==", "dev": true }, "dir-glob": { @@ -5273,16 +10163,10 @@ "path-type": "^4.0.0" } }, - "dns-equal": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz", - "integrity": "sha512-z+paD6YUQsk+AbGCEM4PrOXSss5gd66QfcVBFTKR/HpFL9jCqikS94HYwKww6fQyO7IxrIIyUu+g0Ka9tUS2Cg==", - "dev": true - }, "dns-packet": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-5.4.0.tgz", - "integrity": "sha512-EgqGeaBB8hLiHLZtp/IbaDQTL8pZ0+IvwzSHA6d7VyMDM+B9hgddEMa9xjK5oYnw0ci0JQ6g2XCD7/f6cafU6g==", + "version": "5.6.1", + "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-5.6.1.tgz", + "integrity": "sha512-l4gcSouhcgIKRvyy99RNVOgxXiicE+2jZoNmaNmZ6JXiGajBOJAesk1OBlJuM5k2c+eudGdLxDqXuPCKIj6kpw==", "dev": true, "requires": { "@leichtgewicht/ip-codec": "^2.0.1" @@ -5304,22 +10188,14 @@ } }, "dom-serializer": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", - "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", + "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", "dev": true, "requires": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.0", - "entities": "^2.0.0" - }, - "dependencies": { - "entities": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", - "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", - "dev": true - } + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "entities": "^4.2.0" } }, "domelementtype": { @@ -5329,40 +10205,40 @@ "dev": true }, "domexception": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/domexception/-/domexception-2.0.1.tgz", - "integrity": "sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/domexception/-/domexception-4.0.0.tgz", + "integrity": "sha512-A2is4PLG+eeSfoTMA95/s4pvAoSo2mKtiM5jlHkAVewmiO8ISFTFKZjH7UAM1Atli/OT/7JHOrJRJiMKUZKYBw==", "dev": true, "requires": { - "webidl-conversions": "^5.0.0" + "webidl-conversions": "^7.0.0" }, "dependencies": { "webidl-conversions": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-5.0.0.tgz", - "integrity": "sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", + "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", "dev": true } } }, "domhandler": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", - "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", + "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", "dev": true, "requires": { - "domelementtype": "^2.2.0" + "domelementtype": "^2.3.0" } }, "domutils": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", - "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.1.0.tgz", + "integrity": "sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==", "dev": true, "requires": { - "dom-serializer": "^1.0.1", - "domelementtype": "^2.2.0", - "domhandler": "^4.2.0" + "dom-serializer": "^2.0.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3" } }, "dot-case": { @@ -5375,6 +10251,15 @@ "tslib": "^2.0.3" } }, + "dot-prop": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", + "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", + "dev": true, + "requires": { + "is-obj": "^2.0.0" + } + }, "duplexer": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", @@ -5394,9 +10279,9 @@ "dev": true }, "emittery": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.8.1.tgz", - "integrity": "sha512-uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg==", + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.13.1.tgz", + "integrity": "sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==", "dev": true }, "emoji-regex": { @@ -5417,6 +10302,26 @@ "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", "dev": true }, + "encoding": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", + "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", + "dev": true, + "requires": { + "iconv-lite": "^0.6.2" + }, + "dependencies": { + "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, + "requires": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + } + } + } + }, "end-of-stream": { "version": "1.4.4", "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", @@ -5427,25 +10332,35 @@ } }, "enhanced-resolve": { - "version": "5.10.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.10.0.tgz", - "integrity": "sha512-T0yTFjdpldGY8PmuXXR0PyQ1ufZpEGiHVrp7zHKB7jdR4qlmZHhONVM5AQOAWXuF/w3dnHbEQVrNptJgt7F+cQ==", + "version": "5.16.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.16.0.tgz", + "integrity": "sha512-O+QWCviPNSSLAD9Ucn8Awv+poAkqn3T1XY5/N7kR7rQO9yfSGWkYZDwpJ+iKF7B8rxaQKWngSqACpgzeapSyoA==", "dev": true, "requires": { "graceful-fs": "^4.2.4", "tapable": "^2.2.0" } }, + "enquirer": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.4.1.tgz", + "integrity": "sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==", + "dev": true, + "requires": { + "ansi-colors": "^4.1.1", + "strip-ansi": "^6.0.1" + } + }, "entities": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-4.4.0.tgz", - "integrity": "sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA==", + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", "dev": true }, "envinfo": { - "version": "7.8.1", - "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.8.1.tgz", - "integrity": "sha512-/o+BXHmB7ocbHEAs6F2EnG0ogybVVUdkRunTT2glZU9XAaGmhqskrvKwqXuDfNjEO0LZKWdejEEpnq8aM0tOaw==", + "version": "7.12.0", + "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.12.0.tgz", + "integrity": "sha512-Iw9rQJBGpJRd3rwXm9ft/JiGoAZmLxxJZELYDQoPRZ4USVhkKtIcNBPw6U+/K2mBpaqM25JSV6Yl4Az9vO2wJg==", "dev": true }, "error-ex": { @@ -5499,9 +10414,9 @@ } }, "es-module-lexer": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz", - "integrity": "sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.5.0.tgz", + "integrity": "sha512-pqrTKmwEIgafsYZAGw9kszYzmagcE/n4dbgwGWLEXg7J4QFJVQRBld8j3Q3GNez79jzxZshq0bcT962QHOghjw==", "dev": true }, "es-shim-unscopables": { @@ -5543,110 +10458,69 @@ "dev": true }, "escodegen": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.0.0.tgz", - "integrity": "sha512-mmHKys/C8BFUGI+MAWNcSYoORYLMdPzjrknd2Vc+bUsjN5bXcr8EhrNB+UTqfL1y3I9c4fw2ihgtMPQLBRiQxw==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.1.0.tgz", + "integrity": "sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==", "dev": true, "requires": { "esprima": "^4.0.1", "estraverse": "^5.2.0", "esutils": "^2.0.2", - "optionator": "^0.8.1", "source-map": "~0.6.1" }, "dependencies": { - "levn": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", - "integrity": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==", - "dev": true, - "requires": { - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2" - } - }, - "optionator": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", - "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", - "dev": true, - "requires": { - "deep-is": "~0.1.3", - "fast-levenshtein": "~2.0.6", - "levn": "~0.3.0", - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2", - "word-wrap": "~1.2.3" - } - }, - "prelude-ls": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", - "integrity": "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==", - "dev": true - }, "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, "optional": true - }, - "type-check": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", - "integrity": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==", - "dev": true, - "requires": { - "prelude-ls": "~1.1.2" - } } } }, "eslint": { - "version": "8.24.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.24.0.tgz", - "integrity": "sha512-dWFaPhGhTAiPcCgm3f6LI2MBWbogMnTJzFBbhXVRQDJPkr9pGZvVjlVfXd+vyDcWPA2Ic9L2AXPIQM0+vk/cSQ==", + "version": "8.57.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.0.tgz", + "integrity": "sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==", "dev": true, "requires": { - "@eslint/eslintrc": "^1.3.2", - "@humanwhocodes/config-array": "^0.10.5", - "@humanwhocodes/gitignore-to-minimatch": "^1.0.2", + "@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", - "ajv": "^6.10.0", + "@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.1.1", - "eslint-utils": "^3.0.0", - "eslint-visitor-keys": "^3.3.0", - "espree": "^9.4.0", - "esquery": "^1.4.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.1", - "globals": "^13.15.0", - "globby": "^11.1.0", - "grapheme-splitter": "^1.0.4", + "glob-parent": "^6.0.2", + "globals": "^13.19.0", + "graphemer": "^1.4.0", "ignore": "^5.2.0", - "import-fresh": "^3.0.0", "imurmurhash": "^0.1.4", "is-glob": "^4.0.0", - "js-sdsl": "^4.1.4", + "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.1", - "regexpp": "^3.2.0", + "optionator": "^0.9.3", "strip-ansi": "^6.0.1", - "strip-json-comments": "^3.1.0", "text-table": "^0.2.0" }, "dependencies": { @@ -5708,9 +10582,9 @@ "dev": true }, "eslint-scope": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz", - "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==", + "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, "requires": { "esrecurse": "^4.3.0", @@ -5718,15 +10592,24 @@ } }, "eslint-visitor-keys": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", - "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", + "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 }, + "esquery": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", + "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", + "dev": true, + "requires": { + "estraverse": "^5.1.0" + } + }, "globals": { - "version": "13.17.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.17.0.tgz", - "integrity": "sha512-1C+6nQRb1GwGMKm2dH/E7enFAMxGTmGI7/dEdhy/DNelv85w9B72t3uc5frtMNXIbzrarJJ/lTCjcaZwbLJmyw==", + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", "dev": true, "requires": { "type-fest": "^0.20.2" @@ -5738,6 +10621,12 @@ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true }, + "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 + }, "js-yaml": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", @@ -5960,6 +10849,12 @@ "semver": "^6.3.0" } }, + "eslint-plugin-playwright": { + "version": "0.15.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-playwright/-/eslint-plugin-playwright-0.15.3.tgz", + "integrity": "sha512-LQMW5y0DLK5Fnpya7JR1oAYL2/7Y9wDiYw6VZqlKqcRGSgjbVKNqxraphk7ra1U3Bb5EK444xMgUlQPbMg2M1g==", + "dev": true + }, "eslint-plugin-prettier": { "version": "3.4.1", "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-3.4.1.tgz", @@ -6053,20 +10948,20 @@ "dev": true }, "espree": { - "version": "9.4.0", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.4.0.tgz", - "integrity": "sha512-DQmnRpLj7f6TgN/NYb0MTzJXL+vJF9h3pHy4JhCIs3zwcgez8xmGg3sXHcEO97BrmO2OSvCwMdfdlyl+E9KjOw==", + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", "dev": true, "requires": { - "acorn": "^8.8.0", + "acorn": "^8.9.0", "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^3.3.0" + "eslint-visitor-keys": "^3.4.1" }, "dependencies": { "eslint-visitor-keys": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", - "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", + "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 } } @@ -6207,15 +11102,16 @@ } }, "expect": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz", - "integrity": "sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/expect/-/expect-29.7.0.tgz", + "integrity": "sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw==", "dev": true, "requires": { - "@jest/types": "^27.5.1", - "jest-get-type": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1" + "@jest/expect-utils": "^29.7.0", + "jest-get-type": "^29.6.3", + "jest-matcher-utils": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0" } }, "expect-puppeteer": { @@ -6225,17 +11121,17 @@ "dev": true }, "express": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/express/-/express-4.18.1.tgz", - "integrity": "sha512-zZBcOX9TfehHQhtupq57OF8lFZ3UZi08Y97dwFCkD8p9d/d2Y3M+ykKcwaMDEL+4qyUolgBDX6AblpR3fL212Q==", + "version": "4.19.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.19.2.tgz", + "integrity": "sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q==", "dev": true, "requires": { "accepts": "~1.3.8", "array-flatten": "1.1.1", - "body-parser": "1.20.0", + "body-parser": "1.20.2", "content-disposition": "0.5.4", "content-type": "~1.0.4", - "cookie": "0.5.0", + "cookie": "0.6.0", "cookie-signature": "1.0.6", "debug": "2.6.9", "depd": "2.0.0", @@ -6251,7 +11147,7 @@ "parseurl": "~1.3.3", "path-to-regexp": "0.1.7", "proxy-addr": "~2.0.7", - "qs": "6.10.3", + "qs": "6.11.0", "range-parser": "~1.2.1", "safe-buffer": "5.2.1", "send": "0.18.0", @@ -6263,10 +11159,10 @@ "vary": "~1.1.2" }, "dependencies": { - "array-flatten": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==", + "cookie": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.6.0.tgz", + "integrity": "sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==", "dev": true }, "debug": { @@ -6350,6 +11246,12 @@ "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==", "dev": true }, + "fast-fifo": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/fast-fifo/-/fast-fifo-1.3.2.tgz", + "integrity": "sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ==", + "dev": true + }, "fast-glob": { "version": "3.2.12", "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", @@ -6591,6 +11493,12 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, + "commander": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-5.1.0.tgz", + "integrity": "sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==", + "dev": true + }, "has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -6672,26 +11580,44 @@ "integrity": "sha512-lNaHNVymajmk0OJMBn8fVUAU1BtDeKIqKoVhk4xAALB57aALg6b4W0MfJ/cUE0g9YBXy5XhSlPIpYIJ7HaY/3Q==", "dev": true }, + "flat": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", + "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", + "dev": true + }, "flat-cache": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", - "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", + "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", "dev": true, "requires": { - "flatted": "^3.1.0", + "flatted": "^3.2.9", + "keyv": "^4.5.3", "rimraf": "^3.0.2" + }, + "dependencies": { + "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, + "requires": { + "json-buffer": "3.0.1" + } + } } }, "flatted": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", - "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz", + "integrity": "sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==", "dev": true }, "follow-redirects": { - "version": "1.15.2", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz", - "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==", + "version": "1.15.6", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.6.tgz", + "integrity": "sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==", "dev": true }, "for-in": { @@ -6710,9 +11636,9 @@ } }, "form-data": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", - "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", + "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", "dev": true, "requires": { "asynckit": "^0.4.0", @@ -6727,9 +11653,9 @@ "dev": true }, "fraction.js": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz", - "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==", + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.3.7.tgz", + "integrity": "sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==", "dev": true }, "fresh": { @@ -6750,10 +11676,21 @@ "integrity": "sha512-cR/vflFyPZtrN6b38ZyWxpWdhlXrzZEBawlpBQMq7033xVY7/kg0GDMBK5jg8lDYQckdJ5x/YC88lM3C7VMsLg==", "dev": true }, + "fs-extra": { + "version": "11.2.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.2.0.tgz", + "integrity": "sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==", + "dev": true, + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + }, "fs-monkey": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.3.tgz", - "integrity": "sha512-cybjIfiiE+pTWicSCLFHSrXZ6EilF30oh91FDP9S2B051prEa7QWfrVTQm10/dDpswBDXZugPa1Ogu8Yh+HV0Q==", + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.5.tgz", + "integrity": "sha512-8uMbBjrhzW76TYgEV27Y5E//W2f/lTFmx78P2w19FZSxarhI/798APGQyuGCwmkNxgwGRhrLfvWyLBvNtuOmew==", "dev": true }, "fs.realpath": { @@ -6763,9 +11700,9 @@ "dev": true }, "fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", "dev": true, "optional": true }, @@ -6822,6 +11759,12 @@ "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", "dev": true }, + "get-port": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/get-port/-/get-port-5.1.1.tgz", + "integrity": "sha512-g/Q1aTSDOxFpchXC4i8ZWvxA1lnPqx/JHqcpIw0/LX9T8x/GBbi6YnlN5nhaKIFkT8oFsscUKgDJYxfwfS6QsQ==", + "dev": true + }, "get-stdin": { "version": "9.0.0", "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-9.0.0.tgz", @@ -6847,12 +11790,34 @@ "get-intrinsic": "^1.1.1" } }, + "get-uri": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/get-uri/-/get-uri-6.0.3.tgz", + "integrity": "sha512-BzUrJBS9EcUb4cFol8r4W3v1cPsSyajLSthNkz5BxbpDcHN5tIrM10E2eNvfnvBn3DaT3DUgx0OpsBKkaOpanw==", + "dev": true, + "requires": { + "basic-ftp": "^5.0.2", + "data-uri-to-buffer": "^6.0.2", + "debug": "^4.3.4", + "fs-extra": "^11.2.0" + } + }, "getobject": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/getobject/-/getobject-1.0.2.tgz", "integrity": "sha512-2zblDBaFcb3rB4rF77XVnuINOE2h2k/OnqXAiy0IrTxUfV1iFp3la33oAQVY9pCpWU268WFYVt2t71hlMuLsOg==", "dev": true }, + "gettext-parser": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/gettext-parser/-/gettext-parser-1.4.0.tgz", + "integrity": "sha512-sedZYLHlHeBop/gZ1jdg59hlUEcpcZJofLq2JFwJT1zTqAU3l2wFv6IsuwFHGqbiT9DWzMUW4/em2+hspnmMMA==", + "dev": true, + "requires": { + "encoding": "^0.1.12", + "safe-buffer": "^5.1.1" + } + }, "glob": { "version": "7.1.7", "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", @@ -6971,10 +11936,10 @@ "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", "dev": true }, - "grapheme-splitter": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", - "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==", + "graphemer": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", "dev": true }, "grunt": { @@ -7488,18 +12453,18 @@ } }, "html-encoding-sniffer": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz", - "integrity": "sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-3.0.0.tgz", + "integrity": "sha512-oWv4T4yJ52iKrufjnyZPkrN0CH3QnrUqdB6In1g5Fe1mia8GmF36gnfNySxoZtxD5+NmYw1EElVXiBk93UeskA==", "dev": true, "requires": { - "whatwg-encoding": "^1.0.5" + "whatwg-encoding": "^2.0.0" } }, "html-entities": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.3.3.tgz", - "integrity": "sha512-DV5Ln36z34NNTDgnz0EWGBLZENelNAtkiFA4kyNOG2tDI6Mz1uSWiq1wAKdyjnJwyDiDO7Fa2SO1CTxPXL8VxA==", + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.5.2.tgz", + "integrity": "sha512-K//PSRMQk4FZ78Kyau+mZurHn3FH0Vwr+H36eE0rPbeYkRRi9YxceYPhuN60UwWorxyKHhqoAJl2OFKa4BVtaA==", "dev": true }, "html-escaper": { @@ -7509,9 +12474,9 @@ "dev": true }, "html-tags": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/html-tags/-/html-tags-3.2.0.tgz", - "integrity": "sha512-vy7ClnArOZwCnqZgvv+ddgHgJiAFXe3Ge9ML5/mBctVJoUoYPCdxVucOywjDARn6CVoh3dRSFdPHy2sX80L0Wg==", + "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 }, "http-cache-semantics": { @@ -7539,6 +12504,12 @@ "toidentifier": "1.0.1" } }, + "http-link-header": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/http-link-header/-/http-link-header-1.1.3.tgz", + "integrity": "sha512-3cZ0SRL8fb9MUlU3mKM61FcQvPfXx2dBrZW3Vbg5CXa8jFlK8OaEpePenLe1oEXQduhz8b0QjsqfS59QP4AJDQ==", + "dev": true + }, "http-parser-js": { "version": "0.5.8", "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.8.tgz", @@ -7557,14 +12528,24 @@ } }, "http-proxy-agent": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", - "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz", + "integrity": "sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==", "dev": true, "requires": { - "@tootallnate/once": "1", - "agent-base": "6", - "debug": "4" + "agent-base": "^7.1.0", + "debug": "^4.3.4" + }, + "dependencies": { + "agent-base": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", + "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", + "dev": true, + "requires": { + "debug": "^4.3.4" + } + } } }, "http-proxy-middleware": { @@ -7642,10 +12623,16 @@ "minimatch": "^3.0.4" } }, + "image-ssim": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/image-ssim/-/image-ssim-0.2.0.tgz", + "integrity": "sha512-W7+sO6/yhxy83L0G7xR8YAc5Z5QFtYEXXRV6EaE8tuYBZJnA3gVgp3q7X7muhLZVodeb9UfvjSbwt9VJwjIYAg==", + "dev": true + }, "immutable": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.1.0.tgz", - "integrity": "sha512-oNkuqVTA8jqG1Q6c+UglTOD1xhC1BtjKI7XkCXRkZHrN5m18/XsnUp8Q89GkQO/z+0WjonSvl0FLhDYftp46nQ==", + "version": "4.3.5", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.5.tgz", + "integrity": "sha512-8eabxkth9gZatlwl5TBuJnCsoTADlL6ftEr7A4qgdaTsPyreilDSnUk57SO+jfKcNtxPa22U5KK6DSeAYhpBJw==", "dev": true }, "import-fresh": { @@ -7805,16 +12792,49 @@ "integrity": "sha512-CLM8SNMDu7C5psFCn6Wg/tgpj/bKAg7hc2gWqcuR9OD5Ft9PhBpIu8PLicPeis+xDd6YX2ncI8MCA64I9tftIA==", "dev": true }, + "intl-messageformat": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/intl-messageformat/-/intl-messageformat-4.4.0.tgz", + "integrity": "sha512-z+Bj2rS3LZSYU4+sNitdHrwnBhr0wO80ZJSW8EzKDBowwUe3Q/UsvgCGjrwa+HPzoGCLEb9HAjfJgo4j2Sac8w==", + "dev": true, + "requires": { + "intl-messageformat-parser": "^1.8.1" + } + }, + "intl-messageformat-parser": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/intl-messageformat-parser/-/intl-messageformat-parser-1.8.1.tgz", + "integrity": "sha512-IMSCKVf0USrM/959vj3xac7s8f87sc+80Y/ipBzdKy4ifBv5Gsj2tZ41EAaURVg01QU71fYr77uA8Meh6kELbg==", + "dev": true + }, + "ip-address": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-9.0.5.tgz", + "integrity": "sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g==", + "dev": true, + "requires": { + "jsbn": "1.1.0", + "sprintf-js": "^1.1.3" + }, + "dependencies": { + "sprintf-js": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz", + "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==", + "dev": true + } + } + }, "ipaddr.js": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.0.1.tgz", - "integrity": "sha512-1qTgH9NG+IIJ4yfKs2e6Pp1bZg8wbDbKHT21HrLIeYBTRLgMYKnMTPAuI3Lcs61nfx5h1xlXnbJtH1kX5/d/ng==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.2.0.tgz", + "integrity": "sha512-Ag3wB2o37wslZS19hZqorUnrnzSkpOVy+IiiDEiTqNubEYpYuHWIf6K4psgN2ZWKExS4xhVCrRVfb/wfW8fWJA==", "dev": true }, "irregular-plurals": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/irregular-plurals/-/irregular-plurals-3.3.0.tgz", - "integrity": "sha512-MVBLKUTangM3EfRPFROhmWQQKRDsrgI83J8GS3jXy+OwYqiR2/aoWndYQ5416jLE3uaGgLH7ncme3X9y09gZ3g==", + "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 }, "is-absolute": { @@ -7867,6 +12887,15 @@ "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", "dev": true }, + "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, + "requires": { + "builtin-modules": "^3.3.0" + } + }, "is-callable": { "version": "1.2.7", "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", @@ -7957,6 +12986,12 @@ "has-tostringtag": "^1.0.0" } }, + "is-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", + "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", + "dev": true + }, "is-path-cwd": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz", @@ -8115,9 +13150,9 @@ "dev": true }, "istanbul-lib-coverage": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", - "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", + "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==", "dev": true }, "istanbul-lib-instrument": { @@ -8134,13 +13169,13 @@ } }, "istanbul-lib-report": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", - "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", + "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", "dev": true, "requires": { "istanbul-lib-coverage": "^3.0.0", - "make-dir": "^3.0.0", + "make-dir": "^4.0.0", "supports-color": "^7.1.0" }, "dependencies": { @@ -8150,6 +13185,33 @@ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true }, + "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, + "requires": { + "yallist": "^4.0.0" + } + }, + "make-dir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", + "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", + "dev": true, + "requires": { + "semver": "^7.5.3" + } + }, + "semver": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + }, "supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", @@ -8158,6 +13220,12 @@ "requires": { "has-flag": "^4.0.0" } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true } } }, @@ -8181,9 +13249,9 @@ } }, "istanbul-reports": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.5.tgz", - "integrity": "sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w==", + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.7.tgz", + "integrity": "sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==", "dev": true, "requires": { "html-escaper": "^2.0.0", @@ -8191,52 +13259,15 @@ } }, "jest": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest/-/jest-27.5.1.tgz", - "integrity": "sha512-Yn0mADZB89zTtjkPJEXwrac3LHudkQMR+Paqa8uxJHCBr9agxztUifWCyiYrjhMPBoUVBjyny0I7XH6ozDr7QQ==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest/-/jest-29.7.0.tgz", + "integrity": "sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==", "dev": true, "requires": { - "@jest/core": "^27.5.1", + "@jest/core": "^29.7.0", + "@jest/types": "^29.6.3", "import-local": "^3.0.2", - "jest-cli": "^27.5.1" - } - }, - "jest-changed-files": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-27.5.1.tgz", - "integrity": "sha512-buBLMiByfWGCoMsLLzGUUSpAmIAGnbR2KJoMN10ziLhOLvP4e0SlypHnAel8iqQXTrcbmfEY9sSqae5sgUsTvw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "execa": "^5.0.0", - "throat": "^6.0.1" - } - }, - "jest-circus": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-27.5.1.tgz", - "integrity": "sha512-D95R7x5UtlMA5iBYsOHFFbMD/GVA4R/Kdq15f7xYWUfWHBto9NYRsOvnSauTgdF+ogCpJ4tyKOXhUifxS65gdw==", - "dev": true, - "requires": { - "@jest/environment": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "co": "^4.6.0", - "dedent": "^0.7.0", - "expect": "^27.5.1", - "is-generator-fn": "^2.0.0", - "jest-each": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-runtime": "^27.5.1", - "jest-snapshot": "^27.5.1", - "jest-util": "^27.5.1", - "pretty-format": "^27.5.1", - "slash": "^3.0.0", - "stack-utils": "^2.0.3", - "throat": "^6.0.1" + "jest-cli": "^29.7.0" }, "dependencies": { "ansi-styles": { @@ -8279,6 +13310,25 @@ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true }, + "jest-cli": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-29.7.0.tgz", + "integrity": "sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==", + "dev": true, + "requires": { + "@jest/core": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/types": "^29.6.3", + "chalk": "^4.0.0", + "create-jest": "^29.7.0", + "exit": "^0.1.2", + "import-local": "^3.0.2", + "jest-config": "^29.7.0", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "yargs": "^17.3.1" + } + }, "supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", @@ -8290,24 +13340,43 @@ } } }, - "jest-cli": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-27.5.1.tgz", - "integrity": "sha512-Hc6HOOwYq4/74/c62dEE3r5elx8wjYqxY0r0G/nFrLDPMFRu6RA/u8qINOIkvhxG7mMQ5EJsOGfRpI8L6eFUVw==", + "jest-changed-files": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-29.7.0.tgz", + "integrity": "sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w==", + "dev": true, + "requires": { + "execa": "^5.0.0", + "jest-util": "^29.7.0", + "p-limit": "^3.1.0" + } + }, + "jest-circus": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-29.7.0.tgz", + "integrity": "sha512-3E1nCMgipcTkCocFwM90XXQab9bS+GMsjdpmPrlelaxwD93Ad8iVEjX/vvHPdLPnFf+L40u+5+iutRdA1N9myw==", "dev": true, "requires": { - "@jest/core": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/types": "^27.5.1", + "@jest/environment": "^29.7.0", + "@jest/expect": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", "chalk": "^4.0.0", - "exit": "^0.1.2", - "graceful-fs": "^4.2.9", - "import-local": "^3.0.2", - "jest-config": "^27.5.1", - "jest-util": "^27.5.1", - "jest-validate": "^27.5.1", - "prompts": "^2.0.1", - "yargs": "^16.2.0" + "co": "^4.6.0", + "dedent": "^1.0.0", + "is-generator-fn": "^2.0.0", + "jest-each": "^29.7.0", + "jest-matcher-utils": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-runtime": "^29.7.0", + "jest-snapshot": "^29.7.0", + "jest-util": "^29.7.0", + "p-limit": "^3.1.0", + "pretty-format": "^29.7.0", + "pure-rand": "^6.0.0", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" }, "dependencies": { "ansi-styles": { @@ -8329,17 +13398,6 @@ "supports-color": "^7.1.0" } }, - "cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - } - }, "color-convert": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", @@ -8369,58 +13427,35 @@ "requires": { "has-flag": "^4.0.0" } - }, - "yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", - "dev": true, - "requires": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - } - }, - "yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", - "dev": true } } }, "jest-config": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-27.5.1.tgz", - "integrity": "sha512-5sAsjm6tGdsVbW9ahcChPAFCk4IlkQUknH5AvKjuLTSlcO/wCZKyFdn7Rg0EkC+OGgWODEy2hDpWB1PgzH0JNA==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-29.7.0.tgz", + "integrity": "sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ==", "dev": true, "requires": { - "@babel/core": "^7.8.0", - "@jest/test-sequencer": "^27.5.1", - "@jest/types": "^27.5.1", - "babel-jest": "^27.5.1", + "@babel/core": "^7.11.6", + "@jest/test-sequencer": "^29.7.0", + "@jest/types": "^29.6.3", + "babel-jest": "^29.7.0", "chalk": "^4.0.0", "ci-info": "^3.2.0", "deepmerge": "^4.2.2", - "glob": "^7.1.1", + "glob": "^7.1.3", "graceful-fs": "^4.2.9", - "jest-circus": "^27.5.1", - "jest-environment-jsdom": "^27.5.1", - "jest-environment-node": "^27.5.1", - "jest-get-type": "^27.5.1", - "jest-jasmine2": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-runner": "^27.5.1", - "jest-util": "^27.5.1", - "jest-validate": "^27.5.1", + "jest-circus": "^29.7.0", + "jest-environment-node": "^29.7.0", + "jest-get-type": "^29.6.3", + "jest-regex-util": "^29.6.3", + "jest-resolve": "^29.7.0", + "jest-runner": "^29.7.0", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", "micromatch": "^4.0.4", "parse-json": "^5.2.0", - "pretty-format": "^27.5.1", + "pretty-format": "^29.7.0", "slash": "^3.0.0", "strip-json-comments": "^3.1.1" }, @@ -8477,18 +13512,18 @@ } }, "jest-dev-server": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/jest-dev-server/-/jest-dev-server-6.1.1.tgz", - "integrity": "sha512-z5LnaGDvlIkdMv/rppSO4+rq+GyQKf1xI9oiBxf9/2EBeN2hxRaWiMvaLNDnHPZj2PAhBXsycrKslDDoZO2Xtw==", + "version": "9.0.2", + "resolved": "https://registry.npmjs.org/jest-dev-server/-/jest-dev-server-9.0.2.tgz", + "integrity": "sha512-Zc/JB0IlNNrpXkhBw+h86cGrde/Mey52KvF+FER2eyrtYJTHObOwW7Iarxm3rPyTKby5+3Y2QZtl8pRz/5GCxg==", "dev": true, "requires": { "chalk": "^4.1.2", "cwd": "^0.10.0", "find-process": "^1.4.7", "prompts": "^2.4.2", - "spawnd": "^6.0.2", + "spawnd": "^9.0.2", "tree-kill": "^1.2.2", - "wait-on": "^6.0.1" + "wait-on": "^7.2.0" }, "dependencies": { "ansi-styles": { @@ -8543,15 +13578,15 @@ } }, "jest-diff": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", - "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.7.0.tgz", + "integrity": "sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==", "dev": true, "requires": { "chalk": "^4.0.0", - "diff-sequences": "^27.5.1", - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" + "diff-sequences": "^29.6.3", + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" }, "dependencies": { "ansi-styles": { @@ -8606,25 +13641,25 @@ } }, "jest-docblock": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-27.5.1.tgz", - "integrity": "sha512-rl7hlABeTsRYxKiUfpHrQrG4e2obOiTQWfMEH3PxPjOtdsfLQO4ReWSZaQ7DETm4xu07rl4q/h4zcKXyU0/OzQ==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.7.0.tgz", + "integrity": "sha512-q617Auw3A612guyaFgsbFeYpNP5t2aoUNLwBUbc/0kD1R4t9ixDbyFTHd1nok4epoVFpr7PmeWHrhvuV3XaJ4g==", "dev": true, "requires": { "detect-newline": "^3.0.0" } }, "jest-each": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-27.5.1.tgz", - "integrity": "sha512-1Ff6p+FbhT/bXQnEouYy00bkNSY7OUpfIcmdl8vZ31A1UUaurOLPA8a8BbJOF2RDUElwJhmeaV7LnagI+5UwNQ==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-29.7.0.tgz", + "integrity": "sha512-gns+Er14+ZrEoC5fhOfYCY1LOHHr0TI+rQUHZS8Ttw2l7gl+80eHc/gFf2Ktkw0+SIACDTeWvpFcv3B04VembQ==", "dev": true, "requires": { - "@jest/types": "^27.5.1", + "@jest/types": "^29.6.3", "chalk": "^4.0.0", - "jest-get-type": "^27.5.1", - "jest-util": "^27.5.1", - "pretty-format": "^27.5.1" + "jest-get-type": "^29.6.3", + "jest-util": "^29.7.0", + "pretty-format": "^29.7.0" }, "dependencies": { "ansi-styles": { @@ -8679,157 +13714,81 @@ } }, "jest-environment-jsdom": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-27.5.1.tgz", - "integrity": "sha512-TFBvkTC1Hnnnrka/fUb56atfDtJ9VMZ94JkjTbggl1PEpwrYtUBKMezB3inLmWqQsXYLcMwNoDQwoBTAvFfsfw==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-29.7.0.tgz", + "integrity": "sha512-k9iQbsf9OyOfdzWH8HDmrRT0gSIcX+FLNW7IQq94tFX0gynPwqDTW0Ho6iMVNjGz/nb+l/vW3dWM2bbLLpkbXA==", "dev": true, "requires": { - "@jest/environment": "^27.5.1", - "@jest/fake-timers": "^27.5.1", - "@jest/types": "^27.5.1", + "@jest/environment": "^29.7.0", + "@jest/fake-timers": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/jsdom": "^20.0.0", "@types/node": "*", - "jest-mock": "^27.5.1", - "jest-util": "^27.5.1", - "jsdom": "^16.6.0" + "jest-mock": "^29.7.0", + "jest-util": "^29.7.0", + "jsdom": "^20.0.0" } }, "jest-environment-node": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-27.5.1.tgz", - "integrity": "sha512-Jt4ZUnxdOsTGwSRAfKEnE6BcwsSPNOijjwifq5sDFSA2kesnXTvNqKHYgM0hDq3549Uf/KzdXNYn4wMZJPlFLw==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.7.0.tgz", + "integrity": "sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw==", "dev": true, "requires": { - "@jest/environment": "^27.5.1", - "@jest/fake-timers": "^27.5.1", - "@jest/types": "^27.5.1", + "@jest/environment": "^29.7.0", + "@jest/fake-timers": "^29.7.0", + "@jest/types": "^29.6.3", "@types/node": "*", - "jest-mock": "^27.5.1", - "jest-util": "^27.5.1" + "jest-mock": "^29.7.0", + "jest-util": "^29.7.0" } }, "jest-get-type": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", - "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.6.3.tgz", + "integrity": "sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==", "dev": true }, "jest-haste-map": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", - "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.7.0.tgz", + "integrity": "sha512-fP8u2pyfqx0K1rGn1R9pyE0/KTn+G7PxktWidOBTqFPLYX0b9ksaMFkhK5vrS3DVun09pckLdlx90QthlW7AmA==", "dev": true, "requires": { - "@jest/types": "^27.5.1", - "@types/graceful-fs": "^4.1.2", + "@jest/types": "^29.6.3", + "@types/graceful-fs": "^4.1.3", "@types/node": "*", "anymatch": "^3.0.3", "fb-watchman": "^2.0.0", "fsevents": "^2.3.2", "graceful-fs": "^4.2.9", - "jest-regex-util": "^27.5.1", - "jest-serializer": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", + "jest-regex-util": "^29.6.3", + "jest-util": "^29.7.0", + "jest-worker": "^29.7.0", "micromatch": "^4.0.4", - "walker": "^1.0.7" - } - }, - "jest-jasmine2": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-27.5.1.tgz", - "integrity": "sha512-jtq7VVyG8SqAorDpApwiJJImd0V2wv1xzdheGHRGyuT7gZm6gG47QEskOlzsN1PG/6WNaCo5pmwMHDf3AkG2pQ==", - "dev": true, - "requires": { - "@jest/environment": "^27.5.1", - "@jest/source-map": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "co": "^4.6.0", - "expect": "^27.5.1", - "is-generator-fn": "^2.0.0", - "jest-each": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-runtime": "^27.5.1", - "jest-snapshot": "^27.5.1", - "jest-util": "^27.5.1", - "pretty-format": "^27.5.1", - "throat": "^6.0.1" - }, - "dependencies": { - "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, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "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, - "requires": { - "color-name": "~1.1.4" - } - }, - "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 - }, - "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 - }, - "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, - "requires": { - "has-flag": "^4.0.0" - } - } + "walker": "^1.0.8" } }, "jest-leak-detector": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-27.5.1.tgz", - "integrity": "sha512-POXfWAMvfU6WMUXftV4HolnJfnPOGEu10fscNCA76KBpRRhcMN2c8d3iT2pxQS3HLbA+5X4sOUPzYO2NUyIlHQ==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-29.7.0.tgz", + "integrity": "sha512-kYA8IJcSYtST2BY9I+SMC32nDpBT3J2NvWJx8+JCuCdl/CR1I4EKUJROiP8XtCcxqgTTBGJNdbB1A8XRKbTetw==", "dev": true, "requires": { - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" } }, "jest-matcher-utils": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", - "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.7.0.tgz", + "integrity": "sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g==", "dev": true, "requires": { "chalk": "^4.0.0", - "jest-diff": "^27.5.1", - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" + "jest-diff": "^29.7.0", + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" }, "dependencies": { "ansi-styles": { @@ -8884,18 +13843,18 @@ } }, "jest-message-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", - "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.7.0.tgz", + "integrity": "sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w==", "dev": true, "requires": { "@babel/code-frame": "^7.12.13", - "@jest/types": "^27.5.1", + "@jest/types": "^29.6.3", "@types/stack-utils": "^2.0.0", "chalk": "^4.0.0", "graceful-fs": "^4.2.9", "micromatch": "^4.0.4", - "pretty-format": "^27.5.1", + "pretty-format": "^29.7.0", "slash": "^3.0.0", "stack-utils": "^2.0.3" }, @@ -8952,42 +13911,42 @@ } }, "jest-mock": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-27.5.1.tgz", - "integrity": "sha512-K4jKbY1d4ENhbrG2zuPWaQBvDly+iZ2yAW+T1fATN78hc0sInwn7wZB8XtlNnvHug5RMwV897Xm4LqmPM4e2Og==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.7.0.tgz", + "integrity": "sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw==", "dev": true, "requires": { - "@jest/types": "^27.5.1", - "@types/node": "*" + "@jest/types": "^29.6.3", + "@types/node": "*", + "jest-util": "^29.7.0" } }, "jest-pnp-resolver": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz", - "integrity": "sha512-olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w==", + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", + "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", "dev": true }, "jest-regex-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", - "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.6.3.tgz", + "integrity": "sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg==", "dev": true }, "jest-resolve": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-27.5.1.tgz", - "integrity": "sha512-FFDy8/9E6CV83IMbDpcjOhumAQPDyETnU2KZ1O98DwTnz8AOBsW/Xv3GySr1mOZdItLR+zDZ7I/UdTFbgSOVCw==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-29.7.0.tgz", + "integrity": "sha512-IOVhZSrg+UvVAshDSDtHyFCCBUl/Q3AAJv8iZ6ZjnZ74xzvwuzLXid9IIIPgTnY62SJjfuupMKZsZQRsCvxEgA==", "dev": true, "requires": { - "@jest/types": "^27.5.1", "chalk": "^4.0.0", "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", + "jest-haste-map": "^29.7.0", "jest-pnp-resolver": "^1.2.2", - "jest-util": "^27.5.1", - "jest-validate": "^27.5.1", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", "resolve": "^1.20.0", - "resolve.exports": "^1.1.0", + "resolve.exports": "^2.0.0", "slash": "^3.0.0" }, "dependencies": { @@ -9043,43 +14002,42 @@ } }, "jest-resolve-dependencies": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-27.5.1.tgz", - "integrity": "sha512-QQOOdY4PE39iawDn5rzbIePNigfe5B9Z91GDD1ae/xNDlu9kaat8QQ5EKnNmVWPV54hUdxCVwwj6YMgR2O7IOg==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-29.7.0.tgz", + "integrity": "sha512-un0zD/6qxJ+S0et7WxeI3H5XSe9lTBBR7bOHCHXkKR6luG5mwDDlIzVQ0V5cZCuoTgEdcdwzTghYkTWfubi+nA==", "dev": true, "requires": { - "@jest/types": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-snapshot": "^27.5.1" + "jest-regex-util": "^29.6.3", + "jest-snapshot": "^29.7.0" } }, "jest-runner": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-27.5.1.tgz", - "integrity": "sha512-g4NPsM4mFCOwFKXO4p/H/kWGdJp9V8kURY2lX8Me2drgXqG7rrZAx5kv+5H7wtt/cdFIjhqYx1HrlqWHaOvDaQ==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-29.7.0.tgz", + "integrity": "sha512-fsc4N6cPCAahybGBfTRcq5wFR6fpLznMg47sY5aDpsoejOcVYFb07AHuSnR0liMcPTgBsA3ZJL6kFOjPdoNipQ==", "dev": true, "requires": { - "@jest/console": "^27.5.1", - "@jest/environment": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", + "@jest/console": "^29.7.0", + "@jest/environment": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", "@types/node": "*", "chalk": "^4.0.0", - "emittery": "^0.8.1", + "emittery": "^0.13.1", "graceful-fs": "^4.2.9", - "jest-docblock": "^27.5.1", - "jest-environment-jsdom": "^27.5.1", - "jest-environment-node": "^27.5.1", - "jest-haste-map": "^27.5.1", - "jest-leak-detector": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-runtime": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", - "source-map-support": "^0.5.6", - "throat": "^6.0.1" + "jest-docblock": "^29.7.0", + "jest-environment-node": "^29.7.0", + "jest-haste-map": "^29.7.0", + "jest-leak-detector": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-resolve": "^29.7.0", + "jest-runtime": "^29.7.0", + "jest-util": "^29.7.0", + "jest-watcher": "^29.7.0", + "jest-worker": "^29.7.0", + "p-limit": "^3.1.0", + "source-map-support": "0.5.13" }, "dependencies": { "ansi-styles": { @@ -9134,31 +14092,31 @@ } }, "jest-runtime": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-27.5.1.tgz", - "integrity": "sha512-o7gxw3Gf+H2IGt8fv0RiyE1+r83FJBRruoA+FXrlHw6xEyBsU8ugA6IPfTdVyA0w8HClpbK+DGJxH59UrNMx8A==", - "dev": true, - "requires": { - "@jest/environment": "^27.5.1", - "@jest/fake-timers": "^27.5.1", - "@jest/globals": "^27.5.1", - "@jest/source-map": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-29.7.0.tgz", + "integrity": "sha512-gUnLjgwdGqW7B4LvOIkbKs9WGbn+QLqRQQ9juC6HndeDiezIwhDP+mhMwHWCEcfQ5RUXa6OPnFF8BJh5xegwwQ==", + "dev": true, + "requires": { + "@jest/environment": "^29.7.0", + "@jest/fake-timers": "^29.7.0", + "@jest/globals": "^29.7.0", + "@jest/source-map": "^29.6.3", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", "chalk": "^4.0.0", "cjs-module-lexer": "^1.0.0", "collect-v8-coverage": "^1.0.0", - "execa": "^5.0.0", "glob": "^7.1.3", "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-mock": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-snapshot": "^27.5.1", - "jest-util": "^27.5.1", + "jest-haste-map": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-mock": "^29.7.0", + "jest-regex-util": "^29.6.3", + "jest-resolve": "^29.7.0", + "jest-snapshot": "^29.7.0", + "jest-util": "^29.7.0", "slash": "^3.0.0", "strip-bom": "^4.0.0" }, @@ -9214,44 +14172,32 @@ } } }, - "jest-serializer": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-27.5.1.tgz", - "integrity": "sha512-jZCyo6iIxO1aqUxpuBlwTDMkzOAJS4a3eYz3YzgxxVQFwLeSA7Jfq5cbqCY+JLvTDrWirgusI/0KwxKMgrdf7w==", - "dev": true, - "requires": { - "@types/node": "*", - "graceful-fs": "^4.2.9" - } - }, "jest-snapshot": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-27.5.1.tgz", - "integrity": "sha512-yYykXI5a0I31xX67mgeLw1DZ0bJB+gpq5IpSuCAoyDi0+BhgU/RIrL+RTzDmkNTchvDFWKP8lp+w/42Z3us5sA==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-29.7.0.tgz", + "integrity": "sha512-Rm0BMWtxBcioHr1/OX5YCP8Uov4riHvKPknOGs804Zg9JGZgmIBkbtlxJC/7Z4msKYVbIJtfU+tKb8xlYNfdkw==", "dev": true, "requires": { - "@babel/core": "^7.7.2", + "@babel/core": "^7.11.6", "@babel/generator": "^7.7.2", + "@babel/plugin-syntax-jsx": "^7.7.2", "@babel/plugin-syntax-typescript": "^7.7.2", - "@babel/traverse": "^7.7.2", - "@babel/types": "^7.0.0", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/babel__traverse": "^7.0.4", - "@types/prettier": "^2.1.5", + "@babel/types": "^7.3.3", + "@jest/expect-utils": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", "babel-preset-current-node-syntax": "^1.0.0", "chalk": "^4.0.0", - "expect": "^27.5.1", + "expect": "^29.7.0", "graceful-fs": "^4.2.9", - "jest-diff": "^27.5.1", - "jest-get-type": "^27.5.1", - "jest-haste-map": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-util": "^27.5.1", + "jest-diff": "^29.7.0", + "jest-get-type": "^29.6.3", + "jest-matcher-utils": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0", "natural-compare": "^1.4.0", - "pretty-format": "^27.5.1", - "semver": "^7.3.2" + "pretty-format": "^29.7.0", + "semver": "^7.5.3" }, "dependencies": { "ansi-styles": { @@ -9304,9 +14250,9 @@ } }, "semver": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", - "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", "dev": true, "requires": { "lru-cache": "^6.0.0" @@ -9330,12 +14276,12 @@ } }, "jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.7.0.tgz", + "integrity": "sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==", "dev": true, "requires": { - "@jest/types": "^27.5.1", + "@jest/types": "^29.6.3", "@types/node": "*", "chalk": "^4.0.0", "ci-info": "^3.2.0", @@ -9395,17 +14341,17 @@ } }, "jest-validate": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-27.5.1.tgz", - "integrity": "sha512-thkNli0LYTmOI1tDB3FI1S1RTp/Bqyd9pTarJwL87OIBFuqEb5Apv5EaApEudYg4g86e3CT6kM0RowkhtEnCBQ==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-29.7.0.tgz", + "integrity": "sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw==", "dev": true, "requires": { - "@jest/types": "^27.5.1", + "@jest/types": "^29.6.3", "camelcase": "^6.2.0", "chalk": "^4.0.0", - "jest-get-type": "^27.5.1", + "jest-get-type": "^29.6.3", "leven": "^3.1.0", - "pretty-format": "^27.5.1" + "pretty-format": "^29.7.0" }, "dependencies": { "ansi-styles": { @@ -9460,17 +14406,18 @@ } }, "jest-watcher": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-27.5.1.tgz", - "integrity": "sha512-z676SuD6Z8o8qbmEGhoEUFOM1+jfEiL3DXHK/xgEiG2EyNYfFG60jluWcupY6dATjfEsKQuibReS1djInQnoVw==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-29.7.0.tgz", + "integrity": "sha512-49Fg7WXkU3Vl2h6LbLtMQ/HyB6rXSIX7SqvBLQmssRBGN9I0PNvPmAmCWSOY6SOvrjhI/F7/bGAv9RtnsPA03g==", "dev": true, "requires": { - "@jest/test-result": "^27.5.1", - "@jest/types": "^27.5.1", + "@jest/test-result": "^29.7.0", + "@jest/types": "^29.6.3", "@types/node": "*", "ansi-escapes": "^4.2.1", "chalk": "^4.0.0", - "jest-util": "^27.5.1", + "emittery": "^0.13.1", + "jest-util": "^29.7.0", "string-length": "^4.0.1" }, "dependencies": { @@ -9526,12 +14473,13 @@ } }, "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==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.7.0.tgz", + "integrity": "sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==", "dev": true, "requires": { "@types/node": "*", + "jest-util": "^29.7.0", "merge-stream": "^2.0.0", "supports-color": "^8.0.0" }, @@ -9554,22 +14502,28 @@ } }, "joi": { - "version": "17.6.2", - "resolved": "https://registry.npmjs.org/joi/-/joi-17.6.2.tgz", - "integrity": "sha512-+gqqdh1xc1wb+Lor0J9toqgeReyDOCqOdG8QSdRcEvwrcRiFQZneUCGKjFjuyBWUb3uaFOgY56yMaZ5FIc+H4w==", + "version": "17.13.0", + "resolved": "https://registry.npmjs.org/joi/-/joi-17.13.0.tgz", + "integrity": "sha512-9qcrTyoBmFZRNHeVP4edKqIUEgFzq7MHvTNSDuHSqkpOPtiBkgNgcmTSqmiw1kw9tdKaiddvIDv/eCJDxmqWCA==", "dev": true, "requires": { - "@hapi/hoek": "^9.0.0", - "@hapi/topo": "^5.0.0", - "@sideway/address": "^4.1.3", - "@sideway/formula": "^3.0.0", + "@hapi/hoek": "^9.3.0", + "@hapi/topo": "^5.1.0", + "@sideway/address": "^4.1.5", + "@sideway/formula": "^3.0.1", "@sideway/pinpoint": "^2.0.0" } }, - "js-sdsl": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.1.5.tgz", - "integrity": "sha512-08bOAKweV2NUC1wqTtf3qZlnpOX/R2DU9ikpjOHs0H+ibQv3zpncVQg6um4uYtRtrwIX8M4Nh3ytK4HGlYAq7Q==", + "jpeg-js": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/jpeg-js/-/jpeg-js-0.4.4.tgz", + "integrity": "sha512-WZzeDOEtTOBK4Mdsar0IqEU5sMr3vSV2RqkAIzUEV2BHnUfKGyswWFPFwK5EeDo93K3FohSHbLAjj0s1Wzd+dg==", + "dev": true + }, + "js-library-detector": { + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/js-library-detector/-/js-library-detector-6.7.0.tgz", + "integrity": "sha512-c80Qupofp43y4cJ7+8TTDN/AsDwLi5oOm/plBrWI+iQt485vKXCco+yVmOwEgdo9VOdsYTuV0UlTeetVPTriXA==", "dev": true }, "js-tokens": { @@ -9588,6 +14542,12 @@ "esprima": "^4.0.0" } }, + "jsbn": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-1.1.0.tgz", + "integrity": "sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==", + "dev": true + }, "jsdoc-type-pratt-parser": { "version": "2.2.5", "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-2.2.5.tgz", @@ -9595,38 +14555,81 @@ "dev": true }, "jsdom": { - "version": "16.7.0", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-16.7.0.tgz", - "integrity": "sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==", + "version": "20.0.3", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-20.0.3.tgz", + "integrity": "sha512-SYhBvTh89tTfCD/CRdSOm13mOBa42iTaTyfyEWBdKcGdPxPtLFBXuHR8XHb33YNYaP+lLbmSvBTsnoesCNJEsQ==", "dev": true, "requires": { - "abab": "^2.0.5", - "acorn": "^8.2.4", - "acorn-globals": "^6.0.0", - "cssom": "^0.4.4", + "abab": "^2.0.6", + "acorn": "^8.8.1", + "acorn-globals": "^7.0.0", + "cssom": "^0.5.0", "cssstyle": "^2.3.0", - "data-urls": "^2.0.0", - "decimal.js": "^10.2.1", - "domexception": "^2.0.1", + "data-urls": "^3.0.2", + "decimal.js": "^10.4.2", + "domexception": "^4.0.0", "escodegen": "^2.0.0", - "form-data": "^3.0.0", - "html-encoding-sniffer": "^2.0.1", - "http-proxy-agent": "^4.0.1", - "https-proxy-agent": "^5.0.0", + "form-data": "^4.0.0", + "html-encoding-sniffer": "^3.0.0", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.1", "is-potential-custom-element-name": "^1.0.1", - "nwsapi": "^2.2.0", - "parse5": "6.0.1", - "saxes": "^5.0.1", + "nwsapi": "^2.2.2", + "parse5": "^7.1.1", + "saxes": "^6.0.0", "symbol-tree": "^3.2.4", - "tough-cookie": "^4.0.0", - "w3c-hr-time": "^1.0.2", - "w3c-xmlserializer": "^2.0.0", - "webidl-conversions": "^6.1.0", - "whatwg-encoding": "^1.0.5", - "whatwg-mimetype": "^2.3.0", - "whatwg-url": "^8.5.0", - "ws": "^7.4.6", - "xml-name-validator": "^3.0.0" + "tough-cookie": "^4.1.2", + "w3c-xmlserializer": "^4.0.0", + "webidl-conversions": "^7.0.0", + "whatwg-encoding": "^2.0.0", + "whatwg-mimetype": "^3.0.0", + "whatwg-url": "^11.0.0", + "ws": "^8.11.0", + "xml-name-validator": "^4.0.0" + }, + "dependencies": { + "http-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", + "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", + "dev": true, + "requires": { + "@tootallnate/once": "2", + "agent-base": "6", + "debug": "4" + } + }, + "tr46": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-3.0.0.tgz", + "integrity": "sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==", + "dev": true, + "requires": { + "punycode": "^2.1.1" + } + }, + "webidl-conversions": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", + "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", + "dev": true + }, + "whatwg-url": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-11.0.0.tgz", + "integrity": "sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==", + "dev": true, + "requires": { + "tr46": "^3.0.0", + "webidl-conversions": "^7.0.0" + } + }, + "ws": { + "version": "8.16.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.16.0.tgz", + "integrity": "sha512-HS0c//TP7Ina87TfiPUz1rQzMhHrl/SG2guqRcTOIUYD2q8uhUdNHZYJUaQ8aTGPzCh+c6oawMKW35nFl1dxyQ==", + "dev": true + } } }, "jsesc": { @@ -9666,9 +14669,9 @@ "dev": true }, "json2php": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/json2php/-/json2php-0.0.5.tgz", - "integrity": "sha512-jWpsGAYlQDKOjJcyq3rYaxcZ+5YMhZIKHKTjdIKJPI9zLSX+yRWHSSwtV8hvIg7YMhbKkgPO669Ve2ZgFK5C7w==", + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/json2php/-/json2php-0.0.7.tgz", + "integrity": "sha512-dnSoUiLAoVaMXxFsVi4CrPVYMKOuDBXTghXSmMINX44RZ8WM9cXlY7UqrQnlAcODCVO7FV3+8t/5nDKAjimLfg==", "dev": true }, "json5": { @@ -9683,6 +14686,16 @@ "integrity": "sha512-fQzRfAbIBnR0IQvftw9FJveWiHp72Fg20giDrHz6TdfB12UH/uue0D3hm57UB5KgAVuniLMCaS8P1IMj9NR7cA==", "dev": true }, + "jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.6", + "universalify": "^2.0.0" + } + }, "jsx-ast-utils": { "version": "3.3.3", "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.3.tgz", @@ -9718,15 +14731,15 @@ "dev": true }, "klona": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.5.tgz", - "integrity": "sha512-pJiBpiXMbt7dkzXe8Ghj/u4FfXOOa98fPW+bihOJ4SjnoijweJrNThJfd3ifXpXhREjpoF2mZVH1GfS9LV3kHQ==", + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.6.tgz", + "integrity": "sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==", "dev": true }, "known-css-properties": { - "version": "0.25.0", - "resolved": "https://registry.npmjs.org/known-css-properties/-/known-css-properties-0.25.0.tgz", - "integrity": "sha512-b0/9J1O9Jcyik1GC6KC42hJ41jKwdO/Mq8Mdo5sYN+IuRTXs2YFHZC3kZSx6ueusqa95x3wLYe/ytKjbAfGixA==", + "version": "0.26.0", + "resolved": "https://registry.npmjs.org/known-css-properties/-/known-css-properties-0.26.0.tgz", + "integrity": "sha512-5FZRzrZzNTBruuurWpvZnvP9pum+fe0HcK8z/ooo+U+Hmp4vtbyp1/QDsqmufirXy4egGzbaH/y2uCZf+6W5Kg==", "dev": true }, "language-subtag-registry": { @@ -9744,6 +14757,24 @@ "language-subtag-registry": "~0.3.2" } }, + "launch-editor": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/launch-editor/-/launch-editor-2.6.1.tgz", + "integrity": "sha512-eB/uXmFVpY4zezmGp5XtU21kwo7GBbKB+EQ+UZeWtGb9yAM5xt/Evk+lYH3eRNAtId+ej4u7TYPFZ07w4s7rRw==", + "dev": true, + "requires": { + "picocolors": "^1.0.0", + "shell-quote": "^1.8.1" + }, + "dependencies": { + "shell-quote": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.1.tgz", + "integrity": "sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==", + "dev": true + } + } + }, "lazy-cache": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz", @@ -9839,10 +14870,120 @@ } } }, + "lighthouse": { + "version": "10.4.0", + "resolved": "https://registry.npmjs.org/lighthouse/-/lighthouse-10.4.0.tgz", + "integrity": "sha512-XQWHEWkJ8YxSPsxttBJORy5+hQrzbvGkYfeP3fJjyYKioWkF2MXfFqNK4ZuV4jL8pBu7Z91qnQP6In0bq1yXww==", + "dev": true, + "requires": { + "@sentry/node": "^6.17.4", + "axe-core": "4.7.2", + "chrome-launcher": "^0.15.2", + "configstore": "^5.0.1", + "csp_evaluator": "1.1.1", + "devtools-protocol": "0.0.1155343", + "enquirer": "^2.3.6", + "http-link-header": "^1.1.1", + "intl-messageformat": "^4.4.0", + "jpeg-js": "^0.4.4", + "js-library-detector": "^6.6.0", + "lighthouse-logger": "^1.4.1", + "lighthouse-stack-packs": "1.11.0", + "lodash": "^4.17.21", + "lookup-closest-locale": "6.2.0", + "metaviewport-parser": "0.3.0", + "open": "^8.4.0", + "parse-cache-control": "1.0.1", + "ps-list": "^8.0.0", + "puppeteer-core": "^20.8.0", + "robots-parser": "^3.0.0", + "semver": "^5.3.0", + "speedline-core": "^1.4.3", + "third-party-web": "^0.23.3", + "ws": "^7.0.0", + "yargs": "^17.3.1", + "yargs-parser": "^21.0.0" + }, + "dependencies": { + "axe-core": { + "version": "4.7.2", + "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.7.2.tgz", + "integrity": "sha512-zIURGIS1E1Q4pcrMjp+nnEh+16G56eG/MUllJH8yEvw7asDo7Ac9uhC9KIH5jzpITueEZolfYglnCGIuSBz39g==", + "dev": true + }, + "puppeteer-core": { + "version": "20.9.0", + "resolved": "https://registry.npmjs.org/puppeteer-core/-/puppeteer-core-20.9.0.tgz", + "integrity": "sha512-H9fYZQzMTRrkboEfPmf7m3CLDN6JvbxXA3qTtS+dFt27tR+CsFHzPsT6pzp6lYL6bJbAPaR0HaPO6uSi+F94Pg==", + "dev": true, + "requires": { + "@puppeteer/browsers": "1.4.6", + "chromium-bidi": "0.4.16", + "cross-fetch": "4.0.0", + "debug": "4.3.4", + "devtools-protocol": "0.0.1147663", + "ws": "8.13.0" + }, + "dependencies": { + "devtools-protocol": { + "version": "0.0.1147663", + "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.1147663.tgz", + "integrity": "sha512-hyWmRrexdhbZ1tcJUGpO95ivbRhWXz++F4Ko+n21AY5PNln2ovoJw+8ZMNDTtip+CNFQfrtLVh/w4009dXO/eQ==", + "dev": true + }, + "ws": { + "version": "8.13.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.13.0.tgz", + "integrity": "sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA==", + "dev": true + } + } + }, + "semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true + } + } + }, + "lighthouse-logger": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/lighthouse-logger/-/lighthouse-logger-1.4.2.tgz", + "integrity": "sha512-gPWxznF6TKmUHrOQjlVo2UbaL2EJ71mb2CCeRs/2qBpi4L/g4LUVc9+3lKQ6DTUZwJswfM7ainGrLO1+fOqa2g==", + "dev": true, + "requires": { + "debug": "^2.6.9", + "marky": "^1.2.2" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + } + } + }, + "lighthouse-stack-packs": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/lighthouse-stack-packs/-/lighthouse-stack-packs-1.11.0.tgz", + "integrity": "sha512-sRr0z1S/I26VffRLq9KJsKtLk856YrJlNGmcJmbLX8dFn3MuzVPUbstuChEhqnSxZb8TZmVfthuXuwhG9vRoSw==", + "dev": true + }, "lilconfig": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.6.tgz", - "integrity": "sha512-9JROoBW7pobfsx+Sq2JsASvCo6Pfo6WWoUW79HuB1BCoBXD4PLWJPqDF6fNj67pqBYTbAHkE57M1kS/+L1neOg==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.1.1.tgz", + "integrity": "sha512-O18pf7nyvHTckunPWCV1XUNXU1piu01y2b7ATJ0ppkUkk8ocqVWBrYjJBCwHDjD/ZWcfyrA0P4gKhzWGi5EINQ==", "dev": true }, "lines-and-columns": { @@ -10031,6 +15172,12 @@ } } }, + "lookup-closest-locale": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/lookup-closest-locale/-/lookup-closest-locale-6.2.0.tgz", + "integrity": "sha512-/c2kL+Vnp1jnV6K6RpDTHK3dgg0Tu2VVp+elEiJpjfS1UyY7AjOYHohRug6wT0OpoX2qFgNORndE9RqesfVxWQ==", + "dev": true + }, "loose-envify": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", @@ -10056,15 +15203,20 @@ "dev": true }, "lru-cache": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", - "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "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, "requires": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" + "yallist": "^3.0.2" } }, + "lru_map": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/lru_map/-/lru_map-0.3.3.tgz", + "integrity": "sha512-Pn9cox5CsMYngeDbmChANltQl+5pi6XmTrraMSzhPmMBbmgcxmqWry0U3PGapCU1yB4/LqCcom7qhHZiF/jGfQ==", + "dev": true + }, "make-dir": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", @@ -10235,6 +15387,12 @@ "integrity": "sha512-oEacRUVeTJ5D5hW1UYd2qExYI0oELdYK72k1TKGvIeYJIbqQWAz476NAc7LNixSySUhcNl++d02DvX0ccDk9/w==", "dev": true }, + "marky": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/marky/-/marky-1.2.5.tgz", + "integrity": "sha512-q9JtQJKjpsVxCRVgQ+WapguSbKC3SQ5HEzFGPAJMStgh3QjCawp00UKv3MTTAArTmGmmPUvllHZoNbZ3gs0I+Q==", + "dev": true + }, "mathml-tag-names": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/mathml-tag-names/-/mathml-tag-names-2.1.3.tgz", @@ -10242,9 +15400,9 @@ "dev": true }, "mdn-data": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz", - "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==", + "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 }, "mdurl": { @@ -10260,14 +15418,20 @@ "dev": true }, "memfs": { - "version": "3.4.7", - "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.4.7.tgz", - "integrity": "sha512-ygaiUSNalBX85388uskeCyhSAoOSgzBbtVCr9jA2RROssFL9Q19/ZXFqS+2Th2sr1ewNIWgFdLzLC3Yl1Zv+lw==", + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.5.3.tgz", + "integrity": "sha512-UERzLsxzllchadvbPs5aolHh65ISpKpM+ccLbOJ8/vvpBKmAWf+la7dXFy7Mr0ySHbdHrFv5kGFCUHHe6GFEmw==", "dev": true, "requires": { - "fs-monkey": "^1.0.3" + "fs-monkey": "^1.0.4" } }, + "memize": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/memize/-/memize-2.1.0.tgz", + "integrity": "sha512-yywVJy8ctVlN5lNPxsep5urnZ6TTclwPEyigM9M3Bi8vseJBOfqNrGWN/r8NzuIt3PovM323W04blJfGQfQSVg==", + "dev": true + }, "memorystream": { "version": "0.3.1", "resolved": "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz", @@ -10275,28 +15439,80 @@ "dev": true }, "meow": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/meow/-/meow-6.1.1.tgz", - "integrity": "sha512-3YffViIt2QWgTy6Pale5QpopX/IvU3LPL03jOTqp6pGj3VjesdO/U8CuHMKpnQr4shCNCM5fd5XFFvIIl6JBHg==", + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/meow/-/meow-9.0.0.tgz", + "integrity": "sha512-+obSblOQmRhcyBt62furQqRAQpNyWXo8BuQ5bN7dG8wmwQ+vwHKp/rCFD4CrTP8CsDQD1sjoZ94K417XEUk8IQ==", "dev": true, "requires": { "@types/minimist": "^1.2.0", "camelcase-keys": "^6.2.2", + "decamelize": "^1.2.0", "decamelize-keys": "^1.1.0", "hard-rejection": "^2.1.0", - "minimist-options": "^4.0.2", - "normalize-package-data": "^2.5.0", + "minimist-options": "4.1.0", + "normalize-package-data": "^3.0.0", "read-pkg-up": "^7.0.1", "redent": "^3.0.0", "trim-newlines": "^3.0.0", - "type-fest": "^0.13.1", - "yargs-parser": "^18.1.3" + "type-fest": "^0.18.0", + "yargs-parser": "^20.2.3" }, "dependencies": { + "hosted-git-info": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", + "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + }, + "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, + "requires": { + "yallist": "^4.0.0" + } + }, + "normalize-package-data": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", + "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", + "dev": true, + "requires": { + "hosted-git-info": "^4.0.1", + "is-core-module": "^2.5.0", + "semver": "^7.3.4", + "validate-npm-package-license": "^3.0.1" + } + }, + "semver": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + }, "type-fest": { - "version": "0.13.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.13.1.tgz", - "integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==", + "version": "0.18.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.18.1.tgz", + "integrity": "sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==", + "dev": true + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", "dev": true } } @@ -10330,6 +15546,12 @@ "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", "dev": true }, + "metaviewport-parser": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/metaviewport-parser/-/metaviewport-parser-0.3.0.tgz", + "integrity": "sha512-EoYJ8xfjQ6kpe9VbVHvZTZHiOl4HL1Z18CrZ+qahvLXT7ZO4YTC2JMyt5FaUp9JJp6J4Ybb/z7IsCXZt86/QkQ==", + "dev": true + }, "methods": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", @@ -10347,9 +15569,9 @@ } }, "mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-3.0.0.tgz", + "integrity": "sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==", "dev": true }, "mime-db": { @@ -10386,18 +15608,19 @@ "dev": true }, "mini-css-extract-plugin": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.6.1.tgz", - "integrity": "sha512-wd+SD57/K6DiV7jIR34P+s3uckTRuQvx0tKPcvjFlrEylk6P4mQ2KSWk1hblj1Kxaqok7LogKOieygXqBczNlg==", + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.9.0.tgz", + "integrity": "sha512-Zs1YsZVfemekSZG+44vBsYTLQORkPMwnlv+aehcxK/NLKC+EGhDB39/YePYYqx/sTk6NnYpuqikhSn7+JIevTA==", "dev": true, "requires": { - "schema-utils": "^4.0.0" + "schema-utils": "^4.0.0", + "tapable": "^2.2.1" }, "dependencies": { "ajv": { - "version": "8.11.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.11.0.tgz", - "integrity": "sha512-wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg==", + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", @@ -10422,15 +15645,15 @@ "dev": true }, "schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.2.0.tgz", + "integrity": "sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==", "dev": true, "requires": { "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", + "ajv": "^8.9.0", "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" + "ajv-keywords": "^5.1.0" } } } @@ -10487,6 +15710,12 @@ } } }, + "mitt": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/mitt/-/mitt-3.0.0.tgz", + "integrity": "sha512-7dX2/10ITVyqh4aOSVI9gdape+t9l2/8QxHrFmUXu4EEUpdlxl6RudZUPZoc+zuY2hk1j7XxVroIVIan/pD/SQ==", + "dev": true + }, "mixin-object": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/mixin-object/-/mixin-object-2.0.1.tgz", @@ -10521,9 +15750,9 @@ "dev": true }, "mrmime": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mrmime/-/mrmime-1.0.1.tgz", - "integrity": "sha512-hzzEagAgDyoU1Q6yg5uI+AorQgdvMCur3FcKf7NhMKWsaYg+RnbTyHRa/9IlLF9rf455MOCtcqqrQQ83pPP7Uw==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mrmime/-/mrmime-2.0.0.tgz", + "integrity": "sha512-eu38+hdgojoyq63s+yTpN4XMBdt5l8HhMhc4VKLO9KM5caLIBvUm4thi7fFaxyTmCKeNnXZ5pAlBwCUnhA09uw==", "dev": true }, "ms": { @@ -10569,6 +15798,12 @@ "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", "dev": true }, + "nanoid": { + "version": "3.3.7", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", + "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", + "dev": true + }, "natural-compare": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", @@ -10587,6 +15822,12 @@ "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", "dev": true }, + "netmask": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/netmask/-/netmask-2.0.2.tgz", + "integrity": "sha512-dBpDMdxv9Irdq66304OLfEmQ9tbNRFnFTuZiLo+bD+r332bBmMJ8GBLXklIXXgxd3+v9+KUnZaUR5PJMa75Gsg==", + "dev": true + }, "nice-try": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", @@ -10604,36 +15845,12 @@ } }, "node-fetch": { - "version": "2.6.7", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", - "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", + "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", "dev": true, "requires": { "whatwg-url": "^5.0.0" - }, - "dependencies": { - "tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", - "dev": true - }, - "webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", - "dev": true - }, - "whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", - "dev": true, - "requires": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" - } - } } }, "node-forge": { @@ -10717,26 +15934,28 @@ "dev": true }, "npm-package-json-lint": { - "version": "5.4.2", - "resolved": "https://registry.npmjs.org/npm-package-json-lint/-/npm-package-json-lint-5.4.2.tgz", - "integrity": "sha512-DH1MSvYvm+cuQFXcPehIIu/WiYzMYs7BOxlhOOFHaH2SNrA+P2uDtTEe5LOG90Ci7PTwgF/dCmSKM2HWTgWXNA==", + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/npm-package-json-lint/-/npm-package-json-lint-6.4.0.tgz", + "integrity": "sha512-cuXAJJB1Rdqz0UO6w524matlBqDBjcNt7Ru+RDIu4y6RI1gVqiWBnylrK8sPRk81gGBA0X8hJbDXolVOoTc+sA==", "dev": true, "requires": { "ajv": "^6.12.6", "ajv-errors": "^1.0.1", "chalk": "^4.1.2", - "cosmiconfig": "^7.0.1", - "debug": "^4.3.2", - "globby": "^11.0.4", - "ignore": "^5.1.9", + "cosmiconfig": "^8.0.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "ignore": "^5.2.0", "is-plain-obj": "^3.0.0", - "jsonc-parser": "^3.0.0", + "jsonc-parser": "^3.2.0", "log-symbols": "^4.1.0", - "meow": "^6.1.1", + "meow": "^9.0.0", "plur": "^4.0.0", - "semver": "^7.3.5", + "semver": "^7.3.8", "slash": "^3.0.0", - "strip-json-comments": "^3.1.1" + "strip-json-comments": "^3.1.1", + "type-fest": "^3.2.0", + "validate-npm-package-name": "^5.0.0" }, "dependencies": { "ansi-styles": { @@ -10748,6 +15967,12 @@ "color-convert": "^2.0.1" } }, + "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 + }, "chalk": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", @@ -10773,12 +15998,39 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, + "cosmiconfig": { + "version": "8.3.6", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.3.6.tgz", + "integrity": "sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==", + "dev": true, + "requires": { + "import-fresh": "^3.3.0", + "js-yaml": "^4.1.0", + "parse-json": "^5.2.0", + "path-type": "^4.0.0" + } + }, "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 }, + "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, + "requires": { + "argparse": "^2.0.1" + } + }, + "jsonc-parser": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.1.tgz", + "integrity": "sha512-AilxAyFOAcK5wA1+LeaySVBrHsGQvUFCDWXKpZjzaL0PqW+xfBOttn8GNtWKFWqneyMZj41MWF9Kl6iPWLwgOA==", + "dev": true + }, "lru-cache": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", @@ -10789,9 +16041,9 @@ } }, "semver": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", - "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", "dev": true, "requires": { "lru-cache": "^6.0.0" @@ -10806,6 +16058,12 @@ "has-flag": "^4.0.0" } }, + "type-fest": { + "version": "3.13.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.13.1.tgz", + "integrity": "sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==", + "dev": true + }, "yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", @@ -10889,9 +16147,9 @@ } }, "nwsapi": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.2.tgz", - "integrity": "sha512-90yv+6538zuvUMnN+zCr8LuV6bPFdq50304114vJYJ8RDyK8D5O9Phpbd6SZWgI7PwzmmfN1upeOJlvybDSgCw==", + "version": "2.2.9", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.9.tgz", + "integrity": "sha512-2f3F0SEEer8bBu0dsNCFF50N0cTThV1nWFYcEYFZttdW0lDAoybv9cQoK7X7/68Z89S7FoRrVjP1LPX4XRf9vg==", "dev": true }, "object-assign": { @@ -11066,9 +16324,9 @@ } }, "open": { - "version": "8.4.0", - "resolved": "https://registry.npmjs.org/open/-/open-8.4.0.tgz", - "integrity": "sha512-XgFPPM+B28FtCCgSb9I+s9szOC1vZRSwgWsRUA5ylIxRTgKozqjOCrVOqGsYABPYK5qnfqClxZTFBa8PKt2v6Q==", + "version": "8.4.2", + "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz", + "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==", "dev": true, "requires": { "define-lazy-prop": "^2.0.0", @@ -11083,17 +16341,17 @@ "dev": true }, "optionator": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", - "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz", + "integrity": "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==", "dev": true, "requires": { + "@aashutoshrathi/word-wrap": "^1.2.3", "deep-is": "^0.1.3", "fast-levenshtein": "^2.0.6", "levn": "^0.4.1", "prelude-ls": "^1.2.1", - "type-check": "^0.4.0", - "word-wrap": "^1.2.3" + "type-check": "^0.4.0" } }, "ora": { @@ -11292,6 +16550,53 @@ "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", "dev": true }, + "pac-proxy-agent": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/pac-proxy-agent/-/pac-proxy-agent-7.0.1.tgz", + "integrity": "sha512-ASV8yU4LLKBAjqIPMbrgtaKIvxQri/yh2OpI+S6hVa9JRkUI3Y3NPFbfngDtY7oFtSMD3w31Xns89mDa3Feo5A==", + "dev": true, + "requires": { + "@tootallnate/quickjs-emscripten": "^0.23.0", + "agent-base": "^7.0.2", + "debug": "^4.3.4", + "get-uri": "^6.0.1", + "http-proxy-agent": "^7.0.0", + "https-proxy-agent": "^7.0.2", + "pac-resolver": "^7.0.0", + "socks-proxy-agent": "^8.0.2" + }, + "dependencies": { + "agent-base": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", + "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", + "dev": true, + "requires": { + "debug": "^4.3.4" + } + }, + "https-proxy-agent": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.4.tgz", + "integrity": "sha512-wlwpilI7YdjSkWaQ/7omYBMTliDcmCN8OLihO6I9B86g06lMyAoqgoDpV0XqoaPOKj+0DIdAvnsWfyAAhmimcg==", + "dev": true, + "requires": { + "agent-base": "^7.0.2", + "debug": "4" + } + } + } + }, + "pac-resolver": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/pac-resolver/-/pac-resolver-7.0.1.tgz", + "integrity": "sha512-5NPgf87AT2STgwa2ntRMr45jTKrYBGkVU36yT0ig/n/GMAa3oPqhZfIQ2kMEimReg0+t9kZViDVZ83qfVUlckg==", + "dev": true, + "requires": { + "degenerator": "^5.0.0", + "netmask": "^2.0.2" + } + }, "param-case": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/param-case/-/param-case-3.0.4.tgz", @@ -11311,6 +16616,12 @@ "callsites": "^3.0.0" } }, + "parse-cache-control": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parse-cache-control/-/parse-cache-control-1.0.1.tgz", + "integrity": "sha512-60zvsJReQPX5/QP0Kzfd/VrpjScIQ7SHBW6bFCYfEP+fp0Eppr1SHhIO5nd1PjZtvclzSzES9D/p5nFJurwfWg==", + "dev": true + }, "parse-filepath": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/parse-filepath/-/parse-filepath-1.0.2.tgz", @@ -11362,10 +16673,13 @@ "dev": true }, "parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", - "dev": true + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", + "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==", + "dev": true, + "requires": { + "entities": "^4.4.0" + } }, "parseurl": { "version": "1.3.3", @@ -11496,9 +16810,9 @@ } }, "pirates": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.5.tgz", - "integrity": "sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==", + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", + "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", "dev": true }, "pkg-dir": { @@ -11613,78 +16927,154 @@ } }, "postcss": { - "version": "8.4.31", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", - "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==", + "version": "8.4.38", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.38.tgz", + "integrity": "sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==", "dev": true, "requires": { - "nanoid": "^3.3.6", + "nanoid": "^3.3.7", "picocolors": "^1.0.0", - "source-map-js": "^1.0.2" - }, - "dependencies": { - "nanoid": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz", - "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==", - "dev": true - } + "source-map-js": "^1.2.0" } }, "postcss-calc": { - "version": "8.2.4", - "resolved": "https://registry.npmjs.org/postcss-calc/-/postcss-calc-8.2.4.tgz", - "integrity": "sha512-SmWMSJmB8MRnnULldx0lQIyhSNvuDl9HfrZkaqqE/WHAhToYsAvDq+yAsA/kIyINDszOp3Rh0GFoNuH5Ypsm3Q==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/postcss-calc/-/postcss-calc-9.0.1.tgz", + "integrity": "sha512-TipgjGyzP5QzEhsOZUaIkeO5mKeMFpebWzRogWG/ysonUlnHcq5aJe0jOjpfzUU8PeSaBQnrE8ehR0QA5vs8PQ==", "dev": true, "requires": { - "postcss-selector-parser": "^6.0.9", + "postcss-selector-parser": "^6.0.11", "postcss-value-parser": "^4.2.0" } }, "postcss-colormin": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-5.3.0.tgz", - "integrity": "sha512-WdDO4gOFG2Z8n4P8TWBpshnL3JpmNmJwdnfP2gbk2qBA8PWwOYcmjmI/t3CmMeL72a7Hkd+x/Mg9O2/0rD54Pg==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-6.1.0.tgz", + "integrity": "sha512-x9yX7DOxeMAR+BgGVnNSAxmAj98NX/YxEMNFP+SDCEeNLb2r3i6Hh1ksMsnW8Ub5SLCpbescQqn9YEbE9554Sw==", "dev": true, "requires": { - "browserslist": "^4.16.6", + "browserslist": "^4.23.0", "caniuse-api": "^3.0.0", - "colord": "^2.9.1", + "colord": "^2.9.3", "postcss-value-parser": "^4.2.0" + }, + "dependencies": { + "browserslist": { + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", + "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", + "dev": true, + "requires": { + "caniuse-lite": "^1.0.30001587", + "electron-to-chromium": "^1.4.668", + "node-releases": "^2.0.14", + "update-browserslist-db": "^1.0.13" + } + }, + "caniuse-lite": { + "version": "1.0.30001612", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001612.tgz", + "integrity": "sha512-lFgnZ07UhaCcsSZgWW0K5j4e69dK1u/ltrL9lTUiFOwNHs12S3UMIEYgBV0Z6C6hRDev7iRnMzzYmKabYdXF9g==", + "dev": true + }, + "electron-to-chromium": { + "version": "1.4.748", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.748.tgz", + "integrity": "sha512-VWqjOlPZn70UZ8FTKUOkUvBLeTQ0xpty66qV0yJcAGY2/CthI4xyW9aEozRVtuwv3Kpf5xTesmJUcPwuJmgP4A==", + "dev": true + }, + "node-releases": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", + "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", + "dev": true + }, + "update-browserslist-db": { + "version": "1.0.13", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", + "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", + "dev": true, + "requires": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + } + } } }, "postcss-convert-values": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-5.1.2.tgz", - "integrity": "sha512-c6Hzc4GAv95B7suy4udszX9Zy4ETyMCgFPUDtWjdFTKH1SE9eFY/jEpHSwTH1QPuwxHpWslhckUQWbNRM4ho5g==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-6.1.0.tgz", + "integrity": "sha512-zx8IwP/ts9WvUM6NkVSkiU902QZL1bwPhaVaLynPtCsOTqp+ZKbNi+s6XJg3rfqpKGA/oc7Oxk5t8pOQJcwl/w==", "dev": true, "requires": { - "browserslist": "^4.20.3", + "browserslist": "^4.23.0", "postcss-value-parser": "^4.2.0" + }, + "dependencies": { + "browserslist": { + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", + "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", + "dev": true, + "requires": { + "caniuse-lite": "^1.0.30001587", + "electron-to-chromium": "^1.4.668", + "node-releases": "^2.0.14", + "update-browserslist-db": "^1.0.13" + } + }, + "caniuse-lite": { + "version": "1.0.30001612", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001612.tgz", + "integrity": "sha512-lFgnZ07UhaCcsSZgWW0K5j4e69dK1u/ltrL9lTUiFOwNHs12S3UMIEYgBV0Z6C6hRDev7iRnMzzYmKabYdXF9g==", + "dev": true + }, + "electron-to-chromium": { + "version": "1.4.748", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.748.tgz", + "integrity": "sha512-VWqjOlPZn70UZ8FTKUOkUvBLeTQ0xpty66qV0yJcAGY2/CthI4xyW9aEozRVtuwv3Kpf5xTesmJUcPwuJmgP4A==", + "dev": true + }, + "node-releases": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", + "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", + "dev": true + }, + "update-browserslist-db": { + "version": "1.0.13", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", + "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", + "dev": true, + "requires": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + } + } } }, "postcss-discard-comments": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-5.1.2.tgz", - "integrity": "sha512-+L8208OVbHVF2UQf1iDmRcbdjJkuBF6IS29yBDSiWUIzpYaAhtNl6JYnYm12FnkeCwQqF5LeklOu6rAqgfBZqQ==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-6.0.2.tgz", + "integrity": "sha512-65w/uIqhSBBfQmYnG92FO1mWZjJ4GL5b8atm5Yw2UgrwD7HiNiSSNwJor1eCFGzUgYnN/iIknhNRVqjrrpuglw==", "dev": true }, "postcss-discard-duplicates": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-5.1.0.tgz", - "integrity": "sha512-zmX3IoSI2aoenxHV6C7plngHWWhUOV3sP1T8y2ifzxzbtnuhk1EdPwm0S1bIUNaJ2eNbWeGLEwzw8huPD67aQw==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-6.0.3.tgz", + "integrity": "sha512-+JA0DCvc5XvFAxwx6f/e68gQu/7Z9ud584VLmcgto28eB8FqSFZwtrLwB5Kcp70eIoWP/HXqz4wpo8rD8gpsTw==", "dev": true }, "postcss-discard-empty": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-5.1.1.tgz", - "integrity": "sha512-zPz4WljiSuLWsI0ir4Mcnr4qQQ5e1Ukc3i7UfE2XcrwKK2LIPIqE5jxMRxO6GbI3cv//ztXDsXwEWT3BHOGh3A==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-6.0.3.tgz", + "integrity": "sha512-znyno9cHKQsK6PtxL5D19Fj9uwSzC2mB74cpT66fhgOadEUPyXFkbgwm5tvc3bt3NAy8ltE5MrghxovZRVnOjQ==", "dev": true }, "postcss-discard-overridden": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-5.1.0.tgz", - "integrity": "sha512-21nOL7RqWR1kasIVdKs8HNqQJhFxLsyRfAnUDm4Fe4t4mCWL9OJiHvlHPjcd8zc5Myu89b/7wZDnOSjFgeWRtw==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-6.0.2.tgz", + "integrity": "sha512-j87xzI4LUggC5zND7KdjsI25APtyMuynXZSujByMaav2roV6OZX+8AaCUcZSWqckZpjAjRyFDdpqybgjFO0HJQ==", "dev": true }, "postcss-loader": { @@ -11708,9 +17098,9 @@ } }, "semver": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", - "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", "dev": true, "requires": { "lru-cache": "^6.0.0" @@ -11731,77 +17121,161 @@ "dev": true }, "postcss-merge-longhand": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-5.1.6.tgz", - "integrity": "sha512-6C/UGF/3T5OE2CEbOuX7iNO63dnvqhGZeUnKkDeifebY0XqkkvrctYSZurpNE902LDf2yKwwPFgotnfSoPhQiw==", + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-6.0.5.tgz", + "integrity": "sha512-5LOiordeTfi64QhICp07nzzuTDjNSO8g5Ksdibt44d+uvIIAE1oZdRn8y/W5ZtYgRH/lnLDlvi9F8btZcVzu3w==", "dev": true, "requires": { "postcss-value-parser": "^4.2.0", - "stylehacks": "^5.1.0" + "stylehacks": "^6.1.1" } }, "postcss-merge-rules": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-5.1.2.tgz", - "integrity": "sha512-zKMUlnw+zYCWoPN6yhPjtcEdlJaMUZ0WyVcxTAmw3lkkN/NDMRkOkiuctQEoWAOvH7twaxUUdvBWl0d4+hifRQ==", + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-6.1.1.tgz", + "integrity": "sha512-KOdWF0gju31AQPZiD+2Ar9Qjowz1LTChSjFFbS+e2sFgc4uHOp3ZvVX4sNeTlk0w2O31ecFGgrFzhO0RSWbWwQ==", "dev": true, "requires": { - "browserslist": "^4.16.6", + "browserslist": "^4.23.0", "caniuse-api": "^3.0.0", - "cssnano-utils": "^3.1.0", - "postcss-selector-parser": "^6.0.5" + "cssnano-utils": "^4.0.2", + "postcss-selector-parser": "^6.0.16" + }, + "dependencies": { + "browserslist": { + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", + "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", + "dev": true, + "requires": { + "caniuse-lite": "^1.0.30001587", + "electron-to-chromium": "^1.4.668", + "node-releases": "^2.0.14", + "update-browserslist-db": "^1.0.13" + } + }, + "caniuse-lite": { + "version": "1.0.30001612", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001612.tgz", + "integrity": "sha512-lFgnZ07UhaCcsSZgWW0K5j4e69dK1u/ltrL9lTUiFOwNHs12S3UMIEYgBV0Z6C6hRDev7iRnMzzYmKabYdXF9g==", + "dev": true + }, + "electron-to-chromium": { + "version": "1.4.748", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.748.tgz", + "integrity": "sha512-VWqjOlPZn70UZ8FTKUOkUvBLeTQ0xpty66qV0yJcAGY2/CthI4xyW9aEozRVtuwv3Kpf5xTesmJUcPwuJmgP4A==", + "dev": true + }, + "node-releases": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", + "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", + "dev": true + }, + "update-browserslist-db": { + "version": "1.0.13", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", + "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", + "dev": true, + "requires": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + } + } } }, "postcss-minify-font-values": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-5.1.0.tgz", - "integrity": "sha512-el3mYTgx13ZAPPirSVsHqFzl+BBBDrXvbySvPGFnQcTI4iNslrPaFq4muTkLZmKlGk4gyFAYUBMH30+HurREyA==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-6.1.0.tgz", + "integrity": "sha512-gklfI/n+9rTh8nYaSJXlCo3nOKqMNkxuGpTn/Qm0gstL3ywTr9/WRKznE+oy6fvfolH6dF+QM4nCo8yPLdvGJg==", "dev": true, "requires": { "postcss-value-parser": "^4.2.0" } }, "postcss-minify-gradients": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-5.1.1.tgz", - "integrity": "sha512-VGvXMTpCEo4qHTNSa9A0a3D+dxGFZCYwR6Jokk+/3oB6flu2/PnPXAh2x7x52EkY5xlIHLm+Le8tJxe/7TNhzw==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-6.0.3.tgz", + "integrity": "sha512-4KXAHrYlzF0Rr7uc4VrfwDJ2ajrtNEpNEuLxFgwkhFZ56/7gaE4Nr49nLsQDZyUe+ds+kEhf+YAUolJiYXF8+Q==", "dev": true, "requires": { - "colord": "^2.9.1", - "cssnano-utils": "^3.1.0", + "colord": "^2.9.3", + "cssnano-utils": "^4.0.2", "postcss-value-parser": "^4.2.0" } }, "postcss-minify-params": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-5.1.3.tgz", - "integrity": "sha512-bkzpWcjykkqIujNL+EVEPOlLYi/eZ050oImVtHU7b4lFS82jPnsCb44gvC6pxaNt38Els3jWYDHTjHKf0koTgg==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-6.1.0.tgz", + "integrity": "sha512-bmSKnDtyyE8ujHQK0RQJDIKhQ20Jq1LYiez54WiaOoBtcSuflfK3Nm596LvbtlFcpipMjgClQGyGr7GAs+H1uA==", "dev": true, "requires": { - "browserslist": "^4.16.6", - "cssnano-utils": "^3.1.0", + "browserslist": "^4.23.0", + "cssnano-utils": "^4.0.2", "postcss-value-parser": "^4.2.0" + }, + "dependencies": { + "browserslist": { + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", + "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", + "dev": true, + "requires": { + "caniuse-lite": "^1.0.30001587", + "electron-to-chromium": "^1.4.668", + "node-releases": "^2.0.14", + "update-browserslist-db": "^1.0.13" + } + }, + "caniuse-lite": { + "version": "1.0.30001612", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001612.tgz", + "integrity": "sha512-lFgnZ07UhaCcsSZgWW0K5j4e69dK1u/ltrL9lTUiFOwNHs12S3UMIEYgBV0Z6C6hRDev7iRnMzzYmKabYdXF9g==", + "dev": true + }, + "electron-to-chromium": { + "version": "1.4.748", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.748.tgz", + "integrity": "sha512-VWqjOlPZn70UZ8FTKUOkUvBLeTQ0xpty66qV0yJcAGY2/CthI4xyW9aEozRVtuwv3Kpf5xTesmJUcPwuJmgP4A==", + "dev": true + }, + "node-releases": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", + "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", + "dev": true + }, + "update-browserslist-db": { + "version": "1.0.13", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", + "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", + "dev": true, + "requires": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + } + } } }, "postcss-minify-selectors": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-5.2.1.tgz", - "integrity": "sha512-nPJu7OjZJTsVUmPdm2TcaiohIwxP+v8ha9NehQ2ye9szv4orirRU3SDdtUmKH+10nzn0bAyOXZ0UEr7OpvLehg==", + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-6.0.4.tgz", + "integrity": "sha512-L8dZSwNLgK7pjTto9PzWRoMbnLq5vsZSTu8+j1P/2GB8qdtGQfn+K1uSvFgYvgh83cbyxT5m43ZZhUMTJDSClQ==", "dev": true, "requires": { - "postcss-selector-parser": "^6.0.5" + "postcss-selector-parser": "^6.0.16" } }, "postcss-modules-extract-imports": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz", - "integrity": "sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.1.0.tgz", + "integrity": "sha512-k3kNe0aNFQDAZGbin48pL2VNidTF0w4/eASDsxlyspobzU3wZQLOGj7L9gfRe0Jo9/4uud09DsjFNH7winGv8Q==", "dev": true }, "postcss-modules-local-by-default": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.0.tgz", - "integrity": "sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ==", + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.5.tgz", + "integrity": "sha512-6MieY7sIfTK0hYfafw1OMEG+2bg8Q1ocHCpoWLqOKj3JXlKu4G7btkmM/B7lFubYkYWmRSPLZi5chid63ZaZYw==", "dev": true, "requires": { "icss-utils": "^5.0.0", @@ -11810,9 +17284,9 @@ } }, "postcss-modules-scope": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz", - "integrity": "sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.2.0.tgz", + "integrity": "sha512-oq+g1ssrsZOsx9M96c5w8laRmvEu9C3adDSjI8oTcbfkrTE8hx/zfyobUoWIxaKPO8bt6S62kxpw5GqypEw1QQ==", "dev": true, "requires": { "postcss-selector-parser": "^6.0.4" @@ -11828,109 +17302,192 @@ } }, "postcss-normalize-charset": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-5.1.0.tgz", - "integrity": "sha512-mSgUJ+pd/ldRGVx26p2wz9dNZ7ji6Pn8VWBajMXFf8jk7vUoSrZ2lt/wZR7DtlZYKesmZI680qjr2CeFF2fbUg==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-6.0.2.tgz", + "integrity": "sha512-a8N9czmdnrjPHa3DeFlwqst5eaL5W8jYu3EBbTTkI5FHkfMhFZh1EGbku6jhHhIzTA6tquI2P42NtZ59M/H/kQ==", "dev": true }, "postcss-normalize-display-values": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-normalize-display-values/-/postcss-normalize-display-values-5.1.0.tgz", - "integrity": "sha512-WP4KIM4o2dazQXWmFaqMmcvsKmhdINFblgSeRgn8BJ6vxaMyaJkwAzpPpuvSIoG/rmX3M+IrRZEz2H0glrQNEA==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-display-values/-/postcss-normalize-display-values-6.0.2.tgz", + "integrity": "sha512-8H04Mxsb82ON/aAkPeq8kcBbAtI5Q2a64X/mnRRfPXBq7XeogoQvReqxEfc0B4WPq1KimjezNC8flUtC3Qz6jg==", "dev": true, "requires": { "postcss-value-parser": "^4.2.0" } }, "postcss-normalize-positions": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-normalize-positions/-/postcss-normalize-positions-5.1.1.tgz", - "integrity": "sha512-6UpCb0G4eofTCQLFVuI3EVNZzBNPiIKcA1AKVka+31fTVySphr3VUgAIULBhxZkKgwLImhzMR2Bw1ORK+37INg==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-positions/-/postcss-normalize-positions-6.0.2.tgz", + "integrity": "sha512-/JFzI441OAB9O7VnLA+RtSNZvQ0NCFZDOtp6QPFo1iIyawyXg0YI3CYM9HBy1WvwCRHnPep/BvI1+dGPKoXx/Q==", "dev": true, "requires": { "postcss-value-parser": "^4.2.0" } }, "postcss-normalize-repeat-style": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-5.1.1.tgz", - "integrity": "sha512-mFpLspGWkQtBcWIRFLmewo8aC3ImN2i/J3v8YCFUwDnPu3Xz4rLohDO26lGjwNsQxB3YF0KKRwspGzE2JEuS0g==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-6.0.2.tgz", + "integrity": "sha512-YdCgsfHkJ2jEXwR4RR3Tm/iOxSfdRt7jplS6XRh9Js9PyCR/aka/FCb6TuHT2U8gQubbm/mPmF6L7FY9d79VwQ==", "dev": true, "requires": { "postcss-value-parser": "^4.2.0" } }, "postcss-normalize-string": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-normalize-string/-/postcss-normalize-string-5.1.0.tgz", - "integrity": "sha512-oYiIJOf4T9T1N4i+abeIc7Vgm/xPCGih4bZz5Nm0/ARVJ7K6xrDlLwvwqOydvyL3RHNf8qZk6vo3aatiw/go3w==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-string/-/postcss-normalize-string-6.0.2.tgz", + "integrity": "sha512-vQZIivlxlfqqMp4L9PZsFE4YUkWniziKjQWUtsxUiVsSSPelQydwS8Wwcuw0+83ZjPWNTl02oxlIvXsmmG+CiQ==", "dev": true, "requires": { "postcss-value-parser": "^4.2.0" } }, "postcss-normalize-timing-functions": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-5.1.0.tgz", - "integrity": "sha512-DOEkzJ4SAXv5xkHl0Wa9cZLF3WCBhF3o1SKVxKQAa+0pYKlueTpCgvkFAHfk+Y64ezX9+nITGrDZeVGgITJXjg==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-6.0.2.tgz", + "integrity": "sha512-a+YrtMox4TBtId/AEwbA03VcJgtyW4dGBizPl7e88cTFULYsprgHWTbfyjSLyHeBcK/Q9JhXkt2ZXiwaVHoMzA==", "dev": true, "requires": { "postcss-value-parser": "^4.2.0" } }, "postcss-normalize-unicode": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-5.1.0.tgz", - "integrity": "sha512-J6M3MizAAZ2dOdSjy2caayJLQT8E8K9XjLce8AUQMwOrCvjCHv24aLC/Lps1R1ylOfol5VIDMaM/Lo9NGlk1SQ==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-6.1.0.tgz", + "integrity": "sha512-QVC5TQHsVj33otj8/JD869Ndr5Xcc/+fwRh4HAsFsAeygQQXm+0PySrKbr/8tkDKzW+EVT3QkqZMfFrGiossDg==", "dev": true, "requires": { - "browserslist": "^4.16.6", + "browserslist": "^4.23.0", "postcss-value-parser": "^4.2.0" + }, + "dependencies": { + "browserslist": { + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", + "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", + "dev": true, + "requires": { + "caniuse-lite": "^1.0.30001587", + "electron-to-chromium": "^1.4.668", + "node-releases": "^2.0.14", + "update-browserslist-db": "^1.0.13" + } + }, + "caniuse-lite": { + "version": "1.0.30001612", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001612.tgz", + "integrity": "sha512-lFgnZ07UhaCcsSZgWW0K5j4e69dK1u/ltrL9lTUiFOwNHs12S3UMIEYgBV0Z6C6hRDev7iRnMzzYmKabYdXF9g==", + "dev": true + }, + "electron-to-chromium": { + "version": "1.4.748", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.748.tgz", + "integrity": "sha512-VWqjOlPZn70UZ8FTKUOkUvBLeTQ0xpty66qV0yJcAGY2/CthI4xyW9aEozRVtuwv3Kpf5xTesmJUcPwuJmgP4A==", + "dev": true + }, + "node-releases": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", + "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", + "dev": true + }, + "update-browserslist-db": { + "version": "1.0.13", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", + "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", + "dev": true, + "requires": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + } + } } }, "postcss-normalize-url": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-5.1.0.tgz", - "integrity": "sha512-5upGeDO+PVthOxSmds43ZeMeZfKH+/DKgGRD7TElkkyS46JXAUhMzIKiCa7BabPeIy3AQcTkXwVVN7DbqsiCew==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-6.0.2.tgz", + "integrity": "sha512-kVNcWhCeKAzZ8B4pv/DnrU1wNh458zBNp8dh4y5hhxih5RZQ12QWMuQrDgPRw3LRl8mN9vOVfHl7uhvHYMoXsQ==", "dev": true, "requires": { - "normalize-url": "^6.0.1", "postcss-value-parser": "^4.2.0" } }, "postcss-normalize-whitespace": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-normalize-whitespace/-/postcss-normalize-whitespace-5.1.1.tgz", - "integrity": "sha512-83ZJ4t3NUDETIHTa3uEg6asWjSBYL5EdkVB0sDncx9ERzOKBVJIUeDO9RyA9Zwtig8El1d79HBp0JEi8wvGQnA==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-whitespace/-/postcss-normalize-whitespace-6.0.2.tgz", + "integrity": "sha512-sXZ2Nj1icbJOKmdjXVT9pnyHQKiSAyuNQHSgRCUgThn2388Y9cGVDR+E9J9iAYbSbLHI+UUwLVl1Wzco/zgv0Q==", "dev": true, "requires": { "postcss-value-parser": "^4.2.0" } }, "postcss-ordered-values": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-5.1.3.tgz", - "integrity": "sha512-9UO79VUhPwEkzbb3RNpqqghc6lcYej1aveQteWY+4POIwlqkYE21HKWaLDF6lWNuqCobEAyTovVhtI32Rbv2RQ==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-6.0.2.tgz", + "integrity": "sha512-VRZSOB+JU32RsEAQrO94QPkClGPKJEL/Z9PCBImXMhIeK5KAYo6slP/hBYlLgrCjFxyqvn5VC81tycFEDBLG1Q==", "dev": true, "requires": { - "cssnano-utils": "^3.1.0", + "cssnano-utils": "^4.0.2", "postcss-value-parser": "^4.2.0" } }, "postcss-reduce-initial": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-5.1.0.tgz", - "integrity": "sha512-5OgTUviz0aeH6MtBjHfbr57tml13PuedK/Ecg8szzd4XRMbYxH4572JFG067z+FqBIf6Zp/d+0581glkvvWMFw==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-6.1.0.tgz", + "integrity": "sha512-RarLgBK/CrL1qZags04oKbVbrrVK2wcxhvta3GCxrZO4zveibqbRPmm2VI8sSgCXwoUHEliRSbOfpR0b/VIoiw==", "dev": true, "requires": { - "browserslist": "^4.16.6", + "browserslist": "^4.23.0", "caniuse-api": "^3.0.0" + }, + "dependencies": { + "browserslist": { + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", + "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", + "dev": true, + "requires": { + "caniuse-lite": "^1.0.30001587", + "electron-to-chromium": "^1.4.668", + "node-releases": "^2.0.14", + "update-browserslist-db": "^1.0.13" + } + }, + "caniuse-lite": { + "version": "1.0.30001612", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001612.tgz", + "integrity": "sha512-lFgnZ07UhaCcsSZgWW0K5j4e69dK1u/ltrL9lTUiFOwNHs12S3UMIEYgBV0Z6C6hRDev7iRnMzzYmKabYdXF9g==", + "dev": true + }, + "electron-to-chromium": { + "version": "1.4.748", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.748.tgz", + "integrity": "sha512-VWqjOlPZn70UZ8FTKUOkUvBLeTQ0xpty66qV0yJcAGY2/CthI4xyW9aEozRVtuwv3Kpf5xTesmJUcPwuJmgP4A==", + "dev": true + }, + "node-releases": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", + "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", + "dev": true + }, + "update-browserslist-db": { + "version": "1.0.13", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", + "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", + "dev": true, + "requires": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + } + } } }, "postcss-reduce-transforms": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-5.1.0.tgz", - "integrity": "sha512-2fbdbmgir5AvpW9RLtdONx1QoYG2/EtqpNQbFASDlixBbAYuTcJ0dECwlqNqH7VbaUnEnh8SrxOe2sRIn24XyQ==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-6.0.2.tgz", + "integrity": "sha512-sB+Ya++3Xj1WaT9+5LOOdirAxP7dJZms3GRcYheSPi1PiTMigsxHAdkrbItHxwYHr4kt1zL7mmcHstgMYT+aiA==", "dev": true, "requires": { "postcss-value-parser": "^4.2.0" @@ -11949,15 +17506,15 @@ "dev": true }, "postcss-scss": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/postcss-scss/-/postcss-scss-4.0.5.tgz", - "integrity": "sha512-F7xpB6TrXyqUh3GKdyB4Gkp3QL3DDW1+uI+gxx/oJnUt/qXI4trj5OGlp9rOKdoABGULuqtqeG+3HEVQk4DjmA==", + "version": "4.0.9", + "resolved": "https://registry.npmjs.org/postcss-scss/-/postcss-scss-4.0.9.tgz", + "integrity": "sha512-AjKOeiwAitL/MXxQW2DliT28EKukvvbEWx3LBmJIRN8KfBGZbRTxNYW0kSqi1COiTZ57nZ9NW06S6ux//N1c9A==", "dev": true }, "postcss-selector-parser": { - "version": "6.0.10", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.10.tgz", - "integrity": "sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==", + "version": "6.0.16", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.16.tgz", + "integrity": "sha512-A0RVJrX+IUkVZbW3ClroRWurercFhieevHB38sr2+l9eUClMqome3LmEmnhlNy+5Mr2EYN6B2Kaw9wYdd+VHiw==", "dev": true, "requires": { "cssesc": "^3.0.0", @@ -11965,22 +17522,22 @@ } }, "postcss-svgo": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-5.1.0.tgz", - "integrity": "sha512-D75KsH1zm5ZrHyxPakAxJWtkyXew5qwS70v56exwvw542d9CRtTo78K0WeFxZB4G7JXKKMbEZtZayTGdIky/eA==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-6.0.3.tgz", + "integrity": "sha512-dlrahRmxP22bX6iKEjOM+c8/1p+81asjKT+V5lrgOH944ryx/OHpclnIbGsKVd3uWOXFLYJwCVf0eEkJGvO96g==", "dev": true, "requires": { "postcss-value-parser": "^4.2.0", - "svgo": "^2.7.0" + "svgo": "^3.2.0" } }, "postcss-unique-selectors": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-5.1.1.tgz", - "integrity": "sha512-5JiODlELrz8L2HwxfPnhOWZYWDxVHWL83ufOv84NrcgipI7TaeRsatAhK4Tr2/ZiYldpK/wBvw5BD3qfaK96GA==", + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-6.0.4.tgz", + "integrity": "sha512-K38OCaIrO8+PzpArzkLKB42dSARtC2tmG6PvD4b1o1Q2E9Os8jzfWFfSy/rixsHwohtsDdFtAWGjFVFUdwYaMg==", "dev": true, "requires": { - "postcss-selector-parser": "^6.0.5" + "postcss-selector-parser": "^6.0.16" } }, "postcss-value-parser": { @@ -12005,14 +17562,14 @@ } }, "pretty-format": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", - "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", "dev": true, "requires": { - "ansi-regex": "^5.0.1", + "@jest/schemas": "^29.6.3", "ansi-styles": "^5.0.0", - "react-is": "^17.0.1" + "react-is": "^18.0.0" }, "dependencies": { "ansi-styles": { @@ -12082,12 +17639,61 @@ } } }, + "proxy-agent": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/proxy-agent/-/proxy-agent-6.3.0.tgz", + "integrity": "sha512-0LdR757eTj/JfuU7TL2YCuAZnxWXu3tkJbg4Oq3geW/qFNT/32T0sp2HnZ9O0lMR4q3vwAt0+xCA8SR0WAD0og==", + "dev": true, + "requires": { + "agent-base": "^7.0.2", + "debug": "^4.3.4", + "http-proxy-agent": "^7.0.0", + "https-proxy-agent": "^7.0.0", + "lru-cache": "^7.14.1", + "pac-proxy-agent": "^7.0.0", + "proxy-from-env": "^1.1.0", + "socks-proxy-agent": "^8.0.1" + }, + "dependencies": { + "agent-base": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", + "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", + "dev": true, + "requires": { + "debug": "^4.3.4" + } + }, + "https-proxy-agent": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.4.tgz", + "integrity": "sha512-wlwpilI7YdjSkWaQ/7omYBMTliDcmCN8OLihO6I9B86g06lMyAoqgoDpV0XqoaPOKj+0DIdAvnsWfyAAhmimcg==", + "dev": true, + "requires": { + "agent-base": "^7.0.2", + "debug": "4" + } + }, + "lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "dev": true + } + } + }, "proxy-from-env": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==", "dev": true }, + "ps-list": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/ps-list/-/ps-list-8.1.1.tgz", + "integrity": "sha512-OPS9kEJYVmiO48u/B9qneqhkMvgCxT+Tm28VCEJpheTpl8cJ0ffZRRNgS5mrQRTrX5yRTpaJ+hRDeefXYmmorQ==", + "dev": true + }, "pseudomap": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", @@ -12111,9 +17717,9 @@ } }, "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", "dev": true }, "puppeteer-core": { @@ -12136,6 +17742,21 @@ "ws": "8.5.0" }, "dependencies": { + "cross-fetch": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.1.5.tgz", + "integrity": "sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw==", + "dev": true, + "requires": { + "node-fetch": "2.6.7" + } + }, + "devtools-protocol": { + "version": "0.0.981744", + "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.981744.tgz", + "integrity": "sha512-0cuGS8+jhR67Fy7qG3i3Pc7Aw494sb9yG9QgpG97SFVWwolgYjlhJg7n+UaHxOQT30d1TYu/EYe9k01ivLErIg==", + "dev": true + }, "extract-zip": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz", @@ -12148,6 +17769,51 @@ "yauzl": "^2.10.0" } }, + "node-fetch": { + "version": "2.6.7", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", + "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", + "dev": true, + "requires": { + "whatwg-url": "^5.0.0" + } + }, + "readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + }, + "tar-fs": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz", + "integrity": "sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==", + "dev": true, + "requires": { + "chownr": "^1.1.1", + "mkdirp-classic": "^0.5.2", + "pump": "^3.0.0", + "tar-stream": "^2.1.4" + } + }, + "tar-stream": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", + "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", + "dev": true, + "requires": { + "bl": "^4.0.3", + "end-of-stream": "^1.4.1", + "fs-constants": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^3.1.1" + } + }, "ws": { "version": "8.5.0", "resolved": "https://registry.npmjs.org/ws/-/ws-8.5.0.tgz", @@ -12156,15 +17822,21 @@ } } }, + "pure-rand": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/pure-rand/-/pure-rand-6.1.0.tgz", + "integrity": "sha512-bVWawvoZoBYpp6yIoQtQXHZjmz35RSVHnUOTefl8Vcjr8snTPY1wnpSPMWekcFwbxI6gtmT7rSYPFvz71ldiOA==", + "dev": true + }, "qrcode-generator": { "version": "1.4.4", "resolved": "https://registry.npmjs.org/qrcode-generator/-/qrcode-generator-1.4.4.tgz", "integrity": "sha512-HM7yY8O2ilqhmULxGMpcHSF1EhJJ9yBj8gvDEuZ6M+KGJ0YY2hKpnXvRD+hZPLrDVck3ExIGhmPtSdcjC+guuw==" }, "qs": { - "version": "6.10.3", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.3.tgz", - "integrity": "sha512-wr7M2E0OFRfIfJZjKGieI8lBKb7fRCH4Fv5KNPEs7gJ8jadvotdsS08PzOKR7opXhZ/Xkjtt3WF9g38drmyRqQ==", + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", + "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", "dev": true, "requires": { "side-channel": "^1.0.4" @@ -12182,6 +17854,12 @@ "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", "dev": true }, + "queue-tick": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/queue-tick/-/queue-tick-1.0.1.tgz", + "integrity": "sha512-kJt5qhMxoszgU/62PLP1CJytzd2NKetjSRnyuj31fDd3Rlcz3fzlFdFLD1SItunPwyqEOkca6GbV612BWfaBag==", + "dev": true + }, "quick-lru": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", @@ -12204,9 +17882,9 @@ "dev": true }, "raw-body": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", - "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", + "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", "dev": true, "requires": { "bytes": "3.1.2", @@ -12245,15 +17923,15 @@ } }, "react-is": { - "version": "17.0.2", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", - "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==", "dev": true }, "react-refresh": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.10.0.tgz", - "integrity": "sha512-PgidR3wST3dDYKr6b4pJoqQFpPGNKDSCDx4cZoshjXipw3LzO7mG1My2pwEzz2JVkF+inx3xRpDeQLFQGH/hsQ==", + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.14.0.tgz", + "integrity": "sha512-wViHqhAd8OHeLS/IRMJjTSDHF3U9eWi62F/MledQGPdJGDhodXJ9PBLNGr6WWL7qlH12Mt3TyTpbS+hGXMjCzQ==", "dev": true }, "read-pkg": { @@ -12493,6 +18171,12 @@ } } }, + "remove-accents": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/remove-accents/-/remove-accents-0.5.0.tgz", + "integrity": "sha512-8g3/Otx1eJaVD12e31UbJj1YzdtVvzH85HV7t+9MJYk/u3XmkOUJ5Ys9wQrf9PCPK8+xn4ymzqYCiZl6QWKn+A==", + "dev": true + }, "require-directory": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", @@ -12589,9 +18273,9 @@ } }, "resolve.exports": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-1.1.0.tgz", - "integrity": "sha512-J1l+Zxxp4XK3LUDZ9m60LRJF/mAe4z6a4xyabPHk7pvK5t35dACV32iIjJDFeWZFfZlO29w6SZ67knR0tHzJtQ==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.2.tgz", + "integrity": "sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg==", "dev": true }, "responselike": { @@ -12634,6 +18318,12 @@ "glob": "^7.1.3" } }, + "robots-parser": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/robots-parser/-/robots-parser-3.0.1.tgz", + "integrity": "sha512-s+pyvQeIKIZ0dx5iJiQk1tPLJAWln39+MI5jtM8wnyws+G5azk+dMnMX0qfbqNetKKNgcWWOdi0sfm+FbQbgdQ==", + "dev": true + }, "run-async": { "version": "2.4.1", "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", @@ -12641,14 +18331,14 @@ "dev": true }, "run-con": { - "version": "1.2.11", - "resolved": "https://registry.npmjs.org/run-con/-/run-con-1.2.11.tgz", - "integrity": "sha512-NEMGsUT+cglWkzEr4IFK21P4Jca45HqiAbIIZIBdX5+UZTB24Mb/21iNGgz9xZa8tL6vbW7CXmq7MFN42+VjNQ==", + "version": "1.2.12", + "resolved": "https://registry.npmjs.org/run-con/-/run-con-1.2.12.tgz", + "integrity": "sha512-5257ILMYIF4RztL9uoZ7V9Q97zHtNHn5bN3NobeAnzB1P3ASLgg8qocM2u+R18ttp+VEM78N2LK8XcNVtnSRrg==", "dev": true, "requires": { "deep-extend": "^0.6.0", "ini": "~3.0.0", - "minimist": "^1.2.6", + "minimist": "^1.2.8", "strip-json-comments": "~3.1.1" }, "dependencies": { @@ -12657,6 +18347,12 @@ "resolved": "https://registry.npmjs.org/ini/-/ini-3.0.1.tgz", "integrity": "sha512-it4HyVAUTKBc6m8e1iXWvXSTdndF7HbdN713+kvLrymxTaU4AUBWrJ4vEooP+V7fexnVD3LKcBshjGGPefSMUQ==", "dev": true + }, + "minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "dev": true } } }, @@ -12710,9 +18406,9 @@ "dev": true }, "sass": { - "version": "1.55.0", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.55.0.tgz", - "integrity": "sha512-Pk+PMy7OGLs9WaxZGJMn7S96dvlyVBwwtToX895WmCpAOr5YiJYEUJfiJidMuKb613z2xNWcXCHEuOvjZbqC6A==", + "version": "1.75.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.75.0.tgz", + "integrity": "sha512-ShMYi3WkrDWxExyxSZPst4/okE9ts46xZmJDSawJQrnte7M1V9fScVB+uNXOVKRBt0PggHOwoZcn8mYX4trnBw==", "dev": true, "requires": { "chokidar": ">=3.0.0 <4.0.0", @@ -12731,9 +18427,9 @@ } }, "saxes": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/saxes/-/saxes-5.0.1.tgz", - "integrity": "sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/saxes/-/saxes-6.0.0.tgz", + "integrity": "sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA==", "dev": true, "requires": { "xmlchars": "^2.2.0" @@ -12750,9 +18446,9 @@ } }, "schema-utils": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", - "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "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, "requires": { "@types/json-schema": "^7.0.8", @@ -12767,11 +18463,12 @@ "dev": true }, "selfsigned": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.1.1.tgz", - "integrity": "sha512-GSL3aowiF7wa/WtSFwnUrludWFoNhftq8bUkH9pkzjpN2XSPOAYEgg6e0sS9s0rZwgJzJiQRPU18A6clnoW5wQ==", + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.4.1.tgz", + "integrity": "sha512-th5B4L2U+eGLq1TVh7zNRGBapioSORUeymIydxgFpwww9d2qyKvtuPU2jJuHvYAwwqi2Y596QBL3eEqcPEYL8Q==", "dev": true, "requires": { + "@types/node-forge": "^1.3.0", "node-forge": "^1" } }, @@ -12819,6 +18516,12 @@ } } }, + "mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "dev": true + }, "ms": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", @@ -12839,9 +18542,9 @@ } }, "serialize-javascript": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz", - "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz", + "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==", "dev": true, "requires": { "randombytes": "^2.1.0" @@ -13012,14 +18715,14 @@ } }, "sirv": { - "version": "1.0.19", - "resolved": "https://registry.npmjs.org/sirv/-/sirv-1.0.19.tgz", - "integrity": "sha512-JuLThK3TnZG1TAKDwNIqNq6QA2afLOCcm+iE8D1Kj3GA40pSPsxQjjJl0J8X3tsR7T+CP1GavpzLwYkgVLWrZQ==", + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/sirv/-/sirv-2.0.4.tgz", + "integrity": "sha512-94Bdh3cC2PKrbgSOUqTiGPWVZeSiXfKOVZNJniWoqrWrRkB1CJzBU3NEbiTsPcYy1lDsANA/THzS+9WBiy5nfQ==", "dev": true, "requires": { - "@polka/url": "^1.0.0-next.20", - "mrmime": "^1.0.0", - "totalist": "^1.0.0" + "@polka/url": "^1.0.0-next.24", + "mrmime": "^2.0.0", + "totalist": "^3.0.0" } }, "sisteransi": { @@ -13071,6 +18774,12 @@ } } }, + "smart-buffer": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", + "dev": true + }, "snake-case": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/snake-case/-/snake-case-3.0.4.tgz", @@ -13092,6 +18801,38 @@ "websocket-driver": "^0.7.4" } }, + "socks": { + "version": "2.8.3", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.3.tgz", + "integrity": "sha512-l5x7VUUWbjVFbafGLxPWkYsHIhEvmF85tbIeFZWc8ZPtoMyybuEhL7Jye/ooC4/d48FgOjSJXgsF/AJPYCW8Zw==", + "dev": true, + "requires": { + "ip-address": "^9.0.5", + "smart-buffer": "^4.2.0" + } + }, + "socks-proxy-agent": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.3.tgz", + "integrity": "sha512-VNegTZKhuGq5vSD6XNKlbqWhyt/40CgoEw8XxD6dhnm8Jq9IEa3nIa4HwnM8XOqU0CdB0BwWVXusqiFXfHB3+A==", + "dev": true, + "requires": { + "agent-base": "^7.1.1", + "debug": "^4.3.4", + "socks": "^2.7.1" + }, + "dependencies": { + "agent-base": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", + "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", + "dev": true, + "requires": { + "debug": "^4.3.4" + } + } + } + }, "source-map": { "version": "0.7.4", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", @@ -13099,15 +18840,15 @@ "dev": true }, "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==", + "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 }, "source-map-loader": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/source-map-loader/-/source-map-loader-3.0.1.tgz", - "integrity": "sha512-Vp1UsfyPvgujKQzi4pyDiTOnE3E4H+yHvkVRN3c/9PJmQS4CQJExvcDvaX/D+RV+xQben9HJ56jMJS3CgUeWyA==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/source-map-loader/-/source-map-loader-3.0.2.tgz", + "integrity": "sha512-BokxPoLjyl3iOrgkWaakaxqnelAJSS+0V+De0kKIq6lyWrXuiPgYTGp6z3iHmqljKAaLXwZa+ctD8GccRJeVvg==", "dev": true, "requires": { "abab": "^2.0.5", @@ -13127,9 +18868,9 @@ } }, "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==", + "version": "0.5.13", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz", + "integrity": "sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==", "dev": true, "requires": { "buffer-from": "^1.0.0", @@ -13145,14 +18886,21 @@ } }, "spawnd": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/spawnd/-/spawnd-6.0.2.tgz", - "integrity": "sha512-+YJtx0dvy2wt304MrHD//tASc84zinBUYU1jacPBzrjhZUd7RsDo25krxr4HUHAQzEQFuMAs4/p+yLYU5ciZ1w==", + "version": "9.0.2", + "resolved": "https://registry.npmjs.org/spawnd/-/spawnd-9.0.2.tgz", + "integrity": "sha512-nl8DVHEDQ57IcKakzpjanspVChkMpGLuVwMR/eOn9cXE55Qr6luD2Kn06sA0ootRMdgrU4tInN6lA6ohTNvysw==", "dev": true, "requires": { - "exit": "^0.1.2", - "signal-exit": "^3.0.6", + "signal-exit": "^4.1.0", "tree-kill": "^1.2.2" + }, + "dependencies": { + "signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "dev": true + } } }, "spdx-correct": { @@ -13215,9 +18963,9 @@ }, "dependencies": { "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", "dev": true, "requires": { "inherits": "^2.0.3", @@ -13227,22 +18975,27 @@ } } }, + "speedline-core": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/speedline-core/-/speedline-core-1.4.3.tgz", + "integrity": "sha512-DI7/OuAUD+GMpR6dmu8lliO2Wg5zfeh+/xsdyJZCzd8o5JgFUjCeLsBDuZjIQJdwXS3J0L/uZYrELKYqx+PXog==", + "dev": true, + "requires": { + "@types/node": "*", + "image-ssim": "^0.2.0", + "jpeg-js": "^0.4.1" + } + }, "sprintf-js": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", "dev": true }, - "stable": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz", - "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==", - "dev": true - }, "stack-utils": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.5.tgz", - "integrity": "sha512-xrQcmYhOsn/1kX+Vraq+7j4oE2j/6BFscZ0etmYg81xuM8Gq0022Pxb8+IqgOFUIaxHs0KaSb7T1+OegiNrNFA==", + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", + "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", "dev": true, "requires": { "escape-string-regexp": "^2.0.0" @@ -13268,6 +19021,17 @@ "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", "dev": true }, + "streamx": { + "version": "2.16.1", + "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.16.1.tgz", + "integrity": "sha512-m9QYj6WygWyWa3H1YY69amr4nVgy61xfjys7xO7kviL5rfIEc2naf+ewFiOA+aEJD7y0JO3h2GoiUv4TDwEGzQ==", + "dev": true, + "requires": { + "bare-events": "^2.2.0", + "fast-fifo": "^1.1.0", + "queue-tick": "^1.0.1" + } + }, "string-length": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", @@ -13407,25 +19171,67 @@ "dev": true }, "stylehacks": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-5.1.0.tgz", - "integrity": "sha512-SzLmvHQTrIWfSgljkQCw2++C9+Ne91d/6Sp92I8c5uHTcy/PgeHamwITIbBW9wnFTY/3ZfSXR9HIL6Ikqmcu6Q==", + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-6.1.1.tgz", + "integrity": "sha512-gSTTEQ670cJNoaeIp9KX6lZmm8LJ3jPB5yJmX8Zq/wQxOsAFXV3qjWzHas3YYk1qesuVIyYWWUpZ0vSE/dTSGg==", "dev": true, "requires": { - "browserslist": "^4.16.6", - "postcss-selector-parser": "^6.0.4" + "browserslist": "^4.23.0", + "postcss-selector-parser": "^6.0.16" + }, + "dependencies": { + "browserslist": { + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", + "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", + "dev": true, + "requires": { + "caniuse-lite": "^1.0.30001587", + "electron-to-chromium": "^1.4.668", + "node-releases": "^2.0.14", + "update-browserslist-db": "^1.0.13" + } + }, + "caniuse-lite": { + "version": "1.0.30001612", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001612.tgz", + "integrity": "sha512-lFgnZ07UhaCcsSZgWW0K5j4e69dK1u/ltrL9lTUiFOwNHs12S3UMIEYgBV0Z6C6hRDev7iRnMzzYmKabYdXF9g==", + "dev": true + }, + "electron-to-chromium": { + "version": "1.4.748", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.748.tgz", + "integrity": "sha512-VWqjOlPZn70UZ8FTKUOkUvBLeTQ0xpty66qV0yJcAGY2/CthI4xyW9aEozRVtuwv3Kpf5xTesmJUcPwuJmgP4A==", + "dev": true + }, + "node-releases": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", + "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", + "dev": true + }, + "update-browserslist-db": { + "version": "1.0.13", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", + "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", + "dev": true, + "requires": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + } + } } }, "stylelint": { - "version": "14.13.0", - "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-14.13.0.tgz", - "integrity": "sha512-NJSAdloiAB/jgVJKxMR90mWlctvmeBFGFVUvyKngi9+j/qPSJ5ZB+u8jOmGbLTnS7OHrII9NFGehPRyar8U5vg==", + "version": "14.16.1", + "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-14.16.1.tgz", + "integrity": "sha512-ErlzR/T3hhbV+a925/gbfc3f3Fep9/bnspMiJPorfGEmcBbXdS+oo6LrVtoUZ/w9fqD6o6k7PtUlCOsCRdjX/A==", "dev": true, "requires": { "@csstools/selector-specificity": "^2.0.2", "balanced-match": "^2.0.0", "colord": "^2.9.3", - "cosmiconfig": "^7.0.1", + "cosmiconfig": "^7.1.0", "css-functions-list": "^3.1.0", "debug": "^4.3.4", "fast-glob": "^3.2.12", @@ -13435,21 +19241,21 @@ "globby": "^11.1.0", "globjoin": "^0.1.4", "html-tags": "^3.2.0", - "ignore": "^5.2.0", + "ignore": "^5.2.1", "import-lazy": "^4.0.0", "imurmurhash": "^0.1.4", "is-plain-object": "^5.0.0", - "known-css-properties": "^0.25.0", + "known-css-properties": "^0.26.0", "mathml-tag-names": "^2.1.3", "meow": "^9.0.0", "micromatch": "^4.0.5", "normalize-path": "^3.0.0", "picocolors": "^1.0.0", - "postcss": "^8.4.16", + "postcss": "^8.4.19", "postcss-media-query-parser": "^0.2.3", "postcss-resolve-nested-selector": "^0.1.1", "postcss-safe-parser": "^6.0.0", - "postcss-selector-parser": "^6.0.10", + "postcss-selector-parser": "^6.0.11", "postcss-value-parser": "^4.2.0", "resolve-from": "^5.0.0", "string-width": "^4.2.3", @@ -13457,7 +19263,7 @@ "style-search": "^0.1.0", "supports-hyperlinks": "^2.3.0", "svg-tags": "^1.0.0", - "table": "^6.8.0", + "table": "^6.8.1", "v8-compile-cache": "^2.3.0", "write-file-atomic": "^4.0.2" }, @@ -13468,6 +19274,19 @@ "integrity": "sha512-1ugUSr8BHXRnK23KfuYS+gVMC3LB8QGH9W1iGtDPsNWoQbgtXSExkBu2aDR4epiGWZOjZsj6lDl/N/AqqTC3UA==", "dev": true }, + "cosmiconfig": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", + "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", + "dev": true, + "requires": { + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.2.1", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.10.0" + } + }, "global-modules": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz", @@ -13488,14 +19307,11 @@ "which": "^1.3.1" } }, - "hosted-git-info": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", - "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } + "ignore": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", + "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", + "dev": true }, "kind-of": { "version": "6.0.3", @@ -13503,62 +19319,6 @@ "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", "dev": true }, - "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, - "requires": { - "yallist": "^4.0.0" - } - }, - "meow": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/meow/-/meow-9.0.0.tgz", - "integrity": "sha512-+obSblOQmRhcyBt62furQqRAQpNyWXo8BuQ5bN7dG8wmwQ+vwHKp/rCFD4CrTP8CsDQD1sjoZ94K417XEUk8IQ==", - "dev": true, - "requires": { - "@types/minimist": "^1.2.0", - "camelcase-keys": "^6.2.2", - "decamelize": "^1.2.0", - "decamelize-keys": "^1.1.0", - "hard-rejection": "^2.1.0", - "minimist-options": "4.1.0", - "normalize-package-data": "^3.0.0", - "read-pkg-up": "^7.0.1", - "redent": "^3.0.0", - "trim-newlines": "^3.0.0", - "type-fest": "^0.18.0", - "yargs-parser": "^20.2.3" - } - }, - "normalize-package-data": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", - "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", - "dev": true, - "requires": { - "hosted-git-info": "^4.0.1", - "is-core-module": "^2.5.0", - "semver": "^7.3.4", - "validate-npm-package-license": "^3.0.1" - } - }, - "semver": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", - "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "type-fest": { - "version": "0.18.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.18.1.tgz", - "integrity": "sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==", - "dev": true - }, "write-file-atomic": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", @@ -13568,18 +19328,6 @@ "imurmurhash": "^0.1.4", "signal-exit": "^3.0.7" } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", - "dev": true } } }, @@ -13601,16 +19349,15 @@ } }, "stylelint-scss": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/stylelint-scss/-/stylelint-scss-4.3.0.tgz", - "integrity": "sha512-GvSaKCA3tipzZHoz+nNO7S02ZqOsdBzMiCx9poSmLlb3tdJlGddEX/8QzCOD8O7GQan9bjsvLMsO5xiw6IhhIQ==", + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/stylelint-scss/-/stylelint-scss-4.7.0.tgz", + "integrity": "sha512-TSUgIeS0H3jqDZnby1UO1Qv3poi1N8wUYIJY6D1tuUq2MN3lwp/rITVo0wD+1SWTmRm0tNmGO0b7nKInnqF6Hg==", "dev": true, "requires": { - "lodash": "^4.17.21", "postcss-media-query-parser": "^0.2.3", "postcss-resolve-nested-selector": "^0.1.1", - "postcss-selector-parser": "^6.0.6", - "postcss-value-parser": "^4.1.0" + "postcss-selector-parser": "^6.0.11", + "postcss-value-parser": "^4.2.0" } }, "supports-color": { @@ -13668,26 +19415,18 @@ "dev": true }, "svgo": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/svgo/-/svgo-2.8.0.tgz", - "integrity": "sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/svgo/-/svgo-3.2.0.tgz", + "integrity": "sha512-4PP6CMW/V7l/GmKRKzsLR8xxjdHTV4IMvhTnpuHwwBazSIlw5W/5SmPjN8Dwyt7lKbSJrRDgp4t9ph0HgChFBQ==", "dev": true, "requires": { "@trysound/sax": "0.2.0", "commander": "^7.2.0", - "css-select": "^4.1.3", - "css-tree": "^1.1.3", - "csso": "^4.2.0", - "picocolors": "^1.0.0", - "stable": "^0.1.8" - }, - "dependencies": { - "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 - } + "css-select": "^5.1.0", + "css-tree": "^2.3.1", + "css-what": "^6.1.0", + "csso": "^5.0.5", + "picocolors": "^1.0.0" } }, "symbol-tree": { @@ -13696,10 +19435,28 @@ "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", "dev": true }, + "synckit": { + "version": "0.8.8", + "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.8.8.tgz", + "integrity": "sha512-HwOKAP7Wc5aRGYdKH+dw0PRRpbO841v2DENBtjnR5HFWoiNByAl7vrx3p0G/rCyYXQsrxqtX48TImFtPcIHSpQ==", + "dev": true, + "requires": { + "@pkgr/core": "^0.1.0", + "tslib": "^2.6.2" + }, + "dependencies": { + "tslib": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", + "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==", + "dev": true + } + } + }, "table": { - "version": "6.8.0", - "resolved": "https://registry.npmjs.org/table/-/table-6.8.0.tgz", - "integrity": "sha512-s/fitrbVeEyHKFa7mFdkuQMWlH1Wgw/yEXMt5xACT4ZpzWFluehAxRtUUQKPuWhaLAWhFcVx6w3oC8VKaUfPGA==", + "version": "6.8.2", + "resolved": "https://registry.npmjs.org/table/-/table-6.8.2.tgz", + "integrity": "sha512-w2sfv80nrAh2VCbqR5AK27wswXhqcck2AhfnNW76beQXskGZ1V12GwS//yYVa3d3fcvAip2OUnbDAjW2k3v9fA==", "dev": true, "requires": { "ajv": "^8.0.1", @@ -13710,9 +19467,9 @@ }, "dependencies": { "ajv": { - "version": "8.11.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.11.0.tgz", - "integrity": "sha512-wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg==", + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", @@ -13729,6 +19486,15 @@ } } }, + "tannin": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/tannin/-/tannin-1.2.0.tgz", + "integrity": "sha512-U7GgX/RcSeUETbV7gYgoz8PD7Ni4y95pgIP/Z6ayI3CfhSujwKEBlGFTCRN+Aqnuyf4AN2yHL+L8x+TCGjb9uA==", + "dev": true, + "requires": { + "@tannin/plural-forms": "^1.1.0" + } + }, "tapable": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", @@ -13736,41 +19502,25 @@ "dev": true }, "tar-fs": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz", - "integrity": "sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-3.0.4.tgz", + "integrity": "sha512-5AFQU8b9qLfZCX9zp2duONhPmZv0hGYiBPJsyUdqMjzq/mqVpy/rEUSeHk1+YitmxugaptgBh5oDGU3VsAJq4w==", "dev": true, "requires": { - "chownr": "^1.1.1", "mkdirp-classic": "^0.5.2", "pump": "^3.0.0", - "tar-stream": "^2.1.4" + "tar-stream": "^3.1.5" } }, "tar-stream": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", - "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-3.1.7.tgz", + "integrity": "sha512-qJj60CXt7IU1Ffyc3NJMjh6EkuCFej46zUqJ4J7pqYlThyd9bO0XBTmcOIhSzZJVWfsLks0+nle/j538YAW9RQ==", "dev": true, "requires": { - "bl": "^4.0.3", - "end-of-stream": "^1.4.1", - "fs-constants": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.1.1" - }, - "dependencies": { - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - } + "b4a": "^1.6.4", + "fast-fifo": "^1.2.0", + "streamx": "^2.15.0" } }, "terminal-link": { @@ -13784,13 +19534,13 @@ } }, "terser": { - "version": "5.15.1", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.15.1.tgz", - "integrity": "sha512-K1faMUvpm/FBxjBXud0LWVAGxmvoPbZbfTCYbSgaaYQaIXI3/TdI7a7ZGA73Zrou6Q8Zmz3oeUTsp/dj+ag2Xw==", + "version": "5.30.4", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.30.4.tgz", + "integrity": "sha512-xRdd0v64a8mFK9bnsKVdoNP9GQIKUAaJPTaqEQDL4w/J8WaW4sWXXoMZ+6SimPkfT5bElreXf8m9HnmPc3E1BQ==", "dev": true, "requires": { - "@jridgewell/source-map": "^0.3.2", - "acorn": "^8.5.0", + "@jridgewell/source-map": "^0.3.3", + "acorn": "^8.8.2", "commander": "^2.20.0", "source-map-support": "~0.5.20" }, @@ -13800,20 +19550,74 @@ "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", "dev": true + }, + "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 + }, + "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, + "requires": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } } } }, "terser-webpack-plugin": { - "version": "5.3.6", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.6.tgz", - "integrity": "sha512-kfLFk+PoLUQIbLmB1+PZDMRSZS99Mp+/MHqDNmMA6tOItzRt+Npe3E+fsMs5mfcM0wCtrrdU387UnV+vnSffXQ==", + "version": "5.3.10", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.10.tgz", + "integrity": "sha512-BKFPWlPDndPs+NGGCr1U59t0XScL5317Y0UReNrHaw9/FwhPENlq6bfgs+4yPfyP51vqC1bQ4rp1EfXW5ZSH9w==", "dev": true, "requires": { - "@jridgewell/trace-mapping": "^0.3.14", + "@jridgewell/trace-mapping": "^0.3.20", "jest-worker": "^27.4.5", "schema-utils": "^3.1.1", - "serialize-javascript": "^6.0.0", - "terser": "^5.14.1" + "serialize-javascript": "^6.0.1", + "terser": "^5.26.0" + }, + "dependencies": { + "@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "dev": true, + "requires": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "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 + }, + "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, + "requires": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + } + }, + "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, + "requires": { + "has-flag": "^4.0.0" + } + } } }, "test-exclude": { @@ -13833,10 +19637,10 @@ "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", "dev": true }, - "throat": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/throat/-/throat-6.0.1.tgz", - "integrity": "sha512-8hmiGIJMDlwjg7dlJ4yKGLK8EsYqKgPWbG3b4wjJddKNwc7N7Dpn08Df4szr/sZdMVeOstrdYSsqzX6BYbcB+w==", + "third-party-web": { + "version": "0.23.4", + "resolved": "https://registry.npmjs.org/third-party-web/-/third-party-web-0.23.4.tgz", + "integrity": "sha512-kwYnSZRhEvv0SBW2fp8SBBKRglMoBjV8xz6C31m0ewqOtknB5UL+Ihg+M81hyFY5ldkZuGWPb+e4GVDkzf/gYg==", "dev": true }, "through": { @@ -13888,9 +19692,9 @@ "dev": true }, "totalist": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/totalist/-/totalist-1.1.0.tgz", - "integrity": "sha512-gduQwd1rOdDMGxFG1gEvhV88Oirdo2p+KjoYFU7k2g+i7n6AFFbDQ5kMPUsW0pNbfQsB/cwXvT1i4Bue0s9g5g==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/totalist/-/totalist-3.0.1.tgz", + "integrity": "sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==", "dev": true }, "tough-cookie": { @@ -13903,16 +19707,21 @@ "punycode": "^2.1.1", "universalify": "^0.2.0", "url-parse": "^1.5.3" + }, + "dependencies": { + "universalify": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", + "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==", + "dev": true + } } }, "tr46": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-2.1.0.tgz", - "integrity": "sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==", - "dev": true, - "requires": { - "punycode": "^2.1.1" - } + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", + "dev": true }, "tree-kill": { "version": "1.2.2", @@ -13935,6 +19744,12 @@ "escape-string-regexp": "^1.0.2" } }, + "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 + }, "tsconfig-paths": { "version": "3.14.1", "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.1.tgz", @@ -14113,10 +19928,19 @@ "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==", "dev": true }, + "unique-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", + "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==", + "dev": true, + "requires": { + "crypto-random-string": "^2.0.0" + } + }, "universalify": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", - "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", "dev": true }, "unpipe": { @@ -14202,20 +20026,28 @@ "dev": true }, "v8-compile-cache": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz", - "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.4.0.tgz", + "integrity": "sha512-ocyWc3bAHBB/guyqJQVI5o4BZkPhznPYUG2ea80Gond/BgNWpap8TOmLSeeQG7bnh2KMISxskdADG59j7zruhw==", "dev": true }, "v8-to-istanbul": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.1.1.tgz", - "integrity": "sha512-FGtKtv3xIpR6BYhvgH8MI/y78oT7d8Au3ww4QIxymrCtZEh5b8gCw2siywE+puhEmuWKDtmfrvF5UlB298ut3w==", + "version": "9.2.0", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.2.0.tgz", + "integrity": "sha512-/EH/sDgxU2eGxajKdwLCDmQ4FWq+kpi3uCmBGpw1xJtnAxEjlD8j8PEiGWpCIMIs3ciNAgH0d3TTJiUkYzyZjA==", "dev": true, "requires": { + "@jridgewell/trace-mapping": "^0.3.12", "@types/istanbul-lib-coverage": "^2.0.1", - "convert-source-map": "^1.6.0", - "source-map": "^0.7.3" + "convert-source-map": "^2.0.0" + }, + "dependencies": { + "convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true + } } }, "v8flags": { @@ -14237,47 +20069,53 @@ "spdx-expression-parse": "^3.0.0" } }, + "validate-npm-package-name": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-5.0.0.tgz", + "integrity": "sha512-YuKoXDAhBYxY7SfOKxHBDoSyENFeW5VvIIQp2TGQuit8gpK6MnWaQelBKxso72DoxTZfZdcP3W90LqpSkgPzLQ==", + "dev": true, + "requires": { + "builtins": "^5.0.0" + } + }, "vary": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", "dev": true }, - "w3c-hr-time": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz", - "integrity": "sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==", - "dev": true, - "requires": { - "browser-process-hrtime": "^1.0.0" - } - }, "w3c-xmlserializer": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz", - "integrity": "sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-4.0.0.tgz", + "integrity": "sha512-d+BFHzbiCx6zGfz0HyQ6Rg69w9k19nviJspaj4yNscGjrHu94sVP+aRm75yEbCh+r2/yR+7q6hux9LVtbuTGBw==", "dev": true, "requires": { - "xml-name-validator": "^3.0.0" + "xml-name-validator": "^4.0.0" } }, "wait-on": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/wait-on/-/wait-on-6.0.1.tgz", - "integrity": "sha512-zht+KASY3usTY5u2LgaNqn/Cd8MukxLGjdcZxT2ns5QzDmTFc4XoWBgC+C/na+sMRZTuVygQoMYwdcVjHnYIVw==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/wait-on/-/wait-on-7.2.0.tgz", + "integrity": "sha512-wCQcHkRazgjG5XoAq9jbTMLpNIjoSlZslrJ2+N9MxDsGEv1HnFoVjOCexL0ESva7Y9cu350j+DWADdk54s4AFQ==", "dev": true, "requires": { - "axios": "^0.25.0", - "joi": "^17.6.0", + "axios": "^1.6.1", + "joi": "^17.11.0", "lodash": "^4.17.21", - "minimist": "^1.2.5", - "rxjs": "^7.5.4" + "minimist": "^1.2.8", + "rxjs": "^7.8.1" }, "dependencies": { + "minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "dev": true + }, "rxjs": { - "version": "7.5.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.5.7.tgz", - "integrity": "sha512-z9MzKh/UcOqB3i20H6rtrlaE/CgjLOvheWK/9ILrbhROGTweAi1BaFsTT9FbwZi5Trr1qNRs+MXkhmR06awzQA==", + "version": "7.8.1", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", + "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==", "dev": true, "requires": { "tslib": "^2.1.0" @@ -14295,9 +20133,9 @@ } }, "watchpack": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", - "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.1.tgz", + "integrity": "sha512-8wrBCMtVhqcXP2Sup1ctSkga6uc2Bx0IIvKyT7yTFier5AXHooSI+QyQQAtTb7+E0IUCCKyTFmXqdqgum2XWGg==", "dev": true, "requires": { "glob-to-regexp": "^0.4.1", @@ -14322,148 +20160,151 @@ "defaults": "^1.0.3" } }, + "web-vitals": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/web-vitals/-/web-vitals-3.5.2.tgz", + "integrity": "sha512-c0rhqNcHXRkY/ogGDJQxZ9Im9D19hDihbzSQJrsioex+KnFgmMzBiy57Z1EjkhX/+OjyBpclDCzz2ITtjokFmg==", + "dev": true + }, "webidl-conversions": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-6.1.0.tgz", - "integrity": "sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", "dev": true }, "webpack": { - "version": "5.76.1", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.76.1.tgz", - "integrity": "sha512-4+YIK4Abzv8172/SGqObnUjaIHjLEuUasz9EwQj/9xmPPkYJy2Mh03Q/lJfSD3YLzbxy5FeTq5Uw0323Oh6SJQ==", + "version": "5.91.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.91.0.tgz", + "integrity": "sha512-rzVwlLeBWHJbmgTC/8TvAcu5vpJNII+MelQpylD4jNERPwpBJOE2lEcko1zJX3QJeLjTTAnQxn/OJ8bjDzVQaw==", "dev": true, "requires": { "@types/eslint-scope": "^3.7.3", - "@types/estree": "^0.0.51", - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/wasm-edit": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1", + "@types/estree": "^1.0.5", + "@webassemblyjs/ast": "^1.12.1", + "@webassemblyjs/wasm-edit": "^1.12.1", + "@webassemblyjs/wasm-parser": "^1.12.1", "acorn": "^8.7.1", - "acorn-import-assertions": "^1.7.6", - "browserslist": "^4.14.5", + "acorn-import-assertions": "^1.9.0", + "browserslist": "^4.21.10", "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.10.0", - "es-module-lexer": "^0.9.0", + "enhanced-resolve": "^5.16.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", + "graceful-fs": "^4.2.11", "json-parse-even-better-errors": "^2.3.1", "loader-runner": "^4.2.0", "mime-types": "^2.1.27", "neo-async": "^2.6.2", - "schema-utils": "^3.1.0", + "schema-utils": "^3.2.0", "tapable": "^2.1.1", - "terser-webpack-plugin": "^5.1.3", - "watchpack": "^2.4.0", + "terser-webpack-plugin": "^5.3.10", + "watchpack": "^2.4.1", "webpack-sources": "^3.2.3" - } - }, - "webpack-bundle-analyzer": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/webpack-bundle-analyzer/-/webpack-bundle-analyzer-4.6.1.tgz", - "integrity": "sha512-oKz9Oz9j3rUciLNfpGFjOb49/jEpXNmWdVH8Ls//zNcnLlQdTGXQQMsBbb/gR7Zl8WNLxVCq+0Hqbx3zv6twBw==", - "dev": true, - "requires": { - "acorn": "^8.0.4", - "acorn-walk": "^8.0.0", - "chalk": "^4.1.0", - "commander": "^7.2.0", - "gzip-size": "^6.0.0", - "lodash": "^4.17.20", - "opener": "^1.5.2", - "sirv": "^1.0.7", - "ws": "^7.3.1" }, "dependencies": { - "acorn-walk": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", - "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", - "dev": true - }, - "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, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "browserslist": { + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", + "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", "dev": true, "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "caniuse-lite": "^1.0.30001587", + "electron-to-chromium": "^1.4.668", + "node-releases": "^2.0.14", + "update-browserslist-db": "^1.0.13" } }, - "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, - "requires": { - "color-name": "~1.1.4" - } + "caniuse-lite": { + "version": "1.0.30001612", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001612.tgz", + "integrity": "sha512-lFgnZ07UhaCcsSZgWW0K5j4e69dK1u/ltrL9lTUiFOwNHs12S3UMIEYgBV0Z6C6hRDev7iRnMzzYmKabYdXF9g==", + "dev": true }, - "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==", + "electron-to-chromium": { + "version": "1.4.748", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.748.tgz", + "integrity": "sha512-VWqjOlPZn70UZ8FTKUOkUvBLeTQ0xpty66qV0yJcAGY2/CthI4xyW9aEozRVtuwv3Kpf5xTesmJUcPwuJmgP4A==", "dev": true }, - "commander": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", - "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", + "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 }, - "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-releases": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", + "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", "dev": true }, - "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==", + "update-browserslist-db": { + "version": "1.0.13", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", + "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", "dev": true, "requires": { - "has-flag": "^4.0.0" + "escalade": "^3.1.1", + "picocolors": "^1.0.0" } } } }, + "webpack-bundle-analyzer": { + "version": "4.10.2", + "resolved": "https://registry.npmjs.org/webpack-bundle-analyzer/-/webpack-bundle-analyzer-4.10.2.tgz", + "integrity": "sha512-vJptkMm9pk5si4Bv922ZbKLV8UTT4zib4FPgXMhgzUny0bfDDkLXAVQs3ly3fS4/TN9ROFtb0NFrm04UXFE/Vw==", + "dev": true, + "requires": { + "@discoveryjs/json-ext": "0.5.7", + "acorn": "^8.0.4", + "acorn-walk": "^8.0.0", + "commander": "^7.2.0", + "debounce": "^1.2.1", + "escape-string-regexp": "^4.0.0", + "gzip-size": "^6.0.0", + "html-escaper": "^2.0.2", + "opener": "^1.5.2", + "picocolors": "^1.0.0", + "sirv": "^2.0.3", + "ws": "^7.3.1" + }, + "dependencies": { + "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 + } + } + }, "webpack-cli": { - "version": "4.10.0", - "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-4.10.0.tgz", - "integrity": "sha512-NLhDfH/h4O6UOy+0LSso42xvYypClINuMNBVVzX4vX98TmTaTUxwRbXdhucbFMd2qLaCTcLq/PdYrvi8onw90w==", + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-5.1.4.tgz", + "integrity": "sha512-pIDJHIEI9LR0yxHXQ+Qh95k2EvXpWzZ5l+d+jIo+RdSm9MiHfzazIxwwni/p7+x4eJZuvG1AJwgC4TNQ7NRgsg==", "dev": true, "requires": { "@discoveryjs/json-ext": "^0.5.0", - "@webpack-cli/configtest": "^1.2.0", - "@webpack-cli/info": "^1.5.0", - "@webpack-cli/serve": "^1.7.0", + "@webpack-cli/configtest": "^2.1.1", + "@webpack-cli/info": "^2.0.2", + "@webpack-cli/serve": "^2.0.5", "colorette": "^2.0.14", - "commander": "^7.0.0", + "commander": "^10.0.1", "cross-spawn": "^7.0.3", + "envinfo": "^7.7.3", "fastest-levenshtein": "^1.0.12", "import-local": "^3.0.2", - "interpret": "^2.2.0", - "rechoir": "^0.7.0", + "interpret": "^3.1.1", + "rechoir": "^0.8.0", "webpack-merge": "^5.7.3" }, "dependencies": { "commander": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", - "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.1.tgz", + "integrity": "sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==", "dev": true }, "cross-spawn": { @@ -14478,11 +20319,20 @@ } }, "interpret": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/interpret/-/interpret-2.2.0.tgz", - "integrity": "sha512-Ju0Bz/cEia55xDwUWEa8+olFpCiQoypjnQySseKtmjNrnps3P+xfpUmGr90T7yjlVJmOtybRvPXhKMbHr+fWnw==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-3.1.1.tgz", + "integrity": "sha512-6xwYfHbajpoF0xLW+iwLkhwgvLoZDfjYfoFNu8ftMoXINzwuymNLd9u/KmwtdT2GbR+/Cz66otEGEVVUHX9QLQ==", "dev": true }, + "rechoir": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.8.0.tgz", + "integrity": "sha512-/vxpCXddiX8NGfGO/mTafwjq4aFa/71pvamip0++IQk3zG8cbCj0fifNPrjjF1XMXUne91jL9OoxmdykoEtifQ==", + "dev": true, + "requires": { + "resolve": "^1.20.0" + } + }, "shebang-command": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", @@ -14510,9 +20360,9 @@ } }, "webpack-dev-middleware": { - "version": "5.3.3", - "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.3.tgz", - "integrity": "sha512-hj5CYrY0bZLB+eTO+x/j67Pkrquiy7kWepMHmUMoPsmcUaeEnQJqFzHJOyxgWlq746/wUuA64p9ta34Kyb01pA==", + "version": "5.3.4", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.4.tgz", + "integrity": "sha512-BVdTqhhs+0IfoeAf7EoH5WE+exCmqGerHfDM0IL096Px60Tq2Mn9MAbnaGUe6HiMa41KMCYF19gyzZmBcq/o4Q==", "dev": true, "requires": { "colorette": "^2.0.10", @@ -14523,9 +20373,9 @@ }, "dependencies": { "ajv": { - "version": "8.11.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.11.0.tgz", - "integrity": "sha512-wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg==", + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", @@ -14550,23 +20400,23 @@ "dev": true }, "schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.2.0.tgz", + "integrity": "sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==", "dev": true, "requires": { "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", + "ajv": "^8.9.0", "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" + "ajv-keywords": "^5.1.0" } } } }, "webpack-dev-server": { - "version": "4.11.1", - "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.11.1.tgz", - "integrity": "sha512-lILVz9tAUy1zGFwieuaQtYiadImb5M3d+H+L1zDYalYoDl0cksAB1UNyuE5MMWJrG6zR1tXkCP2fitl7yoUJiw==", + "version": "4.15.2", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.15.2.tgz", + "integrity": "sha512-0XavAZbNJ5sDrCbkpWL8mia0o5WPOd2YGtxrEiZkBK9FjLppIUK2TgxK6qGD2P3hUXTJNNPVibrerKcx5WkR1g==", "dev": true, "requires": { "@types/bonjour": "^3.5.9", @@ -14575,7 +20425,7 @@ "@types/serve-index": "^1.9.1", "@types/serve-static": "^1.13.10", "@types/sockjs": "^0.3.33", - "@types/ws": "^8.5.1", + "@types/ws": "^8.5.5", "ansi-html-community": "^0.0.8", "bonjour-service": "^1.0.11", "chokidar": "^3.5.3", @@ -14588,6 +20438,7 @@ "html-entities": "^2.3.2", "http-proxy-middleware": "^2.0.3", "ipaddr.js": "^2.0.1", + "launch-editor": "^2.6.0", "open": "^8.0.9", "p-retry": "^4.5.0", "rimraf": "^3.0.2", @@ -14596,14 +20447,14 @@ "serve-index": "^1.9.1", "sockjs": "^0.3.24", "spdy": "^4.0.2", - "webpack-dev-middleware": "^5.3.1", - "ws": "^8.4.2" + "webpack-dev-middleware": "^5.3.4", + "ws": "^8.13.0" }, "dependencies": { "ajv": { - "version": "8.11.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.11.0.tgz", - "integrity": "sha512-wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg==", + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", @@ -14628,32 +20479,33 @@ "dev": true }, "schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.2.0.tgz", + "integrity": "sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==", "dev": true, "requires": { "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", + "ajv": "^8.9.0", "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" + "ajv-keywords": "^5.1.0" } }, "ws": { - "version": "8.9.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.9.0.tgz", - "integrity": "sha512-Ja7nszREasGaYUYCI2k4lCKIRTt+y7XuqVoHR44YpI49TtryyqbqvDMn5eqfW7e6HzTukDRIsXqzVHScqRcafg==", + "version": "8.16.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.16.0.tgz", + "integrity": "sha512-HS0c//TP7Ina87TfiPUz1rQzMhHrl/SG2guqRcTOIUYD2q8uhUdNHZYJUaQ8aTGPzCh+c6oawMKW35nFl1dxyQ==", "dev": true } } }, "webpack-merge": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.8.0.tgz", - "integrity": "sha512-/SaI7xY0831XwP6kzuwhKWVKDP9t1QY1h65lAFLbZqMPIuYcD9QAW4u9STIbU9kaJbPBB/geU/gLr1wDjOhQ+Q==", + "version": "5.10.0", + "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.10.0.tgz", + "integrity": "sha512-+4zXKdx7UnO+1jaN4l2lHVD+mFvnlZQP/6ljaJVb4SZiwIKeUnrT5l0gkT8z+n4hKpC+jpOv6O9R+gLtag7pSA==", "dev": true, "requires": { "clone-deep": "^4.0.1", + "flat": "^5.0.2", "wildcard": "^2.0.0" }, "dependencies": { @@ -14718,29 +20570,39 @@ "dev": true }, "whatwg-encoding": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz", - "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-2.0.0.tgz", + "integrity": "sha512-p41ogyeMUrw3jWclHWTQg1k05DSVXPLcVxRTYsXUk+ZooOCZLcoYgPZ/HL/D/N+uQPOtcp1me1WhBEaX02mhWg==", "dev": true, "requires": { - "iconv-lite": "0.4.24" + "iconv-lite": "0.6.3" + }, + "dependencies": { + "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, + "requires": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + } + } } }, "whatwg-mimetype": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz", - "integrity": "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-3.0.0.tgz", + "integrity": "sha512-nt+N2dzIutVRxARx1nghPKGv1xHikU7HKdfafKkLNLindmPU/ch3U31NOCGGA/dmPcmb1VlofO0vnKAcsm0o/Q==", "dev": true }, "whatwg-url": { - "version": "8.7.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-8.7.0.tgz", - "integrity": "sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", "dev": true, "requires": { - "lodash": "^4.7.0", - "tr46": "^2.1.0", - "webidl-conversions": "^6.1.0" + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" } }, "which": { @@ -14766,15 +20628,9 @@ } }, "wildcard": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.0.tgz", - "integrity": "sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==", - "dev": true - }, - "word-wrap": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.4.tgz", - "integrity": "sha512-2V81OA4ugVo5pRo46hAoD2ivUJx8jXmWXfUkY4KFNw0hEptvN0QfH3K4nHiwzGeKl5rFKedV48QVoqYavy4YpA==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.1.tgz", + "integrity": "sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ==", "dev": true }, "wrap-ansi": { @@ -14838,10 +20694,16 @@ "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", "dev": true }, + "xdg-basedir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", + "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", + "dev": true + }, "xml-name-validator": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", - "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-4.0.0.tgz", + "integrity": "sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==", "dev": true }, "xmlchars": { @@ -14857,9 +20719,9 @@ "dev": true }, "yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", "dev": true }, "yaml": { @@ -14892,22 +20754,10 @@ } }, "yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - }, - "dependencies": { - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - } - } + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "dev": true }, "yauzl": { "version": "2.10.0", diff --git a/package.json b/package.json index fa287568..2338cc07 100644 --- a/package.json +++ b/package.json @@ -36,7 +36,7 @@ "devDependencies": { "@wordpress/env": "^5.4.0", "@wordpress/eslint-plugin": "^13.3.0", - "@wordpress/scripts": "^24.3.0", + "@wordpress/scripts": "^27.7.0", "grunt": "^1.5.3", "grunt-cli": "^1.4.3", "grunt-contrib-clean": "^2.0.1", From a0afd359ee752a2b9309f72f785fd71413af64a6 Mon Sep 17 00:00:00 2001 From: Kurt Zenisek Date: Thu, 25 Apr 2024 10:49:59 -0500 Subject: [PATCH 062/130] Remove trailing commas in parameters to avoid syntax error with some PHP versions (ex. 7.2.x) --- class-two-factor-core.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/class-two-factor-core.php b/class-two-factor-core.php index 02d40e08..3c0df20a 100644 --- a/class-two-factor-core.php +++ b/class-two-factor-core.php @@ -1450,7 +1450,7 @@ public static function process_provider( $provider, $user, $is_post_request ) { if ( ! $provider ) { return new WP_Error( 'two_factor_provider_missing', - __( 'Cheatin’ uh?', 'two-factor' ), + __( 'Cheatin’ uh?', 'two-factor' ) ); } @@ -1724,7 +1724,7 @@ public static function user_two_factor_options( $user ) { printf( '
', - $show_2fa_options ? '' : 'disabled="disabled"', + $show_2fa_options ? '' : 'disabled="disabled"' ); wp_nonce_field( 'user_two_factor_options', '_nonce_user_two_factor_options', false ); From 4b30c61b76a3a913bb53c557564e289fe64a6dfe Mon Sep 17 00:00:00 2001 From: Kaspars Dambis Date: Thu, 25 Apr 2024 22:09:20 +0300 Subject: [PATCH 063/130] Update linter deps --- composer.json | 6 +- composer.lock | 1010 ++++++++++++++++++++++++++++--------------------- 2 files changed, 585 insertions(+), 431 deletions(-) diff --git a/composer.json b/composer.json index 79ea5465..97bcc17d 100644 --- a/composer.json +++ b/composer.json @@ -28,16 +28,16 @@ "php": ">=5.6" }, "require-dev": { - "automattic/vipwpcs": "^2.3", + "automattic/vipwpcs": "^3.0", "dealerdirect/phpcodesniffer-composer-installer": "^0.7.2", "php-coveralls/php-coveralls": "^2.5", "phpcompatibility/php-compatibility": "10.x-dev as 9.99.99", - "phpcompatibility/phpcompatibility-wp": "dev-master", + "phpcompatibility/phpcompatibility-wp": "^2.1", "phpunit/phpunit": "^9.5", "roots/wordpress-core-installer": "^1.100", "roots/wordpress-full": "~6.0", "spatie/phpunit-watcher": "^1.23", - "wp-coding-standards/wpcs": "^2.3", + "wp-coding-standards/wpcs": "^3.1", "wp-phpunit/wp-phpunit": "^6.0", "yoast/phpunit-polyfills": "^1.0" }, diff --git a/composer.lock b/composer.lock index cbfe4de9..7a4472a9 100644 --- a/composer.lock +++ b/composer.lock @@ -4,33 +4,34 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "890b6a822d871c829b2df7ae4468f12e", + "content-hash": "570fb544cf08e7c2adcc089b05b840e7", "packages": [], "packages-dev": [ { "name": "automattic/vipwpcs", - "version": "2.3.3", + "version": "3.0.0", "source": { "type": "git", "url": "https://github.com/Automattic/VIP-Coding-Standards.git", - "reference": "6cd0a6a82bc0ac988dbf9d6a7c2e293dc8ac640b" + "reference": "1b8960ebff9ea3eb482258a906ece4d1ee1e25fd" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Automattic/VIP-Coding-Standards/zipball/6cd0a6a82bc0ac988dbf9d6a7c2e293dc8ac640b", - "reference": "6cd0a6a82bc0ac988dbf9d6a7c2e293dc8ac640b", + "url": "https://api.github.com/repos/Automattic/VIP-Coding-Standards/zipball/1b8960ebff9ea3eb482258a906ece4d1ee1e25fd", + "reference": "1b8960ebff9ea3eb482258a906ece4d1ee1e25fd", "shasum": "" }, "require": { - "dealerdirect/phpcodesniffer-composer-installer": "^0.4.1 || ^0.5 || ^0.6.2 || ^0.7", "php": ">=5.4", - "sirbrillig/phpcs-variable-analysis": "^2.11.1", - "squizlabs/php_codesniffer": "^3.5.5", - "wp-coding-standards/wpcs": "^2.3" + "phpcsstandards/phpcsextra": "^1.1.0", + "phpcsstandards/phpcsutils": "^1.0.8", + "sirbrillig/phpcs-variable-analysis": "^2.11.17", + "squizlabs/php_codesniffer": "^3.7.2", + "wp-coding-standards/wpcs": "^3.0" }, "require-dev": { - "php-parallel-lint/php-console-highlighter": "^0.5", - "php-parallel-lint/php-parallel-lint": "^1.0", + "php-parallel-lint/php-console-highlighter": "^1.0.0", + "php-parallel-lint/php-parallel-lint": "^1.3.2", "phpcompatibility/php-compatibility": "^9", "phpcsstandards/phpcsdevtools": "^1.0", "phpunit/phpunit": "^4 || ^5 || ^6 || ^7" @@ -50,6 +51,7 @@ "keywords": [ "phpcs", "standards", + "static analysis", "wordpress" ], "support": { @@ -57,7 +59,7 @@ "source": "https://github.com/Automattic/VIP-Coding-Standards", "wiki": "https://github.com/Automattic/VIP-Coding-Standards/wiki" }, - "time": "2021-09-29T16:20:23+00:00" + "time": "2023-09-05T11:01:05+00:00" }, { "name": "clue/stdio-react", @@ -137,25 +139,25 @@ }, { "name": "clue/term-react", - "version": "v1.3.0", + "version": "v1.4.0", "source": { "type": "git", "url": "https://github.com/clue/reactphp-term.git", - "reference": "eb6eb063eda04a714ef89f066586a2c49588f7ca" + "reference": "00f297dc597eaee2ebf98af8f27cca5d21d60fa3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/clue/reactphp-term/zipball/eb6eb063eda04a714ef89f066586a2c49588f7ca", - "reference": "eb6eb063eda04a714ef89f066586a2c49588f7ca", + "url": "https://api.github.com/repos/clue/reactphp-term/zipball/00f297dc597eaee2ebf98af8f27cca5d21d60fa3", + "reference": "00f297dc597eaee2ebf98af8f27cca5d21d60fa3", "shasum": "" }, "require": { "php": ">=5.3", - "react/stream": "^1.0 || ^0.7" + "react/stream": "^1.2" }, "require-dev": { - "phpunit/phpunit": "^9.3 || ^5.7 || ^4.8", - "react/event-loop": "^1.0 || ^0.5 || ^0.4 || ^0.3" + "phpunit/phpunit": "^9.6 || ^5.7 || ^4.8.36", + "react/event-loop": "^1.2" }, "type": "library", "autoload": { @@ -194,7 +196,7 @@ ], "support": { "issues": "https://github.com/clue/reactphp-term/issues", - "source": "https://github.com/clue/reactphp-term/tree/v1.3.0" + "source": "https://github.com/clue/reactphp-term/tree/v1.4.0" }, "funding": [ { @@ -206,20 +208,20 @@ "type": "github" } ], - "time": "2020-11-06T11:50:12+00:00" + "time": "2024-01-30T10:22:09+00:00" }, { "name": "clue/utf8-react", - "version": "v1.2.0", + "version": "v1.3.0", "source": { "type": "git", "url": "https://github.com/clue/reactphp-utf8.git", - "reference": "8bc3f8c874cdf642c8f10f9ae93aadb8cd63da96" + "reference": "d5cd04d39cb5457aa5df830b7c4b301d2694217e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/clue/reactphp-utf8/zipball/8bc3f8c874cdf642c8f10f9ae93aadb8cd63da96", - "reference": "8bc3f8c874cdf642c8f10f9ae93aadb8cd63da96", + "url": "https://api.github.com/repos/clue/reactphp-utf8/zipball/d5cd04d39cb5457aa5df830b7c4b301d2694217e", + "reference": "d5cd04d39cb5457aa5df830b7c4b301d2694217e", "shasum": "" }, "require": { @@ -227,7 +229,7 @@ "react/stream": "^1.0 || ^0.7 || ^0.6 || ^0.5 || ^0.4 || ^0.3" }, "require-dev": { - "phpunit/phpunit": "^9.3 ||^5.7 || ^4.8", + "phpunit/phpunit": "^9.6 || ^5.7 || ^4.8.36", "react/stream": "^1.0 || ^0.7" }, "type": "library", @@ -257,7 +259,7 @@ ], "support": { "issues": "https://github.com/clue/reactphp-utf8/issues", - "source": "https://github.com/clue/reactphp-utf8/tree/v1.2.0" + "source": "https://github.com/clue/reactphp-utf8/tree/v1.3.0" }, "funding": [ { @@ -269,7 +271,7 @@ "type": "github" } ], - "time": "2020-11-06T11:48:09+00:00" + "time": "2023-12-06T14:52:17+00:00" }, { "name": "dealerdirect/phpcodesniffer-composer-installer", @@ -418,28 +420,28 @@ }, { "name": "evenement/evenement", - "version": "v3.0.1", + "version": "v3.0.2", "source": { "type": "git", "url": "https://github.com/igorw/evenement.git", - "reference": "531bfb9d15f8aa57454f5f0285b18bec903b8fb7" + "reference": "0a16b0d71ab13284339abb99d9d2bd813640efbc" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/igorw/evenement/zipball/531bfb9d15f8aa57454f5f0285b18bec903b8fb7", - "reference": "531bfb9d15f8aa57454f5f0285b18bec903b8fb7", + "url": "https://api.github.com/repos/igorw/evenement/zipball/0a16b0d71ab13284339abb99d9d2bd813640efbc", + "reference": "0a16b0d71ab13284339abb99d9d2bd813640efbc", "shasum": "" }, "require": { "php": ">=7.0" }, "require-dev": { - "phpunit/phpunit": "^6.0" + "phpunit/phpunit": "^9 || ^6" }, "type": "library", "autoload": { - "psr-0": { - "Evenement": "src" + "psr-4": { + "Evenement\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", @@ -459,28 +461,28 @@ ], "support": { "issues": "https://github.com/igorw/evenement/issues", - "source": "https://github.com/igorw/evenement/tree/master" + "source": "https://github.com/igorw/evenement/tree/v3.0.2" }, - "time": "2017-07-23T21:35:13+00:00" + "time": "2023-08-08T05:53:35+00:00" }, { "name": "guzzlehttp/guzzle", - "version": "7.5.0", + "version": "7.8.1", "source": { "type": "git", "url": "https://github.com/guzzle/guzzle.git", - "reference": "b50a2a1251152e43f6a37f0fa053e730a67d25ba" + "reference": "41042bc7ab002487b876a0683fc8dce04ddce104" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/guzzle/zipball/b50a2a1251152e43f6a37f0fa053e730a67d25ba", - "reference": "b50a2a1251152e43f6a37f0fa053e730a67d25ba", + "url": "https://api.github.com/repos/guzzle/guzzle/zipball/41042bc7ab002487b876a0683fc8dce04ddce104", + "reference": "41042bc7ab002487b876a0683fc8dce04ddce104", "shasum": "" }, "require": { "ext-json": "*", - "guzzlehttp/promises": "^1.5", - "guzzlehttp/psr7": "^1.9 || ^2.4", + "guzzlehttp/promises": "^1.5.3 || ^2.0.1", + "guzzlehttp/psr7": "^1.9.1 || ^2.5.1", "php": "^7.2.5 || ^8.0", "psr/http-client": "^1.0", "symfony/deprecation-contracts": "^2.2 || ^3.0" @@ -489,10 +491,11 @@ "psr/http-client-implementation": "1.0" }, "require-dev": { - "bamarni/composer-bin-plugin": "^1.8.1", + "bamarni/composer-bin-plugin": "^1.8.2", "ext-curl": "*", - "php-http/client-integration-tests": "^3.0", - "phpunit/phpunit": "^8.5.29 || ^9.5.23", + "php-http/client-integration-tests": "dev-master#2c025848417c1135031fdf9c728ee53d0a7ceaee as 3.0.999", + "php-http/message-factory": "^1.1", + "phpunit/phpunit": "^8.5.36 || ^9.6.15", "psr/log": "^1.1 || ^2.0 || ^3.0" }, "suggest": { @@ -505,9 +508,6 @@ "bamarni-bin": { "bin-links": true, "forward-command": false - }, - "branch-alias": { - "dev-master": "7.5-dev" } }, "autoload": { @@ -573,7 +573,7 @@ ], "support": { "issues": "https://github.com/guzzle/guzzle/issues", - "source": "https://github.com/guzzle/guzzle/tree/7.5.0" + "source": "https://github.com/guzzle/guzzle/tree/7.8.1" }, "funding": [ { @@ -589,38 +589,37 @@ "type": "tidelift" } ], - "time": "2022-08-28T15:39:27+00:00" + "time": "2023-12-03T20:35:24+00:00" }, { "name": "guzzlehttp/promises", - "version": "1.5.2", + "version": "2.0.2", "source": { "type": "git", "url": "https://github.com/guzzle/promises.git", - "reference": "b94b2807d85443f9719887892882d0329d1e2598" + "reference": "bbff78d96034045e58e13dedd6ad91b5d1253223" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/promises/zipball/b94b2807d85443f9719887892882d0329d1e2598", - "reference": "b94b2807d85443f9719887892882d0329d1e2598", + "url": "https://api.github.com/repos/guzzle/promises/zipball/bbff78d96034045e58e13dedd6ad91b5d1253223", + "reference": "bbff78d96034045e58e13dedd6ad91b5d1253223", "shasum": "" }, "require": { - "php": ">=5.5" + "php": "^7.2.5 || ^8.0" }, "require-dev": { - "symfony/phpunit-bridge": "^4.4 || ^5.1" + "bamarni/composer-bin-plugin": "^1.8.2", + "phpunit/phpunit": "^8.5.36 || ^9.6.15" }, "type": "library", "extra": { - "branch-alias": { - "dev-master": "1.5-dev" + "bamarni-bin": { + "bin-links": true, + "forward-command": false } }, "autoload": { - "files": [ - "src/functions_include.php" - ], "psr-4": { "GuzzleHttp\\Promise\\": "src/" } @@ -657,7 +656,7 @@ ], "support": { "issues": "https://github.com/guzzle/promises/issues", - "source": "https://github.com/guzzle/promises/tree/1.5.2" + "source": "https://github.com/guzzle/promises/tree/2.0.2" }, "funding": [ { @@ -673,20 +672,20 @@ "type": "tidelift" } ], - "time": "2022-08-28T14:55:35+00:00" + "time": "2023-12-03T20:19:20+00:00" }, { "name": "guzzlehttp/psr7", - "version": "2.5.0", + "version": "2.6.2", "source": { "type": "git", "url": "https://github.com/guzzle/psr7.git", - "reference": "b635f279edd83fc275f822a1188157ffea568ff6" + "reference": "45b30f99ac27b5ca93cb4831afe16285f57b8221" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/psr7/zipball/b635f279edd83fc275f822a1188157ffea568ff6", - "reference": "b635f279edd83fc275f822a1188157ffea568ff6", + "url": "https://api.github.com/repos/guzzle/psr7/zipball/45b30f99ac27b5ca93cb4831afe16285f57b8221", + "reference": "45b30f99ac27b5ca93cb4831afe16285f57b8221", "shasum": "" }, "require": { @@ -700,9 +699,9 @@ "psr/http-message-implementation": "1.0" }, "require-dev": { - "bamarni/composer-bin-plugin": "^1.8.1", + "bamarni/composer-bin-plugin": "^1.8.2", "http-interop/http-factory-tests": "^0.9", - "phpunit/phpunit": "^8.5.29 || ^9.5.23" + "phpunit/phpunit": "^8.5.36 || ^9.6.15" }, "suggest": { "laminas/laminas-httphandlerrunner": "Emit PSR-7 responses" @@ -773,7 +772,7 @@ ], "support": { "issues": "https://github.com/guzzle/psr7/issues", - "source": "https://github.com/guzzle/psr7/tree/2.5.0" + "source": "https://github.com/guzzle/psr7/tree/2.6.2" }, "funding": [ { @@ -789,7 +788,7 @@ "type": "tidelift" } ], - "time": "2023-04-17T16:11:26+00:00" + "time": "2023-12-03T20:05:35+00:00" }, { "name": "jolicode/jolinotif", @@ -855,16 +854,16 @@ }, { "name": "myclabs/deep-copy", - "version": "1.11.0", + "version": "1.11.1", "source": { "type": "git", "url": "https://github.com/myclabs/DeepCopy.git", - "reference": "14daed4296fae74d9e3201d2c4925d1acb7aa614" + "reference": "7284c22080590fb39f2ffa3e9057f10a4ddd0e0c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/14daed4296fae74d9e3201d2c4925d1acb7aa614", - "reference": "14daed4296fae74d9e3201d2c4925d1acb7aa614", + "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/7284c22080590fb39f2ffa3e9057f10a4ddd0e0c", + "reference": "7284c22080590fb39f2ffa3e9057f10a4ddd0e0c", "shasum": "" }, "require": { @@ -902,7 +901,7 @@ ], "support": { "issues": "https://github.com/myclabs/DeepCopy/issues", - "source": "https://github.com/myclabs/DeepCopy/tree/1.11.0" + "source": "https://github.com/myclabs/DeepCopy/tree/1.11.1" }, "funding": [ { @@ -910,29 +909,31 @@ "type": "tidelift" } ], - "time": "2022-03-03T13:19:32+00:00" + "time": "2023-03-08T13:26:56+00:00" }, { "name": "nikic/php-parser", - "version": "v4.15.3", + "version": "v5.0.2", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "570e980a201d8ed0236b0a62ddf2c9cbb2034039" + "reference": "139676794dc1e9231bf7bcd123cfc0c99182cb13" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/570e980a201d8ed0236b0a62ddf2c9cbb2034039", - "reference": "570e980a201d8ed0236b0a62ddf2c9cbb2034039", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/139676794dc1e9231bf7bcd123cfc0c99182cb13", + "reference": "139676794dc1e9231bf7bcd123cfc0c99182cb13", "shasum": "" }, "require": { + "ext-ctype": "*", + "ext-json": "*", "ext-tokenizer": "*", - "php": ">=7.0" + "php": ">=7.4" }, "require-dev": { "ircmaxell/php-yacc": "^0.0.7", - "phpunit/phpunit": "^6.5 || ^7.0 || ^8.0 || ^9.0" + "phpunit/phpunit": "^7.0 || ^8.0 || ^9.0" }, "bin": [ "bin/php-parse" @@ -940,7 +941,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "4.9-dev" + "dev-master": "5.0-dev" } }, "autoload": { @@ -964,26 +965,27 @@ ], "support": { "issues": "https://github.com/nikic/PHP-Parser/issues", - "source": "https://github.com/nikic/PHP-Parser/tree/v4.15.3" + "source": "https://github.com/nikic/PHP-Parser/tree/v5.0.2" }, - "time": "2023-01-16T22:05:37+00:00" + "time": "2024-03-05T20:51:40+00:00" }, { "name": "phar-io/manifest", - "version": "2.0.3", + "version": "2.0.4", "source": { "type": "git", "url": "https://github.com/phar-io/manifest.git", - "reference": "97803eca37d319dfa7826cc2437fc020857acb53" + "reference": "54750ef60c58e43759730615a392c31c80e23176" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phar-io/manifest/zipball/97803eca37d319dfa7826cc2437fc020857acb53", - "reference": "97803eca37d319dfa7826cc2437fc020857acb53", + "url": "https://api.github.com/repos/phar-io/manifest/zipball/54750ef60c58e43759730615a392c31c80e23176", + "reference": "54750ef60c58e43759730615a392c31c80e23176", "shasum": "" }, "require": { "ext-dom": "*", + "ext-libxml": "*", "ext-phar": "*", "ext-xmlwriter": "*", "phar-io/version": "^3.0.1", @@ -1024,9 +1026,15 @@ "description": "Component for reading phar.io manifest information from a PHP Archive (PHAR)", "support": { "issues": "https://github.com/phar-io/manifest/issues", - "source": "https://github.com/phar-io/manifest/tree/2.0.3" + "source": "https://github.com/phar-io/manifest/tree/2.0.4" }, - "time": "2021-07-20T11:28:43+00:00" + "funding": [ + { + "url": "https://github.com/theseer", + "type": "github" + } + ], + "time": "2024-03-03T12:33:53+00:00" }, { "name": "phar-io/version", @@ -1081,28 +1089,28 @@ }, { "name": "php-coveralls/php-coveralls", - "version": "v2.5.3", + "version": "v2.7.0", "source": { "type": "git", "url": "https://github.com/php-coveralls/php-coveralls.git", - "reference": "9d8243bbf0e053333692857c98fab7cfba0d60a9" + "reference": "b36fa4394e519dafaddc04ae03976bc65a25ba15" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-coveralls/php-coveralls/zipball/9d8243bbf0e053333692857c98fab7cfba0d60a9", - "reference": "9d8243bbf0e053333692857c98fab7cfba0d60a9", + "url": "https://api.github.com/repos/php-coveralls/php-coveralls/zipball/b36fa4394e519dafaddc04ae03976bc65a25ba15", + "reference": "b36fa4394e519dafaddc04ae03976bc65a25ba15", "shasum": "" }, "require": { "ext-json": "*", "ext-simplexml": "*", "guzzlehttp/guzzle": "^6.0 || ^7.0", - "php": "^5.5 || ^7.0 || ^8.0", + "php": "^7.0 || ^8.0", "psr/log": "^1.0 || ^2.0", - "symfony/config": "^2.1 || ^3.0 || ^4.0 || ^5.0 || ^6.0", - "symfony/console": "^2.1 || ^3.0 || ^4.0 || ^5.0 || ^6.0", - "symfony/stopwatch": "^2.0 || ^3.0 || ^4.0 || ^5.0 || ^6.0", - "symfony/yaml": "^2.0.5 || ^3.0 || ^4.0 || ^5.0 || ^6.0" + "symfony/config": "^2.1 || ^3.0 || ^4.0 || ^5.0 || ^6.0 || ^7.0", + "symfony/console": "^2.1 || ^3.0 || ^4.0 || ^5.0 || ^6.0 || ^7.0", + "symfony/stopwatch": "^2.0 || ^3.0 || ^4.0 || ^5.0 || ^6.0 || ^7.0", + "symfony/yaml": "^2.0.5 || ^3.0 || ^4.0 || ^5.0 || ^6.0 || ^7.0" }, "require-dev": { "phpunit/phpunit": "^4.8.35 || ^5.4.3 || ^6.0 || ^7.0 || >=8.0 <8.5.29 || >=9.0 <9.5.23", @@ -1158,9 +1166,9 @@ ], "support": { "issues": "https://github.com/php-coveralls/php-coveralls/issues", - "source": "https://github.com/php-coveralls/php-coveralls/tree/v2.5.3" + "source": "https://github.com/php-coveralls/php-coveralls/tree/v2.7.0" }, - "time": "2022-09-12T20:47:09+00:00" + "time": "2023-11-22T10:21:01+00:00" }, { "name": "phpcompatibility/php-compatibility", @@ -1168,18 +1176,18 @@ "source": { "type": "git", "url": "https://github.com/PHPCompatibility/PHPCompatibility.git", - "reference": "3ec0bfb201b660e358a2b1c3fcd7d934515e84b9" + "reference": "782436f92f26dd66a049059efbfc31350f6b814d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/PHPCompatibility/PHPCompatibility/zipball/3ec0bfb201b660e358a2b1c3fcd7d934515e84b9", - "reference": "3ec0bfb201b660e358a2b1c3fcd7d934515e84b9", + "url": "https://api.github.com/repos/PHPCompatibility/PHPCompatibility/zipball/782436f92f26dd66a049059efbfc31350f6b814d", + "reference": "782436f92f26dd66a049059efbfc31350f6b814d", "shasum": "" }, "require": { "php": ">=5.4", - "phpcsstandards/phpcsutils": "^1.0", - "squizlabs/php_codesniffer": "^3.7.1" + "phpcsstandards/phpcsutils": "^1.0.9", + "squizlabs/php_codesniffer": "^3.9.0" }, "replace": { "wimg/php-compatibility": "*" @@ -1189,8 +1197,8 @@ "php-parallel-lint/php-parallel-lint": "^1.3.2", "phpcsstandards/phpcsdevcs": "^1.1.3", "phpcsstandards/phpcsdevtools": "^1.2.0", - "phpunit/phpunit": "^4.8 || ^5.0 || ^6.0 || ^7.0 || ^8.0 || ^9.3.4", - "yoast/phpunit-polyfills": "^1.0" + "phpunit/phpunit": "^4.8.36 || ^5.7.21 || ^6.0 || ^7.0 || ^8.0 || ^9.3.4 || ^10.1.0", + "yoast/phpunit-polyfills": "^1.0.5 || ^2.0.0" }, "suggest": { "roave/security-advisories": "dev-master || Helps prevent installing dependencies with known security issues." @@ -1233,34 +1241,49 @@ ], "support": { "issues": "https://github.com/PHPCompatibility/PHPCompatibility/issues", + "security": "https://github.com/PHPCompatibility/PHPCompatibility/security/policy", "source": "https://github.com/PHPCompatibility/PHPCompatibility" }, - "time": "2023-02-11T00:52:13+00:00" + "funding": [ + { + "url": "https://github.com/PHPCompatibility", + "type": "github" + }, + { + "url": "https://github.com/jrfnl", + "type": "github" + }, + { + "url": "https://opencollective.com/php_codesniffer", + "type": "open_collective" + } + ], + "time": "2024-04-24T14:07:49+00:00" }, { "name": "phpcompatibility/phpcompatibility-paragonie", - "version": "1.3.2", + "version": "1.3.3", "source": { "type": "git", "url": "https://github.com/PHPCompatibility/PHPCompatibilityParagonie.git", - "reference": "bba5a9dfec7fcfbd679cfaf611d86b4d3759da26" + "reference": "293975b465e0e709b571cbf0c957c6c0a7b9a2ac" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/PHPCompatibility/PHPCompatibilityParagonie/zipball/bba5a9dfec7fcfbd679cfaf611d86b4d3759da26", - "reference": "bba5a9dfec7fcfbd679cfaf611d86b4d3759da26", + "url": "https://api.github.com/repos/PHPCompatibility/PHPCompatibilityParagonie/zipball/293975b465e0e709b571cbf0c957c6c0a7b9a2ac", + "reference": "293975b465e0e709b571cbf0c957c6c0a7b9a2ac", "shasum": "" }, "require": { "phpcompatibility/php-compatibility": "^9.0" }, "require-dev": { - "dealerdirect/phpcodesniffer-composer-installer": "^0.7", + "dealerdirect/phpcodesniffer-composer-installer": "^1.0", "paragonie/random_compat": "dev-master", "paragonie/sodium_compat": "dev-master" }, "suggest": { - "dealerdirect/phpcodesniffer-composer-installer": "^0.7 || This Composer plugin will sort out the PHP_CodeSniffer 'installed_paths' automatically.", + "dealerdirect/phpcodesniffer-composer-installer": "^1.0 || This Composer plugin will sort out the PHP_CodeSniffer 'installed_paths' automatically.", "roave/security-advisories": "dev-master || Helps prevent installing dependencies with known security issues." }, "type": "phpcodesniffer-standard", @@ -1290,22 +1313,37 @@ ], "support": { "issues": "https://github.com/PHPCompatibility/PHPCompatibilityParagonie/issues", + "security": "https://github.com/PHPCompatibility/PHPCompatibilityParagonie/security/policy", "source": "https://github.com/PHPCompatibility/PHPCompatibilityParagonie" }, - "time": "2022-10-25T01:46:02+00:00" + "funding": [ + { + "url": "https://github.com/PHPCompatibility", + "type": "github" + }, + { + "url": "https://github.com/jrfnl", + "type": "github" + }, + { + "url": "https://opencollective.com/php_codesniffer", + "type": "open_collective" + } + ], + "time": "2024-04-24T21:30:46+00:00" }, { "name": "phpcompatibility/phpcompatibility-wp", - "version": "dev-master", + "version": "2.1.5", "source": { "type": "git", "url": "https://github.com/PHPCompatibility/PHPCompatibilityWP.git", - "reference": "262f9d81273932315d15d704f69b9d678b939cb3" + "reference": "01c1ff2704a58e46f0cb1ca9d06aee07b3589082" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/PHPCompatibility/PHPCompatibilityWP/zipball/262f9d81273932315d15d704f69b9d678b939cb3", - "reference": "262f9d81273932315d15d704f69b9d678b939cb3", + "url": "https://api.github.com/repos/PHPCompatibility/PHPCompatibilityWP/zipball/01c1ff2704a58e46f0cb1ca9d06aee07b3589082", + "reference": "01c1ff2704a58e46f0cb1ca9d06aee07b3589082", "shasum": "" }, "require": { @@ -1319,7 +1357,6 @@ "dealerdirect/phpcodesniffer-composer-installer": "^1.0 || This Composer plugin will sort out the PHP_CodeSniffer 'installed_paths' automatically.", "roave/security-advisories": "dev-master || Helps prevent installing dependencies with known security issues." }, - "default-branch": true, "type": "phpcodesniffer-standard", "notification-url": "https://packagist.org/downloads/", "license": [ @@ -1346,36 +1383,128 @@ ], "support": { "issues": "https://github.com/PHPCompatibility/PHPCompatibilityWP/issues", + "security": "https://github.com/PHPCompatibility/PHPCompatibilityWP/security/policy", "source": "https://github.com/PHPCompatibility/PHPCompatibilityWP" }, - "time": "2023-01-05T13:34:27+00:00" + "funding": [ + { + "url": "https://github.com/PHPCompatibility", + "type": "github" + }, + { + "url": "https://github.com/jrfnl", + "type": "github" + }, + { + "url": "https://opencollective.com/php_codesniffer", + "type": "open_collective" + } + ], + "time": "2024-04-24T21:37:59+00:00" + }, + { + "name": "phpcsstandards/phpcsextra", + "version": "1.2.1", + "source": { + "type": "git", + "url": "https://github.com/PHPCSStandards/PHPCSExtra.git", + "reference": "11d387c6642b6e4acaf0bd9bf5203b8cca1ec489" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/PHPCSStandards/PHPCSExtra/zipball/11d387c6642b6e4acaf0bd9bf5203b8cca1ec489", + "reference": "11d387c6642b6e4acaf0bd9bf5203b8cca1ec489", + "shasum": "" + }, + "require": { + "php": ">=5.4", + "phpcsstandards/phpcsutils": "^1.0.9", + "squizlabs/php_codesniffer": "^3.8.0" + }, + "require-dev": { + "php-parallel-lint/php-console-highlighter": "^1.0", + "php-parallel-lint/php-parallel-lint": "^1.3.2", + "phpcsstandards/phpcsdevcs": "^1.1.6", + "phpcsstandards/phpcsdevtools": "^1.2.1", + "phpunit/phpunit": "^4.5 || ^5.0 || ^6.0 || ^7.0 || ^8.0 || ^9.0" + }, + "type": "phpcodesniffer-standard", + "extra": { + "branch-alias": { + "dev-stable": "1.x-dev", + "dev-develop": "1.x-dev" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "LGPL-3.0-or-later" + ], + "authors": [ + { + "name": "Juliette Reinders Folmer", + "homepage": "https://github.com/jrfnl", + "role": "lead" + }, + { + "name": "Contributors", + "homepage": "https://github.com/PHPCSStandards/PHPCSExtra/graphs/contributors" + } + ], + "description": "A collection of sniffs and standards for use with PHP_CodeSniffer.", + "keywords": [ + "PHP_CodeSniffer", + "phpcbf", + "phpcodesniffer-standard", + "phpcs", + "standards", + "static analysis" + ], + "support": { + "issues": "https://github.com/PHPCSStandards/PHPCSExtra/issues", + "security": "https://github.com/PHPCSStandards/PHPCSExtra/security/policy", + "source": "https://github.com/PHPCSStandards/PHPCSExtra" + }, + "funding": [ + { + "url": "https://github.com/PHPCSStandards", + "type": "github" + }, + { + "url": "https://github.com/jrfnl", + "type": "github" + }, + { + "url": "https://opencollective.com/php_codesniffer", + "type": "open_collective" + } + ], + "time": "2023-12-08T16:49:07+00:00" }, { "name": "phpcsstandards/phpcsutils", - "version": "1.0.1", + "version": "1.0.11", "source": { "type": "git", "url": "https://github.com/PHPCSStandards/PHPCSUtils.git", - "reference": "4fd2e30c7465112ca2e3646037bfb9e6f0f4d4f3" + "reference": "c457da9dabb60eb7106dd5e3c05132b1a6539c6a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/PHPCSStandards/PHPCSUtils/zipball/4fd2e30c7465112ca2e3646037bfb9e6f0f4d4f3", - "reference": "4fd2e30c7465112ca2e3646037bfb9e6f0f4d4f3", + "url": "https://api.github.com/repos/PHPCSStandards/PHPCSUtils/zipball/c457da9dabb60eb7106dd5e3c05132b1a6539c6a", + "reference": "c457da9dabb60eb7106dd5e3c05132b1a6539c6a", "shasum": "" }, "require": { "dealerdirect/phpcodesniffer-composer-installer": "^0.4.1 || ^0.5 || ^0.6.2 || ^0.7 || ^1.0", "php": ">=5.4", - "squizlabs/php_codesniffer": "^3.7.1 || 4.0.x-dev@dev" + "squizlabs/php_codesniffer": "^3.9.0 || 4.0.x-dev@dev" }, "require-dev": { "ext-filter": "*", "php-parallel-lint/php-console-highlighter": "^1.0", "php-parallel-lint/php-parallel-lint": "^1.3.2", - "phpcsstandards/phpcsdevcs": "^1.1.3", - "phpunit/phpunit": "^4.8.36 || ^5.7.21 || ^6.0 || ^7.0 || ^8.0 || ^9.3", - "yoast/phpunit-polyfills": "^1.0.1" + "phpcsstandards/phpcsdevcs": "^1.1.6", + "yoast/phpunit-polyfills": "^1.1.0 || ^2.0.0" }, "type": "phpcodesniffer-standard", "extra": { @@ -1420,29 +1549,44 @@ "support": { "docs": "https://phpcsutils.com/", "issues": "https://github.com/PHPCSStandards/PHPCSUtils/issues", + "security": "https://github.com/PHPCSStandards/PHPCSUtils/security/policy", "source": "https://github.com/PHPCSStandards/PHPCSUtils" }, - "time": "2023-01-05T12:08:37+00:00" + "funding": [ + { + "url": "https://github.com/PHPCSStandards", + "type": "github" + }, + { + "url": "https://github.com/jrfnl", + "type": "github" + }, + { + "url": "https://opencollective.com/php_codesniffer", + "type": "open_collective" + } + ], + "time": "2024-04-24T11:47:18+00:00" }, { "name": "phpunit/php-code-coverage", - "version": "9.2.24", + "version": "9.2.31", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-code-coverage.git", - "reference": "2cf940ebc6355a9d430462811b5aaa308b174bed" + "reference": "48c34b5d8d983006bd2adc2d0de92963b9155965" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/2cf940ebc6355a9d430462811b5aaa308b174bed", - "reference": "2cf940ebc6355a9d430462811b5aaa308b174bed", + "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/48c34b5d8d983006bd2adc2d0de92963b9155965", + "reference": "48c34b5d8d983006bd2adc2d0de92963b9155965", "shasum": "" }, "require": { "ext-dom": "*", "ext-libxml": "*", "ext-xmlwriter": "*", - "nikic/php-parser": "^4.14", + "nikic/php-parser": "^4.18 || ^5.0", "php": ">=7.3", "phpunit/php-file-iterator": "^3.0.3", "phpunit/php-text-template": "^2.0.2", @@ -1457,8 +1601,8 @@ "phpunit/phpunit": "^9.3" }, "suggest": { - "ext-pcov": "*", - "ext-xdebug": "*" + "ext-pcov": "PHP extension that provides line coverage", + "ext-xdebug": "PHP extension that provides line coverage as well as branch and path coverage" }, "type": "library", "extra": { @@ -1491,7 +1635,8 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/php-code-coverage/issues", - "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.24" + "security": "https://github.com/sebastianbergmann/php-code-coverage/security/policy", + "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.31" }, "funding": [ { @@ -1499,7 +1644,7 @@ "type": "github" } ], - "time": "2023-01-26T08:26:55+00:00" + "time": "2024-03-02T06:37:42+00:00" }, { "name": "phpunit/php-file-iterator", @@ -1744,16 +1889,16 @@ }, { "name": "phpunit/phpunit", - "version": "9.6.3", + "version": "9.6.19", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "e7b1615e3e887d6c719121c6d4a44b0ab9645555" + "reference": "a1a54a473501ef4cdeaae4e06891674114d79db8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/e7b1615e3e887d6c719121c6d4a44b0ab9645555", - "reference": "e7b1615e3e887d6c719121c6d4a44b0ab9645555", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/a1a54a473501ef4cdeaae4e06891674114d79db8", + "reference": "a1a54a473501ef4cdeaae4e06891674114d79db8", "shasum": "" }, "require": { @@ -1768,7 +1913,7 @@ "phar-io/manifest": "^2.0.3", "phar-io/version": "^3.0.2", "php": ">=7.3", - "phpunit/php-code-coverage": "^9.2.13", + "phpunit/php-code-coverage": "^9.2.28", "phpunit/php-file-iterator": "^3.0.5", "phpunit/php-invoker": "^3.1.1", "phpunit/php-text-template": "^2.0.3", @@ -1786,8 +1931,8 @@ "sebastian/version": "^3.0.2" }, "suggest": { - "ext-soap": "*", - "ext-xdebug": "*" + "ext-soap": "To be able to generate mocks based on WSDL files", + "ext-xdebug": "PHP extension that provides line coverage as well as branch and path coverage" }, "bin": [ "phpunit" @@ -1826,7 +1971,8 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/phpunit/issues", - "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.3" + "security": "https://github.com/sebastianbergmann/phpunit/security/policy", + "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.19" }, "funding": [ { @@ -1842,7 +1988,7 @@ "type": "tidelift" } ], - "time": "2023-02-04T13:37:15+00:00" + "time": "2024-04-05T04:35:58+00:00" }, { "name": "psr/container", @@ -1894,21 +2040,21 @@ }, { "name": "psr/http-client", - "version": "1.0.1", + "version": "1.0.3", "source": { "type": "git", "url": "https://github.com/php-fig/http-client.git", - "reference": "2dfb5f6c5eff0e91e20e913f8c5452ed95b86621" + "reference": "bb5906edc1c324c9a05aa0873d40117941e5fa90" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/http-client/zipball/2dfb5f6c5eff0e91e20e913f8c5452ed95b86621", - "reference": "2dfb5f6c5eff0e91e20e913f8c5452ed95b86621", + "url": "https://api.github.com/repos/php-fig/http-client/zipball/bb5906edc1c324c9a05aa0873d40117941e5fa90", + "reference": "bb5906edc1c324c9a05aa0873d40117941e5fa90", "shasum": "" }, "require": { "php": "^7.0 || ^8.0", - "psr/http-message": "^1.0" + "psr/http-message": "^1.0 || ^2.0" }, "type": "library", "extra": { @@ -1928,7 +2074,7 @@ "authors": [ { "name": "PHP-FIG", - "homepage": "http://www.php-fig.org/" + "homepage": "https://www.php-fig.org/" } ], "description": "Common interface for HTTP clients", @@ -1940,9 +2086,9 @@ "psr-18" ], "support": { - "source": "https://github.com/php-fig/http-client/tree/master" + "source": "https://github.com/php-fig/http-client" }, - "time": "2020-06-29T06:28:15+00:00" + "time": "2023-09-23T14:17:50+00:00" }, { "name": "psr/http-factory", @@ -2001,16 +2147,16 @@ }, { "name": "psr/http-message", - "version": "1.1", + "version": "2.0", "source": { "type": "git", "url": "https://github.com/php-fig/http-message.git", - "reference": "cb6ce4845ce34a8ad9e68117c10ee90a29919eba" + "reference": "402d35bcb92c70c026d1a6a9883f06b2ead23d71" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/http-message/zipball/cb6ce4845ce34a8ad9e68117c10ee90a29919eba", - "reference": "cb6ce4845ce34a8ad9e68117c10ee90a29919eba", + "url": "https://api.github.com/repos/php-fig/http-message/zipball/402d35bcb92c70c026d1a6a9883f06b2ead23d71", + "reference": "402d35bcb92c70c026d1a6a9883f06b2ead23d71", "shasum": "" }, "require": { @@ -2019,7 +2165,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.1.x-dev" + "dev-master": "2.0.x-dev" } }, "autoload": { @@ -2034,7 +2180,7 @@ "authors": [ { "name": "PHP-FIG", - "homepage": "http://www.php-fig.org/" + "homepage": "https://www.php-fig.org/" } ], "description": "Common interface for HTTP messages", @@ -2048,9 +2194,9 @@ "response" ], "support": { - "source": "https://github.com/php-fig/http-message/tree/1.1" + "source": "https://github.com/php-fig/http-message/tree/2.0" }, - "time": "2023-04-04T09:50:52+00:00" + "time": "2023-04-04T09:54:51+00:00" }, { "name": "psr/log", @@ -2148,33 +2294,31 @@ }, { "name": "react/event-loop", - "version": "v1.3.0", + "version": "v1.5.0", "source": { "type": "git", "url": "https://github.com/reactphp/event-loop.git", - "reference": "187fb56f46d424afb6ec4ad089269c72eec2e137" + "reference": "bbe0bd8c51ffc05ee43f1729087ed3bdf7d53354" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/reactphp/event-loop/zipball/187fb56f46d424afb6ec4ad089269c72eec2e137", - "reference": "187fb56f46d424afb6ec4ad089269c72eec2e137", + "url": "https://api.github.com/repos/reactphp/event-loop/zipball/bbe0bd8c51ffc05ee43f1729087ed3bdf7d53354", + "reference": "bbe0bd8c51ffc05ee43f1729087ed3bdf7d53354", "shasum": "" }, "require": { "php": ">=5.3.0" }, "require-dev": { - "phpunit/phpunit": "^9.3 || ^5.7 || ^4.8.35" + "phpunit/phpunit": "^9.6 || ^5.7 || ^4.8.36" }, "suggest": { - "ext-event": "~1.0 for ExtEventLoop", - "ext-pcntl": "For signal handling support when using the StreamSelectLoop", - "ext-uv": "* for ExtUvLoop" + "ext-pcntl": "For signal handling support when using the StreamSelectLoop" }, "type": "library", "autoload": { "psr-4": { - "React\\EventLoop\\": "src" + "React\\EventLoop\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", @@ -2210,32 +2354,28 @@ ], "support": { "issues": "https://github.com/reactphp/event-loop/issues", - "source": "https://github.com/reactphp/event-loop/tree/v1.3.0" + "source": "https://github.com/reactphp/event-loop/tree/v1.5.0" }, "funding": [ { - "url": "https://github.com/WyriHaximus", - "type": "github" - }, - { - "url": "https://github.com/clue", - "type": "github" + "url": "https://opencollective.com/reactphp", + "type": "open_collective" } ], - "time": "2022-03-17T11:10:22+00:00" + "time": "2023-11-13T13:48:05+00:00" }, { "name": "react/stream", - "version": "v1.2.0", + "version": "v1.3.0", "source": { "type": "git", "url": "https://github.com/reactphp/stream.git", - "reference": "7a423506ee1903e89f1e08ec5f0ed430ff784ae9" + "reference": "6fbc9672905c7d5a885f2da2fc696f65840f4a66" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/reactphp/stream/zipball/7a423506ee1903e89f1e08ec5f0ed430ff784ae9", - "reference": "7a423506ee1903e89f1e08ec5f0ed430ff784ae9", + "url": "https://api.github.com/repos/reactphp/stream/zipball/6fbc9672905c7d5a885f2da2fc696f65840f4a66", + "reference": "6fbc9672905c7d5a885f2da2fc696f65840f4a66", "shasum": "" }, "require": { @@ -2245,12 +2385,12 @@ }, "require-dev": { "clue/stream-filter": "~1.2", - "phpunit/phpunit": "^9.3 || ^5.7 || ^4.8.35" + "phpunit/phpunit": "^9.5 || ^5.7 || ^4.8.35" }, "type": "library", "autoload": { "psr-4": { - "React\\Stream\\": "src" + "React\\Stream\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", @@ -2292,19 +2432,15 @@ ], "support": { "issues": "https://github.com/reactphp/stream/issues", - "source": "https://github.com/reactphp/stream/tree/v1.2.0" + "source": "https://github.com/reactphp/stream/tree/v1.3.0" }, "funding": [ { - "url": "https://github.com/WyriHaximus", - "type": "github" - }, - { - "url": "https://github.com/clue", - "type": "github" + "url": "https://opencollective.com/reactphp", + "type": "open_collective" } ], - "time": "2021-07-11T12:37:55+00:00" + "time": "2023-06-16T10:52:11+00:00" }, { "name": "roots/wordpress-core-installer", @@ -2379,22 +2515,22 @@ }, { "name": "roots/wordpress-full", - "version": "6.1.1", + "version": "6.5.2", "source": { "type": "git", "url": "https://github.com/WordPress/WordPress.git", - "reference": "6.1.1" + "reference": "6.5.2" }, "dist": { "type": "zip", - "url": "https://downloads.wordpress.org/release/wordpress-6.1.1.zip", - "shasum": "e4c74640c50b27d59dfab8cf5578769eb668d10a" + "url": "https://downloads.wordpress.org/release/wordpress-6.5.2.zip", + "shasum": "4846f20c1a365ada67772ec9e479521db8d53cec" }, "require": { - "php": ">= 5.6.20" + "php": ">= 7.0.0" }, "provide": { - "wordpress/core-implementation": "6.1.1" + "wordpress/core-implementation": "6.5.2" }, "suggest": { "ext-curl": "Performs remote request operations.", @@ -2445,20 +2581,20 @@ "type": "other" } ], - "time": "2022-11-15T19:14:27+00:00" + "time": "2024-04-09T22:02:19+00:00" }, { "name": "sebastian/cli-parser", - "version": "1.0.1", + "version": "1.0.2", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/cli-parser.git", - "reference": "442e7c7e687e42adc03470c7b668bc4b2402c0b2" + "reference": "2b56bea83a09de3ac06bb18b92f068e60cc6f50b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/cli-parser/zipball/442e7c7e687e42adc03470c7b668bc4b2402c0b2", - "reference": "442e7c7e687e42adc03470c7b668bc4b2402c0b2", + "url": "https://api.github.com/repos/sebastianbergmann/cli-parser/zipball/2b56bea83a09de3ac06bb18b92f068e60cc6f50b", + "reference": "2b56bea83a09de3ac06bb18b92f068e60cc6f50b", "shasum": "" }, "require": { @@ -2493,7 +2629,7 @@ "homepage": "https://github.com/sebastianbergmann/cli-parser", "support": { "issues": "https://github.com/sebastianbergmann/cli-parser/issues", - "source": "https://github.com/sebastianbergmann/cli-parser/tree/1.0.1" + "source": "https://github.com/sebastianbergmann/cli-parser/tree/1.0.2" }, "funding": [ { @@ -2501,7 +2637,7 @@ "type": "github" } ], - "time": "2020-09-28T06:08:49+00:00" + "time": "2024-03-02T06:27:43+00:00" }, { "name": "sebastian/code-unit", @@ -2690,20 +2826,20 @@ }, { "name": "sebastian/complexity", - "version": "2.0.2", + "version": "2.0.3", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/complexity.git", - "reference": "739b35e53379900cc9ac327b2147867b8b6efd88" + "reference": "25f207c40d62b8b7aa32f5ab026c53561964053a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/complexity/zipball/739b35e53379900cc9ac327b2147867b8b6efd88", - "reference": "739b35e53379900cc9ac327b2147867b8b6efd88", + "url": "https://api.github.com/repos/sebastianbergmann/complexity/zipball/25f207c40d62b8b7aa32f5ab026c53561964053a", + "reference": "25f207c40d62b8b7aa32f5ab026c53561964053a", "shasum": "" }, "require": { - "nikic/php-parser": "^4.7", + "nikic/php-parser": "^4.18 || ^5.0", "php": ">=7.3" }, "require-dev": { @@ -2735,7 +2871,7 @@ "homepage": "https://github.com/sebastianbergmann/complexity", "support": { "issues": "https://github.com/sebastianbergmann/complexity/issues", - "source": "https://github.com/sebastianbergmann/complexity/tree/2.0.2" + "source": "https://github.com/sebastianbergmann/complexity/tree/2.0.3" }, "funding": [ { @@ -2743,20 +2879,20 @@ "type": "github" } ], - "time": "2020-10-26T15:52:27+00:00" + "time": "2023-12-22T06:19:30+00:00" }, { "name": "sebastian/diff", - "version": "4.0.4", + "version": "4.0.6", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/diff.git", - "reference": "3461e3fccc7cfdfc2720be910d3bd73c69be590d" + "reference": "ba01945089c3a293b01ba9badc29ad55b106b0bc" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/3461e3fccc7cfdfc2720be910d3bd73c69be590d", - "reference": "3461e3fccc7cfdfc2720be910d3bd73c69be590d", + "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/ba01945089c3a293b01ba9badc29ad55b106b0bc", + "reference": "ba01945089c3a293b01ba9badc29ad55b106b0bc", "shasum": "" }, "require": { @@ -2801,7 +2937,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/diff/issues", - "source": "https://github.com/sebastianbergmann/diff/tree/4.0.4" + "source": "https://github.com/sebastianbergmann/diff/tree/4.0.6" }, "funding": [ { @@ -2809,7 +2945,7 @@ "type": "github" } ], - "time": "2020-10-26T13:10:38+00:00" + "time": "2024-03-02T06:30:58+00:00" }, { "name": "sebastian/environment", @@ -2876,16 +3012,16 @@ }, { "name": "sebastian/exporter", - "version": "4.0.5", + "version": "4.0.6", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/exporter.git", - "reference": "ac230ed27f0f98f597c8a2b6eb7ac563af5e5b9d" + "reference": "78c00df8f170e02473b682df15bfcdacc3d32d72" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/ac230ed27f0f98f597c8a2b6eb7ac563af5e5b9d", - "reference": "ac230ed27f0f98f597c8a2b6eb7ac563af5e5b9d", + "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/78c00df8f170e02473b682df15bfcdacc3d32d72", + "reference": "78c00df8f170e02473b682df15bfcdacc3d32d72", "shasum": "" }, "require": { @@ -2941,7 +3077,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/exporter/issues", - "source": "https://github.com/sebastianbergmann/exporter/tree/4.0.5" + "source": "https://github.com/sebastianbergmann/exporter/tree/4.0.6" }, "funding": [ { @@ -2949,20 +3085,20 @@ "type": "github" } ], - "time": "2022-09-14T06:03:37+00:00" + "time": "2024-03-02T06:33:00+00:00" }, { "name": "sebastian/global-state", - "version": "5.0.5", + "version": "5.0.7", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/global-state.git", - "reference": "0ca8db5a5fc9c8646244e629625ac486fa286bf2" + "reference": "bca7df1f32ee6fe93b4d4a9abbf69e13a4ada2c9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/0ca8db5a5fc9c8646244e629625ac486fa286bf2", - "reference": "0ca8db5a5fc9c8646244e629625ac486fa286bf2", + "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/bca7df1f32ee6fe93b4d4a9abbf69e13a4ada2c9", + "reference": "bca7df1f32ee6fe93b4d4a9abbf69e13a4ada2c9", "shasum": "" }, "require": { @@ -3005,7 +3141,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/global-state/issues", - "source": "https://github.com/sebastianbergmann/global-state/tree/5.0.5" + "source": "https://github.com/sebastianbergmann/global-state/tree/5.0.7" }, "funding": [ { @@ -3013,24 +3149,24 @@ "type": "github" } ], - "time": "2022-02-14T08:28:10+00:00" + "time": "2024-03-02T06:35:11+00:00" }, { "name": "sebastian/lines-of-code", - "version": "1.0.3", + "version": "1.0.4", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/lines-of-code.git", - "reference": "c1c2e997aa3146983ed888ad08b15470a2e22ecc" + "reference": "e1e4a170560925c26d424b6a03aed157e7dcc5c5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/lines-of-code/zipball/c1c2e997aa3146983ed888ad08b15470a2e22ecc", - "reference": "c1c2e997aa3146983ed888ad08b15470a2e22ecc", + "url": "https://api.github.com/repos/sebastianbergmann/lines-of-code/zipball/e1e4a170560925c26d424b6a03aed157e7dcc5c5", + "reference": "e1e4a170560925c26d424b6a03aed157e7dcc5c5", "shasum": "" }, "require": { - "nikic/php-parser": "^4.6", + "nikic/php-parser": "^4.18 || ^5.0", "php": ">=7.3" }, "require-dev": { @@ -3062,7 +3198,7 @@ "homepage": "https://github.com/sebastianbergmann/lines-of-code", "support": { "issues": "https://github.com/sebastianbergmann/lines-of-code/issues", - "source": "https://github.com/sebastianbergmann/lines-of-code/tree/1.0.3" + "source": "https://github.com/sebastianbergmann/lines-of-code/tree/1.0.4" }, "funding": [ { @@ -3070,7 +3206,7 @@ "type": "github" } ], - "time": "2020-11-28T06:42:11+00:00" + "time": "2023-12-22T06:20:34+00:00" }, { "name": "sebastian/object-enumerator", @@ -3249,16 +3385,16 @@ }, { "name": "sebastian/resource-operations", - "version": "3.0.3", + "version": "3.0.4", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/resource-operations.git", - "reference": "0f4443cb3a1d92ce809899753bc0d5d5a8dd19a8" + "reference": "05d5692a7993ecccd56a03e40cd7e5b09b1d404e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/0f4443cb3a1d92ce809899753bc0d5d5a8dd19a8", - "reference": "0f4443cb3a1d92ce809899753bc0d5d5a8dd19a8", + "url": "https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/05d5692a7993ecccd56a03e40cd7e5b09b1d404e", + "reference": "05d5692a7993ecccd56a03e40cd7e5b09b1d404e", "shasum": "" }, "require": { @@ -3270,7 +3406,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "3.0-dev" + "dev-main": "3.0-dev" } }, "autoload": { @@ -3291,8 +3427,7 @@ "description": "Provides a list of PHP built-in functions that operate on resources", "homepage": "https://www.github.com/sebastianbergmann/resource-operations", "support": { - "issues": "https://github.com/sebastianbergmann/resource-operations/issues", - "source": "https://github.com/sebastianbergmann/resource-operations/tree/3.0.3" + "source": "https://github.com/sebastianbergmann/resource-operations/tree/3.0.4" }, "funding": [ { @@ -3300,7 +3435,7 @@ "type": "github" } ], - "time": "2020-09-28T06:45:17+00:00" + "time": "2024-03-14T16:00:52+00:00" }, { "name": "sebastian/type", @@ -3413,16 +3548,16 @@ }, { "name": "sirbrillig/phpcs-variable-analysis", - "version": "v2.11.10", + "version": "v2.11.18", "source": { "type": "git", "url": "https://github.com/sirbrillig/phpcs-variable-analysis.git", - "reference": "0f25a3766f26df91d6bdda0c8931303fc85499d7" + "reference": "ca242a0b7309e0f9d1f73b236e04ecf4ca3248d0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sirbrillig/phpcs-variable-analysis/zipball/0f25a3766f26df91d6bdda0c8931303fc85499d7", - "reference": "0f25a3766f26df91d6bdda0c8931303fc85499d7", + "url": "https://api.github.com/repos/sirbrillig/phpcs-variable-analysis/zipball/ca242a0b7309e0f9d1f73b236e04ecf4ca3248d0", + "reference": "ca242a0b7309e0f9d1f73b236e04ecf4ca3248d0", "shasum": "" }, "require": { @@ -3467,7 +3602,7 @@ "source": "https://github.com/sirbrillig/phpcs-variable-analysis", "wiki": "https://github.com/sirbrillig/phpcs-variable-analysis/wiki" }, - "time": "2023-01-05T18:45:16+00:00" + "time": "2024-04-13T16:42:46+00:00" }, { "name": "spatie/phpunit-watcher", @@ -3535,16 +3670,16 @@ }, { "name": "squizlabs/php_codesniffer", - "version": "3.7.1", + "version": "3.9.2", "source": { "type": "git", - "url": "https://github.com/squizlabs/PHP_CodeSniffer.git", - "reference": "1359e176e9307e906dc3d890bcc9603ff6d90619" + "url": "https://github.com/PHPCSStandards/PHP_CodeSniffer.git", + "reference": "aac1f6f347a5c5ac6bc98ad395007df00990f480" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/squizlabs/PHP_CodeSniffer/zipball/1359e176e9307e906dc3d890bcc9603ff6d90619", - "reference": "1359e176e9307e906dc3d890bcc9603ff6d90619", + "url": "https://api.github.com/repos/PHPCSStandards/PHP_CodeSniffer/zipball/aac1f6f347a5c5ac6bc98ad395007df00990f480", + "reference": "aac1f6f347a5c5ac6bc98ad395007df00990f480", "shasum": "" }, "require": { @@ -3554,11 +3689,11 @@ "php": ">=5.4.0" }, "require-dev": { - "phpunit/phpunit": "^4.0 || ^5.0 || ^6.0 || ^7.0" + "phpunit/phpunit": "^4.0 || ^5.0 || ^6.0 || ^7.0 || ^8.0 || ^9.3.4" }, "bin": [ - "bin/phpcs", - "bin/phpcbf" + "bin/phpcbf", + "bin/phpcs" ], "type": "library", "extra": { @@ -3573,34 +3708,58 @@ "authors": [ { "name": "Greg Sherwood", - "role": "lead" + "role": "Former lead" + }, + { + "name": "Juliette Reinders Folmer", + "role": "Current lead" + }, + { + "name": "Contributors", + "homepage": "https://github.com/PHPCSStandards/PHP_CodeSniffer/graphs/contributors" } ], "description": "PHP_CodeSniffer tokenizes PHP, JavaScript and CSS files and detects violations of a defined set of coding standards.", - "homepage": "https://github.com/squizlabs/PHP_CodeSniffer", + "homepage": "https://github.com/PHPCSStandards/PHP_CodeSniffer", "keywords": [ "phpcs", - "standards" + "standards", + "static analysis" ], "support": { - "issues": "https://github.com/squizlabs/PHP_CodeSniffer/issues", - "source": "https://github.com/squizlabs/PHP_CodeSniffer", - "wiki": "https://github.com/squizlabs/PHP_CodeSniffer/wiki" + "issues": "https://github.com/PHPCSStandards/PHP_CodeSniffer/issues", + "security": "https://github.com/PHPCSStandards/PHP_CodeSniffer/security/policy", + "source": "https://github.com/PHPCSStandards/PHP_CodeSniffer", + "wiki": "https://github.com/PHPCSStandards/PHP_CodeSniffer/wiki" }, - "time": "2022-06-18T07:21:10+00:00" + "funding": [ + { + "url": "https://github.com/PHPCSStandards", + "type": "github" + }, + { + "url": "https://github.com/jrfnl", + "type": "github" + }, + { + "url": "https://opencollective.com/php_codesniffer", + "type": "open_collective" + } + ], + "time": "2024-04-23T20:25:34+00:00" }, { "name": "symfony/config", - "version": "v5.4.19", + "version": "v5.4.38", "source": { "type": "git", "url": "https://github.com/symfony/config.git", - "reference": "9bd60843443cda9638efdca7c41eb82ed0026179" + "reference": "3dcd47d4bbd9fea4d1210e7a7a0a5ca02d99df14" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/config/zipball/9bd60843443cda9638efdca7c41eb82ed0026179", - "reference": "9bd60843443cda9638efdca7c41eb82ed0026179", + "url": "https://api.github.com/repos/symfony/config/zipball/3dcd47d4bbd9fea4d1210e7a7a0a5ca02d99df14", + "reference": "3dcd47d4bbd9fea4d1210e7a7a0a5ca02d99df14", "shasum": "" }, "require": { @@ -3650,7 +3809,7 @@ "description": "Helps you find, load, combine, autofill and validate configuration values of any kind", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/config/tree/v5.4.19" + "source": "https://github.com/symfony/config/tree/v5.4.38" }, "funding": [ { @@ -3666,20 +3825,20 @@ "type": "tidelift" } ], - "time": "2023-01-08T13:23:55+00:00" + "time": "2024-03-22T10:04:40+00:00" }, { "name": "symfony/console", - "version": "v5.4.19", + "version": "v5.4.36", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "dccb8d251a9017d5994c988b034d3e18aaabf740" + "reference": "39f75d9d73d0c11952fdcecf4877b4d0f62a8f6e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/dccb8d251a9017d5994c988b034d3e18aaabf740", - "reference": "dccb8d251a9017d5994c988b034d3e18aaabf740", + "url": "https://api.github.com/repos/symfony/console/zipball/39f75d9d73d0c11952fdcecf4877b4d0f62a8f6e", + "reference": "39f75d9d73d0c11952fdcecf4877b4d0f62a8f6e", "shasum": "" }, "require": { @@ -3744,12 +3903,12 @@ "homepage": "https://symfony.com", "keywords": [ "cli", - "command line", + "command-line", "console", "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v5.4.19" + "source": "https://github.com/symfony/console/tree/v5.4.36" }, "funding": [ { @@ -3765,20 +3924,20 @@ "type": "tidelift" } ], - "time": "2023-01-01T08:32:19+00:00" + "time": "2024-02-20T16:33:57+00:00" }, { "name": "symfony/deprecation-contracts", - "version": "v2.5.2", + "version": "v2.5.3", "source": { "type": "git", "url": "https://github.com/symfony/deprecation-contracts.git", - "reference": "e8b495ea28c1d97b5e0c121748d6f9b53d075c66" + "reference": "80d075412b557d41002320b96a096ca65aa2c98d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/e8b495ea28c1d97b5e0c121748d6f9b53d075c66", - "reference": "e8b495ea28c1d97b5e0c121748d6f9b53d075c66", + "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/80d075412b557d41002320b96a096ca65aa2c98d", + "reference": "80d075412b557d41002320b96a096ca65aa2c98d", "shasum": "" }, "require": { @@ -3816,7 +3975,7 @@ "description": "A generic function and convention to trigger deprecation notices", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/deprecation-contracts/tree/v2.5.2" + "source": "https://github.com/symfony/deprecation-contracts/tree/v2.5.3" }, "funding": [ { @@ -3832,20 +3991,20 @@ "type": "tidelift" } ], - "time": "2022-01-02T09:53:40+00:00" + "time": "2023-01-24T14:02:46+00:00" }, { "name": "symfony/filesystem", - "version": "v5.4.19", + "version": "v5.4.38", "source": { "type": "git", "url": "https://github.com/symfony/filesystem.git", - "reference": "648bfaca6a494f3e22378123bcee2894045dc9d8" + "reference": "899330a01056077271e2f614c7b28b0379a671eb" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/filesystem/zipball/648bfaca6a494f3e22378123bcee2894045dc9d8", - "reference": "648bfaca6a494f3e22378123bcee2894045dc9d8", + "url": "https://api.github.com/repos/symfony/filesystem/zipball/899330a01056077271e2f614c7b28b0379a671eb", + "reference": "899330a01056077271e2f614c7b28b0379a671eb", "shasum": "" }, "require": { @@ -3880,7 +4039,7 @@ "description": "Provides basic utilities for the filesystem", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/filesystem/tree/v5.4.19" + "source": "https://github.com/symfony/filesystem/tree/v5.4.38" }, "funding": [ { @@ -3896,20 +4055,20 @@ "type": "tidelift" } ], - "time": "2023-01-14T19:14:44+00:00" + "time": "2024-03-21T08:05:07+00:00" }, { "name": "symfony/finder", - "version": "v5.4.19", + "version": "v5.4.35", "source": { "type": "git", "url": "https://github.com/symfony/finder.git", - "reference": "6071aebf810ad13fe8200c224f36103abb37cf1f" + "reference": "abe6d6f77d9465fed3cd2d029b29d03b56b56435" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/finder/zipball/6071aebf810ad13fe8200c224f36103abb37cf1f", - "reference": "6071aebf810ad13fe8200c224f36103abb37cf1f", + "url": "https://api.github.com/repos/symfony/finder/zipball/abe6d6f77d9465fed3cd2d029b29d03b56b56435", + "reference": "abe6d6f77d9465fed3cd2d029b29d03b56b56435", "shasum": "" }, "require": { @@ -3943,7 +4102,7 @@ "description": "Finds files and directories via an intuitive fluent interface", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/finder/tree/v5.4.19" + "source": "https://github.com/symfony/finder/tree/v5.4.35" }, "funding": [ { @@ -3959,20 +4118,20 @@ "type": "tidelift" } ], - "time": "2023-01-14T19:14:44+00:00" + "time": "2024-01-23T13:51:25+00:00" }, { "name": "symfony/polyfill-ctype", - "version": "v1.27.0", + "version": "v1.29.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-ctype.git", - "reference": "5bbc823adecdae860bb64756d639ecfec17b050a" + "reference": "ef4d7e442ca910c4764bce785146269b30cb5fc4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/5bbc823adecdae860bb64756d639ecfec17b050a", - "reference": "5bbc823adecdae860bb64756d639ecfec17b050a", + "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/ef4d7e442ca910c4764bce785146269b30cb5fc4", + "reference": "ef4d7e442ca910c4764bce785146269b30cb5fc4", "shasum": "" }, "require": { @@ -3986,9 +4145,6 @@ }, "type": "library", "extra": { - "branch-alias": { - "dev-main": "1.27-dev" - }, "thanks": { "name": "symfony/polyfill", "url": "https://github.com/symfony/polyfill" @@ -4025,7 +4181,7 @@ "portable" ], "support": { - "source": "https://github.com/symfony/polyfill-ctype/tree/v1.27.0" + "source": "https://github.com/symfony/polyfill-ctype/tree/v1.29.0" }, "funding": [ { @@ -4041,20 +4197,20 @@ "type": "tidelift" } ], - "time": "2022-11-03T14:55:06+00:00" + "time": "2024-01-29T20:11:03+00:00" }, { "name": "symfony/polyfill-intl-grapheme", - "version": "v1.27.0", + "version": "v1.29.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-grapheme.git", - "reference": "511a08c03c1960e08a883f4cffcacd219b758354" + "reference": "32a9da87d7b3245e09ac426c83d334ae9f06f80f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/511a08c03c1960e08a883f4cffcacd219b758354", - "reference": "511a08c03c1960e08a883f4cffcacd219b758354", + "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/32a9da87d7b3245e09ac426c83d334ae9f06f80f", + "reference": "32a9da87d7b3245e09ac426c83d334ae9f06f80f", "shasum": "" }, "require": { @@ -4065,9 +4221,6 @@ }, "type": "library", "extra": { - "branch-alias": { - "dev-main": "1.27-dev" - }, "thanks": { "name": "symfony/polyfill", "url": "https://github.com/symfony/polyfill" @@ -4106,7 +4259,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.27.0" + "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.29.0" }, "funding": [ { @@ -4122,20 +4275,20 @@ "type": "tidelift" } ], - "time": "2022-11-03T14:55:06+00:00" + "time": "2024-01-29T20:11:03+00:00" }, { "name": "symfony/polyfill-intl-normalizer", - "version": "v1.27.0", + "version": "v1.29.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-normalizer.git", - "reference": "19bd1e4fcd5b91116f14d8533c57831ed00571b6" + "reference": "bc45c394692b948b4d383a08d7753968bed9a83d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/19bd1e4fcd5b91116f14d8533c57831ed00571b6", - "reference": "19bd1e4fcd5b91116f14d8533c57831ed00571b6", + "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/bc45c394692b948b4d383a08d7753968bed9a83d", + "reference": "bc45c394692b948b4d383a08d7753968bed9a83d", "shasum": "" }, "require": { @@ -4146,9 +4299,6 @@ }, "type": "library", "extra": { - "branch-alias": { - "dev-main": "1.27-dev" - }, "thanks": { "name": "symfony/polyfill", "url": "https://github.com/symfony/polyfill" @@ -4190,7 +4340,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.27.0" + "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.29.0" }, "funding": [ { @@ -4206,20 +4356,20 @@ "type": "tidelift" } ], - "time": "2022-11-03T14:55:06+00:00" + "time": "2024-01-29T20:11:03+00:00" }, { "name": "symfony/polyfill-mbstring", - "version": "v1.27.0", + "version": "v1.29.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-mbstring.git", - "reference": "8ad114f6b39e2c98a8b0e3bd907732c207c2b534" + "reference": "9773676c8a1bb1f8d4340a62efe641cf76eda7ec" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/8ad114f6b39e2c98a8b0e3bd907732c207c2b534", - "reference": "8ad114f6b39e2c98a8b0e3bd907732c207c2b534", + "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/9773676c8a1bb1f8d4340a62efe641cf76eda7ec", + "reference": "9773676c8a1bb1f8d4340a62efe641cf76eda7ec", "shasum": "" }, "require": { @@ -4233,9 +4383,6 @@ }, "type": "library", "extra": { - "branch-alias": { - "dev-main": "1.27-dev" - }, "thanks": { "name": "symfony/polyfill", "url": "https://github.com/symfony/polyfill" @@ -4273,7 +4420,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.27.0" + "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.29.0" }, "funding": [ { @@ -4289,20 +4436,20 @@ "type": "tidelift" } ], - "time": "2022-11-03T14:55:06+00:00" + "time": "2024-01-29T20:11:03+00:00" }, { "name": "symfony/polyfill-php73", - "version": "v1.27.0", + "version": "v1.29.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php73.git", - "reference": "9e8ecb5f92152187c4799efd3c96b78ccab18ff9" + "reference": "21bd091060673a1177ae842c0ef8fe30893114d2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/9e8ecb5f92152187c4799efd3c96b78ccab18ff9", - "reference": "9e8ecb5f92152187c4799efd3c96b78ccab18ff9", + "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/21bd091060673a1177ae842c0ef8fe30893114d2", + "reference": "21bd091060673a1177ae842c0ef8fe30893114d2", "shasum": "" }, "require": { @@ -4310,9 +4457,6 @@ }, "type": "library", "extra": { - "branch-alias": { - "dev-main": "1.27-dev" - }, "thanks": { "name": "symfony/polyfill", "url": "https://github.com/symfony/polyfill" @@ -4352,7 +4496,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php73/tree/v1.27.0" + "source": "https://github.com/symfony/polyfill-php73/tree/v1.29.0" }, "funding": [ { @@ -4368,20 +4512,20 @@ "type": "tidelift" } ], - "time": "2022-11-03T14:55:06+00:00" + "time": "2024-01-29T20:11:03+00:00" }, { "name": "symfony/polyfill-php80", - "version": "v1.27.0", + "version": "v1.29.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php80.git", - "reference": "7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936" + "reference": "87b68208d5c1188808dd7839ee1e6c8ec3b02f1b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936", - "reference": "7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936", + "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/87b68208d5c1188808dd7839ee1e6c8ec3b02f1b", + "reference": "87b68208d5c1188808dd7839ee1e6c8ec3b02f1b", "shasum": "" }, "require": { @@ -4389,9 +4533,6 @@ }, "type": "library", "extra": { - "branch-alias": { - "dev-main": "1.27-dev" - }, "thanks": { "name": "symfony/polyfill", "url": "https://github.com/symfony/polyfill" @@ -4435,7 +4576,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php80/tree/v1.27.0" + "source": "https://github.com/symfony/polyfill-php80/tree/v1.29.0" }, "funding": [ { @@ -4451,20 +4592,20 @@ "type": "tidelift" } ], - "time": "2022-11-03T14:55:06+00:00" + "time": "2024-01-29T20:11:03+00:00" }, { "name": "symfony/polyfill-php81", - "version": "v1.27.0", + "version": "v1.29.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php81.git", - "reference": "707403074c8ea6e2edaf8794b0157a0bfa52157a" + "reference": "c565ad1e63f30e7477fc40738343c62b40bc672d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php81/zipball/707403074c8ea6e2edaf8794b0157a0bfa52157a", - "reference": "707403074c8ea6e2edaf8794b0157a0bfa52157a", + "url": "https://api.github.com/repos/symfony/polyfill-php81/zipball/c565ad1e63f30e7477fc40738343c62b40bc672d", + "reference": "c565ad1e63f30e7477fc40738343c62b40bc672d", "shasum": "" }, "require": { @@ -4472,9 +4613,6 @@ }, "type": "library", "extra": { - "branch-alias": { - "dev-main": "1.27-dev" - }, "thanks": { "name": "symfony/polyfill", "url": "https://github.com/symfony/polyfill" @@ -4514,7 +4652,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php81/tree/v1.27.0" + "source": "https://github.com/symfony/polyfill-php81/tree/v1.29.0" }, "funding": [ { @@ -4530,20 +4668,20 @@ "type": "tidelift" } ], - "time": "2022-11-03T14:55:06+00:00" + "time": "2024-01-29T20:11:03+00:00" }, { "name": "symfony/process", - "version": "v5.4.19", + "version": "v5.4.36", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "c5ba874c9b636dbccf761e22ce750e88ec3f55e1" + "reference": "4fdf34004f149cc20b2f51d7d119aa500caad975" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/c5ba874c9b636dbccf761e22ce750e88ec3f55e1", - "reference": "c5ba874c9b636dbccf761e22ce750e88ec3f55e1", + "url": "https://api.github.com/repos/symfony/process/zipball/4fdf34004f149cc20b2f51d7d119aa500caad975", + "reference": "4fdf34004f149cc20b2f51d7d119aa500caad975", "shasum": "" }, "require": { @@ -4576,7 +4714,7 @@ "description": "Executes commands in sub-processes", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/process/tree/v5.4.19" + "source": "https://github.com/symfony/process/tree/v5.4.36" }, "funding": [ { @@ -4592,20 +4730,20 @@ "type": "tidelift" } ], - "time": "2023-01-01T08:32:19+00:00" + "time": "2024-02-12T15:49:53+00:00" }, { "name": "symfony/service-contracts", - "version": "v2.5.2", + "version": "v2.5.3", "source": { "type": "git", "url": "https://github.com/symfony/service-contracts.git", - "reference": "4b426aac47d6427cc1a1d0f7e2ac724627f5966c" + "reference": "a2329596ddc8fd568900e3fc76cba42489ecc7f3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/service-contracts/zipball/4b426aac47d6427cc1a1d0f7e2ac724627f5966c", - "reference": "4b426aac47d6427cc1a1d0f7e2ac724627f5966c", + "url": "https://api.github.com/repos/symfony/service-contracts/zipball/a2329596ddc8fd568900e3fc76cba42489ecc7f3", + "reference": "a2329596ddc8fd568900e3fc76cba42489ecc7f3", "shasum": "" }, "require": { @@ -4659,7 +4797,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/service-contracts/tree/v2.5.2" + "source": "https://github.com/symfony/service-contracts/tree/v2.5.3" }, "funding": [ { @@ -4675,20 +4813,20 @@ "type": "tidelift" } ], - "time": "2022-05-30T19:17:29+00:00" + "time": "2023-04-21T15:04:16+00:00" }, { "name": "symfony/stopwatch", - "version": "v5.4.19", + "version": "v5.4.35", "source": { "type": "git", "url": "https://github.com/symfony/stopwatch.git", - "reference": "bd2b066090fd6a67039371098fa25a84cb2679ec" + "reference": "887762aa99ff16f65dc8b48aafead415f942d407" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/stopwatch/zipball/bd2b066090fd6a67039371098fa25a84cb2679ec", - "reference": "bd2b066090fd6a67039371098fa25a84cb2679ec", + "url": "https://api.github.com/repos/symfony/stopwatch/zipball/887762aa99ff16f65dc8b48aafead415f942d407", + "reference": "887762aa99ff16f65dc8b48aafead415f942d407", "shasum": "" }, "require": { @@ -4721,7 +4859,7 @@ "description": "Provides a way to profile code", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/stopwatch/tree/v5.4.19" + "source": "https://github.com/symfony/stopwatch/tree/v5.4.35" }, "funding": [ { @@ -4737,20 +4875,20 @@ "type": "tidelift" } ], - "time": "2023-01-01T08:32:19+00:00" + "time": "2024-01-23T13:51:25+00:00" }, { "name": "symfony/string", - "version": "v5.4.19", + "version": "v5.4.36", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "0a01071610fd861cc160dfb7e2682ceec66064cb" + "reference": "4e232c83622bd8cd32b794216aa29d0d266d353b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/0a01071610fd861cc160dfb7e2682ceec66064cb", - "reference": "0a01071610fd861cc160dfb7e2682ceec66064cb", + "url": "https://api.github.com/repos/symfony/string/zipball/4e232c83622bd8cd32b794216aa29d0d266d353b", + "reference": "4e232c83622bd8cd32b794216aa29d0d266d353b", "shasum": "" }, "require": { @@ -4807,7 +4945,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v5.4.19" + "source": "https://github.com/symfony/string/tree/v5.4.36" }, "funding": [ { @@ -4823,20 +4961,20 @@ "type": "tidelift" } ], - "time": "2023-01-01T08:32:19+00:00" + "time": "2024-02-01T08:49:30+00:00" }, { "name": "symfony/yaml", - "version": "v5.4.19", + "version": "v5.4.35", "source": { "type": "git", "url": "https://github.com/symfony/yaml.git", - "reference": "71c05db20cb9b54d381a28255f17580e2b7e36a5" + "reference": "e78db7f5c70a21f0417a31f414c4a95fe76c07e4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/yaml/zipball/71c05db20cb9b54d381a28255f17580e2b7e36a5", - "reference": "71c05db20cb9b54d381a28255f17580e2b7e36a5", + "url": "https://api.github.com/repos/symfony/yaml/zipball/e78db7f5c70a21f0417a31f414c4a95fe76c07e4", + "reference": "e78db7f5c70a21f0417a31f414c4a95fe76c07e4", "shasum": "" }, "require": { @@ -4882,7 +5020,7 @@ "description": "Loads and dumps YAML files", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/yaml/tree/v5.4.19" + "source": "https://github.com/symfony/yaml/tree/v5.4.35" }, "funding": [ { @@ -4898,20 +5036,20 @@ "type": "tidelift" } ], - "time": "2023-01-10T18:51:14+00:00" + "time": "2024-01-23T13:51:25+00:00" }, { "name": "theseer/tokenizer", - "version": "1.2.1", + "version": "1.2.3", "source": { "type": "git", "url": "https://github.com/theseer/tokenizer.git", - "reference": "34a41e998c2183e22995f158c581e7b5e755ab9e" + "reference": "737eda637ed5e28c3413cb1ebe8bb52cbf1ca7a2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/theseer/tokenizer/zipball/34a41e998c2183e22995f158c581e7b5e755ab9e", - "reference": "34a41e998c2183e22995f158c581e7b5e755ab9e", + "url": "https://api.github.com/repos/theseer/tokenizer/zipball/737eda637ed5e28c3413cb1ebe8bb52cbf1ca7a2", + "reference": "737eda637ed5e28c3413cb1ebe8bb52cbf1ca7a2", "shasum": "" }, "require": { @@ -4940,7 +5078,7 @@ "description": "A small library for converting tokenized PHP source code into XML and potentially other formats", "support": { "issues": "https://github.com/theseer/tokenizer/issues", - "source": "https://github.com/theseer/tokenizer/tree/1.2.1" + "source": "https://github.com/theseer/tokenizer/tree/1.2.3" }, "funding": [ { @@ -4948,34 +5086,42 @@ "type": "github" } ], - "time": "2021-07-28T10:34:58+00:00" + "time": "2024-03-03T12:36:25+00:00" }, { "name": "wp-coding-standards/wpcs", - "version": "2.3.0", + "version": "3.1.0", "source": { "type": "git", "url": "https://github.com/WordPress/WordPress-Coding-Standards.git", - "reference": "7da1894633f168fe244afc6de00d141f27517b62" + "reference": "9333efcbff231f10dfd9c56bb7b65818b4733ca7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/WordPress/WordPress-Coding-Standards/zipball/7da1894633f168fe244afc6de00d141f27517b62", - "reference": "7da1894633f168fe244afc6de00d141f27517b62", + "url": "https://api.github.com/repos/WordPress/WordPress-Coding-Standards/zipball/9333efcbff231f10dfd9c56bb7b65818b4733ca7", + "reference": "9333efcbff231f10dfd9c56bb7b65818b4733ca7", "shasum": "" }, "require": { + "ext-filter": "*", + "ext-libxml": "*", + "ext-tokenizer": "*", + "ext-xmlreader": "*", "php": ">=5.4", - "squizlabs/php_codesniffer": "^3.3.1" + "phpcsstandards/phpcsextra": "^1.2.1", + "phpcsstandards/phpcsutils": "^1.0.10", + "squizlabs/php_codesniffer": "^3.9.0" }, "require-dev": { - "dealerdirect/phpcodesniffer-composer-installer": "^0.5 || ^0.6", + "php-parallel-lint/php-console-highlighter": "^1.0.0", + "php-parallel-lint/php-parallel-lint": "^1.3.2", "phpcompatibility/php-compatibility": "^9.0", - "phpcsstandards/phpcsdevtools": "^1.0", - "phpunit/phpunit": "^4.0 || ^5.0 || ^6.0 || ^7.0" + "phpcsstandards/phpcsdevtools": "^1.2.0", + "phpunit/phpunit": "^4.0 || ^5.0 || ^6.0 || ^7.0 || ^8.0 || ^9.0" }, "suggest": { - "dealerdirect/phpcodesniffer-composer-installer": "^0.6 || This Composer plugin will sort out the PHPCS 'installed_paths' automatically." + "ext-iconv": "For improved results", + "ext-mbstring": "For improved results" }, "type": "phpcodesniffer-standard", "notification-url": "https://packagist.org/downloads/", @@ -4992,6 +5138,7 @@ "keywords": [ "phpcs", "standards", + "static analysis", "wordpress" ], "support": { @@ -4999,20 +5146,26 @@ "source": "https://github.com/WordPress/WordPress-Coding-Standards", "wiki": "https://github.com/WordPress/WordPress-Coding-Standards/wiki" }, - "time": "2020-05-13T23:57:56+00:00" + "funding": [ + { + "url": "https://opencollective.com/php_codesniffer", + "type": "custom" + } + ], + "time": "2024-03-25T16:39:00+00:00" }, { "name": "wp-phpunit/wp-phpunit", - "version": "6.1.1", + "version": "6.5.2", "source": { "type": "git", "url": "https://github.com/wp-phpunit/wp-phpunit.git", - "reference": "49521597fa525f762a50a4a6d22ed180839519fd" + "reference": "4368fd1dd37d0314cbaa9040be39d835616aeb17" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/wp-phpunit/wp-phpunit/zipball/49521597fa525f762a50a4a6d22ed180839519fd", - "reference": "49521597fa525f762a50a4a6d22ed180839519fd", + "url": "https://api.github.com/repos/wp-phpunit/wp-phpunit/zipball/4368fd1dd37d0314cbaa9040be39d835616aeb17", + "reference": "4368fd1dd37d0314cbaa9040be39d835616aeb17", "shasum": "" }, "type": "library", @@ -5047,20 +5200,20 @@ "issues": "https://github.com/wp-phpunit/issues", "source": "https://github.com/wp-phpunit/wp-phpunit" }, - "time": "2022-11-02T12:52:44+00:00" + "time": "2024-04-03T00:33:03+00:00" }, { "name": "yoast/phpunit-polyfills", - "version": "1.0.4", + "version": "1.1.1", "source": { "type": "git", "url": "https://github.com/Yoast/PHPUnit-Polyfills.git", - "reference": "3c621ff5429d2b1ff96dc5808ad6cde99d31ea4c" + "reference": "a0f7d708794a738f328d7b6c94380fd1d6c40446" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Yoast/PHPUnit-Polyfills/zipball/3c621ff5429d2b1ff96dc5808ad6cde99d31ea4c", - "reference": "3c621ff5429d2b1ff96dc5808ad6cde99d31ea4c", + "url": "https://api.github.com/repos/Yoast/PHPUnit-Polyfills/zipball/a0f7d708794a738f328d7b6c94380fd1d6c40446", + "reference": "a0f7d708794a738f328d7b6c94380fd1d6c40446", "shasum": "" }, "require": { @@ -5068,13 +5221,14 @@ "phpunit/phpunit": "^4.8.36 || ^5.7.21 || ^6.0 || ^7.0 || ^8.0 || ^9.0" }, "require-dev": { - "yoast/yoastcs": "^2.2.1" + "php-parallel-lint/php-console-highlighter": "^1.0.0", + "php-parallel-lint/php-parallel-lint": "^1.4.0", + "yoast/yoastcs": "^3.1.0" }, "type": "library", "extra": { "branch-alias": { - "dev-main": "1.x-dev", - "dev-develop": "1.x-dev" + "dev-main": "2.x-dev" } }, "autoload": { @@ -5106,9 +5260,10 @@ ], "support": { "issues": "https://github.com/Yoast/PHPUnit-Polyfills/issues", + "security": "https://github.com/Yoast/PHPUnit-Polyfills/security/policy", "source": "https://github.com/Yoast/PHPUnit-Polyfills" }, - "time": "2022-11-16T09:07:52+00:00" + "time": "2024-04-05T16:01:51+00:00" }, { "name": "yosymfony/resource-watcher", @@ -5178,8 +5333,7 @@ ], "minimum-stability": "dev", "stability-flags": { - "phpcompatibility/php-compatibility": 20, - "phpcompatibility/phpcompatibility-wp": 20 + "phpcompatibility/php-compatibility": 20 }, "prefer-stable": true, "prefer-lowest": false, @@ -5190,5 +5344,5 @@ "platform-overrides": { "php": "7.4" }, - "plugin-api-version": "2.3.0" + "plugin-api-version": "2.6.0" } From fa438e992b08ec3541d20e6767cb3e9b3cd89611 Mon Sep 17 00:00:00 2001 From: Kaspars Dambis Date: Thu, 25 Apr 2024 22:09:34 +0300 Subject: [PATCH 064/130] Check for 5.6+ compat in general --- composer.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/composer.json b/composer.json index 97bcc17d..4e578175 100644 --- a/composer.json +++ b/composer.json @@ -43,7 +43,7 @@ }, "scripts": { "lint": "phpcs", - "lint-php8": "phpcs -p --standard=PHPCompatibilityWP --runtime-set testVersion 8.0- --extensions=php --ignore='vendor/,wordpress/,node_modules/' .", + "lint-compat": "phpcs -p --standard=PHPCompatibilityWP --runtime-set testVersion 5.6- --extensions=php --ignore='tests/,includes/Yubico/,vendor/,wordpress/,node_modules/' .", "test": "php -d xdebug.mode=coverage vendor/bin/phpunit", "test:watch": [ "Composer\\Config::disableProcessTimeout", From d721235f138be462b05540eb99dfe3feafb4f572 Mon Sep 17 00:00:00 2001 From: Kaspars Dambis Date: Thu, 25 Apr 2024 22:09:45 +0300 Subject: [PATCH 065/130] Ignore test cache everywhere --- .gitignore | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 9d288c60..a58b0b78 100644 --- a/.gitignore +++ b/.gitignore @@ -3,6 +3,6 @@ /npm-debug.log /vendor/ /dist/ -/tests/.phpunit.result.cache /tests/logs/ /wordpress/ +.phpunit.result.cache From 7abe3592ff22d7dcf5cabf92ec6b94f38a192ac8 Mon Sep 17 00:00:00 2001 From: Kaspars Dambis Date: Thu, 25 Apr 2024 22:09:58 +0300 Subject: [PATCH 066/130] Do lint for PHP compat in general --- .github/workflows/test.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index b4ea2a9d..31327e92 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -35,8 +35,8 @@ jobs: - name: Lint PHP run: npm run lint:php || true # Ignore for now. - - name: Lint PHP8 - run: composer lint-php8 + - name: Lint PHP Compatibility + run: composer lint-compat - name: Start the Docker testing environment run: npm run env start --xdebug=coverage From 9d7d3d7d837c7fcd2fa6e4a16aaa1e60b9ebf54d Mon Sep 17 00:00:00 2001 From: Kaspars Dambis Date: Thu, 25 Apr 2024 22:11:34 +0300 Subject: [PATCH 067/130] Bump testing to latest too --- composer.json | 6 +++--- composer.lock | 45 ++++++++++++++++++++++++--------------------- 2 files changed, 27 insertions(+), 24 deletions(-) diff --git a/composer.json b/composer.json index 4e578175..0ce9c94c 100644 --- a/composer.json +++ b/composer.json @@ -29,7 +29,7 @@ }, "require-dev": { "automattic/vipwpcs": "^3.0", - "dealerdirect/phpcodesniffer-composer-installer": "^0.7.2", + "dealerdirect/phpcodesniffer-composer-installer": "^1.0", "php-coveralls/php-coveralls": "^2.5", "phpcompatibility/php-compatibility": "10.x-dev as 9.99.99", "phpcompatibility/phpcompatibility-wp": "^2.1", @@ -38,8 +38,8 @@ "roots/wordpress-full": "~6.0", "spatie/phpunit-watcher": "^1.23", "wp-coding-standards/wpcs": "^3.1", - "wp-phpunit/wp-phpunit": "^6.0", - "yoast/phpunit-polyfills": "^1.0" + "wp-phpunit/wp-phpunit": "~6.0", + "yoast/phpunit-polyfills": "^2.0" }, "scripts": { "lint": "phpcs", diff --git a/composer.lock b/composer.lock index 7a4472a9..f1e381d5 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "570fb544cf08e7c2adcc089b05b840e7", + "content-hash": "2073ffcfb7bca0d0ffa0d51ea84f5e11", "packages": [], "packages-dev": [ { @@ -275,35 +275,38 @@ }, { "name": "dealerdirect/phpcodesniffer-composer-installer", - "version": "v0.7.2", + "version": "v1.0.0", "source": { "type": "git", - "url": "https://github.com/Dealerdirect/phpcodesniffer-composer-installer.git", - "reference": "1c968e542d8843d7cd71de3c5c9c3ff3ad71a1db" + "url": "https://github.com/PHPCSStandards/composer-installer.git", + "reference": "4be43904336affa5c2f70744a348312336afd0da" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Dealerdirect/phpcodesniffer-composer-installer/zipball/1c968e542d8843d7cd71de3c5c9c3ff3ad71a1db", - "reference": "1c968e542d8843d7cd71de3c5c9c3ff3ad71a1db", + "url": "https://api.github.com/repos/PHPCSStandards/composer-installer/zipball/4be43904336affa5c2f70744a348312336afd0da", + "reference": "4be43904336affa5c2f70744a348312336afd0da", "shasum": "" }, "require": { "composer-plugin-api": "^1.0 || ^2.0", - "php": ">=5.3", + "php": ">=5.4", "squizlabs/php_codesniffer": "^2.0 || ^3.1.0 || ^4.0" }, "require-dev": { "composer/composer": "*", + "ext-json": "*", + "ext-zip": "*", "php-parallel-lint/php-parallel-lint": "^1.3.1", - "phpcompatibility/php-compatibility": "^9.0" + "phpcompatibility/php-compatibility": "^9.0", + "yoast/phpunit-polyfills": "^1.0" }, "type": "composer-plugin", "extra": { - "class": "Dealerdirect\\Composer\\Plugin\\Installers\\PHPCodeSniffer\\Plugin" + "class": "PHPCSStandards\\Composer\\Plugin\\Installers\\PHPCodeSniffer\\Plugin" }, "autoload": { "psr-4": { - "Dealerdirect\\Composer\\Plugin\\Installers\\PHPCodeSniffer\\": "src/" + "PHPCSStandards\\Composer\\Plugin\\Installers\\PHPCodeSniffer\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", @@ -319,7 +322,7 @@ }, { "name": "Contributors", - "homepage": "https://github.com/Dealerdirect/phpcodesniffer-composer-installer/graphs/contributors" + "homepage": "https://github.com/PHPCSStandards/composer-installer/graphs/contributors" } ], "description": "PHP_CodeSniffer Standards Composer Installer Plugin", @@ -343,10 +346,10 @@ "tests" ], "support": { - "issues": "https://github.com/dealerdirect/phpcodesniffer-composer-installer/issues", - "source": "https://github.com/dealerdirect/phpcodesniffer-composer-installer" + "issues": "https://github.com/PHPCSStandards/composer-installer/issues", + "source": "https://github.com/PHPCSStandards/composer-installer" }, - "time": "2022-02-04T12:51:07+00:00" + "time": "2023-01-05T11:28:13+00:00" }, { "name": "doctrine/instantiator", @@ -5204,21 +5207,21 @@ }, { "name": "yoast/phpunit-polyfills", - "version": "1.1.1", + "version": "2.0.1", "source": { "type": "git", "url": "https://github.com/Yoast/PHPUnit-Polyfills.git", - "reference": "a0f7d708794a738f328d7b6c94380fd1d6c40446" + "reference": "4a088f125c970d6d6ea52c927f96fe39b330d0f1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Yoast/PHPUnit-Polyfills/zipball/a0f7d708794a738f328d7b6c94380fd1d6c40446", - "reference": "a0f7d708794a738f328d7b6c94380fd1d6c40446", + "url": "https://api.github.com/repos/Yoast/PHPUnit-Polyfills/zipball/4a088f125c970d6d6ea52c927f96fe39b330d0f1", + "reference": "4a088f125c970d6d6ea52c927f96fe39b330d0f1", "shasum": "" }, "require": { - "php": ">=5.4", - "phpunit/phpunit": "^4.8.36 || ^5.7.21 || ^6.0 || ^7.0 || ^8.0 || ^9.0" + "php": ">=5.6", + "phpunit/phpunit": "^5.7.21 || ^6.0 || ^7.0 || ^8.0 || ^9.0 || ^10.0" }, "require-dev": { "php-parallel-lint/php-console-highlighter": "^1.0.0", @@ -5263,7 +5266,7 @@ "security": "https://github.com/Yoast/PHPUnit-Polyfills/security/policy", "source": "https://github.com/Yoast/PHPUnit-Polyfills" }, - "time": "2024-04-05T16:01:51+00:00" + "time": "2024-04-05T16:36:44+00:00" }, { "name": "yosymfony/resource-watcher", From 7bac3731f783b61c77690453303c014e2e310ab7 Mon Sep 17 00:00:00 2001 From: Kaspars Dambis Date: Thu, 25 Apr 2024 22:19:40 +0300 Subject: [PATCH 068/130] Match the rest of item formatting --- .github/workflows/deploy.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index ca224545..7f964c13 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -31,6 +31,7 @@ jobs: - name: Build plugin run: npm run build + - name: WordPress Plugin Deploy id: deploy uses: 10up/action-wordpress-plugin-deploy@stable From e849646d6454a63d9d1a0b73c0cd5074422789d8 Mon Sep 17 00:00:00 2001 From: Kaspars Dambis Date: Thu, 25 Apr 2024 22:42:21 +0300 Subject: [PATCH 069/130] No longer requires starting the environment --- .github/workflows/test.yml | 3 --- 1 file changed, 3 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 31327e92..a94e6f30 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -38,9 +38,6 @@ jobs: - name: Lint PHP Compatibility run: composer lint-compat - - name: Start the Docker testing environment - run: npm run env start --xdebug=coverage - - name: Test run: npm run test From bef1d109d34b7d436d69828b47e4abb225cfd319 Mon Sep 17 00:00:00 2001 From: Kaspars Dambis Date: Thu, 25 Apr 2024 22:42:46 +0300 Subject: [PATCH 070/130] Let composer resolve it from vendors --- composer.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/composer.json b/composer.json index 0ce9c94c..d1309307 100644 --- a/composer.json +++ b/composer.json @@ -44,7 +44,7 @@ "scripts": { "lint": "phpcs", "lint-compat": "phpcs -p --standard=PHPCompatibilityWP --runtime-set testVersion 5.6- --extensions=php --ignore='tests/,includes/Yubico/,vendor/,wordpress/,node_modules/' .", - "test": "php -d xdebug.mode=coverage vendor/bin/phpunit", + "test": "phpunit", "test:watch": [ "Composer\\Config::disableProcessTimeout", "phpunit-watcher watch --no-coverage" From ee518ad251448bddcf1d7625addb8506e888f44a Mon Sep 17 00:00:00 2001 From: Kaspars Dambis Date: Thu, 25 Apr 2024 22:47:18 +0300 Subject: [PATCH 071/130] Revert "No longer requires starting the environment" This reverts commit e849646d6454a63d9d1a0b73c0cd5074422789d8. --- .github/workflows/test.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index a94e6f30..31327e92 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -38,6 +38,9 @@ jobs: - name: Lint PHP Compatibility run: composer lint-compat + - name: Start the Docker testing environment + run: npm run env start --xdebug=coverage + - name: Test run: npm run test From c385383580c6bbad7283e2dfa3b1cf8b0fe1d323 Mon Sep 17 00:00:00 2001 From: Kaspars Dambis Date: Thu, 25 Apr 2024 22:54:03 +0300 Subject: [PATCH 072/130] Also exclude the build directory --- composer.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/composer.json b/composer.json index d1309307..0bc125d7 100644 --- a/composer.json +++ b/composer.json @@ -43,7 +43,7 @@ }, "scripts": { "lint": "phpcs", - "lint-compat": "phpcs -p --standard=PHPCompatibilityWP --runtime-set testVersion 5.6- --extensions=php --ignore='tests/,includes/Yubico/,vendor/,wordpress/,node_modules/' .", + "lint-compat": "phpcs -p --standard=PHPCompatibilityWP --runtime-set testVersion 5.6- --extensions=php --ignore='tests/,dist/,includes/Yubico/,vendor/,wordpress/,node_modules/' .", "test": "phpunit", "test:watch": [ "Composer\\Config::disableProcessTimeout", From e03bdd365a04ad1d394d3ed24d9a9e49cee687ef Mon Sep 17 00:00:00 2001 From: Kaspars Dambis Date: Thu, 25 Apr 2024 22:58:52 +0300 Subject: [PATCH 073/130] Bump version --- readme.txt | 2 +- two-factor.php | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/readme.txt b/readme.txt index 081e5f26..5540ef68 100644 --- a/readme.txt +++ b/readme.txt @@ -4,7 +4,7 @@ Tags: two factor, two step, authentication, login, totp, fido u2f, Requires at least: 4.3 Tested up to: 6.5 Requires PHP: 5.6 -Stable tag: 0.9.0 +Stable tag: 0.9.1 Enable Two-Factor Authentication using time-based one-time passwords (OTP, Google Authenticator), Universal 2nd Factor (FIDO U2F, YubiKey), email and backup verification codes. diff --git a/two-factor.php b/two-factor.php index 7bb246d4..feab321a 100644 --- a/two-factor.php +++ b/two-factor.php @@ -12,7 +12,7 @@ * Plugin URI: https://wordpress.org/plugins/two-factor/ * Description: Two-Factor Authentication using time-based one-time passwords, Universal 2nd Factor (FIDO U2F), email and backup verification codes. * Author: Plugin Contributors - * Version: 0.9.0 + * Version: 0.9.1 * Author URI: https://github.com/wordpress/two-factor/graphs/contributors * Network: True * Text Domain: two-factor @@ -26,7 +26,7 @@ /** * Version of the plugin. */ -define( 'TWO_FACTOR_VERSION', '0.9.0' ); +define( 'TWO_FACTOR_VERSION', '0.9.1' ); /** * Include the base class here, so that other plugins can also extend it. From e46cc9aaf14a86aed08e07c41849d5cf7f073c92 Mon Sep 17 00:00:00 2001 From: Pascal Birchler Date: Tue, 30 Apr 2024 14:51:49 +0200 Subject: [PATCH 074/130] Rely on just-in-time translation loading --- class-two-factor-core.php | 10 ---------- readme.txt | 2 +- 2 files changed, 1 insertion(+), 11 deletions(-) diff --git a/class-two-factor-core.php b/class-two-factor-core.php index 3c0df20a..5114d280 100644 --- a/class-two-factor-core.php +++ b/class-two-factor-core.php @@ -93,7 +93,6 @@ class Two_Factor_Core { * @since 0.1-dev */ public static function add_hooks( $compat ) { - add_action( 'plugins_loaded', array( __CLASS__, 'load_textdomain' ) ); add_action( 'init', array( __CLASS__, 'get_providers' ) ); add_action( 'wp_login', array( __CLASS__, 'wp_login' ), 10, 2 ); add_filter( 'wp_login_errors', array( __CLASS__, 'maybe_show_reset_password_notice' ) ); @@ -132,15 +131,6 @@ public static function add_hooks( $compat ) { $compat->init(); } - /** - * Loads the plugin's text domain. - * - * Sites on WordPress 4.6+ benefit from just-in-time loading of translations. - */ - public static function load_textdomain() { - load_plugin_textdomain( 'two-factor' ); - } - /** * For each provider, include it and then instantiate it. * diff --git a/readme.txt b/readme.txt index 5540ef68..fb9e18ba 100644 --- a/readme.txt +++ b/readme.txt @@ -1,7 +1,7 @@ === Two-Factor === Contributors: georgestephanis, valendesigns, stevenkword, extendwings, sgrant, aaroncampbell, johnbillion, stevegrunwell, netweb, kasparsd, alihusnainarshad, passoniate Tags: two factor, two step, authentication, login, totp, fido u2f, u2f, email, backup codes, 2fa, yubikey -Requires at least: 4.3 +Requires at least: 4.6 Tested up to: 6.5 Requires PHP: 5.6 Stable tag: 0.9.1 From d31431ce2b1084807d654f47f73b96d063f60589 Mon Sep 17 00:00:00 2001 From: Pascal Birchler Date: Tue, 30 Apr 2024 14:52:01 +0200 Subject: [PATCH 075/130] Properly define `Requires *` header in main plugin file --- two-factor.php | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/two-factor.php b/two-factor.php index feab321a..9be1f840 100644 --- a/two-factor.php +++ b/two-factor.php @@ -8,14 +8,16 @@ * @license GPL-2.0-or-later * * @wordpress-plugin - * Plugin Name: Two Factor - * Plugin URI: https://wordpress.org/plugins/two-factor/ - * Description: Two-Factor Authentication using time-based one-time passwords, Universal 2nd Factor (FIDO U2F), email and backup verification codes. - * Author: Plugin Contributors - * Version: 0.9.1 - * Author URI: https://github.com/wordpress/two-factor/graphs/contributors - * Network: True - * Text Domain: two-factor + * Plugin Name: Two Factor + * Plugin URI: https://wordpress.org/plugins/two-factor/ + * Description: wo-Factor Authentication using time-based one-time passwords, Universal 2nd Factor (FIDO U2F), email and backup verification codes. + * Author: Plugin Contributors + * Version: 0.9.1 + * Author URI: https://github.com/wordpress/two-factor/graphs/contributors + * Network: True + * Text Domain: two-factor + * Requires at least: 4.6 + * Requires PHP: 5.6 */ /** From 3ddec26de95e6254dd55707673452acfacdc2fd9 Mon Sep 17 00:00:00 2001 From: Jeffrey Paul Date: Wed, 8 May 2024 15:54:45 -0500 Subject: [PATCH 076/130] update readme headers Co-Authored-By: Kaspars Dambis --- readme.txt | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/readme.txt b/readme.txt index fb9e18ba..6ca7cdca 100644 --- a/readme.txt +++ b/readme.txt @@ -1,12 +1,12 @@ === Two-Factor === -Contributors: georgestephanis, valendesigns, stevenkword, extendwings, sgrant, aaroncampbell, johnbillion, stevegrunwell, netweb, kasparsd, alihusnainarshad, passoniate -Tags: two factor, two step, authentication, login, totp, fido u2f, u2f, email, backup codes, 2fa, yubikey -Requires at least: 4.6 -Tested up to: 6.5 -Requires PHP: 5.6 -Stable tag: 0.9.1 - -Enable Two-Factor Authentication using time-based one-time passwords (OTP, Google Authenticator), Universal 2nd Factor (FIDO U2F, YubiKey), email and backup verification codes. +Contributors: georgestephanis, valendesigns, stevenkword, extendwings, sgrant, aaroncampbell, johnbillion, stevegrunwell, netweb, kasparsd, alihusnainarshad, passoniate +Tags: 2fa, mfa, totp, authentication, security +Tested up to: 6.5 +Stable tag: 0.9.1 +License: GPL-2.0-or-later +License URI: https://spdx.org/licenses/GPL-2.0-or-later.html + +Enable Two-Factor Authentication using time-based one-time passwords (OTP, Google Authenticator), Universal 2nd Factor (FIDO U2F, YubiKey), email, and backup verification codes. == Description == From c0af398babc1a1052024bc354e7efc304231ef4b Mon Sep 17 00:00:00 2001 From: Jeffrey Paul Date: Wed, 8 May 2024 15:54:53 -0500 Subject: [PATCH 077/130] update plugin headers Co-Authored-By: Kaspars Dambis --- two-factor.php | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/two-factor.php b/two-factor.php index 9be1f840..ea278280 100644 --- a/two-factor.php +++ b/two-factor.php @@ -10,14 +10,16 @@ * @wordpress-plugin * Plugin Name: Two Factor * Plugin URI: https://wordpress.org/plugins/two-factor/ - * Description: wo-Factor Authentication using time-based one-time passwords, Universal 2nd Factor (FIDO U2F), email and backup verification codes. - * Author: Plugin Contributors + * Description: Two-Factor Authentication using time-based one-time passwords (TOTP), Universal 2nd Factor (FIDO U2F), email, and backup verification codes. * Version: 0.9.1 - * Author URI: https://github.com/wordpress/two-factor/graphs/contributors - * Network: True - * Text Domain: two-factor * Requires at least: 4.6 * Requires PHP: 5.6 + * Author: Plugin Contributors + * Author URI: https://github.com/wordpress/two-factor/graphs/contributors + * License: GPL-2.0-or-later + * License URI: https://spdx.org/licenses/GPL-2.0-or-later.html + * Text Domain: two-factor + * Network: True */ /** From 8eb34612b89f03420bef7ff21629f34c9beb3a69 Mon Sep 17 00:00:00 2001 From: Jeffrey Paul Date: Wed, 8 May 2024 15:58:02 -0500 Subject: [PATCH 078/130] fix license reference --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 2338cc07..99a82737 100644 --- a/package.json +++ b/package.json @@ -29,7 +29,7 @@ "url": "https://github.com/wordpress/two-factor.git" }, "author": "georgestephanis", - "license": "GPL-2.0+", + "license": "GPL-2.0-or-later", "dependencies": { "qrcode-generator": "^1.4.4" }, From c08f82a84500f73449841fb59e8257c49bb8c24f Mon Sep 17 00:00:00 2001 From: Jeffrey Paul Date: Wed, 12 Jun 2024 15:01:44 -0500 Subject: [PATCH 079/130] update short description --- readme.txt | 2 +- two-factor.php | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/readme.txt b/readme.txt index 6ca7cdca..09fa7fdc 100644 --- a/readme.txt +++ b/readme.txt @@ -6,7 +6,7 @@ Stable tag: 0.9.1 License: GPL-2.0-or-later License URI: https://spdx.org/licenses/GPL-2.0-or-later.html -Enable Two-Factor Authentication using time-based one-time passwords (OTP, Google Authenticator), Universal 2nd Factor (FIDO U2F, YubiKey), email, and backup verification codes. +Enable Two-Factor Authentication using time-based one-time passwords, Universal 2nd Factor (FIDO U2F, YubiKey), email, and backup verification codes. == Description == diff --git a/two-factor.php b/two-factor.php index ea278280..a81ee2cd 100644 --- a/two-factor.php +++ b/two-factor.php @@ -10,7 +10,7 @@ * @wordpress-plugin * Plugin Name: Two Factor * Plugin URI: https://wordpress.org/plugins/two-factor/ - * Description: Two-Factor Authentication using time-based one-time passwords (TOTP), Universal 2nd Factor (FIDO U2F), email, and backup verification codes. + * Description: Enable Two-Factor Authentication using time-based one-time passwords, Universal 2nd Factor (FIDO U2F, YubiKey), email, and backup verification codes. * Version: 0.9.1 * Requires at least: 4.6 * Requires PHP: 5.6 From 36a749fad23d1dca0e0927f1f9728a40d9ca15a3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Viktor=20Sz=C3=A9pe?= Date: Mon, 15 Jul 2024 02:42:30 +0200 Subject: [PATCH 080/130] Fix typos (#617) --- class-two-factor-core.php | 20 ++++++++++---------- providers/class-two-factor-email.php | 2 +- readme.md | 2 +- two-factor.php | 2 +- 4 files changed, 13 insertions(+), 13 deletions(-) diff --git a/class-two-factor-core.php b/class-two-factor-core.php index 5114d280..edc9ebe6 100644 --- a/class-two-factor-core.php +++ b/class-two-factor-core.php @@ -57,7 +57,7 @@ class Two_Factor_Core { const USER_PASSWORD_WAS_RESET_KEY = '_two_factor_password_was_reset'; /** - * URL query paramater used for our custom actions. + * URL query parameter used for our custom actions. * * @var string */ @@ -389,7 +389,7 @@ public static function fetch_user( $user = null ) { /** * Get all Two-Factor Auth providers that are enabled for the specified|current user. * - * @param int|WP_User $user Optonal. User ID, or WP_User object of the the user. Defaults to current user. + * @param int|WP_User $user Optional. User ID, or WP_User object of the the user. Defaults to current user. * @return array */ public static function get_enabled_providers_for_user( $user = null ) { @@ -417,7 +417,7 @@ public static function get_enabled_providers_for_user( $user = null ) { /** * Get all Two-Factor Auth providers that are both enabled and configured for the specified|current user. * - * @param int|WP_User $user Optonal. User ID, or WP_User object of the the user. Defaults to current user. + * @param int|WP_User $user Optional. User ID, or WP_User object of the the user. Defaults to current user. * @return array */ public static function get_available_providers_for_user( $user = null ) { @@ -442,7 +442,7 @@ public static function get_available_providers_for_user( $user = null ) { /** * Fetch the provider for the request based on the user preferences. * - * @param int|WP_User $user Optonal. User ID, or WP_User object of the the user. Defaults to current user. + * @param int|WP_User $user Optional. User ID, or WP_User object of the the user. Defaults to current user. * @param null|string|object $preferred_provider Optional. The name of the provider, the provider, or empty. * @return null|object The provider */ @@ -480,7 +480,7 @@ public static function get_provider_for_user( $user = null, $preferred_provider * * @since 0.1-dev * - * @param int|WP_User $user Optonal. User ID, or WP_User object of the the user. Defaults to current user. + * @param int|WP_User $user Optional. User ID, or WP_User object of the the user. Defaults to current user. * @return object|null */ public static function get_primary_provider_for_user( $user = null ) { @@ -526,7 +526,7 @@ public static function get_primary_provider_for_user( $user = null ) { * * @since 0.1-dev * - * @param int|WP_User $user Optonal. User ID, or WP_User object of the the user. Defaults to current user. + * @param int|WP_User $user Optional. User ID, or WP_User object of the the user. Defaults to current user. * @return bool */ public static function is_user_using_two_factor( $user = null ) { @@ -683,8 +683,8 @@ public static function maybe_show_last_login_failure_notice( $user ) { echo '
'; printf( _n( - 'WARNING: Your account has attempted to login without providing a valid two factor token. The last failed login occured %2$s ago. If this wasn\'t you, you should reset your password.', - 'WARNING: Your account has attempted to login %1$s times without providing a valid two factor token. The last failed login occured %2$s ago. If this wasn\'t you, you should reset your password.', + 'WARNING: Your account has attempted to login without providing a valid two factor token. The last failed login occurred %2$s ago. If this wasn\'t you, you should reset your password.', + 'WARNING: Your account has attempted to login %1$s times without providing a valid two factor token. The last failed login occurred %2$s ago. If this wasn\'t you, you should reset your password.', $failed_login_count, 'two-factor' ), @@ -1434,7 +1434,7 @@ public static function _login_form_revalidate_2fa( $nonce = '', $provider = '', * @param object $provider The Two Factor Provider. * @param WP_User $user The user being authenticated. * @param bool $is_post_request Whether the request is a POST request. - * @return false|WP_Error|true WP_Error when an error occurs, true when the user is authenticated, false if no action occured. + * @return false|WP_Error|true WP_Error when an error occurs, true when the user is authenticated, false if no action occurred. */ public static function process_provider( $provider, $user, $is_post_request ) { if ( ! $provider ) { @@ -1470,7 +1470,7 @@ public static function process_provider( $provider, $user, $is_post_request ) { // Ask the provider to verify the second factor. if ( true !== $provider->validate_authentication( $user ) ) { - // Store the last time a failed login occured. + // Store the last time a failed login occurred. update_user_meta( $user->ID, self::USER_RATE_LIMIT_KEY, time() ); // Store the number of failed login attempts. diff --git a/providers/class-two-factor-email.php b/providers/class-two-factor-email.php index c6f5881f..ac3955ce 100644 --- a/providers/class-two-factor-email.php +++ b/providers/class-two-factor-email.php @@ -287,7 +287,7 @@ public function authentication_page( $user ) { * Send the email code if missing or requested. Stop the authentication * validation if a new token has been generated and sent. * - * @param WP_USer $user WP_User object of the logged-in user. + * @param WP_User $user WP_User object of the logged-in user. * @return boolean */ public function pre_process_authentication( $user ) { diff --git a/readme.md b/readme.md index e0f8cb20..5750f907 100644 --- a/readme.md +++ b/readme.md @@ -50,7 +50,7 @@ To view the code coverage report, you can open a web browser, go to `File > Open ## Deployments -Deployments [to WP.org plugin repository](https://wordpress.org/plugins/two-factor/) are handled automatically by the GitHub action [.github/workflows/deploy.yml](.github/workflows/deploy.yml). All merges to the `master` branch are commited to the [`trunk` directory](https://plugins.trac.wordpress.org/browser/two-factor/trunk) while all [Git tags](https://github.com/WordPress/two-factor/tags) are pushed as versioned releases [under the `tags` directory](https://plugins.trac.wordpress.org/browser/two-factor/tags). +Deployments [to WP.org plugin repository](https://wordpress.org/plugins/two-factor/) are handled automatically by the GitHub action [.github/workflows/deploy.yml](.github/workflows/deploy.yml). All merges to the `master` branch are committed to the [`trunk` directory](https://plugins.trac.wordpress.org/browser/two-factor/trunk) while all [Git tags](https://github.com/WordPress/two-factor/tags) are pushed as versioned releases [under the `tags` directory](https://plugins.trac.wordpress.org/browser/two-factor/tags). ## Known Issues diff --git a/two-factor.php b/two-factor.php index a81ee2cd..3f3754ac 100644 --- a/two-factor.php +++ b/two-factor.php @@ -43,7 +43,7 @@ require_once TWO_FACTOR_DIR . 'class-two-factor-core.php'; /** - * A compatability layer for some of the most-used plugins out there. + * A compatibility layer for some of the most-used plugins out there. */ require_once TWO_FACTOR_DIR . 'class-two-factor-compat.php'; From 44f058bb1623d2e6c890f91725e42261c02456d1 Mon Sep 17 00:00:00 2001 From: Mehul Gohil Date: Mon, 15 Jul 2024 06:13:02 +0530 Subject: [PATCH 081/130] Bump tested up to version to WP 6.6 (#616) --- readme.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/readme.txt b/readme.txt index 09fa7fdc..f4baaffa 100644 --- a/readme.txt +++ b/readme.txt @@ -1,7 +1,7 @@ === Two-Factor === Contributors: georgestephanis, valendesigns, stevenkword, extendwings, sgrant, aaroncampbell, johnbillion, stevegrunwell, netweb, kasparsd, alihusnainarshad, passoniate Tags: 2fa, mfa, totp, authentication, security -Tested up to: 6.5 +Tested up to: 6.6 Stable tag: 0.9.1 License: GPL-2.0-or-later License URI: https://spdx.org/licenses/GPL-2.0-or-later.html From 668ae87ac5228930e643f09cfa49bacc12ffa056 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Viktor=20Sz=C3=A9pe?= Date: Mon, 15 Jul 2024 03:11:32 +0000 Subject: [PATCH 082/130] Fix errors reported by PHPStan --- class-two-factor-core.php | 1 + providers/class-two-factor-backup-codes.php | 2 +- providers/class-two-factor-dummy.php | 2 +- providers/class-two-factor-email.php | 2 +- providers/class-two-factor-fido-u2f-admin.php | 4 ++-- providers/class-two-factor-fido-u2f.php | 2 +- providers/class-two-factor-totp.php | 6 +++--- 7 files changed, 10 insertions(+), 9 deletions(-) diff --git a/class-two-factor-core.php b/class-two-factor-core.php index 5114d280..c6f28145 100644 --- a/class-two-factor-core.php +++ b/class-two-factor-core.php @@ -1161,6 +1161,7 @@ public static function current_user_can_update_two_factor_options( $context = 'd * Return a falsey value (false, 0) if you wish to never require revalidation. * * @param int $two_factor_revalidate_time The grace time between last validation time and when it'll be accepted. Default 10 minutes (in seconds). + * @param int $user_id The user ID. * @param string $context The context in use, 'display' or 'save'. Save has twice the grace time. */ $two_factor_revalidate_time = apply_filters( 'two_factor_revalidate_time', 10 * MINUTE_IN_SECONDS, $user_id, $context ); diff --git a/providers/class-two-factor-backup-codes.php b/providers/class-two-factor-backup-codes.php index c53a8448..6b017de4 100644 --- a/providers/class-two-factor-backup-codes.php +++ b/providers/class-two-factor-backup-codes.php @@ -40,7 +40,7 @@ protected function __construct() { add_action( 'two_factor_user_options_' . __CLASS__, array( $this, 'user_options' ) ); add_action( 'admin_notices', array( $this, 'admin_notices' ) ); - return parent::__construct(); + parent::__construct(); } /** diff --git a/providers/class-two-factor-dummy.php b/providers/class-two-factor-dummy.php index 34c6b57d..cc9a6119 100644 --- a/providers/class-two-factor-dummy.php +++ b/providers/class-two-factor-dummy.php @@ -21,7 +21,7 @@ class Two_Factor_Dummy extends Two_Factor_Provider { */ protected function __construct() { add_action( 'two_factor_user_options_' . __CLASS__, array( $this, 'user_options' ) ); - return parent::__construct(); + parent::__construct(); } /** diff --git a/providers/class-two-factor-email.php b/providers/class-two-factor-email.php index c6f5881f..b21f1391 100644 --- a/providers/class-two-factor-email.php +++ b/providers/class-two-factor-email.php @@ -42,7 +42,7 @@ class Two_Factor_Email extends Two_Factor_Provider { */ protected function __construct() { add_action( 'two_factor_user_options_' . __CLASS__, array( $this, 'user_options' ) ); - return parent::__construct(); + parent::__construct(); } /** diff --git a/providers/class-two-factor-fido-u2f-admin.php b/providers/class-two-factor-fido-u2f-admin.php index 23530370..d5412089 100644 --- a/providers/class-two-factor-fido-u2f-admin.php +++ b/providers/class-two-factor-fido-u2f-admin.php @@ -230,7 +230,7 @@ public static function show_user_profile( $user ) { * @static * * @param int $user_id User ID. - * @return false + * @return void|never */ public static function catch_submission( $user_id ) { if ( ! empty( $_REQUEST['do_new_security_key'] ) ) { @@ -243,7 +243,7 @@ public static function catch_submission( $user_id ) { Two_Factor_FIDO_U2F::add_security_key( $user_id, $reg ); } catch ( Exception $e ) { - return false; + return; } delete_user_meta( $user_id, self::REGISTER_DATA_USER_META_KEY ); diff --git a/providers/class-two-factor-fido-u2f.php b/providers/class-two-factor-fido-u2f.php index 52d28f57..f775224c 100644 --- a/providers/class-two-factor-fido-u2f.php +++ b/providers/class-two-factor-fido-u2f.php @@ -65,7 +65,7 @@ protected function __construct() { add_action( 'two_factor_user_options_' . __CLASS__, array( $this, 'user_options' ) ); - return parent::__construct(); + parent::__construct(); } /** diff --git a/providers/class-two-factor-totp.php b/providers/class-two-factor-totp.php index 4b075495..a90e4a8f 100644 --- a/providers/class-two-factor-totp.php +++ b/providers/class-two-factor-totp.php @@ -48,7 +48,7 @@ protected function __construct() { add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_assets' ) ); add_action( 'two_factor_user_options_' . __CLASS__, array( $this, 'user_two_factor_options' ) ); - return parent::__construct(); + parent::__construct(); } /** @@ -260,13 +260,13 @@ public static function generate_qr_code_url( $user, $secret_key ) { * Display TOTP options on the user settings page. * * @param WP_User $user The current user being edited. - * @return false + * @return void * * @codeCoverageIgnore */ public function user_two_factor_options( $user ) { if ( ! isset( $user->ID ) ) { - return false; + return; } $key = $this->get_user_totp_key( $user->ID ); From 9ac7c2d52e2ef7281947b3ed655faa6ac542ba36 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Viktor=20Sz=C3=A9pe?= Date: Mon, 15 Jul 2024 03:28:58 +0000 Subject: [PATCH 083/130] More error fixes on level 2 --- providers/class-two-factor-fido-u2f.php | 4 ++-- providers/class-two-factor-totp.php | 8 ++++---- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/providers/class-two-factor-fido-u2f.php b/providers/class-two-factor-fido-u2f.php index f775224c..c90cf6b3 100644 --- a/providers/class-two-factor-fido-u2f.php +++ b/providers/class-two-factor-fido-u2f.php @@ -143,7 +143,7 @@ public static function enqueue_scripts() { * @since 0.1-dev * * @param WP_User $user WP_User object of the logged-in user. - * @return null + * @return void */ public function authentication_page( $user ) { require_once ABSPATH . '/wp-admin/includes/template.php'; @@ -165,7 +165,7 @@ public function authentication_page( $user ) { ?>

Date: Tue, 30 Jul 2024 14:15:15 +1000 Subject: [PATCH 084/130] Fire an action when a user revalidates their 2FA session. (#620) --- class-two-factor-core.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/class-two-factor-core.php b/class-two-factor-core.php index edc9ebe6..c5864340 100644 --- a/class-two-factor-core.php +++ b/class-two-factor-core.php @@ -1404,6 +1404,8 @@ public static function _login_form_revalidate_2fa( $nonce = '', $provider = '', 'two-factor-login' => time(), ) ); + do_action( 'two_factor_user_revalidated', $user, $provider ); + // Must be global because that's how login_header() uses it. global $interim_login; $interim_login = isset( $_REQUEST['interim-login'] ); // phpcs:ignore WordPress.WP.GlobalVariablesOverride.Prohibited,WordPress.Security.NonceVerification.Recommended From e0b7ffd55fbbe4dd599341457b32184872a83086 Mon Sep 17 00:00:00 2001 From: Dion Hulse Date: Thu, 22 Aug 2024 12:56:30 +1000 Subject: [PATCH 085/130] Bump minimum WP to 6.3, minimum PHP to 7.2. (#625) * Bump minimum WP to 6.3, minimum PHP to 7.2.24. * Composer: Update minimum PHP requirement. --- composer.json | 4 ++-- two-factor.php | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/composer.json b/composer.json index 0bc125d7..80a3838b 100644 --- a/composer.json +++ b/composer.json @@ -25,7 +25,7 @@ "minimum-stability": "dev", "prefer-stable" : true, "require": { - "php": ">=5.6" + "php": ">=7.2.24|^8" }, "require-dev": { "automattic/vipwpcs": "^3.0", @@ -43,7 +43,7 @@ }, "scripts": { "lint": "phpcs", - "lint-compat": "phpcs -p --standard=PHPCompatibilityWP --runtime-set testVersion 5.6- --extensions=php --ignore='tests/,dist/,includes/Yubico/,vendor/,wordpress/,node_modules/' .", + "lint-compat": "phpcs -p --standard=PHPCompatibilityWP --runtime-set testVersion 7.2- --extensions=php --ignore='tests/,dist/,includes/Yubico/,vendor/,wordpress/,node_modules/' .", "test": "phpunit", "test:watch": [ "Composer\\Config::disableProcessTimeout", diff --git a/two-factor.php b/two-factor.php index 3f3754ac..380ad4c2 100644 --- a/two-factor.php +++ b/two-factor.php @@ -12,8 +12,8 @@ * Plugin URI: https://wordpress.org/plugins/two-factor/ * Description: Enable Two-Factor Authentication using time-based one-time passwords, Universal 2nd Factor (FIDO U2F, YubiKey), email, and backup verification codes. * Version: 0.9.1 - * Requires at least: 4.6 - * Requires PHP: 5.6 + * Requires at least: 6.3 + * Requires PHP: 7.2 * Author: Plugin Contributors * Author URI: https://github.com/wordpress/two-factor/graphs/contributors * License: GPL-2.0-or-later From 3a0b87b9189b5a85a30a4b446bb48e4fcf295a4a Mon Sep 17 00:00:00 2001 From: Dion Hulse Date: Thu, 22 Aug 2024 13:09:35 +1000 Subject: [PATCH 086/130] Remove old grunt deploy related code. See #543 (#627) --- Gruntfile.js | 33 ---------- package-lock.json | 153 ++-------------------------------------------- package.json | 2 - 3 files changed, 6 insertions(+), 182 deletions(-) diff --git a/Gruntfile.js b/Gruntfile.js index e60363bf..4466b975 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -11,16 +11,6 @@ module.exports = function( grunt ) { invert: true, } ); - /** - * Check if CLI input appears to indicate a truthy value. - * - * @param {string} input Value to check. - * @return {boolean} If value appears to be truthy. - */ - function isTruthy( input ) { - return ( '1' === input || 'true' === input ); - } - grunt.initConfig( { pkg: grunt.file.readJSON( 'package.json' ), @@ -47,23 +37,6 @@ module.exports = function( grunt ) { ], }, }, - - wp_deploy: { - options: { - plugin_slug: 'two-factor', - build_dir: '<%= dist_dir %>', - assets_dir: 'assets', - }, - wporg: { - options: { - skip_confirmation: isTruthy( process.env.DEPLOY_SKIP_CONFIRMATION ), - svn_user: process.env.DEPLOY_SVN_USERNAME, - deploy_tag: isTruthy( process.env.DEPLOY_TAG ), - deploy_trunk: isTruthy( process.env.DEPLOY_TRUNK ), - assets_dir: ( isTruthy( process.env.DEPLOY_TAG ) || isTruthy( process.env.DEPLOY_TRUNK ) ) ? 'assets' : null, - }, - }, - }, } ); grunt.registerTask( @@ -73,10 +46,4 @@ module.exports = function( grunt ) { ] ); - grunt.registerTask( - 'deploy', [ - 'build', - 'wp_deploy', - ] - ); }; diff --git a/package-lock.json b/package-lock.json index 832d5976..fd439744 100644 --- a/package-lock.json +++ b/package-lock.json @@ -7983,12 +7983,6 @@ "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", "dev": true }, - "prettier": { - "version": "npm:wp-prettier@3.0.3", - "resolved": "https://registry.npmjs.org/wp-prettier/-/wp-prettier-3.0.3.tgz", - "integrity": "sha512-X4UlrxDTH8oom9qXlcjnydsjAOD2BmB6yFmvS4Z2zdTzqqpRWb+fbqrH412+l+OUXmbzJlSXjlMFYPgYG12IAA==", - "dev": true - }, "react": { "version": "18.2.0", "resolved": "https://registry.npmjs.org/react/-/react-18.2.0.tgz", @@ -12322,147 +12316,6 @@ } } }, - "grunt-wp-deploy": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/grunt-wp-deploy/-/grunt-wp-deploy-2.1.2.tgz", - "integrity": "sha512-n+x1WBCmLHF5P1aDY29CoF8jdLHnRKX4VDIZhiM0sbZ58vSBTFedajcZrP1CEqJ7suiv0/o/c6xmR1BiPEzaQg==", - "dev": true, - "requires": { - "inquirer": "^6.0.0" - }, - "dependencies": { - "ansi-escapes": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz", - "integrity": "sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==", - "dev": true - }, - "ansi-regex": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", - "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", - "dev": true - }, - "cli-cursor": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", - "integrity": "sha512-8lgKz8LmCRYZZQDpRyT2m5rKJ08TnU4tR9FFFW2rxpxR1FzWi4PQ/NfyODchAatHaUgnSPVcx/R5w6NuTBzFiw==", - "dev": true, - "requires": { - "restore-cursor": "^2.0.0" - } - }, - "cli-width": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.1.tgz", - "integrity": "sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw==", - "dev": true - }, - "figures": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", - "integrity": "sha512-Oa2M9atig69ZkfwiApY8F2Yy+tzMbazyvqv21R0NsSC8floSOC09BbT1ITWAdoMGQvJ/aZnR1KMwdx9tvHnTNA==", - "dev": true, - "requires": { - "escape-string-regexp": "^1.0.5" - } - }, - "inquirer": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-6.5.2.tgz", - "integrity": "sha512-cntlB5ghuB0iuO65Ovoi8ogLHiWGs/5yNrtUcKjFhSSiVeAIVpD7koaSU9RM8mpXw5YDi9RdYXGQMaOURB7ycQ==", - "dev": true, - "requires": { - "ansi-escapes": "^3.2.0", - "chalk": "^2.4.2", - "cli-cursor": "^2.1.0", - "cli-width": "^2.0.0", - "external-editor": "^3.0.3", - "figures": "^2.0.0", - "lodash": "^4.17.12", - "mute-stream": "0.0.7", - "run-async": "^2.2.0", - "rxjs": "^6.4.0", - "string-width": "^2.1.0", - "strip-ansi": "^5.1.0", - "through": "^2.3.6" - } - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==", - "dev": true - }, - "mimic-fn": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", - "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", - "dev": true - }, - "mute-stream": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", - "integrity": "sha512-r65nCZhrbXXb6dXOACihYApHw2Q6pV0M3V0PSxd74N0+D8nzAdEAITq2oAjA1jVnKI+tGvEBUpqiMh0+rW6zDQ==", - "dev": true - }, - "onetime": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", - "integrity": "sha512-oyyPpiMaKARvvcgip+JV+7zci5L8D1W9RZIz2l1o08AM3pfspitVWnPt3mzHcBPp12oYMTy0pqrFs/C+m3EwsQ==", - "dev": true, - "requires": { - "mimic-fn": "^1.0.0" - } - }, - "restore-cursor": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", - "integrity": "sha512-6IzJLuGi4+R14vwagDHX+JrXmPVtPpn4mffDJ1UdR7/Edm87fl6yi8mMBIVvFtJaNTUvjughmW4hwLhRG7gC1Q==", - "dev": true, - "requires": { - "onetime": "^2.0.0", - "signal-exit": "^3.0.2" - } - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.1.tgz", - "integrity": "sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==", - "dev": true - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow==", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - } - } - } - }, "gzip-size": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-6.0.0.tgz", @@ -17689,6 +17542,12 @@ "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", "dev": true }, + "prettier": { + "version": "npm:wp-prettier@3.0.3", + "resolved": "https://registry.npmjs.org/wp-prettier/-/wp-prettier-3.0.3.tgz", + "integrity": "sha512-X4UlrxDTH8oom9qXlcjnydsjAOD2BmB6yFmvS4Z2zdTzqqpRWb+fbqrH412+l+OUXmbzJlSXjlMFYPgYG12IAA==", + "dev": true + }, "prettier-linter-helpers": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz", diff --git a/package.json b/package.json index 99a82737..15a3b41f 100644 --- a/package.json +++ b/package.json @@ -9,7 +9,6 @@ "homepage": "https://github.com/wordpress/two-factor", "scripts": { "env": "wp-env", - "deploy": "grunt deploy", "build": "grunt build", "lint": "npm-run-all lint:*", "lint:php": "composer lint", @@ -41,7 +40,6 @@ "grunt-cli": "^1.4.3", "grunt-contrib-clean": "^2.0.1", "grunt-contrib-copy": "^1.0.0", - "grunt-wp-deploy": "^2.1.2", "load-grunt-tasks": "^5.1.0", "npm-run-all": "^4.1.5", "parse-gitignore": "^0.5.1" From 53042aa611a8e59d99c97011645f57fb5eeecc07 Mon Sep 17 00:00:00 2001 From: Dion Hulse Date: Thu, 22 Aug 2024 13:18:42 +1000 Subject: [PATCH 087/130] Update how GitHub actions & Unit Testing runs. (#624) * Use composer within the cli container. * Update wp-env. * Update the node requirement to 20. * Try running phpunit via the container. * Import tests_add_filter() via the same method as Gutenberg: https://github.com/WordPress/gutenberg/blob/9c9f6535cdc3cd57a3b8583ea6292a2c90552ab3/phpunit/bootstrap.php#L41 * Split test into multiple jobs Fixes #523 * Reverse order of PHP's * Run tests on the tests container, such as not to affect the WordPress env * Remove reference to /wordpress/ * Retry the wp-env bootup for unit testing, as this appears to fail sporadically * Update github actions to newer node20 versions. --- .distignore | 1 - .github/workflows/test.yml | 159 +- .gitignore | 1 - .nvmrc | 2 +- .wp-env.json | 14 +- Gruntfile.js | 1 - composer.json | 17 +- composer.lock | 1330 +- docker-compose.yml | 11 - package-lock.json | 28450 ++++++++++++++++++----------------- package.json | 16 +- phpunit-watcher.yml.dist | 1 - phpunit.xml.dist | 3 - readme.md | 20 +- tests/bootstrap.php | 34 +- tests/wp-config.php | 34 - 16 files changed, 14858 insertions(+), 15236 deletions(-) delete mode 100644 docker-compose.yml delete mode 100644 tests/wp-config.php diff --git a/.distignore b/.distignore index 4df6c478..ffb1e0e4 100644 --- a/.distignore +++ b/.distignore @@ -2,7 +2,6 @@ /node_modules/ /tests/ /vendor/ -/wordpress/ # Files .* diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 31327e92..c20d222e 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -2,47 +2,142 @@ name: Test on: [push, pull_request] +# Cancels all previous workflow runs for pull requests that have not completed. +concurrency: + # The concurrency group contains the workflow name and the branch name for pull requests + # or the commit hash for any other events. + group: ${{ github.workflow }}-${{ github.event_name == 'pull_request' && github.head_ref || github.sha }} + cancel-in-progress: true + jobs: + lint-js-css: + name: Lint JS & CSS + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Setup Node + uses: actions/setup-node@v4 + with: + cache: 'npm' + node-version-file: '.nvmrc' + + - name: Install NPM dependencies + run: npm install + + - name: Lint JS + run: npm run lint:js + + - name: Lint CSS + run: npm run lint:css + + lint-php-and-compatibility: + name: Lint PHP & PHP Compatibility checks. + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Setup PHP and Composer + uses: shivammathur/setup-php@v2 + with: + php-version: '8.2' + + - name: Setup Node + uses: actions/setup-node@v4 + with: + cache: 'npm' + node-version-file: '.nvmrc' + + - name: Install NPM dependencies + run: npm install + + - name: Lint PHP + run: npm run lint:php || true # Ignore for now. + + - name: Lint PHP Compatibility + run: composer lint-compat + + test-php: + name: Test PHP ${{ matrix.php }} ${{ matrix.wp != '' && format( ' (WP {0}) ', matrix.wp ) || '' }} + runs-on: ubuntu-latest + strategy: + matrix: + php: + - '8.3' + - '8.2' + - '8.1' + - '8.0' + - '7.4' + - '7.3' + - '7.2' + wp: + - latest + - trunk + - '6.3' + env: + WP_ENV_PHP_VERSION: ${{ matrix.php }} + WP_ENV_CORE: ${{ matrix.wp == 'trunk' && 'WordPress/WordPress' || format( 'https://wordpress.org/wordpress-{0}.zip', matrix.wp ) }} + + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Setup PHP + uses: shivammathur/setup-php@v2 + with: + php-version: '8.2' - lint: - name: Lint and Test - runs-on: ubuntu-20.04 - steps: - - name: Checkout - uses: actions/checkout@v3 + - name: Setup Node + uses: actions/setup-node@v4 + with: + cache: 'npm' + node-version-file: '.nvmrc' - - name: Setup Node - uses: actions/setup-node@v3 - with: - cache: 'npm' - node-version-file: '.nvmrc' + - name: Install NPM dependencies + run: npm install - - name: Setup PHP and Composer - uses: shivammathur/setup-php@v2 - with: - php-version: '7.4' - tools: composer:v2 + - name: Start the Docker testing environment + uses: nick-fields/retry@v3 + with: + timeout_minutes: 10 + max_attempts: 3 + command: npm run env start - - name: Install NPM dependencies - run: npm install + - name: Composer install + run: | + rm composer.lock || true # We need to install fresh. + npm run composer install - - name: Lint JS - run: npm run lint:js + - name: Versions + run: | + npm run env run cli php -- -v + npm run env run cli wp core version - - name: Lint CSS - run: npm run lint:css + - name: Test + run: npm run test - - name: Lint PHP - run: npm run lint:php || true # Ignore for now. + build: + name: Build + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 - - name: Lint PHP Compatibility - run: composer lint-compat + - name: Setup PHP + uses: shivammathur/setup-php@v2 + with: + php-version: '8.2' - - name: Start the Docker testing environment - run: npm run env start --xdebug=coverage + - name: Setup Node + uses: actions/setup-node@v4 + with: + cache: 'npm' + node-version-file: '.nvmrc' - - name: Test - run: npm run test + - name: Install NPM dependencies + run: npm install - - name: Build - run: npm run build + - name: Build + run: npm run build diff --git a/.gitignore b/.gitignore index a58b0b78..6430f0ee 100644 --- a/.gitignore +++ b/.gitignore @@ -4,5 +4,4 @@ /vendor/ /dist/ /tests/logs/ -/wordpress/ .phpunit.result.cache diff --git a/.nvmrc b/.nvmrc index b6a7d89c..209e3ef4 100644 --- a/.nvmrc +++ b/.nvmrc @@ -1 +1 @@ -16 +20 diff --git a/.wp-env.json b/.wp-env.json index 0ee66b30..8e06478a 100644 --- a/.wp-env.json +++ b/.wp-env.json @@ -1,5 +1,15 @@ { - "core": "./wordpress", "phpVersion": "7.4", - "plugins": [ "." ] + "plugins": [ "." ], + "env": { + "tests": { + "config": { + "WP_DEBUG": true, + "WP_TESTS_EMAIL": "admin@example.org", + "WP_TESTS_DOMAIN": "example.org", + "WP_SITEURL": "https://example.org", + "WP_HOME": "https://example.org" + } + } + } } diff --git a/Gruntfile.js b/Gruntfile.js index 4466b975..9a58b436 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -45,5 +45,4 @@ module.exports = function( grunt ) { 'copy', ] ); - }; diff --git a/composer.json b/composer.json index 80a3838b..fe2389c7 100644 --- a/composer.json +++ b/composer.json @@ -12,16 +12,12 @@ "config": { "sort-packages": true, "platform": { - "php": "7.4" + "php": "7.2.24" }, "allow-plugins": { - "dealerdirect/phpcodesniffer-composer-installer": true, - "roots/wordpress-core-installer": true + "dealerdirect/phpcodesniffer-composer-installer": true } }, - "extra": { - "wordpress-install-dir": "wordpress" - }, "minimum-stability": "dev", "prefer-stable" : true, "require": { @@ -33,18 +29,15 @@ "php-coveralls/php-coveralls": "^2.5", "phpcompatibility/php-compatibility": "10.x-dev as 9.99.99", "phpcompatibility/phpcompatibility-wp": "^2.1", - "phpunit/phpunit": "^9.5", - "roots/wordpress-core-installer": "^1.100", - "roots/wordpress-full": "~6.0", + "phpunit/phpunit": "^8.5|^9.6", "spatie/phpunit-watcher": "^1.23", "wp-coding-standards/wpcs": "^3.1", - "wp-phpunit/wp-phpunit": "~6.0", "yoast/phpunit-polyfills": "^2.0" }, "scripts": { "lint": "phpcs", - "lint-compat": "phpcs -p --standard=PHPCompatibilityWP --runtime-set testVersion 7.2- --extensions=php --ignore='tests/,dist/,includes/Yubico/,vendor/,wordpress/,node_modules/' .", - "test": "phpunit", + "lint-compat": "phpcs -p --standard=PHPCompatibilityWP --runtime-set testVersion 7.2- --extensions=php --ignore='tests/,dist/,includes/Yubico/,vendor/,node_modules/' .", + "test": "vendor/bin/phpunit", "test:watch": [ "Composer\\Config::disableProcessTimeout", "phpunit-watcher watch --no-coverage" diff --git a/composer.lock b/composer.lock index f1e381d5..a4046e68 100644 --- a/composer.lock +++ b/composer.lock @@ -4,37 +4,37 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "2073ffcfb7bca0d0ffa0d51ea84f5e11", + "content-hash": "a1a44a4d12c7db29c2010274f4d2f36f", "packages": [], "packages-dev": [ { "name": "automattic/vipwpcs", - "version": "3.0.0", + "version": "3.0.1", "source": { "type": "git", "url": "https://github.com/Automattic/VIP-Coding-Standards.git", - "reference": "1b8960ebff9ea3eb482258a906ece4d1ee1e25fd" + "reference": "2b1d206d81b74ed999023cffd924f862ff2753c8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Automattic/VIP-Coding-Standards/zipball/1b8960ebff9ea3eb482258a906ece4d1ee1e25fd", - "reference": "1b8960ebff9ea3eb482258a906ece4d1ee1e25fd", + "url": "https://api.github.com/repos/Automattic/VIP-Coding-Standards/zipball/2b1d206d81b74ed999023cffd924f862ff2753c8", + "reference": "2b1d206d81b74ed999023cffd924f862ff2753c8", "shasum": "" }, "require": { "php": ">=5.4", - "phpcsstandards/phpcsextra": "^1.1.0", - "phpcsstandards/phpcsutils": "^1.0.8", - "sirbrillig/phpcs-variable-analysis": "^2.11.17", - "squizlabs/php_codesniffer": "^3.7.2", - "wp-coding-standards/wpcs": "^3.0" + "phpcsstandards/phpcsextra": "^1.2.1", + "phpcsstandards/phpcsutils": "^1.0.11", + "sirbrillig/phpcs-variable-analysis": "^2.11.18", + "squizlabs/php_codesniffer": "^3.9.2", + "wp-coding-standards/wpcs": "^3.1.0" }, "require-dev": { "php-parallel-lint/php-console-highlighter": "^1.0.0", "php-parallel-lint/php-parallel-lint": "^1.3.2", "phpcompatibility/php-compatibility": "^9", "phpcsstandards/phpcsdevtools": "^1.0", - "phpunit/phpunit": "^4 || ^5 || ^6 || ^7" + "phpunit/phpunit": "^4 || ^5 || ^6 || ^7 || ^8 || ^9" }, "type": "phpcodesniffer-standard", "notification-url": "https://packagist.org/downloads/", @@ -59,7 +59,7 @@ "source": "https://github.com/Automattic/VIP-Coding-Standards", "wiki": "https://github.com/Automattic/VIP-Coding-Standards/wiki" }, - "time": "2023-09-05T11:01:05+00:00" + "time": "2024-05-10T20:31:09+00:00" }, { "name": "clue/stdio-react", @@ -470,22 +470,22 @@ }, { "name": "guzzlehttp/guzzle", - "version": "7.8.1", + "version": "7.9.2", "source": { "type": "git", "url": "https://github.com/guzzle/guzzle.git", - "reference": "41042bc7ab002487b876a0683fc8dce04ddce104" + "reference": "d281ed313b989f213357e3be1a179f02196ac99b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/guzzle/zipball/41042bc7ab002487b876a0683fc8dce04ddce104", - "reference": "41042bc7ab002487b876a0683fc8dce04ddce104", + "url": "https://api.github.com/repos/guzzle/guzzle/zipball/d281ed313b989f213357e3be1a179f02196ac99b", + "reference": "d281ed313b989f213357e3be1a179f02196ac99b", "shasum": "" }, "require": { "ext-json": "*", - "guzzlehttp/promises": "^1.5.3 || ^2.0.1", - "guzzlehttp/psr7": "^1.9.1 || ^2.5.1", + "guzzlehttp/promises": "^1.5.3 || ^2.0.3", + "guzzlehttp/psr7": "^2.7.0", "php": "^7.2.5 || ^8.0", "psr/http-client": "^1.0", "symfony/deprecation-contracts": "^2.2 || ^3.0" @@ -496,9 +496,9 @@ "require-dev": { "bamarni/composer-bin-plugin": "^1.8.2", "ext-curl": "*", - "php-http/client-integration-tests": "dev-master#2c025848417c1135031fdf9c728ee53d0a7ceaee as 3.0.999", + "guzzle/client-integration-tests": "3.0.2", "php-http/message-factory": "^1.1", - "phpunit/phpunit": "^8.5.36 || ^9.6.15", + "phpunit/phpunit": "^8.5.39 || ^9.6.20", "psr/log": "^1.1 || ^2.0 || ^3.0" }, "suggest": { @@ -576,7 +576,7 @@ ], "support": { "issues": "https://github.com/guzzle/guzzle/issues", - "source": "https://github.com/guzzle/guzzle/tree/7.8.1" + "source": "https://github.com/guzzle/guzzle/tree/7.9.2" }, "funding": [ { @@ -592,20 +592,20 @@ "type": "tidelift" } ], - "time": "2023-12-03T20:35:24+00:00" + "time": "2024-07-24T11:22:20+00:00" }, { "name": "guzzlehttp/promises", - "version": "2.0.2", + "version": "2.0.3", "source": { "type": "git", "url": "https://github.com/guzzle/promises.git", - "reference": "bbff78d96034045e58e13dedd6ad91b5d1253223" + "reference": "6ea8dd08867a2a42619d65c3deb2c0fcbf81c8f8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/promises/zipball/bbff78d96034045e58e13dedd6ad91b5d1253223", - "reference": "bbff78d96034045e58e13dedd6ad91b5d1253223", + "url": "https://api.github.com/repos/guzzle/promises/zipball/6ea8dd08867a2a42619d65c3deb2c0fcbf81c8f8", + "reference": "6ea8dd08867a2a42619d65c3deb2c0fcbf81c8f8", "shasum": "" }, "require": { @@ -613,7 +613,7 @@ }, "require-dev": { "bamarni/composer-bin-plugin": "^1.8.2", - "phpunit/phpunit": "^8.5.36 || ^9.6.15" + "phpunit/phpunit": "^8.5.39 || ^9.6.20" }, "type": "library", "extra": { @@ -659,7 +659,7 @@ ], "support": { "issues": "https://github.com/guzzle/promises/issues", - "source": "https://github.com/guzzle/promises/tree/2.0.2" + "source": "https://github.com/guzzle/promises/tree/2.0.3" }, "funding": [ { @@ -675,20 +675,20 @@ "type": "tidelift" } ], - "time": "2023-12-03T20:19:20+00:00" + "time": "2024-07-18T10:29:17+00:00" }, { "name": "guzzlehttp/psr7", - "version": "2.6.2", + "version": "2.7.0", "source": { "type": "git", "url": "https://github.com/guzzle/psr7.git", - "reference": "45b30f99ac27b5ca93cb4831afe16285f57b8221" + "reference": "a70f5c95fb43bc83f07c9c948baa0dc1829bf201" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/psr7/zipball/45b30f99ac27b5ca93cb4831afe16285f57b8221", - "reference": "45b30f99ac27b5ca93cb4831afe16285f57b8221", + "url": "https://api.github.com/repos/guzzle/psr7/zipball/a70f5c95fb43bc83f07c9c948baa0dc1829bf201", + "reference": "a70f5c95fb43bc83f07c9c948baa0dc1829bf201", "shasum": "" }, "require": { @@ -703,8 +703,8 @@ }, "require-dev": { "bamarni/composer-bin-plugin": "^1.8.2", - "http-interop/http-factory-tests": "^0.9", - "phpunit/phpunit": "^8.5.36 || ^9.6.15" + "http-interop/http-factory-tests": "0.9.0", + "phpunit/phpunit": "^8.5.39 || ^9.6.20" }, "suggest": { "laminas/laminas-httphandlerrunner": "Emit PSR-7 responses" @@ -775,7 +775,7 @@ ], "support": { "issues": "https://github.com/guzzle/psr7/issues", - "source": "https://github.com/guzzle/psr7/tree/2.6.2" + "source": "https://github.com/guzzle/psr7/tree/2.7.0" }, "funding": [ { @@ -791,35 +791,40 @@ "type": "tidelift" } ], - "time": "2023-12-03T20:05:35+00:00" + "time": "2024-07-18T11:15:46+00:00" }, { "name": "jolicode/jolinotif", - "version": "v2.4.0", + "version": "v2.3.0", "source": { "type": "git", "url": "https://github.com/jolicode/JoliNotif.git", - "reference": "a15bfc0d5aef432f150385924ede4e099643edb7" + "reference": "9cca717bbc47aa2ffeca51d77daa13b824a489ee" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/jolicode/JoliNotif/zipball/a15bfc0d5aef432f150385924ede4e099643edb7", - "reference": "a15bfc0d5aef432f150385924ede4e099643edb7", + "url": "https://api.github.com/repos/jolicode/JoliNotif/zipball/9cca717bbc47aa2ffeca51d77daa13b824a489ee", + "reference": "9cca717bbc47aa2ffeca51d77daa13b824a489ee", "shasum": "" }, "require": { - "php": ">=7.4", - "symfony/process": "^4.0|^5.0|^6.0" + "php": ">=7.0", + "symfony/process": "^3.3|^4.0|^5.0" }, "require-dev": { - "friendsofphp/php-cs-fixer": "^3.0", - "symfony/finder": "^5.0", - "symfony/phpunit-bridge": "^5.0" + "friendsofphp/php-cs-fixer": "^2.0", + "symfony/finder": "^3.3|^4.0|^5.0", + "symfony/phpunit-bridge": "^3.4.26|^4.0|^5.0" }, "bin": [ "jolinotif" ], "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.3.x-dev" + } + }, "autoload": { "psr-4": { "Joli\\JoliNotif\\": "src/" @@ -845,7 +850,7 @@ ], "support": { "issues": "https://github.com/jolicode/JoliNotif/issues", - "source": "https://github.com/jolicode/JoliNotif/tree/v2.4.0" + "source": "https://github.com/jolicode/JoliNotif/tree/v2.3.0" }, "funding": [ { @@ -853,20 +858,20 @@ "type": "tidelift" } ], - "time": "2021-12-01T16:20:42+00:00" + "time": "2021-03-07T12:30:00+00:00" }, { "name": "myclabs/deep-copy", - "version": "1.11.1", + "version": "1.12.0", "source": { "type": "git", "url": "https://github.com/myclabs/DeepCopy.git", - "reference": "7284c22080590fb39f2ffa3e9057f10a4ddd0e0c" + "reference": "3a6b9a42cd8f8771bd4295d13e1423fa7f3d942c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/7284c22080590fb39f2ffa3e9057f10a4ddd0e0c", - "reference": "7284c22080590fb39f2ffa3e9057f10a4ddd0e0c", + "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/3a6b9a42cd8f8771bd4295d13e1423fa7f3d942c", + "reference": "3a6b9a42cd8f8771bd4295d13e1423fa7f3d942c", "shasum": "" }, "require": { @@ -874,11 +879,12 @@ }, "conflict": { "doctrine/collections": "<1.6.8", - "doctrine/common": "<2.13.3 || >=3,<3.2.2" + "doctrine/common": "<2.13.3 || >=3 <3.2.2" }, "require-dev": { "doctrine/collections": "^1.6.8", "doctrine/common": "^2.13.3 || ^3.2.2", + "phpspec/prophecy": "^1.10", "phpunit/phpunit": "^7.5.20 || ^8.5.23 || ^9.5.13" }, "type": "library", @@ -904,7 +910,7 @@ ], "support": { "issues": "https://github.com/myclabs/DeepCopy/issues", - "source": "https://github.com/myclabs/DeepCopy/tree/1.11.1" + "source": "https://github.com/myclabs/DeepCopy/tree/1.12.0" }, "funding": [ { @@ -912,65 +918,7 @@ "type": "tidelift" } ], - "time": "2023-03-08T13:26:56+00:00" - }, - { - "name": "nikic/php-parser", - "version": "v5.0.2", - "source": { - "type": "git", - "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "139676794dc1e9231bf7bcd123cfc0c99182cb13" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/139676794dc1e9231bf7bcd123cfc0c99182cb13", - "reference": "139676794dc1e9231bf7bcd123cfc0c99182cb13", - "shasum": "" - }, - "require": { - "ext-ctype": "*", - "ext-json": "*", - "ext-tokenizer": "*", - "php": ">=7.4" - }, - "require-dev": { - "ircmaxell/php-yacc": "^0.0.7", - "phpunit/phpunit": "^7.0 || ^8.0 || ^9.0" - }, - "bin": [ - "bin/php-parse" - ], - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.0-dev" - } - }, - "autoload": { - "psr-4": { - "PhpParser\\": "lib/PhpParser" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Nikita Popov" - } - ], - "description": "A PHP parser written in PHP", - "keywords": [ - "parser", - "php" - ], - "support": { - "issues": "https://github.com/nikic/PHP-Parser/issues", - "source": "https://github.com/nikic/PHP-Parser/tree/v5.0.2" - }, - "time": "2024-03-05T20:51:40+00:00" + "time": "2024-06-12T14:39:25+00:00" }, { "name": "phar-io/manifest", @@ -1179,18 +1127,18 @@ "source": { "type": "git", "url": "https://github.com/PHPCompatibility/PHPCompatibility.git", - "reference": "782436f92f26dd66a049059efbfc31350f6b814d" + "reference": "2b7b6e8f5d0ccae3bd41c25bcf1298884a5e1f62" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/PHPCompatibility/PHPCompatibility/zipball/782436f92f26dd66a049059efbfc31350f6b814d", - "reference": "782436f92f26dd66a049059efbfc31350f6b814d", + "url": "https://api.github.com/repos/PHPCompatibility/PHPCompatibility/zipball/2b7b6e8f5d0ccae3bd41c25bcf1298884a5e1f62", + "reference": "2b7b6e8f5d0ccae3bd41c25bcf1298884a5e1f62", "shasum": "" }, "require": { "php": ">=5.4", - "phpcsstandards/phpcsutils": "^1.0.9", - "squizlabs/php_codesniffer": "^3.9.0" + "phpcsstandards/phpcsutils": "^1.0.12", + "squizlabs/php_codesniffer": "^3.10.0" }, "replace": { "wimg/php-compatibility": "*" @@ -1261,7 +1209,7 @@ "type": "open_collective" } ], - "time": "2024-04-24T14:07:49+00:00" + "time": "2024-08-11T17:31:58+00:00" }, { "name": "phpcompatibility/phpcompatibility-paragonie", @@ -1485,22 +1433,22 @@ }, { "name": "phpcsstandards/phpcsutils", - "version": "1.0.11", + "version": "1.0.12", "source": { "type": "git", "url": "https://github.com/PHPCSStandards/PHPCSUtils.git", - "reference": "c457da9dabb60eb7106dd5e3c05132b1a6539c6a" + "reference": "87b233b00daf83fb70f40c9a28692be017ea7c6c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/PHPCSStandards/PHPCSUtils/zipball/c457da9dabb60eb7106dd5e3c05132b1a6539c6a", - "reference": "c457da9dabb60eb7106dd5e3c05132b1a6539c6a", + "url": "https://api.github.com/repos/PHPCSStandards/PHPCSUtils/zipball/87b233b00daf83fb70f40c9a28692be017ea7c6c", + "reference": "87b233b00daf83fb70f40c9a28692be017ea7c6c", "shasum": "" }, "require": { "dealerdirect/phpcodesniffer-composer-installer": "^0.4.1 || ^0.5 || ^0.6.2 || ^0.7 || ^1.0", "php": ">=5.4", - "squizlabs/php_codesniffer": "^3.9.0 || 4.0.x-dev@dev" + "squizlabs/php_codesniffer": "^3.10.0 || 4.0.x-dev@dev" }, "require-dev": { "ext-filter": "*", @@ -1569,48 +1517,44 @@ "type": "open_collective" } ], - "time": "2024-04-24T11:47:18+00:00" + "time": "2024-05-20T13:34:27+00:00" }, { "name": "phpunit/php-code-coverage", - "version": "9.2.31", + "version": "7.0.17", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-code-coverage.git", - "reference": "48c34b5d8d983006bd2adc2d0de92963b9155965" + "reference": "40a4ed114a4aea5afd6df8d0f0c9cd3033097f66" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/48c34b5d8d983006bd2adc2d0de92963b9155965", - "reference": "48c34b5d8d983006bd2adc2d0de92963b9155965", + "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/40a4ed114a4aea5afd6df8d0f0c9cd3033097f66", + "reference": "40a4ed114a4aea5afd6df8d0f0c9cd3033097f66", "shasum": "" }, "require": { "ext-dom": "*", - "ext-libxml": "*", "ext-xmlwriter": "*", - "nikic/php-parser": "^4.18 || ^5.0", - "php": ">=7.3", - "phpunit/php-file-iterator": "^3.0.3", - "phpunit/php-text-template": "^2.0.2", - "sebastian/code-unit-reverse-lookup": "^2.0.2", - "sebastian/complexity": "^2.0", - "sebastian/environment": "^5.1.2", - "sebastian/lines-of-code": "^1.0.3", - "sebastian/version": "^3.0.1", - "theseer/tokenizer": "^1.2.0" + "php": ">=7.2", + "phpunit/php-file-iterator": "^2.0.2", + "phpunit/php-text-template": "^1.2.1", + "phpunit/php-token-stream": "^3.1.3 || ^4.0", + "sebastian/code-unit-reverse-lookup": "^1.0.1", + "sebastian/environment": "^4.2.2", + "sebastian/version": "^2.0.1", + "theseer/tokenizer": "^1.1.3" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^8.2.2" }, "suggest": { - "ext-pcov": "PHP extension that provides line coverage", - "ext-xdebug": "PHP extension that provides line coverage as well as branch and path coverage" + "ext-xdebug": "^2.7.2" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "9.2-dev" + "dev-master": "7.0-dev" } }, "autoload": { @@ -1638,8 +1582,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/php-code-coverage/issues", - "security": "https://github.com/sebastianbergmann/php-code-coverage/security/policy", - "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.31" + "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/7.0.17" }, "funding": [ { @@ -1647,32 +1590,32 @@ "type": "github" } ], - "time": "2024-03-02T06:37:42+00:00" + "time": "2024-03-02T06:09:37+00:00" }, { "name": "phpunit/php-file-iterator", - "version": "3.0.6", + "version": "2.0.6", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-file-iterator.git", - "reference": "cf1c2e7c203ac650e352f4cc675a7021e7d1b3cf" + "reference": "69deeb8664f611f156a924154985fbd4911eb36b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/cf1c2e7c203ac650e352f4cc675a7021e7d1b3cf", - "reference": "cf1c2e7c203ac650e352f4cc675a7021e7d1b3cf", + "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/69deeb8664f611f156a924154985fbd4911eb36b", + "reference": "69deeb8664f611f156a924154985fbd4911eb36b", "shasum": "" }, "require": { - "php": ">=7.3" + "php": ">=7.1" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^8.5" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "3.0-dev" + "dev-master": "2.0.x-dev" } }, "autoload": { @@ -1699,7 +1642,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/php-file-iterator/issues", - "source": "https://github.com/sebastianbergmann/php-file-iterator/tree/3.0.6" + "source": "https://github.com/sebastianbergmann/php-file-iterator/tree/2.0.6" }, "funding": [ { @@ -1707,38 +1650,26 @@ "type": "github" } ], - "time": "2021-12-02T12:48:52+00:00" + "time": "2024-03-01T13:39:50+00:00" }, { - "name": "phpunit/php-invoker", - "version": "3.1.1", + "name": "phpunit/php-text-template", + "version": "1.2.1", "source": { "type": "git", - "url": "https://github.com/sebastianbergmann/php-invoker.git", - "reference": "5a10147d0aaf65b58940a0b72f71c9ac0423cc67" + "url": "https://github.com/sebastianbergmann/php-text-template.git", + "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-invoker/zipball/5a10147d0aaf65b58940a0b72f71c9ac0423cc67", - "reference": "5a10147d0aaf65b58940a0b72f71c9ac0423cc67", + "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/31f8b717e51d9a2afca6c9f046f5d69fc27c8686", + "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686", "shasum": "" }, "require": { - "php": ">=7.3" - }, - "require-dev": { - "ext-pcntl": "*", - "phpunit/phpunit": "^9.3" - }, - "suggest": { - "ext-pcntl": "*" + "php": ">=5.3.3" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.1-dev" - } - }, "autoload": { "classmap": [ "src/" @@ -1755,47 +1686,41 @@ "role": "lead" } ], - "description": "Invoke callables with a timeout", - "homepage": "https://github.com/sebastianbergmann/php-invoker/", + "description": "Simple template engine.", + "homepage": "https://github.com/sebastianbergmann/php-text-template/", "keywords": [ - "process" + "template" ], "support": { - "issues": "https://github.com/sebastianbergmann/php-invoker/issues", - "source": "https://github.com/sebastianbergmann/php-invoker/tree/3.1.1" + "issues": "https://github.com/sebastianbergmann/php-text-template/issues", + "source": "https://github.com/sebastianbergmann/php-text-template/tree/1.2.1" }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-09-28T05:58:55+00:00" + "time": "2015-06-21T13:50:34+00:00" }, { - "name": "phpunit/php-text-template", - "version": "2.0.4", + "name": "phpunit/php-timer", + "version": "2.1.4", "source": { "type": "git", - "url": "https://github.com/sebastianbergmann/php-text-template.git", - "reference": "5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28" + "url": "https://github.com/sebastianbergmann/php-timer.git", + "reference": "a691211e94ff39a34811abd521c31bd5b305b0bb" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28", - "reference": "5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28", + "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/a691211e94ff39a34811abd521c31bd5b305b0bb", + "reference": "a691211e94ff39a34811abd521c31bd5b305b0bb", "shasum": "" }, "require": { - "php": ">=7.3" + "php": ">=7.1" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^8.5" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0-dev" + "dev-master": "2.1-dev" } }, "autoload": { @@ -1814,14 +1739,14 @@ "role": "lead" } ], - "description": "Simple template engine.", - "homepage": "https://github.com/sebastianbergmann/php-text-template/", + "description": "Utility class for timing", + "homepage": "https://github.com/sebastianbergmann/php-timer/", "keywords": [ - "template" + "timer" ], "support": { - "issues": "https://github.com/sebastianbergmann/php-text-template/issues", - "source": "https://github.com/sebastianbergmann/php-text-template/tree/2.0.4" + "issues": "https://github.com/sebastianbergmann/php-timer/issues", + "source": "https://github.com/sebastianbergmann/php-timer/tree/2.1.4" }, "funding": [ { @@ -1829,32 +1754,33 @@ "type": "github" } ], - "time": "2020-10-26T05:33:50+00:00" + "time": "2024-03-01T13:42:41+00:00" }, { - "name": "phpunit/php-timer", - "version": "5.0.3", + "name": "phpunit/php-token-stream", + "version": "3.1.3", "source": { "type": "git", - "url": "https://github.com/sebastianbergmann/php-timer.git", - "reference": "5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2" + "url": "https://github.com/sebastianbergmann/php-token-stream.git", + "reference": "9c1da83261628cb24b6a6df371b6e312b3954768" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2", - "reference": "5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2", + "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/9c1da83261628cb24b6a6df371b6e312b3954768", + "reference": "9c1da83261628cb24b6a6df371b6e312b3954768", "shasum": "" }, "require": { - "php": ">=7.3" + "ext-tokenizer": "*", + "php": ">=7.1" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^7.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "5.0-dev" + "dev-master": "3.1-dev" } }, "autoload": { @@ -1869,18 +1795,17 @@ "authors": [ { "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" + "email": "sebastian@phpunit.de" } ], - "description": "Utility class for timing", - "homepage": "https://github.com/sebastianbergmann/php-timer/", + "description": "Wrapper around PHP's tokenizer extension.", + "homepage": "https://github.com/sebastianbergmann/php-token-stream/", "keywords": [ - "timer" + "tokenizer" ], "support": { - "issues": "https://github.com/sebastianbergmann/php-timer/issues", - "source": "https://github.com/sebastianbergmann/php-timer/tree/5.0.3" + "issues": "https://github.com/sebastianbergmann/php-token-stream/issues", + "source": "https://github.com/sebastianbergmann/php-token-stream/tree/3.1.3" }, "funding": [ { @@ -1888,54 +1813,53 @@ "type": "github" } ], - "time": "2020-10-26T13:16:10+00:00" + "abandoned": true, + "time": "2021-07-26T12:15:06+00:00" }, { "name": "phpunit/phpunit", - "version": "9.6.19", + "version": "8.5.39", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "a1a54a473501ef4cdeaae4e06891674114d79db8" + "reference": "172ba97bcf97ae6ef86ca256adf77aece8a143fe" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/a1a54a473501ef4cdeaae4e06891674114d79db8", - "reference": "a1a54a473501ef4cdeaae4e06891674114d79db8", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/172ba97bcf97ae6ef86ca256adf77aece8a143fe", + "reference": "172ba97bcf97ae6ef86ca256adf77aece8a143fe", "shasum": "" }, "require": { - "doctrine/instantiator": "^1.3.1 || ^2", + "doctrine/instantiator": "^1.5.0", "ext-dom": "*", "ext-json": "*", "ext-libxml": "*", "ext-mbstring": "*", "ext-xml": "*", "ext-xmlwriter": "*", - "myclabs/deep-copy": "^1.10.1", - "phar-io/manifest": "^2.0.3", - "phar-io/version": "^3.0.2", - "php": ">=7.3", - "phpunit/php-code-coverage": "^9.2.28", - "phpunit/php-file-iterator": "^3.0.5", - "phpunit/php-invoker": "^3.1.1", - "phpunit/php-text-template": "^2.0.3", - "phpunit/php-timer": "^5.0.2", - "sebastian/cli-parser": "^1.0.1", - "sebastian/code-unit": "^1.0.6", - "sebastian/comparator": "^4.0.8", - "sebastian/diff": "^4.0.3", - "sebastian/environment": "^5.1.3", - "sebastian/exporter": "^4.0.5", - "sebastian/global-state": "^5.0.1", - "sebastian/object-enumerator": "^4.0.3", - "sebastian/resource-operations": "^3.0.3", - "sebastian/type": "^3.2", - "sebastian/version": "^3.0.2" + "myclabs/deep-copy": "^1.12.0", + "phar-io/manifest": "^2.0.4", + "phar-io/version": "^3.2.1", + "php": ">=7.2", + "phpunit/php-code-coverage": "^7.0.17", + "phpunit/php-file-iterator": "^2.0.6", + "phpunit/php-text-template": "^1.2.1", + "phpunit/php-timer": "^2.1.4", + "sebastian/comparator": "^3.0.5", + "sebastian/diff": "^3.0.6", + "sebastian/environment": "^4.2.5", + "sebastian/exporter": "^3.1.6", + "sebastian/global-state": "^3.0.5", + "sebastian/object-enumerator": "^3.0.5", + "sebastian/resource-operations": "^2.0.3", + "sebastian/type": "^1.1.5", + "sebastian/version": "^2.0.1" }, "suggest": { "ext-soap": "To be able to generate mocks based on WSDL files", - "ext-xdebug": "PHP extension that provides line coverage as well as branch and path coverage" + "ext-xdebug": "PHP extension that provides line coverage as well as branch and path coverage", + "phpunit/php-invoker": "To allow enforcing time limits" }, "bin": [ "phpunit" @@ -1943,13 +1867,10 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "9.6-dev" + "dev-master": "8.5-dev" } }, "autoload": { - "files": [ - "src/Framework/Assert/Functions.php" - ], "classmap": [ "src/" ] @@ -1975,7 +1896,7 @@ "support": { "issues": "https://github.com/sebastianbergmann/phpunit/issues", "security": "https://github.com/sebastianbergmann/phpunit/security/policy", - "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.19" + "source": "https://github.com/sebastianbergmann/phpunit/tree/8.5.39" }, "funding": [ { @@ -1991,24 +1912,24 @@ "type": "tidelift" } ], - "time": "2024-04-05T04:35:58+00:00" + "time": "2024-07-10T11:43:00+00:00" }, { "name": "psr/container", - "version": "1.1.2", + "version": "1.1.1", "source": { "type": "git", "url": "https://github.com/php-fig/container.git", - "reference": "513e0666f7216c7459170d56df27dfcefe1689ea" + "reference": "8622567409010282b7aeebe4bb841fe98b58dcaf" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/container/zipball/513e0666f7216c7459170d56df27dfcefe1689ea", - "reference": "513e0666f7216c7459170d56df27dfcefe1689ea", + "url": "https://api.github.com/repos/php-fig/container/zipball/8622567409010282b7aeebe4bb841fe98b58dcaf", + "reference": "8622567409010282b7aeebe4bb841fe98b58dcaf", "shasum": "" }, "require": { - "php": ">=7.4.0" + "php": ">=7.2.0" }, "type": "library", "autoload": { @@ -2037,9 +1958,9 @@ ], "support": { "issues": "https://github.com/php-fig/container/issues", - "source": "https://github.com/php-fig/container/tree/1.1.2" + "source": "https://github.com/php-fig/container/tree/1.1.1" }, - "time": "2021-11-05T16:50:12+00:00" + "time": "2021-03-05T17:36:06+00:00" }, { "name": "psr/http-client", @@ -2095,20 +2016,20 @@ }, { "name": "psr/http-factory", - "version": "1.0.2", + "version": "1.1.0", "source": { "type": "git", "url": "https://github.com/php-fig/http-factory.git", - "reference": "e616d01114759c4c489f93b099585439f795fe35" + "reference": "2b4765fddfe3b508ac62f829e852b1501d3f6e8a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/http-factory/zipball/e616d01114759c4c489f93b099585439f795fe35", - "reference": "e616d01114759c4c489f93b099585439f795fe35", + "url": "https://api.github.com/repos/php-fig/http-factory/zipball/2b4765fddfe3b508ac62f829e852b1501d3f6e8a", + "reference": "2b4765fddfe3b508ac62f829e852b1501d3f6e8a", "shasum": "" }, "require": { - "php": ">=7.0.0", + "php": ">=7.1", "psr/http-message": "^1.0 || ^2.0" }, "type": "library", @@ -2132,7 +2053,7 @@ "homepage": "https://www.php-fig.org/" } ], - "description": "Common interfaces for PSR-7 HTTP message factories", + "description": "PSR-17: Common interfaces for PSR-7 HTTP message factories", "keywords": [ "factory", "http", @@ -2144,9 +2065,9 @@ "response" ], "support": { - "source": "https://github.com/php-fig/http-factory/tree/1.0.2" + "source": "https://github.com/php-fig/http-factory" }, - "time": "2023-04-10T20:10:41+00:00" + "time": "2024-04-15T12:06:14+00:00" }, { "name": "psr/http-message", @@ -2369,16 +2290,16 @@ }, { "name": "react/stream", - "version": "v1.3.0", + "version": "v1.4.0", "source": { "type": "git", "url": "https://github.com/reactphp/stream.git", - "reference": "6fbc9672905c7d5a885f2da2fc696f65840f4a66" + "reference": "1e5b0acb8fe55143b5b426817155190eb6f5b18d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/reactphp/stream/zipball/6fbc9672905c7d5a885f2da2fc696f65840f4a66", - "reference": "6fbc9672905c7d5a885f2da2fc696f65840f4a66", + "url": "https://api.github.com/repos/reactphp/stream/zipball/1e5b0acb8fe55143b5b426817155190eb6f5b18d", + "reference": "1e5b0acb8fe55143b5b426817155190eb6f5b18d", "shasum": "" }, "require": { @@ -2388,7 +2309,7 @@ }, "require-dev": { "clue/stream-filter": "~1.2", - "phpunit/phpunit": "^9.5 || ^5.7 || ^4.8.35" + "phpunit/phpunit": "^9.6 || ^5.7 || ^4.8.36" }, "type": "library", "autoload": { @@ -2435,7 +2356,7 @@ ], "support": { "issues": "https://github.com/reactphp/stream/issues", - "source": "https://github.com/reactphp/stream/tree/v1.3.0" + "source": "https://github.com/reactphp/stream/tree/v1.4.0" }, "funding": [ { @@ -2443,285 +2364,32 @@ "type": "open_collective" } ], - "time": "2023-06-16T10:52:11+00:00" - }, - { - "name": "roots/wordpress-core-installer", - "version": "1.100.0", - "source": { - "type": "git", - "url": "https://github.com/roots/wordpress-core-installer.git", - "reference": "73f8488e5178c5d54234b919f823a9095e2b1847" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/roots/wordpress-core-installer/zipball/73f8488e5178c5d54234b919f823a9095e2b1847", - "reference": "73f8488e5178c5d54234b919f823a9095e2b1847", - "shasum": "" - }, - "require": { - "composer-plugin-api": "^1.0 || ^2.0", - "php": ">=5.6.0" - }, - "conflict": { - "composer/installers": "<1.0.6" - }, - "replace": { - "johnpbloch/wordpress-core-installer": "*" - }, - "require-dev": { - "composer/composer": "^1.0 || ^2.0", - "phpunit/phpunit": ">=5.7.27" - }, - "type": "composer-plugin", - "extra": { - "class": "Roots\\Composer\\WordPressCorePlugin" - }, - "autoload": { - "psr-4": { - "Roots\\Composer\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "John P. Bloch", - "email": "me@johnpbloch.com" - }, - { - "name": "Roots", - "email": "team@roots.io" - } - ], - "description": "A custom installer to handle deploying WordPress with composer", - "keywords": [ - "wordpress" - ], - "support": { - "issues": "https://github.com/roots/wordpress-core-installer/issues", - "source": "https://github.com/roots/wordpress-core-installer/tree/master" - }, - "funding": [ - { - "url": "https://github.com/roots", - "type": "github" - }, - { - "url": "https://www.patreon.com/rootsdev", - "type": "patreon" - } - ], - "time": "2020-08-20T00:27:30+00:00" - }, - { - "name": "roots/wordpress-full", - "version": "6.5.2", - "source": { - "type": "git", - "url": "https://github.com/WordPress/WordPress.git", - "reference": "6.5.2" - }, - "dist": { - "type": "zip", - "url": "https://downloads.wordpress.org/release/wordpress-6.5.2.zip", - "shasum": "4846f20c1a365ada67772ec9e479521db8d53cec" - }, - "require": { - "php": ">= 7.0.0" - }, - "provide": { - "wordpress/core-implementation": "6.5.2" - }, - "suggest": { - "ext-curl": "Performs remote request operations.", - "ext-dom": "Used to validate Text Widget content and to automatically configuring IIS7+.", - "ext-exif": "Works with metadata stored in images.", - "ext-fileinfo": "Used to detect mimetype of file uploads.", - "ext-hash": "Used for hashing, including passwords and update packages.", - "ext-imagick": "Provides better image quality for media uploads.", - "ext-json": "Used for communications with other servers.", - "ext-libsodium": "Validates Signatures and provides securely random bytes.", - "ext-mbstring": "Used to properly handle UTF8 text.", - "ext-mysqli": "Connects to MySQL for database interactions.", - "ext-openssl": "Permits SSL-based connections to other hosts.", - "ext-pcre": "Increases performance of pattern matching in code searches.", - "ext-xml": "Used for XML parsing, such as from a third-party site.", - "ext-zip": "Used for decompressing Plugins, Themes, and WordPress update packages." - }, - "type": "wordpress-core", - "notification-url": "https://packagist.org/downloads/", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "WordPress Community", - "homepage": "https://wordpress.org/about/" - } - ], - "description": "WordPress is open source software you can use to create a beautiful website, blog, or app.", - "homepage": "https://wordpress.org/", - "keywords": [ - "blog", - "cms", - "wordpress" - ], - "support": { - "docs": "https://developer.wordpress.org/", - "forum": "https://wordpress.org/support/", - "irc": "irc://irc.freenode.net/wordpress", - "issues": "https://core.trac.wordpress.org/", - "rss": "https://wordpress.org/news/feed/", - "source": "https://core.trac.wordpress.org/browser", - "wiki": "https://codex.wordpress.org/" - }, - "funding": [ - { - "url": "https://wordpressfoundation.org/donate/", - "type": "other" - } - ], - "time": "2024-04-09T22:02:19+00:00" - }, - { - "name": "sebastian/cli-parser", - "version": "1.0.2", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/cli-parser.git", - "reference": "2b56bea83a09de3ac06bb18b92f068e60cc6f50b" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/cli-parser/zipball/2b56bea83a09de3ac06bb18b92f068e60cc6f50b", - "reference": "2b56bea83a09de3ac06bb18b92f068e60cc6f50b", - "shasum": "" - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Library for parsing CLI options", - "homepage": "https://github.com/sebastianbergmann/cli-parser", - "support": { - "issues": "https://github.com/sebastianbergmann/cli-parser/issues", - "source": "https://github.com/sebastianbergmann/cli-parser/tree/1.0.2" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2024-03-02T06:27:43+00:00" - }, - { - "name": "sebastian/code-unit", - "version": "1.0.8", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/code-unit.git", - "reference": "1fc9f64c0927627ef78ba436c9b17d967e68e120" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/code-unit/zipball/1fc9f64c0927627ef78ba436c9b17d967e68e120", - "reference": "1fc9f64c0927627ef78ba436c9b17d967e68e120", - "shasum": "" - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Collection of value objects that represent the PHP code units", - "homepage": "https://github.com/sebastianbergmann/code-unit", - "support": { - "issues": "https://github.com/sebastianbergmann/code-unit/issues", - "source": "https://github.com/sebastianbergmann/code-unit/tree/1.0.8" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-10-26T13:08:54+00:00" + "time": "2024-06-11T12:45:25+00:00" }, { "name": "sebastian/code-unit-reverse-lookup", - "version": "2.0.3", + "version": "1.0.3", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/code-unit-reverse-lookup.git", - "reference": "ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5" + "reference": "92a1a52e86d34cde6caa54f1b5ffa9fda18e5d54" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5", - "reference": "ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5", + "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/92a1a52e86d34cde6caa54f1b5ffa9fda18e5d54", + "reference": "92a1a52e86d34cde6caa54f1b5ffa9fda18e5d54", "shasum": "" }, "require": { - "php": ">=7.3" + "php": ">=5.6" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^8.5" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0-dev" + "dev-master": "1.0.x-dev" } }, "autoload": { @@ -2743,7 +2411,7 @@ "homepage": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/", "support": { "issues": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/issues", - "source": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/tree/2.0.3" + "source": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/tree/1.0.3" }, "funding": [ { @@ -2751,34 +2419,34 @@ "type": "github" } ], - "time": "2020-09-28T05:30:19+00:00" + "time": "2024-03-01T13:45:45+00:00" }, { "name": "sebastian/comparator", - "version": "4.0.8", + "version": "3.0.5", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/comparator.git", - "reference": "fa0f136dd2334583309d32b62544682ee972b51a" + "reference": "1dc7ceb4a24aede938c7af2a9ed1de09609ca770" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/fa0f136dd2334583309d32b62544682ee972b51a", - "reference": "fa0f136dd2334583309d32b62544682ee972b51a", + "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/1dc7ceb4a24aede938c7af2a9ed1de09609ca770", + "reference": "1dc7ceb4a24aede938c7af2a9ed1de09609ca770", "shasum": "" }, "require": { - "php": ">=7.3", - "sebastian/diff": "^4.0", - "sebastian/exporter": "^4.0" + "php": ">=7.1", + "sebastian/diff": "^3.0", + "sebastian/exporter": "^3.1" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^8.5" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "4.0-dev" + "dev-master": "3.0-dev" } }, "autoload": { @@ -2817,7 +2485,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/comparator/issues", - "source": "https://github.com/sebastianbergmann/comparator/tree/4.0.8" + "source": "https://github.com/sebastianbergmann/comparator/tree/3.0.5" }, "funding": [ { @@ -2825,90 +2493,33 @@ "type": "github" } ], - "time": "2022-09-14T12:41:17+00:00" - }, - { - "name": "sebastian/complexity", - "version": "2.0.3", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/complexity.git", - "reference": "25f207c40d62b8b7aa32f5ab026c53561964053a" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/complexity/zipball/25f207c40d62b8b7aa32f5ab026c53561964053a", - "reference": "25f207c40d62b8b7aa32f5ab026c53561964053a", - "shasum": "" - }, - "require": { - "nikic/php-parser": "^4.18 || ^5.0", - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Library for calculating the complexity of PHP code units", - "homepage": "https://github.com/sebastianbergmann/complexity", - "support": { - "issues": "https://github.com/sebastianbergmann/complexity/issues", - "source": "https://github.com/sebastianbergmann/complexity/tree/2.0.3" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2023-12-22T06:19:30+00:00" + "time": "2022-09-14T12:31:48+00:00" }, { "name": "sebastian/diff", - "version": "4.0.6", + "version": "3.0.6", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/diff.git", - "reference": "ba01945089c3a293b01ba9badc29ad55b106b0bc" + "reference": "98ff311ca519c3aa73ccd3de053bdb377171d7b6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/ba01945089c3a293b01ba9badc29ad55b106b0bc", - "reference": "ba01945089c3a293b01ba9badc29ad55b106b0bc", + "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/98ff311ca519c3aa73ccd3de053bdb377171d7b6", + "reference": "98ff311ca519c3aa73ccd3de053bdb377171d7b6", "shasum": "" }, "require": { - "php": ">=7.3" + "php": ">=7.1" }, "require-dev": { - "phpunit/phpunit": "^9.3", - "symfony/process": "^4.2 || ^5" + "phpunit/phpunit": "^7.5 || ^8.0", + "symfony/process": "^2 || ^3.3 || ^4" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "4.0-dev" + "dev-master": "3.0-dev" } }, "autoload": { @@ -2940,7 +2551,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/diff/issues", - "source": "https://github.com/sebastianbergmann/diff/tree/4.0.6" + "source": "https://github.com/sebastianbergmann/diff/tree/3.0.6" }, "funding": [ { @@ -2948,27 +2559,27 @@ "type": "github" } ], - "time": "2024-03-02T06:30:58+00:00" + "time": "2024-03-02T06:16:36+00:00" }, { "name": "sebastian/environment", - "version": "5.1.5", + "version": "4.2.5", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/environment.git", - "reference": "830c43a844f1f8d5b7a1f6d6076b784454d8b7ed" + "reference": "56932f6049a0482853056ffd617c91ffcc754205" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/830c43a844f1f8d5b7a1f6d6076b784454d8b7ed", - "reference": "830c43a844f1f8d5b7a1f6d6076b784454d8b7ed", + "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/56932f6049a0482853056ffd617c91ffcc754205", + "reference": "56932f6049a0482853056ffd617c91ffcc754205", "shasum": "" }, "require": { - "php": ">=7.3" + "php": ">=7.1" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^7.5" }, "suggest": { "ext-posix": "*" @@ -2976,7 +2587,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "5.1-dev" + "dev-master": "4.2-dev" } }, "autoload": { @@ -3003,7 +2614,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/environment/issues", - "source": "https://github.com/sebastianbergmann/environment/tree/5.1.5" + "source": "https://github.com/sebastianbergmann/environment/tree/4.2.5" }, "funding": [ { @@ -3011,34 +2622,34 @@ "type": "github" } ], - "time": "2023-02-03T06:03:51+00:00" + "time": "2024-03-01T13:49:59+00:00" }, { "name": "sebastian/exporter", - "version": "4.0.6", + "version": "3.1.6", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/exporter.git", - "reference": "78c00df8f170e02473b682df15bfcdacc3d32d72" + "reference": "1939bc8fd1d39adcfa88c5b35335910869214c56" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/78c00df8f170e02473b682df15bfcdacc3d32d72", - "reference": "78c00df8f170e02473b682df15bfcdacc3d32d72", + "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/1939bc8fd1d39adcfa88c5b35335910869214c56", + "reference": "1939bc8fd1d39adcfa88c5b35335910869214c56", "shasum": "" }, "require": { - "php": ">=7.3", - "sebastian/recursion-context": "^4.0" + "php": ">=7.2", + "sebastian/recursion-context": "^3.0" }, "require-dev": { "ext-mbstring": "*", - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^8.5" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "4.0-dev" + "dev-master": "3.1.x-dev" } }, "autoload": { @@ -3073,14 +2684,14 @@ } ], "description": "Provides the functionality to export PHP variables for visualization", - "homepage": "https://www.github.com/sebastianbergmann/exporter", + "homepage": "http://www.github.com/sebastianbergmann/exporter", "keywords": [ "export", "exporter" ], "support": { "issues": "https://github.com/sebastianbergmann/exporter/issues", - "source": "https://github.com/sebastianbergmann/exporter/tree/4.0.6" + "source": "https://github.com/sebastianbergmann/exporter/tree/3.1.6" }, "funding": [ { @@ -3088,30 +2699,30 @@ "type": "github" } ], - "time": "2024-03-02T06:33:00+00:00" + "time": "2024-03-02T06:21:38+00:00" }, { "name": "sebastian/global-state", - "version": "5.0.7", + "version": "3.0.5", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/global-state.git", - "reference": "bca7df1f32ee6fe93b4d4a9abbf69e13a4ada2c9" + "reference": "91c7c47047a971f02de57ed6f040087ef110c5d9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/bca7df1f32ee6fe93b4d4a9abbf69e13a4ada2c9", - "reference": "bca7df1f32ee6fe93b4d4a9abbf69e13a4ada2c9", + "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/91c7c47047a971f02de57ed6f040087ef110c5d9", + "reference": "91c7c47047a971f02de57ed6f040087ef110c5d9", "shasum": "" }, "require": { - "php": ">=7.3", - "sebastian/object-reflector": "^2.0", - "sebastian/recursion-context": "^4.0" + "php": ">=7.2", + "sebastian/object-reflector": "^1.1.1", + "sebastian/recursion-context": "^3.0" }, "require-dev": { "ext-dom": "*", - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^8.0" }, "suggest": { "ext-uopz": "*" @@ -3119,7 +2730,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "5.0-dev" + "dev-master": "3.0-dev" } }, "autoload": { @@ -3144,64 +2755,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/global-state/issues", - "source": "https://github.com/sebastianbergmann/global-state/tree/5.0.7" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2024-03-02T06:35:11+00:00" - }, - { - "name": "sebastian/lines-of-code", - "version": "1.0.4", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/lines-of-code.git", - "reference": "e1e4a170560925c26d424b6a03aed157e7dcc5c5" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/lines-of-code/zipball/e1e4a170560925c26d424b6a03aed157e7dcc5c5", - "reference": "e1e4a170560925c26d424b6a03aed157e7dcc5c5", - "shasum": "" - }, - "require": { - "nikic/php-parser": "^4.18 || ^5.0", - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Library for counting the lines of code in PHP source code", - "homepage": "https://github.com/sebastianbergmann/lines-of-code", - "support": { - "issues": "https://github.com/sebastianbergmann/lines-of-code/issues", - "source": "https://github.com/sebastianbergmann/lines-of-code/tree/1.0.4" + "source": "https://github.com/sebastianbergmann/global-state/tree/3.0.5" }, "funding": [ { @@ -3209,34 +2763,34 @@ "type": "github" } ], - "time": "2023-12-22T06:20:34+00:00" + "time": "2024-03-02T06:13:16+00:00" }, { "name": "sebastian/object-enumerator", - "version": "4.0.4", + "version": "3.0.5", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/object-enumerator.git", - "reference": "5c9eeac41b290a3712d88851518825ad78f45c71" + "reference": "ac5b293dba925751b808e02923399fb44ff0d541" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/5c9eeac41b290a3712d88851518825ad78f45c71", - "reference": "5c9eeac41b290a3712d88851518825ad78f45c71", + "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/ac5b293dba925751b808e02923399fb44ff0d541", + "reference": "ac5b293dba925751b808e02923399fb44ff0d541", "shasum": "" }, "require": { - "php": ">=7.3", - "sebastian/object-reflector": "^2.0", - "sebastian/recursion-context": "^4.0" + "php": ">=7.0", + "sebastian/object-reflector": "^1.1.1", + "sebastian/recursion-context": "^3.0" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^6.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "4.0-dev" + "dev-master": "3.0.x-dev" } }, "autoload": { @@ -3258,7 +2812,7 @@ "homepage": "https://github.com/sebastianbergmann/object-enumerator/", "support": { "issues": "https://github.com/sebastianbergmann/object-enumerator/issues", - "source": "https://github.com/sebastianbergmann/object-enumerator/tree/4.0.4" + "source": "https://github.com/sebastianbergmann/object-enumerator/tree/3.0.5" }, "funding": [ { @@ -3266,32 +2820,32 @@ "type": "github" } ], - "time": "2020-10-26T13:12:34+00:00" + "time": "2024-03-01T13:54:02+00:00" }, { "name": "sebastian/object-reflector", - "version": "2.0.4", + "version": "1.1.3", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/object-reflector.git", - "reference": "b4f479ebdbf63ac605d183ece17d8d7fe49c15c7" + "reference": "1d439c229e61f244ff1f211e5c99737f90c67def" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/b4f479ebdbf63ac605d183ece17d8d7fe49c15c7", - "reference": "b4f479ebdbf63ac605d183ece17d8d7fe49c15c7", + "url": "https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/1d439c229e61f244ff1f211e5c99737f90c67def", + "reference": "1d439c229e61f244ff1f211e5c99737f90c67def", "shasum": "" }, "require": { - "php": ">=7.3" + "php": ">=7.0" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^6.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0-dev" + "dev-master": "1.1-dev" } }, "autoload": { @@ -3313,7 +2867,7 @@ "homepage": "https://github.com/sebastianbergmann/object-reflector/", "support": { "issues": "https://github.com/sebastianbergmann/object-reflector/issues", - "source": "https://github.com/sebastianbergmann/object-reflector/tree/2.0.4" + "source": "https://github.com/sebastianbergmann/object-reflector/tree/1.1.3" }, "funding": [ { @@ -3321,32 +2875,32 @@ "type": "github" } ], - "time": "2020-10-26T13:14:26+00:00" + "time": "2024-03-01T13:56:04+00:00" }, { "name": "sebastian/recursion-context", - "version": "4.0.5", + "version": "3.0.2", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/recursion-context.git", - "reference": "e75bd0f07204fec2a0af9b0f3cfe97d05f92efc1" + "reference": "9bfd3c6f1f08c026f542032dfb42813544f7d64c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/e75bd0f07204fec2a0af9b0f3cfe97d05f92efc1", - "reference": "e75bd0f07204fec2a0af9b0f3cfe97d05f92efc1", + "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/9bfd3c6f1f08c026f542032dfb42813544f7d64c", + "reference": "9bfd3c6f1f08c026f542032dfb42813544f7d64c", "shasum": "" }, "require": { - "php": ">=7.3" + "php": ">=7.0" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^6.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "4.0-dev" + "dev-master": "3.0.x-dev" } }, "autoload": { @@ -3373,10 +2927,10 @@ } ], "description": "Provides functionality to recursively process PHP variables", - "homepage": "https://github.com/sebastianbergmann/recursion-context", + "homepage": "http://www.github.com/sebastianbergmann/recursion-context", "support": { "issues": "https://github.com/sebastianbergmann/recursion-context/issues", - "source": "https://github.com/sebastianbergmann/recursion-context/tree/4.0.5" + "source": "https://github.com/sebastianbergmann/recursion-context/tree/3.0.2" }, "funding": [ { @@ -3384,32 +2938,29 @@ "type": "github" } ], - "time": "2023-02-03T06:07:39+00:00" + "time": "2024-03-01T14:07:30+00:00" }, { "name": "sebastian/resource-operations", - "version": "3.0.4", + "version": "2.0.3", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/resource-operations.git", - "reference": "05d5692a7993ecccd56a03e40cd7e5b09b1d404e" + "reference": "72a7f7674d053d548003b16ff5a106e7e0e06eee" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/05d5692a7993ecccd56a03e40cd7e5b09b1d404e", - "reference": "05d5692a7993ecccd56a03e40cd7e5b09b1d404e", + "url": "https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/72a7f7674d053d548003b16ff5a106e7e0e06eee", + "reference": "72a7f7674d053d548003b16ff5a106e7e0e06eee", "shasum": "" }, "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.0" + "php": ">=7.1" }, "type": "library", "extra": { "branch-alias": { - "dev-main": "3.0-dev" + "dev-master": "2.0-dev" } }, "autoload": { @@ -3430,7 +2981,7 @@ "description": "Provides a list of PHP built-in functions that operate on resources", "homepage": "https://www.github.com/sebastianbergmann/resource-operations", "support": { - "source": "https://github.com/sebastianbergmann/resource-operations/tree/3.0.4" + "source": "https://github.com/sebastianbergmann/resource-operations/tree/2.0.3" }, "funding": [ { @@ -3438,32 +2989,32 @@ "type": "github" } ], - "time": "2024-03-14T16:00:52+00:00" + "time": "2024-03-01T13:59:09+00:00" }, { "name": "sebastian/type", - "version": "3.2.1", + "version": "1.1.5", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/type.git", - "reference": "75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7" + "reference": "18f071c3a29892b037d35e6b20ddf3ea39b42874" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7", - "reference": "75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7", + "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/18f071c3a29892b037d35e6b20ddf3ea39b42874", + "reference": "18f071c3a29892b037d35e6b20ddf3ea39b42874", "shasum": "" }, "require": { - "php": ">=7.3" + "php": ">=7.2" }, "require-dev": { - "phpunit/phpunit": "^9.5" + "phpunit/phpunit": "^8.2" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "3.2-dev" + "dev-master": "1.1-dev" } }, "autoload": { @@ -3486,7 +3037,7 @@ "homepage": "https://github.com/sebastianbergmann/type", "support": { "issues": "https://github.com/sebastianbergmann/type/issues", - "source": "https://github.com/sebastianbergmann/type/tree/3.2.1" + "source": "https://github.com/sebastianbergmann/type/tree/1.1.5" }, "funding": [ { @@ -3494,29 +3045,29 @@ "type": "github" } ], - "time": "2023-02-03T06:13:03+00:00" + "time": "2024-03-01T14:04:07+00:00" }, { "name": "sebastian/version", - "version": "3.0.2", + "version": "2.0.1", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/version.git", - "reference": "c6c1022351a901512170118436c764e473f6de8c" + "reference": "99732be0ddb3361e16ad77b68ba41efc8e979019" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/c6c1022351a901512170118436c764e473f6de8c", - "reference": "c6c1022351a901512170118436c764e473f6de8c", + "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/99732be0ddb3361e16ad77b68ba41efc8e979019", + "reference": "99732be0ddb3361e16ad77b68ba41efc8e979019", "shasum": "" }, "require": { - "php": ">=7.3" + "php": ">=5.6" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "3.0-dev" + "dev-master": "2.0.x-dev" } }, "autoload": { @@ -3539,28 +3090,22 @@ "homepage": "https://github.com/sebastianbergmann/version", "support": { "issues": "https://github.com/sebastianbergmann/version/issues", - "source": "https://github.com/sebastianbergmann/version/tree/3.0.2" + "source": "https://github.com/sebastianbergmann/version/tree/master" }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-09-28T06:39:44+00:00" + "time": "2016-10-03T07:35:21+00:00" }, { "name": "sirbrillig/phpcs-variable-analysis", - "version": "v2.11.18", + "version": "v2.11.19", "source": { "type": "git", "url": "https://github.com/sirbrillig/phpcs-variable-analysis.git", - "reference": "ca242a0b7309e0f9d1f73b236e04ecf4ca3248d0" + "reference": "bc8d7e30e2005bce5c59018b7cdb08e9fb45c0d1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sirbrillig/phpcs-variable-analysis/zipball/ca242a0b7309e0f9d1f73b236e04ecf4ca3248d0", - "reference": "ca242a0b7309e0f9d1f73b236e04ecf4ca3248d0", + "url": "https://api.github.com/repos/sirbrillig/phpcs-variable-analysis/zipball/bc8d7e30e2005bce5c59018b7cdb08e9fb45c0d1", + "reference": "bc8d7e30e2005bce5c59018b7cdb08e9fb45c0d1", "shasum": "" }, "require": { @@ -3605,7 +3150,7 @@ "source": "https://github.com/sirbrillig/phpcs-variable-analysis", "wiki": "https://github.com/sirbrillig/phpcs-variable-analysis/wiki" }, - "time": "2024-04-13T16:42:46+00:00" + "time": "2024-06-26T20:08:34+00:00" }, { "name": "spatie/phpunit-watcher", @@ -3673,16 +3218,16 @@ }, { "name": "squizlabs/php_codesniffer", - "version": "3.9.2", + "version": "3.10.2", "source": { "type": "git", "url": "https://github.com/PHPCSStandards/PHP_CodeSniffer.git", - "reference": "aac1f6f347a5c5ac6bc98ad395007df00990f480" + "reference": "86e5f5dd9a840c46810ebe5ff1885581c42a3017" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/PHPCSStandards/PHP_CodeSniffer/zipball/aac1f6f347a5c5ac6bc98ad395007df00990f480", - "reference": "aac1f6f347a5c5ac6bc98ad395007df00990f480", + "url": "https://api.github.com/repos/PHPCSStandards/PHP_CodeSniffer/zipball/86e5f5dd9a840c46810ebe5ff1885581c42a3017", + "reference": "86e5f5dd9a840c46810ebe5ff1885581c42a3017", "shasum": "" }, "require": { @@ -3749,20 +3294,20 @@ "type": "open_collective" } ], - "time": "2024-04-23T20:25:34+00:00" + "time": "2024-07-21T23:26:44+00:00" }, { "name": "symfony/config", - "version": "v5.4.38", + "version": "v5.4.40", "source": { "type": "git", "url": "https://github.com/symfony/config.git", - "reference": "3dcd47d4bbd9fea4d1210e7a7a0a5ca02d99df14" + "reference": "d4e1db78421163b98dd9971d247fd0df4a57ee5e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/config/zipball/3dcd47d4bbd9fea4d1210e7a7a0a5ca02d99df14", - "reference": "3dcd47d4bbd9fea4d1210e7a7a0a5ca02d99df14", + "url": "https://api.github.com/repos/symfony/config/zipball/d4e1db78421163b98dd9971d247fd0df4a57ee5e", + "reference": "d4e1db78421163b98dd9971d247fd0df4a57ee5e", "shasum": "" }, "require": { @@ -3812,7 +3357,7 @@ "description": "Helps you find, load, combine, autofill and validate configuration values of any kind", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/config/tree/v5.4.38" + "source": "https://github.com/symfony/config/tree/v5.4.40" }, "funding": [ { @@ -3828,20 +3373,20 @@ "type": "tidelift" } ], - "time": "2024-03-22T10:04:40+00:00" + "time": "2024-05-31T14:33:22+00:00" }, { "name": "symfony/console", - "version": "v5.4.36", + "version": "v5.4.42", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "39f75d9d73d0c11952fdcecf4877b4d0f62a8f6e" + "reference": "cef62396a0477e94fc52e87a17c6e5c32e226b7f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/39f75d9d73d0c11952fdcecf4877b4d0f62a8f6e", - "reference": "39f75d9d73d0c11952fdcecf4877b4d0f62a8f6e", + "url": "https://api.github.com/repos/symfony/console/zipball/cef62396a0477e94fc52e87a17c6e5c32e226b7f", + "reference": "cef62396a0477e94fc52e87a17c6e5c32e226b7f", "shasum": "" }, "require": { @@ -3911,7 +3456,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v5.4.36" + "source": "https://github.com/symfony/console/tree/v5.4.42" }, "funding": [ { @@ -3927,7 +3472,7 @@ "type": "tidelift" } ], - "time": "2024-02-20T16:33:57+00:00" + "time": "2024-07-26T12:21:55+00:00" }, { "name": "symfony/deprecation-contracts", @@ -3998,16 +3543,16 @@ }, { "name": "symfony/filesystem", - "version": "v5.4.38", + "version": "v5.4.41", "source": { "type": "git", "url": "https://github.com/symfony/filesystem.git", - "reference": "899330a01056077271e2f614c7b28b0379a671eb" + "reference": "6d29dd9340b372fa603f04e6df4dd76bb808591e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/filesystem/zipball/899330a01056077271e2f614c7b28b0379a671eb", - "reference": "899330a01056077271e2f614c7b28b0379a671eb", + "url": "https://api.github.com/repos/symfony/filesystem/zipball/6d29dd9340b372fa603f04e6df4dd76bb808591e", + "reference": "6d29dd9340b372fa603f04e6df4dd76bb808591e", "shasum": "" }, "require": { @@ -4016,6 +3561,9 @@ "symfony/polyfill-mbstring": "~1.8", "symfony/polyfill-php80": "^1.16" }, + "require-dev": { + "symfony/process": "^5.4|^6.4" + }, "type": "library", "autoload": { "psr-4": { @@ -4042,7 +3590,7 @@ "description": "Provides basic utilities for the filesystem", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/filesystem/tree/v5.4.38" + "source": "https://github.com/symfony/filesystem/tree/v5.4.41" }, "funding": [ { @@ -4058,20 +3606,20 @@ "type": "tidelift" } ], - "time": "2024-03-21T08:05:07+00:00" + "time": "2024-06-28T09:36:24+00:00" }, { "name": "symfony/finder", - "version": "v5.4.35", + "version": "v5.4.42", "source": { "type": "git", "url": "https://github.com/symfony/finder.git", - "reference": "abe6d6f77d9465fed3cd2d029b29d03b56b56435" + "reference": "0724c51fa067b198e36506d2864e09a52180998a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/finder/zipball/abe6d6f77d9465fed3cd2d029b29d03b56b56435", - "reference": "abe6d6f77d9465fed3cd2d029b29d03b56b56435", + "url": "https://api.github.com/repos/symfony/finder/zipball/0724c51fa067b198e36506d2864e09a52180998a", + "reference": "0724c51fa067b198e36506d2864e09a52180998a", "shasum": "" }, "require": { @@ -4105,7 +3653,7 @@ "description": "Finds files and directories via an intuitive fluent interface", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/finder/tree/v5.4.35" + "source": "https://github.com/symfony/finder/tree/v5.4.42" }, "funding": [ { @@ -4121,20 +3669,20 @@ "type": "tidelift" } ], - "time": "2024-01-23T13:51:25+00:00" + "time": "2024-07-22T08:53:29+00:00" }, { "name": "symfony/polyfill-ctype", - "version": "v1.29.0", + "version": "v1.30.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-ctype.git", - "reference": "ef4d7e442ca910c4764bce785146269b30cb5fc4" + "reference": "0424dff1c58f028c451efff2045f5d92410bd540" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/ef4d7e442ca910c4764bce785146269b30cb5fc4", - "reference": "ef4d7e442ca910c4764bce785146269b30cb5fc4", + "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/0424dff1c58f028c451efff2045f5d92410bd540", + "reference": "0424dff1c58f028c451efff2045f5d92410bd540", "shasum": "" }, "require": { @@ -4184,7 +3732,7 @@ "portable" ], "support": { - "source": "https://github.com/symfony/polyfill-ctype/tree/v1.29.0" + "source": "https://github.com/symfony/polyfill-ctype/tree/v1.30.0" }, "funding": [ { @@ -4200,20 +3748,20 @@ "type": "tidelift" } ], - "time": "2024-01-29T20:11:03+00:00" + "time": "2024-05-31T15:07:36+00:00" }, { "name": "symfony/polyfill-intl-grapheme", - "version": "v1.29.0", + "version": "v1.30.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-grapheme.git", - "reference": "32a9da87d7b3245e09ac426c83d334ae9f06f80f" + "reference": "64647a7c30b2283f5d49b874d84a18fc22054b7a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/32a9da87d7b3245e09ac426c83d334ae9f06f80f", - "reference": "32a9da87d7b3245e09ac426c83d334ae9f06f80f", + "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/64647a7c30b2283f5d49b874d84a18fc22054b7a", + "reference": "64647a7c30b2283f5d49b874d84a18fc22054b7a", "shasum": "" }, "require": { @@ -4262,7 +3810,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.29.0" + "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.30.0" }, "funding": [ { @@ -4278,20 +3826,20 @@ "type": "tidelift" } ], - "time": "2024-01-29T20:11:03+00:00" + "time": "2024-05-31T15:07:36+00:00" }, { "name": "symfony/polyfill-intl-normalizer", - "version": "v1.29.0", + "version": "v1.30.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-normalizer.git", - "reference": "bc45c394692b948b4d383a08d7753968bed9a83d" + "reference": "a95281b0be0d9ab48050ebd988b967875cdb9fdb" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/bc45c394692b948b4d383a08d7753968bed9a83d", - "reference": "bc45c394692b948b4d383a08d7753968bed9a83d", + "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/a95281b0be0d9ab48050ebd988b967875cdb9fdb", + "reference": "a95281b0be0d9ab48050ebd988b967875cdb9fdb", "shasum": "" }, "require": { @@ -4343,7 +3891,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.29.0" + "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.30.0" }, "funding": [ { @@ -4359,20 +3907,20 @@ "type": "tidelift" } ], - "time": "2024-01-29T20:11:03+00:00" + "time": "2024-05-31T15:07:36+00:00" }, { "name": "symfony/polyfill-mbstring", - "version": "v1.29.0", + "version": "v1.30.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-mbstring.git", - "reference": "9773676c8a1bb1f8d4340a62efe641cf76eda7ec" + "reference": "fd22ab50000ef01661e2a31d850ebaa297f8e03c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/9773676c8a1bb1f8d4340a62efe641cf76eda7ec", - "reference": "9773676c8a1bb1f8d4340a62efe641cf76eda7ec", + "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/fd22ab50000ef01661e2a31d850ebaa297f8e03c", + "reference": "fd22ab50000ef01661e2a31d850ebaa297f8e03c", "shasum": "" }, "require": { @@ -4423,7 +3971,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.29.0" + "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.30.0" }, "funding": [ { @@ -4439,20 +3987,20 @@ "type": "tidelift" } ], - "time": "2024-01-29T20:11:03+00:00" + "time": "2024-06-19T12:30:46+00:00" }, { "name": "symfony/polyfill-php73", - "version": "v1.29.0", + "version": "v1.30.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php73.git", - "reference": "21bd091060673a1177ae842c0ef8fe30893114d2" + "reference": "ec444d3f3f6505bb28d11afa41e75faadebc10a1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/21bd091060673a1177ae842c0ef8fe30893114d2", - "reference": "21bd091060673a1177ae842c0ef8fe30893114d2", + "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/ec444d3f3f6505bb28d11afa41e75faadebc10a1", + "reference": "ec444d3f3f6505bb28d11afa41e75faadebc10a1", "shasum": "" }, "require": { @@ -4499,7 +4047,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php73/tree/v1.29.0" + "source": "https://github.com/symfony/polyfill-php73/tree/v1.30.0" }, "funding": [ { @@ -4515,20 +4063,20 @@ "type": "tidelift" } ], - "time": "2024-01-29T20:11:03+00:00" + "time": "2024-05-31T15:07:36+00:00" }, { "name": "symfony/polyfill-php80", - "version": "v1.29.0", + "version": "v1.30.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php80.git", - "reference": "87b68208d5c1188808dd7839ee1e6c8ec3b02f1b" + "reference": "77fa7995ac1b21ab60769b7323d600a991a90433" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/87b68208d5c1188808dd7839ee1e6c8ec3b02f1b", - "reference": "87b68208d5c1188808dd7839ee1e6c8ec3b02f1b", + "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/77fa7995ac1b21ab60769b7323d600a991a90433", + "reference": "77fa7995ac1b21ab60769b7323d600a991a90433", "shasum": "" }, "require": { @@ -4579,7 +4127,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php80/tree/v1.29.0" + "source": "https://github.com/symfony/polyfill-php80/tree/v1.30.0" }, "funding": [ { @@ -4595,20 +4143,20 @@ "type": "tidelift" } ], - "time": "2024-01-29T20:11:03+00:00" + "time": "2024-05-31T15:07:36+00:00" }, { "name": "symfony/polyfill-php81", - "version": "v1.29.0", + "version": "v1.30.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php81.git", - "reference": "c565ad1e63f30e7477fc40738343c62b40bc672d" + "reference": "3fb075789fb91f9ad9af537c4012d523085bd5af" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php81/zipball/c565ad1e63f30e7477fc40738343c62b40bc672d", - "reference": "c565ad1e63f30e7477fc40738343c62b40bc672d", + "url": "https://api.github.com/repos/symfony/polyfill-php81/zipball/3fb075789fb91f9ad9af537c4012d523085bd5af", + "reference": "3fb075789fb91f9ad9af537c4012d523085bd5af", "shasum": "" }, "require": { @@ -4655,7 +4203,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php81/tree/v1.29.0" + "source": "https://github.com/symfony/polyfill-php81/tree/v1.30.0" }, "funding": [ { @@ -4671,20 +4219,20 @@ "type": "tidelift" } ], - "time": "2024-01-29T20:11:03+00:00" + "time": "2024-06-19T12:30:46+00:00" }, { "name": "symfony/process", - "version": "v5.4.36", + "version": "v5.4.40", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "4fdf34004f149cc20b2f51d7d119aa500caad975" + "reference": "deedcb3bb4669cae2148bc920eafd2b16dc7c046" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/4fdf34004f149cc20b2f51d7d119aa500caad975", - "reference": "4fdf34004f149cc20b2f51d7d119aa500caad975", + "url": "https://api.github.com/repos/symfony/process/zipball/deedcb3bb4669cae2148bc920eafd2b16dc7c046", + "reference": "deedcb3bb4669cae2148bc920eafd2b16dc7c046", "shasum": "" }, "require": { @@ -4717,7 +4265,7 @@ "description": "Executes commands in sub-processes", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/process/tree/v5.4.36" + "source": "https://github.com/symfony/process/tree/v5.4.40" }, "funding": [ { @@ -4733,7 +4281,7 @@ "type": "tidelift" } ], - "time": "2024-02-12T15:49:53+00:00" + "time": "2024-05-31T14:33:22+00:00" }, { "name": "symfony/service-contracts", @@ -4820,16 +4368,16 @@ }, { "name": "symfony/stopwatch", - "version": "v5.4.35", + "version": "v5.4.40", "source": { "type": "git", "url": "https://github.com/symfony/stopwatch.git", - "reference": "887762aa99ff16f65dc8b48aafead415f942d407" + "reference": "0e9daf3b7c805c747638b2cc48f1649e594f9625" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/stopwatch/zipball/887762aa99ff16f65dc8b48aafead415f942d407", - "reference": "887762aa99ff16f65dc8b48aafead415f942d407", + "url": "https://api.github.com/repos/symfony/stopwatch/zipball/0e9daf3b7c805c747638b2cc48f1649e594f9625", + "reference": "0e9daf3b7c805c747638b2cc48f1649e594f9625", "shasum": "" }, "require": { @@ -4862,7 +4410,7 @@ "description": "Provides a way to profile code", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/stopwatch/tree/v5.4.35" + "source": "https://github.com/symfony/stopwatch/tree/v5.4.40" }, "funding": [ { @@ -4878,20 +4426,20 @@ "type": "tidelift" } ], - "time": "2024-01-23T13:51:25+00:00" + "time": "2024-05-31T14:33:22+00:00" }, { "name": "symfony/string", - "version": "v5.4.36", + "version": "v5.4.42", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "4e232c83622bd8cd32b794216aa29d0d266d353b" + "reference": "909cec913edea162a3b2836788228ad45fcab337" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/4e232c83622bd8cd32b794216aa29d0d266d353b", - "reference": "4e232c83622bd8cd32b794216aa29d0d266d353b", + "url": "https://api.github.com/repos/symfony/string/zipball/909cec913edea162a3b2836788228ad45fcab337", + "reference": "909cec913edea162a3b2836788228ad45fcab337", "shasum": "" }, "require": { @@ -4948,7 +4496,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v5.4.36" + "source": "https://github.com/symfony/string/tree/v5.4.42" }, "funding": [ { @@ -4964,20 +4512,20 @@ "type": "tidelift" } ], - "time": "2024-02-01T08:49:30+00:00" + "time": "2024-07-20T18:38:32+00:00" }, { "name": "symfony/yaml", - "version": "v5.4.35", + "version": "v5.4.40", "source": { "type": "git", "url": "https://github.com/symfony/yaml.git", - "reference": "e78db7f5c70a21f0417a31f414c4a95fe76c07e4" + "reference": "81cad0ceab3d61fe14fe941ff18a230ac9c80f83" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/yaml/zipball/e78db7f5c70a21f0417a31f414c4a95fe76c07e4", - "reference": "e78db7f5c70a21f0417a31f414c4a95fe76c07e4", + "url": "https://api.github.com/repos/symfony/yaml/zipball/81cad0ceab3d61fe14fe941ff18a230ac9c80f83", + "reference": "81cad0ceab3d61fe14fe941ff18a230ac9c80f83", "shasum": "" }, "require": { @@ -5023,7 +4571,7 @@ "description": "Loads and dumps YAML files", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/yaml/tree/v5.4.35" + "source": "https://github.com/symfony/yaml/tree/v5.4.40" }, "funding": [ { @@ -5039,7 +4587,7 @@ "type": "tidelift" } ], - "time": "2024-01-23T13:51:25+00:00" + "time": "2024-05-31T14:33:22+00:00" }, { "name": "theseer/tokenizer", @@ -5157,54 +4705,6 @@ ], "time": "2024-03-25T16:39:00+00:00" }, - { - "name": "wp-phpunit/wp-phpunit", - "version": "6.5.2", - "source": { - "type": "git", - "url": "https://github.com/wp-phpunit/wp-phpunit.git", - "reference": "4368fd1dd37d0314cbaa9040be39d835616aeb17" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/wp-phpunit/wp-phpunit/zipball/4368fd1dd37d0314cbaa9040be39d835616aeb17", - "reference": "4368fd1dd37d0314cbaa9040be39d835616aeb17", - "shasum": "" - }, - "type": "library", - "autoload": { - "files": [ - "__loaded.php" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "Evan Mattson", - "email": "me@aaemnnost.tv" - }, - { - "name": "WordPress Community", - "homepage": "https://wordpress.org/about/" - } - ], - "description": "WordPress core PHPUnit library", - "homepage": "https://github.com/wp-phpunit", - "keywords": [ - "phpunit", - "test", - "wordpress" - ], - "support": { - "docs": "https://github.com/wp-phpunit/docs", - "issues": "https://github.com/wp-phpunit/issues", - "source": "https://github.com/wp-phpunit/wp-phpunit" - }, - "time": "2024-04-03T00:33:03+00:00" - }, { "name": "yoast/phpunit-polyfills", "version": "2.0.1", @@ -5341,11 +4841,11 @@ "prefer-stable": true, "prefer-lowest": false, "platform": { - "php": ">=5.6" + "php": ">=7.2.24|^8" }, "platform-dev": [], "platform-overrides": { - "php": "7.4" + "php": "7.2.24" }, "plugin-api-version": "2.6.0" } diff --git a/docker-compose.yml b/docker-compose.yml deleted file mode 100644 index 9a92e6ce..00000000 --- a/docker-compose.yml +++ /dev/null @@ -1,11 +0,0 @@ -version: '3.6' - -services: - - wpdevlib: - build: ./tests/docker/wp-dev-lib - working_dir: /var/www/html - volumes: - - .:/var/www/html - environment: - CHECK_SCOPE: all diff --git a/package-lock.json b/package-lock.json index fd439744..702ea4cf 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,2620 +1,1774 @@ { "name": "two-factor", + "lockfileVersion": 3, "requires": true, - "lockfileVersion": 1, - "dependencies": { - "@aashutoshrathi/word-wrap": { + "packages": { + "": { + "name": "two-factor", + "hasInstallScript": true, + "license": "GPL-2.0-or-later", + "dependencies": { + "qrcode-generator": "^1.4.4" + }, + "devDependencies": { + "@wordpress/env": "^10.5.0", + "@wordpress/eslint-plugin": "^20.2.0", + "@wordpress/scripts": "^28.5.0", + "grunt": "^1.6.1", + "grunt-cli": "^1.5.0", + "grunt-contrib-clean": "^2.0.1", + "grunt-contrib-copy": "^1.0.0", + "load-grunt-tasks": "^5.1.0", + "npm-run-all": "^4.1.5", + "parse-gitignore": "^0.5.1" + }, + "engines": { + "node": ">=20" + } + }, + "node_modules/@aashutoshrathi/word-wrap": { "version": "1.2.6", - "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz", - "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } }, - "@ampproject/remapping": { + "node_modules/@ampproject/remapping": { "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", - "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", "dev": true, - "requires": { + "license": "Apache-2.0", + "dependencies": { "@jridgewell/gen-mapping": "^0.1.0", "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" } }, - "@babel/code-frame": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", - "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", + "node_modules/@babel/code-frame": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.7.tgz", + "integrity": "sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==", "dev": true, - "requires": { - "@babel/highlight": "^7.18.6" - } - }, - "@babel/compat-data": { - "version": "7.19.3", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.19.3.tgz", - "integrity": "sha512-prBHMK4JYYK+wDjJF1q99KK4JLL+egWS4nmNqdlMUgCExMZ+iZW0hGhyC3VEbsPjvaN0TBhW//VIFwBrk8sEiw==", - "dev": true - }, - "@babel/core": { - "version": "7.19.3", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.19.3.tgz", - "integrity": "sha512-WneDJxdsjEvyKtXKsaBGbDeiyOjR5vYq4HcShxnIbG0qixpoHjI3MqeZM9NDvsojNCEBItQE4juOo/bU6e72gQ==", - "dev": true, - "requires": { - "@ampproject/remapping": "^2.1.0", - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.19.3", - "@babel/helper-compilation-targets": "^7.19.3", - "@babel/helper-module-transforms": "^7.19.0", - "@babel/helpers": "^7.19.0", - "@babel/parser": "^7.19.3", - "@babel/template": "^7.18.10", - "@babel/traverse": "^7.19.3", - "@babel/types": "^7.19.3", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.1", - "semver": "^6.3.0" + "dependencies": { + "@babel/highlight": "^7.24.7", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/eslint-parser": { - "version": "7.19.1", - "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.19.1.tgz", - "integrity": "sha512-AqNf2QWt1rtu2/1rLswy6CDP7H9Oh3mMhk177Y67Rg8d7RD9WfOLLv8CGn6tisFvS2htm86yIe1yLF6I1UDaGQ==", + "node_modules/@babel/compat-data": { + "version": "7.25.2", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.25.2.tgz", + "integrity": "sha512-bYcppcpKBvX4znYaPEeFau03bp89ShqNMLs+rmdptMw+heSZh9+z84d2YG+K7cYLbWwzdjtDoW/uqZmPjulClQ==", "dev": true, - "requires": { - "@nicolo-ribaudo/eslint-scope-5-internals": "5.1.1-v1", - "eslint-visitor-keys": "^2.1.0", - "semver": "^6.3.0" + "engines": { + "node": ">=6.9.0" } }, - "@babel/generator": { - "version": "7.19.3", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.19.3.tgz", - "integrity": "sha512-fqVZnmp1ncvZU757UzDheKZpfPgatqY59XtW2/j/18H7u76akb8xqvjw82f+i2UKd/ksYsSick/BCLQUUtJ/qQ==", + "node_modules/@babel/core": { + "version": "7.25.2", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.25.2.tgz", + "integrity": "sha512-BBt3opiCOxUr9euZ5/ro/Xv8/V7yJ5bjYMqG/C1YAo8MIKAnumZalCN+msbci3Pigy4lIQfPUpfMM27HMGaYEA==", "dev": true, - "requires": { - "@babel/types": "^7.19.3", - "@jridgewell/gen-mapping": "^0.3.2", - "jsesc": "^2.5.1" - }, "dependencies": { - "@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", - "dev": true, - "requires": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - } - } - } - }, - "@babel/helper-annotate-as-pure": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz", - "integrity": "sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==", - "dev": true, - "requires": { - "@babel/types": "^7.18.6" + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.24.7", + "@babel/generator": "^7.25.0", + "@babel/helper-compilation-targets": "^7.25.2", + "@babel/helper-module-transforms": "^7.25.2", + "@babel/helpers": "^7.25.0", + "@babel/parser": "^7.25.0", + "@babel/template": "^7.25.0", + "@babel/traverse": "^7.25.2", + "@babel/types": "^7.25.2", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" } }, - "@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.18.9.tgz", - "integrity": "sha512-yFQ0YCHoIqarl8BCRwBL8ulYUaZpz3bNsA7oFepAzee+8/+ImtADXNOmO5vJvsPff3qi+hvpkY/NYBTrBQgdNw==", + "node_modules/@babel/core/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "dev": true, - "requires": { - "@babel/helper-explode-assignable-expression": "^7.18.6", - "@babel/types": "^7.18.9" + "bin": { + "semver": "bin/semver.js" } }, - "@babel/helper-compilation-targets": { - "version": "7.19.3", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.19.3.tgz", - "integrity": "sha512-65ESqLGyGmLvgR0mst5AdW1FkNlj9rQsCKduzEoEPhBCDFGXvz2jW6bXFG6i0/MrV2s7hhXjjb2yAzcPuQlLwg==", + "node_modules/@babel/eslint-parser": { + "version": "7.19.1", "dev": true, - "requires": { - "@babel/compat-data": "^7.19.3", - "@babel/helper-validator-option": "^7.18.6", - "browserslist": "^4.21.3", + "license": "MIT", + "dependencies": { + "@nicolo-ribaudo/eslint-scope-5-internals": "5.1.1-v1", + "eslint-visitor-keys": "^2.1.0", "semver": "^6.3.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || >=14.0.0" + }, + "peerDependencies": { + "@babel/core": ">=7.11.0", + "eslint": "^7.5.0 || ^8.0.0" } }, - "@babel/helper-create-class-features-plugin": { - "version": "7.19.0", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.19.0.tgz", - "integrity": "sha512-NRz8DwF4jT3UfrmUoZjd0Uph9HQnP30t7Ash+weACcyNkiYTywpIjDBgReJMKgr+n86sn2nPVVmJ28Dm053Kqw==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.19.0", - "@babel/helper-member-expression-to-functions": "^7.18.9", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/helper-replace-supers": "^7.18.9", - "@babel/helper-split-export-declaration": "^7.18.6" - } - }, - "@babel/helper-create-regexp-features-plugin": { - "version": "7.19.0", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.19.0.tgz", - "integrity": "sha512-htnV+mHX32DF81amCDrwIDr8nrp1PTm+3wfBN9/v8QJOLEioOCOG7qNyq0nHeFiWbT3Eb7gsPwEmV64UCQ1jzw==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "regexpu-core": "^5.1.0" - } - }, - "@babel/helper-define-polyfill-provider": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.3.tgz", - "integrity": "sha512-z5aQKU4IzbqCC1XH0nAqfsFLMVSo22SBKUc0BxGrLkolTdPTructy0ToNnlO2zA4j9Q/7pjMZf0DSY+DSTYzww==", - "dev": true, - "requires": { - "@babel/helper-compilation-targets": "^7.17.7", - "@babel/helper-plugin-utils": "^7.16.7", - "debug": "^4.1.1", - "lodash.debounce": "^4.0.8", - "resolve": "^1.14.2", - "semver": "^6.1.2" - } - }, - "@babel/helper-environment-visitor": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", - "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==", - "dev": true - }, - "@babel/helper-explode-assignable-expression": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.18.6.tgz", - "integrity": "sha512-eyAYAsQmB80jNfg4baAtLeWAQHfHFiR483rzFK+BhETlGZaQC9bsfrugfXDCbRHLQbIA7U5NxhhOxN7p/dWIcg==", - "dev": true, - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-function-name": { - "version": "7.19.0", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz", - "integrity": "sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w==", + "node_modules/@babel/generator": { + "version": "7.25.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.25.0.tgz", + "integrity": "sha512-3LEEcj3PVW8pW2R1SR1M89g/qrYk/m/mB/tLqn7dn4sbBUQyTqnlod+II2U4dqiGtUmkcnAmkMDralTFZttRiw==", "dev": true, - "requires": { - "@babel/template": "^7.18.10", - "@babel/types": "^7.19.0" + "dependencies": { + "@babel/types": "^7.25.0", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/helper-hoist-variables": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", - "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", + "node_modules/@babel/generator/node_modules/@jridgewell/gen-mapping": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", + "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", "dev": true, - "requires": { - "@babel/types": "^7.18.6" + "dependencies": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" } }, - "@babel/helper-member-expression-to-functions": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.18.9.tgz", - "integrity": "sha512-RxifAh2ZoVU67PyKIO4AMi1wTenGfMR/O/ae0CCRqwgBAt5v7xjdtRw7UoSbsreKrQn5t7r89eruK/9JjYHuDg==", + "node_modules/@babel/helper-annotate-as-pure": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.24.7.tgz", + "integrity": "sha512-BaDeOonYvhdKw+JoMVkAixAAJzG2jVPIwWoKBPdYuY9b452e2rPuI9QPYh3KpofZ3pW2akOmwZLOiOsHMiqRAg==", "dev": true, - "requires": { - "@babel/types": "^7.18.9" + "dependencies": { + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/helper-module-imports": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", - "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", + "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.24.7.tgz", + "integrity": "sha512-xZeCVVdwb4MsDBkkyZ64tReWYrLRHlMN72vP7Bdm3OUOuyFZExhsHUUnuWnm2/XOlAJzR0LfPpB56WXZn0X/lA==", "dev": true, - "requires": { - "@babel/types": "^7.18.6" + "dependencies": { + "@babel/traverse": "^7.24.7", + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/helper-module-transforms": { - "version": "7.19.0", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.19.0.tgz", - "integrity": "sha512-3HBZ377Fe14RbLIA+ac3sY4PTgpxHVkFrESaWhoI5PuyXPBBX8+C34qblV9G89ZtycGJCmCI/Ut+VUDK4bltNQ==", + "node_modules/@babel/helper-compilation-targets": { + "version": "7.25.2", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.25.2.tgz", + "integrity": "sha512-U2U5LsSaZ7TAt3cfaymQ8WHh0pxvdHoEk6HVpaexxixjyEquMh0L0YNJNM6CTGKMXV1iksi0iZkGw4AcFkPaaw==", "dev": true, - "requires": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-simple-access": "^7.18.6", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/helper-validator-identifier": "^7.18.6", - "@babel/template": "^7.18.10", - "@babel/traverse": "^7.19.0", - "@babel/types": "^7.19.0" + "dependencies": { + "@babel/compat-data": "^7.25.2", + "@babel/helper-validator-option": "^7.24.8", + "browserslist": "^4.23.1", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/helper-optimise-call-expression": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.18.6.tgz", - "integrity": "sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA==", + "node_modules/@babel/helper-compilation-targets/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "dev": true, - "requires": { - "@babel/types": "^7.18.6" + "bin": { + "semver": "bin/semver.js" } }, - "@babel/helper-plugin-utils": { - "version": "7.19.0", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.19.0.tgz", - "integrity": "sha512-40Ryx7I8mT+0gaNxm8JGTZFUITNqdLAgdg0hXzeVZxVD6nFsdhQvip6v8dqkRHzsz1VFpFAaOCHNn0vKBL7Czw==", - "dev": true - }, - "@babel/helper-remap-async-to-generator": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.18.9.tgz", - "integrity": "sha512-dI7q50YKd8BAv3VEfgg7PS7yD3Rtbi2J1XMXaalXO0W0164hYLnh8zpjRS0mte9MfVp/tltvr/cfdXPvJr1opA==", + "node_modules/@babel/helper-create-class-features-plugin": { + "version": "7.25.0", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.25.0.tgz", + "integrity": "sha512-GYM6BxeQsETc9mnct+nIIpf63SAyzvyYN7UB/IlTyd+MBg06afFGp0mIeUqGyWgS2mxad6vqbMrHVlaL3m70sQ==", "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-wrap-function": "^7.18.9", - "@babel/types": "^7.18.9" + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.24.7", + "@babel/helper-member-expression-to-functions": "^7.24.8", + "@babel/helper-optimise-call-expression": "^7.24.7", + "@babel/helper-replace-supers": "^7.25.0", + "@babel/helper-skip-transparent-expression-wrappers": "^7.24.7", + "@babel/traverse": "^7.25.0", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "@babel/helper-replace-supers": { - "version": "7.19.1", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.19.1.tgz", - "integrity": "sha512-T7ahH7wV0Hfs46SFh5Jz3s0B6+o8g3c+7TMxu7xKfmHikg7EAZ3I2Qk9LFhjxXq8sL7UkP5JflezNwoZa8WvWw==", + "node_modules/@babel/helper-create-class-features-plugin/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "dev": true, - "requires": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-member-expression-to-functions": "^7.18.9", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/traverse": "^7.19.1", - "@babel/types": "^7.19.0" + "bin": { + "semver": "bin/semver.js" } }, - "@babel/helper-simple-access": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.18.6.tgz", - "integrity": "sha512-iNpIgTgyAvDQpDj76POqg+YEt8fPxx3yaNBg3S30dxNKm2SWfYhD0TGrK/Eu9wHpUW63VQU894TsTg+GLbUa1g==", + "node_modules/@babel/helper-create-regexp-features-plugin": { + "version": "7.25.2", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.25.2.tgz", + "integrity": "sha512-+wqVGP+DFmqwFD3EH6TMTfUNeqDehV3E/dl+Sd54eaXqm17tEUNbEIn4sVivVowbvUpOtIGxdo3GoXyDH9N/9g==", "dev": true, - "requires": { - "@babel/types": "^7.18.6" + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.24.7", + "regexpu-core": "^5.3.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "@babel/helper-skip-transparent-expression-wrappers": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.18.9.tgz", - "integrity": "sha512-imytd2gHi3cJPsybLRbmFrF7u5BIEuI2cNheyKi3/iOBC63kNn3q8Crn2xVuESli0aM4KYsyEqKyS7lFL8YVtw==", + "node_modules/@babel/helper-create-regexp-features-plugin/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "dev": true, - "requires": { - "@babel/types": "^7.18.9" + "bin": { + "semver": "bin/semver.js" } }, - "@babel/helper-split-export-declaration": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", - "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", + "node_modules/@babel/helper-define-polyfill-provider": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.6.2.tgz", + "integrity": "sha512-LV76g+C502biUK6AyZ3LK10vDpDyCzZnhZFXkH1L75zHPj68+qc8Zfpx2th+gzwA2MzyK+1g/3EPl62yFnVttQ==", "dev": true, - "requires": { - "@babel/types": "^7.18.6" + "dependencies": { + "@babel/helper-compilation-targets": "^7.22.6", + "@babel/helper-plugin-utils": "^7.22.5", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" } }, - "@babel/helper-string-parser": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.18.10.tgz", - "integrity": "sha512-XtIfWmeNY3i4t7t4D2t02q50HvqHybPqW2ki1kosnvWCwuCMeo81Jf0gwr85jy/neUdg5XDdeFE/80DXiO+njw==", - "dev": true - }, - "@babel/helper-validator-identifier": { - "version": "7.19.1", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", - "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==", - "dev": true - }, - "@babel/helper-validator-option": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz", - "integrity": "sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==", - "dev": true - }, - "@babel/helper-wrap-function": { - "version": "7.19.0", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.19.0.tgz", - "integrity": "sha512-txX8aN8CZyYGTwcLhlk87KRqncAzhh5TpQamZUa0/u3an36NtDpUP6bQgBCBcLeBs09R/OwQu3OjK0k/HwfNDg==", + "node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.24.8", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.24.8.tgz", + "integrity": "sha512-LABppdt+Lp/RlBxqrh4qgf1oEH/WxdzQNDJIu5gC/W1GyvPVrOBiItmmM8wan2fm4oYqFuFfkXmlGpLQhPY8CA==", "dev": true, - "requires": { - "@babel/helper-function-name": "^7.19.0", - "@babel/template": "^7.18.10", - "@babel/traverse": "^7.19.0", - "@babel/types": "^7.19.0" + "dependencies": { + "@babel/traverse": "^7.24.8", + "@babel/types": "^7.24.8" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/helpers": { - "version": "7.19.0", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.19.0.tgz", - "integrity": "sha512-DRBCKGwIEdqY3+rPJgG/dKfQy9+08rHIAJx8q2p+HSWP87s2HCrQmaAMMyMll2kIXKCW0cO1RdQskx15Xakftg==", + "node_modules/@babel/helper-module-imports": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.7.tgz", + "integrity": "sha512-8AyH3C+74cgCVVXow/myrynrAGv+nTVg5vKu2nZph9x7RcRwzmh0VFallJuFTZ9mx6u4eSdXZfcOzSqTUm0HCA==", "dev": true, - "requires": { - "@babel/template": "^7.18.10", - "@babel/traverse": "^7.19.0", - "@babel/types": "^7.19.0" + "dependencies": { + "@babel/traverse": "^7.24.7", + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/highlight": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", - "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", + "node_modules/@babel/helper-module-transforms": { + "version": "7.25.2", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.25.2.tgz", + "integrity": "sha512-BjyRAbix6j/wv83ftcVJmBt72QtHI56C7JXZoG2xATiLpmoC7dpd8WnkikExHDVPpi/3qCmO6WY1EaXOluiecQ==", "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.18.6", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" + "dependencies": { + "@babel/helper-module-imports": "^7.24.7", + "@babel/helper-simple-access": "^7.24.7", + "@babel/helper-validator-identifier": "^7.24.7", + "@babel/traverse": "^7.25.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "@babel/parser": { - "version": "7.19.3", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.19.3.tgz", - "integrity": "sha512-pJ9xOlNWHiy9+FuFP09DEAFbAn4JskgRsVcc169w2xRBC3FRGuQEwjeIMMND9L2zc0iEhO/tGv4Zq+km+hxNpQ==", - "dev": true - }, - "@babel/plugin-bugfix-firefox-class-in-computed-class-key": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.24.4.tgz", - "integrity": "sha512-qpl6vOOEEzTLLcsuqYYo8yDtrTocmu2xkGvgNebvPjT9DTtfFYGmgDqY+rBYXNlqL4s9qLDn6xkrJv4RxAPiTA==", + "node_modules/@babel/helper-optimise-call-expression": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.24.7.tgz", + "integrity": "sha512-jKiTsW2xmWwxT1ixIdfXUZp+P5yURx2suzLZr5Hi64rURpDYdMW0pv+Uf17EYk2Rd428Lx4tLsnjGJzYKDM/6A==", "dev": true, - "requires": { - "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-plugin-utils": "^7.24.0" - }, "dependencies": { - "@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 - }, - "@babel/helper-plugin-utils": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", - "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", - "dev": true - } + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.18.6.tgz", - "integrity": "sha512-Dgxsyg54Fx1d4Nge8UnvTrED63vrwOdPmyvPzlNN/boaliRP54pm3pGzZD1SJUwrBA+Cs/xdG8kXX6Mn/RfISQ==", + "node_modules/@babel/helper-plugin-utils": { + "version": "7.24.8", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.8.tgz", + "integrity": "sha512-FFWx5142D8h2Mgr/iPVGH5G7w6jDn4jUSpZTyDnQO0Yn7Ks2Kuz6Pci8H6MPCoUJegd/UZQ3tAvfLCxQSnWWwg==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" + "engines": { + "node": ">=6.9.0" } }, - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.18.9.tgz", - "integrity": "sha512-AHrP9jadvH7qlOj6PINbgSuphjQUAK7AOT7DPjBo9EHoLhQTnnK5u45e1Hd4DbSQEO9nqPWtQ89r+XEOWFScKg==", + "node_modules/@babel/helper-remap-async-to-generator": { + "version": "7.25.0", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.25.0.tgz", + "integrity": "sha512-NhavI2eWEIz/H9dbrG0TuOicDhNexze43i5z7lEqwYm0WEZVTwnPpA0EafUTP7+6/W79HWIP2cTe3Z5NiSTVpw==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/helper-skip-transparent-expression-wrappers": "^7.18.9", - "@babel/plugin-proposal-optional-chaining": "^7.18.9" + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.24.7", + "@babel/helper-wrap-function": "^7.25.0", + "@babel/traverse": "^7.25.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.24.1.tgz", - "integrity": "sha512-m9m/fXsXLiHfwdgydIFnpk+7jlVbnvlK5B2EKiPdLUb6WX654ZaaEWJUjk8TftRbZpK0XibovlLWX4KIZhV6jw==", + "node_modules/@babel/helper-replace-supers": { + "version": "7.25.0", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.25.0.tgz", + "integrity": "sha512-q688zIvQVYtZu+i2PsdIu/uWGRpfxzr5WESsfpShfZECkO+d2o+WROWezCi/Q6kJ0tfPa5+pUGUlfx2HhrA3Bg==", "dev": true, - "requires": { - "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-plugin-utils": "^7.24.0" - }, "dependencies": { - "@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 - }, - "@babel/helper-plugin-utils": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", - "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", - "dev": true - } + "@babel/helper-member-expression-to-functions": "^7.24.8", + "@babel/helper-optimise-call-expression": "^7.24.7", + "@babel/traverse": "^7.25.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "@babel/plugin-proposal-async-generator-functions": { - "version": "7.19.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.19.1.tgz", - "integrity": "sha512-0yu8vNATgLy4ivqMNBIwb1HebCelqN7YX8SL3FDXORv/RqT0zEEWUCH4GH44JsSrvCu6GqnAdR5EBFAPeNBB4Q==", + "node_modules/@babel/helper-simple-access": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.24.7.tgz", + "integrity": "sha512-zBAIvbCMh5Ts+b86r/CjU+4XGYIs+R1j951gxI3KmmxBMhCg4oQMsv6ZXQ64XOm/cvzfU1FmoCyt6+owc5QMYg==", "dev": true, - "requires": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-plugin-utils": "^7.19.0", - "@babel/helper-remap-async-to-generator": "^7.18.9", - "@babel/plugin-syntax-async-generators": "^7.8.4" + "dependencies": { + "@babel/traverse": "^7.24.7", + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/plugin-proposal-class-properties": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz", - "integrity": "sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==", + "node_modules/@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.24.7.tgz", + "integrity": "sha512-IO+DLT3LQUElMbpzlatRASEyQtfhSE0+m465v++3jyyXeBTBUjtVZg28/gHeV5mrTJqvEKhKroBGAvhW+qPHiQ==", "dev": true, - "requires": { - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" + "dependencies": { + "@babel/traverse": "^7.24.7", + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/plugin-proposal-class-static-block": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.18.6.tgz", - "integrity": "sha512-+I3oIiNxrCpup3Gi8n5IGMwj0gOCAjcJUSQEcotNnCCPMEnixawOQ+KeJPlgfjzx+FKQ1QSyZOWe7wmoJp7vhw==", + "node_modules/@babel/helper-string-parser": { + "version": "7.24.8", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.8.tgz", + "integrity": "sha512-pO9KhhRcuUyGnJWwyEgnRJTSIZHiT+vMD0kPeD+so0l7mxkMT19g3pjY9GTnHySck/hDzq+dtW/4VgnMkippsQ==", "dev": true, - "requires": { - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-class-static-block": "^7.14.5" + "engines": { + "node": ">=6.9.0" } }, - "@babel/plugin-proposal-dynamic-import": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.18.6.tgz", - "integrity": "sha512-1auuwmK+Rz13SJj36R+jqFPMJWyKEDd7lLSdOj4oJK0UTgGueSAtkrCvz9ewmgyU/P941Rv2fQwZJN8s6QruXw==", + "node_modules/@babel/helper-validator-identifier": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz", + "integrity": "sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-dynamic-import": "^7.8.3" + "engines": { + "node": ">=6.9.0" } }, - "@babel/plugin-proposal-export-namespace-from": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.18.9.tgz", - "integrity": "sha512-k1NtHyOMvlDDFeb9G5PhUXuGj8m/wiwojgQVEhJ/fsVsMCpLyOP4h0uGEjYJKrRI+EVPlb5Jk+Gt9P97lOGwtA==", + "node_modules/@babel/helper-validator-option": { + "version": "7.24.8", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.24.8.tgz", + "integrity": "sha512-xb8t9tD1MHLungh/AIoWYN+gVHaB9kwlu8gffXGSt3FFEIT7RjS+xWbc2vUD1UTZdIpKj/ab3rdqJ7ufngyi2Q==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3" + "engines": { + "node": ">=6.9.0" } }, - "@babel/plugin-proposal-json-strings": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.18.6.tgz", - "integrity": "sha512-lr1peyn9kOdbYc0xr0OdHTZ5FMqS6Di+H0Fz2I/JwMzGmzJETNeOFq2pBySw6X/KFL5EWDjlJuMsUGRFb8fQgQ==", + "node_modules/@babel/helper-wrap-function": { + "version": "7.25.0", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.25.0.tgz", + "integrity": "sha512-s6Q1ebqutSiZnEjaofc/UKDyC4SbzV5n5SrA2Gq8UawLycr3i04f1dX4OzoQVnexm6aOCh37SQNYlJ/8Ku+PMQ==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-json-strings": "^7.8.3" + "dependencies": { + "@babel/template": "^7.25.0", + "@babel/traverse": "^7.25.0", + "@babel/types": "^7.25.0" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/plugin-proposal-logical-assignment-operators": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.18.9.tgz", - "integrity": "sha512-128YbMpjCrP35IOExw2Fq+x55LMP42DzhOhX2aNNIdI9avSWl2PI0yuBWarr3RYpZBSPtabfadkH2yeRiMD61Q==", + "node_modules/@babel/helpers": { + "version": "7.25.0", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.25.0.tgz", + "integrity": "sha512-MjgLZ42aCm0oGjJj8CtSM3DB8NOOf8h2l7DCTePJs29u+v7yO/RBX9nShlKMgFnRks/Q4tBAe7Hxnov9VkGwLw==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" + "dependencies": { + "@babel/template": "^7.25.0", + "@babel/types": "^7.25.0" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/plugin-proposal-nullish-coalescing-operator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.18.6.tgz", - "integrity": "sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA==", + "node_modules/@babel/highlight": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.7.tgz", + "integrity": "sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" + "dependencies": { + "@babel/helper-validator-identifier": "^7.24.7", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/plugin-proposal-numeric-separator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.18.6.tgz", - "integrity": "sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q==", + "node_modules/@babel/parser": { + "version": "7.25.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.25.3.tgz", + "integrity": "sha512-iLTJKDbJ4hMvFPgQwwsVoxtHyWpKKPBrxkANrSYewDPaPpT5py5yeVkgPIJ7XYXhndxJpaA3PyALSXQ7u8e/Dw==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-numeric-separator": "^7.10.4" + "dependencies": { + "@babel/types": "^7.25.2" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" } }, - "@babel/plugin-proposal-object-rest-spread": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.18.9.tgz", - "integrity": "sha512-kDDHQ5rflIeY5xl69CEqGEZ0KY369ehsCIEbTGb4siHG5BE9sga/T0r0OUwyZNLMmZE79E1kbsqAjwFCW4ds6Q==", + "node_modules/@babel/plugin-bugfix-firefox-class-in-computed-class-key": { + "version": "7.25.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.25.3.tgz", + "integrity": "sha512-wUrcsxZg6rqBXG05HG1FPYgsP6EvwF4WpBbxIpWIIYnH8wG0gzx3yZY3dtEHas4sTAOGkbTsc9EGPxwff8lRoA==", "dev": true, - "requires": { - "@babel/compat-data": "^7.18.8", - "@babel/helper-compilation-targets": "^7.18.9", - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-transform-parameters": "^7.18.8" + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.8", + "@babel/traverse": "^7.25.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "@babel/plugin-proposal-optional-catch-binding": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.18.6.tgz", - "integrity": "sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw==", + "node_modules/@babel/plugin-bugfix-safari-class-field-initializer-scope": { + "version": "7.25.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-class-field-initializer-scope/-/plugin-bugfix-safari-class-field-initializer-scope-7.25.0.tgz", + "integrity": "sha512-Bm4bH2qsX880b/3ziJ8KD711LT7z4u8CFudmjqle65AZj/HNUFhEf90dqYv6O86buWvSBmeQDjv0Tn2aF/bIBA==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.8" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "@babel/plugin-proposal-optional-chaining": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.18.9.tgz", - "integrity": "sha512-v5nwt4IqBXihxGsW2QmCWMDS3B3bzGIk/EQVZz2ei7f3NJl8NzAJVvUmpDW5q1CRNY+Beb/k58UAH1Km1N411w==", + "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.25.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.25.0.tgz", + "integrity": "sha512-lXwdNZtTmeVOOFtwM/WDe7yg1PL8sYhRk/XH0FzbR2HDQ0xC+EnQ/JHeoMYSavtU115tnUk0q9CDyq8si+LMAA==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9", - "@babel/helper-skip-transparent-expression-wrappers": "^7.18.9", - "@babel/plugin-syntax-optional-chaining": "^7.8.3" + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.8" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "@babel/plugin-proposal-private-methods": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.18.6.tgz", - "integrity": "sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA==", + "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.24.7.tgz", + "integrity": "sha512-+izXIbke1T33mY4MSNnrqhPXDz01WYhEf3yF5NbnUtkiNnm+XBZJl3kNfoK6NKmYlz/D07+l2GWVK/QfDkNCuQ==", "dev": true, - "requires": { - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7", + "@babel/helper-skip-transparent-expression-wrappers": "^7.24.7", + "@babel/plugin-transform-optional-chaining": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.13.0" } }, - "@babel/plugin-proposal-private-property-in-object": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.18.6.tgz", - "integrity": "sha512-9Rysx7FOctvT5ouj5JODjAFAkgGoudQuLPamZb0v1TGLpapdNaftzifU8NTWQm0IRjqoYypdrSmyWgkocDQ8Dw==", + "node_modules/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": { + "version": "7.25.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.25.0.tgz", + "integrity": "sha512-tggFrk1AIShG/RUQbEwt2Tr/E+ObkfwrPjR6BjbRvsx24+PSjK8zrq0GWPNCjo8qpRx4DuJzlcvWJqlm+0h3kw==", "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-create-class-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5" + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.8", + "@babel/traverse": "^7.25.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "@babel/plugin-proposal-unicode-property-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz", - "integrity": "sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==", + "node_modules/@babel/plugin-proposal-private-property-in-object": { + "version": "7.21.0-placeholder-for-preset-env.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz", + "integrity": "sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==", "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-syntax-async-generators": { + "node_modules/@babel/plugin-syntax-async-generators": { "version": "7.8.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", - "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-syntax-bigint": { + "node_modules/@babel/plugin-syntax-bigint": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", "dev": true, - "requires": { + "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-syntax-class-properties": { + "node_modules/@babel/plugin-syntax-class-properties": { "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", - "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-syntax-class-static-block": { + "node_modules/@babel/plugin-syntax-class-static-block": { "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", - "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-syntax-dynamic-import": { + "node_modules/@babel/plugin-syntax-dynamic-import": { "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", - "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-syntax-export-namespace-from": { + "node_modules/@babel/plugin-syntax-export-namespace-from": { "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", - "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@babel/helper-plugin-utils": "^7.8.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-syntax-import-assertions": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.18.6.tgz", - "integrity": "sha512-/DU3RXad9+bZwrgWJQKbr39gYbJpLJHezqEzRzi/BHRlJ9zsQb4CK2CA/5apllXNomwA1qHwzvHl+AdEmC5krQ==", + "node_modules/@babel/plugin-syntax-import-assertions": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.24.7.tgz", + "integrity": "sha512-Ec3NRUMoi8gskrkBe3fNmEQfxDvY8bgfQpz6jlk/41kX9eUjvpyqWU7PBP/pLAvMaSQjbMNKJmvX57jP+M6bPg==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-syntax-import-attributes": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.24.1.tgz", - "integrity": "sha512-zhQTMH0X2nVLnb04tz+s7AMuasX8U0FnpE+nHTOhSOINjWMnopoZTxtIKsd45n4GQ/HIZLyfIpoul8e2m0DnRA==", + "node_modules/@babel/plugin-syntax-import-attributes": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.24.7.tgz", + "integrity": "sha512-hbX+lKKeUMGihnK8nvKqmXBInriT3GVjzXKFriV3YC6APGxMbP8RZNFwy91+hocLXq90Mta+HshoB31802bb8A==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.0" - }, "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", - "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", - "dev": true - } + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-syntax-import-meta": { + "node_modules/@babel/plugin-syntax-import-meta": { "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", - "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-syntax-json-strings": { + "node_modules/@babel/plugin-syntax-json-strings": { "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", - "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-syntax-jsx": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.18.6.tgz", - "integrity": "sha512-6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q==", + "node_modules/@babel/plugin-syntax-jsx": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.24.7.tgz", + "integrity": "sha512-6ddciUPe/mpMnOKv/U+RSd2vvVy+Yw/JfBB0ZHYjEZt9NLHmCUylNYlsbqCCS1Bffjlb0fCwC9Vqz+sBz6PsiQ==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-syntax-logical-assignment-operators": { + "node_modules/@babel/plugin-syntax-logical-assignment-operators": { "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", - "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-syntax-nullish-coalescing-operator": { + "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", - "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-syntax-numeric-separator": { + "node_modules/@babel/plugin-syntax-numeric-separator": { "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", - "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-syntax-object-rest-spread": { + "node_modules/@babel/plugin-syntax-object-rest-spread": { "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", - "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-syntax-optional-catch-binding": { + "node_modules/@babel/plugin-syntax-optional-catch-binding": { "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", - "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-syntax-optional-chaining": { + "node_modules/@babel/plugin-syntax-optional-chaining": { "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", - "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-syntax-private-property-in-object": { + "node_modules/@babel/plugin-syntax-private-property-in-object": { "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", - "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-syntax-top-level-await": { + "node_modules/@babel/plugin-syntax-top-level-await": { "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", - "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-syntax-typescript": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.18.6.tgz", - "integrity": "sha512-mAWAuq4rvOepWCBid55JuRNvpTNf2UGVgoz4JV0fXEKolsVZDzsa4NqCef758WZJj/GDu0gVGItjKFiClTAmZA==", + "node_modules/@babel/plugin-syntax-typescript": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.24.7.tgz", + "integrity": "sha512-c/+fVeJBB0FeKsFvwytYiUD+LBvhHjGSI0g446PRGdSVGZLRNArBUno2PETbAly3tpiNAQR5XaZ+JslxkotsbA==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-syntax-unicode-sets-regex": { + "node_modules/@babel/plugin-syntax-unicode-sets-regex": { "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz", - "integrity": "sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@babel/helper-create-regexp-features-plugin": "^7.18.6", "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "@babel/plugin-transform-arrow-functions": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.18.6.tgz", - "integrity": "sha512-9S9X9RUefzrsHZmKMbDXxweEH+YlE8JJEuat9FdvW9Qh1cw7W64jELCtWNkPBPX5En45uy28KGvA/AySqUh8CQ==", + "node_modules/@babel/plugin-transform-arrow-functions": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.24.7.tgz", + "integrity": "sha512-Dt9LQs6iEY++gXUwY03DNFat5C2NbO48jj+j/bSAz6b3HgPs39qcPiYt77fDObIcFwj3/C2ICX9YMwGflUoSHQ==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-async-generator-functions": { - "version": "7.24.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.24.3.tgz", - "integrity": "sha512-Qe26CMYVjpQxJ8zxM1340JFNjZaF+ISWpr1Kt/jGo+ZTUzKkfw/pphEWbRCb+lmSM6k/TOgfYLvmbHkUQ0asIg==", + "node_modules/@babel/plugin-transform-async-generator-functions": { + "version": "7.25.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.25.0.tgz", + "integrity": "sha512-uaIi2FdqzjpAMvVqvB51S42oC2JEVgh0LDsGfZVDysWE8LrJtQC2jvKmOqEYThKyB7bDEb7BP1GYWDm7tABA0Q==", "dev": true, - "requires": { - "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-plugin-utils": "^7.24.0", - "@babel/helper-remap-async-to-generator": "^7.22.20", - "@babel/plugin-syntax-async-generators": "^7.8.4" - }, - "dependencies": { - "@babel/code-frame": { - "version": "7.24.2", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz", - "integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==", - "dev": true, - "requires": { - "@babel/highlight": "^7.24.2", - "picocolors": "^1.0.0" - } - }, - "@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, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@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 - }, - "@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, - "requires": { - "@babel/template": "^7.22.15", - "@babel/types": "^7.23.0" - } - }, - "@babel/helper-plugin-utils": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", - "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", - "dev": true - }, - "@babel/helper-remap-async-to-generator": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.22.20.tgz", - "integrity": "sha512-pBGyV4uBqOns+0UvhsTO8qgl8hO89PmiDYv+/COyp1aeMcmfrfruz+/nCMFiYyFF/Knn0yfrC85ZzNFjembFTw==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.22.5", - "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-wrap-function": "^7.22.20" - } - }, - "@babel/helper-string-parser": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", - "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", - "dev": true - }, - "@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 - }, - "@babel/helper-wrap-function": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.22.20.tgz", - "integrity": "sha512-pms/UwkOpnQe/PDAEdV/d7dVCoBbB+R4FvYoHGZz+4VPcg7RtYy2KP7S2lbuWM6FCSgob5wshfGESbC/hzNXZw==", - "dev": true, - "requires": { - "@babel/helper-function-name": "^7.22.5", - "@babel/template": "^7.22.15", - "@babel/types": "^7.22.19" - } - }, - "@babel/highlight": { - "version": "7.24.2", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.2.tgz", - "integrity": "sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.22.20", - "chalk": "^2.4.2", - "js-tokens": "^4.0.0", - "picocolors": "^1.0.0" - } - }, - "@babel/parser": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.4.tgz", - "integrity": "sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg==", - "dev": true - }, - "@babel/template": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", - "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.23.5", - "@babel/parser": "^7.24.0", - "@babel/types": "^7.24.0" - } - }, - "@babel/types": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", - "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", - "dev": true, - "requires": { - "@babel/helper-string-parser": "^7.23.4", - "@babel/helper-validator-identifier": "^7.22.20", - "to-fast-properties": "^2.0.0" - } - } + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.8", + "@babel/helper-remap-async-to-generator": "^7.25.0", + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/traverse": "^7.25.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-async-to-generator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.18.6.tgz", - "integrity": "sha512-ARE5wZLKnTgPW7/1ftQmSi1CmkqqHo2DNmtztFhvgtOWSDfq0Cq9/9L+KnZNYSNrydBekhW3rwShduf59RoXag==", + "node_modules/@babel/plugin-transform-async-to-generator": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.24.7.tgz", + "integrity": "sha512-SQY01PcJfmQ+4Ash7NE+rpbLFbmqA2GPIgqzxfFTL4t1FKRq4zTms/7htKpoCUI9OcFYgzqfmCdH53s6/jn5fA==", "dev": true, - "requires": { - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-remap-async-to-generator": "^7.18.6" + "dependencies": { + "@babel/helper-module-imports": "^7.24.7", + "@babel/helper-plugin-utils": "^7.24.7", + "@babel/helper-remap-async-to-generator": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-block-scoped-functions": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.18.6.tgz", - "integrity": "sha512-ExUcOqpPWnliRcPqves5HJcJOvHvIIWfuS4sroBUenPuMdmW+SMHDakmtS7qOo13sVppmUijqeTv7qqGsvURpQ==", + "node_modules/@babel/plugin-transform-block-scoped-functions": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.24.7.tgz", + "integrity": "sha512-yO7RAz6EsVQDaBH18IDJcMB1HnrUn2FJ/Jslc/WtPPWcjhpUJXU/rjbwmluzp7v/ZzWcEhTMXELnnsz8djWDwQ==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-block-scoping": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.18.9.tgz", - "integrity": "sha512-5sDIJRV1KtQVEbt/EIBwGy4T01uYIo4KRB3VUqzkhrAIOGx7AoctL9+Ux88btY0zXdDyPJ9mW+bg+v+XEkGmtw==", + "node_modules/@babel/plugin-transform-block-scoping": { + "version": "7.25.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.25.0.tgz", + "integrity": "sha512-yBQjYoOjXlFv9nlXb3f1casSHOZkWr29NX+zChVanLg5Nc157CrbEX9D7hxxtTpuFy7Q0YzmmWfJxzvps4kXrQ==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.8" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-class-properties": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.24.1.tgz", - "integrity": "sha512-OMLCXi0NqvJfORTaPQBwqLXHhb93wkBKZ4aNwMl6WtehO7ar+cmp+89iPEQPqxAnxsOKTaMcs3POz3rKayJ72g==", + "node_modules/@babel/plugin-transform-class-properties": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.24.7.tgz", + "integrity": "sha512-vKbfawVYayKcSeSR5YYzzyXvsDFWU2mD8U5TFeXtbCPLFUqe7GyCgvO6XDHzje862ODrOwy6WCPmKeWHbCFJ4w==", "dev": true, - "requires": { - "@babel/helper-create-class-features-plugin": "^7.24.1", - "@babel/helper-plugin-utils": "^7.24.0" - }, "dependencies": { - "@babel/code-frame": { - "version": "7.24.2", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz", - "integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==", - "dev": true, - "requires": { - "@babel/highlight": "^7.24.2", - "picocolors": "^1.0.0" - } - }, - "@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, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@babel/helper-create-class-features-plugin": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.24.4.tgz", - "integrity": "sha512-lG75yeuUSVu0pIcbhiYMXBXANHrpUPaOfu7ryAzskCgKUHuAxRQI5ssrtmF0X9UXldPlvT0XM/A4F44OXRt6iQ==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.22.5", - "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-function-name": "^7.23.0", - "@babel/helper-member-expression-to-functions": "^7.23.0", - "@babel/helper-optimise-call-expression": "^7.22.5", - "@babel/helper-replace-supers": "^7.24.1", - "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "semver": "^6.3.1" - } - }, - "@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 - }, - "@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, - "requires": { - "@babel/template": "^7.22.15", - "@babel/types": "^7.23.0" - } - }, - "@babel/helper-member-expression-to-functions": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.23.0.tgz", - "integrity": "sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA==", - "dev": true, - "requires": { - "@babel/types": "^7.23.0" - } - }, - "@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, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@babel/helper-plugin-utils": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", - "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", - "dev": true - }, - "@babel/helper-replace-supers": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.24.1.tgz", - "integrity": "sha512-QCR1UqC9BzG5vZl8BMicmZ28RuUBnHhAMddD8yHFHDRH9lLTZ9uUPehX8ctVPT8l0TKblJidqcgUUKGVrePleQ==", - "dev": true, - "requires": { - "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-member-expression-to-functions": "^7.23.0", - "@babel/helper-optimise-call-expression": "^7.22.5" - } - }, - "@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, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@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, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@babel/helper-string-parser": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", - "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", - "dev": true - }, - "@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 - }, - "@babel/highlight": { - "version": "7.24.2", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.2.tgz", - "integrity": "sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.22.20", - "chalk": "^2.4.2", - "js-tokens": "^4.0.0", - "picocolors": "^1.0.0" - } - }, - "@babel/parser": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.4.tgz", - "integrity": "sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg==", - "dev": true - }, - "@babel/template": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", - "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.23.5", - "@babel/parser": "^7.24.0", - "@babel/types": "^7.24.0" - } - }, - "@babel/types": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", - "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", - "dev": true, - "requires": { - "@babel/helper-string-parser": "^7.23.4", - "@babel/helper-validator-identifier": "^7.22.20", - "to-fast-properties": "^2.0.0" - } - }, - "semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true - } + "@babel/helper-create-class-features-plugin": "^7.24.7", + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-class-static-block": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.24.4.tgz", - "integrity": "sha512-B8q7Pz870Hz/q9UgP8InNpY01CSLDSCyqX7zcRuv3FcPl87A2G17lASroHWaCtbdIcbYzOZ7kWmXFKbijMSmFg==", + "node_modules/@babel/plugin-transform-class-static-block": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.24.7.tgz", + "integrity": "sha512-HMXK3WbBPpZQufbMG4B46A90PkuuhN9vBCb5T8+VAHqvAqvcLi+2cKoukcpmUYkszLhScU3l1iudhrks3DggRQ==", "dev": true, - "requires": { - "@babel/helper-create-class-features-plugin": "^7.24.4", - "@babel/helper-plugin-utils": "^7.24.0", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.24.7", + "@babel/helper-plugin-utils": "^7.24.7", "@babel/plugin-syntax-class-static-block": "^7.14.5" }, - "dependencies": { - "@babel/code-frame": { - "version": "7.24.2", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz", - "integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==", - "dev": true, - "requires": { - "@babel/highlight": "^7.24.2", - "picocolors": "^1.0.0" - } - }, - "@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, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@babel/helper-create-class-features-plugin": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.24.4.tgz", - "integrity": "sha512-lG75yeuUSVu0pIcbhiYMXBXANHrpUPaOfu7ryAzskCgKUHuAxRQI5ssrtmF0X9UXldPlvT0XM/A4F44OXRt6iQ==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.22.5", - "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-function-name": "^7.23.0", - "@babel/helper-member-expression-to-functions": "^7.23.0", - "@babel/helper-optimise-call-expression": "^7.22.5", - "@babel/helper-replace-supers": "^7.24.1", - "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "semver": "^6.3.1" - } - }, - "@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 - }, - "@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, - "requires": { - "@babel/template": "^7.22.15", - "@babel/types": "^7.23.0" - } - }, - "@babel/helper-member-expression-to-functions": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.23.0.tgz", - "integrity": "sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA==", - "dev": true, - "requires": { - "@babel/types": "^7.23.0" - } - }, - "@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, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@babel/helper-plugin-utils": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", - "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", - "dev": true - }, - "@babel/helper-replace-supers": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.24.1.tgz", - "integrity": "sha512-QCR1UqC9BzG5vZl8BMicmZ28RuUBnHhAMddD8yHFHDRH9lLTZ9uUPehX8ctVPT8l0TKblJidqcgUUKGVrePleQ==", - "dev": true, - "requires": { - "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-member-expression-to-functions": "^7.23.0", - "@babel/helper-optimise-call-expression": "^7.22.5" - } - }, - "@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, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@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, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@babel/helper-string-parser": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", - "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", - "dev": true - }, - "@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 - }, - "@babel/highlight": { - "version": "7.24.2", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.2.tgz", - "integrity": "sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.22.20", - "chalk": "^2.4.2", - "js-tokens": "^4.0.0", - "picocolors": "^1.0.0" - } - }, - "@babel/parser": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.4.tgz", - "integrity": "sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg==", - "dev": true - }, - "@babel/template": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", - "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.23.5", - "@babel/parser": "^7.24.0", - "@babel/types": "^7.24.0" - } - }, - "@babel/types": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", - "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", - "dev": true, - "requires": { - "@babel/helper-string-parser": "^7.23.4", - "@babel/helper-validator-identifier": "^7.22.20", - "to-fast-properties": "^2.0.0" - } - }, - "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": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.12.0" } }, - "@babel/plugin-transform-classes": { - "version": "7.19.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.19.0.tgz", - "integrity": "sha512-YfeEE9kCjqTS9IitkgfJuxjcEtLUHMqa8yUJ6zdz8vR7hKuo6mOy2C05P0F1tdMmDCeuyidKnlrw/iTppHcr2A==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-compilation-targets": "^7.19.0", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.19.0", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/helper-plugin-utils": "^7.19.0", - "@babel/helper-replace-supers": "^7.18.9", - "@babel/helper-split-export-declaration": "^7.18.6", + "node_modules/@babel/plugin-transform-classes": { + "version": "7.25.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.25.0.tgz", + "integrity": "sha512-xyi6qjr/fYU304fiRwFbekzkqVJZ6A7hOjWZd+89FVcBqPV3S9Wuozz82xdpLspckeaafntbzglaW4pqpzvtSw==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.24.7", + "@babel/helper-compilation-targets": "^7.24.8", + "@babel/helper-plugin-utils": "^7.24.8", + "@babel/helper-replace-supers": "^7.25.0", + "@babel/traverse": "^7.25.0", "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-computed-properties": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.18.9.tgz", - "integrity": "sha512-+i0ZU1bCDymKakLxn5srGHrsAPRELC2WIbzwjLhHW9SIE1cPYkLCL0NlnXMZaM1vhfgA2+M7hySk42VBvrkBRw==", + "node_modules/@babel/plugin-transform-computed-properties": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.24.7.tgz", + "integrity": "sha512-25cS7v+707Gu6Ds2oY6tCkUwsJ9YIDbggd9+cu9jzzDgiNq7hR/8dkzxWfKWnTic26vsI3EsCXNd4iEB6e8esQ==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7", + "@babel/template": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-destructuring": { - "version": "7.18.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.18.13.tgz", - "integrity": "sha512-TodpQ29XekIsex2A+YJPj5ax2plkGa8YYY6mFjCohk/IG9IY42Rtuj1FuDeemfg2ipxIFLzPeA83SIBnlhSIow==", + "node_modules/@babel/plugin-transform-destructuring": { + "version": "7.24.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.24.8.tgz", + "integrity": "sha512-36e87mfY8TnRxc7yc6M9g9gOB7rKgSahqkIKwLpz4Ppk2+zC2Cy1is0uwtuSG6AE4zlTOUa+7JGz9jCJGLqQFQ==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.8" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-dotall-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.18.6.tgz", - "integrity": "sha512-6S3jpun1eEbAxq7TdjLotAsl4WpQI9DxfkycRcKrjhQYzU87qpXdknpBg/e+TdcMehqGnLFi7tnFUBR02Vq6wg==", + "node_modules/@babel/plugin-transform-dotall-regex": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.24.7.tgz", + "integrity": "sha512-ZOA3W+1RRTSWvyqcMJDLqbchh7U4NRGqwRfFSVbOLS/ePIP4vHB5e8T8eXcuqyN1QkgKyj5wuW0lcS85v4CrSw==", "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.24.7", + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-duplicate-keys": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.18.9.tgz", - "integrity": "sha512-d2bmXCtZXYc59/0SanQKbiWINadaJXqtvIQIzd4+hNwkWBgyCd5F/2t1kXoUdvPMrxzPvhK6EMQRROxsue+mfw==", + "node_modules/@babel/plugin-transform-duplicate-keys": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.24.7.tgz", + "integrity": "sha512-JdYfXyCRihAe46jUIliuL2/s0x0wObgwwiGxw/UbgJBr20gQBThrokO4nYKgWkD7uBaqM7+9x5TU7NkExZJyzw==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-dynamic-import": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.24.1.tgz", - "integrity": "sha512-av2gdSTyXcJVdI+8aFZsCAtR29xJt0S5tas+Ef8NvBNmD1a+N/3ecMLeMBgfcK+xzsjdLDT6oHt+DFPyeqUbDA==", + "node_modules/@babel/plugin-transform-duplicate-named-capturing-groups-regex": { + "version": "7.25.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-named-capturing-groups-regex/-/plugin-transform-duplicate-named-capturing-groups-regex-7.25.0.tgz", + "integrity": "sha512-YLpb4LlYSc3sCUa35un84poXoraOiQucUTTu8X1j18JV+gNa8E0nyUf/CjZ171IRGr4jEguF+vzJU66QZhn29g==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.0", - "@babel/plugin-syntax-dynamic-import": "^7.8.3" + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.25.0", + "@babel/helper-plugin-utils": "^7.24.8" }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-dynamic-import": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.24.7.tgz", + "integrity": "sha512-sc3X26PhZQDb3JhORmakcbvkeInvxz+A8oda99lj7J60QRuPZvNAk9wQlTBS1ZynelDrDmTU4pw1tyc5d5ZMUg==", + "dev": true, "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", - "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", - "dev": true - } + "@babel/helper-plugin-utils": "^7.24.7", + "@babel/plugin-syntax-dynamic-import": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-exponentiation-operator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.18.6.tgz", - "integrity": "sha512-wzEtc0+2c88FVR34aQmiz56dxEkxr2g8DQb/KfaFa1JYXOFVsbhvAonFN6PwVWj++fKmku8NP80plJ5Et4wqHw==", + "node_modules/@babel/plugin-transform-exponentiation-operator": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.24.7.tgz", + "integrity": "sha512-Rqe/vSc9OYgDajNIK35u7ot+KeCoetqQYFXM4Epf7M7ez3lWlOjrDjrwMei6caCVhfdw+mIKD4cgdGNy5JQotQ==", "dev": true, - "requires": { - "@babel/helper-builder-binary-assignment-operator-visitor": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" + "dependencies": { + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.24.7", + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-export-namespace-from": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.24.1.tgz", - "integrity": "sha512-Ft38m/KFOyzKw2UaJFkWG9QnHPG/Q/2SkOrRk4pNBPg5IPZ+dOxcmkK5IyuBcxiNPyyYowPGUReyBvrvZs7IlQ==", + "node_modules/@babel/plugin-transform-export-namespace-from": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.24.7.tgz", + "integrity": "sha512-v0K9uNYsPL3oXZ/7F9NNIbAj2jv1whUEtyA6aujhekLs56R++JDQuzRcP2/z4WX5Vg/c5lE9uWZA0/iUoFhLTA==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.0", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7", "@babel/plugin-syntax-export-namespace-from": "^7.8.3" }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", - "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", - "dev": true - } + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-for-of": { - "version": "7.18.8", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.18.8.tgz", - "integrity": "sha512-yEfTRnjuskWYo0k1mHUqrVWaZwrdq8AYbfrpqULOJOaucGSp4mNMVps+YtA8byoevxS/urwU75vyhQIxcCgiBQ==", + "node_modules/@babel/plugin-transform-for-of": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.24.7.tgz", + "integrity": "sha512-wo9ogrDG1ITTTBsy46oGiN1dS9A7MROBTcYsfS8DtsImMkHk9JXJ3EWQM6X2SUw4x80uGPlwj0o00Uoc6nEE3g==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7", + "@babel/helper-skip-transparent-expression-wrappers": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-function-name": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.18.9.tgz", - "integrity": "sha512-WvIBoRPaJQ5yVHzcnJFor7oS5Ls0PYixlTYE63lCj2RtdQEl15M68FXQlxnG6wdraJIXRdR7KI+hQ7q/9QjrCQ==", + "node_modules/@babel/plugin-transform-function-name": { + "version": "7.25.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.25.1.tgz", + "integrity": "sha512-TVVJVdW9RKMNgJJlLtHsKDTydjZAbwIsn6ySBPQaEAUU5+gVvlJt/9nRmqVbsV/IBanRjzWoaAQKLoamWVOUuA==", "dev": true, - "requires": { - "@babel/helper-compilation-targets": "^7.18.9", - "@babel/helper-function-name": "^7.18.9", - "@babel/helper-plugin-utils": "^7.18.9" + "dependencies": { + "@babel/helper-compilation-targets": "^7.24.8", + "@babel/helper-plugin-utils": "^7.24.8", + "@babel/traverse": "^7.25.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-json-strings": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.24.1.tgz", - "integrity": "sha512-U7RMFmRvoasscrIFy5xA4gIp8iWnWubnKkKuUGJjsuOH7GfbMkB+XZzeslx2kLdEGdOJDamEmCqOks6e8nv8DQ==", + "node_modules/@babel/plugin-transform-json-strings": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.24.7.tgz", + "integrity": "sha512-2yFnBGDvRuxAaE/f0vfBKvtnvvqU8tGpMHqMNpTN2oWMKIR3NqFkjaAgGwawhqK/pIN2T3XdjGPdaG0vDhOBGw==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.0", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7", "@babel/plugin-syntax-json-strings": "^7.8.3" }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", - "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", - "dev": true - } + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-literals": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.18.9.tgz", - "integrity": "sha512-IFQDSRoTPnrAIrI5zoZv73IFeZu2dhu6irxQjY9rNjTT53VmKg9fenjvoiOWOkJ6mm4jKVPtdMzBY98Fp4Z4cg==", + "node_modules/@babel/plugin-transform-literals": { + "version": "7.25.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.25.2.tgz", + "integrity": "sha512-HQI+HcTbm9ur3Z2DkO+jgESMAMcYLuN/A7NRw9juzxAezN9AvqvUTnpKP/9kkYANz6u7dFlAyOu44ejuGySlfw==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.8" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-logical-assignment-operators": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.24.1.tgz", - "integrity": "sha512-OhN6J4Bpz+hIBqItTeWJujDOfNP+unqv/NJgyhlpSqgBTPm37KkMmZV6SYcOj+pnDbdcl1qRGV/ZiIjX9Iy34w==", + "node_modules/@babel/plugin-transform-logical-assignment-operators": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.24.7.tgz", + "integrity": "sha512-4D2tpwlQ1odXmTEIFWy9ELJcZHqrStlzK/dAOWYyxX3zT0iXQB6banjgeOJQXzEc4S0E0a5A+hahxPaEFYftsw==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.0", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7", "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", - "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", - "dev": true - } + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-member-expression-literals": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.18.6.tgz", - "integrity": "sha512-qSF1ihLGO3q+/g48k85tUjD033C29TNTVB2paCwZPVmOsjn9pClvYYrM2VeJpBY2bcNkuny0YUyTNRyRxJ54KA==", + "node_modules/@babel/plugin-transform-member-expression-literals": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.24.7.tgz", + "integrity": "sha512-T/hRC1uqrzXMKLQ6UCwMT85S3EvqaBXDGf0FaMf4446Qx9vKwlghvee0+uuZcDUCZU5RuNi4781UQ7R308zzBw==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-modules-amd": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.18.6.tgz", - "integrity": "sha512-Pra5aXsmTsOnjM3IajS8rTaLCy++nGM4v3YR4esk5PCsyg9z8NA5oQLwxzMUtDBd8F+UmVza3VxoAaWCbzH1rg==", + "node_modules/@babel/plugin-transform-modules-amd": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.24.7.tgz", + "integrity": "sha512-9+pB1qxV3vs/8Hdmz/CulFB8w2tuu6EB94JZFsjdqxQokwGa9Unap7Bo2gGBGIvPmDIVvQrom7r5m/TCDMURhg==", "dev": true, - "requires": { - "@babel/helper-module-transforms": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "babel-plugin-dynamic-import-node": "^2.3.3" + "dependencies": { + "@babel/helper-module-transforms": "^7.24.7", + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-modules-commonjs": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.18.6.tgz", - "integrity": "sha512-Qfv2ZOWikpvmedXQJDSbxNqy7Xr/j2Y8/KfijM0iJyKkBTmWuvCA1yeH1yDM7NJhBW/2aXxeucLj6i80/LAJ/Q==", + "node_modules/@babel/plugin-transform-modules-commonjs": { + "version": "7.24.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.24.8.tgz", + "integrity": "sha512-WHsk9H8XxRs3JXKWFiqtQebdh9b/pTk4EgueygFzYlTKAg0Ud985mSevdNjdXdFBATSKVJGQXP1tv6aGbssLKA==", "dev": true, - "requires": { - "@babel/helper-module-transforms": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-simple-access": "^7.18.6", - "babel-plugin-dynamic-import-node": "^2.3.3" + "dependencies": { + "@babel/helper-module-transforms": "^7.24.8", + "@babel/helper-plugin-utils": "^7.24.8", + "@babel/helper-simple-access": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-modules-systemjs": { - "version": "7.19.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.19.0.tgz", - "integrity": "sha512-x9aiR0WXAWmOWsqcsnrzGR+ieaTMVyGyffPVA7F8cXAGt/UxefYv6uSHZLkAFChN5M5Iy1+wjE+xJuPt22H39A==", + "node_modules/@babel/plugin-transform-modules-systemjs": { + "version": "7.25.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.25.0.tgz", + "integrity": "sha512-YPJfjQPDXxyQWg/0+jHKj1llnY5f/R6a0p/vP4lPymxLu7Lvl4k2WMitqi08yxwQcCVUUdG9LCUj4TNEgAp3Jw==", "dev": true, - "requires": { - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-module-transforms": "^7.19.0", - "@babel/helper-plugin-utils": "^7.19.0", - "@babel/helper-validator-identifier": "^7.18.6", - "babel-plugin-dynamic-import-node": "^2.3.3" + "dependencies": { + "@babel/helper-module-transforms": "^7.25.0", + "@babel/helper-plugin-utils": "^7.24.8", + "@babel/helper-validator-identifier": "^7.24.7", + "@babel/traverse": "^7.25.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-modules-umd": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.18.6.tgz", - "integrity": "sha512-dcegErExVeXcRqNtkRU/z8WlBLnvD4MRnHgNs3MytRO1Mn1sHRyhbcpYbVMGclAqOjdW+9cfkdZno9dFdfKLfQ==", + "node_modules/@babel/plugin-transform-modules-umd": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.24.7.tgz", + "integrity": "sha512-3aytQvqJ/h9z4g8AsKPLvD4Zqi2qT+L3j7XoFFu1XBlZWEl2/1kWnhmAbxpLgPrHSY0M6UA02jyTiwUVtiKR6A==", "dev": true, - "requires": { - "@babel/helper-module-transforms": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" + "dependencies": { + "@babel/helper-module-transforms": "^7.24.7", + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-named-capturing-groups-regex": { - "version": "7.19.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.19.1.tgz", - "integrity": "sha512-oWk9l9WItWBQYS4FgXD4Uyy5kq898lvkXpXQxoJEY1RnvPk4R/Dvu2ebXU9q8lP+rlMwUQTFf2Ok6d78ODa0kw==", + "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.24.7.tgz", + "integrity": "sha512-/jr7h/EWeJtk1U/uz2jlsCioHkZk1JJZVcc8oQsJ1dUlaJD83f4/6Zeh2aHt9BIFokHIsSeDfhUmju0+1GPd6g==", "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.19.0", - "@babel/helper-plugin-utils": "^7.19.0" + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.24.7", + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "@babel/plugin-transform-new-target": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.18.6.tgz", - "integrity": "sha512-DjwFA/9Iu3Z+vrAn+8pBUGcjhxKguSMlsFqeCKbhb9BAV756v0krzVK04CRDi/4aqmk8BsHb4a/gFcaA5joXRw==", + "node_modules/@babel/plugin-transform-new-target": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.24.7.tgz", + "integrity": "sha512-RNKwfRIXg4Ls/8mMTza5oPF5RkOW8Wy/WgMAp1/F1yZ8mMbtwXW+HDoJiOsagWrAhI5f57Vncrmr9XeT4CVapA==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-nullish-coalescing-operator": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.24.1.tgz", - "integrity": "sha512-iQ+caew8wRrhCikO5DrUYx0mrmdhkaELgFa+7baMcVuhxIkN7oxt06CZ51D65ugIb1UWRQ8oQe+HXAVM6qHFjw==", + "node_modules/@babel/plugin-transform-nullish-coalescing-operator": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.24.7.tgz", + "integrity": "sha512-Ts7xQVk1OEocqzm8rHMXHlxvsfZ0cEF2yomUqpKENHWMF4zKk175Y4q8H5knJes6PgYad50uuRmt3UJuhBw8pQ==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.0", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7", "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", - "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", - "dev": true - } + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-numeric-separator": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.24.1.tgz", - "integrity": "sha512-7GAsGlK4cNL2OExJH1DzmDeKnRv/LXq0eLUSvudrehVA5Rgg4bIrqEUW29FbKMBRT0ztSqisv7kjP+XIC4ZMNw==", + "node_modules/@babel/plugin-transform-numeric-separator": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.24.7.tgz", + "integrity": "sha512-e6q1TiVUzvH9KRvicuxdBTUj4AdKSRwzIyFFnfnezpCfP2/7Qmbb8qbU2j7GODbl4JMkblitCQjKYUaX/qkkwA==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.0", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7", "@babel/plugin-syntax-numeric-separator": "^7.10.4" }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", - "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", - "dev": true - } + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-object-rest-spread": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.24.1.tgz", - "integrity": "sha512-XjD5f0YqOtebto4HGISLNfiNMTTs6tbkFf2TOqJlYKYmbo+mN9Dnpl4SRoofiziuOWMIyq3sZEUqLo3hLITFEA==", + "node_modules/@babel/plugin-transform-object-rest-spread": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.24.7.tgz", + "integrity": "sha512-4QrHAr0aXQCEFni2q4DqKLD31n2DL+RxcwnNjDFkSG0eNQ/xCavnRkfCUjsyqGC2OviNJvZOF/mQqZBw7i2C5Q==", "dev": true, - "requires": { - "@babel/helper-compilation-targets": "^7.23.6", - "@babel/helper-plugin-utils": "^7.24.0", + "dependencies": { + "@babel/helper-compilation-targets": "^7.24.7", + "@babel/helper-plugin-utils": "^7.24.7", "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-transform-parameters": "^7.24.1" + "@babel/plugin-transform-parameters": "^7.24.7" }, - "dependencies": { - "@babel/compat-data": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.4.tgz", - "integrity": "sha512-vg8Gih2MLK+kOkHJp4gBEIkyaIi00jgWot2D9QOmmfLC8jINSOzmCLta6Bvz/JSBCqnegV0L80jhxkol5GWNfQ==", - "dev": true - }, - "@babel/helper-compilation-targets": { - "version": "7.23.6", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz", - "integrity": "sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.23.5", - "@babel/helper-validator-option": "^7.23.5", - "browserslist": "^4.22.2", - "lru-cache": "^5.1.1", - "semver": "^6.3.1" - } - }, - "@babel/helper-plugin-utils": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", - "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", - "dev": true - }, - "@babel/helper-validator-option": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz", - "integrity": "sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==", - "dev": true - }, - "@babel/plugin-transform-parameters": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.24.1.tgz", - "integrity": "sha512-8Jl6V24g+Uw5OGPeWNKrKqXPDw2YDjLc53ojwfMcKwlEoETKU9rU0mHUtcg9JntWI/QYzGAXNWEcVHZ+fR+XXg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.0" - } - }, - "browserslist": { - "version": "4.23.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", - "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", - "dev": true, - "requires": { - "caniuse-lite": "^1.0.30001587", - "electron-to-chromium": "^1.4.668", - "node-releases": "^2.0.14", - "update-browserslist-db": "^1.0.13" - } - }, - "caniuse-lite": { - "version": "1.0.30001612", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001612.tgz", - "integrity": "sha512-lFgnZ07UhaCcsSZgWW0K5j4e69dK1u/ltrL9lTUiFOwNHs12S3UMIEYgBV0Z6C6hRDev7iRnMzzYmKabYdXF9g==", - "dev": true - }, - "electron-to-chromium": { - "version": "1.4.748", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.748.tgz", - "integrity": "sha512-VWqjOlPZn70UZ8FTKUOkUvBLeTQ0xpty66qV0yJcAGY2/CthI4xyW9aEozRVtuwv3Kpf5xTesmJUcPwuJmgP4A==", - "dev": true - }, - "node-releases": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", - "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", - "dev": true - }, - "semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true - }, - "update-browserslist-db": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", - "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", - "dev": true, - "requires": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" - } - } + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-object-super": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.18.6.tgz", - "integrity": "sha512-uvGz6zk+pZoS1aTZrOvrbj6Pp/kK2mp45t2B+bTDre2UgsZZ8EZLSJtUg7m/no0zOJUWgFONpB7Zv9W2tSaFlA==", + "node_modules/@babel/plugin-transform-object-super": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.24.7.tgz", + "integrity": "sha512-A/vVLwN6lBrMFmMDmPPz0jnE6ZGx7Jq7d6sT/Ev4H65RER6pZ+kczlf1DthF5N0qaPHBsI7UXiE8Zy66nmAovg==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-replace-supers": "^7.18.6" + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7", + "@babel/helper-replace-supers": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-optional-catch-binding": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.24.1.tgz", - "integrity": "sha512-oBTH7oURV4Y+3EUrf6cWn1OHio3qG/PVwO5J03iSJmBg6m2EhKjkAu/xuaXaYwWW9miYtvbWv4LNf0AmR43LUA==", + "node_modules/@babel/plugin-transform-optional-catch-binding": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.24.7.tgz", + "integrity": "sha512-uLEndKqP5BfBbC/5jTwPxLh9kqPWWgzN/f8w6UwAIirAEqiIVJWWY312X72Eub09g5KF9+Zn7+hT7sDxmhRuKA==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.0", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7", "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", - "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", - "dev": true - } + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-optional-chaining": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.24.1.tgz", - "integrity": "sha512-n03wmDt+987qXwAgcBlnUUivrZBPZ8z1plL0YvgQalLm+ZE5BMhGm94jhxXtA1wzv1Cu2aaOv1BM9vbVttrzSg==", + "node_modules/@babel/plugin-transform-optional-chaining": { + "version": "7.24.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.24.8.tgz", + "integrity": "sha512-5cTOLSMs9eypEy8JUVvIKOu6NgvbJMnpG62VpIHrTmROdQ+L5mDAaI40g25k5vXti55JWNX5jCkq3HZxXBQANw==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.0", - "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.8", + "@babel/helper-skip-transparent-expression-wrappers": "^7.24.7", "@babel/plugin-syntax-optional-chaining": "^7.8.3" }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-parameters": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.24.7.tgz", + "integrity": "sha512-yGWW5Rr+sQOhK0Ot8hjDJuxU3XLRQGflvT4lhlSY0DFvdb3TwKaY26CJzHtYllU0vT9j58hc37ndFPsqT1SrzA==", + "dev": true, "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", - "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", - "dev": true - }, - "@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, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@babel/helper-string-parser": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", - "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", - "dev": true - }, - "@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 - }, - "@babel/types": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", - "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", - "dev": true, - "requires": { - "@babel/helper-string-parser": "^7.23.4", - "@babel/helper-validator-identifier": "^7.22.20", - "to-fast-properties": "^2.0.0" - } - } + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-parameters": { - "version": "7.18.8", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.18.8.tgz", - "integrity": "sha512-ivfbE3X2Ss+Fj8nnXvKJS6sjRG4gzwPMsP+taZC+ZzEGjAYlvENixmt1sZ5Ca6tWls+BlKSGKPJ6OOXvXCbkFg==", + "node_modules/@babel/plugin-transform-private-methods": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.24.7.tgz", + "integrity": "sha512-COTCOkG2hn4JKGEKBADkA8WNb35TGkkRbI5iT845dB+NyqgO8Hn+ajPbSnIQznneJTa3d30scb6iz/DhH8GsJQ==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.24.7", + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-private-methods": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.24.1.tgz", - "integrity": "sha512-tGvisebwBO5em4PaYNqt4fkw56K2VALsAbAakY0FjTYqJp7gfdrgr7YX76Or8/cpik0W6+tj3rZ0uHU9Oil4tw==", + "node_modules/@babel/plugin-transform-private-property-in-object": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.24.7.tgz", + "integrity": "sha512-9z76mxwnwFxMyxZWEgdgECQglF2Q7cFLm0kMf8pGwt+GSJsY0cONKj/UuO4bOH0w/uAel3ekS4ra5CEAyJRmDA==", "dev": true, - "requires": { - "@babel/helper-create-class-features-plugin": "^7.24.1", - "@babel/helper-plugin-utils": "^7.24.0" + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.24.7", + "@babel/helper-create-class-features-plugin": "^7.24.7", + "@babel/helper-plugin-utils": "^7.24.7", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5" }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-property-literals": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.24.7.tgz", + "integrity": "sha512-EMi4MLQSHfd2nrCqQEWxFdha2gBCqU4ZcCng4WBGZ5CJL4bBRW0ptdqqDdeirGZcpALazVVNJqRmsO8/+oNCBA==", + "dev": true, "dependencies": { - "@babel/code-frame": { - "version": "7.24.2", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz", - "integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==", - "dev": true, - "requires": { - "@babel/highlight": "^7.24.2", - "picocolors": "^1.0.0" - } - }, - "@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, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@babel/helper-create-class-features-plugin": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.24.4.tgz", - "integrity": "sha512-lG75yeuUSVu0pIcbhiYMXBXANHrpUPaOfu7ryAzskCgKUHuAxRQI5ssrtmF0X9UXldPlvT0XM/A4F44OXRt6iQ==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.22.5", - "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-function-name": "^7.23.0", - "@babel/helper-member-expression-to-functions": "^7.23.0", - "@babel/helper-optimise-call-expression": "^7.22.5", - "@babel/helper-replace-supers": "^7.24.1", - "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "semver": "^6.3.1" - } - }, - "@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 - }, - "@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, - "requires": { - "@babel/template": "^7.22.15", - "@babel/types": "^7.23.0" - } - }, - "@babel/helper-member-expression-to-functions": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.23.0.tgz", - "integrity": "sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA==", - "dev": true, - "requires": { - "@babel/types": "^7.23.0" - } - }, - "@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, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@babel/helper-plugin-utils": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", - "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", - "dev": true - }, - "@babel/helper-replace-supers": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.24.1.tgz", - "integrity": "sha512-QCR1UqC9BzG5vZl8BMicmZ28RuUBnHhAMddD8yHFHDRH9lLTZ9uUPehX8ctVPT8l0TKblJidqcgUUKGVrePleQ==", - "dev": true, - "requires": { - "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-member-expression-to-functions": "^7.23.0", - "@babel/helper-optimise-call-expression": "^7.22.5" - } - }, - "@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, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@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, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@babel/helper-string-parser": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", - "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", - "dev": true - }, - "@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 - }, - "@babel/highlight": { - "version": "7.24.2", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.2.tgz", - "integrity": "sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.22.20", - "chalk": "^2.4.2", - "js-tokens": "^4.0.0", - "picocolors": "^1.0.0" - } - }, - "@babel/parser": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.4.tgz", - "integrity": "sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg==", - "dev": true - }, - "@babel/template": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", - "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.23.5", - "@babel/parser": "^7.24.0", - "@babel/types": "^7.24.0" - } - }, - "@babel/types": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", - "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", - "dev": true, - "requires": { - "@babel/helper-string-parser": "^7.23.4", - "@babel/helper-validator-identifier": "^7.22.20", - "to-fast-properties": "^2.0.0" - } - }, - "semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true - } + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-private-property-in-object": { + "node_modules/@babel/plugin-transform-react-constant-elements": { "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.24.1.tgz", - "integrity": "sha512-pTHxDVa0BpUbvAgX3Gat+7cSciXqUcY9j2VZKTbSB6+VQGpNgNO9ailxTGHSXlqOnX1Hcx1Enme2+yv7VqP9bg==", "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.22.5", - "@babel/helper-create-class-features-plugin": "^7.24.1", - "@babel/helper-plugin-utils": "^7.24.0", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5" - }, + "license": "MIT", "dependencies": { - "@babel/code-frame": { - "version": "7.24.2", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz", - "integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==", - "dev": true, - "requires": { - "@babel/highlight": "^7.24.2", - "picocolors": "^1.0.0" - } - }, - "@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, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@babel/helper-create-class-features-plugin": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.24.4.tgz", - "integrity": "sha512-lG75yeuUSVu0pIcbhiYMXBXANHrpUPaOfu7ryAzskCgKUHuAxRQI5ssrtmF0X9UXldPlvT0XM/A4F44OXRt6iQ==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.22.5", - "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-function-name": "^7.23.0", - "@babel/helper-member-expression-to-functions": "^7.23.0", - "@babel/helper-optimise-call-expression": "^7.22.5", - "@babel/helper-replace-supers": "^7.24.1", - "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "semver": "^6.3.1" - } - }, - "@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 - }, - "@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, - "requires": { - "@babel/template": "^7.22.15", - "@babel/types": "^7.23.0" - } - }, - "@babel/helper-member-expression-to-functions": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.23.0.tgz", - "integrity": "sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA==", - "dev": true, - "requires": { - "@babel/types": "^7.23.0" - } - }, - "@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, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@babel/helper-plugin-utils": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", - "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", - "dev": true - }, - "@babel/helper-replace-supers": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.24.1.tgz", - "integrity": "sha512-QCR1UqC9BzG5vZl8BMicmZ28RuUBnHhAMddD8yHFHDRH9lLTZ9uUPehX8ctVPT8l0TKblJidqcgUUKGVrePleQ==", - "dev": true, - "requires": { - "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-member-expression-to-functions": "^7.23.0", - "@babel/helper-optimise-call-expression": "^7.22.5" - } - }, - "@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, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@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, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@babel/helper-string-parser": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", - "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", - "dev": true - }, - "@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 - }, - "@babel/highlight": { - "version": "7.24.2", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.2.tgz", - "integrity": "sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.22.20", - "chalk": "^2.4.2", - "js-tokens": "^4.0.0", - "picocolors": "^1.0.0" - } - }, - "@babel/parser": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.4.tgz", - "integrity": "sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg==", - "dev": true - }, - "@babel/template": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", - "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.23.5", - "@babel/parser": "^7.24.0", - "@babel/types": "^7.24.0" - } - }, - "@babel/types": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", - "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", - "dev": true, - "requires": { - "@babel/helper-string-parser": "^7.23.4", - "@babel/helper-validator-identifier": "^7.22.20", - "to-fast-properties": "^2.0.0" - } - }, - "semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true - } - } - }, - "@babel/plugin-transform-property-literals": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.18.6.tgz", - "integrity": "sha512-cYcs6qlgafTud3PAzrrRNbQtfpQ8+y/+M5tKmksS9+M1ckbH6kzY8MrexEM9mcA6JDsukE19iIRvAyYl463sMg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" - } - }, - "@babel/plugin-transform-react-constant-elements": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-constant-elements/-/plugin-transform-react-constant-elements-7.24.1.tgz", - "integrity": "sha512-QXp1U9x0R7tkiGB0FOk8o74jhnap0FlZ5gNkRIWdG3eP+SvMFg118e1zaWewDzgABb106QSKpVsD3Wgd8t6ifA==", - "dev": true, - "requires": { "@babel/helper-plugin-utils": "^7.24.0" }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", - "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", - "dev": true - } + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-react-display-name": { + "node_modules/@babel/plugin-transform-react-display-name": { "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.24.1.tgz", - "integrity": "sha512-mvoQg2f9p2qlpDQRBC7M3c3XTr0k7cp/0+kFKKO/7Gtu0LSw16eKB+Fabe2bDT/UpsyasTBBkAnbdsLrkD5XMw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@babel/helper-plugin-utils": "^7.24.0" }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", - "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", - "dev": true - } + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-react-jsx": { - "version": "7.19.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.19.0.tgz", - "integrity": "sha512-UVEvX3tXie3Szm3emi1+G63jyw1w5IcMY0FSKM+CRnKRI5Mr1YbCNgsSTwoTwKphQEG9P+QqmuRFneJPZuHNhg==", + "node_modules/@babel/plugin-transform-react-jsx": { + "version": "7.25.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.25.2.tgz", + "integrity": "sha512-KQsqEAVBpU82NM/B/N9j9WOdphom1SZH3R+2V7INrQUH+V9EBFwZsEJl8eBIVeQE62FxJCc70jzEZwqU7RcVqA==", "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-plugin-utils": "^7.19.0", - "@babel/plugin-syntax-jsx": "^7.18.6", - "@babel/types": "^7.19.0" + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.24.7", + "@babel/helper-module-imports": "^7.24.7", + "@babel/helper-plugin-utils": "^7.24.8", + "@babel/plugin-syntax-jsx": "^7.24.7", + "@babel/types": "^7.25.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-react-jsx-development": { + "node_modules/@babel/plugin-transform-react-jsx-development": { "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.22.5.tgz", - "integrity": "sha512-bDhuzwWMuInwCYeDeMzyi7TaBgRQei6DqxhbyniL7/VG4RSS7HtSL2QbY4eESy1KJqlWt8g3xeEBGPuo+XqC8A==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@babel/plugin-transform-react-jsx": "^7.22.5" }, - "dependencies": { - "@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, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@babel/helper-module-imports": { - "version": "7.24.3", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.3.tgz", - "integrity": "sha512-viKb0F9f2s0BCS22QSF308z/+1YWKV/76mwt61NBzS5izMzDPwdq1pTrzf+Li3npBWX9KdQbkeCt1jSAM7lZqg==", - "dev": true, - "requires": { - "@babel/types": "^7.24.0" - } - }, - "@babel/helper-plugin-utils": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", - "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", - "dev": true - }, - "@babel/helper-string-parser": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", - "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", - "dev": true - }, - "@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 - }, - "@babel/plugin-syntax-jsx": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.24.1.tgz", - "integrity": "sha512-2eCtxZXf+kbkMIsXS4poTvT4Yu5rXiRa+9xGVT56raghjmBTKMpFNc9R4IDiB4emao9eO22Ox7CxuJG7BgExqA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.0" - } - }, - "@babel/plugin-transform-react-jsx": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.23.4.tgz", - "integrity": "sha512-5xOpoPguCZCRbo/JeHlloSkTA8Bld1J/E1/kLfD1nsuiW1m8tduTA1ERCgIZokDflX/IBzKcqR3l7VlRgiIfHA==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.22.5", - "@babel/helper-module-imports": "^7.22.15", - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/plugin-syntax-jsx": "^7.23.3", - "@babel/types": "^7.23.4" - } - }, - "@babel/types": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", - "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", - "dev": true, - "requires": { - "@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" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-react-pure-annotations": { + "node_modules/@babel/plugin-transform-react-pure-annotations": { "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.24.1.tgz", - "integrity": "sha512-+pWEAaDJvSm9aFvJNpLiM2+ktl2Sn2U5DdyiWdZBxmLc6+xGt88dvFqsHiAiDS+8WqUwbDfkKz9jRxK3M0k+kA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@babel/helper-annotate-as-pure": "^7.22.5", "@babel/helper-plugin-utils": "^7.24.0" }, - "dependencies": { - "@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, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@babel/helper-plugin-utils": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", - "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", - "dev": true - }, - "@babel/helper-string-parser": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", - "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", - "dev": true - }, - "@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 - }, - "@babel/types": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", - "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", - "dev": true, - "requires": { - "@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" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-regenerator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.18.6.tgz", - "integrity": "sha512-poqRI2+qiSdeldcz4wTSTXBRryoq3Gc70ye7m7UD5Ww0nE29IXqMl6r7Nd15WBgRd74vloEMlShtH6CKxVzfmQ==", + "node_modules/@babel/plugin-transform-regenerator": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.24.7.tgz", + "integrity": "sha512-lq3fvXPdimDrlg6LWBoqj+r/DEWgONuwjuOuQCSYgRroXDH/IdM1C0IZf59fL5cHLpjEH/O6opIRBbqv7ELnuA==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "regenerator-transform": "^0.15.0" + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7", + "regenerator-transform": "^0.15.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-reserved-words": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.18.6.tgz", - "integrity": "sha512-oX/4MyMoypzHjFrT1CdivfKZ+XvIPMFXwwxHp/r0Ddy2Vuomt4HDFGmft1TAY2yiTKiNSsh3kjBAzcM8kSdsjA==", + "node_modules/@babel/plugin-transform-reserved-words": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.24.7.tgz", + "integrity": "sha512-0DUq0pHcPKbjFZCfTss/pGkYMfy3vFWydkUBd9r0GHpIyfs2eCDENvqadMycRS9wZCXR41wucAfJHJmwA0UmoQ==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-runtime": { - "version": "7.19.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.19.1.tgz", - "integrity": "sha512-2nJjTUFIzBMP/f/miLxEK9vxwW/KUXsdvN4sR//TmuDhe6yU2h57WmIOE12Gng3MDP/xpjUV/ToZRdcf8Yj4fA==", - "dev": true, - "requires": { - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-plugin-utils": "^7.19.0", - "babel-plugin-polyfill-corejs2": "^0.3.3", - "babel-plugin-polyfill-corejs3": "^0.6.0", - "babel-plugin-polyfill-regenerator": "^0.4.1", - "semver": "^6.3.0" + "node_modules/@babel/plugin-transform-runtime": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.24.7.tgz", + "integrity": "sha512-YqXjrk4C+a1kZjewqt+Mmu2UuV1s07y8kqcUf4qYLnoqemhR4gRQikhdAhSVJioMjVTu6Mo6pAbaypEA3jY6fw==", + "dev": true, + "dependencies": { + "@babel/helper-module-imports": "^7.24.7", + "@babel/helper-plugin-utils": "^7.24.7", + "babel-plugin-polyfill-corejs2": "^0.4.10", + "babel-plugin-polyfill-corejs3": "^0.10.1", + "babel-plugin-polyfill-regenerator": "^0.6.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-shorthand-properties": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.18.6.tgz", - "integrity": "sha512-eCLXXJqv8okzg86ywZJbRn19YJHU4XUa55oz2wbHhaQVn/MM+XhukiT7SYqp/7o00dg52Rj51Ny+Ecw4oyoygw==", + "node_modules/@babel/plugin-transform-runtime/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, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" + "bin": { + "semver": "bin/semver.js" } }, - "@babel/plugin-transform-spread": { - "version": "7.19.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.19.0.tgz", - "integrity": "sha512-RsuMk7j6n+r752EtzyScnWkQyuJdli6LdO5Klv8Yx0OfPVTcQkIUfS8clx5e9yHXzlnhOZF3CbQ8C2uP5j074w==", + "node_modules/@babel/plugin-transform-shorthand-properties": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.24.7.tgz", + "integrity": "sha512-KsDsevZMDsigzbA09+vacnLpmPH4aWjcZjXdyFKGzpplxhbeB4wYtury3vglQkg6KM/xEPKt73eCjPPf1PgXBA==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.19.0", - "@babel/helper-skip-transparent-expression-wrappers": "^7.18.9" + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-sticky-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.18.6.tgz", - "integrity": "sha512-kfiDrDQ+PBsQDO85yj1icueWMfGfJFKN1KCkndygtu/C9+XUfydLC8Iv5UYJqRwy4zk8EcplRxEOeLyjq1gm6Q==", + "node_modules/@babel/plugin-transform-spread": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.24.7.tgz", + "integrity": "sha512-x96oO0I09dgMDxJaANcRyD4ellXFLLiWhuwDxKZX5g2rWP1bTPkBSwCYv96VDXVT1bD9aPj8tppr5ITIh8hBng==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7", + "@babel/helper-skip-transparent-expression-wrappers": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-template-literals": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.9.tgz", - "integrity": "sha512-S8cOWfT82gTezpYOiVaGHrCbhlHgKhQt8XH5ES46P2XWmX92yisoZywf5km75wv5sYcXDUCLMmMxOLCtthDgMA==", + "node_modules/@babel/plugin-transform-sticky-regex": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.24.7.tgz", + "integrity": "sha512-kHPSIJc9v24zEml5geKg9Mjx5ULpfncj0wRpYtxbvKyTtHCYDkVE3aHQ03FrpEo4gEe2vrJJS1Y9CJTaThA52g==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-typeof-symbol": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.18.9.tgz", - "integrity": "sha512-SRfwTtF11G2aemAZWivL7PD+C9z52v9EvMqH9BuYbabyPuKUvSWks3oCg6041pT925L4zVFqaVBeECwsmlguEw==", + "node_modules/@babel/plugin-transform-template-literals": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.24.7.tgz", + "integrity": "sha512-AfDTQmClklHCOLxtGoP7HkeMw56k1/bTQjwsfhL6pppo/M4TOBSq+jjBUBLmV/4oeFg4GWMavIl44ZeCtmmZTw==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-typescript": { - "version": "7.19.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.19.3.tgz", - "integrity": "sha512-z6fnuK9ve9u/0X0rRvI9MY0xg+DOUaABDYOe+/SQTxtlptaBB/V9JIUxJn6xp3lMBeb9qe8xSFmHU35oZDXD+w==", + "node_modules/@babel/plugin-transform-typeof-symbol": { + "version": "7.24.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.24.8.tgz", + "integrity": "sha512-adNTUpDCVnmAE58VEqKlAA6ZBlNkMnWD0ZcW76lyNFN3MJniyGFZfNwERVk8Ap56MCnXztmDr19T4mPTztcuaw==", "dev": true, - "requires": { - "@babel/helper-create-class-features-plugin": "^7.19.0", - "@babel/helper-plugin-utils": "^7.19.0", - "@babel/plugin-syntax-typescript": "^7.18.6" + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.8" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-unicode-escapes": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.18.10.tgz", - "integrity": "sha512-kKAdAI+YzPgGY/ftStBFXTI1LZFju38rYThnfMykS+IXy8BVx+res7s2fxf1l8I35DV2T97ezo6+SGrXz6B3iQ==", + "node_modules/@babel/plugin-transform-typescript": { + "version": "7.25.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.25.2.tgz", + "integrity": "sha512-lBwRvjSmqiMYe/pS0+1gggjJleUJi7NzjvQ1Fkqtt69hBa/0t1YuW/MLQMAPixfwaQOHUXsd6jeU3Z+vdGv3+A==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.24.7", + "@babel/helper-create-class-features-plugin": "^7.25.0", + "@babel/helper-plugin-utils": "^7.24.8", + "@babel/helper-skip-transparent-expression-wrappers": "^7.24.7", + "@babel/plugin-syntax-typescript": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-unicode-property-regex": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.24.1.tgz", - "integrity": "sha512-Ss4VvlfYV5huWApFsF8/Sq0oXnGO+jB+rijFEFugTd3cwSObUSnUi88djgR5528Csl0uKlrI331kRqe56Ov2Ng==", + "node_modules/@babel/plugin-transform-unicode-escapes": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.24.7.tgz", + "integrity": "sha512-U3ap1gm5+4edc2Q/P+9VrBNhGkfnf+8ZqppY71Bo/pzZmXhhLdqgaUl6cuB07O1+AQJtCLfaOmswiNbSQ9ivhw==", "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.22.15", - "@babel/helper-plugin-utils": "^7.24.0" - }, "dependencies": { - "@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, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@babel/helper-create-regexp-features-plugin": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.22.15.tgz", - "integrity": "sha512-29FkPLFjn4TPEa3RE7GpW+qbE8tlsu3jntNYNfcGsc49LphF1PQIiD+vMZ1z1xVOKt+93khA9tc2JBs3kBjA7w==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.22.5", - "regexpu-core": "^5.3.1", - "semver": "^6.3.1" - } - }, - "@babel/helper-plugin-utils": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", - "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", - "dev": true - }, - "@babel/helper-string-parser": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", - "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", - "dev": true - }, - "@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 - }, - "@babel/types": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", - "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", - "dev": true, - "requires": { - "@babel/helper-string-parser": "^7.23.4", - "@babel/helper-validator-identifier": "^7.22.20", - "to-fast-properties": "^2.0.0" - } - }, - "regexpu-core": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.2.tgz", - "integrity": "sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==", - "dev": true, - "requires": { - "@babel/regjsgen": "^0.8.0", - "regenerate": "^1.4.2", - "regenerate-unicode-properties": "^10.1.0", - "regjsparser": "^0.9.1", - "unicode-match-property-ecmascript": "^2.0.0", - "unicode-match-property-value-ecmascript": "^2.1.0" - } - }, - "semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true - }, - "unicode-match-property-value-ecmascript": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz", - "integrity": "sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==", - "dev": true - } + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-unicode-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.18.6.tgz", - "integrity": "sha512-gE7A6Lt7YLnNOL3Pb9BNeZvi+d8l7tcRrG4+pwJjK9hD2xX4mEvjlQW60G9EEmfXVYRPv9VRQcyegIVHCql/AA==", + "node_modules/@babel/plugin-transform-unicode-property-regex": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.24.7.tgz", + "integrity": "sha512-uH2O4OV5M9FZYQrwc7NdVmMxQJOCCzFeYudlZSzUAHRFeOujQefa92E74TQDVskNHCzOXoigEuoyzHDhaEaK5w==", "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.24.7", + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-unicode-sets-regex": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.24.1.tgz", - "integrity": "sha512-fqj4WuzzS+ukpgerpAoOnMfQXwUHFxXUZUE84oL2Kao2N8uSlvcpnAidKASgsNgzZHBsHWvcm8s9FPWUhAb8fA==", + "node_modules/@babel/plugin-transform-unicode-regex": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.24.7.tgz", + "integrity": "sha512-hlQ96MBZSAXUq7ltkjtu3FJCCSMx/j629ns3hA3pXnBXjanNP0LHi+JpPeA81zaWgVK1VGH95Xuy7u0RyQ8kMg==", "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.22.15", - "@babel/helper-plugin-utils": "^7.24.0" + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.24.7", + "@babel/helper-plugin-utils": "^7.24.7" }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-sets-regex": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.24.7.tgz", + "integrity": "sha512-2G8aAvF4wy1w/AGZkemprdGMRg5o6zPNhbHVImRz3lss55TYCBd6xStN19rt8XJHq20sqV0JbyWjOWwQRwV/wg==", + "dev": true, "dependencies": { - "@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, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@babel/helper-create-regexp-features-plugin": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.22.15.tgz", - "integrity": "sha512-29FkPLFjn4TPEa3RE7GpW+qbE8tlsu3jntNYNfcGsc49LphF1PQIiD+vMZ1z1xVOKt+93khA9tc2JBs3kBjA7w==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.22.5", - "regexpu-core": "^5.3.1", - "semver": "^6.3.1" - } - }, - "@babel/helper-plugin-utils": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", - "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", - "dev": true - }, - "@babel/helper-string-parser": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", - "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", - "dev": true - }, - "@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 - }, - "@babel/types": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", - "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", - "dev": true, - "requires": { - "@babel/helper-string-parser": "^7.23.4", - "@babel/helper-validator-identifier": "^7.22.20", - "to-fast-properties": "^2.0.0" - } - }, - "regexpu-core": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.2.tgz", - "integrity": "sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==", - "dev": true, - "requires": { - "@babel/regjsgen": "^0.8.0", - "regenerate": "^1.4.2", - "regenerate-unicode-properties": "^10.1.0", - "regjsparser": "^0.9.1", - "unicode-match-property-ecmascript": "^2.0.0", - "unicode-match-property-value-ecmascript": "^2.1.0" - } - }, - "semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true - }, - "unicode-match-property-value-ecmascript": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz", - "integrity": "sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==", - "dev": true - } + "@babel/helper-create-regexp-features-plugin": "^7.24.7", + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "@babel/preset-env": { - "version": "7.19.3", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.19.3.tgz", - "integrity": "sha512-ziye1OTc9dGFOAXSWKUqQblYHNlBOaDl8wzqf2iKXJAltYiR3hKHUKmkt+S9PppW7RQpq4fFCrwwpIDj/f5P4w==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.19.3", - "@babel/helper-compilation-targets": "^7.19.3", - "@babel/helper-plugin-utils": "^7.19.0", - "@babel/helper-validator-option": "^7.18.6", - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.18.6", - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.18.9", - "@babel/plugin-proposal-async-generator-functions": "^7.19.1", - "@babel/plugin-proposal-class-properties": "^7.18.6", - "@babel/plugin-proposal-class-static-block": "^7.18.6", - "@babel/plugin-proposal-dynamic-import": "^7.18.6", - "@babel/plugin-proposal-export-namespace-from": "^7.18.9", - "@babel/plugin-proposal-json-strings": "^7.18.6", - "@babel/plugin-proposal-logical-assignment-operators": "^7.18.9", - "@babel/plugin-proposal-nullish-coalescing-operator": "^7.18.6", - "@babel/plugin-proposal-numeric-separator": "^7.18.6", - "@babel/plugin-proposal-object-rest-spread": "^7.18.9", - "@babel/plugin-proposal-optional-catch-binding": "^7.18.6", - "@babel/plugin-proposal-optional-chaining": "^7.18.9", - "@babel/plugin-proposal-private-methods": "^7.18.6", - "@babel/plugin-proposal-private-property-in-object": "^7.18.6", - "@babel/plugin-proposal-unicode-property-regex": "^7.18.6", + "node_modules/@babel/preset-env": { + "version": "7.25.3", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.25.3.tgz", + "integrity": "sha512-QsYW7UeAaXvLPX9tdVliMJE7MD7M6MLYVTovRTIwhoYQVFHR1rM4wO8wqAezYi3/BpSD+NzVCZ69R6smWiIi8g==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.25.2", + "@babel/helper-compilation-targets": "^7.25.2", + "@babel/helper-plugin-utils": "^7.24.8", + "@babel/helper-validator-option": "^7.24.8", + "@babel/plugin-bugfix-firefox-class-in-computed-class-key": "^7.25.3", + "@babel/plugin-bugfix-safari-class-field-initializer-scope": "^7.25.0", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.25.0", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.24.7", + "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": "^7.25.0", + "@babel/plugin-proposal-private-property-in-object": "7.21.0-placeholder-for-preset-env.2", "@babel/plugin-syntax-async-generators": "^7.8.4", "@babel/plugin-syntax-class-properties": "^7.12.13", "@babel/plugin-syntax-class-static-block": "^7.14.5", "@babel/plugin-syntax-dynamic-import": "^7.8.3", "@babel/plugin-syntax-export-namespace-from": "^7.8.3", - "@babel/plugin-syntax-import-assertions": "^7.18.6", + "@babel/plugin-syntax-import-assertions": "^7.24.7", + "@babel/plugin-syntax-import-attributes": "^7.24.7", + "@babel/plugin-syntax-import-meta": "^7.10.4", "@babel/plugin-syntax-json-strings": "^7.8.3", "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", @@ -2624,66 +1778,98 @@ "@babel/plugin-syntax-optional-chaining": "^7.8.3", "@babel/plugin-syntax-private-property-in-object": "^7.14.5", "@babel/plugin-syntax-top-level-await": "^7.14.5", - "@babel/plugin-transform-arrow-functions": "^7.18.6", - "@babel/plugin-transform-async-to-generator": "^7.18.6", - "@babel/plugin-transform-block-scoped-functions": "^7.18.6", - "@babel/plugin-transform-block-scoping": "^7.18.9", - "@babel/plugin-transform-classes": "^7.19.0", - "@babel/plugin-transform-computed-properties": "^7.18.9", - "@babel/plugin-transform-destructuring": "^7.18.13", - "@babel/plugin-transform-dotall-regex": "^7.18.6", - "@babel/plugin-transform-duplicate-keys": "^7.18.9", - "@babel/plugin-transform-exponentiation-operator": "^7.18.6", - "@babel/plugin-transform-for-of": "^7.18.8", - "@babel/plugin-transform-function-name": "^7.18.9", - "@babel/plugin-transform-literals": "^7.18.9", - "@babel/plugin-transform-member-expression-literals": "^7.18.6", - "@babel/plugin-transform-modules-amd": "^7.18.6", - "@babel/plugin-transform-modules-commonjs": "^7.18.6", - "@babel/plugin-transform-modules-systemjs": "^7.19.0", - "@babel/plugin-transform-modules-umd": "^7.18.6", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.19.1", - "@babel/plugin-transform-new-target": "^7.18.6", - "@babel/plugin-transform-object-super": "^7.18.6", - "@babel/plugin-transform-parameters": "^7.18.8", - "@babel/plugin-transform-property-literals": "^7.18.6", - "@babel/plugin-transform-regenerator": "^7.18.6", - "@babel/plugin-transform-reserved-words": "^7.18.6", - "@babel/plugin-transform-shorthand-properties": "^7.18.6", - "@babel/plugin-transform-spread": "^7.19.0", - "@babel/plugin-transform-sticky-regex": "^7.18.6", - "@babel/plugin-transform-template-literals": "^7.18.9", - "@babel/plugin-transform-typeof-symbol": "^7.18.9", - "@babel/plugin-transform-unicode-escapes": "^7.18.10", - "@babel/plugin-transform-unicode-regex": "^7.18.6", - "@babel/preset-modules": "^0.1.5", - "@babel/types": "^7.19.3", - "babel-plugin-polyfill-corejs2": "^0.3.3", - "babel-plugin-polyfill-corejs3": "^0.6.0", - "babel-plugin-polyfill-regenerator": "^0.4.1", - "core-js-compat": "^3.25.1", - "semver": "^6.3.0" + "@babel/plugin-syntax-unicode-sets-regex": "^7.18.6", + "@babel/plugin-transform-arrow-functions": "^7.24.7", + "@babel/plugin-transform-async-generator-functions": "^7.25.0", + "@babel/plugin-transform-async-to-generator": "^7.24.7", + "@babel/plugin-transform-block-scoped-functions": "^7.24.7", + "@babel/plugin-transform-block-scoping": "^7.25.0", + "@babel/plugin-transform-class-properties": "^7.24.7", + "@babel/plugin-transform-class-static-block": "^7.24.7", + "@babel/plugin-transform-classes": "^7.25.0", + "@babel/plugin-transform-computed-properties": "^7.24.7", + "@babel/plugin-transform-destructuring": "^7.24.8", + "@babel/plugin-transform-dotall-regex": "^7.24.7", + "@babel/plugin-transform-duplicate-keys": "^7.24.7", + "@babel/plugin-transform-duplicate-named-capturing-groups-regex": "^7.25.0", + "@babel/plugin-transform-dynamic-import": "^7.24.7", + "@babel/plugin-transform-exponentiation-operator": "^7.24.7", + "@babel/plugin-transform-export-namespace-from": "^7.24.7", + "@babel/plugin-transform-for-of": "^7.24.7", + "@babel/plugin-transform-function-name": "^7.25.1", + "@babel/plugin-transform-json-strings": "^7.24.7", + "@babel/plugin-transform-literals": "^7.25.2", + "@babel/plugin-transform-logical-assignment-operators": "^7.24.7", + "@babel/plugin-transform-member-expression-literals": "^7.24.7", + "@babel/plugin-transform-modules-amd": "^7.24.7", + "@babel/plugin-transform-modules-commonjs": "^7.24.8", + "@babel/plugin-transform-modules-systemjs": "^7.25.0", + "@babel/plugin-transform-modules-umd": "^7.24.7", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.24.7", + "@babel/plugin-transform-new-target": "^7.24.7", + "@babel/plugin-transform-nullish-coalescing-operator": "^7.24.7", + "@babel/plugin-transform-numeric-separator": "^7.24.7", + "@babel/plugin-transform-object-rest-spread": "^7.24.7", + "@babel/plugin-transform-object-super": "^7.24.7", + "@babel/plugin-transform-optional-catch-binding": "^7.24.7", + "@babel/plugin-transform-optional-chaining": "^7.24.8", + "@babel/plugin-transform-parameters": "^7.24.7", + "@babel/plugin-transform-private-methods": "^7.24.7", + "@babel/plugin-transform-private-property-in-object": "^7.24.7", + "@babel/plugin-transform-property-literals": "^7.24.7", + "@babel/plugin-transform-regenerator": "^7.24.7", + "@babel/plugin-transform-reserved-words": "^7.24.7", + "@babel/plugin-transform-shorthand-properties": "^7.24.7", + "@babel/plugin-transform-spread": "^7.24.7", + "@babel/plugin-transform-sticky-regex": "^7.24.7", + "@babel/plugin-transform-template-literals": "^7.24.7", + "@babel/plugin-transform-typeof-symbol": "^7.24.8", + "@babel/plugin-transform-unicode-escapes": "^7.24.7", + "@babel/plugin-transform-unicode-property-regex": "^7.24.7", + "@babel/plugin-transform-unicode-regex": "^7.24.7", + "@babel/plugin-transform-unicode-sets-regex": "^7.24.7", + "@babel/preset-modules": "0.1.6-no-external-plugins", + "babel-plugin-polyfill-corejs2": "^0.4.10", + "babel-plugin-polyfill-corejs3": "^0.10.4", + "babel-plugin-polyfill-regenerator": "^0.6.1", + "core-js-compat": "^3.37.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/preset-modules": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz", - "integrity": "sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==", + "node_modules/@babel/preset-env/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/preset-modules": { + "version": "0.1.6-no-external-plugins", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.6-no-external-plugins.tgz", + "integrity": "sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==", "dev": true, - "requires": { + "dependencies": { "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", - "@babel/plugin-transform-dotall-regex": "^7.4.4", "@babel/types": "^7.4.4", "esutils": "^2.0.2" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0 || ^8.0.0-0 <8.0.0" } }, - "@babel/preset-react": { + "node_modules/@babel/preset-react": { "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.24.1.tgz", - "integrity": "sha512-eFa8up2/8cZXLIpkafhaADTXSnl7IsUFCYenRWrARBz0/qZwcT0RBXpys0LJU4+WfPoF2ZG6ew6s2V6izMCwRA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@babel/helper-plugin-utils": "^7.24.0", "@babel/helper-validator-option": "^7.23.5", "@babel/plugin-transform-react-display-name": "^7.24.1", @@ -2691,355 +1877,189 @@ "@babel/plugin-transform-react-jsx-development": "^7.22.5", "@babel/plugin-transform-react-pure-annotations": "^7.24.1" }, - "dependencies": { - "@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, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@babel/helper-module-imports": { - "version": "7.24.3", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.3.tgz", - "integrity": "sha512-viKb0F9f2s0BCS22QSF308z/+1YWKV/76mwt61NBzS5izMzDPwdq1pTrzf+Li3npBWX9KdQbkeCt1jSAM7lZqg==", - "dev": true, - "requires": { - "@babel/types": "^7.24.0" - } - }, - "@babel/helper-plugin-utils": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", - "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", - "dev": true - }, - "@babel/helper-string-parser": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", - "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", - "dev": true - }, - "@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 - }, - "@babel/helper-validator-option": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz", - "integrity": "sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==", - "dev": true - }, - "@babel/plugin-syntax-jsx": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.24.1.tgz", - "integrity": "sha512-2eCtxZXf+kbkMIsXS4poTvT4Yu5rXiRa+9xGVT56raghjmBTKMpFNc9R4IDiB4emao9eO22Ox7CxuJG7BgExqA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.0" - } - }, - "@babel/plugin-transform-react-jsx": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.23.4.tgz", - "integrity": "sha512-5xOpoPguCZCRbo/JeHlloSkTA8Bld1J/E1/kLfD1nsuiW1m8tduTA1ERCgIZokDflX/IBzKcqR3l7VlRgiIfHA==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.22.5", - "@babel/helper-module-imports": "^7.22.15", - "@babel/helper-plugin-utils": "^7.22.5", - "@babel/plugin-syntax-jsx": "^7.23.3", - "@babel/types": "^7.23.4" - } - }, - "@babel/types": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", - "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", - "dev": true, - "requires": { - "@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" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/preset-typescript": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.18.6.tgz", - "integrity": "sha512-s9ik86kXBAnD760aybBucdpnLsAt0jK1xqJn2juOn9lkOvSHV60os5hxoVJsPzMQxvnUJFAlkont2DvvaYEBtQ==", + "node_modules/@babel/preset-typescript": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.24.7.tgz", + "integrity": "sha512-SyXRe3OdWwIwalxDg5UtJnJQO+YPcTfwiIY2B0Xlddh9o7jpWLvv8X1RthIeDOxQ+O1ML5BLPCONToObyVQVuQ==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-validator-option": "^7.18.6", - "@babel/plugin-transform-typescript": "^7.18.6" + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7", + "@babel/helper-validator-option": "^7.24.7", + "@babel/plugin-syntax-jsx": "^7.24.7", + "@babel/plugin-transform-modules-commonjs": "^7.24.7", + "@babel/plugin-transform-typescript": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/regjsgen": { + "node_modules/@babel/regjsgen": { "version": "0.8.0", "resolved": "https://registry.npmjs.org/@babel/regjsgen/-/regjsgen-0.8.0.tgz", "integrity": "sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==", "dev": true }, - "@babel/runtime": { + "node_modules/@babel/runtime": { "version": "7.19.0", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.19.0.tgz", - "integrity": "sha512-eR8Lo9hnDS7tqkO7NsV+mKvCmv5boaXFSZ70DnfhcgiEne8hv9oCEd36Klw74EtizEqLsy4YnW8UWwpBVolHZA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "regenerator-runtime": "^0.13.4" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/runtime-corejs3": { + "node_modules/@babel/runtime-corejs3": { "version": "7.19.1", - "resolved": "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.19.1.tgz", - "integrity": "sha512-j2vJGnkopRzH+ykJ8h68wrHnEUmtK//E723jjixiAl/PPf6FhqY/vYRcMVlNydRKQjQsTsYEjpx+DZMIvnGk/g==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "core-js-pure": "^3.25.1", "regenerator-runtime": "^0.13.4" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/template": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.10.tgz", - "integrity": "sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==", + "node_modules/@babel/template": { + "version": "7.25.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.25.0.tgz", + "integrity": "sha512-aOOgh1/5XzKvg1jvVz7AVrx2piJ2XBi227DHmbY6y+bM9H2FlN+IfecYu4Xl0cNiiVejlsCri89LUsbj8vJD9Q==", "dev": true, - "requires": { - "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.18.10", - "@babel/types": "^7.18.10" + "dependencies": { + "@babel/code-frame": "^7.24.7", + "@babel/parser": "^7.25.0", + "@babel/types": "^7.25.0" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/traverse": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.1.tgz", - "integrity": "sha512-xuU6o9m68KeqZbQuDt2TcKSxUw/mrsvavlEqQ1leZ/B+C9tk6E4sRWy97WaXgvq5E+nU3cXMxv3WKOCanVMCmQ==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.24.1", - "@babel/generator": "^7.24.1", - "@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.24.1", - "@babel/types": "^7.24.0", + "node_modules/@babel/traverse": { + "version": "7.25.3", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.25.3.tgz", + "integrity": "sha512-HefgyP1x754oGCsKmV5reSmtV7IXj/kpaE1XYY+D9G5PvKKoFfSbiS4M77MdjuwlZKDIKFCffq9rPU+H/s3ZdQ==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.24.7", + "@babel/generator": "^7.25.0", + "@babel/parser": "^7.25.3", + "@babel/template": "^7.25.0", + "@babel/types": "^7.25.2", "debug": "^4.3.1", "globals": "^11.1.0" }, - "dependencies": { - "@babel/code-frame": { - "version": "7.24.2", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz", - "integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==", - "dev": true, - "requires": { - "@babel/highlight": "^7.24.2", - "picocolors": "^1.0.0" - } - }, - "@babel/generator": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.4.tgz", - "integrity": "sha512-Xd6+v6SnjWVx/nus+y0l1sxMOTOMBkyL4+BIdbALyatQnAe/SRVjANeDPSCYaX+i1iJmuGSKf3Z+E+V/va1Hvw==", - "dev": true, - "requires": { - "@babel/types": "^7.24.0", - "@jridgewell/gen-mapping": "^0.3.5", - "@jridgewell/trace-mapping": "^0.3.25", - "jsesc": "^2.5.1" - } - }, - "@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 - }, - "@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, - "requires": { - "@babel/template": "^7.22.15", - "@babel/types": "^7.23.0" - } - }, - "@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, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@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, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@babel/helper-string-parser": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", - "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", - "dev": true - }, - "@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 - }, - "@babel/highlight": { - "version": "7.24.2", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.2.tgz", - "integrity": "sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.22.20", - "chalk": "^2.4.2", - "js-tokens": "^4.0.0", - "picocolors": "^1.0.0" - } - }, - "@babel/parser": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.4.tgz", - "integrity": "sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg==", - "dev": true - }, - "@babel/template": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", - "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.23.5", - "@babel/parser": "^7.24.0", - "@babel/types": "^7.24.0" - } - }, - "@babel/types": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", - "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", - "dev": true, - "requires": { - "@babel/helper-string-parser": "^7.23.4", - "@babel/helper-validator-identifier": "^7.22.20", - "to-fast-properties": "^2.0.0" - } - }, - "@jridgewell/gen-mapping": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", - "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", - "dev": true, - "requires": { - "@jridgewell/set-array": "^1.2.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.24" - } - }, - "@jridgewell/set-array": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", - "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", - "dev": true - }, - "@jridgewell/trace-mapping": { - "version": "0.3.25", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", - "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", - "dev": true, - "requires": { - "@jridgewell/resolve-uri": "^3.1.0", - "@jridgewell/sourcemap-codec": "^1.4.14" - } - } + "engines": { + "node": ">=6.9.0" } }, - "@babel/types": { - "version": "7.19.3", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.19.3.tgz", - "integrity": "sha512-hGCaQzIY22DJlDh9CH7NOxgKkFjBk0Cw9xDO1Xmh2151ti7wiGfQ3LauXzL4HP1fmFlTX6XjpRETTpUcv7wQLw==", + "node_modules/@babel/types": { + "version": "7.25.2", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.25.2.tgz", + "integrity": "sha512-YTnYtra7W9e6/oAZEHj0bJehPRUlLH9/fbpT5LfB0NhQXyALCRkRs3zH9v07IYhkgpqX6Z78FnuccZr/l4Fs4Q==", "dev": true, - "requires": { - "@babel/helper-string-parser": "^7.18.10", - "@babel/helper-validator-identifier": "^7.19.1", + "dependencies": { + "@babel/helper-string-parser": "^7.24.8", + "@babel/helper-validator-identifier": "^7.24.7", "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" } }, - "@bcoe/v8-coverage": { + "node_modules/@bcoe/v8-coverage": { "version": "0.2.3", "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", "dev": true }, - "@csstools/selector-specificity": { + "node_modules/@csstools/selector-specificity": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-2.2.0.tgz", "integrity": "sha512-+OJ9konv95ClSTOJCmMZqpd5+YGsB2S+x6w3E1oaM8UuR5j8nTNHYSz8c9BEPGDOCMQYIEEGlVPj/VY64iTbGw==", - "dev": true + "dev": true, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss-selector-parser": "^6.0.10" + } }, - "@discoveryjs/json-ext": { + "node_modules/@discoveryjs/json-ext": { "version": "0.5.7", - "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", - "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10.0.0" + } }, - "@es-joy/jsdoccomment": { - "version": "0.20.1", - "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.20.1.tgz", - "integrity": "sha512-oeJK41dcdqkvdZy/HctKklJNkt/jh+av3PZARrZEl+fs/8HaHeeYoAvEwOV0u5I6bArTF17JEsTZMY359e/nfQ==", + "node_modules/@es-joy/jsdoccomment": { + "version": "0.41.0", + "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.41.0.tgz", + "integrity": "sha512-aKUhyn1QI5Ksbqcr3fFJj16p99QdjUxXAEuFst1Z47DRyoiMwivIH9MV/ARcJOCXVjPfjITciej8ZD2O/6qUmw==", "dev": true, - "requires": { - "comment-parser": "1.3.0", - "esquery": "^1.4.0", - "jsdoc-type-pratt-parser": "~2.2.3" + "dependencies": { + "comment-parser": "1.4.1", + "esquery": "^1.5.0", + "jsdoc-type-pratt-parser": "~4.0.0" + }, + "engines": { + "node": ">=16" } }, - "@eslint-community/eslint-utils": { + "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, - "requires": { + "license": "MIT", + "dependencies": { "eslint-visitor-keys": "^3.3.0" }, - "dependencies": { - "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 - } + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" + } + }, + "node_modules/@eslint-community/eslint-utils/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "@eslint-community/regexpp": { + "node_modules/@eslint-community/regexpp": { "version": "4.10.0", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.10.0.tgz", - "integrity": "sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } }, - "@eslint/eslintrc": { + "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, - "requires": { + "license": "MIT", + "dependencies": { "ajv": "^6.12.4", "debug": "^4.3.2", "espree": "^9.6.0", @@ -3050,153 +2070,197 @@ "minimatch": "^3.1.2", "strip-json-comments": "^3.1.1" }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint/eslintrc/node_modules/argparse": { + "version": "2.0.1", + "dev": true, + "license": "Python-2.0" + }, + "node_modules/@eslint/eslintrc/node_modules/globals": { + "version": "13.24.0", + "dev": true, + "license": "MIT", "dependencies": { - "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 - }, - "globals": { - "version": "13.24.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", - "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", - "dev": true, - "requires": { - "type-fest": "^0.20.2" - } - }, - "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, - "requires": { - "argparse": "^2.0.1" - } - }, - "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 - } + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@eslint/eslintrc/node_modules/js-yaml": { + "version": "4.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/@eslint/eslintrc/node_modules/type-fest": { + "version": "0.20.2", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "@eslint/js": { + "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 + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } }, - "@hapi/hoek": { + "node_modules/@hapi/hoek": { "version": "9.3.0", - "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-9.3.0.tgz", - "integrity": "sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ==", - "dev": true + "dev": true, + "license": "BSD-3-Clause" }, - "@hapi/topo": { + "node_modules/@hapi/topo": { "version": "5.1.0", - "resolved": "https://registry.npmjs.org/@hapi/topo/-/topo-5.1.0.tgz", - "integrity": "sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg==", "dev": true, - "requires": { + "license": "BSD-3-Clause", + "dependencies": { "@hapi/hoek": "^9.0.0" } }, - "@humanwhocodes/config-array": { + "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==", "dev": true, - "requires": { + "license": "Apache-2.0", + "dependencies": { "@humanwhocodes/object-schema": "^2.0.2", "debug": "^4.3.1", "minimatch": "^3.0.5" + }, + "engines": { + "node": ">=10.10.0" } }, - "@humanwhocodes/module-importer": { + "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 + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } }, - "@humanwhocodes/object-schema": { + "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==", - "dev": true + "dev": true, + "license": "BSD-3-Clause" }, - "@istanbuljs/load-nyc-config": { + "node_modules/@istanbuljs/load-nyc-config": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", "dev": true, - "requires": { + "dependencies": { "camelcase": "^5.3.1", "find-up": "^4.1.0", "get-package-type": "^0.1.0", "js-yaml": "^3.13.1", "resolve-from": "^5.0.0" }, - "dependencies": { - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - } + "engines": { + "node": ">=8" } }, - "@istanbuljs/schema": { - "version": "0.1.3", + "node_modules/@istanbuljs/load-nyc-config/node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/schema": { + "version": "0.1.3", "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", - "dev": true + "dev": true, + "engines": { + "node": ">=8" + } }, - "@jest/console": { + "node_modules/@jest/console": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/@jest/console/-/console-29.7.0.tgz", "integrity": "sha512-5Ni4CU7XHQi32IJ398EEP4RrB8eV09sXP2ROqD4bksHrnTree52PsxvX8tpL8LvTZ3pFzXyPbNQReSN41CAhOg==", "dev": true, - "requires": { + "dependencies": { "@jest/types": "^29.6.3", "@types/node": "*", "chalk": "^4.0.0", @@ -3204,64 +2268,86 @@ "jest-util": "^29.7.0", "slash": "^3.0.0" }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/console/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": { - "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, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "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, - "requires": { - "color-name": "~1.1.4" - } - }, - "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 - }, - "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 - }, - "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, - "requires": { - "has-flag": "^4.0.0" - } - } + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/console/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/@jest/console/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/@jest/console/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/@jest/console/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/@jest/console/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" } }, - "@jest/core": { + "node_modules/@jest/core": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/@jest/core/-/core-29.7.0.tgz", "integrity": "sha512-n7aeXWKMnGtDA48y8TLWJPJmLmmZ642Ceo78cYWEpiD7FzDgmNDV/GCVRorPABdXLJZ/9wzzgZAlHjXjxDHGsg==", "dev": true, - "requires": { + "dependencies": { "@jest/console": "^29.7.0", "@jest/reporters": "^29.7.0", "@jest/test-result": "^29.7.0", @@ -3291,121 +2377,164 @@ "slash": "^3.0.0", "strip-ansi": "^6.0.0" }, - "dependencies": { - "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, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "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, - "requires": { - "color-name": "~1.1.4" - } - }, - "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 - }, - "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 - }, - "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, - "requires": { - "has-flag": "^4.0.0" - } + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true } } }, - "@jest/environment": { + "node_modules/@jest/core/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/@jest/core/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/@jest/core/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/@jest/core/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/@jest/core/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/@jest/core/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/@jest/environment": { "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.7.0.tgz", - "integrity": "sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@jest/fake-timers": "^29.7.0", "@jest/types": "^29.6.3", "@types/node": "*", "jest-mock": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "@jest/expect": { + "node_modules/@jest/expect": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/@jest/expect/-/expect-29.7.0.tgz", "integrity": "sha512-8uMeAMycttpva3P1lBHB8VciS9V0XAr3GymPpipdyQXbBcuhkLQOSe8E/p92RyAdToS6ZD1tFkX+CkhoECE0dQ==", "dev": true, - "requires": { + "dependencies": { "expect": "^29.7.0", "jest-snapshot": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "@jest/expect-utils": { + "node_modules/@jest/expect-utils": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.7.0.tgz", "integrity": "sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA==", "dev": true, - "requires": { + "dependencies": { "jest-get-type": "^29.6.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "@jest/fake-timers": { + "node_modules/@jest/fake-timers": { "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.7.0.tgz", - "integrity": "sha512-q4DH1Ha4TTFPdxLsqDXK1d3+ioSL7yL5oCMJZgDYm6i+6CygW5E5xVr/D1HdsGxjt1ZWSfUAs9OxSB/BNelWrQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@jest/types": "^29.6.3", "@sinonjs/fake-timers": "^10.0.2", "@types/node": "*", "jest-message-util": "^29.7.0", "jest-mock": "^29.7.0", "jest-util": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "@jest/globals": { + "node_modules/@jest/globals": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-29.7.0.tgz", "integrity": "sha512-mpiz3dutLbkW2MNFubUGUEVLkTGiqW6yLVTA+JbP6fI6J5iL9Y0Nlg8k95pcF8ctKwCS7WVxteBs29hhfAotzQ==", "dev": true, - "requires": { + "dependencies": { "@jest/environment": "^29.7.0", "@jest/expect": "^29.7.0", "@jest/types": "^29.6.3", "jest-mock": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "@jest/reporters": { + "node_modules/@jest/reporters": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-29.7.0.tgz", "integrity": "sha512-DApq0KJbJOEzAFYjHADNNxAE3KbhxQB1y5Kplb5Waqw6zVbuWatSnMjE5gs8FUgEPmNsnZA3NCWl9NG0ia04Pg==", "dev": true, - "requires": { + "dependencies": { "@bcoe/v8-coverage": "^0.2.3", "@jest/console": "^29.7.0", "@jest/test-result": "^29.7.0", @@ -3431,516 +2560,177 @@ "strip-ansi": "^6.0.0", "v8-to-istanbul": "^9.0.1" }, - "dependencies": { - "@babel/code-frame": { - "version": "7.24.2", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz", - "integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==", - "dev": true, - "requires": { - "@babel/highlight": "^7.24.2", - "picocolors": "^1.0.0" - } - }, - "@babel/compat-data": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.4.tgz", - "integrity": "sha512-vg8Gih2MLK+kOkHJp4gBEIkyaIi00jgWot2D9QOmmfLC8jINSOzmCLta6Bvz/JSBCqnegV0L80jhxkol5GWNfQ==", - "dev": true - }, - "@babel/core": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.4.tgz", - "integrity": "sha512-MBVlMXP+kkl5394RBLSxxk/iLTeVGuXTV3cIDXavPpMMqnSnt6apKgan/U8O3USWZCWZT/TbgfEpKa4uMgN4Dg==", - "dev": true, - "requires": { - "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.24.2", - "@babel/generator": "^7.24.4", - "@babel/helper-compilation-targets": "^7.23.6", - "@babel/helper-module-transforms": "^7.23.3", - "@babel/helpers": "^7.24.4", - "@babel/parser": "^7.24.4", - "@babel/template": "^7.24.0", - "@babel/traverse": "^7.24.1", - "@babel/types": "^7.24.0", - "convert-source-map": "^2.0.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.3", - "semver": "^6.3.1" - }, - "dependencies": { - "semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true - } - } - }, - "@babel/generator": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.4.tgz", - "integrity": "sha512-Xd6+v6SnjWVx/nus+y0l1sxMOTOMBkyL4+BIdbALyatQnAe/SRVjANeDPSCYaX+i1iJmuGSKf3Z+E+V/va1Hvw==", - "dev": true, - "requires": { - "@babel/types": "^7.24.0", - "@jridgewell/gen-mapping": "^0.3.5", - "@jridgewell/trace-mapping": "^0.3.25", - "jsesc": "^2.5.1" - } - }, - "@babel/helper-compilation-targets": { - "version": "7.23.6", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz", - "integrity": "sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.23.5", - "@babel/helper-validator-option": "^7.23.5", - "browserslist": "^4.22.2", - "lru-cache": "^5.1.1", - "semver": "^6.3.1" - }, - "dependencies": { - "semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true - } - } - }, - "@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 - }, - "@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, - "requires": { - "@babel/template": "^7.22.15", - "@babel/types": "^7.23.0" - } - }, - "@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, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@babel/helper-module-imports": { - "version": "7.24.3", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.3.tgz", - "integrity": "sha512-viKb0F9f2s0BCS22QSF308z/+1YWKV/76mwt61NBzS5izMzDPwdq1pTrzf+Li3npBWX9KdQbkeCt1jSAM7lZqg==", - "dev": true, - "requires": { - "@babel/types": "^7.24.0" - } - }, - "@babel/helper-module-transforms": { - "version": "7.23.3", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.23.3.tgz", - "integrity": "sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==", - "dev": true, - "requires": { - "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-module-imports": "^7.22.15", - "@babel/helper-simple-access": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/helper-validator-identifier": "^7.22.20" - } - }, - "@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, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@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, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@babel/helper-string-parser": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", - "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", - "dev": true - }, - "@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 - }, - "@babel/helper-validator-option": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz", - "integrity": "sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==", - "dev": true - }, - "@babel/helpers": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.4.tgz", - "integrity": "sha512-FewdlZbSiwaVGlgT1DPANDuCHaDMiOo+D/IDYRFYjHOuv66xMSJ7fQwwODwRNAPkADIO/z1EoF/l2BCWlWABDw==", - "dev": true, - "requires": { - "@babel/template": "^7.24.0", - "@babel/traverse": "^7.24.1", - "@babel/types": "^7.24.0" - } - }, - "@babel/highlight": { - "version": "7.24.2", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.2.tgz", - "integrity": "sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.22.20", - "chalk": "^2.4.2", - "js-tokens": "^4.0.0", - "picocolors": "^1.0.0" - }, - "dependencies": { - "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, - "requires": { - "color-convert": "^1.9.0" - } - }, - "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, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "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, - "requires": { - "color-name": "1.1.3" - } - }, - "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 - }, - "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 - }, - "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, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "@babel/parser": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.4.tgz", - "integrity": "sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg==", - "dev": true - }, - "@babel/template": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", - "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.23.5", - "@babel/parser": "^7.24.0", - "@babel/types": "^7.24.0" - } - }, - "@babel/traverse": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.1.tgz", - "integrity": "sha512-xuU6o9m68KeqZbQuDt2TcKSxUw/mrsvavlEqQ1leZ/B+C9tk6E4sRWy97WaXgvq5E+nU3cXMxv3WKOCanVMCmQ==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.24.1", - "@babel/generator": "^7.24.1", - "@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.24.1", - "@babel/types": "^7.24.0", - "debug": "^4.3.1", - "globals": "^11.1.0" - } - }, - "@babel/types": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", - "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", - "dev": true, - "requires": { - "@babel/helper-string-parser": "^7.23.4", - "@babel/helper-validator-identifier": "^7.22.20", - "to-fast-properties": "^2.0.0" - } - }, - "@jridgewell/gen-mapping": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", - "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", - "dev": true, - "requires": { - "@jridgewell/set-array": "^1.2.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.24" - } - }, - "@jridgewell/set-array": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", - "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", - "dev": true - }, - "@jridgewell/trace-mapping": { - "version": "0.3.25", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", - "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", - "dev": true, - "requires": { - "@jridgewell/resolve-uri": "^3.1.0", - "@jridgewell/sourcemap-codec": "^1.4.14" - } - }, - "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, - "requires": { - "color-convert": "^2.0.1" - } - }, - "browserslist": { - "version": "4.23.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", - "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", - "dev": true, - "requires": { - "caniuse-lite": "^1.0.30001587", - "electron-to-chromium": "^1.4.668", - "node-releases": "^2.0.14", - "update-browserslist-db": "^1.0.13" - } - }, - "caniuse-lite": { - "version": "1.0.30001612", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001612.tgz", - "integrity": "sha512-lFgnZ07UhaCcsSZgWW0K5j4e69dK1u/ltrL9lTUiFOwNHs12S3UMIEYgBV0Z6C6hRDev7iRnMzzYmKabYdXF9g==", - "dev": true - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "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, - "requires": { - "color-name": "~1.1.4" - } - }, - "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 - }, - "convert-source-map": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", - "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", - "dev": true - }, - "electron-to-chromium": { - "version": "1.4.748", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.748.tgz", - "integrity": "sha512-VWqjOlPZn70UZ8FTKUOkUvBLeTQ0xpty66qV0yJcAGY2/CthI4xyW9aEozRVtuwv3Kpf5xTesmJUcPwuJmgP4A==", - "dev": true - }, - "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 - }, - "istanbul-lib-instrument": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.2.tgz", - "integrity": "sha512-1WUsZ9R1lA0HtBSohTkm39WTPlNKSJ5iFk7UwqXkBLoHQT+hfqPsfsTDVuZdKGaBwn7din9bS7SsnoAr943hvw==", - "dev": true, - "requires": { - "@babel/core": "^7.23.9", - "@babel/parser": "^7.23.9", - "@istanbuljs/schema": "^0.1.3", - "istanbul-lib-coverage": "^3.2.0", - "semver": "^7.5.4" - } - }, - "node-releases": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", - "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", - "dev": true - }, - "semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - }, - "dependencies": { - "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, - "requires": { - "yallist": "^4.0.0" - } - } - } - }, - "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, - "requires": { - "has-flag": "^4.0.0" - } - }, - "update-browserslist-db": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", - "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", - "dev": true, - "requires": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true } } }, - "@jest/schemas": { + "node_modules/@jest/reporters/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/@jest/reporters/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/@jest/reporters/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/@jest/reporters/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/@jest/reporters/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/@jest/reporters/node_modules/istanbul-lib-instrument": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.3.tgz", + "integrity": "sha512-Vtgk7L/R2JHyyGW07spoFlB8/lpjiOLTjMdms6AFMraYt3BaJauod/NGrfnVG/y4Ix1JEuMRPDPEj2ua+zz1/Q==", + "dev": true, + "dependencies": { + "@babel/core": "^7.23.9", + "@babel/parser": "^7.23.9", + "@istanbuljs/schema": "^0.1.3", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^7.5.4" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@jest/reporters/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/@jest/reporters/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/@jest/schemas": { "version": "29.6.3", - "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz", - "integrity": "sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@sinclair/typebox": "^0.27.8" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "@jest/source-map": { + "node_modules/@jest/source-map": { "version": "29.6.3", "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-29.6.3.tgz", "integrity": "sha512-MHjT95QuipcPrpLM+8JMSzFx6eHp5Bm+4XeFDJlwsvVBjmKNiIAvasGK2fxz2WbGRlnvqehFbh07MMa7n3YJnw==", "dev": true, - "requires": { + "dependencies": { "@jridgewell/trace-mapping": "^0.3.18", "callsites": "^3.0.0", "graceful-fs": "^4.2.9" }, - "dependencies": { - "@jridgewell/trace-mapping": { - "version": "0.3.25", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", - "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", - "dev": true, - "requires": { - "@jridgewell/resolve-uri": "^3.1.0", - "@jridgewell/sourcemap-codec": "^1.4.14" - } - } + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "@jest/test-result": { + "node_modules/@jest/test-result": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-29.7.0.tgz", "integrity": "sha512-Fdx+tv6x1zlkJPcWXmMDAG2HBnaR9XPSd5aDWQVsfrZmLVT3lU1cwyxLgRmXR9yrq4NBoEm9BMsfgFzTQAbJYA==", "dev": true, - "requires": { + "dependencies": { "@jest/console": "^29.7.0", "@jest/types": "^29.6.3", "@types/istanbul-lib-coverage": "^2.0.0", "collect-v8-coverage": "^1.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "@jest/test-sequencer": { + "node_modules/@jest/test-sequencer": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-29.7.0.tgz", "integrity": "sha512-GQwJ5WZVrKnOJuiYiAF52UNUJXgTZx1NHjFSEB0qEMmSZKAkdMoIzw/Cj6x6NF4AvV23AUqDpFzQkN/eYCYTxw==", "dev": true, - "requires": { + "dependencies": { "@jest/test-result": "^29.7.0", "graceful-fs": "^4.2.9", "jest-haste-map": "^29.7.0", "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "@jest/transform": { + "node_modules/@jest/transform": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-29.7.0.tgz", "integrity": "sha512-ok/BTPFzFKVMwO5eOHRrvnBVHdRy9IrsrW1GpMaQ9MCnilNLXQKmAX8s1YXDFaai9xJpac2ySzV0YeRRECr2Vw==", "dev": true, - "requires": { + "dependencies": { "@babel/core": "^7.11.6", "@jest/types": "^29.6.3", "@jridgewell/trace-mapping": "^0.3.18", @@ -3957,294 +2747,317 @@ "slash": "^3.0.0", "write-file-atomic": "^4.0.2" }, - "dependencies": { - "@jridgewell/trace-mapping": { - "version": "0.3.25", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", - "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", - "dev": true, - "requires": { - "@jridgewell/resolve-uri": "^3.1.0", - "@jridgewell/sourcemap-codec": "^1.4.14" - } - }, - "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, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "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, - "requires": { - "color-name": "~1.1.4" - } - }, - "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 - }, - "convert-source-map": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", - "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", - "dev": true - }, - "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 - }, - "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, - "requires": { - "has-flag": "^4.0.0" - } - }, - "write-file-atomic": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", - "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", - "dev": true, - "requires": { - "imurmurhash": "^0.1.4", - "signal-exit": "^3.0.7" - } - } + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "@jest/types": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.3.tgz", - "integrity": "sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==", + "node_modules/@jest/transform/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, - "requires": { - "@jest/schemas": "^29.6.3", - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^17.0.8", - "chalk": "^4.0.0" + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/transform/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": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "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, - "requires": { - "color-name": "~1.1.4" - } - }, - "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 - }, - "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 - }, - "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, - "requires": { - "has-flag": "^4.0.0" - } - } + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@jest/transform/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/@jest/transform/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/@jest/transform/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/@jest/transform/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/@jest/types": { + "version": "29.6.3", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/schemas": "^29.6.3", + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^17.0.8", + "chalk": "^4.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/types/node_modules/ansi-styles": { + "version": "4.3.0", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/types/node_modules/chalk": { + "version": "4.1.2", + "dev": true, + "license": "MIT", + "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/@jest/types/node_modules/color-convert": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@jest/types/node_modules/color-name": { + "version": "1.1.4", + "dev": true, + "license": "MIT" + }, + "node_modules/@jest/types/node_modules/has-flag": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/types/node_modules/supports-color": { + "version": "7.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "@jridgewell/gen-mapping": { + "node_modules/@jridgewell/gen-mapping": { "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", - "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@jridgewell/set-array": "^1.0.0", "@jridgewell/sourcemap-codec": "^1.4.10" + }, + "engines": { + "node": ">=6.0.0" } }, - "@jridgewell/resolve-uri": { + "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 + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } }, - "@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 + "node_modules/@jridgewell/set-array": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } }, - "@jridgewell/source-map": { + "node_modules/@jridgewell/source-map": { "version": "0.3.6", - "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.6.tgz", - "integrity": "sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@jridgewell/gen-mapping": "^0.3.5", "@jridgewell/trace-mapping": "^0.3.25" - }, + } + }, + "node_modules/@jridgewell/source-map/node_modules/@jridgewell/gen-mapping": { + "version": "0.3.5", + "dev": true, + "license": "MIT", "dependencies": { - "@jridgewell/gen-mapping": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", - "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", - "dev": true, - "requires": { - "@jridgewell/set-array": "^1.2.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.24" - } - }, - "@jridgewell/set-array": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", - "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", - "dev": true - }, - "@jridgewell/trace-mapping": { - "version": "0.3.25", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", - "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", - "dev": true, - "requires": { - "@jridgewell/resolve-uri": "^3.1.0", - "@jridgewell/sourcemap-codec": "^1.4.14" - } - } + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" } }, - "@jridgewell/sourcemap-codec": { + "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 + "dev": true, + "license": "MIT" }, - "@jridgewell/trace-mapping": { - "version": "0.3.15", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.15.tgz", - "integrity": "sha512-oWZNOULl+UbhsgB51uuZzglikfIKSUBO/M9W2OfEjn7cmqoAiCgmv9lyACTUacZwBz0ITnJ2NqjU8Tx0DHL88g==", + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", "dev": true, - "requires": { - "@jridgewell/resolve-uri": "^3.0.3", - "@jridgewell/sourcemap-codec": "^1.4.10" + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" } }, - "@kwsites/file-exists": { + "node_modules/@kwsites/file-exists": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@kwsites/file-exists/-/file-exists-1.1.1.tgz", - "integrity": "sha512-m9/5YGR18lIwxSFDwfE3oA7bWuq9kdau6ugN4H2rJeyhFQZcG9AgSHkQtSD15a8WvTgfz9aikZMrKPHvbpqFiw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "debug": "^4.1.1" } }, - "@kwsites/promise-deferred": { + "node_modules/@kwsites/promise-deferred": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@kwsites/promise-deferred/-/promise-deferred-1.1.1.tgz", - "integrity": "sha512-GaHYm+c0O9MjZRu0ongGBRbinu8gVAMd2UZjji6jVmqKtZluZnptXGWhz1E8j8D2HJ3f/yMxKAUC0b+57wncIw==", - "dev": true + "dev": true, + "license": "MIT" }, - "@leichtgewicht/ip-codec": { + "node_modules/@leichtgewicht/ip-codec": { "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.5.tgz", - "integrity": "sha512-Vo+PSpZG2/fmgmiNzYK9qWRh8h/CHrwD0mo1h1DzL4yzHNSfWYujGTYsWGreD000gcgmZ7K4Ys6Tx9TxtsKdDw==", - "dev": true + "dev": true, + "license": "MIT" }, - "@nicolo-ribaudo/eslint-scope-5-internals": { + "node_modules/@nicolo-ribaudo/eslint-scope-5-internals": { "version": "5.1.1-v1", - "resolved": "https://registry.npmjs.org/@nicolo-ribaudo/eslint-scope-5-internals/-/eslint-scope-5-internals-5.1.1-v1.tgz", - "integrity": "sha512-54/JRvkLIzzDWshCWfuhadfrfZVPiElY8Fcgmg1HroEly/EDSszzhBAsarCux+D/kOslTRquNzuyGSmUSTTHGg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "eslint-scope": "5.1.1" } }, - "@nodelib/fs.scandir": { + "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, - "requires": { + "license": "MIT", + "dependencies": { "@nodelib/fs.stat": "2.0.5", "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" } }, - "@nodelib/fs.stat": { + "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 + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } }, - "@nodelib/fs.walk": { + "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, - "requires": { + "license": "MIT", + "dependencies": { "@nodelib/fs.scandir": "2.1.5", "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" } }, - "@pkgr/core": { + "node_modules/@pkgr/core": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.1.1.tgz", "integrity": "sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA==", - "dev": true + "dev": true, + "engines": { + "node": "^12.20.0 || ^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/unts" + } }, - "@pmmmwh/react-refresh-webpack-plugin": { + "node_modules/@playwright/test": { + "version": "1.46.1", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.46.1.tgz", + "integrity": "sha512-Fq6SwLujA/DOIvNC2EL/SojJnkKf/rAwJ//APpJJHRyMi1PdKrY3Az+4XNQ51N4RTbItbIByQ0jgd1tayq1aeA==", + "dev": true, + "peer": true, + "dependencies": { + "playwright": "1.46.1" + }, + "bin": { + "playwright": "cli.js" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@pmmmwh/react-refresh-webpack-plugin": { "version": "0.5.11", - "resolved": "https://registry.npmjs.org/@pmmmwh/react-refresh-webpack-plugin/-/react-refresh-webpack-plugin-0.5.11.tgz", - "integrity": "sha512-7j/6vdTym0+qZ6u4XbSAxrWBGYSdCfTzySkj7WAFgDLmSyWlOrWvpyzxlFh5jtw9dn0oL/jtW+06XfFiisN3JQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "ansi-html-community": "^0.0.8", "common-path-prefix": "^3.0.0", "core-js-pure": "^3.23.3", @@ -4254,20 +3067,52 @@ "loader-utils": "^2.0.4", "schema-utils": "^3.0.0", "source-map": "^0.7.3" + }, + "engines": { + "node": ">= 10.13" + }, + "peerDependencies": { + "@types/webpack": "4.x || 5.x", + "react-refresh": ">=0.10.0 <1.0.0", + "sockjs-client": "^1.4.0", + "type-fest": ">=0.17.0 <5.0.0", + "webpack": ">=4.43.0 <6.0.0", + "webpack-dev-server": "3.x || 4.x", + "webpack-hot-middleware": "2.x", + "webpack-plugin-serve": "0.x || 1.x" + }, + "peerDependenciesMeta": { + "@types/webpack": { + "optional": true + }, + "sockjs-client": { + "optional": true + }, + "type-fest": { + "optional": true + }, + "webpack-dev-server": { + "optional": true + }, + "webpack-hot-middleware": { + "optional": true + }, + "webpack-plugin-serve": { + "optional": true + } } }, - "@polka/url": { + "node_modules/@polka/url": { "version": "1.0.0-next.25", - "resolved": "https://registry.npmjs.org/@polka/url/-/url-1.0.0-next.25.tgz", - "integrity": "sha512-j7P6Rgr3mmtdkeDGTe0E/aYyWEWVtc5yFXtHCRHs28/jptDEWfaVOc5T7cblqy1XKPPfCxJc/8DwQ5YgLOZOVQ==", - "dev": true + "dev": true, + "license": "MIT" }, - "@puppeteer/browsers": { + "node_modules/@puppeteer/browsers": { "version": "1.4.6", "resolved": "https://registry.npmjs.org/@puppeteer/browsers/-/browsers-1.4.6.tgz", "integrity": "sha512-x4BEjr2SjOPowNeiguzjozQbsc6h437ovD/wu+JpaenxVLm3jkgzHY2xOslMTp50HoTvQreMjiexiGQw1sqZlQ==", "dev": true, - "requires": { + "dependencies": { "debug": "4.3.4", "extract-zip": "2.0.1", "progress": "2.0.3", @@ -4276,101 +3121,109 @@ "unbzip2-stream": "1.4.3", "yargs": "17.7.1" }, - "dependencies": { - "extract-zip": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz", - "integrity": "sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==", - "dev": true, - "requires": { - "@types/yauzl": "^2.9.1", - "debug": "^4.1.1", - "get-stream": "^5.1.0", - "yauzl": "^2.10.0" - } - }, - "yargs": { - "version": "17.7.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.1.tgz", - "integrity": "sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw==", - "dev": true, - "requires": { - "cliui": "^8.0.1", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.3", - "y18n": "^5.0.5", - "yargs-parser": "^21.1.1" - } + "bin": { + "browsers": "lib/cjs/main-cli.js" + }, + "engines": { + "node": ">=16.3.0" + }, + "peerDependencies": { + "typescript": ">= 4.7.4" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true } } }, - "@sentry/core": { + "node_modules/@puppeteer/browsers/node_modules/extract-zip": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz", + "integrity": "sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==", + "dev": true, + "dependencies": { + "debug": "^4.1.1", + "get-stream": "^5.1.0", + "yauzl": "^2.10.0" + }, + "bin": { + "extract-zip": "cli.js" + }, + "engines": { + "node": ">= 10.17.0" + }, + "optionalDependencies": { + "@types/yauzl": "^2.9.1" + } + }, + "node_modules/@sentry/core": { "version": "6.19.7", "resolved": "https://registry.npmjs.org/@sentry/core/-/core-6.19.7.tgz", "integrity": "sha512-tOfZ/umqB2AcHPGbIrsFLcvApdTm9ggpi/kQZFkej7kMphjT+SGBiQfYtjyg9jcRW+ilAR4JXC9BGKsdEQ+8Vw==", "dev": true, - "requires": { + "dependencies": { "@sentry/hub": "6.19.7", "@sentry/minimal": "6.19.7", "@sentry/types": "6.19.7", "@sentry/utils": "6.19.7", "tslib": "^1.9.3" }, - "dependencies": { - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - } + "engines": { + "node": ">=6" } }, - "@sentry/hub": { + "node_modules/@sentry/core/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + }, + "node_modules/@sentry/hub": { "version": "6.19.7", "resolved": "https://registry.npmjs.org/@sentry/hub/-/hub-6.19.7.tgz", "integrity": "sha512-y3OtbYFAqKHCWezF0EGGr5lcyI2KbaXW2Ik7Xp8Mu9TxbSTuwTe4rTntwg8ngPjUQU3SUHzgjqVB8qjiGqFXCA==", "dev": true, - "requires": { + "dependencies": { "@sentry/types": "6.19.7", "@sentry/utils": "6.19.7", "tslib": "^1.9.3" }, - "dependencies": { - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - } + "engines": { + "node": ">=6" } }, - "@sentry/minimal": { + "node_modules/@sentry/hub/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + }, + "node_modules/@sentry/minimal": { "version": "6.19.7", "resolved": "https://registry.npmjs.org/@sentry/minimal/-/minimal-6.19.7.tgz", "integrity": "sha512-wcYmSJOdvk6VAPx8IcmZgN08XTXRwRtB1aOLZm+MVHjIZIhHoBGZJYTVQS/BWjldsamj2cX3YGbGXNunaCfYJQ==", "dev": true, - "requires": { + "dependencies": { "@sentry/hub": "6.19.7", "@sentry/types": "6.19.7", "tslib": "^1.9.3" }, - "dependencies": { - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - } + "engines": { + "node": ">=6" } }, - "@sentry/node": { + "node_modules/@sentry/minimal/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + }, + "node_modules/@sentry/node": { "version": "6.19.7", "resolved": "https://registry.npmjs.org/@sentry/node/-/node-6.19.7.tgz", "integrity": "sha512-gtmRC4dAXKODMpHXKfrkfvyBL3cI8y64vEi3fDD046uqYcrWdgoQsffuBbxMAizc6Ez1ia+f0Flue6p15Qaltg==", "dev": true, - "requires": { + "dependencies": { "@sentry/core": "6.19.7", "@sentry/hub": "6.19.7", "@sentry/types": "6.19.7", @@ -4380,144 +3233,219 @@ "lru_map": "^0.3.3", "tslib": "^1.9.3" }, - "dependencies": { - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - } + "engines": { + "node": ">=6" } }, - "@sentry/types": { + "node_modules/@sentry/node/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + }, + "node_modules/@sentry/types": { "version": "6.19.7", "resolved": "https://registry.npmjs.org/@sentry/types/-/types-6.19.7.tgz", "integrity": "sha512-jH84pDYE+hHIbVnab3Hr+ZXr1v8QABfhx39KknxqKWr2l0oEItzepV0URvbEhB446lk/S/59230dlUUIBGsXbg==", - "dev": true + "dev": true, + "engines": { + "node": ">=6" + } }, - "@sentry/utils": { + "node_modules/@sentry/utils": { "version": "6.19.7", "resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-6.19.7.tgz", "integrity": "sha512-z95ECmE3i9pbWoXQrD/7PgkBAzJYR+iXtPuTkpBjDKs86O3mT+PXOT3BAn79w2wkn7/i3vOGD2xVr1uiMl26dA==", "dev": true, - "requires": { + "dependencies": { "@sentry/types": "6.19.7", "tslib": "^1.9.3" }, - "dependencies": { - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - } + "engines": { + "node": ">=6" } }, - "@sideway/address": { + "node_modules/@sentry/utils/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + }, + "node_modules/@sideway/address": { "version": "4.1.5", - "resolved": "https://registry.npmjs.org/@sideway/address/-/address-4.1.5.tgz", - "integrity": "sha512-IqO/DUQHUkPeixNQ8n0JA6102hT9CmaljNTPmQ1u8MEhBo/R4Q8eKLN/vGZxuebwOroDB4cbpjheD4+/sKFK4Q==", "dev": true, - "requires": { + "license": "BSD-3-Clause", + "dependencies": { "@hapi/hoek": "^9.0.0" } }, - "@sideway/formula": { + "node_modules/@sideway/formula": { "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@sideway/formula/-/formula-3.0.1.tgz", - "integrity": "sha512-/poHZJJVjx3L+zVD6g9KgHfYnb443oi7wLu/XKojDviHy6HOEOA6z1Trk5aR1dGcmPenJEgb2sK2I80LeS3MIg==", - "dev": true + "dev": true, + "license": "BSD-3-Clause" }, - "@sideway/pinpoint": { + "node_modules/@sideway/pinpoint": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@sideway/pinpoint/-/pinpoint-2.0.0.tgz", - "integrity": "sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ==", - "dev": true + "dev": true, + "license": "BSD-3-Clause" }, - "@sinclair/typebox": { + "node_modules/@sinclair/typebox": { "version": "0.27.8", - "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", - "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==", - "dev": true + "dev": true, + "license": "MIT" }, - "@sindresorhus/is": { + "node_modules/@sindresorhus/is": { "version": "4.6.0", - "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.6.0.tgz", - "integrity": "sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/is?sponsor=1" + } }, - "@sinonjs/commons": { + "node_modules/@sinonjs/commons": { "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz", - "integrity": "sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==", "dev": true, - "requires": { + "license": "BSD-3-Clause", + "dependencies": { "type-detect": "4.0.8" } }, - "@sinonjs/fake-timers": { + "node_modules/@sinonjs/fake-timers": { "version": "10.3.0", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz", - "integrity": "sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==", "dev": true, - "requires": { + "license": "BSD-3-Clause", + "dependencies": { "@sinonjs/commons": "^3.0.0" } }, - "@svgr/babel-plugin-add-jsx-attribute": { + "node_modules/@svgr/babel-plugin-add-jsx-attribute": { "version": "8.0.0", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-8.0.0.tgz", - "integrity": "sha512-b9MIk7yhdS1pMCZM8VeNfUlSKVRhsHZNMl5O9SfaX0l0t5wjdgu4IDzGB8bpnGBBOjGST3rRFVsaaEtI4W6f7g==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } }, - "@svgr/babel-plugin-remove-jsx-attribute": { + "node_modules/@svgr/babel-plugin-remove-jsx-attribute": { "version": "8.0.0", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-attribute/-/babel-plugin-remove-jsx-attribute-8.0.0.tgz", - "integrity": "sha512-BcCkm/STipKvbCl6b7QFrMh/vx00vIP63k2eM66MfHJzPr6O2U0jYEViXkHJWqXqQYjdeA9cuCl5KWmlwjDvbA==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } }, - "@svgr/babel-plugin-remove-jsx-empty-expression": { + "node_modules/@svgr/babel-plugin-remove-jsx-empty-expression": { "version": "8.0.0", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-empty-expression/-/babel-plugin-remove-jsx-empty-expression-8.0.0.tgz", - "integrity": "sha512-5BcGCBfBxB5+XSDSWnhTThfI9jcO5f0Ai2V24gZpG+wXF14BzwxxdDb4g6trdOux0rhibGs385BeFMSmxtS3uA==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } }, - "@svgr/babel-plugin-replace-jsx-attribute-value": { + "node_modules/@svgr/babel-plugin-replace-jsx-attribute-value": { "version": "8.0.0", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-replace-jsx-attribute-value/-/babel-plugin-replace-jsx-attribute-value-8.0.0.tgz", - "integrity": "sha512-KVQ+PtIjb1BuYT3ht8M5KbzWBhdAjjUPdlMtpuw/VjT8coTrItWX6Qafl9+ji831JaJcu6PJNKCV0bp01lBNzQ==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } }, - "@svgr/babel-plugin-svg-dynamic-title": { + "node_modules/@svgr/babel-plugin-svg-dynamic-title": { "version": "8.0.0", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-dynamic-title/-/babel-plugin-svg-dynamic-title-8.0.0.tgz", - "integrity": "sha512-omNiKqwjNmOQJ2v6ge4SErBbkooV2aAWwaPFs2vUY7p7GhVkzRkJ00kILXQvRhA6miHnNpXv7MRnnSjdRjK8og==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } }, - "@svgr/babel-plugin-svg-em-dimensions": { + "node_modules/@svgr/babel-plugin-svg-em-dimensions": { "version": "8.0.0", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-em-dimensions/-/babel-plugin-svg-em-dimensions-8.0.0.tgz", - "integrity": "sha512-mURHYnu6Iw3UBTbhGwE/vsngtCIbHE43xCRK7kCw4t01xyGqb2Pd+WXekRRoFOBIY29ZoOhUCTEweDMdrjfi9g==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } }, - "@svgr/babel-plugin-transform-react-native-svg": { + "node_modules/@svgr/babel-plugin-transform-react-native-svg": { "version": "8.1.0", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-react-native-svg/-/babel-plugin-transform-react-native-svg-8.1.0.tgz", - "integrity": "sha512-Tx8T58CHo+7nwJ+EhUwx3LfdNSG9R2OKfaIXXs5soiy5HtgoAEkDay9LIimLOcG8dJQH1wPZp/cnAv6S9CrR1Q==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } }, - "@svgr/babel-plugin-transform-svg-component": { + "node_modules/@svgr/babel-plugin-transform-svg-component": { "version": "8.0.0", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-svg-component/-/babel-plugin-transform-svg-component-8.0.0.tgz", - "integrity": "sha512-DFx8xa3cZXTdb/k3kfPeaixecQLgKh5NVBMwD0AQxOzcZawK4oo1Jh9LbrcACUivsCA7TLG8eeWgrDXjTMhRmw==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } }, - "@svgr/babel-preset": { + "node_modules/@svgr/babel-preset": { "version": "8.1.0", - "resolved": "https://registry.npmjs.org/@svgr/babel-preset/-/babel-preset-8.1.0.tgz", - "integrity": "sha512-7EYDbHE7MxHpv4sxvnVPngw5fuR6pw79SkcrILHJ/iMpuKySNCl5W1qcwPEpU+LgyRXOaAFgH0KhwD18wwg6ug==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@svgr/babel-plugin-add-jsx-attribute": "8.0.0", "@svgr/babel-plugin-remove-jsx-attribute": "8.0.0", "@svgr/babel-plugin-remove-jsx-empty-expression": "8.0.0", @@ -4526,2342 +3454,656 @@ "@svgr/babel-plugin-svg-em-dimensions": "8.0.0", "@svgr/babel-plugin-transform-react-native-svg": "8.1.0", "@svgr/babel-plugin-transform-svg-component": "8.0.0" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@svgr/core": { + "node_modules/@svgr/core": { "version": "8.1.0", - "resolved": "https://registry.npmjs.org/@svgr/core/-/core-8.1.0.tgz", - "integrity": "sha512-8QqtOQT5ACVlmsvKOJNEaWmRPmcojMOzCz4Hs2BGG/toAp/K38LcsMRyLp349glq5AzJbCEeimEoxaX6v/fLrA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@babel/core": "^7.21.3", "@svgr/babel-preset": "8.1.0", "camelcase": "^6.2.0", "cosmiconfig": "^8.1.3", "snake-case": "^3.0.4" }, + "engines": { + "node": ">=14" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + } + }, + "node_modules/@svgr/core/node_modules/argparse": { + "version": "2.0.1", + "dev": true, + "license": "Python-2.0" + }, + "node_modules/@svgr/core/node_modules/cosmiconfig": { + "version": "8.3.6", + "dev": true, + "license": "MIT", "dependencies": { - "@babel/code-frame": { - "version": "7.24.2", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz", - "integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==", - "dev": true, - "requires": { - "@babel/highlight": "^7.24.2", - "picocolors": "^1.0.0" - } - }, - "@babel/compat-data": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.4.tgz", - "integrity": "sha512-vg8Gih2MLK+kOkHJp4gBEIkyaIi00jgWot2D9QOmmfLC8jINSOzmCLta6Bvz/JSBCqnegV0L80jhxkol5GWNfQ==", - "dev": true - }, - "@babel/core": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.4.tgz", - "integrity": "sha512-MBVlMXP+kkl5394RBLSxxk/iLTeVGuXTV3cIDXavPpMMqnSnt6apKgan/U8O3USWZCWZT/TbgfEpKa4uMgN4Dg==", - "dev": true, - "requires": { - "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.24.2", - "@babel/generator": "^7.24.4", - "@babel/helper-compilation-targets": "^7.23.6", - "@babel/helper-module-transforms": "^7.23.3", - "@babel/helpers": "^7.24.4", - "@babel/parser": "^7.24.4", - "@babel/template": "^7.24.0", - "@babel/traverse": "^7.24.1", - "@babel/types": "^7.24.0", - "convert-source-map": "^2.0.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.3", - "semver": "^6.3.1" - } - }, - "@babel/generator": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.4.tgz", - "integrity": "sha512-Xd6+v6SnjWVx/nus+y0l1sxMOTOMBkyL4+BIdbALyatQnAe/SRVjANeDPSCYaX+i1iJmuGSKf3Z+E+V/va1Hvw==", - "dev": true, - "requires": { - "@babel/types": "^7.24.0", - "@jridgewell/gen-mapping": "^0.3.5", - "@jridgewell/trace-mapping": "^0.3.25", - "jsesc": "^2.5.1" - } - }, - "@babel/helper-compilation-targets": { - "version": "7.23.6", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz", - "integrity": "sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.23.5", - "@babel/helper-validator-option": "^7.23.5", - "browserslist": "^4.22.2", - "lru-cache": "^5.1.1", - "semver": "^6.3.1" - } - }, - "@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 - }, - "@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, - "requires": { - "@babel/template": "^7.22.15", - "@babel/types": "^7.23.0" - } - }, - "@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, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@babel/helper-module-imports": { - "version": "7.24.3", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.3.tgz", - "integrity": "sha512-viKb0F9f2s0BCS22QSF308z/+1YWKV/76mwt61NBzS5izMzDPwdq1pTrzf+Li3npBWX9KdQbkeCt1jSAM7lZqg==", - "dev": true, - "requires": { - "@babel/types": "^7.24.0" - } - }, - "@babel/helper-module-transforms": { - "version": "7.23.3", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.23.3.tgz", - "integrity": "sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==", - "dev": true, - "requires": { - "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-module-imports": "^7.22.15", - "@babel/helper-simple-access": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/helper-validator-identifier": "^7.22.20" - } - }, - "@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, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@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, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@babel/helper-string-parser": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", - "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", - "dev": true - }, - "@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 - }, - "@babel/helper-validator-option": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz", - "integrity": "sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==", - "dev": true - }, - "@babel/helpers": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.4.tgz", - "integrity": "sha512-FewdlZbSiwaVGlgT1DPANDuCHaDMiOo+D/IDYRFYjHOuv66xMSJ7fQwwODwRNAPkADIO/z1EoF/l2BCWlWABDw==", - "dev": true, - "requires": { - "@babel/template": "^7.24.0", - "@babel/traverse": "^7.24.1", - "@babel/types": "^7.24.0" - } - }, - "@babel/highlight": { - "version": "7.24.2", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.2.tgz", - "integrity": "sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.22.20", - "chalk": "^2.4.2", - "js-tokens": "^4.0.0", - "picocolors": "^1.0.0" - } - }, - "@babel/parser": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.4.tgz", - "integrity": "sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg==", - "dev": true - }, - "@babel/template": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", - "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.23.5", - "@babel/parser": "^7.24.0", - "@babel/types": "^7.24.0" - } - }, - "@babel/traverse": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.1.tgz", - "integrity": "sha512-xuU6o9m68KeqZbQuDt2TcKSxUw/mrsvavlEqQ1leZ/B+C9tk6E4sRWy97WaXgvq5E+nU3cXMxv3WKOCanVMCmQ==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.24.1", - "@babel/generator": "^7.24.1", - "@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.24.1", - "@babel/types": "^7.24.0", - "debug": "^4.3.1", - "globals": "^11.1.0" - } - }, - "@babel/types": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", - "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", - "dev": true, - "requires": { - "@babel/helper-string-parser": "^7.23.4", - "@babel/helper-validator-identifier": "^7.22.20", - "to-fast-properties": "^2.0.0" - } - }, - "@jridgewell/gen-mapping": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", - "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", - "dev": true, - "requires": { - "@jridgewell/set-array": "^1.2.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.24" - } - }, - "@jridgewell/set-array": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", - "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", - "dev": true - }, - "@jridgewell/trace-mapping": { - "version": "0.3.25", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", - "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", - "dev": true, - "requires": { - "@jridgewell/resolve-uri": "^3.1.0", - "@jridgewell/sourcemap-codec": "^1.4.14" - } - }, - "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 - }, - "browserslist": { - "version": "4.23.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", - "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", - "dev": true, - "requires": { - "caniuse-lite": "^1.0.30001587", - "electron-to-chromium": "^1.4.668", - "node-releases": "^2.0.14", - "update-browserslist-db": "^1.0.13" - } - }, - "caniuse-lite": { - "version": "1.0.30001612", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001612.tgz", - "integrity": "sha512-lFgnZ07UhaCcsSZgWW0K5j4e69dK1u/ltrL9lTUiFOwNHs12S3UMIEYgBV0Z6C6hRDev7iRnMzzYmKabYdXF9g==", - "dev": true - }, - "convert-source-map": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", - "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", - "dev": true - }, - "cosmiconfig": { - "version": "8.3.6", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.3.6.tgz", - "integrity": "sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==", - "dev": true, - "requires": { - "import-fresh": "^3.3.0", - "js-yaml": "^4.1.0", - "parse-json": "^5.2.0", - "path-type": "^4.0.0" - } - }, - "electron-to-chromium": { - "version": "1.4.748", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.748.tgz", - "integrity": "sha512-VWqjOlPZn70UZ8FTKUOkUvBLeTQ0xpty66qV0yJcAGY2/CthI4xyW9aEozRVtuwv3Kpf5xTesmJUcPwuJmgP4A==", - "dev": true - }, - "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, - "requires": { - "argparse": "^2.0.1" - } - }, - "node-releases": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", - "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", - "dev": true - }, - "semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true - }, - "update-browserslist-db": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", - "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", - "dev": true, - "requires": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" - } + "import-fresh": "^3.3.0", + "js-yaml": "^4.1.0", + "parse-json": "^5.2.0", + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/d-fischer" + }, + "peerDependencies": { + "typescript": ">=4.9.5" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true } } }, - "@svgr/hast-util-to-babel-ast": { + "node_modules/@svgr/core/node_modules/js-yaml": { + "version": "4.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/@svgr/hast-util-to-babel-ast": { "version": "8.0.0", - "resolved": "https://registry.npmjs.org/@svgr/hast-util-to-babel-ast/-/hast-util-to-babel-ast-8.0.0.tgz", - "integrity": "sha512-EbDKwO9GpfWP4jN9sGdYwPBU0kdomaPIL2Eu4YwmgP+sJeXT+L7bMwJUBnhzfH8Q2qMBqZ4fJwpCyYsAN3mt2Q==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@babel/types": "^7.21.3", "entities": "^4.4.0" }, - "dependencies": { - "@babel/helper-string-parser": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", - "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", - "dev": true - }, - "@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 - }, - "@babel/types": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", - "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", - "dev": true, - "requires": { - "@babel/helper-string-parser": "^7.23.4", - "@babel/helper-validator-identifier": "^7.22.20", - "to-fast-properties": "^2.0.0" - } - } + "engines": { + "node": ">=14" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" } }, - "@svgr/plugin-jsx": { + "node_modules/@svgr/plugin-jsx": { "version": "8.1.0", - "resolved": "https://registry.npmjs.org/@svgr/plugin-jsx/-/plugin-jsx-8.1.0.tgz", - "integrity": "sha512-0xiIyBsLlr8quN+WyuxooNW9RJ0Dpr8uOnH/xrCVO8GLUcwHISwj1AG0k+LFzteTkAA0GbX0kj9q6Dk70PTiPA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@babel/core": "^7.21.3", "@svgr/babel-preset": "8.1.0", "@svgr/hast-util-to-babel-ast": "8.0.0", "svg-parser": "^2.0.4" }, - "dependencies": { - "@babel/code-frame": { - "version": "7.24.2", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz", - "integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==", - "dev": true, - "requires": { - "@babel/highlight": "^7.24.2", - "picocolors": "^1.0.0" - } - }, - "@babel/compat-data": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.4.tgz", - "integrity": "sha512-vg8Gih2MLK+kOkHJp4gBEIkyaIi00jgWot2D9QOmmfLC8jINSOzmCLta6Bvz/JSBCqnegV0L80jhxkol5GWNfQ==", - "dev": true - }, - "@babel/core": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.4.tgz", - "integrity": "sha512-MBVlMXP+kkl5394RBLSxxk/iLTeVGuXTV3cIDXavPpMMqnSnt6apKgan/U8O3USWZCWZT/TbgfEpKa4uMgN4Dg==", - "dev": true, - "requires": { - "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.24.2", - "@babel/generator": "^7.24.4", - "@babel/helper-compilation-targets": "^7.23.6", - "@babel/helper-module-transforms": "^7.23.3", - "@babel/helpers": "^7.24.4", - "@babel/parser": "^7.24.4", - "@babel/template": "^7.24.0", - "@babel/traverse": "^7.24.1", - "@babel/types": "^7.24.0", - "convert-source-map": "^2.0.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.3", - "semver": "^6.3.1" - } - }, - "@babel/generator": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.4.tgz", - "integrity": "sha512-Xd6+v6SnjWVx/nus+y0l1sxMOTOMBkyL4+BIdbALyatQnAe/SRVjANeDPSCYaX+i1iJmuGSKf3Z+E+V/va1Hvw==", - "dev": true, - "requires": { - "@babel/types": "^7.24.0", - "@jridgewell/gen-mapping": "^0.3.5", - "@jridgewell/trace-mapping": "^0.3.25", - "jsesc": "^2.5.1" - } - }, - "@babel/helper-compilation-targets": { - "version": "7.23.6", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz", - "integrity": "sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.23.5", - "@babel/helper-validator-option": "^7.23.5", - "browserslist": "^4.22.2", - "lru-cache": "^5.1.1", - "semver": "^6.3.1" - } - }, - "@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 - }, - "@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, - "requires": { - "@babel/template": "^7.22.15", - "@babel/types": "^7.23.0" - } - }, - "@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, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@babel/helper-module-imports": { - "version": "7.24.3", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.3.tgz", - "integrity": "sha512-viKb0F9f2s0BCS22QSF308z/+1YWKV/76mwt61NBzS5izMzDPwdq1pTrzf+Li3npBWX9KdQbkeCt1jSAM7lZqg==", - "dev": true, - "requires": { - "@babel/types": "^7.24.0" - } - }, - "@babel/helper-module-transforms": { - "version": "7.23.3", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.23.3.tgz", - "integrity": "sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==", - "dev": true, - "requires": { - "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-module-imports": "^7.22.15", - "@babel/helper-simple-access": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/helper-validator-identifier": "^7.22.20" - } - }, - "@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, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@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, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@babel/helper-string-parser": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", - "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", - "dev": true - }, - "@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 - }, - "@babel/helper-validator-option": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz", - "integrity": "sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==", - "dev": true - }, - "@babel/helpers": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.4.tgz", - "integrity": "sha512-FewdlZbSiwaVGlgT1DPANDuCHaDMiOo+D/IDYRFYjHOuv66xMSJ7fQwwODwRNAPkADIO/z1EoF/l2BCWlWABDw==", - "dev": true, - "requires": { - "@babel/template": "^7.24.0", - "@babel/traverse": "^7.24.1", - "@babel/types": "^7.24.0" - } - }, - "@babel/highlight": { - "version": "7.24.2", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.2.tgz", - "integrity": "sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.22.20", - "chalk": "^2.4.2", - "js-tokens": "^4.0.0", - "picocolors": "^1.0.0" - } - }, - "@babel/parser": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.4.tgz", - "integrity": "sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg==", - "dev": true - }, - "@babel/template": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", - "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.23.5", - "@babel/parser": "^7.24.0", - "@babel/types": "^7.24.0" - } - }, - "@babel/traverse": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.1.tgz", - "integrity": "sha512-xuU6o9m68KeqZbQuDt2TcKSxUw/mrsvavlEqQ1leZ/B+C9tk6E4sRWy97WaXgvq5E+nU3cXMxv3WKOCanVMCmQ==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.24.1", - "@babel/generator": "^7.24.1", - "@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.24.1", - "@babel/types": "^7.24.0", - "debug": "^4.3.1", - "globals": "^11.1.0" - } - }, - "@babel/types": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", - "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", - "dev": true, - "requires": { - "@babel/helper-string-parser": "^7.23.4", - "@babel/helper-validator-identifier": "^7.22.20", - "to-fast-properties": "^2.0.0" - } - }, - "@jridgewell/gen-mapping": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", - "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", - "dev": true, - "requires": { - "@jridgewell/set-array": "^1.2.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.24" - } - }, - "@jridgewell/set-array": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", - "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", - "dev": true - }, - "@jridgewell/trace-mapping": { - "version": "0.3.25", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", - "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", - "dev": true, - "requires": { - "@jridgewell/resolve-uri": "^3.1.0", - "@jridgewell/sourcemap-codec": "^1.4.14" - } - }, - "browserslist": { - "version": "4.23.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", - "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", - "dev": true, - "requires": { - "caniuse-lite": "^1.0.30001587", - "electron-to-chromium": "^1.4.668", - "node-releases": "^2.0.14", - "update-browserslist-db": "^1.0.13" - } - }, - "caniuse-lite": { - "version": "1.0.30001612", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001612.tgz", - "integrity": "sha512-lFgnZ07UhaCcsSZgWW0K5j4e69dK1u/ltrL9lTUiFOwNHs12S3UMIEYgBV0Z6C6hRDev7iRnMzzYmKabYdXF9g==", - "dev": true - }, - "convert-source-map": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", - "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", - "dev": true - }, - "electron-to-chromium": { - "version": "1.4.748", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.748.tgz", - "integrity": "sha512-VWqjOlPZn70UZ8FTKUOkUvBLeTQ0xpty66qV0yJcAGY2/CthI4xyW9aEozRVtuwv3Kpf5xTesmJUcPwuJmgP4A==", - "dev": true - }, - "node-releases": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", - "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", - "dev": true - }, - "semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true - }, - "update-browserslist-db": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", - "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", - "dev": true, - "requires": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" - } - } + "engines": { + "node": ">=14" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@svgr/core": "*" } }, - "@svgr/plugin-svgo": { + "node_modules/@svgr/plugin-svgo": { "version": "8.1.0", - "resolved": "https://registry.npmjs.org/@svgr/plugin-svgo/-/plugin-svgo-8.1.0.tgz", - "integrity": "sha512-Ywtl837OGO9pTLIN/onoWLmDQ4zFUycI1g76vuKGEz6evR/ZTJlJuz3G/fIkb6OVBJ2g0o6CGJzaEjfmEo3AHA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "cosmiconfig": "^8.1.3", "deepmerge": "^4.3.1", "svgo": "^3.0.2" }, - "dependencies": { - "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 - }, - "cosmiconfig": { - "version": "8.3.6", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.3.6.tgz", - "integrity": "sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==", - "dev": true, - "requires": { - "import-fresh": "^3.3.0", - "js-yaml": "^4.1.0", - "parse-json": "^5.2.0", - "path-type": "^4.0.0" - } - }, - "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, - "requires": { - "argparse": "^2.0.1" - } - } + "engines": { + "node": ">=14" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@svgr/core": "*" } }, - "@svgr/webpack": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/@svgr/webpack/-/webpack-8.1.0.tgz", - "integrity": "sha512-LnhVjMWyMQV9ZmeEy26maJk+8HTIbd59cH4F2MJ439k9DqejRisfFNGAPvRYlKETuh9LrImlS8aKsBgKjMA8WA==", + "node_modules/@svgr/plugin-svgo/node_modules/argparse": { + "version": "2.0.1", "dev": true, - "requires": { - "@babel/core": "^7.21.3", - "@babel/plugin-transform-react-constant-elements": "^7.21.3", - "@babel/preset-env": "^7.20.2", - "@babel/preset-react": "^7.18.6", - "@babel/preset-typescript": "^7.21.0", - "@svgr/core": "8.1.0", - "@svgr/plugin-jsx": "8.1.0", - "@svgr/plugin-svgo": "8.1.0" - }, - "dependencies": { - "@babel/code-frame": { - "version": "7.24.2", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz", - "integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==", - "dev": true, - "requires": { - "@babel/highlight": "^7.24.2", - "picocolors": "^1.0.0" - } - }, - "@babel/compat-data": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.4.tgz", - "integrity": "sha512-vg8Gih2MLK+kOkHJp4gBEIkyaIi00jgWot2D9QOmmfLC8jINSOzmCLta6Bvz/JSBCqnegV0L80jhxkol5GWNfQ==", - "dev": true - }, - "@babel/core": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.4.tgz", - "integrity": "sha512-MBVlMXP+kkl5394RBLSxxk/iLTeVGuXTV3cIDXavPpMMqnSnt6apKgan/U8O3USWZCWZT/TbgfEpKa4uMgN4Dg==", - "dev": true, - "requires": { - "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.24.2", - "@babel/generator": "^7.24.4", - "@babel/helper-compilation-targets": "^7.23.6", - "@babel/helper-module-transforms": "^7.23.3", - "@babel/helpers": "^7.24.4", - "@babel/parser": "^7.24.4", - "@babel/template": "^7.24.0", - "@babel/traverse": "^7.24.1", - "@babel/types": "^7.24.0", - "convert-source-map": "^2.0.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.3", - "semver": "^6.3.1" - } - }, - "@babel/generator": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.4.tgz", - "integrity": "sha512-Xd6+v6SnjWVx/nus+y0l1sxMOTOMBkyL4+BIdbALyatQnAe/SRVjANeDPSCYaX+i1iJmuGSKf3Z+E+V/va1Hvw==", - "dev": true, - "requires": { - "@babel/types": "^7.24.0", - "@jridgewell/gen-mapping": "^0.3.5", - "@jridgewell/trace-mapping": "^0.3.25", - "jsesc": "^2.5.1" - } - }, - "@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, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.22.15.tgz", - "integrity": "sha512-QkBXwGgaoC2GtGZRoma6kv7Szfv06khvhFav67ZExau2RaXzy8MpHSMO2PNoP2XtmQphJQRHFfg77Bq731Yizw==", - "dev": true, - "requires": { - "@babel/types": "^7.22.15" - } - }, - "@babel/helper-compilation-targets": { - "version": "7.23.6", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz", - "integrity": "sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.23.5", - "@babel/helper-validator-option": "^7.23.5", - "browserslist": "^4.22.2", - "lru-cache": "^5.1.1", - "semver": "^6.3.1" - } - }, - "@babel/helper-create-class-features-plugin": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.24.4.tgz", - "integrity": "sha512-lG75yeuUSVu0pIcbhiYMXBXANHrpUPaOfu7ryAzskCgKUHuAxRQI5ssrtmF0X9UXldPlvT0XM/A4F44OXRt6iQ==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.22.5", - "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-function-name": "^7.23.0", - "@babel/helper-member-expression-to-functions": "^7.23.0", - "@babel/helper-optimise-call-expression": "^7.22.5", - "@babel/helper-replace-supers": "^7.24.1", - "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "semver": "^6.3.1" - } - }, - "@babel/helper-create-regexp-features-plugin": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.22.15.tgz", - "integrity": "sha512-29FkPLFjn4TPEa3RE7GpW+qbE8tlsu3jntNYNfcGsc49LphF1PQIiD+vMZ1z1xVOKt+93khA9tc2JBs3kBjA7w==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.22.5", - "regexpu-core": "^5.3.1", - "semver": "^6.3.1" - } - }, - "@babel/helper-define-polyfill-provider": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.6.2.tgz", - "integrity": "sha512-LV76g+C502biUK6AyZ3LK10vDpDyCzZnhZFXkH1L75zHPj68+qc8Zfpx2th+gzwA2MzyK+1g/3EPl62yFnVttQ==", - "dev": true, - "requires": { - "@babel/helper-compilation-targets": "^7.22.6", - "@babel/helper-plugin-utils": "^7.22.5", - "debug": "^4.1.1", - "lodash.debounce": "^4.0.8", - "resolve": "^1.14.2" - } - }, - "@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 - }, - "@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, - "requires": { - "@babel/template": "^7.22.15", - "@babel/types": "^7.23.0" - } - }, - "@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, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@babel/helper-member-expression-to-functions": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.23.0.tgz", - "integrity": "sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA==", - "dev": true, - "requires": { - "@babel/types": "^7.23.0" - } - }, - "@babel/helper-module-imports": { - "version": "7.24.3", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.3.tgz", - "integrity": "sha512-viKb0F9f2s0BCS22QSF308z/+1YWKV/76mwt61NBzS5izMzDPwdq1pTrzf+Li3npBWX9KdQbkeCt1jSAM7lZqg==", - "dev": true, - "requires": { - "@babel/types": "^7.24.0" - } - }, - "@babel/helper-module-transforms": { - "version": "7.23.3", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.23.3.tgz", - "integrity": "sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==", - "dev": true, - "requires": { - "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-module-imports": "^7.22.15", - "@babel/helper-simple-access": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/helper-validator-identifier": "^7.22.20" - } - }, - "@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, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@babel/helper-plugin-utils": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", - "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", - "dev": true - }, - "@babel/helper-remap-async-to-generator": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.22.20.tgz", - "integrity": "sha512-pBGyV4uBqOns+0UvhsTO8qgl8hO89PmiDYv+/COyp1aeMcmfrfruz+/nCMFiYyFF/Knn0yfrC85ZzNFjembFTw==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.22.5", - "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-wrap-function": "^7.22.20" - } - }, - "@babel/helper-replace-supers": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.24.1.tgz", - "integrity": "sha512-QCR1UqC9BzG5vZl8BMicmZ28RuUBnHhAMddD8yHFHDRH9lLTZ9uUPehX8ctVPT8l0TKblJidqcgUUKGVrePleQ==", - "dev": true, - "requires": { - "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-member-expression-to-functions": "^7.23.0", - "@babel/helper-optimise-call-expression": "^7.22.5" - } - }, - "@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, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@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, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@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, - "requires": { - "@babel/types": "^7.22.5" - } - }, - "@babel/helper-string-parser": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", - "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", - "dev": true - }, - "@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 - }, - "@babel/helper-validator-option": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz", - "integrity": "sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==", - "dev": true - }, - "@babel/helper-wrap-function": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.22.20.tgz", - "integrity": "sha512-pms/UwkOpnQe/PDAEdV/d7dVCoBbB+R4FvYoHGZz+4VPcg7RtYy2KP7S2lbuWM6FCSgob5wshfGESbC/hzNXZw==", - "dev": true, - "requires": { - "@babel/helper-function-name": "^7.22.5", - "@babel/template": "^7.22.15", - "@babel/types": "^7.22.19" - } - }, - "@babel/helpers": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.4.tgz", - "integrity": "sha512-FewdlZbSiwaVGlgT1DPANDuCHaDMiOo+D/IDYRFYjHOuv66xMSJ7fQwwODwRNAPkADIO/z1EoF/l2BCWlWABDw==", - "dev": true, - "requires": { - "@babel/template": "^7.24.0", - "@babel/traverse": "^7.24.1", - "@babel/types": "^7.24.0" - } - }, - "@babel/highlight": { - "version": "7.24.2", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.2.tgz", - "integrity": "sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.22.20", - "chalk": "^2.4.2", - "js-tokens": "^4.0.0", - "picocolors": "^1.0.0" - } - }, - "@babel/parser": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.4.tgz", - "integrity": "sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg==", - "dev": true - }, - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.24.1.tgz", - "integrity": "sha512-y4HqEnkelJIOQGd+3g1bTeKsA5c6qM7eOn7VggGVbBc0y8MLSKHacwcIE2PplNlQSj0PqS9rrXL/nkPVK+kUNg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.0" - } - }, - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.24.1.tgz", - "integrity": "sha512-Hj791Ii4ci8HqnaKHAlLNs+zaLXb0EzSDhiAWp5VNlyvCNymYfacs64pxTxbH1znW/NcArSmwpmG9IKE/TUVVQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.0", - "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", - "@babel/plugin-transform-optional-chaining": "^7.24.1" - } - }, - "@babel/plugin-proposal-private-property-in-object": { - "version": "7.21.0-placeholder-for-preset-env.2", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz", - "integrity": "sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==", - "dev": true - }, - "@babel/plugin-syntax-import-assertions": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.24.1.tgz", - "integrity": "sha512-IuwnI5XnuF189t91XbxmXeCDz3qs6iDRO7GJ++wcfgeXNs/8FmIlKcpDSXNVyuLQxlwvskmI3Ct73wUODkJBlQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.0" - } - }, - "@babel/plugin-syntax-jsx": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.24.1.tgz", - "integrity": "sha512-2eCtxZXf+kbkMIsXS4poTvT4Yu5rXiRa+9xGVT56raghjmBTKMpFNc9R4IDiB4emao9eO22Ox7CxuJG7BgExqA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.0" - } - }, - "@babel/plugin-syntax-typescript": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.24.1.tgz", - "integrity": "sha512-Yhnmvy5HZEnHUty6i++gcfH1/l68AHnItFHnaCv6hn9dNh0hQvvQJsxpi4BMBFN5DLeHBuucT/0DgzXif/OyRw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.0" - } - }, - "@babel/plugin-transform-arrow-functions": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.24.1.tgz", - "integrity": "sha512-ngT/3NkRhsaep9ck9uj2Xhv9+xB1zShY3tM3g6om4xxCELwCDN4g4Aq5dRn48+0hasAql7s2hdBOysCfNpr4fw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.0" - } - }, - "@babel/plugin-transform-async-to-generator": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.24.1.tgz", - "integrity": "sha512-AawPptitRXp1y0n4ilKcGbRYWfbbzFWz2NqNu7dacYDtFtz0CMjG64b3LQsb3KIgnf4/obcUL78hfaOS7iCUfw==", - "dev": true, - "requires": { - "@babel/helper-module-imports": "^7.24.1", - "@babel/helper-plugin-utils": "^7.24.0", - "@babel/helper-remap-async-to-generator": "^7.22.20" - } - }, - "@babel/plugin-transform-block-scoped-functions": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.24.1.tgz", - "integrity": "sha512-TWWC18OShZutrv9C6mye1xwtam+uNi2bnTOCBUd5sZxyHOiWbU6ztSROofIMrK84uweEZC219POICK/sTYwfgg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.0" - } - }, - "@babel/plugin-transform-block-scoping": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.24.4.tgz", - "integrity": "sha512-nIFUZIpGKDf9O9ttyRXpHFpKC+X3Y5mtshZONuEUYBomAKoM4y029Jr+uB1bHGPhNmK8YXHevDtKDOLmtRrp6g==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.0" - } - }, - "@babel/plugin-transform-classes": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.24.1.tgz", - "integrity": "sha512-ZTIe3W7UejJd3/3R4p7ScyyOoafetUShSf4kCqV0O7F/RiHxVj/wRaRnQlrGwflvcehNA8M42HkAiEDYZu2F1Q==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.22.5", - "@babel/helper-compilation-targets": "^7.23.6", - "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-function-name": "^7.23.0", - "@babel/helper-plugin-utils": "^7.24.0", - "@babel/helper-replace-supers": "^7.24.1", - "@babel/helper-split-export-declaration": "^7.22.6", - "globals": "^11.1.0" - } - }, - "@babel/plugin-transform-computed-properties": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.24.1.tgz", - "integrity": "sha512-5pJGVIUfJpOS+pAqBQd+QMaTD2vCL/HcePooON6pDpHgRp4gNRmzyHTPIkXntwKsq3ayUFVfJaIKPw2pOkOcTw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.0", - "@babel/template": "^7.24.0" - } - }, - "@babel/plugin-transform-destructuring": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.24.1.tgz", - "integrity": "sha512-ow8jciWqNxR3RYbSNVuF4U2Jx130nwnBnhRw6N6h1bOejNkABmcI5X5oz29K4alWX7vf1C+o6gtKXikzRKkVdw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.0" - } - }, - "@babel/plugin-transform-dotall-regex": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.24.1.tgz", - "integrity": "sha512-p7uUxgSoZwZ2lPNMzUkqCts3xlp8n+o05ikjy7gbtFJSt9gdU88jAmtfmOxHM14noQXBxfgzf2yRWECiNVhTCw==", - "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.22.15", - "@babel/helper-plugin-utils": "^7.24.0" - } - }, - "@babel/plugin-transform-duplicate-keys": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.24.1.tgz", - "integrity": "sha512-msyzuUnvsjsaSaocV6L7ErfNsa5nDWL1XKNnDePLgmz+WdU4w/J8+AxBMrWfi9m4IxfL5sZQKUPQKDQeeAT6lA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.0" - } - }, - "@babel/plugin-transform-exponentiation-operator": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.24.1.tgz", - "integrity": "sha512-U1yX13dVBSwS23DEAqU+Z/PkwE9/m7QQy8Y9/+Tdb8UWYaGNDYwTLi19wqIAiROr8sXVum9A/rtiH5H0boUcTw==", - "dev": true, - "requires": { - "@babel/helper-builder-binary-assignment-operator-visitor": "^7.22.15", - "@babel/helper-plugin-utils": "^7.24.0" - } - }, - "@babel/plugin-transform-for-of": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.24.1.tgz", - "integrity": "sha512-OxBdcnF04bpdQdR3i4giHZNZQn7cm8RQKcSwA17wAAqEELo1ZOwp5FFgeptWUQXFyT9kwHo10aqqauYkRZPCAg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.0", - "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5" - } - }, - "@babel/plugin-transform-function-name": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.24.1.tgz", - "integrity": "sha512-BXmDZpPlh7jwicKArQASrj8n22/w6iymRnvHYYd2zO30DbE277JO20/7yXJT3QxDPtiQiOxQBbZH4TpivNXIxA==", - "dev": true, - "requires": { - "@babel/helper-compilation-targets": "^7.23.6", - "@babel/helper-function-name": "^7.23.0", - "@babel/helper-plugin-utils": "^7.24.0" - } - }, - "@babel/plugin-transform-literals": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.24.1.tgz", - "integrity": "sha512-zn9pwz8U7nCqOYIiBaOxoQOtYmMODXTJnkxG4AtX8fPmnCRYWBOHD0qcpwS9e2VDSp1zNJYpdnFMIKb8jmwu6g==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.0" - } - }, - "@babel/plugin-transform-member-expression-literals": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.24.1.tgz", - "integrity": "sha512-4ojai0KysTWXzHseJKa1XPNXKRbuUrhkOPY4rEGeR+7ChlJVKxFa3H3Bz+7tWaGKgJAXUWKOGmltN+u9B3+CVg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.0" - } - }, - "@babel/plugin-transform-modules-amd": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.24.1.tgz", - "integrity": "sha512-lAxNHi4HVtjnHd5Rxg3D5t99Xm6H7b04hUS7EHIXcUl2EV4yl1gWdqZrNzXnSrHveL9qMdbODlLF55mvgjAfaQ==", - "dev": true, - "requires": { - "@babel/helper-module-transforms": "^7.23.3", - "@babel/helper-plugin-utils": "^7.24.0" - } - }, - "@babel/plugin-transform-modules-commonjs": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.24.1.tgz", - "integrity": "sha512-szog8fFTUxBfw0b98gEWPaEqF42ZUD/T3bkynW/wtgx2p/XCP55WEsb+VosKceRSd6njipdZvNogqdtI4Q0chw==", - "dev": true, - "requires": { - "@babel/helper-module-transforms": "^7.23.3", - "@babel/helper-plugin-utils": "^7.24.0", - "@babel/helper-simple-access": "^7.22.5" - } - }, - "@babel/plugin-transform-modules-systemjs": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.24.1.tgz", - "integrity": "sha512-mqQ3Zh9vFO1Tpmlt8QPnbwGHzNz3lpNEMxQb1kAemn/erstyqw1r9KeOlOfo3y6xAnFEcOv2tSyrXfmMk+/YZA==", - "dev": true, - "requires": { - "@babel/helper-hoist-variables": "^7.22.5", - "@babel/helper-module-transforms": "^7.23.3", - "@babel/helper-plugin-utils": "^7.24.0", - "@babel/helper-validator-identifier": "^7.22.20" - } - }, - "@babel/plugin-transform-modules-umd": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.24.1.tgz", - "integrity": "sha512-tuA3lpPj+5ITfcCluy6nWonSL7RvaG0AOTeAuvXqEKS34lnLzXpDb0dcP6K8jD0zWZFNDVly90AGFJPnm4fOYg==", - "dev": true, - "requires": { - "@babel/helper-module-transforms": "^7.23.3", - "@babel/helper-plugin-utils": "^7.24.0" - } - }, - "@babel/plugin-transform-named-capturing-groups-regex": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.22.5.tgz", - "integrity": "sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ==", - "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.22.5", - "@babel/helper-plugin-utils": "^7.22.5" - } - }, - "@babel/plugin-transform-new-target": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.24.1.tgz", - "integrity": "sha512-/rurytBM34hYy0HKZQyA0nHbQgQNFm4Q/BOc9Hflxi2X3twRof7NaE5W46j4kQitm7SvACVRXsa6N/tSZxvPug==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.0" - } - }, - "@babel/plugin-transform-object-super": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.24.1.tgz", - "integrity": "sha512-oKJqR3TeI5hSLRxudMjFQ9re9fBVUU0GICqM3J1mi8MqlhVr6hC/ZN4ttAyMuQR6EZZIY6h/exe5swqGNNIkWQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.0", - "@babel/helper-replace-supers": "^7.24.1" - } - }, - "@babel/plugin-transform-parameters": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.24.1.tgz", - "integrity": "sha512-8Jl6V24g+Uw5OGPeWNKrKqXPDw2YDjLc53ojwfMcKwlEoETKU9rU0mHUtcg9JntWI/QYzGAXNWEcVHZ+fR+XXg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.0" - } - }, - "@babel/plugin-transform-property-literals": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.24.1.tgz", - "integrity": "sha512-LetvD7CrHmEx0G442gOomRr66d7q8HzzGGr4PMHGr+5YIm6++Yke+jxj246rpvsbyhJwCLxcTn6zW1P1BSenqA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.0" - } - }, - "@babel/plugin-transform-regenerator": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.24.1.tgz", - "integrity": "sha512-sJwZBCzIBE4t+5Q4IGLaaun5ExVMRY0lYwos/jNecjMrVCygCdph3IKv0tkP5Fc87e/1+bebAmEAGBfnRD+cnw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.0", - "regenerator-transform": "^0.15.2" - } - }, - "@babel/plugin-transform-reserved-words": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.24.1.tgz", - "integrity": "sha512-JAclqStUfIwKN15HrsQADFgeZt+wexNQ0uLhuqvqAUFoqPMjEcFCYZBhq0LUdz6dZK/mD+rErhW71fbx8RYElg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.0" - } - }, - "@babel/plugin-transform-shorthand-properties": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.24.1.tgz", - "integrity": "sha512-LyjVB1nsJ6gTTUKRjRWx9C1s9hE7dLfP/knKdrfeH9UPtAGjYGgxIbFfx7xyLIEWs7Xe1Gnf8EWiUqfjLhInZA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.0" - } - }, - "@babel/plugin-transform-spread": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.24.1.tgz", - "integrity": "sha512-KjmcIM+fxgY+KxPVbjelJC6hrH1CgtPmTvdXAfn3/a9CnWGSTY7nH4zm5+cjmWJybdcPSsD0++QssDsjcpe47g==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.0", - "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5" - } - }, - "@babel/plugin-transform-sticky-regex": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.24.1.tgz", - "integrity": "sha512-9v0f1bRXgPVcPrngOQvLXeGNNVLc8UjMVfebo9ka0WF3/7+aVUHmaJVT3sa0XCzEFioPfPHZiOcYG9qOsH63cw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.0" - } - }, - "@babel/plugin-transform-template-literals": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.24.1.tgz", - "integrity": "sha512-WRkhROsNzriarqECASCNu/nojeXCDTE/F2HmRgOzi7NGvyfYGq1NEjKBK3ckLfRgGc6/lPAqP0vDOSw3YtG34g==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.0" - } - }, - "@babel/plugin-transform-typeof-symbol": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.24.1.tgz", - "integrity": "sha512-CBfU4l/A+KruSUoW+vTQthwcAdwuqbpRNB8HQKlZABwHRhsdHZ9fezp4Sn18PeAlYxTNiLMlx4xUBV3AWfg1BA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.0" - } - }, - "@babel/plugin-transform-typescript": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.24.4.tgz", - "integrity": "sha512-79t3CQ8+oBGk/80SQ8MN3Bs3obf83zJ0YZjDmDaEZN8MqhMI760apl5z6a20kFeMXBwJX99VpKT8CKxEBp5H1g==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.22.5", - "@babel/helper-create-class-features-plugin": "^7.24.4", - "@babel/helper-plugin-utils": "^7.24.0", - "@babel/plugin-syntax-typescript": "^7.24.1" - } - }, - "@babel/plugin-transform-unicode-escapes": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.24.1.tgz", - "integrity": "sha512-RlkVIcWT4TLI96zM660S877E7beKlQw7Ig+wqkKBiWfj0zH5Q4h50q6er4wzZKRNSYpfo6ILJ+hrJAGSX2qcNw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.0" - } - }, - "@babel/plugin-transform-unicode-regex": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.24.1.tgz", - "integrity": "sha512-2A/94wgZgxfTsiLaQ2E36XAOdcZmGAaEEgVmxQWwZXWkGhvoHbaqXcKnU8zny4ycpu3vNqg0L/PcCiYtHtA13g==", - "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.22.15", - "@babel/helper-plugin-utils": "^7.24.0" - } - }, - "@babel/preset-env": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.24.4.tgz", - "integrity": "sha512-7Kl6cSmYkak0FK/FXjSEnLJ1N9T/WA2RkMhu17gZ/dsxKJUuTYNIylahPTzqpLyJN4WhDif8X0XK1R8Wsguo/A==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.24.4", - "@babel/helper-compilation-targets": "^7.23.6", - "@babel/helper-plugin-utils": "^7.24.0", - "@babel/helper-validator-option": "^7.23.5", - "@babel/plugin-bugfix-firefox-class-in-computed-class-key": "^7.24.4", - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.24.1", - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.24.1", - "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": "^7.24.1", - "@babel/plugin-proposal-private-property-in-object": "7.21.0-placeholder-for-preset-env.2", - "@babel/plugin-syntax-async-generators": "^7.8.4", - "@babel/plugin-syntax-class-properties": "^7.12.13", - "@babel/plugin-syntax-class-static-block": "^7.14.5", - "@babel/plugin-syntax-dynamic-import": "^7.8.3", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3", - "@babel/plugin-syntax-import-assertions": "^7.24.1", - "@babel/plugin-syntax-import-attributes": "^7.24.1", - "@babel/plugin-syntax-import-meta": "^7.10.4", - "@babel/plugin-syntax-json-strings": "^7.8.3", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.10.4", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", - "@babel/plugin-syntax-optional-chaining": "^7.8.3", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5", - "@babel/plugin-syntax-top-level-await": "^7.14.5", - "@babel/plugin-syntax-unicode-sets-regex": "^7.18.6", - "@babel/plugin-transform-arrow-functions": "^7.24.1", - "@babel/plugin-transform-async-generator-functions": "^7.24.3", - "@babel/plugin-transform-async-to-generator": "^7.24.1", - "@babel/plugin-transform-block-scoped-functions": "^7.24.1", - "@babel/plugin-transform-block-scoping": "^7.24.4", - "@babel/plugin-transform-class-properties": "^7.24.1", - "@babel/plugin-transform-class-static-block": "^7.24.4", - "@babel/plugin-transform-classes": "^7.24.1", - "@babel/plugin-transform-computed-properties": "^7.24.1", - "@babel/plugin-transform-destructuring": "^7.24.1", - "@babel/plugin-transform-dotall-regex": "^7.24.1", - "@babel/plugin-transform-duplicate-keys": "^7.24.1", - "@babel/plugin-transform-dynamic-import": "^7.24.1", - "@babel/plugin-transform-exponentiation-operator": "^7.24.1", - "@babel/plugin-transform-export-namespace-from": "^7.24.1", - "@babel/plugin-transform-for-of": "^7.24.1", - "@babel/plugin-transform-function-name": "^7.24.1", - "@babel/plugin-transform-json-strings": "^7.24.1", - "@babel/plugin-transform-literals": "^7.24.1", - "@babel/plugin-transform-logical-assignment-operators": "^7.24.1", - "@babel/plugin-transform-member-expression-literals": "^7.24.1", - "@babel/plugin-transform-modules-amd": "^7.24.1", - "@babel/plugin-transform-modules-commonjs": "^7.24.1", - "@babel/plugin-transform-modules-systemjs": "^7.24.1", - "@babel/plugin-transform-modules-umd": "^7.24.1", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.22.5", - "@babel/plugin-transform-new-target": "^7.24.1", - "@babel/plugin-transform-nullish-coalescing-operator": "^7.24.1", - "@babel/plugin-transform-numeric-separator": "^7.24.1", - "@babel/plugin-transform-object-rest-spread": "^7.24.1", - "@babel/plugin-transform-object-super": "^7.24.1", - "@babel/plugin-transform-optional-catch-binding": "^7.24.1", - "@babel/plugin-transform-optional-chaining": "^7.24.1", - "@babel/plugin-transform-parameters": "^7.24.1", - "@babel/plugin-transform-private-methods": "^7.24.1", - "@babel/plugin-transform-private-property-in-object": "^7.24.1", - "@babel/plugin-transform-property-literals": "^7.24.1", - "@babel/plugin-transform-regenerator": "^7.24.1", - "@babel/plugin-transform-reserved-words": "^7.24.1", - "@babel/plugin-transform-shorthand-properties": "^7.24.1", - "@babel/plugin-transform-spread": "^7.24.1", - "@babel/plugin-transform-sticky-regex": "^7.24.1", - "@babel/plugin-transform-template-literals": "^7.24.1", - "@babel/plugin-transform-typeof-symbol": "^7.24.1", - "@babel/plugin-transform-unicode-escapes": "^7.24.1", - "@babel/plugin-transform-unicode-property-regex": "^7.24.1", - "@babel/plugin-transform-unicode-regex": "^7.24.1", - "@babel/plugin-transform-unicode-sets-regex": "^7.24.1", - "@babel/preset-modules": "0.1.6-no-external-plugins", - "babel-plugin-polyfill-corejs2": "^0.4.10", - "babel-plugin-polyfill-corejs3": "^0.10.4", - "babel-plugin-polyfill-regenerator": "^0.6.1", - "core-js-compat": "^3.31.0", - "semver": "^6.3.1" - } - }, - "@babel/preset-modules": { - "version": "0.1.6-no-external-plugins", - "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.6-no-external-plugins.tgz", - "integrity": "sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/types": "^7.4.4", - "esutils": "^2.0.2" - } - }, - "@babel/preset-typescript": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.24.1.tgz", - "integrity": "sha512-1DBaMmRDpuYQBPWD8Pf/WEwCrtgRHxsZnP4mIy9G/X+hFfbI47Q2G4t1Paakld84+qsk2fSsUPMKg71jkoOOaQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.24.0", - "@babel/helper-validator-option": "^7.23.5", - "@babel/plugin-syntax-jsx": "^7.24.1", - "@babel/plugin-transform-modules-commonjs": "^7.24.1", - "@babel/plugin-transform-typescript": "^7.24.1" - } - }, - "@babel/template": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", - "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.23.5", - "@babel/parser": "^7.24.0", - "@babel/types": "^7.24.0" - } - }, - "@babel/traverse": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.1.tgz", - "integrity": "sha512-xuU6o9m68KeqZbQuDt2TcKSxUw/mrsvavlEqQ1leZ/B+C9tk6E4sRWy97WaXgvq5E+nU3cXMxv3WKOCanVMCmQ==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.24.1", - "@babel/generator": "^7.24.1", - "@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.24.1", - "@babel/types": "^7.24.0", - "debug": "^4.3.1", - "globals": "^11.1.0" - } - }, - "@babel/types": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", - "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", - "dev": true, - "requires": { - "@babel/helper-string-parser": "^7.23.4", - "@babel/helper-validator-identifier": "^7.22.20", - "to-fast-properties": "^2.0.0" - } - }, - "@jridgewell/gen-mapping": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", - "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", - "dev": true, - "requires": { - "@jridgewell/set-array": "^1.2.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.24" - } - }, - "@jridgewell/set-array": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", - "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", - "dev": true - }, - "@jridgewell/trace-mapping": { - "version": "0.3.25", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", - "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", - "dev": true, - "requires": { - "@jridgewell/resolve-uri": "^3.1.0", - "@jridgewell/sourcemap-codec": "^1.4.14" - } - }, - "babel-plugin-polyfill-corejs2": { - "version": "0.4.11", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.11.tgz", - "integrity": "sha512-sMEJ27L0gRHShOh5G54uAAPaiCOygY/5ratXuiyb2G46FmlSpc9eFCzYVyDiPxfNbwzA7mYahmjQc5q+CZQ09Q==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.22.6", - "@babel/helper-define-polyfill-provider": "^0.6.2", - "semver": "^6.3.1" - } - }, - "babel-plugin-polyfill-corejs3": { - "version": "0.10.4", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.10.4.tgz", - "integrity": "sha512-25J6I8NGfa5YkCDogHRID3fVCadIR8/pGl1/spvCkzb6lVn6SR3ojpx9nOn9iEBcUsjY24AmdKm5khcfKdylcg==", - "dev": true, - "requires": { - "@babel/helper-define-polyfill-provider": "^0.6.1", - "core-js-compat": "^3.36.1" - } - }, - "babel-plugin-polyfill-regenerator": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.6.2.tgz", - "integrity": "sha512-2R25rQZWP63nGwaAswvDazbPXfrM3HwVoBXK6HcqeKrSrL/JqcC/rDcf95l4r7LXLyxDXc8uQDa064GubtCABg==", - "dev": true, - "requires": { - "@babel/helper-define-polyfill-provider": "^0.6.2" - } - }, - "browserslist": { - "version": "4.23.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", - "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", - "dev": true, - "requires": { - "caniuse-lite": "^1.0.30001587", - "electron-to-chromium": "^1.4.668", - "node-releases": "^2.0.14", - "update-browserslist-db": "^1.0.13" - } - }, - "caniuse-lite": { - "version": "1.0.30001612", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001612.tgz", - "integrity": "sha512-lFgnZ07UhaCcsSZgWW0K5j4e69dK1u/ltrL9lTUiFOwNHs12S3UMIEYgBV0Z6C6hRDev7iRnMzzYmKabYdXF9g==", - "dev": true - }, - "convert-source-map": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", - "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", - "dev": true - }, - "core-js-compat": { - "version": "3.37.0", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.37.0.tgz", - "integrity": "sha512-vYq4L+T8aS5UuFg4UwDhc7YNRWVeVZwltad9C/jV3R2LgVOpS9BDr7l/WL6BN0dbV3k1XejPTHqqEzJgsa0frA==", - "dev": true, - "requires": { - "browserslist": "^4.23.0" - } - }, - "electron-to-chromium": { - "version": "1.4.748", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.748.tgz", - "integrity": "sha512-VWqjOlPZn70UZ8FTKUOkUvBLeTQ0xpty66qV0yJcAGY2/CthI4xyW9aEozRVtuwv3Kpf5xTesmJUcPwuJmgP4A==", - "dev": true - }, - "node-releases": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", - "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", - "dev": true - }, - "regenerator-transform": { - "version": "0.15.2", - "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.2.tgz", - "integrity": "sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==", - "dev": true, - "requires": { - "@babel/runtime": "^7.8.4" - } - }, - "regexpu-core": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.2.tgz", - "integrity": "sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==", - "dev": true, - "requires": { - "@babel/regjsgen": "^0.8.0", - "regenerate": "^1.4.2", - "regenerate-unicode-properties": "^10.1.0", - "regjsparser": "^0.9.1", - "unicode-match-property-ecmascript": "^2.0.0", - "unicode-match-property-value-ecmascript": "^2.1.0" - } - }, - "semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true - }, - "unicode-match-property-value-ecmascript": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz", - "integrity": "sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==", - "dev": true - }, - "update-browserslist-db": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", - "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", - "dev": true, - "requires": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" - } - } - } + "license": "Python-2.0" }, - "@szmarczak/http-timer": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-4.0.6.tgz", - "integrity": "sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==", + "node_modules/@svgr/plugin-svgo/node_modules/cosmiconfig": { + "version": "8.3.6", "dev": true, - "requires": { - "defer-to-connect": "^2.0.0" + "license": "MIT", + "dependencies": { + "import-fresh": "^3.3.0", + "js-yaml": "^4.1.0", + "parse-json": "^5.2.0", + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/d-fischer" + }, + "peerDependencies": { + "typescript": ">=4.9.5" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "@tannin/compile": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@tannin/compile/-/compile-1.1.0.tgz", - "integrity": "sha512-n8m9eNDfoNZoxdvWiTfW/hSPhehzLJ3zW7f8E7oT6mCROoMNWCB4TYtv041+2FMAxweiE0j7i1jubQU4MEC/Gg==", + "node_modules/@svgr/plugin-svgo/node_modules/js-yaml": { + "version": "4.1.0", "dev": true, - "requires": { - "@tannin/evaluate": "^1.2.0", - "@tannin/postfix": "^1.1.0" + "license": "MIT", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "@tannin/evaluate": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@tannin/evaluate/-/evaluate-1.2.0.tgz", - "integrity": "sha512-3ioXvNowbO/wSrxsDG5DKIMxC81P0QrQTYai8zFNY+umuoHWRPbQ/TuuDEOju9E+jQDXmj6yI5GyejNuh8I+eg==", - "dev": true - }, - "@tannin/plural-forms": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@tannin/plural-forms/-/plural-forms-1.1.0.tgz", - "integrity": "sha512-xl9R2mDZO/qiHam1AgMnAES6IKIg7OBhcXqy6eDsRCdXuxAFPcjrej9HMjyCLE0DJ/8cHf0i5OQTstuBRhpbHw==", + "node_modules/@svgr/webpack": { + "version": "8.1.0", "dev": true, - "requires": { - "@tannin/compile": "^1.1.0" + "license": "MIT", + "dependencies": { + "@babel/core": "^7.21.3", + "@babel/plugin-transform-react-constant-elements": "^7.21.3", + "@babel/preset-env": "^7.20.2", + "@babel/preset-react": "^7.18.6", + "@babel/preset-typescript": "^7.21.0", + "@svgr/core": "8.1.0", + "@svgr/plugin-jsx": "8.1.0", + "@svgr/plugin-svgo": "8.1.0" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" } }, - "@tannin/postfix": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@tannin/postfix/-/postfix-1.1.0.tgz", - "integrity": "sha512-oocsqY7g0cR+Gur5jRQLSrX2OtpMLMse1I10JQBm8CdGMrDkh1Mg2gjsiquMHRtBs4Qwu5wgEp5GgIYHk4SNPw==", - "dev": true + "node_modules/@szmarczak/http-timer": { + "version": "4.0.6", + "dev": true, + "license": "MIT", + "dependencies": { + "defer-to-connect": "^2.0.0" + }, + "engines": { + "node": ">=10" + } }, - "@tootallnate/once": { + "node_modules/@tootallnate/once": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", - "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10" + } }, - "@tootallnate/quickjs-emscripten": { + "node_modules/@tootallnate/quickjs-emscripten": { "version": "0.23.0", "resolved": "https://registry.npmjs.org/@tootallnate/quickjs-emscripten/-/quickjs-emscripten-0.23.0.tgz", "integrity": "sha512-C5Mc6rdnsaJDjO3UpGW/CQTHtCKaYlScZTly4JIu97Jxo/odCiH0ITnDXSJPTOrEKk/ycSZ0AOgTmkDtkOsvIA==", "dev": true }, - "@trysound/sax": { + "node_modules/@trysound/sax": { "version": "0.2.0", - "resolved": "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz", - "integrity": "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==", - "dev": true + "dev": true, + "license": "ISC", + "engines": { + "node": ">=10.13.0" + } }, - "@types/babel__core": { + "node_modules/@types/babel__core": { "version": "7.20.5", "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", "dev": true, - "requires": { + "dependencies": { "@babel/parser": "^7.20.7", "@babel/types": "^7.20.7", "@types/babel__generator": "*", "@types/babel__template": "*", "@types/babel__traverse": "*" - }, - "dependencies": { - "@babel/helper-string-parser": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", - "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", - "dev": true - }, - "@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 - }, - "@babel/parser": { - "version": "7.24.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.4.tgz", - "integrity": "sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg==", - "dev": true - }, - "@babel/types": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", - "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", - "dev": true, - "requires": { - "@babel/helper-string-parser": "^7.23.4", - "@babel/helper-validator-identifier": "^7.22.20", - "to-fast-properties": "^2.0.0" - } - } } }, - "@types/babel__generator": { + "node_modules/@types/babel__generator": { "version": "7.6.8", "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.8.tgz", "integrity": "sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==", "dev": true, - "requires": { + "dependencies": { "@babel/types": "^7.0.0" } }, - "@types/babel__template": { + "node_modules/@types/babel__template": { "version": "7.4.4", "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", "dev": true, - "requires": { + "dependencies": { "@babel/parser": "^7.1.0", "@babel/types": "^7.0.0" } }, - "@types/babel__traverse": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.5.tgz", - "integrity": "sha512-WXCyOcRtH37HAUkpXhUduaxdm82b4GSlyTqajXviN4EfiuPgNYR109xMCKvpl6zPIpua0DGlMEDCq+g8EdoheQ==", + "node_modules/@types/babel__traverse": { + "version": "7.20.6", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.6.tgz", + "integrity": "sha512-r1bzfrm0tomOI8g1SzvCaQHo6Lcv6zu0EA+W2kHrt8dyrHQxGzBBL4kdkzIS+jBMV+EYcMAEAqXqYaLJq5rOZg==", "dev": true, - "requires": { - "@babel/types": "^7.20.7" - }, "dependencies": { - "@babel/helper-string-parser": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", - "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", - "dev": true - }, - "@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 - }, - "@babel/types": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", - "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", - "dev": true, - "requires": { - "@babel/helper-string-parser": "^7.23.4", - "@babel/helper-validator-identifier": "^7.22.20", - "to-fast-properties": "^2.0.0" - } - } + "@babel/types": "^7.20.7" } }, - "@types/body-parser": { + "node_modules/@types/body-parser": { "version": "1.19.5", - "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.5.tgz", - "integrity": "sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@types/connect": "*", "@types/node": "*" } }, - "@types/bonjour": { + "node_modules/@types/bonjour": { "version": "3.5.13", - "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.13.tgz", - "integrity": "sha512-z9fJ5Im06zvUL548KvYNecEVlA7cVDkGUi6kZusb04mpyEFKCIZJvloCcmpmLaIahDpOQGHaHmG6imtPMmPXGQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@types/node": "*" } }, - "@types/cacheable-request": { + "node_modules/@types/cacheable-request": { "version": "6.0.2", - "resolved": "https://registry.npmjs.org/@types/cacheable-request/-/cacheable-request-6.0.2.tgz", - "integrity": "sha512-B3xVo+dlKM6nnKTcmm5ZtY/OL8bOAOd2Olee9M1zft65ox50OzjEHW91sDiU9j6cvW8Ejg1/Qkf4xd2kugApUA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@types/http-cache-semantics": "*", "@types/keyv": "*", "@types/node": "*", "@types/responselike": "*" } }, - "@types/connect": { + "node_modules/@types/connect": { "version": "3.4.38", - "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.38.tgz", - "integrity": "sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@types/node": "*" } }, - "@types/connect-history-api-fallback": { + "node_modules/@types/connect-history-api-fallback": { "version": "1.5.4", - "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.5.4.tgz", - "integrity": "sha512-n6Cr2xS1h4uAulPRdlw6Jl6s1oG8KrVilPN2yUITEs+K48EzMJJ3W1xy8K5eWuFvjp3R74AOIGSmp2UfBJ8HFw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@types/express-serve-static-core": "*", "@types/node": "*" } }, - "@types/eslint": { + "node_modules/@types/eslint": { "version": "8.56.10", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.56.10.tgz", - "integrity": "sha512-Shavhk87gCtY2fhXDctcfS3e6FdxWkCx1iUZ9eEUbh7rTqlZT0/IzOkCOVt0fCjcFuZ9FPYfuezTBImfHCDBGQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@types/estree": "*", "@types/json-schema": "*" } }, - "@types/eslint-scope": { + "node_modules/@types/eslint-scope": { "version": "3.7.7", - "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.7.tgz", - "integrity": "sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@types/eslint": "*", "@types/estree": "*" } }, - "@types/estree": { + "node_modules/@types/estree": { "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz", - "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==", - "dev": true + "dev": true, + "license": "MIT" }, - "@types/express": { + "node_modules/@types/express": { "version": "4.17.21", - "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.21.tgz", - "integrity": "sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@types/body-parser": "*", "@types/express-serve-static-core": "^4.17.33", "@types/qs": "*", "@types/serve-static": "*" } }, - "@types/express-serve-static-core": { + "node_modules/@types/express-serve-static-core": { "version": "4.19.0", - "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.19.0.tgz", - "integrity": "sha512-bGyep3JqPCRry1wq+O5n7oiBgGWmeIJXPjXXCo8EK0u8duZGSYar7cGqd3ML2JUsLGeB7fmc06KYo9fLGWqPvQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@types/node": "*", "@types/qs": "*", "@types/range-parser": "*", "@types/send": "*" } }, - "@types/glob": { + "node_modules/@types/glob": { "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@types/minimatch": "*", "@types/node": "*" } }, - "@types/graceful-fs": { + "node_modules/@types/graceful-fs": { "version": "4.1.9", "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.9.tgz", "integrity": "sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ==", "dev": true, - "requires": { + "dependencies": { "@types/node": "*" } }, - "@types/http-cache-semantics": { + "node_modules/@types/http-cache-semantics": { "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.1.tgz", - "integrity": "sha512-SZs7ekbP8CN0txVG2xVRH6EgKmEm31BOxA07vkFaETzZz1xh+cbt8BcI0slpymvwhx5dlFnQG2rTlPVQn+iRPQ==", - "dev": true + "dev": true, + "license": "MIT" }, - "@types/http-errors": { + "node_modules/@types/http-errors": { "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@types/http-errors/-/http-errors-2.0.4.tgz", - "integrity": "sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA==", - "dev": true + "dev": true, + "license": "MIT" }, - "@types/http-proxy": { + "node_modules/@types/http-proxy": { "version": "1.17.14", - "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.14.tgz", - "integrity": "sha512-SSrD0c1OQzlFX7pGu1eXxSEjemej64aaNPRhhVYUGqXh0BtldAAx37MG8btcumvpgKyZp1F5Gn3JkktdxiFv6w==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@types/node": "*" } }, - "@types/istanbul-lib-coverage": { + "node_modules/@types/istanbul-lib-coverage": { "version": "2.0.6", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz", - "integrity": "sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==", - "dev": true + "dev": true, + "license": "MIT" }, - "@types/istanbul-lib-report": { + "node_modules/@types/istanbul-lib-report": { "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz", - "integrity": "sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@types/istanbul-lib-coverage": "*" } }, - "@types/istanbul-reports": { + "node_modules/@types/istanbul-reports": { "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz", - "integrity": "sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@types/istanbul-lib-report": "*" } }, - "@types/jsdom": { + "node_modules/@types/jsdom": { "version": "20.0.1", - "resolved": "https://registry.npmjs.org/@types/jsdom/-/jsdom-20.0.1.tgz", - "integrity": "sha512-d0r18sZPmMQr1eG35u12FZfhIXNrnsPU/g5wvRKCUf/tOGilKKwYMYGqh33BNR6ba+2gkHw1EUiHoN3mn7E5IQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@types/node": "*", "@types/tough-cookie": "*", "parse5": "^7.0.0" } }, - "@types/json-schema": { - "version": "7.0.11", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", - "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==", + "node_modules/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", "dev": true }, - "@types/json5": { + "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 + "dev": true, + "license": "MIT" }, - "@types/keyv": { + "node_modules/@types/keyv": { "version": "3.1.4", - "resolved": "https://registry.npmjs.org/@types/keyv/-/keyv-3.1.4.tgz", - "integrity": "sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@types/node": "*" } }, - "@types/mime": { + "node_modules/@types/mime": { "version": "1.3.5", - "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.5.tgz", - "integrity": "sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==", - "dev": true + "dev": true, + "license": "MIT" }, - "@types/minimatch": { + "node_modules/@types/minimatch": { "version": "5.1.2", - "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-5.1.2.tgz", - "integrity": "sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==", - "dev": true + "dev": true, + "license": "MIT" }, - "@types/minimist": { + "node_modules/@types/minimist": { "version": "1.2.5", "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.5.tgz", "integrity": "sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==", "dev": true }, - "@types/node": { + "node_modules/@types/node": { "version": "18.8.3", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.8.3.tgz", - "integrity": "sha512-0os9vz6BpGwxGe9LOhgP/ncvYN5Tx1fNcd2TM3rD/aCGBkysb+ZWpXEocG24h6ZzOi13+VB8HndAQFezsSOw1w==", - "dev": true + "dev": true, + "license": "MIT" }, - "@types/node-forge": { + "node_modules/@types/node-forge": { "version": "1.3.11", - "resolved": "https://registry.npmjs.org/@types/node-forge/-/node-forge-1.3.11.tgz", - "integrity": "sha512-FQx220y22OKNTqaByeBGqHWYz4cl94tpcxeFdvBo3wjG6XPBuZ0BNgNZRV5J5TFmmcsJ4IzsLkmGRiQbnYsBEQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@types/node": "*" } }, - "@types/normalize-package-data": { + "node_modules/@types/normalize-package-data": { "version": "2.4.4", "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.4.tgz", "integrity": "sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==", "dev": true }, - "@types/parse-json": { + "node_modules/@types/parse-json": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", - "dev": true - }, - "@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 + "dev": true, + "license": "MIT" }, - "@types/qs": { + "node_modules/@types/qs": { "version": "6.9.15", - "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.15.tgz", - "integrity": "sha512-uXHQKES6DQKKCLh441Xv/dwxOq1TVS3JPUMlEqoEglvlhR6Mxnlew/Xq/LRVHpLyk7iK3zODe1qYHIMltO7XGg==", - "dev": true - }, - "@types/range-parser": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.7.tgz", - "integrity": "sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==", - "dev": true - }, - "@types/react": { - "version": "17.0.50", - "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.50.tgz", - "integrity": "sha512-ZCBHzpDb5skMnc1zFXAXnL3l1FAdi+xZvwxK+PkglMmBrwjpp9nKaWuEvrGnSifCJmBFGxZOOFuwC6KH/s0NuA==", "dev": true, - "requires": { - "@types/prop-types": "*", - "@types/scheduler": "*", - "csstype": "^3.0.2" - } + "license": "MIT" }, - "@types/react-dom": { - "version": "17.0.17", - "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-17.0.17.tgz", - "integrity": "sha512-VjnqEmqGnasQKV0CWLevqMTXBYG9GbwuE6x3VetERLh0cq2LTptFE73MrQi2S7GkKXCf2GgwItB/melLnxfnsg==", + "node_modules/@types/range-parser": { + "version": "1.2.7", "dev": true, - "requires": { - "@types/react": "^17" - } + "license": "MIT" }, - "@types/responselike": { + "node_modules/@types/responselike": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@types/responselike/-/responselike-1.0.0.tgz", - "integrity": "sha512-85Y2BjiufFzaMIlvJDvTTB8Fxl2xfLo4HgmHzVBz08w4wDePCTjYw66PdrolO0kzli3yam/YCgRufyo1DdQVTA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@types/node": "*" } }, - "@types/retry": { + "node_modules/@types/retry": { "version": "0.12.0", - "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz", - "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==", - "dev": true - }, - "@types/scheduler": { - "version": "0.16.2", - "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.2.tgz", - "integrity": "sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==", - "dev": true + "dev": true, + "license": "MIT" }, - "@types/semver": { + "node_modules/@types/semver": { "version": "7.5.8", "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.8.tgz", "integrity": "sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==", "dev": true }, - "@types/send": { + "node_modules/@types/send": { "version": "0.17.4", - "resolved": "https://registry.npmjs.org/@types/send/-/send-0.17.4.tgz", - "integrity": "sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@types/mime": "^1", "@types/node": "*" } }, - "@types/serve-index": { + "node_modules/@types/serve-index": { "version": "1.9.4", - "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.4.tgz", - "integrity": "sha512-qLpGZ/c2fhSs5gnYsQxtDEq3Oy8SXPClIXkW5ghvAvsNuVSA8k+gCONcUCS/UjLEYvYps+e8uBtfgXgvhwfNug==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@types/express": "*" } }, - "@types/serve-static": { + "node_modules/@types/serve-static": { "version": "1.15.7", - "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.7.tgz", - "integrity": "sha512-W8Ym+h8nhuRwaKPaDw34QUkwsGi6Rc4yYqvKFo5rm2FUEhCFbzVWrxXUxuKK8TASjWsysJY0nsmNCGhCOIsrOw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@types/http-errors": "*", "@types/node": "*", "@types/send": "*" } }, - "@types/sockjs": { + "node_modules/@types/sockjs": { "version": "0.3.36", - "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.36.tgz", - "integrity": "sha512-MK9V6NzAS1+Ud7JV9lJLFqW85VbC9dq3LmwZCuBe4wBDgKC0Kj/jd8Xl+nSviU+Qc3+m7umHHyHg//2KSa0a0Q==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@types/node": "*" } }, - "@types/source-list-map": { + "node_modules/@types/source-list-map": { "version": "0.1.6", - "resolved": "https://registry.npmjs.org/@types/source-list-map/-/source-list-map-0.1.6.tgz", - "integrity": "sha512-5JcVt1u5HDmlXkwOD2nslZVllBBc7HDuOICfiZah2Z0is8M8g+ddAEawbmd3VjedfDHBzxCaXLs07QEmb7y54g==", - "dev": true + "dev": true, + "license": "MIT" }, - "@types/stack-utils": { + "node_modules/@types/stack-utils": { "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.3.tgz", - "integrity": "sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==", - "dev": true + "dev": true, + "license": "MIT" }, - "@types/tapable": { + "node_modules/@types/tapable": { "version": "1.0.12", - "resolved": "https://registry.npmjs.org/@types/tapable/-/tapable-1.0.12.tgz", - "integrity": "sha512-bTHG8fcxEqv1M9+TD14P8ok8hjxoOCkfKc8XXLaaD05kI7ohpeI956jtDOD3XHKBQrlyPughUtzm1jtVhHpA5Q==", - "dev": true + "dev": true, + "license": "MIT" }, - "@types/tough-cookie": { + "node_modules/@types/tough-cookie": { "version": "4.0.5", - "resolved": "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-4.0.5.tgz", - "integrity": "sha512-/Ad8+nIOV7Rl++6f1BdKxFSMgmoqEoYbHRpPcx3JEfv8VRsQe9Z4mCXeJBzxs7mbHY/XOZZuXlRNfhpVPbs6ZA==", - "dev": true + "dev": true, + "license": "MIT" }, - "@types/uglify-js": { + "node_modules/@types/uglify-js": { "version": "3.17.5", - "resolved": "https://registry.npmjs.org/@types/uglify-js/-/uglify-js-3.17.5.tgz", - "integrity": "sha512-TU+fZFBTBcXj/GpDpDaBmgWk/gn96kMZ+uocaFUlV2f8a6WdMzzI44QBCmGcCiYR0Y6ZlNRiyUyKKt5nl/lbzQ==", "dev": true, - "requires": { - "source-map": "^0.6.1" - }, + "license": "MIT", "dependencies": { - "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 - } + "source-map": "^0.6.1" + } + }, + "node_modules/@types/uglify-js/node_modules/source-map": { + "version": "0.6.1", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" } }, - "@types/webpack": { + "node_modules/@types/webpack": { "version": "4.41.38", - "resolved": "https://registry.npmjs.org/@types/webpack/-/webpack-4.41.38.tgz", - "integrity": "sha512-oOW7E931XJU1mVfCnxCVgv8GLFL768pDO5u2Gzk82i8yTIgX6i7cntyZOkZYb/JtYM8252SN9bQp9tgkVDSsRw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@types/node": "*", "@types/tapable": "^1", "@types/uglify-js": "*", "@types/webpack-sources": "*", "anymatch": "^3.0.0", "source-map": "^0.6.0" - }, - "dependencies": { - "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 - } } }, - "@types/webpack-sources": { + "node_modules/@types/webpack-sources": { "version": "3.2.3", - "resolved": "https://registry.npmjs.org/@types/webpack-sources/-/webpack-sources-3.2.3.tgz", - "integrity": "sha512-4nZOdMwSPHZ4pTEZzSp0AsTM4K7Qmu40UKW4tJDiOVs20UzYF9l+qUe4s0ftfN0pin06n+5cWWDJXH+sbhAiDw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@types/node": "*", "@types/source-list-map": "*", "source-map": "^0.7.3" } }, - "@types/ws": { + "node_modules/@types/webpack/node_modules/source-map": { + "version": "0.6.1", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@types/ws": { "version": "8.5.10", - "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.10.tgz", - "integrity": "sha512-vmQSUcfalpIq0R9q7uTo2lXs6eGIpt9wtnLdMv9LVpIjCA/+ufZRozlVoVelIYixx1ugCBKDhn89vnsEGOCx9A==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@types/node": "*" } }, - "@types/yargs": { + "node_modules/@types/yargs": { "version": "17.0.32", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.32.tgz", - "integrity": "sha512-xQ67Yc/laOG5uMfX/093MRlGGCIBzZMarVa+gfNKJxWAIgykYpVGkBdbqEzGDDfCrVUj6Hiff4mTZ5BA6TmAog==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@types/yargs-parser": "*" } }, - "@types/yargs-parser": { + "node_modules/@types/yargs-parser": { "version": "21.0.3", - "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.3.tgz", - "integrity": "sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==", - "dev": true + "dev": true, + "license": "MIT" }, - "@types/yauzl": { + "node_modules/@types/yauzl": { "version": "2.10.3", - "resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.10.3.tgz", - "integrity": "sha512-oJoftv0LSuaDZE3Le4DbKX+KS9G36NzOeSap90UIK0yMA/NhKJhqlSGtNDORNRaIbQfzjXDrQa0ytJ6mNRGz/Q==", "dev": true, + "license": "MIT", "optional": true, - "requires": { + "dependencies": { "@types/node": "*" } }, - "@typescript-eslint/eslint-plugin": { + "node_modules/@typescript-eslint/eslint-plugin": { "version": "5.39.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.39.0.tgz", - "integrity": "sha512-xVfKOkBm5iWMNGKQ2fwX5GVgBuHmZBO1tCRwXmY5oAIsPscfwm2UADDuNB8ZVYCtpQvJK4xpjrK7jEhcJ0zY9A==", "dev": true, - "requires": { + "license": "MIT", + "optional": true, + "peer": true, + "dependencies": { "@typescript-eslint/scope-manager": "5.39.0", "@typescript-eslint/type-utils": "5.39.0", "@typescript-eslint/utils": "5.39.0", @@ -6871,88 +4113,148 @@ "semver": "^7.3.7", "tsutils": "^3.21.0" }, - "dependencies": { - "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, - "requires": { - "yallist": "^4.0.0" - } - }, - "semver": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", - "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^5.0.0", + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true } } }, - "@typescript-eslint/experimental-utils": { - "version": "5.39.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-5.39.0.tgz", - "integrity": "sha512-n5N9kG/oGu2xXhHzsWzn94s6CWoiUj59FPU2dF2IQZxPftw+q6Jm5sV2vj5qTgAElRooHhrgtl2gxBQDCPt6WA==", + "node_modules/@typescript-eslint/eslint-plugin/node_modules/lru-cache": { + "version": "6.0.0", + "dev": true, + "license": "ISC", + "optional": true, + "peer": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/semver": { + "version": "7.3.8", "dev": true, - "requires": { - "@typescript-eslint/utils": "5.39.0" + "license": "ISC", + "optional": true, + "peer": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" } }, - "@typescript-eslint/parser": { + "node_modules/@typescript-eslint/eslint-plugin/node_modules/yallist": { + "version": "4.0.0", + "dev": true, + "license": "ISC", + "optional": true, + "peer": true + }, + "node_modules/@typescript-eslint/parser": { "version": "5.39.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.39.0.tgz", - "integrity": "sha512-PhxLjrZnHShe431sBAGHaNe6BDdxAASDySgsBCGxcBecVCi8NQWxQZMcizNA4g0pN51bBAn/FUfkWG3SDVcGlA==", "dev": true, - "requires": { + "license": "BSD-2-Clause", + "optional": true, + "peer": true, + "dependencies": { "@typescript-eslint/scope-manager": "5.39.0", "@typescript-eslint/types": "5.39.0", "@typescript-eslint/typescript-estree": "5.39.0", "debug": "^4.3.4" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "@typescript-eslint/scope-manager": { + "node_modules/@typescript-eslint/scope-manager": { "version": "5.39.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.39.0.tgz", - "integrity": "sha512-/I13vAqmG3dyqMVSZPjsbuNQlYS082Y7OMkwhCfLXYsmlI0ca4nkL7wJ/4gjX70LD4P8Hnw1JywUVVAwepURBw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@typescript-eslint/types": "5.39.0", "@typescript-eslint/visitor-keys": "5.39.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" } }, - "@typescript-eslint/type-utils": { + "node_modules/@typescript-eslint/type-utils": { "version": "5.39.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.39.0.tgz", - "integrity": "sha512-KJHJkOothljQWzR3t/GunL0TPKY+fGJtnpl+pX+sJ0YiKTz3q2Zr87SGTmFqsCMFrLt5E0+o+S6eQY0FAXj9uA==", "dev": true, - "requires": { + "license": "MIT", + "optional": true, + "peer": true, + "dependencies": { "@typescript-eslint/typescript-estree": "5.39.0", "@typescript-eslint/utils": "5.39.0", "debug": "^4.3.4", "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "@typescript-eslint/types": { + "node_modules/@typescript-eslint/types": { "version": "5.39.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.39.0.tgz", - "integrity": "sha512-gQMZrnfEBFXK38hYqt8Lkwt8f4U6yq+2H5VDSgP/qiTzC8Nw8JO3OuSUOQ2qW37S/dlwdkHDntkZM6SQhKyPhw==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } }, - "@typescript-eslint/typescript-estree": { + "node_modules/@typescript-eslint/typescript-estree": { "version": "5.39.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.39.0.tgz", - "integrity": "sha512-qLFQP0f398sdnogJoLtd43pUgB18Q50QSA+BTE5h3sUxySzbWDpTSdgt4UyxNSozY/oDK2ta6HVAzvGgq8JYnA==", "dev": true, - "requires": { + "license": "BSD-2-Clause", + "dependencies": { "@typescript-eslint/types": "5.39.0", "@typescript-eslint/visitor-keys": "5.39.0", "debug": "^4.3.4", @@ -6961,158 +4263,177 @@ "semver": "^7.3.7", "tsutils": "^3.21.0" }, - "dependencies": { - "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, - "requires": { - "yallist": "^4.0.0" - } - }, - "semver": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", - "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true } } }, - "@typescript-eslint/utils": { + "node_modules/@typescript-eslint/typescript-estree/node_modules/lru-cache": { + "version": "6.0.0", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { + "version": "7.3.8", + "dev": true, + "license": "ISC", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/yallist": { + "version": "4.0.0", + "dev": true, + "license": "ISC" + }, + "node_modules/@typescript-eslint/utils": { "version": "5.39.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.39.0.tgz", - "integrity": "sha512-+DnY5jkpOpgj+EBtYPyHRjXampJfC0yUZZzfzLuUWVZvCuKqSdJVC8UhdWipIw7VKNTfwfAPiOWzYkAwuIhiAg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@types/json-schema": "^7.0.9", "@typescript-eslint/scope-manager": "5.39.0", "@typescript-eslint/types": "5.39.0", "@typescript-eslint/typescript-estree": "5.39.0", "eslint-scope": "^5.1.1", "eslint-utils": "^3.0.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" } }, - "@typescript-eslint/visitor-keys": { + "node_modules/@typescript-eslint/visitor-keys": { "version": "5.39.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.39.0.tgz", - "integrity": "sha512-yyE3RPwOG+XJBLrhvsxAidUgybJVQ/hG8BhiJo0k8JSAYfk/CshVcxf0HwP4Jt7WZZ6vLmxdo1p6EyN3tzFTkg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@typescript-eslint/types": "5.39.0", "eslint-visitor-keys": "^3.3.0" }, - "dependencies": { - "eslint-visitor-keys": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", - "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", - "dev": true - } + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/visitor-keys/node_modules/eslint-visitor-keys": { + "version": "3.3.0", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "@ungap/structured-clone": { + "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 + "dev": true, + "license": "ISC" }, - "@webassemblyjs/ast": { + "node_modules/@webassemblyjs/ast": { "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.12.1.tgz", - "integrity": "sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@webassemblyjs/helper-numbers": "1.11.6", "@webassemblyjs/helper-wasm-bytecode": "1.11.6" } }, - "@webassemblyjs/floating-point-hex-parser": { + "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 + "dev": true, + "license": "MIT" }, - "@webassemblyjs/helper-api-error": { + "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 + "dev": true, + "license": "MIT" }, - "@webassemblyjs/helper-buffer": { + "node_modules/@webassemblyjs/helper-buffer": { "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.12.1.tgz", - "integrity": "sha512-nzJwQw99DNDKr9BVCOZcLuJJUlqkJh+kVzVl6Fmq/tI5ZtEyWT1KZMyOXltXLZJmDtvLCDgwsyrkohEtopTXCw==", - "dev": true + "dev": true, + "license": "MIT" }, - "@webassemblyjs/helper-numbers": { + "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, - "requires": { + "license": "MIT", + "dependencies": { "@webassemblyjs/floating-point-hex-parser": "1.11.6", "@webassemblyjs/helper-api-error": "1.11.6", "@xtuc/long": "4.2.2" } }, - "@webassemblyjs/helper-wasm-bytecode": { + "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 + "dev": true, + "license": "MIT" }, - "@webassemblyjs/helper-wasm-section": { + "node_modules/@webassemblyjs/helper-wasm-section": { "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.12.1.tgz", - "integrity": "sha512-Jif4vfB6FJlUlSbgEMHUyk1j234GTNG9dBJ4XJdOySoj518Xj0oGsNi59cUQF4RRMS9ouBUxDDdyBVfPTypa5g==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@webassemblyjs/ast": "1.12.1", "@webassemblyjs/helper-buffer": "1.12.1", "@webassemblyjs/helper-wasm-bytecode": "1.11.6", "@webassemblyjs/wasm-gen": "1.12.1" } }, - "@webassemblyjs/ieee754": { + "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, - "requires": { + "license": "MIT", + "dependencies": { "@xtuc/ieee754": "^1.2.0" } }, - "@webassemblyjs/leb128": { + "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, - "requires": { + "license": "Apache-2.0", + "dependencies": { "@xtuc/long": "4.2.2" } }, - "@webassemblyjs/utf8": { + "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 + "dev": true, + "license": "MIT" }, - "@webassemblyjs/wasm-edit": { + "node_modules/@webassemblyjs/wasm-edit": { "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.12.1.tgz", - "integrity": "sha512-1DuwbVvADvS5mGnXbE+c9NfA8QRcZ6iKquqjjmR10k6o+zzsRVesil54DKexiowcFCPdr/Q0qaMgB01+SQ1u6g==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@webassemblyjs/ast": "1.12.1", "@webassemblyjs/helper-buffer": "1.12.1", "@webassemblyjs/helper-wasm-bytecode": "1.11.6", @@ -7123,12 +4444,11 @@ "@webassemblyjs/wast-printer": "1.12.1" } }, - "@webassemblyjs/wasm-gen": { + "node_modules/@webassemblyjs/wasm-gen": { "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.12.1.tgz", - "integrity": "sha512-TDq4Ojh9fcohAw6OIMXqiIcTq5KUXTGRkVxbSo1hQnSy6lAM5GSdfwWeSxpAo0YzgsgF182E/U0mDNhuA0tW7w==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@webassemblyjs/ast": "1.12.1", "@webassemblyjs/helper-wasm-bytecode": "1.11.6", "@webassemblyjs/ieee754": "1.11.6", @@ -7136,24 +4456,22 @@ "@webassemblyjs/utf8": "1.11.6" } }, - "@webassemblyjs/wasm-opt": { + "node_modules/@webassemblyjs/wasm-opt": { "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.12.1.tgz", - "integrity": "sha512-Jg99j/2gG2iaz3hijw857AVYekZe2SAskcqlWIZXjji5WStnOpVoat3gQfT/Q5tb2djnCjBtMocY/Su1GfxPBg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@webassemblyjs/ast": "1.12.1", "@webassemblyjs/helper-buffer": "1.12.1", "@webassemblyjs/wasm-gen": "1.12.1", "@webassemblyjs/wasm-parser": "1.12.1" } }, - "@webassemblyjs/wasm-parser": { + "node_modules/@webassemblyjs/wasm-parser": { "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.12.1.tgz", - "integrity": "sha512-xikIi7c2FHXysxXe3COrVUPSheuBtpcfhbpFj4gmu7KRLYOzANztwUU0IbsqvMqzuNK2+glRGWCEqZo1WCLyAQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@webassemblyjs/ast": "1.12.1", "@webassemblyjs/helper-api-error": "1.11.6", "@webassemblyjs/helper-wasm-bytecode": "1.11.6", @@ -7162,134 +4480,145 @@ "@webassemblyjs/utf8": "1.11.6" } }, - "@webassemblyjs/wast-printer": { + "node_modules/@webassemblyjs/wast-printer": { "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.12.1.tgz", - "integrity": "sha512-+X4WAlOisVWQMikjbcvY2e0rwPsKQ9F688lksZhBcPycBBuii3O7m8FACbDMWDojpAqvjIncrG8J0XHKyQfVeA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@webassemblyjs/ast": "1.12.1", "@xtuc/long": "4.2.2" } }, - "@webpack-cli/configtest": { + "node_modules/@webpack-cli/configtest": { "version": "2.1.1", - "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-2.1.1.tgz", - "integrity": "sha512-wy0mglZpDSiSS0XHrVR+BAdId2+yxPSoJW8fsna3ZpYSlufjvxnP4YbKTCBZnNIcGN4r6ZPXV55X4mYExOfLmw==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14.15.0" + }, + "peerDependencies": { + "webpack": "5.x.x", + "webpack-cli": "5.x.x" + } }, - "@webpack-cli/info": { + "node_modules/@webpack-cli/info": { "version": "2.0.2", - "resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-2.0.2.tgz", - "integrity": "sha512-zLHQdI/Qs1UyT5UBdWNqsARasIA+AaF8t+4u2aS2nEpBQh2mWIVb8qAklq0eUENnC5mOItrIB4LiS9xMtph18A==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14.15.0" + }, + "peerDependencies": { + "webpack": "5.x.x", + "webpack-cli": "5.x.x" + } }, - "@webpack-cli/serve": { + "node_modules/@webpack-cli/serve": { "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-2.0.5.tgz", - "integrity": "sha512-lqaoKnRYBdo1UgDX8uF24AfGMifWK19TxPmM5FHc2vAGxrJ/qtyUyFBWoY1tISZdelsQ5fBcOusifo5o5wSJxQ==", - "dev": true - }, - "@wordpress/api-fetch": { - "version": "6.53.0", - "resolved": "https://registry.npmjs.org/@wordpress/api-fetch/-/api-fetch-6.53.0.tgz", - "integrity": "sha512-jHYueGfGfe89akyw1A28WGl17qIKTukMTwol4rHkZY43ygUmSJiTF/FSsExzMwk/j7OmGGr+GTa1TPO/tc71Lw==", "dev": true, - "requires": { - "@babel/runtime": "^7.16.0", - "@wordpress/i18n": "^4.56.0", - "@wordpress/url": "^3.57.0" + "license": "MIT", + "engines": { + "node": ">=14.15.0" + }, + "peerDependencies": { + "webpack": "5.x.x", + "webpack-cli": "5.x.x" + }, + "peerDependenciesMeta": { + "webpack-dev-server": { + "optional": true + } } }, - "@wordpress/babel-plugin-import-jsx-pragma": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@wordpress/babel-plugin-import-jsx-pragma/-/babel-plugin-import-jsx-pragma-4.2.0.tgz", - "integrity": "sha512-me0Xo4pQt74Z7nG0feleKWqy7yORvd2y6r9Fv1wf0+H3o7i7lkn61RLxro5rTVBvV/IYsosq0lHqhgk+3QhFkQ==", - "dev": true - }, - "@wordpress/babel-preset-default": { - "version": "7.3.0", - "resolved": "https://registry.npmjs.org/@wordpress/babel-preset-default/-/babel-preset-default-7.3.0.tgz", - "integrity": "sha512-GNNOf2gwFgKQSSMyOs7oWcLxwTxhJtwi5Op5WoXj5bwi2TY8RCzzyuSBnGrJjYx3WYOTzCEZtckQSIQppDNIOQ==", + "node_modules/@wordpress/babel-preset-default": { + "version": "8.6.0", + "resolved": "https://registry.npmjs.org/@wordpress/babel-preset-default/-/babel-preset-default-8.6.0.tgz", + "integrity": "sha512-g8Soek91qosZgF7GVuXu8MIe/T5HZh/sxjN2w7+XWwHpT3OqOOExKbPpfHRVa2kfvqyU0M5HOG3rWU9p5grAMw==", "dev": true, - "requires": { + "dependencies": { "@babel/core": "^7.16.0", "@babel/plugin-transform-react-jsx": "^7.16.0", "@babel/plugin-transform-runtime": "^7.16.0", "@babel/preset-env": "^7.16.0", "@babel/preset-typescript": "^7.16.0", "@babel/runtime": "^7.16.0", - "@wordpress/babel-plugin-import-jsx-pragma": "^4.2.0", - "@wordpress/browserslist-config": "^5.2.0", - "@wordpress/element": "^4.17.0", - "@wordpress/warning": "^2.19.0", - "browserslist": "^4.17.6", - "core-js": "^3.19.1" - } - }, - "@wordpress/base-styles": { - "version": "4.47.0", - "resolved": "https://registry.npmjs.org/@wordpress/base-styles/-/base-styles-4.47.0.tgz", - "integrity": "sha512-1myPBFLuMnuxUE8M2VGZ+wbGhgasLNqFdxQnWfYDMRhaSESsZgaLaMoasNZ4+e/N7Nssl97ad/XGwZ721HXqvQ==", - "dev": true + "@wordpress/browserslist-config": "^6.6.0", + "@wordpress/warning": "^3.6.0", + "browserslist": "^4.21.10", + "core-js": "^3.31.0", + "react": "^18.3.0" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + } }, - "@wordpress/browserslist-config": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@wordpress/browserslist-config/-/browserslist-config-5.2.0.tgz", - "integrity": "sha512-19PdasKR0tfZDitra72XFYCvTYRzeQMb0fA39lkPaM8th80s5U03RZx50mKeKFZLPMF1tVJmBG5wD367LNIoeg==", - "dev": true + "node_modules/@wordpress/base-styles": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@wordpress/base-styles/-/base-styles-5.6.0.tgz", + "integrity": "sha512-U+4ROBYaxzyf96bvFEJTzTJTaSS1igk3UxMJZIUa2Ixs+rBirywEkMPbbwto8uRCCEy4c0Gq/f+lmzfU02Vvpg==", + "dev": true, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + } + }, + "node_modules/@wordpress/browserslist-config": { + "version": "6.6.0", + "resolved": "https://registry.npmjs.org/@wordpress/browserslist-config/-/browserslist-config-6.6.0.tgz", + "integrity": "sha512-godfjZwl9gZmgXKxUctl01MxX5uDGIgcGa7VrFxtoVX0YZPKuZob0LUOkENddfWTTRmPQfrQBMDA05XtPsmPcA==", + "dev": true, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + } }, - "@wordpress/dependency-extraction-webpack-plugin": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/dependency-extraction-webpack-plugin/-/dependency-extraction-webpack-plugin-5.7.0.tgz", - "integrity": "sha512-s/xUnAEKwXmSUZLqrvX4n3tBWegxaiQfXJwd264MRJUmz4JibWJnvevkxM6tooEetu36xGiVHAIPvfvEEEtntQ==", + "node_modules/@wordpress/dependency-extraction-webpack-plugin": { + "version": "6.6.0", + "resolved": "https://registry.npmjs.org/@wordpress/dependency-extraction-webpack-plugin/-/dependency-extraction-webpack-plugin-6.6.0.tgz", + "integrity": "sha512-w3TqOnLnjmbBaZRea7uBoF3Uo5pH4ORdmGTiIigezl/tp7c14VIw0x9xJNs3an7hWX6yal8L5We6WR4ixSJXOQ==", "dev": true, - "requires": { + "dependencies": { "json2php": "^0.0.7" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "webpack": "^5.0.0" } }, - "@wordpress/e2e-test-utils-playwright": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/@wordpress/e2e-test-utils-playwright/-/e2e-test-utils-playwright-0.24.0.tgz", - "integrity": "sha512-r/lTk9y3rmoKASZ1Bn+vYtv5Xw0e3RxT8nXJIpM0eaHmRxTg7u7aHvIVEfi6ZDAKWuuywoCDP/KAdy9FR3lhDQ==", + "node_modules/@wordpress/e2e-test-utils-playwright": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@wordpress/e2e-test-utils-playwright/-/e2e-test-utils-playwright-1.6.0.tgz", + "integrity": "sha512-ncu9cgaysr4tYwMfWYAu0O6E6vV8iMGvHeMmZow965ogIldePkIonQIwLB3PdXz536/u5kgUAjqcTb+nhEB8lQ==", "dev": true, - "requires": { - "@wordpress/api-fetch": "^6.53.0", - "@wordpress/keycodes": "^3.56.0", - "@wordpress/url": "^3.57.0", + "dependencies": { "change-case": "^4.1.2", "form-data": "^4.0.0", "get-port": "^5.1.1", "lighthouse": "^10.4.0", "mime": "^3.0.0", - "web-vitals": "^3.5.0" - } - }, - "@wordpress/element": { - "version": "4.17.0", - "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-4.17.0.tgz", - "integrity": "sha512-ASOlR1XtsdO7Fr91FZvnzSgoRWqAq6DvbHpnncfreRW5NX50jTjmHq6fmKQP8ABSa+/hgMRvmzM4wGga6IsyGg==", - "dev": true, - "requires": { - "@babel/runtime": "^7.16.0", - "@types/react": "^17.0.37", - "@types/react-dom": "^17.0.11", - "@wordpress/escape-html": "^2.19.0", - "change-case": "^4.1.2", - "is-plain-object": "^5.0.0", - "react": "^17.0.2", - "react-dom": "^17.0.2" + "web-vitals": "^4.2.1" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "@playwright/test": ">=1" } }, - "@wordpress/env": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/@wordpress/env/-/env-5.4.0.tgz", - "integrity": "sha512-5vrOlTQ3kr15qQP5V1ObloRrsAx/UjKzbCUnrKFqaCCPxEiS+VnyJ+TCCHerKGwQUEKroX4iBd4cdbZniCChGw==", + "node_modules/@wordpress/env": { + "version": "10.6.0", + "resolved": "https://registry.npmjs.org/@wordpress/env/-/env-10.6.0.tgz", + "integrity": "sha512-hK4JH5oyGUKOlSBGKx+DS64G1VN8azU1Kvpn1aob3bYYFCvtoXjKOOGmK9Gnf4f2gosYexuDS5FmAfTPqi8a8Q==", "dev": true, - "requires": { + "dependencies": { "chalk": "^4.0.0", "copy-dir": "^1.3.0", - "docker-compose": "^0.22.2", + "docker-compose": "^0.24.3", "extract-zip": "^1.6.7", "got": "^11.8.5", "inquirer": "^7.1.0", @@ -7300,210 +4629,490 @@ "terminal-link": "^2.0.0", "yargs": "^17.3.0" }, + "bin": { + "wp-env": "bin/wp-env" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + } + }, + "node_modules/@wordpress/env/node_modules/ansi-styles": { + "version": "4.3.0", + "dev": true, + "license": "MIT", "dependencies": { - "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, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "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, - "requires": { - "color-name": "~1.1.4" - } - }, - "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 - }, - "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 - }, - "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, - "requires": { - "has-flag": "^4.0.0" - } - } + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "@wordpress/escape-html": { - "version": "2.19.0", - "resolved": "https://registry.npmjs.org/@wordpress/escape-html/-/escape-html-2.19.0.tgz", - "integrity": "sha512-pBMuDDaV15SGXNu4cSu1pYiavkcx1rCBOuzGTSJ/WYLAC+K6PK+1lacPsPajVqnm2LLeKkNG4b9yn3PSZlbCww==", + "node_modules/@wordpress/env/node_modules/chalk": { + "version": "4.1.2", + "dev": true, + "license": "MIT", + "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/@wordpress/env/node_modules/color-convert": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@wordpress/env/node_modules/color-name": { + "version": "1.1.4", + "dev": true, + "license": "MIT" + }, + "node_modules/@wordpress/env/node_modules/has-flag": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/@wordpress/env/node_modules/supports-color": { + "version": "7.2.0", "dev": true, - "requires": { - "@babel/runtime": "^7.16.0" + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "@wordpress/eslint-plugin": { - "version": "13.3.0", - "resolved": "https://registry.npmjs.org/@wordpress/eslint-plugin/-/eslint-plugin-13.3.0.tgz", - "integrity": "sha512-90OEybXt6mJRumax5lQubPQLfv2TV3A0+cA50b3amE28bPzv76NRexbM5jeyN3Jhc0rYU4glq4yHq75XjSRVVA==", + "node_modules/@wordpress/eslint-plugin": { + "version": "20.3.0", + "resolved": "https://registry.npmjs.org/@wordpress/eslint-plugin/-/eslint-plugin-20.3.0.tgz", + "integrity": "sha512-Y272ZtosmXPJJ0K5X7j0ufcpuDf1unEEDOmdyStHhYV3DGjfETPKgMBVjpmWIObu5oMlqqkTiiQaNb+lho3EIQ==", "dev": true, - "requires": { + "dependencies": { "@babel/eslint-parser": "^7.16.0", - "@typescript-eslint/eslint-plugin": "^5.3.0", - "@typescript-eslint/parser": "^5.3.0", - "@wordpress/babel-preset-default": "^7.3.0", - "@wordpress/prettier-config": "^2.2.0", + "@typescript-eslint/eslint-plugin": "^6.4.1", + "@typescript-eslint/parser": "^6.4.1", + "@wordpress/babel-preset-default": "^8.6.0", + "@wordpress/prettier-config": "^4.6.0", "cosmiconfig": "^7.0.0", "eslint-config-prettier": "^8.3.0", "eslint-plugin-import": "^2.25.2", - "eslint-plugin-jest": "^25.2.3", - "eslint-plugin-jsdoc": "^37.0.3", + "eslint-plugin-jest": "^27.2.3", + "eslint-plugin-jsdoc": "^46.4.6", "eslint-plugin-jsx-a11y": "^6.5.1", - "eslint-plugin-prettier": "^3.3.0", + "eslint-plugin-playwright": "^0.15.3", + "eslint-plugin-prettier": "^5.0.0", "eslint-plugin-react": "^7.27.0", "eslint-plugin-react-hooks": "^4.3.0", "globals": "^13.12.0", "requireindex": "^1.2.0" }, - "dependencies": { - "globals": { - "version": "13.17.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.17.0.tgz", - "integrity": "sha512-1C+6nQRb1GwGMKm2dH/E7enFAMxGTmGI7/dEdhy/DNelv85w9B72t3uc5frtMNXIbzrarJJ/lTCjcaZwbLJmyw==", - "dev": true, - "requires": { - "type-fest": "^0.20.2" - } + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "@babel/core": ">=7", + "eslint": ">=8", + "prettier": ">=3", + "typescript": ">=4" + }, + "peerDependenciesMeta": { + "prettier": { + "optional": true }, - "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 + "typescript": { + "optional": true + } + } + }, + "node_modules/@wordpress/eslint-plugin/node_modules/@typescript-eslint/eslint-plugin": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.21.0.tgz", + "integrity": "sha512-oy9+hTPCUFpngkEZUSzbf9MxI65wbKFoQYsgPdILTfbUldp5ovUuphZVe4i30emU9M/kP+T64Di0mxl7dSw3MA==", + "dev": true, + "dependencies": { + "@eslint-community/regexpp": "^4.5.1", + "@typescript-eslint/scope-manager": "6.21.0", + "@typescript-eslint/type-utils": "6.21.0", + "@typescript-eslint/utils": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0", + "debug": "^4.3.4", + "graphemer": "^1.4.0", + "ignore": "^5.2.4", + "natural-compare": "^1.4.0", + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^6.0.0 || ^6.0.0-alpha", + "eslint": "^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true } } }, - "@wordpress/hooks": { - "version": "3.56.0", - "resolved": "https://registry.npmjs.org/@wordpress/hooks/-/hooks-3.56.0.tgz", - "integrity": "sha512-sxoNbXdqfhlRNduDqR5y5Cq7Rwm5ATZGIr5U9nrM5RHWd+8v7g8wpB/rpTSqi+HeCW3suiFuN6qJJZ4eFwRB2w==", + "node_modules/@wordpress/eslint-plugin/node_modules/@typescript-eslint/parser": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.21.0.tgz", + "integrity": "sha512-tbsV1jPne5CkFQCgPBcDOt30ItF7aJoZL997JSF7MhGQqOeT3svWRYxiqlfA5RUdlHN6Fi+EI9bxqbdyAUZjYQ==", "dev": true, - "requires": { - "@babel/runtime": "^7.16.0" + "dependencies": { + "@typescript-eslint/scope-manager": "6.21.0", + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/typescript-estree": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0", + "debug": "^4.3.4" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "@wordpress/i18n": { - "version": "4.56.0", - "resolved": "https://registry.npmjs.org/@wordpress/i18n/-/i18n-4.56.0.tgz", - "integrity": "sha512-W+WL8vxwqUeicgXvIHZ3Htq6pYrJe2Dn/9SBsQ7gFPUrGWe2ww5IzPocLv4rAha3lca2ZVIX2q47rGaSs9t8Kw==", + "node_modules/@wordpress/eslint-plugin/node_modules/@typescript-eslint/scope-manager": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.21.0.tgz", + "integrity": "sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==", "dev": true, - "requires": { - "@babel/runtime": "^7.16.0", - "@wordpress/hooks": "^3.56.0", - "gettext-parser": "^1.3.1", - "memize": "^2.1.0", - "sprintf-js": "^1.1.1", - "tannin": "^1.2.0" + "dependencies": { + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@wordpress/eslint-plugin/node_modules/@typescript-eslint/type-utils": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.21.0.tgz", + "integrity": "sha512-rZQI7wHfao8qMX3Rd3xqeYSMCL3SoiSQLBATSiVKARdFGCYSRvmViieZjqc58jKgs8Y8i9YvVVhRbHSTA4VBag==", + "dev": true, + "dependencies": { + "@typescript-eslint/typescript-estree": "6.21.0", + "@typescript-eslint/utils": "6.21.0", + "debug": "^4.3.4", + "ts-api-utils": "^1.0.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@wordpress/eslint-plugin/node_modules/@typescript-eslint/types": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.21.0.tgz", + "integrity": "sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==", + "dev": true, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@wordpress/eslint-plugin/node_modules/@typescript-eslint/typescript-estree": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.21.0.tgz", + "integrity": "sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==", + "dev": true, "dependencies": { - "sprintf-js": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz", - "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==", - "dev": true + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "minimatch": "9.0.3", + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true } } }, - "@wordpress/jest-console": { - "version": "7.27.0", - "resolved": "https://registry.npmjs.org/@wordpress/jest-console/-/jest-console-7.27.0.tgz", - "integrity": "sha512-mzKShc0zUHyWsHt/fK2L3cJDWWAp9AttzENDTo7RuynqJWTDOGsqsnDr6zITyVcaL0my8ApVTiWu5OxzBXXvfg==", + "node_modules/@wordpress/eslint-plugin/node_modules/@typescript-eslint/utils": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.21.0.tgz", + "integrity": "sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==", + "dev": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.4.0", + "@types/json-schema": "^7.0.12", + "@types/semver": "^7.5.0", + "@typescript-eslint/scope-manager": "6.21.0", + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/typescript-estree": "6.21.0", + "semver": "^7.5.4" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0" + } + }, + "node_modules/@wordpress/eslint-plugin/node_modules/@typescript-eslint/visitor-keys": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.21.0.tgz", + "integrity": "sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "6.21.0", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@wordpress/eslint-plugin/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==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/@wordpress/eslint-plugin/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, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@wordpress/eslint-plugin/node_modules/globals": { + "version": "13.17.0", + "dev": true, + "license": "MIT", + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@wordpress/eslint-plugin/node_modules/ignore": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/@wordpress/eslint-plugin/node_modules/minimatch": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@wordpress/eslint-plugin/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/@wordpress/eslint-plugin/node_modules/type-fest": { + "version": "0.20.2", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@wordpress/jest-console": { + "version": "8.6.0", + "resolved": "https://registry.npmjs.org/@wordpress/jest-console/-/jest-console-8.6.0.tgz", + "integrity": "sha512-U680VvNbmg8oGcNpeovuFN8w2Y8iN/lVDyjvO+iT/hsM74qAzUfjb4EOhQiaSnT/GEGP8KAqw7FNSUSMLv+/YA==", "dev": true, - "requires": { + "dependencies": { "@babel/runtime": "^7.16.0", "jest-matcher-utils": "^29.6.2" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "jest": ">=29" } }, - "@wordpress/jest-preset-default": { - "version": "11.27.0", - "resolved": "https://registry.npmjs.org/@wordpress/jest-preset-default/-/jest-preset-default-11.27.0.tgz", - "integrity": "sha512-5fyyKthW+BNpv+Ndtgl2+1uHsmEWqTtf3PN+FL3qRfYCTPbvasxZBkGx2bpnt0D9ajcrpGmbllwOoM0dhY8Q6w==", + "node_modules/@wordpress/jest-preset-default": { + "version": "12.6.0", + "resolved": "https://registry.npmjs.org/@wordpress/jest-preset-default/-/jest-preset-default-12.6.0.tgz", + "integrity": "sha512-02ZozKXzlBdJnr5fD4PKfNrDFmsA44KvPJa1zNOsIILxHk+C5ZfqcSL0q++k2dOsSpLuIZg+tNwKkOeluL+s3Q==", "dev": true, - "requires": { - "@wordpress/jest-console": "^7.27.0", + "dependencies": { + "@wordpress/jest-console": "^8.6.0", "babel-jest": "^29.6.2" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "@babel/core": ">=7", + "jest": ">=29" } }, - "@wordpress/keycodes": { - "version": "3.56.0", - "resolved": "https://registry.npmjs.org/@wordpress/keycodes/-/keycodes-3.56.0.tgz", - "integrity": "sha512-YIvqB0AEsu3fjkuQHNT7XladaTDE1Thntv+oqzkRejdNodH5tbPb3CAePAK3F7iQurZ0GCaqlmJTy9qcHwDU0Q==", + "node_modules/@wordpress/npm-package-json-lint-config": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@wordpress/npm-package-json-lint-config/-/npm-package-json-lint-config-5.6.0.tgz", + "integrity": "sha512-wJKEX0XC0eDQFTnvpuBQdV12KyJzWHJaAA8n6pyIgRWz8RjdeANEaKHAbdDK1aHOA5DbwuxZh7NUm4ngMaPBrA==", "dev": true, - "requires": { - "@babel/runtime": "^7.16.0", - "@wordpress/i18n": "^4.56.0" + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "npm-package-json-lint": ">=6.0.0" } }, - "@wordpress/npm-package-json-lint-config": { - "version": "4.41.0", - "resolved": "https://registry.npmjs.org/@wordpress/npm-package-json-lint-config/-/npm-package-json-lint-config-4.41.0.tgz", - "integrity": "sha512-HStjqoxdB4zTU9i3BCzvbI0OyVZ3L6phSeoRwk2uU1cT41O883ouoBGE9DcEIzufKeuFCeqCBJf8NRk8S2h/sg==", - "dev": true - }, - "@wordpress/postcss-plugins-preset": { - "version": "4.40.0", - "resolved": "https://registry.npmjs.org/@wordpress/postcss-plugins-preset/-/postcss-plugins-preset-4.40.0.tgz", - "integrity": "sha512-xnd+XZI5s9hyGtt314WgH3prxQVBMLEjmTTz0g1+9x1avrYxIwhv1ZxMNittrAq2IP1qBzT5IwsPzJ+wCgcEyw==", + "node_modules/@wordpress/postcss-plugins-preset": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@wordpress/postcss-plugins-preset/-/postcss-plugins-preset-5.6.0.tgz", + "integrity": "sha512-r8QShU9dKd23nPcnOtW4Cvaf8LyZ9qyoIWw50lVNV4H9LAvaaXFN7kzID+B7bosLaqoB5vAe/H17n6/kxdDfHQ==", "dev": true, - "requires": { - "@wordpress/base-styles": "^4.47.0", + "dependencies": { + "@wordpress/base-styles": "^5.6.0", "autoprefixer": "^10.2.5" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "postcss": "^8.0.0" } }, - "@wordpress/prettier-config": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@wordpress/prettier-config/-/prettier-config-2.2.0.tgz", - "integrity": "sha512-PdljwMrrjYxhS7JUVThJ+lZTdRKrWaSRDSX6bqMzO++jI3a+egPR0ZDgbH0TwcvlmGTB0V9YNCqKpMmGGPRDjw==", - "dev": true + "node_modules/@wordpress/prettier-config": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/@wordpress/prettier-config/-/prettier-config-4.6.0.tgz", + "integrity": "sha512-e43Ep9OiNt/zRkY0NAdPni3ac7Tf761lEZDVwxwSZdrm5N4u6SXqXJrHo5/AxcnLhq/21TG4Ry+g4zEA6L1aXA==", + "dev": true, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "prettier": ">=3" + } }, - "@wordpress/scripts": { - "version": "27.7.0", - "resolved": "https://registry.npmjs.org/@wordpress/scripts/-/scripts-27.7.0.tgz", - "integrity": "sha512-dFkye4tO3xbFbqi1RMgiicykT074C2VuenT9Kc1L9oUwFmHa4BVDskcNIMKWl3CzDb2gtNEjsZx77CMQTzgLAQ==", + "node_modules/@wordpress/scripts": { + "version": "28.6.0", + "resolved": "https://registry.npmjs.org/@wordpress/scripts/-/scripts-28.6.0.tgz", + "integrity": "sha512-CBmmC3ftafLQ0hXXust5w9W/H1D14k28oQxCSYWQncAcCocGyOlALoEN27BGh+Hb79PZDqC/HB71ni6fQZOQTQ==", "dev": true, - "requires": { + "dependencies": { "@babel/core": "^7.16.0", "@pmmmwh/react-refresh-webpack-plugin": "^0.5.11", "@svgr/webpack": "^8.0.1", - "@wordpress/babel-preset-default": "^7.40.0", - "@wordpress/browserslist-config": "^5.39.0", - "@wordpress/dependency-extraction-webpack-plugin": "^5.7.0", - "@wordpress/e2e-test-utils-playwright": "^0.24.0", - "@wordpress/eslint-plugin": "^17.13.0", - "@wordpress/jest-preset-default": "^11.27.0", - "@wordpress/npm-package-json-lint-config": "^4.41.0", - "@wordpress/postcss-plugins-preset": "^4.40.0", - "@wordpress/prettier-config": "^3.13.0", - "@wordpress/stylelint-config": "^21.39.0", + "@wordpress/babel-preset-default": "^8.6.0", + "@wordpress/browserslist-config": "^6.6.0", + "@wordpress/dependency-extraction-webpack-plugin": "^6.6.0", + "@wordpress/e2e-test-utils-playwright": "^1.6.0", + "@wordpress/eslint-plugin": "^20.3.0", + "@wordpress/jest-preset-default": "^12.6.0", + "@wordpress/npm-package-json-lint-config": "^5.6.0", + "@wordpress/postcss-plugins-preset": "^5.6.0", + "@wordpress/prettier-config": "^4.6.0", + "@wordpress/stylelint-config": "^22.6.0", "adm-zip": "^0.5.9", "babel-jest": "^29.6.2", "babel-loader": "^8.2.3", @@ -7538,8 +5147,10 @@ "react-refresh": "^0.14.0", "read-pkg-up": "^7.0.1", "resolve-bin": "^0.4.0", + "rtlcss-webpack-plugin": "^4.0.7", "sass": "^1.35.2", "sass-loader": "^12.1.0", + "schema-utils": "^4.2.0", "source-map-loader": "^3.0.0", "stylelint": "^14.2.0", "terser-webpack-plugin": "^5.3.9", @@ -7549,949 +5160,650 @@ "webpack-cli": "^5.1.4", "webpack-dev-server": "^4.15.1" }, + "bin": { + "wp-scripts": "bin/wp-scripts.js" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "@playwright/test": "^1.46.0", + "react": "^18.0.0", + "react-dom": "^18.0.0" + } + }, + "node_modules/@wordpress/scripts/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": { - "@es-joy/jsdoccomment": { - "version": "0.41.0", - "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.41.0.tgz", - "integrity": "sha512-aKUhyn1QI5Ksbqcr3fFJj16p99QdjUxXAEuFst1Z47DRyoiMwivIH9MV/ARcJOCXVjPfjITciej8ZD2O/6qUmw==", - "dev": true, - "requires": { - "comment-parser": "1.4.1", - "esquery": "^1.5.0", - "jsdoc-type-pratt-parser": "~4.0.0" - } - }, - "@types/json-schema": { - "version": "7.0.15", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", - "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", - "dev": true - }, - "@typescript-eslint/eslint-plugin": { - "version": "6.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.21.0.tgz", - "integrity": "sha512-oy9+hTPCUFpngkEZUSzbf9MxI65wbKFoQYsgPdILTfbUldp5ovUuphZVe4i30emU9M/kP+T64Di0mxl7dSw3MA==", - "dev": true, - "requires": { - "@eslint-community/regexpp": "^4.5.1", - "@typescript-eslint/scope-manager": "6.21.0", - "@typescript-eslint/type-utils": "6.21.0", - "@typescript-eslint/utils": "6.21.0", - "@typescript-eslint/visitor-keys": "6.21.0", - "debug": "^4.3.4", - "graphemer": "^1.4.0", - "ignore": "^5.2.4", - "natural-compare": "^1.4.0", - "semver": "^7.5.4", - "ts-api-utils": "^1.0.1" - } - }, - "@typescript-eslint/parser": { - "version": "6.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.21.0.tgz", - "integrity": "sha512-tbsV1jPne5CkFQCgPBcDOt30ItF7aJoZL997JSF7MhGQqOeT3svWRYxiqlfA5RUdlHN6Fi+EI9bxqbdyAUZjYQ==", - "dev": true, - "requires": { - "@typescript-eslint/scope-manager": "6.21.0", - "@typescript-eslint/types": "6.21.0", - "@typescript-eslint/typescript-estree": "6.21.0", - "@typescript-eslint/visitor-keys": "6.21.0", - "debug": "^4.3.4" - } - }, - "@typescript-eslint/scope-manager": { - "version": "6.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.21.0.tgz", - "integrity": "sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==", - "dev": true, - "requires": { - "@typescript-eslint/types": "6.21.0", - "@typescript-eslint/visitor-keys": "6.21.0" - } - }, - "@typescript-eslint/type-utils": { - "version": "6.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.21.0.tgz", - "integrity": "sha512-rZQI7wHfao8qMX3Rd3xqeYSMCL3SoiSQLBATSiVKARdFGCYSRvmViieZjqc58jKgs8Y8i9YvVVhRbHSTA4VBag==", - "dev": true, - "requires": { - "@typescript-eslint/typescript-estree": "6.21.0", - "@typescript-eslint/utils": "6.21.0", - "debug": "^4.3.4", - "ts-api-utils": "^1.0.1" - } - }, - "@typescript-eslint/types": { - "version": "6.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.21.0.tgz", - "integrity": "sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==", - "dev": true - }, - "@typescript-eslint/typescript-estree": { - "version": "6.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.21.0.tgz", - "integrity": "sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==", - "dev": true, - "requires": { - "@typescript-eslint/types": "6.21.0", - "@typescript-eslint/visitor-keys": "6.21.0", - "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "minimatch": "9.0.3", - "semver": "^7.5.4", - "ts-api-utils": "^1.0.1" - } - }, - "@typescript-eslint/utils": { - "version": "6.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.21.0.tgz", - "integrity": "sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==", - "dev": true, - "requires": { - "@eslint-community/eslint-utils": "^4.4.0", - "@types/json-schema": "^7.0.12", - "@types/semver": "^7.5.0", - "@typescript-eslint/scope-manager": "6.21.0", - "@typescript-eslint/types": "6.21.0", - "@typescript-eslint/typescript-estree": "6.21.0", - "semver": "^7.5.4" - } - }, - "@typescript-eslint/visitor-keys": { - "version": "6.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.21.0.tgz", - "integrity": "sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==", - "dev": true, - "requires": { - "@typescript-eslint/types": "6.21.0", - "eslint-visitor-keys": "^3.4.1" - } - }, - "@wordpress/babel-plugin-import-jsx-pragma": { - "version": "4.39.0", - "resolved": "https://registry.npmjs.org/@wordpress/babel-plugin-import-jsx-pragma/-/babel-plugin-import-jsx-pragma-4.39.0.tgz", - "integrity": "sha512-yQySutPQq+Joa3ePzc9X8f5hZacmcn5e9KMiJYrXBUqj5VKl4RR8N3e+UOl1lWoB2NI/7bA9tW9TXJlDpHJX1w==", - "dev": true - }, - "@wordpress/babel-preset-default": { - "version": "7.40.0", - "resolved": "https://registry.npmjs.org/@wordpress/babel-preset-default/-/babel-preset-default-7.40.0.tgz", - "integrity": "sha512-/guM3C4NMoLK0pNO5Epbm/50L/MqXB0k3+fLtPbw3BC3v8Aus7ktE2l85gilowNyE3kYAyjFR/BsG5tassnaVQ==", - "dev": true, - "requires": { - "@babel/core": "^7.16.0", - "@babel/plugin-transform-react-jsx": "^7.16.0", - "@babel/plugin-transform-runtime": "^7.16.0", - "@babel/preset-env": "^7.16.0", - "@babel/preset-typescript": "^7.16.0", - "@babel/runtime": "^7.16.0", - "@wordpress/babel-plugin-import-jsx-pragma": "^4.39.0", - "@wordpress/browserslist-config": "^5.39.0", - "@wordpress/warning": "^2.56.0", - "browserslist": "^4.21.10", - "core-js": "^3.31.0", - "react": "^18.2.0" - } - }, - "@wordpress/browserslist-config": { - "version": "5.39.0", - "resolved": "https://registry.npmjs.org/@wordpress/browserslist-config/-/browserslist-config-5.39.0.tgz", - "integrity": "sha512-oy5CRWS3WsaFN/KAgOUIE6mmyuFu5qmKZZhQ+voCN+ifXTsj1J6ypR3RyY03Cbojy6kidyVYl3qRyMxbbUwWSQ==", - "dev": true - }, - "@wordpress/eslint-plugin": { - "version": "17.13.0", - "resolved": "https://registry.npmjs.org/@wordpress/eslint-plugin/-/eslint-plugin-17.13.0.tgz", - "integrity": "sha512-QnG5HmOd+XsweKOvrqbOugm9rINUjcsh1jo2SN4cbbTWZJ6nPmcfLS0YJdrKkgOQUnKDPQgBPVEyI8tp19OtBw==", - "dev": true, - "requires": { - "@babel/eslint-parser": "^7.16.0", - "@typescript-eslint/eslint-plugin": "^6.4.1", - "@typescript-eslint/parser": "^6.4.1", - "@wordpress/babel-preset-default": "^7.40.0", - "@wordpress/prettier-config": "^3.13.0", - "cosmiconfig": "^7.0.0", - "eslint-config-prettier": "^8.3.0", - "eslint-plugin-import": "^2.25.2", - "eslint-plugin-jest": "^27.2.3", - "eslint-plugin-jsdoc": "^46.4.6", - "eslint-plugin-jsx-a11y": "^6.5.1", - "eslint-plugin-playwright": "^0.15.3", - "eslint-plugin-prettier": "^5.0.0", - "eslint-plugin-react": "^7.27.0", - "eslint-plugin-react-hooks": "^4.3.0", - "globals": "^13.12.0", - "requireindex": "^1.2.0" - } - }, - "@wordpress/prettier-config": { - "version": "3.13.0", - "resolved": "https://registry.npmjs.org/@wordpress/prettier-config/-/prettier-config-3.13.0.tgz", - "integrity": "sha512-oNayHsdAhP3ER4T7KjNrmdtEIZjYJAdIDdScjNOKmK3Qvp02VP9TPfDGhLSjiYmOiQcyrIz/uuf9MJ9JCcdGng==", - "dev": true - }, - "@wordpress/warning": { - "version": "2.56.0", - "resolved": "https://registry.npmjs.org/@wordpress/warning/-/warning-2.56.0.tgz", - "integrity": "sha512-Bd1Zy5eWQPKoQsfQwD9T1KZWPpq+ZFyozirx+Z5MnX59J0i80p8KiEMcmXhPH+Os9An2PtlVV9j0gY9z5z0oAw==", - "dev": true - }, - "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, - "requires": { - "color-convert": "^2.0.1" - } - }, - "brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0" - } - }, - "browserslist": { - "version": "4.23.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", - "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", - "dev": true, - "requires": { - "caniuse-lite": "^1.0.30001587", - "electron-to-chromium": "^1.4.668", - "node-releases": "^2.0.14", - "update-browserslist-db": "^1.0.13" - } - }, - "caniuse-lite": { - "version": "1.0.30001612", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001612.tgz", - "integrity": "sha512-lFgnZ07UhaCcsSZgWW0K5j4e69dK1u/ltrL9lTUiFOwNHs12S3UMIEYgBV0Z6C6hRDev7iRnMzzYmKabYdXF9g==", - "dev": true - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "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, - "requires": { - "color-name": "~1.1.4" - } - }, - "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 - }, - "comment-parser": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.4.1.tgz", - "integrity": "sha512-buhp5kePrmda3vhc5B9t7pUQXAb2Tnd0qgpkIhPhkHXxJpiPJ11H0ZEU0oBpJ2QztSbzG/ZxMj/CHsYJqRHmyg==", - "dev": true - }, - "core-js": { - "version": "3.37.0", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.37.0.tgz", - "integrity": "sha512-fu5vHevQ8ZG4og+LXug8ulUtVxjOcEYvifJr7L5Bfq9GOztVqsKd9/59hUk2ZSbCrS3BqUr3EpaYGIYzq7g3Ug==", - "dev": true - }, - "electron-to-chromium": { - "version": "1.4.748", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.748.tgz", - "integrity": "sha512-VWqjOlPZn70UZ8FTKUOkUvBLeTQ0xpty66qV0yJcAGY2/CthI4xyW9aEozRVtuwv3Kpf5xTesmJUcPwuJmgP4A==", - "dev": true - }, - "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 - }, - "eslint-plugin-jest": { - "version": "27.9.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-27.9.0.tgz", - "integrity": "sha512-QIT7FH7fNmd9n4se7FFKHbsLKGQiw885Ds6Y/sxKgCZ6natwCsXdgPOADnYVxN2QrRweF0FZWbJ6S7Rsn7llug==", - "dev": true, - "requires": { - "@typescript-eslint/utils": "^5.10.0" - }, - "dependencies": { - "@typescript-eslint/scope-manager": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz", - "integrity": "sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==", - "dev": true, - "requires": { - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/visitor-keys": "5.62.0" - } - }, - "@typescript-eslint/types": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.62.0.tgz", - "integrity": "sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==", - "dev": true - }, - "@typescript-eslint/typescript-estree": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz", - "integrity": "sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==", - "dev": true, - "requires": { - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/visitor-keys": "5.62.0", - "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "semver": "^7.3.7", - "tsutils": "^3.21.0" - } - }, - "@typescript-eslint/utils": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.62.0.tgz", - "integrity": "sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==", - "dev": true, - "requires": { - "@eslint-community/eslint-utils": "^4.2.0", - "@types/json-schema": "^7.0.9", - "@types/semver": "^7.3.12", - "@typescript-eslint/scope-manager": "5.62.0", - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/typescript-estree": "5.62.0", - "eslint-scope": "^5.1.1", - "semver": "^7.3.7" - } - }, - "@typescript-eslint/visitor-keys": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz", - "integrity": "sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==", - "dev": true, - "requires": { - "@typescript-eslint/types": "5.62.0", - "eslint-visitor-keys": "^3.3.0" - } - } - } - }, - "eslint-plugin-jsdoc": { - "version": "46.10.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-46.10.1.tgz", - "integrity": "sha512-x8wxIpv00Y50NyweDUpa+58ffgSAI5sqe+zcZh33xphD0AVh+1kqr1ombaTRb7Fhpove1zfUuujlX9DWWBP5ag==", - "dev": true, - "requires": { - "@es-joy/jsdoccomment": "~0.41.0", - "are-docs-informative": "^0.0.2", - "comment-parser": "1.4.1", - "debug": "^4.3.4", - "escape-string-regexp": "^4.0.0", - "esquery": "^1.5.0", - "is-builtin-module": "^3.2.1", - "semver": "^7.5.4", - "spdx-expression-parse": "^4.0.0" - } - }, - "eslint-plugin-prettier": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-5.1.3.tgz", - "integrity": "sha512-C9GCVAs4Eq7ZC/XFQHITLiHJxQngdtraXaM+LoUFoFp/lHNl2Zn8f3WQbe9HvTBBQ9YnKFB0/2Ajdqwo5D1EAw==", - "dev": true, - "requires": { - "prettier-linter-helpers": "^1.0.0", - "synckit": "^0.8.6" - } - }, - "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 - }, - "esquery": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", - "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", - "dev": true, - "requires": { - "estraverse": "^5.1.0" - } - }, - "globals": { - "version": "13.24.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", - "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", - "dev": true, - "requires": { - "type-fest": "^0.20.2" - } - }, - "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 - }, - "ignore": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", - "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", - "dev": true - }, - "jsdoc-type-pratt-parser": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-4.0.0.tgz", - "integrity": "sha512-YtOli5Cmzy3q4dP26GraSOeAhqecewG04hoO8DY56CH4KJ9Fvv5qKWUCCo3HZob7esJQHCv6/+bnTy72xZZaVQ==", - "dev": true - }, - "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, - "requires": { - "yallist": "^4.0.0" - } - }, - "minimatch": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", - "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", - "dev": true, - "requires": { - "brace-expansion": "^2.0.1" - } - }, - "node-releases": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", - "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", - "dev": true - }, - "react": { - "version": "18.2.0", - "resolved": "https://registry.npmjs.org/react/-/react-18.2.0.tgz", - "integrity": "sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==", - "dev": true, - "requires": { - "loose-envify": "^1.1.0" - } - }, - "semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "spdx-expression-parse": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-4.0.0.tgz", - "integrity": "sha512-Clya5JIij/7C6bRR22+tnGXbc4VKlibKSVj2iHvVeX5iMW7s1SIQlqu699JkODJJIhh/pUu8L0/VLh8xflD+LQ==", - "dev": true, - "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "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, - "requires": { - "has-flag": "^4.0.0" - } - }, - "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 - }, - "update-browserslist-db": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", - "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", - "dev": true, - "requires": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - } + "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/@wordpress/scripts/node_modules/ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" + } + }, + "node_modules/@wordpress/scripts/node_modules/ansi-styles": { + "version": "4.3.0", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "@wordpress/stylelint-config": { - "version": "21.39.0", - "resolved": "https://registry.npmjs.org/@wordpress/stylelint-config/-/stylelint-config-21.39.0.tgz", - "integrity": "sha512-MNFsOpriCtNXs1TfPQwPkU7/4Jo0e0IfGJdvRYHp8mSv0VqY1vn9CW8QJ8xqrWYqxCOG6Z+Zn9IPToEM5mqz5A==", + "node_modules/@wordpress/scripts/node_modules/chalk": { + "version": "4.1.2", "dev": true, - "requires": { - "stylelint-config-recommended": "^6.0.0", - "stylelint-config-recommended-scss": "^5.0.2" + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "@wordpress/url": { - "version": "3.57.0", - "resolved": "https://registry.npmjs.org/@wordpress/url/-/url-3.57.0.tgz", - "integrity": "sha512-W3F0KVEaMoRENya7GGUPXrZGYnhAg3fuLSLpNcf1skSrM5rUVMNdeRlZj+jln1O/+qjboJnC+y+IzOlQRwlS6A==", + "node_modules/@wordpress/scripts/node_modules/color-convert": { + "version": "2.0.1", "dev": true, - "requires": { - "@babel/runtime": "^7.16.0", - "remove-accents": "^0.5.0" + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" } }, - "@wordpress/warning": { - "version": "2.19.0", - "resolved": "https://registry.npmjs.org/@wordpress/warning/-/warning-2.19.0.tgz", - "integrity": "sha512-ED4/KYJ6quTltbJdYADzWHyuaqVJH0MkU7nlHYU0SMsbsP+seQTA6ItKIBwF3bgOe6NgpWxLXI6Q/zDkOzSzTA==", + "node_modules/@wordpress/scripts/node_modules/color-name": { + "version": "1.1.4", + "dev": true, + "license": "MIT" + }, + "node_modules/@wordpress/scripts/node_modules/has-flag": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/@wordpress/scripts/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 }, - "@xtuc/ieee754": { + "node_modules/@wordpress/scripts/node_modules/schema-utils": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.2.0.tgz", + "integrity": "sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.9.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.1.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/@wordpress/scripts/node_modules/supports-color": { + "version": "7.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@wordpress/stylelint-config": { + "version": "22.6.0", + "resolved": "https://registry.npmjs.org/@wordpress/stylelint-config/-/stylelint-config-22.6.0.tgz", + "integrity": "sha512-wtGdEbHp99Vh/ya4swP8AWKzZCDFHke1SYHvmgdbomSJ+C87APp9q4ggfk2VOk/tIcrHPK9oagDFH05B8H+VLA==", + "dev": true, + "dependencies": { + "stylelint-config-recommended": "^6.0.0", + "stylelint-config-recommended-scss": "^5.0.2" + }, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.2" + }, + "peerDependencies": { + "stylelint": "^14.2" + } + }, + "node_modules/@wordpress/warning": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/@wordpress/warning/-/warning-3.6.0.tgz", + "integrity": "sha512-pm57z1LZkzfQsXsji6yxcP0XSymKbvP087vJLlMkmLf+MoNVyTD6UvFpXl8hRSH6C6pySoJSgGFXaH81CRuO2Q==", + "dev": true, + "engines": { + "node": ">=18.12.0", + "npm": ">=8.19.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 + "dev": true, + "license": "BSD-3-Clause" }, - "@xtuc/long": { + "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 + "dev": true, + "license": "Apache-2.0" }, - "abab": { + "node_modules/abab": { "version": "2.0.6", - "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", - "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==", - "dev": true + "dev": true, + "license": "BSD-3-Clause" }, - "abbrev": { + "node_modules/abbrev": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", - "dev": true + "dev": true, + "license": "ISC" }, - "accepts": { + "node_modules/accepts": { "version": "1.3.8", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", - "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "mime-types": "~2.1.34", "negotiator": "0.6.3" + }, + "engines": { + "node": ">= 0.6" } }, - "acorn": { + "node_modules/acorn": { "version": "8.11.3", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", - "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", - "dev": true + "dev": true, + "license": "MIT", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } }, - "acorn-globals": { + "node_modules/acorn-globals": { "version": "7.0.1", - "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-7.0.1.tgz", - "integrity": "sha512-umOSDSDrfHbTNPuNpC2NSnnA3LUrqpevPb4T9jRx4MagXNS0rs+gwiTcAvqCRmsD6utzsrzNt+ebm00SNWiC3Q==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "acorn": "^8.1.0", "acorn-walk": "^8.0.2" } }, - "acorn-import-assertions": { + "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 + "dev": true, + "license": "MIT", + "peerDependencies": { + "acorn": "^8" + } }, - "acorn-jsx": { + "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 + "dev": true, + "license": "MIT", + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } }, - "acorn-walk": { + "node_modules/acorn-walk": { "version": "8.3.2", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.2.tgz", - "integrity": "sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.4.0" + } }, - "adm-zip": { + "node_modules/adm-zip": { "version": "0.5.12", - "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.5.12.tgz", - "integrity": "sha512-6TVU49mK6KZb4qG6xWaaM4C7sA/sgUMLy/JYMOzkcp3BvVLpW0fXDFQiIzAuxFCt/2+xD7fNIiPFAoLZPhVNLQ==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.0" + } }, - "agent-base": { + "node_modules/agent-base": { "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" } }, - "ajv": { + "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, - "requires": { + "license": "MIT", + "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" } }, - "ajv-errors": { + "node_modules/ajv-errors": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz", "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==", - "dev": true + "dev": true, + "peerDependencies": { + "ajv": ">=5.0.0" + } }, - "ajv-formats": { + "node_modules/ajv-formats": { "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", - "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "ajv": "^8.0.0" }, - "dependencies": { + "peerDependencies": { + "ajv": "^8.0.0" + }, + "peerDependenciesMeta": { "ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - } - }, - "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 + "optional": true } } }, - "ajv-keywords": { + "node_modules/ajv-formats/node_modules/ajv": { + "version": "8.12.0", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ajv-formats/node_modules/json-schema-traverse": { + "version": "1.0.0", + "dev": true, + "license": "MIT" + }, + "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 + "dev": true, + "license": "MIT", + "peerDependencies": { + "ajv": "^6.9.1" + } }, - "ansi-colors": { + "node_modules/ansi-colors": { "version": "4.1.3", "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", - "dev": true + "dev": true, + "engines": { + "node": ">=6" + } }, - "ansi-escapes": { + "node_modules/ansi-escapes": { "version": "4.3.2", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", - "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "ansi-html-community": { + "node_modules/ansi-html-community": { "version": "0.0.8", - "resolved": "https://registry.npmjs.org/ansi-html-community/-/ansi-html-community-0.0.8.tgz", - "integrity": "sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==", - "dev": true + "dev": true, + "engines": [ + "node >= 0.8.0" + ], + "license": "Apache-2.0", + "bin": { + "ansi-html": "bin/ansi-html" + } }, - "ansi-regex": { + "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 + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } }, - "ansi-styles": { + "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, - "requires": { + "license": "MIT", + "dependencies": { "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" } }, - "anymatch": { + "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, - "requires": { + "license": "ISC", + "dependencies": { "normalize-path": "^3.0.0", "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" } }, - "are-docs-informative": { + "node_modules/are-docs-informative": { "version": "0.0.2", "resolved": "https://registry.npmjs.org/are-docs-informative/-/are-docs-informative-0.0.2.tgz", "integrity": "sha512-ixiS0nLNNG5jNQzgZJNoUpBKdo9yTYZMGJ+QgT2jmjR7G7+QHRCc4v6LQ3NgE7EBJq+o0ams3waJwkrlBom8Ig==", - "dev": true + "dev": true, + "engines": { + "node": ">=14" + } }, - "argparse": { + "node_modules/argparse": { "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "sprintf-js": "~1.0.2" } }, - "aria-query": { + "node_modules/aria-query": { "version": "4.2.2", - "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-4.2.2.tgz", - "integrity": "sha512-o/HelwhuKpTj/frsOsbNLNgnNGVIFsVP/SW2BSF14gVl7kAfMOJ6/8wUAUvG1R1NHKrfG+2sHZTu0yauT1qBrA==", "dev": true, - "requires": { + "license": "Apache-2.0", + "dependencies": { "@babel/runtime": "^7.10.2", "@babel/runtime-corejs3": "^7.10.2" + }, + "engines": { + "node": ">=6.0" } }, - "arr-union": { + "node_modules/arr-union": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", - "integrity": "sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } }, - "array-differ": { + "node_modules/array-differ": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-3.0.0.tgz", - "integrity": "sha512-THtfYS6KtME/yIAhKjZ2ul7XI96lQGHRputJQHO80LAWQnuGP4iCIN8vdMRboGbIEYBwU33q8Tch1os2+X0kMg==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } }, - "array-each": { + "node_modules/array-each": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/array-each/-/array-each-1.0.1.tgz", - "integrity": "sha512-zHjL5SZa68hkKHBFBK6DJCTtr9sfTCPCaph/L7tMSLcTFgy+zX7E+6q5UArbtOtMBCtxdICpfTCspRse+ywyXA==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } }, - "array-flatten": { + "node_modules/array-flatten": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==", - "dev": true + "dev": true, + "license": "MIT" }, - "array-includes": { + "node_modules/array-includes": { "version": "3.1.5", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.5.tgz", - "integrity": "sha512-iSDYZMMyTPkiFasVqfuAQnWAYcvO/SeBSCGKePoEthjp4LEMTe4uLc7b025o4jAZpHhihh8xPo99TNWUWWkGDQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.4", "es-abstract": "^1.19.5", "get-intrinsic": "^1.1.1", "is-string": "^1.0.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "array-slice": { + "node_modules/array-slice": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-1.1.0.tgz", - "integrity": "sha512-B1qMD3RBP7O8o0H2KbrXDyB0IccejMF15+87Lvlor12ONPRHP6gTjXMNkt/d3ZuOGbAe66hFmaCfECI24Ufp6w==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } }, - "array-union": { + "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 + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } }, - "array-uniq": { + "node_modules/array-uniq": { "version": "1.0.3", - "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", - "integrity": "sha512-MNha4BWQ6JbwhFhj03YK552f7cb3AzoE8SzeljgChvL1dl3IcvggXVz1DilzySZkCja+CXuZbdW7yATchWn8/Q==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } }, - "array-unique": { + "node_modules/array-unique": { "version": "0.3.2", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", - "integrity": "sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } }, - "array.prototype.flat": { + "node_modules/array.prototype.flat": { "version": "1.3.0", - "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.0.tgz", - "integrity": "sha512-12IUEkHsAhA4DY5s0FPgNXIdc8VRSqD9Zp78a5au9abH/SOBrsp082JOWFNTjkMozh8mqcdiKuaLGhPeYztxSw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", "es-abstract": "^1.19.2", "es-shim-unscopables": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "array.prototype.flatmap": { + "node_modules/array.prototype.flatmap": { "version": "1.3.0", - "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.0.tgz", - "integrity": "sha512-PZC9/8TKAIxcWKdyeb77EzULHPrIX/tIZebLJUQOMR1OwYosT8yggdfWScfTBCDj5utONvOuPQQumYsU2ULbkg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", "es-abstract": "^1.19.2", "es-shim-unscopables": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "arrify": { + "node_modules/arrify": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz", - "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } }, - "ast-types": { + "node_modules/ast-types": { "version": "0.13.4", "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.13.4.tgz", "integrity": "sha512-x1FCFnFifvYDDzTaLII71vG5uvDwgtmDTEVWAxrgeiR8VjMONcCXJx7E+USjDtHlwFmt9MysbqgF9b9Vjr6w+w==", "dev": true, - "requires": { + "dependencies": { "tslib": "^2.0.1" + }, + "engines": { + "node": ">=4" } }, - "ast-types-flow": { + "node_modules/ast-types-flow": { "version": "0.0.7", - "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.7.tgz", - "integrity": "sha512-eBvWn1lvIApYMhzQMsu9ciLfkBY499mFZlNqG+/9WR7PVlroQw0vG30cOQQbaKz3sCEc44TAOu2ykzqXSNnwag==", - "dev": true + "dev": true, + "license": "ISC" }, - "astral-regex": { + "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 + "dev": true, + "engines": { + "node": ">=8" + } }, - "async": { + "node_modules/async": { "version": "3.2.4", - "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz", - "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==", - "dev": true + "dev": true, + "license": "MIT" }, - "asynckit": { + "node_modules/asynckit": { "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", - "dev": true + "dev": true, + "license": "MIT" }, - "autoprefixer": { - "version": "10.4.19", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.19.tgz", - "integrity": "sha512-BaENR2+zBZ8xXhM4pUaKUxlVdxZ0EZhjvbopwnXmxRUfqDmwSpC2lAi/QXvx7NRdPCo1WKEcEF6mV64si1z4Ew==", + "node_modules/autoprefixer": { + "version": "10.4.20", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.20.tgz", + "integrity": "sha512-XY25y5xSv/wEoqzDyXXME4AFfkZI0P23z6Fs3YgymDnKJkCGOnkL0iTxCa85UTqaSgfcqyf3UA6+c7wUvx/16g==", "dev": true, - "requires": { - "browserslist": "^4.23.0", - "caniuse-lite": "^1.0.30001599", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/autoprefixer" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "browserslist": "^4.23.3", + "caniuse-lite": "^1.0.30001646", "fraction.js": "^4.3.7", "normalize-range": "^0.1.2", - "picocolors": "^1.0.0", + "picocolors": "^1.0.1", "postcss-value-parser": "^4.2.0" }, - "dependencies": { - "browserslist": { - "version": "4.23.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", - "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", - "dev": true, - "requires": { - "caniuse-lite": "^1.0.30001587", - "electron-to-chromium": "^1.4.668", - "node-releases": "^2.0.14", - "update-browserslist-db": "^1.0.13" - } - }, - "caniuse-lite": { - "version": "1.0.30001612", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001612.tgz", - "integrity": "sha512-lFgnZ07UhaCcsSZgWW0K5j4e69dK1u/ltrL9lTUiFOwNHs12S3UMIEYgBV0Z6C6hRDev7iRnMzzYmKabYdXF9g==", - "dev": true - }, - "electron-to-chromium": { - "version": "1.4.748", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.748.tgz", - "integrity": "sha512-VWqjOlPZn70UZ8FTKUOkUvBLeTQ0xpty66qV0yJcAGY2/CthI4xyW9aEozRVtuwv3Kpf5xTesmJUcPwuJmgP4A==", - "dev": true - }, - "node-releases": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", - "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", - "dev": true - }, - "update-browserslist-db": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", - "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", - "dev": true, - "requires": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" - } - } + "bin": { + "autoprefixer": "bin/autoprefixer" + }, + "engines": { + "node": "^10 || ^12 || >=14" + }, + "peerDependencies": { + "postcss": "^8.1.0" } }, - "axe-core": { - "version": "4.4.3", - "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.4.3.tgz", - "integrity": "sha512-32+ub6kkdhhWick/UjvEwRchgoetXqTK14INLqbGm5U2TzBkBNF3nQtLYm8ovxSkQWArjEQvftCKryjZaATu3w==", - "dev": true + "node_modules/axe-core": { + "version": "4.7.2", + "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.7.2.tgz", + "integrity": "sha512-zIURGIS1E1Q4pcrMjp+nnEh+16G56eG/MUllJH8yEvw7asDo7Ac9uhC9KIH5jzpITueEZolfYglnCGIuSBz39g==", + "dev": true, + "engines": { + "node": ">=4" + } }, - "axios": { + "node_modules/axios": { "version": "1.6.8", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.6.8.tgz", - "integrity": "sha512-v/ZHtJDU39mDpyBoFVkETcd/uNdxrWRrg3bKpOKzXFA6Bvqopts6ALSMU3y6ijYxbw2B+wPrIv46egTzJXCLGQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "follow-redirects": "^1.15.6", "form-data": "^4.0.0", "proxy-from-env": "^1.1.0" } }, - "axobject-query": { + "node_modules/axobject-query": { "version": "2.2.0", - "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-2.2.0.tgz", - "integrity": "sha512-Td525n+iPOOyUQIeBfcASuG6uJsDOITl7Mds5gFyerkWiX7qhUTdYUBlSgNMyVqtSJqwpt1kXGLdUt6SykLMRA==", - "dev": true + "dev": true, + "license": "Apache-2.0" }, - "b4a": { + "node_modules/b4a": { "version": "1.6.6", "resolved": "https://registry.npmjs.org/b4a/-/b4a-1.6.6.tgz", "integrity": "sha512-5Tk1HLk6b6ctmjIkAcU/Ujv/1WqiDl0F0JdRCR80VsOcUlHcu7pWeWRlOqQLHfDEsVx9YH/aif5AG4ehoCtTmg==", "dev": true }, - "babel-jest": { + "node_modules/babel-jest": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.7.0.tgz", "integrity": "sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg==", "dev": true, - "requires": { + "dependencies": { "@jest/transform": "^29.7.0", "@types/babel__core": "^7.1.14", "babel-plugin-istanbul": "^6.1.1", @@ -8500,250 +5812,355 @@ "graceful-fs": "^4.2.9", "slash": "^3.0.0" }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.8.0" + } + }, + "node_modules/babel-jest/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": { - "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, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "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, - "requires": { - "color-name": "~1.1.4" - } - }, - "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 - }, - "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 - }, - "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, - "requires": { - "has-flag": "^4.0.0" - } - } + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/babel-jest/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/babel-jest/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/babel-jest/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/babel-jest/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/babel-jest/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" } }, - "babel-loader": { + "node_modules/babel-loader": { "version": "8.3.0", - "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.3.0.tgz", - "integrity": "sha512-H8SvsMF+m9t15HNLMipppzkC+Y2Yq+v3SonZyU70RBL/h1gxPkH08Ot8pEE9Z4Kd+czyWJClmFS8qzIP9OZ04Q==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "find-cache-dir": "^3.3.1", "loader-utils": "^2.0.0", "make-dir": "^3.1.0", "schema-utils": "^2.6.5" }, - "dependencies": { - "schema-utils": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", - "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.5", - "ajv": "^6.12.4", - "ajv-keywords": "^3.5.2" - } - } + "engines": { + "node": ">= 8.9" + }, + "peerDependencies": { + "@babel/core": "^7.0.0", + "webpack": ">=2" } }, - "babel-plugin-dynamic-import-node": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", - "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==", + "node_modules/babel-loader/node_modules/schema-utils": { + "version": "2.7.1", "dev": true, - "requires": { - "object.assign": "^4.1.0" + "license": "MIT", + "dependencies": { + "@types/json-schema": "^7.0.5", + "ajv": "^6.12.4", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 8.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" } }, - "babel-plugin-istanbul": { + "node_modules/babel-plugin-istanbul": { "version": "6.1.1", "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", "dev": true, - "requires": { + "dependencies": { "@babel/helper-plugin-utils": "^7.0.0", "@istanbuljs/load-nyc-config": "^1.0.0", "@istanbuljs/schema": "^0.1.2", "istanbul-lib-instrument": "^5.0.4", "test-exclude": "^6.0.0" + }, + "engines": { + "node": ">=8" } }, - "babel-plugin-jest-hoist": { + "node_modules/babel-plugin-jest-hoist": { "version": "29.6.3", "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.6.3.tgz", "integrity": "sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg==", "dev": true, - "requires": { + "dependencies": { "@babel/template": "^7.3.3", "@babel/types": "^7.3.3", "@types/babel__core": "^7.1.14", "@types/babel__traverse": "^7.0.6" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "babel-plugin-polyfill-corejs2": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.3.tgz", - "integrity": "sha512-8hOdmFYFSZhqg2C/JgLUQ+t52o5nirNwaWM2B9LWteozwIvM14VSwdsCAUET10qT+kmySAlseadmfeeSWFCy+Q==", + "node_modules/babel-plugin-polyfill-corejs2": { + "version": "0.4.11", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.11.tgz", + "integrity": "sha512-sMEJ27L0gRHShOh5G54uAAPaiCOygY/5ratXuiyb2G46FmlSpc9eFCzYVyDiPxfNbwzA7mYahmjQc5q+CZQ09Q==", "dev": true, - "requires": { - "@babel/compat-data": "^7.17.7", - "@babel/helper-define-polyfill-provider": "^0.3.3", - "semver": "^6.1.1" + "dependencies": { + "@babel/compat-data": "^7.22.6", + "@babel/helper-define-polyfill-provider": "^0.6.2", + "semver": "^6.3.1" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" } }, - "babel-plugin-polyfill-corejs3": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.6.0.tgz", - "integrity": "sha512-+eHqR6OPcBhJOGgsIar7xoAB1GcSwVUA3XjAd7HJNzOXT4wv6/H7KIdA/Nc60cvUlDbKApmqNvD1B1bzOt4nyA==", + "node_modules/babel-plugin-polyfill-corejs2/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "dev": true, - "requires": { - "@babel/helper-define-polyfill-provider": "^0.3.3", - "core-js-compat": "^3.25.1" + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/babel-plugin-polyfill-corejs3": { + "version": "0.10.6", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.10.6.tgz", + "integrity": "sha512-b37+KR2i/khY5sKmWNVQAnitvquQbNdWy6lJdsr0kmquCKEEUgMKK4SboVM3HtfnZilfjr4MMQ7vY58FVWDtIA==", + "dev": true, + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.6.2", + "core-js-compat": "^3.38.0" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" } }, - "babel-plugin-polyfill-regenerator": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.4.1.tgz", - "integrity": "sha512-NtQGmyQDXjQqQ+IzRkBVwEOz9lQ4zxAQZgoAYEtU9dJjnl1Oc98qnN7jcp+bE7O7aYzVpavXE3/VKXNzUbh7aw==", + "node_modules/babel-plugin-polyfill-regenerator": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.6.2.tgz", + "integrity": "sha512-2R25rQZWP63nGwaAswvDazbPXfrM3HwVoBXK6HcqeKrSrL/JqcC/rDcf95l4r7LXLyxDXc8uQDa064GubtCABg==", "dev": true, - "requires": { - "@babel/helper-define-polyfill-provider": "^0.3.3" + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.6.2" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" } }, - "babel-preset-current-node-syntax": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz", - "integrity": "sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==", + "node_modules/babel-preset-current-node-syntax": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.1.0.tgz", + "integrity": "sha512-ldYss8SbBlWva1bs28q78Ju5Zq1F+8BrqBZZ0VFhLBvhh6lCpC2o3gDJi/5DRLs9FgYZCnmPYIVFU4lRXCkyUw==", "dev": true, - "requires": { + "dependencies": { "@babel/plugin-syntax-async-generators": "^7.8.4", "@babel/plugin-syntax-bigint": "^7.8.3", - "@babel/plugin-syntax-class-properties": "^7.8.3", - "@babel/plugin-syntax-import-meta": "^7.8.3", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-import-attributes": "^7.24.7", + "@babel/plugin-syntax-import-meta": "^7.10.4", "@babel/plugin-syntax-json-strings": "^7.8.3", - "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", "@babel/plugin-syntax-object-rest-spread": "^7.8.3", "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", "@babel/plugin-syntax-optional-chaining": "^7.8.3", - "@babel/plugin-syntax-top-level-await": "^7.8.3" + "@babel/plugin-syntax-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "babel-preset-jest": { + "node_modules/babel-preset-jest": { "version": "29.6.3", "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.6.3.tgz", "integrity": "sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA==", "dev": true, - "requires": { + "dependencies": { "babel-plugin-jest-hoist": "^29.6.3", "babel-preset-current-node-syntax": "^1.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "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/babel-runtime": { + "version": "6.25.0", + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.25.0.tgz", + "integrity": "sha512-zeCYxDePWYAT/DfmQWIHsMSFW2vv45UIwIAMjGvQVsTd47RwsiRH0uK1yzyWZ7LDBKdhnGDPM6NYEO5CZyhPrg==", + "dev": true, + "dependencies": { + "core-js": "^2.4.0", + "regenerator-runtime": "^0.10.0" + } + }, + "node_modules/babel-runtime/node_modules/core-js": { + "version": "2.6.12", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.12.tgz", + "integrity": "sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==", + "deprecated": "core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js.", + "dev": true, + "hasInstallScript": true + }, + "node_modules/babel-runtime/node_modules/regenerator-runtime": { + "version": "0.10.5", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz", + "integrity": "sha512-02YopEIhAgiBHWeoTiA8aitHDt8z6w+rQqNuIftlM+ZtvSl/brTouaU7DW6GO/cHtvxJvS4Hwv2ibKdxIRi24w==", "dev": true }, - "bare-events": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/bare-events/-/bare-events-2.2.2.tgz", - "integrity": "sha512-h7z00dWdG0PYOQEvChhOSWvOfkIKsdZGkWr083FgN/HyoQuebSew/cgirYqh9SCuy/hRvxc5Vy6Fw8xAmYHLkQ==", + "node_modules/balanced-match": { + "version": "1.0.2", + "dev": true, + "license": "MIT" + }, + "node_modules/bare-events": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/bare-events/-/bare-events-2.4.2.tgz", + "integrity": "sha512-qMKFd2qG/36aA4GwvKq8MxnPgCQAmBWmSyLWsJcbn8v03wvIPQ/hG1Ms8bPzndZxMDoHpxez5VOS+gC9Yi24/Q==", "dev": true, "optional": true }, - "base64-js": { + "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 + "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" + } + ], + "license": "MIT" }, - "basic-ftp": { + "node_modules/basic-ftp": { "version": "5.0.5", "resolved": "https://registry.npmjs.org/basic-ftp/-/basic-ftp-5.0.5.tgz", "integrity": "sha512-4Bcg1P8xhUuqcii/S0Z9wiHIrQVPMermM1any+MX5GeGD7faD3/msQUDGLol9wOcz4/jbg/WJnGqoJF6LiBdtg==", - "dev": true + "dev": true, + "engines": { + "node": ">=10.0.0" + } }, - "batch": { + "node_modules/batch": { "version": "0.6.1", - "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", - "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==", - "dev": true + "dev": true, + "license": "MIT" }, - "big.js": { + "node_modules/big.js": { "version": "5.2.2", - "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", - "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": "*" + } }, - "binary-extensions": { + "node_modules/binary-extensions": { "version": "2.3.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", - "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "bl": { + "node_modules/bl": { "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", - "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "buffer": "^5.5.0", "inherits": "^2.0.4", "readable-stream": "^3.4.0" - }, + } + }, + "node_modules/bl/node_modules/readable-stream": { + "version": "3.6.2", + "dev": true, + "license": "MIT", "dependencies": { - "readable-stream": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", - "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - } + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" } }, - "body-parser": { + "node_modules/body-parser": { "version": "1.20.2", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.2.tgz", - "integrity": "sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "bytes": "3.1.2", "content-type": "~1.0.5", "debug": "2.6.9", @@ -8757,167 +6174,176 @@ "type-is": "~1.6.18", "unpipe": "1.0.0" }, + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/body-parser/node_modules/bytes": { + "version": "3.1.2", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/body-parser/node_modules/debug": { + "version": "2.6.9", + "dev": true, + "license": "MIT", "dependencies": { - "bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", - "dev": true - }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - } + "ms": "2.0.0" } }, - "bonjour-service": { + "node_modules/body-parser/node_modules/ms": { + "version": "2.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/bonjour-service": { "version": "1.2.1", - "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.2.1.tgz", - "integrity": "sha512-oSzCS2zV14bh2kji6vNe7vrpJYCHGvcZnlffFQ1MEoX/WOeQ/teD8SYWKR942OI3INjq8OMNJlbPK5LLLUxFDw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "fast-deep-equal": "^3.1.3", "multicast-dns": "^7.2.5" } }, - "boolbase": { + "node_modules/boolbase": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", - "dev": true + "dev": true, + "license": "ISC" }, - "brace-expansion": { + "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, - "requires": { + "license": "MIT", + "dependencies": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" } }, - "braces": { + "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, - "requires": { + "license": "MIT", + "dependencies": { "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" } }, - "browserslist": { - "version": "4.21.4", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.4.tgz", - "integrity": "sha512-CBHJJdDmgjl3daYjN5Cp5kbTf1mUhZoS+beLklHIvkOWscs83YAhLlF3Wsh/lciQYAcbBJgTOD44VtG31ZM4Hw==", + "node_modules/browserslist": { + "version": "4.23.3", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.3.tgz", + "integrity": "sha512-btwCFJVjI4YWDNfau8RhZ+B1Q/VLoUITrm3RlP6y1tYGWIOa+InuYiRGXUBXo8nA1qKmHMyLB/iVQg5TT4eFoA==", "dev": true, - "requires": { - "caniuse-lite": "^1.0.30001400", - "electron-to-chromium": "^1.4.251", - "node-releases": "^2.0.6", - "update-browserslist-db": "^1.0.9" + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "caniuse-lite": "^1.0.30001646", + "electron-to-chromium": "^1.5.4", + "node-releases": "^2.0.18", + "update-browserslist-db": "^1.1.0" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" } }, - "bser": { + "node_modules/bser": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", "dev": true, - "requires": { + "dependencies": { "node-int64": "^0.4.0" } }, - "buffer": { + "node_modules/buffer": { "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", "dev": true, - "requires": { + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "dependencies": { "base64-js": "^1.3.1", "ieee754": "^1.1.13" } }, - "buffer-crc32": { + "node_modules/buffer-crc32": { "version": "0.2.13", - "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", - "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": "*" + } }, - "buffer-from": { + "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 + "dev": true, + "license": "MIT" }, - "builtin-modules": { + "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 - }, - "builtins": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/builtins/-/builtins-5.1.0.tgz", - "integrity": "sha512-SW9lzGTLvWTP1AY8xeAMZimqDrIaSdLQUcVr9DMef51niJ022Ri87SwRRKYm4A6iHfkPaiVUu/Duw2Wc4J7kKg==", "dev": true, - "requires": { - "semver": "^7.0.0" + "engines": { + "node": ">=6" }, - "dependencies": { - "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, - "requires": { - "yallist": "^4.0.0" - } - }, - "semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - } + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "bytes": { + "node_modules/bytes": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", - "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8" + } }, - "cacheable-lookup": { + "node_modules/cacheable-lookup": { "version": "5.0.4", - "resolved": "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-5.0.4.tgz", - "integrity": "sha512-2/kNscPhpcxrOigMZzbiWF7dz8ilhb/nIHU3EyZiXWXpeq/au8qJ8VhdftMkty3n7Gj6HIGalQG8oiBNB3AJgA==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10.6.0" + } }, - "cacheable-request": { + "node_modules/cacheable-request": { "version": "7.0.2", - "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-7.0.2.tgz", - "integrity": "sha512-pouW8/FmiPQbuGpkXQ9BAPv/Mo5xDGANgSNXzTzJ8DrKGuXOssM4wIQRjfanNRh3Yu5cfYPvcorqbhg2KIJtew==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "clone-response": "^1.0.2", "get-stream": "^5.1.0", "http-cache-semantics": "^4.0.0", @@ -8925,111 +6351,148 @@ "lowercase-keys": "^2.0.0", "normalize-url": "^6.0.1", "responselike": "^2.0.0" + }, + "engines": { + "node": ">=8" } }, - "call-bind": { + "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==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "function-bind": "^1.1.1", "get-intrinsic": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "callsites": { + "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 + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } }, - "camel-case": { + "node_modules/camel-case": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-4.1.2.tgz", "integrity": "sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==", "dev": true, - "requires": { + "dependencies": { "pascal-case": "^3.1.2", "tslib": "^2.0.3" } }, - "camelcase": { + "node_modules/camelcase": { "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "camelcase-keys": { + "node_modules/camelcase-keys": { "version": "6.2.2", "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-6.2.2.tgz", "integrity": "sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==", "dev": true, - "requires": { + "dependencies": { "camelcase": "^5.3.1", "map-obj": "^4.0.0", "quick-lru": "^4.0.1" }, - "dependencies": { - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "quick-lru": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz", - "integrity": "sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==", - "dev": true - } + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/camelcase-keys/node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase-keys/node_modules/quick-lru": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz", + "integrity": "sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==", + "dev": true, + "engines": { + "node": ">=8" } }, - "caniuse-api": { + "node_modules/caniuse-api": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/caniuse-api/-/caniuse-api-3.0.0.tgz", - "integrity": "sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "browserslist": "^4.0.0", "caniuse-lite": "^1.0.0", "lodash.memoize": "^4.1.2", "lodash.uniq": "^4.5.0" } }, - "caniuse-lite": { - "version": "1.0.30001418", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001418.tgz", - "integrity": "sha512-oIs7+JL3K9JRQ3jPZjlH6qyYDp+nBTCais7hjh0s+fuBwufc7uZ7hPYMXrDOJhV360KGMTcczMRObk0/iMqZRg==", - "dev": true + "node_modules/caniuse-lite": { + "version": "1.0.30001651", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001651.tgz", + "integrity": "sha512-9Cf+Xv1jJNe1xPZLGuUXLNkE1BoDkqRqYyFJ9TDYSqhduqA4hu4oR9HluGoWYQC/aj8WHjsGVV+bwkh0+tegRg==", + "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" + } + ] }, - "capital-case": { + "node_modules/capital-case": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/capital-case/-/capital-case-1.0.4.tgz", "integrity": "sha512-ds37W8CytHgwnhGGTi88pcPyR15qoNkOpYwmMMfnWqqWgESapLqvDx6huFjQ5vqWSn2Z06173XNA7LtMOeUh1A==", "dev": true, - "requires": { + "dependencies": { "no-case": "^3.0.4", "tslib": "^2.0.3", "upper-case-first": "^2.0.2" } }, - "chalk": { + "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, - "requires": { + "license": "MIT", + "dependencies": { "ansi-styles": "^3.2.1", "escape-string-regexp": "^1.0.5", "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" } }, - "change-case": { + "node_modules/change-case": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/change-case/-/change-case-4.1.2.tgz", "integrity": "sha512-bSxY2ws9OtviILG1EiY5K7NNxkqg/JnRnFxLtKQ96JaviiIxi7djMrSd0ECT9AC+lttClmYwKw53BWpOMblo7A==", "dev": true, - "requires": { + "dependencies": { "camel-case": "^4.1.2", "capital-case": "^1.0.4", "constant-case": "^3.0.4", @@ -9044,24 +6507,25 @@ "tslib": "^2.0.3" } }, - "char-regex": { + "node_modules/char-regex": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", - "dev": true + "dev": true, + "engines": { + "node": ">=10" + } }, - "chardet": { + "node_modules/chardet": { "version": "0.7.0", - "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", - "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", - "dev": true + "dev": true, + "license": "MIT" }, - "check-node-version": { + "node_modules/check-node-version": { "version": "4.2.1", - "resolved": "https://registry.npmjs.org/check-node-version/-/check-node-version-4.2.1.tgz", - "integrity": "sha512-YYmFYHV/X7kSJhuN/QYHUu998n/TRuDe8UenM3+m5NrkiH670lb9ILqHIvBencvJc4SDh+XcbXMR4b+TtubJiw==", "dev": true, - "requires": { + "license": "Unlicense", + "dependencies": { "chalk": "^3.0.0", "map-values": "^1.0.1", "minimist": "^1.2.0", @@ -9069,312 +6533,375 @@ "run-parallel": "^1.1.4", "semver": "^6.3.0" }, + "bin": { + "check-node-version": "bin.js" + }, + "engines": { + "node": ">=8.3.0" + } + }, + "node_modules/check-node-version/node_modules/ansi-styles": { + "version": "4.3.0", + "dev": true, + "license": "MIT", "dependencies": { - "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, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "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, - "requires": { - "color-name": "~1.1.4" - } - }, - "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 - }, - "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 - }, - "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, - "requires": { - "has-flag": "^4.0.0" - } - } + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/check-node-version/node_modules/chalk": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/check-node-version/node_modules/color-convert": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/check-node-version/node_modules/color-name": { + "version": "1.1.4", + "dev": true, + "license": "MIT" + }, + "node_modules/check-node-version/node_modules/has-flag": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" } }, - "chokidar": { + "node_modules/check-node-version/node_modules/supports-color": { + "version": "7.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/chokidar": { "version": "3.6.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", - "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "anymatch": "~3.1.2", "braces": "~3.0.2", - "fsevents": "~2.3.2", "glob-parent": "~5.1.2", "is-binary-path": "~2.1.0", "is-glob": "~4.0.1", "normalize-path": "~3.0.0", "readdirp": "~3.6.0" }, + "engines": { + "node": ">= 8.10.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/chokidar/node_modules/glob-parent": { + "version": "5.1.2", + "dev": true, + "license": "ISC", "dependencies": { - "glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "requires": { - "is-glob": "^4.0.1" - } - } + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" } }, - "chownr": { + "node_modules/chownr": { "version": "1.1.4", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", - "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", - "dev": true + "dev": true, + "license": "ISC" }, - "chrome-launcher": { + "node_modules/chrome-launcher": { "version": "0.15.2", "resolved": "https://registry.npmjs.org/chrome-launcher/-/chrome-launcher-0.15.2.tgz", "integrity": "sha512-zdLEwNo3aUVzIhKhTtXfxhdvZhUghrnmkvcAq2NoDd+LeOHKf03H5jwZ8T/STsAlzyALkBVK552iaG1fGf1xVQ==", "dev": true, - "requires": { + "dependencies": { "@types/node": "*", "escape-string-regexp": "^4.0.0", "is-wsl": "^2.2.0", "lighthouse-logger": "^1.0.0" }, - "dependencies": { - "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 - } + "bin": { + "print-chrome-path": "bin/print-chrome-path.js" + }, + "engines": { + "node": ">=12.13.0" } }, - "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 + "node_modules/chrome-launcher/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/sindresorhus" + } }, - "chromium-bidi": { - "version": "0.4.16", - "resolved": "https://registry.npmjs.org/chromium-bidi/-/chromium-bidi-0.4.16.tgz", - "integrity": "sha512-7ZbXdWERxRxSwo3txsBjjmc/NLxqb1Bk30mRb0BMS4YIaiV6zvKZqL/UAH+DdqcDYayDWk2n/y8klkBDODrPvA==", + "node_modules/chrome-trace-event": { + "version": "1.0.3", "dev": true, - "requires": { - "mitt": "3.0.0" + "license": "MIT", + "engines": { + "node": ">=6.0" } }, - "ci-info": { + "node_modules/ci-info": { "version": "3.9.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", - "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", - "dev": true + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], + "license": "MIT", + "engines": { + "node": ">=8" + } }, - "cjs-module-lexer": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.3.tgz", - "integrity": "sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ==", + "node_modules/cjs-module-lexer": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.3.1.tgz", + "integrity": "sha512-a3KdPAANPbNE4ZUv9h6LckSl9zLsYOP4MBmhIPkRaeyybt+r4UghLvq+xw/YwUcC1gqylCkL4rdVs3Lwupjm4Q==", "dev": true }, - "clean-webpack-plugin": { + "node_modules/clean-webpack-plugin": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/clean-webpack-plugin/-/clean-webpack-plugin-3.0.0.tgz", - "integrity": "sha512-MciirUH5r+cYLGCOL5JX/ZLzOZbVr1ot3Fw+KcvbhUb6PM+yycqd9ZhIlcigQ5gl+XhppNmw3bEFuaaMNyLj3A==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@types/webpack": "^4.4.31", "del": "^4.1.1" + }, + "engines": { + "node": ">=8.9.0" + }, + "peerDependencies": { + "webpack": "*" } }, - "cli-cursor": { + "node_modules/cli-cursor": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", - "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "restore-cursor": "^3.1.0" + }, + "engines": { + "node": ">=8" } }, - "cli-spinners": { + "node_modules/cli-spinners": { "version": "2.7.0", - "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.7.0.tgz", - "integrity": "sha512-qu3pN8Y3qHNgE2AFweciB1IfMnmZ/fsNTEE+NOFjmGB2F/7rLhnhzppvpCnN4FovtP26k8lHyy9ptEbNwWFLzw==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "cli-width": { + "node_modules/cli-width": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", - "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", - "dev": true + "dev": true, + "license": "ISC", + "engines": { + "node": ">= 10" + } }, - "cliui": { + "node_modules/cliui": { "version": "8.0.1", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", - "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", "dev": true, - "requires": { + "license": "ISC", + "dependencies": { "string-width": "^4.2.0", "strip-ansi": "^6.0.1", "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" } }, - "clone": { + "node_modules/clone": { "version": "1.0.4", - "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", - "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8" + } }, - "clone-deep": { + "node_modules/clone-deep": { "version": "0.2.4", - "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-0.2.4.tgz", - "integrity": "sha512-we+NuQo2DHhSl+DP6jlUiAhyAjBQrYnpOk15rN6c6JSPScjiCLh8IbSU+VTcph6YS3o7mASE8a0+gbZ7ChLpgg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "for-own": "^0.1.3", "is-plain-object": "^2.0.1", "kind-of": "^3.0.2", "lazy-cache": "^1.0.3", "shallow-clone": "^0.1.2" }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/clone-deep/node_modules/is-plain-object": { + "version": "2.0.4", + "dev": true, + "license": "MIT", "dependencies": { - "is-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", - "dev": true, - "requires": { - "isobject": "^3.0.1" - } - } + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" } }, - "clone-response": { + "node_modules/clone-response": { "version": "1.0.3", - "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.3.tgz", - "integrity": "sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "mimic-response": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "co": { + "node_modules/co": { "version": "4.6.0", "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", - "dev": true + "dev": true, + "engines": { + "iojs": ">= 1.0.0", + "node": ">= 0.12.0" + } }, - "collect-v8-coverage": { + "node_modules/collect-v8-coverage": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz", "integrity": "sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==", "dev": true }, - "color-convert": { + "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, - "requires": { + "license": "MIT", + "dependencies": { "color-name": "1.1.3" } }, - "color-name": { + "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 + "dev": true, + "license": "MIT" }, - "colord": { + "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 + "dev": true, + "license": "MIT" }, - "colorette": { + "node_modules/colorette": { "version": "2.0.20", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", - "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", - "dev": true + "dev": true, + "license": "MIT" }, - "colors": { + "node_modules/colors": { "version": "1.1.2", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.1.2.tgz", - "integrity": "sha512-ENwblkFQpqqia6b++zLD/KUWafYlVY/UNnAp7oz7LY7E924wmpye416wBOmvv/HMWzl8gL1kJlfvId/1Dg176w==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.1.90" + } }, - "combined-stream": { + "node_modules/combined-stream": { "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" } }, - "commander": { + "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 + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10" + } }, - "comment-parser": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.3.0.tgz", - "integrity": "sha512-hRpmWIKgzd81vn0ydoWoyPoALEOnF4wt8yKD35Ib1D6XC2siLiYaiqfGkYrunuKdsXGwpBpHU3+9r+RVw2NZfA==", - "dev": true + "node_modules/comment-parser": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.4.1.tgz", + "integrity": "sha512-buhp5kePrmda3vhc5B9t7pUQXAb2Tnd0qgpkIhPhkHXxJpiPJ11H0ZEU0oBpJ2QztSbzG/ZxMj/CHsYJqRHmyg==", + "dev": true, + "engines": { + "node": ">= 12.0.0" + } }, - "common-path-prefix": { + "node_modules/common-path-prefix": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/common-path-prefix/-/common-path-prefix-3.0.0.tgz", - "integrity": "sha512-QE33hToZseCH3jS0qN96O/bSh3kaw/h+Tq7ngyY9eWDUnTlTNUyqfqvCXioLe5Na5jFsL78ra/wuBU4iuEgd4w==", - "dev": true + "dev": true, + "license": "ISC" }, - "commondir": { + "node_modules/commondir": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==", - "dev": true + "dev": true, + "license": "MIT" }, - "compressible": { + "node_modules/compressible": { "version": "2.0.18", - "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", - "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "mime-db": ">= 1.43.0 < 2" + }, + "engines": { + "node": ">= 0.6" } }, - "compression": { + "node_modules/compression": { "version": "1.7.4", - "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", - "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "accepts": "~1.3.5", "bytes": "3.0.0", "compressible": "~2.0.16", @@ -9383,129 +6910,158 @@ "safe-buffer": "5.1.2", "vary": "~1.1.2" }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/compression/node_modules/debug": { + "version": "2.6.9", + "dev": true, + "license": "MIT", "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - } + "ms": "2.0.0" } }, - "concat-map": { + "node_modules/compression/node_modules/ms": { + "version": "2.0.0", + "dev": true, + "license": "MIT" + }, + "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 + "dev": true, + "license": "MIT" }, - "concat-stream": { + "node_modules/concat-stream": { "version": "1.6.2", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", - "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", "dev": true, - "requires": { + "engines": [ + "node >= 0.8" + ], + "license": "MIT", + "dependencies": { "buffer-from": "^1.0.0", "inherits": "^2.0.3", "readable-stream": "^2.2.2", "typedarray": "^0.0.6" } }, - "configstore": { + "node_modules/configstore": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz", "integrity": "sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==", "dev": true, - "requires": { + "dependencies": { "dot-prop": "^5.2.0", "graceful-fs": "^4.1.2", "make-dir": "^3.0.0", "unique-string": "^2.0.0", "write-file-atomic": "^3.0.0", "xdg-basedir": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/configstore/node_modules/write-file-atomic": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", + "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", + "dev": true, + "dependencies": { + "imurmurhash": "^0.1.4", + "is-typedarray": "^1.0.0", + "signal-exit": "^3.0.2", + "typedarray-to-buffer": "^3.1.5" } }, - "connect-history-api-fallback": { + "node_modules/connect-history-api-fallback": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz", - "integrity": "sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8" + } }, - "constant-case": { + "node_modules/constant-case": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/constant-case/-/constant-case-3.0.4.tgz", "integrity": "sha512-I2hSBi7Vvs7BEuJDr5dDHfzb/Ruj3FyvFyh7KLilAjNQw3Be+xgqUBA2W6scVEcL0hL1dwPRtIqEPVUCKkSsyQ==", "dev": true, - "requires": { + "dependencies": { "no-case": "^3.0.4", "tslib": "^2.0.3", "upper-case": "^2.0.2" } }, - "content-disposition": { + "node_modules/content-disposition": { "version": "0.5.4", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", - "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "safe-buffer": "5.2.1" }, - "dependencies": { - "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 - } + "engines": { + "node": ">= 0.6" } }, - "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 + "node_modules/content-disposition/node_modules/safe-buffer": { + "version": "5.2.1", + "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" + } + ], + "license": "MIT" }, - "convert-source-map": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", - "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==", + "node_modules/content-type": { + "version": "1.0.5", "dev": true, - "requires": { - "safe-buffer": "~5.1.1" + "license": "MIT", + "engines": { + "node": ">= 0.6" } }, - "cookie": { + "node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true + }, + "node_modules/cookie": { "version": "0.4.2", "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==", - "dev": true + "dev": true, + "engines": { + "node": ">= 0.6" + } }, - "cookie-signature": { + "node_modules/cookie-signature": { "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==", - "dev": true + "dev": true, + "license": "MIT" }, - "copy-dir": { + "node_modules/copy-dir": { "version": "1.3.0", - "resolved": "https://registry.npmjs.org/copy-dir/-/copy-dir-1.3.0.tgz", - "integrity": "sha512-Q4+qBFnN4bwGwvtXXzbp4P/4iNk0MaiGAzvQ8OiMtlLjkIKjmNN689uVzShSM0908q7GoFHXIPx4zi75ocoaHw==", - "dev": true + "dev": true, + "license": "MIT" }, - "copy-webpack-plugin": { + "node_modules/copy-webpack-plugin": { "version": "10.2.4", - "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-10.2.4.tgz", - "integrity": "sha512-xFVltahqlsRcyyJqQbDY6EYTtyQZF9rf+JPjwHObLdPFMEISqkFkr7mFoVOC6BfYS/dNThyoQKvziugm+OnwBg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "fast-glob": "^3.2.7", "glob-parent": "^6.0.1", "globby": "^12.0.2", @@ -9513,120 +7069,168 @@ "schema-utils": "^4.0.0", "serialize-javascript": "^6.0.0" }, + "engines": { + "node": ">= 12.20.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.1.0" + } + }, + "node_modules/copy-webpack-plugin/node_modules/ajv": { + "version": "8.12.0", + "dev": true, + "license": "MIT", "dependencies": { - "ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - } - }, - "ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.3" - } - }, - "array-union": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-3.0.1.tgz", - "integrity": "sha512-1OvF9IbWwaeiM9VhzYXVQacMibxpXOMYVNIvMtKRyX9SImBXpKcFr8XvFDeEslCyuH/t6KRt7HEO94AlP8Iatw==", - "dev": true - }, - "globby": { - "version": "12.2.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-12.2.0.tgz", - "integrity": "sha512-wiSuFQLZ+urS9x2gGPl1H5drc5twabmm4m2gTR27XDFyjUHJUNsS8o/2aKyIF6IoBaR630atdher0XJ5g6OMmA==", - "dev": true, - "requires": { - "array-union": "^3.0.1", - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.7", - "ignore": "^5.1.9", - "merge2": "^1.4.1", - "slash": "^4.0.0" - } - }, - "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 - }, - "schema-utils": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.2.0.tgz", - "integrity": "sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.9.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.1.0" - } - }, - "slash": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", - "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", - "dev": true - } + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, - "core-js": { - "version": "3.25.5", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.25.5.tgz", - "integrity": "sha512-nbm6eZSjm+ZuBQxCUPQKQCoUEfFOXjUZ8dTTyikyKaWrTYmAVbykQfwsKE5dBK88u3QCkCrzsx/PPlKfhsvgpw==", - "dev": true + "node_modules/copy-webpack-plugin/node_modules/ajv-keywords": { + "version": "5.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" + } }, - "core-js-compat": { - "version": "3.25.5", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.25.5.tgz", - "integrity": "sha512-ovcyhs2DEBUIE0MGEKHP4olCUW/XYte3Vroyxuh38rD1wAO4dHohsovUC4eAOuzFxE6b+RXvBU3UZ9o0YhUTkA==", + "node_modules/copy-webpack-plugin/node_modules/array-union": { + "version": "3.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/copy-webpack-plugin/node_modules/globby": { + "version": "12.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "array-union": "^3.0.1", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.7", + "ignore": "^5.1.9", + "merge2": "^1.4.1", + "slash": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/copy-webpack-plugin/node_modules/json-schema-traverse": { + "version": "1.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/copy-webpack-plugin/node_modules/schema-utils": { + "version": "4.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.9.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.1.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/copy-webpack-plugin/node_modules/slash": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/core-js": { + "version": "3.38.1", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.38.1.tgz", + "integrity": "sha512-OP35aUorbU3Zvlx7pjsFdu1rGNnD4pgw/CWoYzRY3t2EzoVT7shKHY1dlAy3f41cGIO7ZDPQimhGFTlEYkG/Hw==", "dev": true, - "requires": { - "browserslist": "^4.21.4" + "hasInstallScript": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" } }, - "core-js-pure": { + "node_modules/core-js-compat": { + "version": "3.38.1", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.38.1.tgz", + "integrity": "sha512-JRH6gfXxGmrzF3tZ57lFx97YARxCXPaMzPo6jELZhv88pBH5VXpQ+y0znKGlFnzuaihqhLbefxSJxWJMPtfDzw==", + "dev": true, + "dependencies": { + "browserslist": "^4.23.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/core-js-pure": { "version": "3.25.5", - "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.25.5.tgz", - "integrity": "sha512-oml3M22pHM+igfWHDfdLVq2ShWmjM2V4L+dQEBs0DWVIqEm9WHCwGAlZ6BmyBQGy5sFrJmcx+856D9lVKyGWYg==", - "dev": true + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } }, - "core-util-is": { + "node_modules/core-util-is": { "version": "1.0.3", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", - "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", - "dev": true + "dev": true, + "license": "MIT" }, - "cosmiconfig": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.1.tgz", - "integrity": "sha512-a1YWNUV2HwGimB7dU2s1wUMurNKjpx60HxBB6xUM8Re+2s1g1IIfJvFR0/iCF+XHdE0GMTKTuLR32UQff4TEyQ==", + "node_modules/cosmiconfig": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", + "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", "dev": true, - "requires": { + "dependencies": { "@types/parse-json": "^4.0.0", "import-fresh": "^3.2.1", "parse-json": "^5.0.0", "path-type": "^4.0.0", "yaml": "^1.10.0" + }, + "engines": { + "node": ">=10" } }, - "create-jest": { + "node_modules/create-jest": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/create-jest/-/create-jest-29.7.0.tgz", "integrity": "sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q==", "dev": true, - "requires": { + "dependencies": { "@jest/types": "^29.6.3", "chalk": "^4.0.0", "exit": "^0.1.2", @@ -9635,126 +7239,156 @@ "jest-util": "^29.7.0", "prompts": "^2.0.1" }, + "bin": { + "create-jest": "bin/create-jest.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/create-jest/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": { - "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, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "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, - "requires": { - "color-name": "~1.1.4" - } - }, - "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 - }, - "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 - }, - "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, - "requires": { - "has-flag": "^4.0.0" - } - } + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/create-jest/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/create-jest/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/create-jest/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/create-jest/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/create-jest/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" } }, - "cross-fetch": { + "node_modules/cross-fetch": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-4.0.0.tgz", "integrity": "sha512-e4a5N8lVvuLgAWgnCrLr2PP0YyDOTHa9H/Rj54dirp61qXnNq46m82bRhNqIA5VccJtWBvPTFRV3TtvHUKPB1g==", "dev": true, - "requires": { + "dependencies": { "node-fetch": "^2.6.12" } }, - "cross-spawn": { + "node_modules/cross-spawn": { "version": "5.1.0", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", - "integrity": "sha512-pTgQJ5KC0d2hcY8eyL1IzlBPYjTkyH72XRZPnLyKus2mBfNjQs3klqbJU2VILqZryAZUt9JOb3h/mWMy23/f5A==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "lru-cache": "^4.0.1", "shebang-command": "^1.2.0", "which": "^1.2.9" - }, + } + }, + "node_modules/cross-spawn/node_modules/lru-cache": { + "version": "4.1.5", + "dev": true, + "license": "ISC", "dependencies": { - "lru-cache": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", - "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", - "dev": true, - "requires": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" - } - }, - "yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==", - "dev": true - } + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" } }, - "crypto-random-string": { + "node_modules/cross-spawn/node_modules/yallist": { + "version": "2.1.2", + "dev": true, + "license": "ISC" + }, + "node_modules/crypto-random-string": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz", "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==", - "dev": true + "dev": true, + "engines": { + "node": ">=8" + } }, - "csp_evaluator": { + "node_modules/csp_evaluator": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/csp_evaluator/-/csp_evaluator-1.1.1.tgz", "integrity": "sha512-N3ASg0C4kNPUaNxt1XAvzHIVuzdtr8KLgfk1O8WDyimp1GisPAHESupArO2ieHk9QWbrJ/WkQODyh21Ps/xhxw==", "dev": true }, - "css-declaration-sorter": { + "node_modules/css-declaration-sorter": { "version": "7.2.0", - "resolved": "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-7.2.0.tgz", - "integrity": "sha512-h70rUM+3PNFuaBDTLe8wF/cdWu+dOZmb7pJt8Z2sedYbAcQVQV/tEchueg3GWxwqS0cxtbxmaHEdkNACqcvsow==", - "dev": true + "dev": true, + "license": "ISC", + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.0.9" + } }, - "css-functions-list": { + "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 + "dev": true, + "engines": { + "node": ">=12 || >=16" + } }, - "css-loader": { + "node_modules/css-loader": { "version": "6.11.0", - "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.11.0.tgz", - "integrity": "sha512-CTJ+AEQJjq5NzLga5pE39qdiSV56F8ywCIsqNIRF0r7BDgWsN25aazToqAFg7ZrtA/U016xudB3ffgweORxX7g==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "icss-utils": "^5.1.0", "postcss": "^8.4.33", "postcss-modules-extract-imports": "^3.1.0", @@ -9764,84 +7398,129 @@ "postcss-value-parser": "^4.2.0", "semver": "^7.5.4" }, - "dependencies": { - "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, - "requires": { - "yallist": "^4.0.0" - } - }, - "semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "@rspack/core": "0.x || 1.x", + "webpack": "^5.0.0" + }, + "peerDependenciesMeta": { + "@rspack/core": { + "optional": true }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true + "webpack": { + "optional": true } } }, - "css-select": { + "node_modules/css-loader/node_modules/lru-cache": { + "version": "6.0.0", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/css-loader/node_modules/semver": { + "version": "7.6.0", + "dev": true, + "license": "ISC", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/css-loader/node_modules/yallist": { + "version": "4.0.0", + "dev": true, + "license": "ISC" + }, + "node_modules/css-select": { "version": "5.1.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz", - "integrity": "sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==", "dev": true, - "requires": { + "license": "BSD-2-Clause", + "dependencies": { "boolbase": "^1.0.0", "css-what": "^6.1.0", "domhandler": "^5.0.2", "domutils": "^3.0.1", "nth-check": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" } }, - "css-tree": { + "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, - "requires": { + "license": "MIT", + "dependencies": { "mdn-data": "2.0.30", "source-map-js": "^1.0.1" + }, + "engines": { + "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0" } }, - "css-what": { + "node_modules/css-what": { "version": "6.1.0", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", - "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", - "dev": true + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } }, - "cssesc": { + "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 + "dev": true, + "license": "MIT", + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } }, - "cssnano": { + "node_modules/cssnano": { "version": "6.1.2", - "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-6.1.2.tgz", - "integrity": "sha512-rYk5UeX7VAM/u0lNqewCdasdtPK81CgX8wJFLEIXHbV2oldWRgJAsZrdhRXkV1NJzA2g850KiFm9mMU2HxNxMA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "cssnano-preset-default": "^6.1.2", "lilconfig": "^3.1.1" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/cssnano" + }, + "peerDependencies": { + "postcss": "^8.4.31" } }, - "cssnano-preset-default": { + "node_modules/cssnano-preset-default": { "version": "6.1.2", - "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-6.1.2.tgz", - "integrity": "sha512-1C0C+eNaeN8OcHQa193aRgYexyJtU8XwbdieEjClw+J9d94E41LwT6ivKH0WT+fYwYWB0Zp3I3IZ7tI/BbUbrg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "browserslist": "^4.23.0", "css-declaration-sorter": "^7.2.0", "cssnano-utils": "^4.0.2", @@ -9873,320 +7552,343 @@ "postcss-svgo": "^6.0.3", "postcss-unique-selectors": "^6.0.4" }, - "dependencies": { - "browserslist": { - "version": "4.23.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", - "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", - "dev": true, - "requires": { - "caniuse-lite": "^1.0.30001587", - "electron-to-chromium": "^1.4.668", - "node-releases": "^2.0.14", - "update-browserslist-db": "^1.0.13" - } - }, - "caniuse-lite": { - "version": "1.0.30001612", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001612.tgz", - "integrity": "sha512-lFgnZ07UhaCcsSZgWW0K5j4e69dK1u/ltrL9lTUiFOwNHs12S3UMIEYgBV0Z6C6hRDev7iRnMzzYmKabYdXF9g==", - "dev": true - }, - "electron-to-chromium": { - "version": "1.4.748", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.748.tgz", - "integrity": "sha512-VWqjOlPZn70UZ8FTKUOkUvBLeTQ0xpty66qV0yJcAGY2/CthI4xyW9aEozRVtuwv3Kpf5xTesmJUcPwuJmgP4A==", - "dev": true - }, - "node-releases": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", - "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", - "dev": true - }, - "update-browserslist-db": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", - "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", - "dev": true, - "requires": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" - } - } + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" } }, - "cssnano-utils": { + "node_modules/cssnano-utils": { "version": "4.0.2", - "resolved": "https://registry.npmjs.org/cssnano-utils/-/cssnano-utils-4.0.2.tgz", - "integrity": "sha512-ZR1jHg+wZ8o4c3zqf1SIUSTIvm/9mU343FMR6Obe/unskbvpGhZOo1J6d/r8D1pzkRQYuwbcH3hToOuoA2G7oQ==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } }, - "csso": { + "node_modules/csso": { "version": "5.0.5", - "resolved": "https://registry.npmjs.org/csso/-/csso-5.0.5.tgz", - "integrity": "sha512-0LrrStPOdJj+SPCCrGhzryycLjwcgUSHBtxNA8aIDxf0GLsRh1cKYhB00Gd1lDOS4yGH69+SNn13+TWbVHETFQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "css-tree": "~2.2.0" }, + "engines": { + "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/csso/node_modules/css-tree": { + "version": "2.2.1", + "dev": true, + "license": "MIT", "dependencies": { - "css-tree": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-2.2.1.tgz", - "integrity": "sha512-OA0mILzGc1kCOCSJerOeqDxDQ4HOh+G8NbOJFOTgOCzpw7fCBubk0fEyxp8AgOL/jvLgYA/uV0cMbe43ElF1JA==", - "dev": true, - "requires": { - "mdn-data": "2.0.28", - "source-map-js": "^1.0.1" - } - }, - "mdn-data": { - "version": "2.0.28", - "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.28.tgz", - "integrity": "sha512-aylIc7Z9y4yzHYAJNuESG3hfhC+0Ibp/MAMiaOZgNv4pmEdFyfZhhhny4MNiAfWdBQ1RQ2mfDWmM1x8SvGyp8g==", - "dev": true - } + "mdn-data": "2.0.28", + "source-map-js": "^1.0.1" + }, + "engines": { + "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0", + "npm": ">=7.0.0" } }, - "cssom": { + "node_modules/csso/node_modules/mdn-data": { + "version": "2.0.28", + "dev": true, + "license": "CC0-1.0" + }, + "node_modules/cssom": { "version": "0.5.0", - "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.5.0.tgz", - "integrity": "sha512-iKuQcq+NdHqlAcwUY0o/HL69XQrUaQdMjmStJ8JFmUaiiQErlhrmuigkg/CU4E2J0IyUKUrMAgl36TvN67MqTw==", - "dev": true + "dev": true, + "license": "MIT" }, - "cssstyle": { + "node_modules/cssstyle": { "version": "2.3.0", - "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz", - "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "cssom": "~0.3.6" }, - "dependencies": { - "cssom": { - "version": "0.3.8", - "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", - "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", - "dev": true - } + "engines": { + "node": ">=8" } }, - "csstype": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.1.tgz", - "integrity": "sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw==", - "dev": true + "node_modules/cssstyle/node_modules/cssom": { + "version": "0.3.8", + "dev": true, + "license": "MIT" }, - "cwd": { + "node_modules/cwd": { "version": "0.10.0", - "resolved": "https://registry.npmjs.org/cwd/-/cwd-0.10.0.tgz", - "integrity": "sha512-YGZxdTTL9lmLkCUTpg4j0zQ7IhRB5ZmqNBbGCl3Tg6MP/d5/6sY7L5mmTjzbc6JKgVZYiqTQTNhPFsbXNGlRaA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "find-pkg": "^0.1.2", "fs-exists-sync": "^0.1.0" + }, + "engines": { + "node": ">=0.8" } }, - "damerau-levenshtein": { + "node_modules/damerau-levenshtein": { "version": "1.0.8", - "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz", - "integrity": "sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==", - "dev": true + "dev": true, + "license": "BSD-2-Clause" }, - "data-uri-to-buffer": { + "node_modules/data-uri-to-buffer": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-6.0.2.tgz", "integrity": "sha512-7hvf7/GW8e86rW0ptuwS3OcBGDjIi6SZva7hCyWC0yYry2cOPmLIjXAUHI6DK2HsnwJd9ifmt57i8eV2n4YNpw==", - "dev": true + "dev": true, + "engines": { + "node": ">= 14" + } }, - "data-urls": { + "node_modules/data-urls": { "version": "3.0.2", - "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-3.0.2.tgz", - "integrity": "sha512-Jy/tj3ldjZJo63sVAvg6LHt2mHvl4V6AgRAmNDtLdm7faqtsx+aJG42rsyCo9JCoRVKwPFzKlIPx3DIibwSIaQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "abab": "^2.0.6", "whatwg-mimetype": "^3.0.0", "whatwg-url": "^11.0.0" }, + "engines": { + "node": ">=12" + } + }, + "node_modules/data-urls/node_modules/tr46": { + "version": "3.0.0", + "dev": true, + "license": "MIT", "dependencies": { - "tr46": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-3.0.0.tgz", - "integrity": "sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==", - "dev": true, - "requires": { - "punycode": "^2.1.1" - } - }, - "webidl-conversions": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", - "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", - "dev": true - }, - "whatwg-url": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-11.0.0.tgz", - "integrity": "sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==", - "dev": true, - "requires": { - "tr46": "^3.0.0", - "webidl-conversions": "^7.0.0" - } - } + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=12" } }, - "dateformat": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-3.0.3.tgz", - "integrity": "sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q==", - "dev": true + "node_modules/data-urls/node_modules/webidl-conversions": { + "version": "7.0.0", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=12" + } }, - "debounce": { + "node_modules/data-urls/node_modules/whatwg-url": { + "version": "11.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "tr46": "^3.0.0", + "webidl-conversions": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/dateformat": { + "version": "4.6.3", + "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-4.6.3.tgz", + "integrity": "sha512-2P0p0pFGzHS5EMnhdxQi7aJN+iMheud0UhG4dlE1DLAlvL8JHjJJTX/CSm4JXwV0Ka5nGk3zC5mcb5bUQUxxMA==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/debounce": { "version": "1.2.1", - "resolved": "https://registry.npmjs.org/debounce/-/debounce-1.2.1.tgz", - "integrity": "sha512-XRRe6Glud4rd/ZGQfiV1ruXSfbvfJedlV9Y6zOlP+2K04vBYiJEte6stfFkCP03aMnY5tsipamumUjL14fofug==", - "dev": true + "dev": true, + "license": "MIT" }, - "debug": { + "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, - "requires": { + "license": "MIT", + "dependencies": { "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } } }, - "decamelize": { + "node_modules/decamelize": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, - "decamelize-keys": { + "node_modules/decamelize-keys": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.1.tgz", "integrity": "sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==", "dev": true, - "requires": { + "dependencies": { "decamelize": "^1.1.0", "map-obj": "^1.0.0" }, - "dependencies": { - "map-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", - "integrity": "sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==", - "dev": true - } + "engines": { + "node": ">=0.10.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "decimal.js": { + "node_modules/decamelize-keys/node_modules/map-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", + "integrity": "sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/decimal.js": { "version": "10.4.3", - "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz", - "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==", - "dev": true + "dev": true, + "license": "MIT" }, - "decompress-response": { + "node_modules/decompress-response": { "version": "6.0.0", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", - "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "mimic-response": "^3.1.0" }, - "dependencies": { - "mimic-response": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz", - "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==", - "dev": true - } + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/decompress-response/node_modules/mimic-response": { + "version": "3.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "dedent": { + "node_modules/dedent": { "version": "1.5.3", "resolved": "https://registry.npmjs.org/dedent/-/dedent-1.5.3.tgz", "integrity": "sha512-NHQtfOOW68WD8lgypbLA5oT+Bt0xXJhiYvoR6SmmNXZfpzOGXwdKWmcwG8N7PwVVWV3eF/68nmD9BaJSsTBhyQ==", - "dev": true + "dev": true, + "peerDependencies": { + "babel-plugin-macros": "^3.1.0" + }, + "peerDependenciesMeta": { + "babel-plugin-macros": { + "optional": true + } + } }, - "deep-extend": { + "node_modules/deep-extend": { "version": "0.6.0", - "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", - "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4.0.0" + } }, - "deep-is": { + "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 + "dev": true, + "license": "MIT" }, - "deepmerge": { + "node_modules/deepmerge": { "version": "4.3.1", - "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", - "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } }, - "default-gateway": { + "node_modules/default-gateway": { "version": "6.0.3", - "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-6.0.3.tgz", - "integrity": "sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==", "dev": true, - "requires": { + "license": "BSD-2-Clause", + "dependencies": { "execa": "^5.0.0" + }, + "engines": { + "node": ">= 10" } }, - "defaults": { + "node_modules/defaults": { "version": "1.0.3", - "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz", - "integrity": "sha512-s82itHOnYrN0Ib8r+z7laQz3sdE+4FP3d9Q7VLO7U+KRT+CR0GsWuyHxzdAY82I7cXv0G/twrqomTJLOssO5HA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "clone": "^1.0.2" } }, - "defer-to-connect": { + "node_modules/defer-to-connect": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-2.0.1.tgz", - "integrity": "sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + } }, - "define-lazy-prop": { + "node_modules/define-lazy-prop": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", - "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } }, - "define-properties": { + "node_modules/define-properties": { "version": "1.1.4", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", - "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "has-property-descriptors": "^1.0.0", "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "degenerator": { + "node_modules/degenerator": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/degenerator/-/degenerator-5.0.1.tgz", "integrity": "sha512-TllpMR/t0M5sqCXfj85i4XaAzxmS5tVA16dqvdkMwGmzI+dXLXnw3J+3Vdv7VKw+ThlTMboK6i9rnZ6Nntj5CQ==", "dev": true, - "requires": { + "dependencies": { "ast-types": "^0.13.4", "escodegen": "^2.1.0", "esprima": "^4.0.1" + }, + "engines": { + "node": ">= 14" } }, - "del": { + "node_modules/del": { "version": "4.1.1", - "resolved": "https://registry.npmjs.org/del/-/del-4.1.1.tgz", - "integrity": "sha512-QwGuEUouP2kVwQenAsOof5Fv8K9t3D8Ca8NxcXKrIpEHjTXK5J2nXLdP+ALI1cgv8wj7KuwBhTwBkOZSJKM5XQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@types/glob": "^7.1.1", "globby": "^6.1.0", "is-path-cwd": "^2.0.0", @@ -10195,329 +7897,413 @@ "pify": "^4.0.1", "rimraf": "^2.6.3" }, + "engines": { + "node": ">=6" + } + }, + "node_modules/del/node_modules/array-union": { + "version": "1.0.2", + "dev": true, + "license": "MIT", "dependencies": { - "array-union": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", - "integrity": "sha512-Dxr6QJj/RdU/hCaBjOfxW+q6lyuVE6JFWIrAUpuOOhoJJoQ99cUn3igRaHVB5P9WrgFVN0FfArM3x0cueOU8ng==", - "dev": true, - "requires": { - "array-uniq": "^1.0.1" - } - }, - "globby": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz", - "integrity": "sha512-KVbFv2TQtbzCoxAnfD6JcHZTYCzyliEaaeM/gH8qQdkKr5s0OP9scEgvdcngyk7AVdY6YVW/TJHd+lQ/Df3Daw==", - "dev": true, - "requires": { - "array-union": "^1.0.1", - "glob": "^7.0.3", - "object-assign": "^4.0.1", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" - }, - "dependencies": { - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", - "dev": true - } - } - }, - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - } + "array-uniq": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/del/node_modules/globby": { + "version": "6.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "array-union": "^1.0.1", + "glob": "^7.0.3", + "object-assign": "^4.0.1", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/del/node_modules/globby/node_modules/pify": { + "version": "2.3.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/del/node_modules/rimraf": { + "version": "2.7.1", + "dev": true, + "license": "ISC", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" } }, - "delayed-stream": { + "node_modules/delayed-stream": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.4.0" + } }, - "depd": { + "node_modules/depd": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8" + } }, - "destroy": { + "node_modules/destroy": { "version": "1.2.0", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", - "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } }, - "detect-file": { + "node_modules/detect-file": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz", - "integrity": "sha512-DtCOLG98P007x7wiiOmfI0fi3eIKyWiLTGJ2MDnVi/E04lWGbf+JzrRHMm0rgIIZJGtHpKpbVgLWHrv8xXpc3Q==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } }, - "detect-newline": { + "node_modules/detect-newline": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", - "dev": true + "dev": true, + "engines": { + "node": ">=8" + } }, - "detect-node": { + "node_modules/detect-node": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", - "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==", - "dev": true + "dev": true, + "license": "MIT" }, - "devtools-protocol": { + "node_modules/devtools-protocol": { "version": "0.0.1155343", "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.1155343.tgz", "integrity": "sha512-oD9vGBV2wTc7fAzAM6KC0chSgs234V8+qDEeK+mcbRj2UvcuA7lgBztGi/opj/iahcXD3BSj8Ymvib628yy9FA==", "dev": true }, - "diff-sequences": { + "node_modules/diff-sequences": { "version": "29.6.3", "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.6.3.tgz", "integrity": "sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==", - "dev": true + "dev": true, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } }, - "dir-glob": { + "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, - "requires": { + "license": "MIT", + "dependencies": { "path-type": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "dns-packet": { + "node_modules/dns-packet": { "version": "5.6.1", - "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-5.6.1.tgz", - "integrity": "sha512-l4gcSouhcgIKRvyy99RNVOgxXiicE+2jZoNmaNmZ6JXiGajBOJAesk1OBlJuM5k2c+eudGdLxDqXuPCKIj6kpw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@leichtgewicht/ip-codec": "^2.0.1" + }, + "engines": { + "node": ">=6" } }, - "docker-compose": { - "version": "0.22.2", - "resolved": "https://registry.npmjs.org/docker-compose/-/docker-compose-0.22.2.tgz", - "integrity": "sha512-iXWb5+LiYmylIMFXvGTYsjI1F+Xyx78Jm/uj1dxwwZLbWkUdH6yOXY5Nr3RjbYX15EgbGJCq78d29CmWQQQMPg==", - "dev": true + "node_modules/docker-compose": { + "version": "0.24.8", + "resolved": "https://registry.npmjs.org/docker-compose/-/docker-compose-0.24.8.tgz", + "integrity": "sha512-plizRs/Vf15H+GCVxq2EUvyPK7ei9b/cVesHvjnX4xaXjM9spHe2Ytq0BitndFgvTJ3E3NljPNUEl7BAN43iZw==", + "dev": true, + "dependencies": { + "yaml": "^2.2.2" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/docker-compose/node_modules/yaml": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.5.0.tgz", + "integrity": "sha512-2wWLbGbYDiSqqIKoPjar3MPgB94ErzCtrNE1FdqGuaO0pi2JGjmE8aW8TDZwzU7vuxcGRdL/4gPQwQ7hD5AMSw==", + "dev": true, + "bin": { + "yaml": "bin.mjs" + }, + "engines": { + "node": ">= 14" + } }, - "doctrine": { + "node_modules/doctrine": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", "dev": true, - "requires": { + "license": "Apache-2.0", + "dependencies": { "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" } }, - "dom-serializer": { + "node_modules/dom-serializer": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", - "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "domelementtype": "^2.3.0", "domhandler": "^5.0.2", "entities": "^4.2.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" } }, - "domelementtype": { + "node_modules/domelementtype": { "version": "2.3.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", - "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", - "dev": true + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], + "license": "BSD-2-Clause" }, - "domexception": { + "node_modules/domexception": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/domexception/-/domexception-4.0.0.tgz", - "integrity": "sha512-A2is4PLG+eeSfoTMA95/s4pvAoSo2mKtiM5jlHkAVewmiO8ISFTFKZjH7UAM1Atli/OT/7JHOrJRJiMKUZKYBw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "webidl-conversions": "^7.0.0" }, - "dependencies": { - "webidl-conversions": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", - "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", - "dev": true - } + "engines": { + "node": ">=12" } }, - "domhandler": { + "node_modules/domexception/node_modules/webidl-conversions": { + "version": "7.0.0", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=12" + } + }, + "node_modules/domhandler": { "version": "5.0.3", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", - "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", "dev": true, - "requires": { + "license": "BSD-2-Clause", + "dependencies": { "domelementtype": "^2.3.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" } }, - "domutils": { + "node_modules/domutils": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.1.0.tgz", - "integrity": "sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==", "dev": true, - "requires": { + "license": "BSD-2-Clause", + "dependencies": { "dom-serializer": "^2.0.0", "domelementtype": "^2.3.0", "domhandler": "^5.0.3" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" } }, - "dot-case": { + "node_modules/dot-case": { "version": "3.0.4", - "resolved": "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz", - "integrity": "sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "no-case": "^3.0.4", "tslib": "^2.0.3" } }, - "dot-prop": { + "node_modules/dot-prop": { "version": "5.3.0", "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", "dev": true, - "requires": { + "dependencies": { "is-obj": "^2.0.0" + }, + "engines": { + "node": ">=8" } }, - "duplexer": { + "node_modules/duplexer": { "version": "0.1.2", - "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", - "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==", - "dev": true + "dev": true, + "license": "MIT" }, - "ee-first": { + "node_modules/ee-first": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", - "dev": true + "dev": true, + "license": "MIT" }, - "electron-to-chromium": { - "version": "1.4.275", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.275.tgz", - "integrity": "sha512-aJeQQ+Hl9Jyyzv4chBqYJwmVRY46N5i2BEX5Cuyk/5gFCUZ5F3i7Hnba6snZftWla7Gglwc5pIgcd+E7cW+rPg==", + "node_modules/electron-to-chromium": { + "version": "1.5.13", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.13.tgz", + "integrity": "sha512-lbBcvtIJ4J6sS4tb5TLp1b4LyfCdMkwStzXPyAgVgTRAsep4bvrAGaBOP7ZJtQMNJpSQ9SqG4brWOroNaQtm7Q==", "dev": true }, - "emittery": { + "node_modules/emittery": { "version": "0.13.1", "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.13.1.tgz", "integrity": "sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==", - "dev": true + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sindresorhus/emittery?sponsor=1" + } }, - "emoji-regex": { + "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==", - "dev": true + "dev": true, + "license": "MIT" }, - "emojis-list": { + "node_modules/emojis-list": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", - "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 4" + } }, - "encodeurl": { + "node_modules/encodeurl": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8" + } }, - "encoding": { + "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, - "requires": { + "license": "MIT", + "optional": true, + "peer": true, + "dependencies": { "iconv-lite": "^0.6.2" - }, + } + }, + "node_modules/encoding/node_modules/iconv-lite": { + "version": "0.6.3", + "dev": true, + "license": "MIT", + "optional": true, + "peer": true, "dependencies": { - "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, - "requires": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - } - } + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, - "end-of-stream": { + "node_modules/end-of-stream": { "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "once": "^1.4.0" } }, - "enhanced-resolve": { + "node_modules/enhanced-resolve": { "version": "5.16.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.16.0.tgz", - "integrity": "sha512-O+QWCviPNSSLAD9Ucn8Awv+poAkqn3T1XY5/N7kR7rQO9yfSGWkYZDwpJ+iKF7B8rxaQKWngSqACpgzeapSyoA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "graceful-fs": "^4.2.4", "tapable": "^2.2.0" + }, + "engines": { + "node": ">=10.13.0" } }, - "enquirer": { + "node_modules/enquirer": { "version": "2.4.1", "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.4.1.tgz", "integrity": "sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==", "dev": true, - "requires": { + "dependencies": { "ansi-colors": "^4.1.1", "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8.6" } }, - "entities": { + "node_modules/entities": { "version": "4.5.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", - "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", - "dev": true + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } }, - "envinfo": { + "node_modules/envinfo": { "version": "7.12.0", - "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.12.0.tgz", - "integrity": "sha512-Iw9rQJBGpJRd3rwXm9ft/JiGoAZmLxxJZELYDQoPRZ4USVhkKtIcNBPw6U+/K2mBpaqM25JSV6Yl4Az9vO2wJg==", - "dev": true + "dev": true, + "license": "MIT", + "bin": { + "envinfo": "dist/cli.js" + }, + "engines": { + "node": ">=4" + } }, - "error-ex": { + "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, - "requires": { + "license": "MIT", + "dependencies": { "is-arrayish": "^0.2.1" } }, - "error-stack-parser": { + "node_modules/error-stack-parser": { "version": "2.1.4", - "resolved": "https://registry.npmjs.org/error-stack-parser/-/error-stack-parser-2.1.4.tgz", - "integrity": "sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "stackframe": "^1.3.4" } }, - "es-abstract": { + "node_modules/es-abstract": { "version": "1.20.4", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.20.4.tgz", - "integrity": "sha512-0UtvRN79eMe2L+UNEF1BwRe364sj/DXhQ/k5FmivgoSdpM90b8Jc0mDzKMGo7QS0BVbOP/bTwBKNnDc9rNzaPA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "call-bind": "^1.0.2", "es-to-primitive": "^1.2.1", "function-bind": "^1.1.1", @@ -10542,79 +8328,99 @@ "string.prototype.trimend": "^1.0.5", "string.prototype.trimstart": "^1.0.5", "unbox-primitive": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "es-module-lexer": { + "node_modules/es-module-lexer": { "version": "1.5.0", - "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.5.0.tgz", - "integrity": "sha512-pqrTKmwEIgafsYZAGw9kszYzmagcE/n4dbgwGWLEXg7J4QFJVQRBld8j3Q3GNez79jzxZshq0bcT962QHOghjw==", - "dev": true + "dev": true, + "license": "MIT" }, - "es-shim-unscopables": { + "node_modules/es-shim-unscopables": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz", - "integrity": "sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "has": "^1.0.3" } }, - "es-to-primitive": { + "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, - "requires": { + "license": "MIT", + "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" } }, - "escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", - "dev": true + "node_modules/escalade": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", + "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==", + "dev": true, + "engines": { + "node": ">=6" + } }, - "escape-html": { + "node_modules/escape-html": { "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", - "dev": true + "dev": true, + "license": "MIT" }, - "escape-string-regexp": { + "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 + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.0" + } }, - "escodegen": { + "node_modules/escodegen": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.1.0.tgz", - "integrity": "sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==", "dev": true, - "requires": { + "license": "BSD-2-Clause", + "dependencies": { "esprima": "^4.0.1", "estraverse": "^5.2.0", - "esutils": "^2.0.2", - "source-map": "~0.6.1" + "esutils": "^2.0.2" }, - "dependencies": { - "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, - "optional": true - } + "bin": { + "escodegen": "bin/escodegen.js", + "esgenerate": "bin/esgenerate.js" + }, + "engines": { + "node": ">=6.0" + }, + "optionalDependencies": { + "source-map": "~0.6.1" + } + }, + "node_modules/escodegen/node_modules/source-map": { + "version": "0.6.1", + "dev": true, + "license": "BSD-3-Clause", + "optional": true, + "engines": { + "node": ">=0.10.0" } }, - "eslint": { + "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, - "requires": { + "license": "MIT", + "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", "@eslint/eslintrc": "^2.1.4", @@ -10654,213 +8460,73 @@ "strip-ansi": "^6.0.1", "text-table": "^0.2.0" }, - "dependencies": { - "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, - "requires": { - "color-convert": "^2.0.1" - } - }, - "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 - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "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, - "requires": { - "color-name": "~1.1.4" - } - }, - "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 - }, - "cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "requires": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - } - }, - "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 - }, - "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, - "requires": { - "esrecurse": "^4.3.0", - "estraverse": "^5.2.0" - } - }, - "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 - }, - "esquery": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", - "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", - "dev": true, - "requires": { - "estraverse": "^5.1.0" - } - }, - "globals": { - "version": "13.24.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", - "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", - "dev": true, - "requires": { - "type-fest": "^0.20.2" - } - }, - "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 - }, - "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 - }, - "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, - "requires": { - "argparse": "^2.0.1" - } - }, - "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==", - "dev": true, - "requires": { - "shebang-regex": "^3.0.0" - } - }, - "shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true - }, - "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, - "requires": { - "has-flag": "^4.0.0" - } - }, - "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 - }, - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - } + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "eslint-config-prettier": { + "node_modules/eslint-config-prettier": { "version": "8.5.0", - "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.5.0.tgz", - "integrity": "sha512-obmWKLUNCnhtQRKc+tmnYuQl0pFU1ibYJQ5BGhTVB08bHe9wC8qUeG7c08dj9XX+AuPj1YSGSQIHl1pnDHZR0Q==", - "dev": true + "dev": true, + "license": "MIT", + "bin": { + "eslint-config-prettier": "bin/cli.js" + }, + "peerDependencies": { + "eslint": ">=7.0.0" + } }, - "eslint-import-resolver-node": { + "node_modules/eslint-import-resolver-node": { "version": "0.3.6", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.6.tgz", - "integrity": "sha512-0En0w03NRVMn9Uiyn8YRPDKvWjxCWkslUEhGNTdGx15RvPJYQ+lbOlqrlNI2vEAs4pDYK4f/HN2TbDmk5TP0iw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "debug": "^3.2.7", "resolve": "^1.20.0" - }, + } + }, + "node_modules/eslint-import-resolver-node/node_modules/debug": { + "version": "3.2.7", + "dev": true, + "license": "MIT", "dependencies": { - "debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - } + "ms": "^2.1.1" } }, - "eslint-module-utils": { + "node_modules/eslint-module-utils": { "version": "2.7.4", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.7.4.tgz", - "integrity": "sha512-j4GT+rqzCoRKHwURX7pddtIPGySnX9Si/cgMI5ztrcqOPtk5dDEeZ34CQVPphnqkJytlc97Vuk05Um2mJ3gEQA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "debug": "^3.2.7" }, - "dependencies": { - "debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } + "engines": { + "node": ">=4" + }, + "peerDependenciesMeta": { + "eslint": { + "optional": true } } }, - "eslint-plugin-import": { + "node_modules/eslint-module-utils/node_modules/debug": { + "version": "3.2.7", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-plugin-import": { "version": "2.26.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.26.0.tgz", - "integrity": "sha512-hYfi3FXaM8WPLf4S1cikh/r4IxnO6zrhZbEGz2b660EJRbuxgpDS5gkCuYgGWg2xxh2rBuIr4Pvhve/7c31koA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "array-includes": "^3.1.4", "array.prototype.flat": "^1.2.5", "debug": "^2.6.9", @@ -10875,96 +8541,124 @@ "resolve": "^1.22.0", "tsconfig-paths": "^3.14.1" }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8" + } + }, + "node_modules/eslint-plugin-import/node_modules/debug": { + "version": "2.6.9", + "dev": true, + "license": "MIT", "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", - "dev": true, - "requires": { - "esutils": "^2.0.2" - } + "ms": "2.0.0" + } + }, + "node_modules/eslint-plugin-import/node_modules/doctrine": { + "version": "2.1.0", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/eslint-plugin-import/node_modules/ms": { + "version": "2.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/eslint-plugin-jest": { + "version": "27.9.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-27.9.0.tgz", + "integrity": "sha512-QIT7FH7fNmd9n4se7FFKHbsLKGQiw885Ds6Y/sxKgCZ6natwCsXdgPOADnYVxN2QrRweF0FZWbJ6S7Rsn7llug==", + "dev": true, + "dependencies": { + "@typescript-eslint/utils": "^5.10.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@typescript-eslint/eslint-plugin": "^5.0.0 || ^6.0.0 || ^7.0.0", + "eslint": "^7.0.0 || ^8.0.0", + "jest": "*" + }, + "peerDependenciesMeta": { + "@typescript-eslint/eslint-plugin": { + "optional": true }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true + "jest": { + "optional": true } } }, - "eslint-plugin-jest": { - "version": "25.7.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-25.7.0.tgz", - "integrity": "sha512-PWLUEXeeF7C9QGKqvdSbzLOiLTx+bno7/HC9eefePfEb257QFHg7ye3dh80AZVkaa/RQsBB1Q/ORQvg2X7F0NQ==", + "node_modules/eslint-plugin-jsdoc": { + "version": "46.10.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-46.10.1.tgz", + "integrity": "sha512-x8wxIpv00Y50NyweDUpa+58ffgSAI5sqe+zcZh33xphD0AVh+1kqr1ombaTRb7Fhpove1zfUuujlX9DWWBP5ag==", "dev": true, - "requires": { - "@typescript-eslint/experimental-utils": "^5.0.0" + "dependencies": { + "@es-joy/jsdoccomment": "~0.41.0", + "are-docs-informative": "^0.0.2", + "comment-parser": "1.4.1", + "debug": "^4.3.4", + "escape-string-regexp": "^4.0.0", + "esquery": "^1.5.0", + "is-builtin-module": "^3.2.1", + "semver": "^7.5.4", + "spdx-expression-parse": "^4.0.0" + }, + "engines": { + "node": ">=16" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0 || ^9.0.0" } }, - "eslint-plugin-jsdoc": { - "version": "37.9.7", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-37.9.7.tgz", - "integrity": "sha512-8alON8yYcStY94o0HycU2zkLKQdcS+qhhOUNQpfONHHwvI99afbmfpYuPqf6PbLz5pLZldG3Te5I0RbAiTN42g==", + "node_modules/eslint-plugin-jsdoc/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, - "requires": { - "@es-joy/jsdoccomment": "~0.20.1", - "comment-parser": "1.3.0", - "debug": "^4.3.3", - "escape-string-regexp": "^4.0.0", - "esquery": "^1.4.0", - "regextras": "^0.8.0", - "semver": "^7.3.5", - "spdx-expression-parse": "^3.0.1" + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint-plugin-jsdoc/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/eslint-plugin-jsdoc/node_modules/spdx-expression-parse": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-4.0.0.tgz", + "integrity": "sha512-Clya5JIij/7C6bRR22+tnGXbc4VKlibKSVj2iHvVeX5iMW7s1SIQlqu699JkODJJIhh/pUu8L0/VLh8xflD+LQ==", + "dev": true, "dependencies": { - "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 - }, - "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, - "requires": { - "yallist": "^4.0.0" - } - }, - "semver": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", - "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - } + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" } }, - "eslint-plugin-jsx-a11y": { + "node_modules/eslint-plugin-jsx-a11y": { "version": "6.6.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.6.1.tgz", - "integrity": "sha512-sXgFVNHiWffBq23uiS/JaP6eVR622DqwB4yTzKvGZGcPq6/yZ3WmOZfuBks/vHWo9GaFOqC2ZK4i6+C35knx7Q==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@babel/runtime": "^7.18.9", "aria-query": "^4.2.2", "array-includes": "^3.1.5", @@ -10978,29 +8672,63 @@ "language-tags": "^1.0.5", "minimatch": "^3.1.2", "semver": "^6.3.0" + }, + "engines": { + "node": ">=4.0" + }, + "peerDependencies": { + "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8" } }, - "eslint-plugin-playwright": { + "node_modules/eslint-plugin-playwright": { "version": "0.15.3", - "resolved": "https://registry.npmjs.org/eslint-plugin-playwright/-/eslint-plugin-playwright-0.15.3.tgz", - "integrity": "sha512-LQMW5y0DLK5Fnpya7JR1oAYL2/7Y9wDiYw6VZqlKqcRGSgjbVKNqxraphk7ra1U3Bb5EK444xMgUlQPbMg2M1g==", - "dev": true + "dev": true, + "license": "MIT", + "peerDependencies": { + "eslint": ">=7", + "eslint-plugin-jest": ">=25" + }, + "peerDependenciesMeta": { + "eslint-plugin-jest": { + "optional": true + } + } }, - "eslint-plugin-prettier": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-3.4.1.tgz", - "integrity": "sha512-htg25EUYUeIhKHXjOinK4BgCcDwtLHjqaxCDsMy5nbnUMkKFvIhMVCp+5GFUXQ4Nr8lBsPqtGAqBenbpFqAA2g==", + "node_modules/eslint-plugin-prettier": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-5.2.1.tgz", + "integrity": "sha512-gH3iR3g4JfF+yYPaJYkN7jEl9QbweL/YfkoRlNnuIEHEz1vHVlCmWOS+eGGiRuzHQXdJFCOTxRgvju9b8VUmrw==", "dev": true, - "requires": { - "prettier-linter-helpers": "^1.0.0" + "dependencies": { + "prettier-linter-helpers": "^1.0.0", + "synckit": "^0.9.1" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint-plugin-prettier" + }, + "peerDependencies": { + "@types/eslint": ">=8.0.0", + "eslint": ">=8.0.0", + "eslint-config-prettier": "*", + "prettier": ">=3.0.0" + }, + "peerDependenciesMeta": { + "@types/eslint": { + "optional": true + }, + "eslint-config-prettier": { + "optional": true + } } }, - "eslint-plugin-react": { + "node_modules/eslint-plugin-react": { "version": "7.31.8", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.31.8.tgz", - "integrity": "sha512-5lBTZmgQmARLLSYiwI71tiGVTLUuqXantZM6vlSY39OaDSV0M7+32K5DnLkmFrwTe+Ksz0ffuLUC91RUviVZfw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "array-includes": "^3.1.5", "array.prototype.flatmap": "^1.3.0", "doctrine": "^2.1.0", @@ -11016,153 +8744,401 @@ "semver": "^6.3.0", "string.prototype.matchall": "^4.0.7" }, - "dependencies": { - "doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", - "dev": true, - "requires": { - "esutils": "^2.0.2" - } - }, - "resolve": { - "version": "2.0.0-next.4", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.4.tgz", - "integrity": "sha512-iMDbmAWtfU+MHpxt/I5iWI7cY6YVEZUQ3MBgPQ++XD1PELuJHIl82xBmObyP2KyQmkNB2dsqF7seoQQiAn5yDQ==", - "dev": true, - "requires": { - "is-core-module": "^2.9.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - } - } + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8" } }, - "eslint-plugin-react-hooks": { + "node_modules/eslint-plugin-react-hooks": { "version": "4.6.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.0.tgz", - "integrity": "sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0" + } + }, + "node_modules/eslint-plugin-react/node_modules/doctrine": { + "version": "2.1.0", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=0.10.0" + } }, - "eslint-scope": { + "node_modules/eslint-plugin-react/node_modules/resolve": { + "version": "2.0.0-next.4", + "dev": true, + "license": "MIT", + "dependencies": { + "is-core-module": "^2.9.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/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, - "requires": { + "license": "BSD-2-Clause", + "dependencies": { "esrecurse": "^4.3.0", "estraverse": "^4.1.1" }, - "dependencies": { - "estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true - } + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/eslint-scope/node_modules/estraverse": { + "version": "4.3.0", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=4.0" } }, - "eslint-utils": { + "node_modules/eslint-utils": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", - "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "eslint-visitor-keys": "^2.0.0" + }, + "engines": { + "node": "^10.0.0 || ^12.0.0 || >= 14.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + }, + "peerDependencies": { + "eslint": ">=5" } }, - "eslint-visitor-keys": { + "node_modules/eslint-visitor-keys": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", - "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", - "dev": true + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint/node_modules/ansi-styles": { + "version": "4.3.0", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/eslint/node_modules/argparse": { + "version": "2.0.1", + "dev": true, + "license": "Python-2.0" + }, + "node_modules/eslint/node_modules/chalk": { + "version": "4.1.2", + "dev": true, + "license": "MIT", + "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/eslint/node_modules/color-convert": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/eslint/node_modules/color-name": { + "version": "1.1.4", + "dev": true, + "license": "MIT" + }, + "node_modules/eslint/node_modules/cross-spawn": { + "version": "7.0.3", + "dev": true, + "license": "MIT", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/eslint/node_modules/escape-string-regexp": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/node_modules/eslint-scope": { + "version": "7.2.2", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint/node_modules/globals": { + "version": "13.24.0", + "dev": true, + "license": "MIT", + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/node_modules/has-flag": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/is-path-inside": { + "version": "3.0.3", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/js-yaml": { + "version": "4.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/eslint/node_modules/shebang-command": { + "version": "2.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/shebang-regex": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/supports-color": { + "version": "7.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/type-fest": { + "version": "0.20.2", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/node_modules/which": { + "version": "2.0.2", + "dev": true, + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } }, - "espree": { + "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, - "requires": { + "license": "BSD-2-Clause", + "dependencies": { "acorn": "^8.9.0", "acorn-jsx": "^5.3.2", "eslint-visitor-keys": "^3.4.1" }, - "dependencies": { - "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 - } + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/espree/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "esprima": { + "node_modules/esprima": { "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true + "dev": true, + "license": "BSD-2-Clause", + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } }, - "esquery": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", - "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", + "node_modules/esquery": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz", + "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==", "dev": true, - "requires": { + "dependencies": { "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" } }, - "esrecurse": { + "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, - "requires": { + "license": "BSD-2-Clause", + "dependencies": { "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" } }, - "estraverse": { + "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 + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=4.0" + } }, - "esutils": { + "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 + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.10.0" + } }, - "etag": { + "node_modules/etag": { "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } }, - "eventemitter2": { + "node_modules/eventemitter2": { "version": "0.4.14", - "resolved": "https://registry.npmjs.org/eventemitter2/-/eventemitter2-0.4.14.tgz", - "integrity": "sha512-K7J4xq5xAD5jHsGM5ReWXRTFa3JRGofHiMcVgQ8PRwgWxzjHpMWCIzsmyf60+mh8KLsqYPcjUMa0AC4hd6lPyQ==", - "dev": true + "dev": true, + "license": "MIT" }, - "eventemitter3": { + "node_modules/eventemitter3": { "version": "4.0.7", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", - "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", - "dev": true + "dev": true, + "license": "MIT" }, - "events": { + "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 + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.x" + } }, - "execa": { + "node_modules/execa": { "version": "5.1.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", - "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "cross-spawn": "^7.0.3", "get-stream": "^6.0.0", "human-signals": "^2.1.0", @@ -11173,90 +9149,114 @@ "signal-exit": "^3.0.3", "strip-final-newline": "^2.0.0" }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/execa/node_modules/cross-spawn": { + "version": "7.0.3", + "dev": true, + "license": "MIT", "dependencies": { - "cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "requires": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - } - }, - "get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", - "dev": true - }, - "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==", - "dev": true, - "requires": { - "shebang-regex": "^3.0.0" - } - }, - "shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true - }, - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - } + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/execa/node_modules/get-stream": { + "version": "6.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/execa/node_modules/shebang-command": { + "version": "2.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" } }, - "exit": { + "node_modules/execa/node_modules/shebang-regex": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/execa/node_modules/which": { + "version": "2.0.2", + "dev": true, + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/exit": { "version": "0.1.2", - "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", - "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", - "dev": true + "dev": true, + "engines": { + "node": ">= 0.8.0" + } }, - "expand-tilde": { + "node_modules/expand-tilde": { "version": "2.0.2", - "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz", - "integrity": "sha512-A5EmesHW6rfnZ9ysHQjPdJRni0SRar0tjtG5MNtm9n5TUvsYU8oozprtRD4AqHxcZWWlVuAmQo2nWKfN9oyjTw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "homedir-polyfill": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" } }, - "expect": { + "node_modules/expect": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/expect/-/expect-29.7.0.tgz", "integrity": "sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw==", "dev": true, - "requires": { + "dependencies": { "@jest/expect-utils": "^29.7.0", "jest-get-type": "^29.6.3", "jest-matcher-utils": "^29.7.0", "jest-message-util": "^29.7.0", "jest-util": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "expect-puppeteer": { + "node_modules/expect-puppeteer": { "version": "4.4.0", - "resolved": "https://registry.npmjs.org/expect-puppeteer/-/expect-puppeteer-4.4.0.tgz", - "integrity": "sha512-6Ey4Xy2xvmuQu7z7YQtMsaMV0EHJRpVxIDOd5GRrm04/I3nkTKIutELfECsLp6le+b3SSa3cXhPiw6PgqzxYWA==", - "dev": true + "dev": true, + "license": "MIT" }, - "express": { + "node_modules/express": { "version": "4.19.2", - "resolved": "https://registry.npmjs.org/express/-/express-4.19.2.tgz", - "integrity": "sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "accepts": "~1.3.8", "array-flatten": "1.1.1", "body-parser": "1.20.2", @@ -11289,234 +9289,268 @@ "utils-merge": "1.0.1", "vary": "~1.1.2" }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/express/node_modules/cookie": { + "version": "0.6.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/express/node_modules/debug": { + "version": "2.6.9", + "dev": true, + "license": "MIT", "dependencies": { - "cookie": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.6.0.tgz", - "integrity": "sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==", - "dev": true - }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } + "ms": "2.0.0" + } + }, + "node_modules/express/node_modules/ms": { + "version": "2.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/express/node_modules/safe-buffer": { + "version": "5.2.1", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true + { + "type": "patreon", + "url": "https://www.patreon.com/feross" }, - "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 + { + "type": "consulting", + "url": "https://feross.org/support" } - } + ], + "license": "MIT" }, - "extend": { + "node_modules/extend": { "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "dev": true + "dev": true, + "license": "MIT" }, - "external-editor": { + "node_modules/external-editor": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", - "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "chardet": "^0.7.0", "iconv-lite": "^0.4.24", "tmp": "^0.0.33" + }, + "engines": { + "node": ">=4" } }, - "extract-zip": { + "node_modules/extract-zip": { "version": "1.7.0", - "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-1.7.0.tgz", - "integrity": "sha512-xoh5G1W/PB0/27lXgMQyIhP5DSY/LhoCsOyZgb+6iMmRtCwVBo55uKaMoEYrDCKQhWvqEip5ZPKAc6eFNyf/MA==", "dev": true, - "requires": { + "license": "BSD-2-Clause", + "dependencies": { "concat-stream": "^1.6.2", "debug": "^2.6.9", "mkdirp": "^0.5.4", "yauzl": "^2.10.0" }, + "bin": { + "extract-zip": "cli.js" + } + }, + "node_modules/extract-zip/node_modules/debug": { + "version": "2.6.9", + "dev": true, + "license": "MIT", "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - } + "ms": "2.0.0" } }, - "fast-deep-equal": { + "node_modules/extract-zip/node_modules/ms": { + "version": "2.0.0", + "dev": true, + "license": "MIT" + }, + "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 + "dev": true, + "license": "MIT" }, - "fast-diff": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz", - "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==", + "node_modules/fast-diff": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.3.0.tgz", + "integrity": "sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==", "dev": true }, - "fast-fifo": { + "node_modules/fast-fifo": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/fast-fifo/-/fast-fifo-1.3.2.tgz", "integrity": "sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ==", "dev": true }, - "fast-glob": { + "node_modules/fast-glob": { "version": "3.2.12", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", - "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@nodelib/fs.stat": "^2.0.2", "@nodelib/fs.walk": "^1.2.3", "glob-parent": "^5.1.2", "merge2": "^1.3.0", "micromatch": "^4.0.4" }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-glob/node_modules/glob-parent": { + "version": "5.1.2", + "dev": true, + "license": "ISC", "dependencies": { - "glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "requires": { - "is-glob": "^4.0.1" - } - } + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" } }, - "fast-json-stable-stringify": { + "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 + "dev": true, + "license": "MIT" }, - "fast-levenshtein": { + "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, + "license": "MIT" + }, + "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 }, - "fastest-levenshtein": { + "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 + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 4.9.1" + } }, - "fastq": { + "node_modules/fastq": { "version": "1.13.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz", - "integrity": "sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==", "dev": true, - "requires": { + "license": "ISC", + "dependencies": { "reusify": "^1.0.4" } }, - "faye-websocket": { + "node_modules/faye-websocket": { "version": "0.11.4", - "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz", - "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==", "dev": true, - "requires": { + "license": "Apache-2.0", + "dependencies": { "websocket-driver": ">=0.5.1" + }, + "engines": { + "node": ">=0.8.0" } }, - "fb-watchman": { + "node_modules/fb-watchman": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", "dev": true, - "requires": { + "dependencies": { "bser": "2.1.1" } }, - "fd-slicer": { + "node_modules/fd-slicer": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", - "integrity": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "pend": "~1.2.0" } }, - "figures": { + "node_modules/figures": { "version": "3.2.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", - "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "escape-string-regexp": "^1.0.5" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "file-entry-cache": { + "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, - "requires": { + "license": "MIT", + "dependencies": { "flat-cache": "^3.0.4" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" } }, - "file-sync-cmp": { + "node_modules/file-sync-cmp": { "version": "0.1.1", - "resolved": "https://registry.npmjs.org/file-sync-cmp/-/file-sync-cmp-0.1.1.tgz", - "integrity": "sha512-0k45oWBokCqh2MOexeYKpyqmGKG+8mQ2Wd8iawx+uWd/weWJQAZ6SoPybagdCI4xFisag8iAR77WPm4h3pTfxA==", - "dev": true + "dev": true, + "license": "MIT" }, - "filename-reserved-regex": { + "node_modules/filename-reserved-regex": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/filename-reserved-regex/-/filename-reserved-regex-2.0.0.tgz", - "integrity": "sha512-lc1bnsSr4L4Bdif8Xb/qrtokGbq5zlsms/CYH8PP+WtCkGNF65DPiQY8vG3SakEdRn8Dlnm+gW/qWKKjS5sZzQ==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } }, - "filenamify": { + "node_modules/filenamify": { "version": "4.3.0", - "resolved": "https://registry.npmjs.org/filenamify/-/filenamify-4.3.0.tgz", - "integrity": "sha512-hcFKyUG57yWGAzu1CMt/dPzYZuv+jAJUT85bL8mrXvNe6hWj6yEHEc4EdcgiA6Z3oi1/9wXJdZPXF2dZNgwgOg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "filename-reserved-regex": "^2.0.0", "strip-outer": "^1.0.1", "trim-repeated": "^1.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "fill-range": { + "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, - "requires": { + "license": "MIT", + "dependencies": { "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" } }, - "finalhandler": { + "node_modules/finalhandler": { "version": "1.2.0", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", - "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "debug": "2.6.9", "encodeurl": "~1.0.2", "escape-html": "~1.0.3", @@ -11525,529 +9559,679 @@ "statuses": "2.0.1", "unpipe": "~1.0.0" }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/finalhandler/node_modules/debug": { + "version": "2.6.9", + "dev": true, + "license": "MIT", "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - } + "ms": "2.0.0" } }, - "find-cache-dir": { + "node_modules/finalhandler/node_modules/ms": { + "version": "2.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/find-cache-dir": { "version": "3.3.2", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", - "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "commondir": "^1.0.1", "make-dir": "^3.0.2", "pkg-dir": "^4.1.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/avajs/find-cache-dir?sponsor=1" } }, - "find-file-up": { + "node_modules/find-file-up": { "version": "0.1.3", - "resolved": "https://registry.npmjs.org/find-file-up/-/find-file-up-0.1.3.tgz", - "integrity": "sha512-mBxmNbVyjg1LQIIpgO8hN+ybWBgDQK8qjht+EbrTCGmmPV/sc7RF1i9stPTD6bpvXZywBdrwRYxhSdJv867L6A==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "fs-exists-sync": "^0.1.0", "resolve-dir": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" } }, - "find-parent-dir": { + "node_modules/find-parent-dir": { "version": "0.3.1", - "resolved": "https://registry.npmjs.org/find-parent-dir/-/find-parent-dir-0.3.1.tgz", - "integrity": "sha512-o4UcykWV/XN9wm+jMEtWLPlV8RXCZnMhQI6F6OdHeSez7iiJWePw8ijOlskJZMsaQoGR/b7dH6lO02HhaTN7+A==", - "dev": true + "dev": true, + "license": "MIT" }, - "find-pkg": { + "node_modules/find-pkg": { "version": "0.1.2", - "resolved": "https://registry.npmjs.org/find-pkg/-/find-pkg-0.1.2.tgz", - "integrity": "sha512-0rnQWcFwZr7eO0513HahrWafsc3CTFioEB7DRiEYCUM/70QXSY8f3mCST17HXLcPvEhzH/Ty/Bxd72ZZsr/yvw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "find-file-up": "^0.1.2" + }, + "engines": { + "node": ">=0.10.0" } }, - "find-process": { + "node_modules/find-process": { "version": "1.4.7", - "resolved": "https://registry.npmjs.org/find-process/-/find-process-1.4.7.tgz", - "integrity": "sha512-/U4CYp1214Xrp3u3Fqr9yNynUrr5Le4y0SsJh2lMDDSbpwYSz3M2SMWQC+wqcx79cN8PQtHQIL8KnuY9M66fdg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "chalk": "^4.0.0", "commander": "^5.1.0", "debug": "^4.1.1" }, + "bin": { + "find-process": "bin/find-process.js" + } + }, + "node_modules/find-process/node_modules/ansi-styles": { + "version": "4.3.0", + "dev": true, + "license": "MIT", "dependencies": { - "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, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "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, - "requires": { - "color-name": "~1.1.4" - } - }, - "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 - }, - "commander": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-5.1.0.tgz", - "integrity": "sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==", - "dev": true - }, - "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 - }, - "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, - "requires": { - "has-flag": "^4.0.0" - } - } + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/find-process/node_modules/chalk": { + "version": "4.1.2", + "dev": true, + "license": "MIT", + "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/find-process/node_modules/color-convert": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/find-process/node_modules/color-name": { + "version": "1.1.4", + "dev": true, + "license": "MIT" + }, + "node_modules/find-process/node_modules/commander": { + "version": "5.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 6" + } + }, + "node_modules/find-process/node_modules/has-flag": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/find-process/node_modules/supports-color": { + "version": "7.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "find-up": { + "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, - "requires": { + "license": "MIT", + "dependencies": { "locate-path": "^6.0.0", "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "findup-sync": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-0.3.0.tgz", - "integrity": "sha512-z8Nrwhi6wzxNMIbxlrTzuUW6KWuKkogZ/7OdDVq+0+kxn77KUH1nipx8iU6suqkHqc4y6n7a9A8IpmxY/pTjWg==", - "dev": true, - "requires": { - "glob": "~5.0.0" - }, - "dependencies": { - "glob": { - "version": "5.0.15", - "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", - "integrity": "sha512-c9IPMazfRITpmAAKi22dK1VKxGDX9ehhqfABDriL/lzO92xcUKEJPQHrVA/2YHSNFB4iFlykVmWvwo48nr3OxA==", - "dev": true, - "requires": { - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "2 || 3", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - } + "node_modules/findup-sync": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-5.0.0.tgz", + "integrity": "sha512-MzwXju70AuyflbgeOhzvQWAvvQdo1XL0A9bVvlXsYcFEBM87WR4OakL4OfZq+QRmr+duJubio+UtNQCPsVESzQ==", + "dev": true, + "dependencies": { + "detect-file": "^1.0.0", + "is-glob": "^4.0.3", + "micromatch": "^4.0.4", + "resolve-dir": "^1.0.1" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/findup-sync/node_modules/global-modules": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz", + "integrity": "sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==", + "dev": true, + "dependencies": { + "global-prefix": "^1.0.1", + "is-windows": "^1.0.1", + "resolve-dir": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/findup-sync/node_modules/global-prefix": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz", + "integrity": "sha512-5lsx1NUDHtSjfg0eHlmYvZKv8/nVqX4ckFbM+FrGcQ+04KWcWFo9P5MxPZYSzUvyzmdTbI7Eix8Q4IbELDqzKg==", + "dev": true, + "dependencies": { + "expand-tilde": "^2.0.2", + "homedir-polyfill": "^1.0.1", + "ini": "^1.3.4", + "is-windows": "^1.0.1", + "which": "^1.2.14" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/findup-sync/node_modules/resolve-dir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz", + "integrity": "sha512-R7uiTjECzvOsWSfdM0QKFNBVFcK27aHOUwdvK53BcW8zqnGdYp0Fbj82cy54+2A4P2tFM22J5kRfe1R+lM/1yg==", + "dev": true, + "dependencies": { + "expand-tilde": "^2.0.0", + "global-modules": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, - "fined": { + "node_modules/fined": { "version": "1.2.0", - "resolved": "https://registry.npmjs.org/fined/-/fined-1.2.0.tgz", - "integrity": "sha512-ZYDqPLGxDkDhDZBjZBb+oD1+j0rA4E0pXY50eplAAOPg2N/gUBSSk5IM1/QhPfyVo19lJ+CvXpqfvk+b2p/8Ng==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "expand-tilde": "^2.0.2", "is-plain-object": "^2.0.3", "object.defaults": "^1.1.0", "object.pick": "^1.2.0", "parse-filepath": "^1.0.1" }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/fined/node_modules/is-plain-object": { + "version": "2.0.4", + "dev": true, + "license": "MIT", "dependencies": { - "is-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", - "dev": true, - "requires": { - "isobject": "^3.0.1" - } - } + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" } }, - "flagged-respawn": { + "node_modules/flagged-respawn": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/flagged-respawn/-/flagged-respawn-1.0.1.tgz", - "integrity": "sha512-lNaHNVymajmk0OJMBn8fVUAU1BtDeKIqKoVhk4xAALB57aALg6b4W0MfJ/cUE0g9YBXy5XhSlPIpYIJ7HaY/3Q==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.10" + } }, - "flat": { + "node_modules/flat": { "version": "5.0.2", - "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", - "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", - "dev": true + "dev": true, + "license": "BSD-3-Clause", + "bin": { + "flat": "cli.js" + } }, - "flat-cache": { + "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, - "requires": { + "license": "MIT", + "dependencies": { "flatted": "^3.2.9", "keyv": "^4.5.3", "rimraf": "^3.0.2" }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/flat-cache/node_modules/keyv": { + "version": "4.5.4", + "dev": true, + "license": "MIT", "dependencies": { - "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, - "requires": { - "json-buffer": "3.0.1" - } - } + "json-buffer": "3.0.1" } }, - "flatted": { + "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 + "dev": true, + "license": "ISC" }, - "follow-redirects": { + "node_modules/follow-redirects": { "version": "1.15.6", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.6.tgz", - "integrity": "sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==", - "dev": true + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "license": "MIT", + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } }, - "for-in": { + "node_modules/for-in": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", - "integrity": "sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } }, - "for-own": { + "node_modules/for-own": { "version": "0.1.5", - "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz", - "integrity": "sha512-SKmowqGTJoPzLO1T0BBJpkfp3EMacCMOuH40hOUbrbzElVktk4DioXVM99QkLCyKoiuOmyjgcWMpVz2xjE7LZw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "for-in": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" } }, - "form-data": { + "node_modules/form-data": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", - "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "asynckit": "^0.4.0", "combined-stream": "^1.0.8", "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" } }, - "forwarded": { + "node_modules/forwarded": { "version": "0.2.0", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", - "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } }, - "fraction.js": { + "node_modules/fraction.js": { "version": "4.3.7", "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.3.7.tgz", "integrity": "sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==", - "dev": true + "dev": true, + "engines": { + "node": "*" + }, + "funding": { + "type": "patreon", + "url": "https://github.com/sponsors/rawify" + } }, - "fresh": { + "node_modules/fresh": { "version": "0.5.2", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } }, - "fs-constants": { + "node_modules/fs-constants": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", - "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", - "dev": true + "dev": true, + "license": "MIT" }, - "fs-exists-sync": { + "node_modules/fs-exists-sync": { "version": "0.1.0", - "resolved": "https://registry.npmjs.org/fs-exists-sync/-/fs-exists-sync-0.1.0.tgz", - "integrity": "sha512-cR/vflFyPZtrN6b38ZyWxpWdhlXrzZEBawlpBQMq7033xVY7/kg0GDMBK5jg8lDYQckdJ5x/YC88lM3C7VMsLg==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } }, - "fs-extra": { + "node_modules/fs-extra": { "version": "11.2.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.2.0.tgz", "integrity": "sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==", "dev": true, - "requires": { + "dependencies": { "graceful-fs": "^4.2.0", "jsonfile": "^6.0.1", "universalify": "^2.0.0" + }, + "engines": { + "node": ">=14.14" } }, - "fs-monkey": { + "node_modules/fs-monkey": { "version": "1.0.5", - "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.5.tgz", - "integrity": "sha512-8uMbBjrhzW76TYgEV27Y5E//W2f/lTFmx78P2w19FZSxarhI/798APGQyuGCwmkNxgwGRhrLfvWyLBvNtuOmew==", - "dev": true + "dev": true, + "license": "Unlicense" }, - "fs.realpath": { + "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 + "dev": true, + "license": "ISC" }, - "fsevents": { + "node_modules/fsevents": { "version": "2.3.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", - "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", "dev": true, - "optional": true + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } }, - "function-bind": { + "node_modules/function-bind": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true + "dev": true, + "license": "MIT" }, - "function.prototype.name": { + "node_modules/function.prototype.name": { "version": "1.1.5", - "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz", - "integrity": "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", "es-abstract": "^1.19.0", "functions-have-names": "^1.2.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "functions-have-names": { + "node_modules/functions-have-names": { "version": "1.2.3", - "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", - "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", - "dev": true + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "gensync": { + "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 + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } }, - "get-caller-file": { + "node_modules/get-caller-file": { "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true + "dev": true, + "license": "ISC", + "engines": { + "node": "6.* || 8.* || >= 10.*" + } }, - "get-intrinsic": { + "node_modules/get-intrinsic": { "version": "1.1.3", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.3.tgz", - "integrity": "sha512-QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "function-bind": "^1.1.1", "has": "^1.0.3", "has-symbols": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "get-package-type": { + "node_modules/get-package-type": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", - "dev": true + "dev": true, + "engines": { + "node": ">=8.0.0" + } }, - "get-port": { + "node_modules/get-port": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/get-port/-/get-port-5.1.1.tgz", "integrity": "sha512-g/Q1aTSDOxFpchXC4i8ZWvxA1lnPqx/JHqcpIw0/LX9T8x/GBbi6YnlN5nhaKIFkT8oFsscUKgDJYxfwfS6QsQ==", - "dev": true + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "get-stdin": { + "node_modules/get-stdin": { "version": "9.0.0", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-9.0.0.tgz", - "integrity": "sha512-dVKBjfWisLAicarI2Sf+JuBE/DghV4UzNAVe9yhEJuzeREd3JhOTE9cUaJTeSa77fsbQUK3pcOpJfM59+VKZaA==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "get-stream": { + "node_modules/get-stream": { "version": "5.2.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", - "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "pump": "^3.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "get-symbol-description": { + "node_modules/get-symbol-description": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", - "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "call-bind": "^1.0.2", "get-intrinsic": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "get-uri": { + "node_modules/get-uri": { "version": "6.0.3", "resolved": "https://registry.npmjs.org/get-uri/-/get-uri-6.0.3.tgz", "integrity": "sha512-BzUrJBS9EcUb4cFol8r4W3v1cPsSyajLSthNkz5BxbpDcHN5tIrM10E2eNvfnvBn3DaT3DUgx0OpsBKkaOpanw==", "dev": true, - "requires": { + "dependencies": { "basic-ftp": "^5.0.2", "data-uri-to-buffer": "^6.0.2", "debug": "^4.3.4", "fs-extra": "^11.2.0" + }, + "engines": { + "node": ">= 14" } }, - "getobject": { + "node_modules/getobject": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/getobject/-/getobject-1.0.2.tgz", - "integrity": "sha512-2zblDBaFcb3rB4rF77XVnuINOE2h2k/OnqXAiy0IrTxUfV1iFp3la33oAQVY9pCpWU268WFYVt2t71hlMuLsOg==", - "dev": true - }, - "gettext-parser": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/gettext-parser/-/gettext-parser-1.4.0.tgz", - "integrity": "sha512-sedZYLHlHeBop/gZ1jdg59hlUEcpcZJofLq2JFwJT1zTqAU3l2wFv6IsuwFHGqbiT9DWzMUW4/em2+hspnmMMA==", "dev": true, - "requires": { - "encoding": "^0.1.12", - "safe-buffer": "^5.1.1" + "engines": { + "node": ">=10" } }, - "glob": { + "node_modules/glob": { "version": "7.1.7", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", - "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", "dev": true, - "requires": { + "license": "ISC", + "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", "inherits": "2", "minimatch": "^3.0.4", "once": "^1.3.0", "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "glob-parent": { + "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, - "requires": { + "license": "ISC", + "dependencies": { "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" } }, - "glob-to-regexp": { + "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 + "dev": true, + "license": "BSD-2-Clause" }, - "global-modules": { + "node_modules/global-modules": { "version": "0.2.3", - "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-0.2.3.tgz", - "integrity": "sha512-JeXuCbvYzYXcwE6acL9V2bAOeSIGl4dD+iwLY9iUx2VBJJ80R18HCn+JCwHM9Oegdfya3lEkGCdaRkSyc10hDA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "global-prefix": "^0.1.4", "is-windows": "^0.2.0" }, - "dependencies": { - "is-windows": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-0.2.0.tgz", - "integrity": "sha512-n67eJYmXbniZB7RF4I/FTjK1s6RPOCTxhYrVYLRaCt3lF0mpWZPKr3T2LSZAqyjQsxR2qMmGYXXzK0YWwcPM1Q==", - "dev": true - } + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/global-modules/node_modules/is-windows": { + "version": "0.2.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" } }, - "global-prefix": { + "node_modules/global-prefix": { "version": "0.1.5", - "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-0.1.5.tgz", - "integrity": "sha512-gOPiyxcD9dJGCEArAhF4Hd0BAqvAe/JzERP7tYumE4yIkmIedPUVXcJFWbV3/p/ovIIvKjkrTk+f1UVkq7vvbw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "homedir-polyfill": "^1.0.0", "ini": "^1.3.4", "is-windows": "^0.2.0", "which": "^1.2.12" }, - "dependencies": { - "is-windows": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-0.2.0.tgz", - "integrity": "sha512-n67eJYmXbniZB7RF4I/FTjK1s6RPOCTxhYrVYLRaCt3lF0mpWZPKr3T2LSZAqyjQsxR2qMmGYXXzK0YWwcPM1Q==", - "dev": true - } + "engines": { + "node": ">=0.10.0" } }, - "globals": { + "node_modules/global-prefix/node_modules/is-windows": { + "version": "0.2.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "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 + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } }, - "globby": { + "node_modules/globby": { "version": "11.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", - "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", "dev": true, - "requires": { + "license": "MIT", + "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" } }, - "globjoin": { + "node_modules/globjoin": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/globjoin/-/globjoin-0.1.4.tgz", "integrity": "sha512-xYfnw62CKG8nLkZBfWbhWwDw02CHty86jfPcc2cr3ZfeuK9ysoVPPEUxf21bAD/rWAgk52SuBrLJlefNy8mvFg==", "dev": true }, - "got": { + "node_modules/got": { "version": "11.8.5", - "resolved": "https://registry.npmjs.org/got/-/got-11.8.5.tgz", - "integrity": "sha512-o0Je4NvQObAuZPHLFoRSkdG2lTgtcynqymzg2Vupdx6PorhaT5MCbIyXG6d4D94kk8ZG57QeosgdiqfJWhEhlQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@sindresorhus/is": "^4.0.0", "@szmarczak/http-timer": "^4.0.5", "@types/cacheable-request": "^6.0.1", @@ -12059,646 +10243,860 @@ "lowercase-keys": "^2.0.0", "p-cancelable": "^2.0.0", "responselike": "^2.0.0" + }, + "engines": { + "node": ">=10.19.0" + }, + "funding": { + "url": "https://github.com/sindresorhus/got?sponsor=1" } }, - "graceful-fs": { + "node_modules/graceful-fs": { "version": "4.2.10", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", - "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", - "dev": true + "dev": true, + "license": "ISC" }, - "graphemer": { + "node_modules/graphemer": { "version": "1.4.0", - "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", - "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", - "dev": true + "dev": true, + "license": "MIT" }, - "grunt": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/grunt/-/grunt-1.5.3.tgz", - "integrity": "sha512-mKwmo4X2d8/4c/BmcOETHek675uOqw0RuA/zy12jaspWqvTp4+ZeQF1W+OTpcbncnaBsfbQJ6l0l4j+Sn/GmaQ==", + "node_modules/grunt": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/grunt/-/grunt-1.6.1.tgz", + "integrity": "sha512-/ABUy3gYWu5iBmrUSRBP97JLpQUm0GgVveDCp6t3yRNIoltIYw7rEj3g5y1o2PGPR2vfTRGa7WC/LZHLTXnEzA==", "dev": true, - "requires": { - "dateformat": "~3.0.3", + "dependencies": { + "dateformat": "~4.6.2", "eventemitter2": "~0.4.13", "exit": "~0.1.2", - "findup-sync": "~0.3.0", + "findup-sync": "~5.0.0", "glob": "~7.1.6", "grunt-cli": "~1.4.3", "grunt-known-options": "~2.0.0", "grunt-legacy-log": "~3.0.0", "grunt-legacy-util": "~2.0.1", - "iconv-lite": "~0.4.13", + "iconv-lite": "~0.6.3", "js-yaml": "~3.14.0", "minimatch": "~3.0.4", - "mkdirp": "~1.0.4", - "nopt": "~3.0.6", - "rimraf": "~3.0.2" - }, - "dependencies": { - "minimatch": { - "version": "3.0.8", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.8.tgz", - "integrity": "sha512-6FsRAQsxQ61mw+qP1ZzbL9Bc78x2p5OqNgNpnoAFLTrX8n5Kxph0CsnhmKKNXTWjXqU5L0pGPR7hYk+XWZr60Q==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "dev": true - } + "nopt": "~3.0.6" + }, + "bin": { + "grunt": "bin/grunt" + }, + "engines": { + "node": ">=16" } }, - "grunt-cli": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/grunt-cli/-/grunt-cli-1.4.3.tgz", - "integrity": "sha512-9Dtx/AhVeB4LYzsViCjUQkd0Kw0McN2gYpdmGYKtE2a5Yt7v1Q+HYZVWhqXc/kGnxlMtqKDxSwotiGeFmkrCoQ==", + "node_modules/grunt-cli": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/grunt-cli/-/grunt-cli-1.5.0.tgz", + "integrity": "sha512-rILKAFoU0dzlf22SUfDtq2R1fosChXXlJM5j7wI6uoW8gwmXDXzbUvirlKZSYCdXl3LXFbR+8xyS+WFo+b6vlA==", "dev": true, - "requires": { + "dependencies": { "grunt-known-options": "~2.0.0", "interpret": "~1.1.0", "liftup": "~3.0.1", - "nopt": "~4.0.1", - "v8flags": "~3.2.0" + "nopt": "~5.0.0", + "v8flags": "^4.0.1" }, + "bin": { + "grunt": "bin/grunt" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/grunt-cli/node_modules/nopt": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", + "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", + "dev": true, "dependencies": { - "nopt": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-4.0.3.tgz", - "integrity": "sha512-CvaGwVMztSMJLOeXPrez7fyfObdZqNUK1cPAEzLHrTybIua9pMdmmPR5YwtfNftIOMv3DPUhFaxsZMNTQO20Kg==", - "dev": true, - "requires": { - "abbrev": "1", - "osenv": "^0.1.4" - } - } + "abbrev": "1" + }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": ">=6" } }, - "grunt-contrib-clean": { + "node_modules/grunt-contrib-clean": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/grunt-contrib-clean/-/grunt-contrib-clean-2.0.1.tgz", - "integrity": "sha512-uRvnXfhiZt8akb/ZRDHJpQQtkkVkqc/opWO4Po/9ehC2hPxgptB9S6JHDC/Nxswo4CJSM0iFPT/Iym3cEMWzKA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "async": "^3.2.3", "rimraf": "^2.6.2" }, + "engines": { + "node": ">=12" + }, + "peerDependencies": { + "grunt": ">=0.4.5" + } + }, + "node_modules/grunt-contrib-clean/node_modules/rimraf": { + "version": "2.7.1", + "dev": true, + "license": "ISC", "dependencies": { - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - } + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" } }, - "grunt-contrib-copy": { + "node_modules/grunt-contrib-copy": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/grunt-contrib-copy/-/grunt-contrib-copy-1.0.0.tgz", - "integrity": "sha512-gFRFUB0ZbLcjKb67Magz1yOHGBkyU6uL29hiEW1tdQ9gQt72NuMKIy/kS6dsCbV0cZ0maNCb0s6y+uT1FKU7jA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "chalk": "^1.1.1", "file-sync-cmp": "^0.1.0" }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/grunt-contrib-copy/node_modules/ansi-regex": { + "version": "2.1.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/grunt-contrib-copy/node_modules/ansi-styles": { + "version": "2.2.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/grunt-contrib-copy/node_modules/chalk": { + "version": "1.1.3", + "dev": true, + "license": "MIT", "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", - "dev": true - }, - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==", - "dev": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==", - "dev": true - } + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/grunt-contrib-copy/node_modules/strip-ansi": { + "version": "3.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, - "grunt-known-options": { + "node_modules/grunt-contrib-copy/node_modules/supports-color": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/grunt-known-options/-/grunt-known-options-2.0.0.tgz", - "integrity": "sha512-GD7cTz0I4SAede1/+pAbmJRG44zFLPipVtdL9o3vqx9IEyb7b4/Y3s7r6ofI3CchR5GvYJ+8buCSioDv5dQLiA==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/grunt-known-options": { + "version": "2.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } }, - "grunt-legacy-log": { + "node_modules/grunt-legacy-log": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/grunt-legacy-log/-/grunt-legacy-log-3.0.0.tgz", - "integrity": "sha512-GHZQzZmhyq0u3hr7aHW4qUH0xDzwp2YXldLPZTCjlOeGscAOWWPftZG3XioW8MasGp+OBRIu39LFx14SLjXRcA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "colors": "~1.1.2", "grunt-legacy-log-utils": "~2.1.0", "hooker": "~0.2.3", "lodash": "~4.17.19" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/grunt-legacy-log-utils": { + "version": "2.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "chalk": "~4.1.0", + "lodash": "~4.17.19" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/grunt-legacy-log-utils/node_modules/ansi-styles": { + "version": "4.3.0", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/grunt-legacy-log-utils/node_modules/chalk": { + "version": "4.1.2", + "dev": true, + "license": "MIT", + "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/grunt-legacy-log-utils/node_modules/color-convert": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/grunt-legacy-log-utils/node_modules/color-name": { + "version": "1.1.4", + "dev": true, + "license": "MIT" + }, + "node_modules/grunt-legacy-log-utils/node_modules/has-flag": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/grunt-legacy-log-utils/node_modules/supports-color": { + "version": "7.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/grunt-legacy-util": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "async": "~3.2.0", + "exit": "~0.1.2", + "getobject": "~1.0.0", + "hooker": "~0.2.3", + "lodash": "~4.17.21", + "underscore.string": "~3.3.5", + "which": "~2.0.2" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/grunt-legacy-util/node_modules/which": { + "version": "2.0.2", + "dev": true, + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/grunt/node_modules/grunt-cli": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/grunt-cli/-/grunt-cli-1.4.3.tgz", + "integrity": "sha512-9Dtx/AhVeB4LYzsViCjUQkd0Kw0McN2gYpdmGYKtE2a5Yt7v1Q+HYZVWhqXc/kGnxlMtqKDxSwotiGeFmkrCoQ==", + "dev": true, + "dependencies": { + "grunt-known-options": "~2.0.0", + "interpret": "~1.1.0", + "liftup": "~3.0.1", + "nopt": "~4.0.1", + "v8flags": "~3.2.0" + }, + "bin": { + "grunt": "bin/grunt" + }, + "engines": { + "node": ">=10" } }, - "grunt-legacy-log-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/grunt-legacy-log-utils/-/grunt-legacy-log-utils-2.1.0.tgz", - "integrity": "sha512-lwquaPXJtKQk0rUM1IQAop5noEpwFqOXasVoedLeNzaibf/OPWjKYvvdqnEHNmU+0T0CaReAXIbGo747ZD+Aaw==", + "node_modules/grunt/node_modules/grunt-cli/node_modules/nopt": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-4.0.3.tgz", + "integrity": "sha512-CvaGwVMztSMJLOeXPrez7fyfObdZqNUK1cPAEzLHrTybIua9pMdmmPR5YwtfNftIOMv3DPUhFaxsZMNTQO20Kg==", "dev": true, - "requires": { - "chalk": "~4.1.0", - "lodash": "~4.17.19" + "dependencies": { + "abbrev": "1", + "osenv": "^0.1.4" }, + "bin": { + "nopt": "bin/nopt.js" + } + }, + "node_modules/grunt/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": { - "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, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "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, - "requires": { - "color-name": "~1.1.4" - } - }, - "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 - }, - "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 - }, - "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, - "requires": { - "has-flag": "^4.0.0" - } - } + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, - "grunt-legacy-util": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/grunt-legacy-util/-/grunt-legacy-util-2.0.1.tgz", - "integrity": "sha512-2bQiD4fzXqX8rhNdXkAywCadeqiPiay0oQny77wA2F3WF4grPJXCvAcyoWUJV+po/b15glGkxuSiQCK299UC2w==", + "node_modules/grunt/node_modules/minimatch": { + "version": "3.0.8", "dev": true, - "requires": { - "async": "~3.2.0", - "exit": "~0.1.2", - "getobject": "~1.0.0", - "hooker": "~0.2.3", - "lodash": "~4.17.21", - "underscore.string": "~3.3.5", - "which": "~2.0.2" + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" }, + "engines": { + "node": "*" + } + }, + "node_modules/grunt/node_modules/v8flags": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/v8flags/-/v8flags-3.2.0.tgz", + "integrity": "sha512-mH8etigqMfiGWdeXpaaqGfs6BndypxusHHcv2qSHyZkGEznCd/qAXCWWRzeowtL54147cktFOC4P5y+kl8d8Jg==", + "dev": true, "dependencies": { - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - } + "homedir-polyfill": "^1.0.1" + }, + "engines": { + "node": ">= 0.10" } }, - "gzip-size": { + "node_modules/gzip-size": { "version": "6.0.0", - "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-6.0.0.tgz", - "integrity": "sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "duplexer": "^0.1.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "handle-thing": { + "node_modules/handle-thing": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", - "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==", - "dev": true + "dev": true, + "license": "MIT" }, - "hard-rejection": { + "node_modules/hard-rejection": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz", "integrity": "sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==", - "dev": true + "dev": true, + "engines": { + "node": ">=6" + } }, - "has": { + "node_modules/has": { "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4.0" } }, - "has-ansi": { + "node_modules/has-ansi": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "ansi-regex": "^2.0.0" }, - "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", - "dev": true - } + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-ansi/node_modules/ansi-regex": { + "version": "2.1.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" } }, - "has-bigints": { + "node_modules/has-bigints": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", - "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", - "dev": true + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "has-flag": { + "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 + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } }, - "has-property-descriptors": { + "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==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "get-intrinsic": "^1.1.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "has-symbols": { + "node_modules/has-symbols": { "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "has-tostringtag": { + "node_modules/has-tostringtag": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", - "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "header-case": { + "node_modules/header-case": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/header-case/-/header-case-2.0.4.tgz", "integrity": "sha512-H/vuk5TEEVZwrR0lp2zed9OCo1uAILMlx0JEMgC26rzyJJ3N1v6XkwHHXJQdR2doSjcGPM6OKPYoJgf0plJ11Q==", "dev": true, - "requires": { + "dependencies": { "capital-case": "^1.0.4", "tslib": "^2.0.3" } }, - "homedir-polyfill": { + "node_modules/homedir-polyfill": { "version": "1.0.3", - "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz", - "integrity": "sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "parse-passwd": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, - "hooker": { + "node_modules/hooker": { "version": "0.2.3", - "resolved": "https://registry.npmjs.org/hooker/-/hooker-0.2.3.tgz", - "integrity": "sha512-t+UerCsQviSymAInD01Pw+Dn/usmz1sRO+3Zk1+lx8eg+WKpD2ulcwWqHHL0+aseRBr+3+vIhiG1K1JTwaIcTA==", - "dev": true + "dev": true, + "engines": { + "node": "*" + } }, - "hosted-git-info": { + "node_modules/hosted-git-info": { "version": "2.8.9", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", - "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", - "dev": true + "dev": true, + "license": "ISC" }, - "hpack.js": { + "node_modules/hpack.js": { "version": "2.1.6", - "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", - "integrity": "sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "inherits": "^2.0.1", "obuf": "^1.0.0", "readable-stream": "^2.0.1", "wbuf": "^1.1.0" } }, - "html-encoding-sniffer": { + "node_modules/html-encoding-sniffer": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-3.0.0.tgz", - "integrity": "sha512-oWv4T4yJ52iKrufjnyZPkrN0CH3QnrUqdB6In1g5Fe1mia8GmF36gnfNySxoZtxD5+NmYw1EElVXiBk93UeskA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "whatwg-encoding": "^2.0.0" + }, + "engines": { + "node": ">=12" } }, - "html-entities": { + "node_modules/html-entities": { "version": "2.5.2", - "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.5.2.tgz", - "integrity": "sha512-K//PSRMQk4FZ78Kyau+mZurHn3FH0Vwr+H36eE0rPbeYkRRi9YxceYPhuN60UwWorxyKHhqoAJl2OFKa4BVtaA==", - "dev": true + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/mdevils" + }, + { + "type": "patreon", + "url": "https://patreon.com/mdevils" + } + ], + "license": "MIT" }, - "html-escaper": { + "node_modules/html-escaper": { "version": "2.0.2", - "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", - "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", - "dev": true + "dev": true, + "license": "MIT" }, - "html-tags": { + "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 + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "http-cache-semantics": { + "node_modules/http-cache-semantics": { "version": "4.1.1", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", - "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==", - "dev": true + "dev": true, + "license": "BSD-2-Clause" }, - "http-deceiver": { + "node_modules/http-deceiver": { "version": "1.2.7", - "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", - "integrity": "sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==", - "dev": true + "dev": true, + "license": "MIT" }, - "http-errors": { + "node_modules/http-errors": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", - "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "depd": "2.0.0", "inherits": "2.0.4", "setprototypeof": "1.2.0", "statuses": "2.0.1", "toidentifier": "1.0.1" + }, + "engines": { + "node": ">= 0.8" } }, - "http-link-header": { + "node_modules/http-link-header": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/http-link-header/-/http-link-header-1.1.3.tgz", "integrity": "sha512-3cZ0SRL8fb9MUlU3mKM61FcQvPfXx2dBrZW3Vbg5CXa8jFlK8OaEpePenLe1oEXQduhz8b0QjsqfS59QP4AJDQ==", - "dev": true + "dev": true, + "engines": { + "node": ">=6.0.0" + } }, - "http-parser-js": { + "node_modules/http-parser-js": { "version": "0.5.8", - "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.8.tgz", - "integrity": "sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==", - "dev": true + "dev": true, + "license": "MIT" }, - "http-proxy": { + "node_modules/http-proxy": { "version": "1.18.1", - "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", - "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "eventemitter3": "^4.0.0", "follow-redirects": "^1.0.0", "requires-port": "^1.0.0" + }, + "engines": { + "node": ">=8.0.0" } }, - "http-proxy-agent": { + "node_modules/http-proxy-agent": { "version": "7.0.2", "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz", "integrity": "sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==", "dev": true, - "requires": { + "dependencies": { "agent-base": "^7.1.0", "debug": "^4.3.4" }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/http-proxy-agent/node_modules/agent-base": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", + "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", + "dev": true, "dependencies": { - "agent-base": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", - "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", - "dev": true, - "requires": { - "debug": "^4.3.4" - } - } + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" } }, - "http-proxy-middleware": { + "node_modules/http-proxy-middleware": { "version": "2.0.6", - "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.6.tgz", - "integrity": "sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@types/http-proxy": "^1.17.8", "http-proxy": "^1.18.1", "is-glob": "^4.0.1", "is-plain-obj": "^3.0.0", "micromatch": "^4.0.2" + }, + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "@types/express": "^4.17.13" + }, + "peerDependenciesMeta": { + "@types/express": { + "optional": true + } } }, - "http2-wrapper": { + "node_modules/http2-wrapper": { "version": "1.0.3", - "resolved": "https://registry.npmjs.org/http2-wrapper/-/http2-wrapper-1.0.3.tgz", - "integrity": "sha512-V+23sDMr12Wnz7iTcDeJr3O6AIxlnvT/bmaAAAP/Xda35C90p9599p0F1eHR/N1KILWSoWVAiOMFjBBXaXSMxg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "quick-lru": "^5.1.1", "resolve-alpn": "^1.0.0" + }, + "engines": { + "node": ">=10.19.0" } }, - "https-proxy-agent": { + "node_modules/https-proxy-agent": { "version": "5.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "agent-base": "6", "debug": "4" + }, + "engines": { + "node": ">= 6" } }, - "human-signals": { + "node_modules/human-signals": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", - "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", - "dev": true + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=10.17.0" + } }, - "iconv-lite": { + "node_modules/iconv-lite": { "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" } }, - "icss-utils": { + "node_modules/icss-utils": { "version": "5.1.0", - "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", - "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", - "dev": true + "dev": true, + "license": "ISC", + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } }, - "ieee754": { + "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 + "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" + } + ], + "license": "BSD-3-Clause" }, - "ignore": { + "node_modules/ignore": { "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz", - "integrity": "sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 4" + } }, - "ignore-walk": { + "node_modules/ignore-walk": { "version": "4.0.1", - "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-4.0.1.tgz", - "integrity": "sha512-rzDQLaW4jQbh2YrOFlJdCtX8qgJTehFRYiUB2r1osqTeDzV/3+Jh8fz1oAPzUThf3iku8Ds4IDqawI5d8mUiQw==", "dev": true, - "requires": { + "license": "ISC", + "dependencies": { "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=10" } }, - "image-ssim": { + "node_modules/image-ssim": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/image-ssim/-/image-ssim-0.2.0.tgz", "integrity": "sha512-W7+sO6/yhxy83L0G7xR8YAc5Z5QFtYEXXRV6EaE8tuYBZJnA3gVgp3q7X7muhLZVodeb9UfvjSbwt9VJwjIYAg==", "dev": true }, - "immutable": { + "node_modules/immutable": { "version": "4.3.5", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.5.tgz", - "integrity": "sha512-8eabxkth9gZatlwl5TBuJnCsoTADlL6ftEr7A4qgdaTsPyreilDSnUk57SO+jfKcNtxPa22U5KK6DSeAYhpBJw==", - "dev": true + "dev": true, + "license": "MIT" }, - "import-fresh": { + "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, - "requires": { + "license": "MIT", + "dependencies": { "parent-module": "^1.0.0", "resolve-from": "^4.0.0" }, - "dependencies": { - "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": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "import-lazy": { + "node_modules/import-fresh/node_modules/resolve-from": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/import-lazy": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-4.0.0.tgz", "integrity": "sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw==", - "dev": true + "dev": true, + "engines": { + "node": ">=8" + } }, - "import-local": { + "node_modules/import-local": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", - "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "pkg-dir": "^4.2.0", "resolve-cwd": "^3.0.0" + }, + "bin": { + "import-local-fixture": "fixtures/cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "imurmurhash": { + "node_modules/imurmurhash": { "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.19" + } }, - "indent-string": { + "node_modules/indent-string": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "dev": true + "dev": true, + "engines": { + "node": ">=8" + } }, - "inflight": { + "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, - "requires": { + "license": "ISC", + "dependencies": { "once": "^1.3.0", "wrappy": "1" } }, - "inherits": { + "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 + "dev": true, + "license": "ISC" }, - "ini": { + "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 + "dev": true, + "license": "ISC" }, - "inquirer": { + "node_modules/inquirer": { "version": "7.3.3", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.3.3.tgz", - "integrity": "sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "ansi-escapes": "^4.2.1", "chalk": "^4.1.0", "cli-cursor": "^3.1.0", @@ -12713,640 +11111,739 @@ "strip-ansi": "^6.0.0", "through": "^2.3.6" }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/inquirer/node_modules/ansi-styles": { + "version": "4.3.0", + "dev": true, + "license": "MIT", "dependencies": { - "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, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "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, - "requires": { - "color-name": "~1.1.4" - } - }, - "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 - }, - "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 - }, - "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, - "requires": { - "has-flag": "^4.0.0" - } - } + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/inquirer/node_modules/chalk": { + "version": "4.1.2", + "dev": true, + "license": "MIT", + "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/inquirer/node_modules/color-convert": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/inquirer/node_modules/color-name": { + "version": "1.1.4", + "dev": true, + "license": "MIT" + }, + "node_modules/inquirer/node_modules/has-flag": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/inquirer/node_modules/supports-color": { + "version": "7.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "internal-slot": { + "node_modules/internal-slot": { "version": "1.0.3", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz", - "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "get-intrinsic": "^1.1.0", "has": "^1.0.3", "side-channel": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" } }, - "interpret": { + "node_modules/interpret": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.1.0.tgz", - "integrity": "sha512-CLM8SNMDu7C5psFCn6Wg/tgpj/bKAg7hc2gWqcuR9OD5Ft9PhBpIu8PLicPeis+xDd6YX2ncI8MCA64I9tftIA==", - "dev": true + "dev": true, + "license": "MIT" }, - "intl-messageformat": { + "node_modules/intl-messageformat": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/intl-messageformat/-/intl-messageformat-4.4.0.tgz", "integrity": "sha512-z+Bj2rS3LZSYU4+sNitdHrwnBhr0wO80ZJSW8EzKDBowwUe3Q/UsvgCGjrwa+HPzoGCLEb9HAjfJgo4j2Sac8w==", "dev": true, - "requires": { + "dependencies": { "intl-messageformat-parser": "^1.8.1" } }, - "intl-messageformat-parser": { + "node_modules/intl-messageformat-parser": { "version": "1.8.1", "resolved": "https://registry.npmjs.org/intl-messageformat-parser/-/intl-messageformat-parser-1.8.1.tgz", "integrity": "sha512-IMSCKVf0USrM/959vj3xac7s8f87sc+80Y/ipBzdKy4ifBv5Gsj2tZ41EAaURVg01QU71fYr77uA8Meh6kELbg==", + "deprecated": "We've written a new parser that's 6x faster and is backwards compatible. Please use @formatjs/icu-messageformat-parser", "dev": true }, - "ip-address": { + "node_modules/ip-address": { "version": "9.0.5", "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-9.0.5.tgz", "integrity": "sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g==", "dev": true, - "requires": { + "dependencies": { "jsbn": "1.1.0", "sprintf-js": "^1.1.3" }, - "dependencies": { - "sprintf-js": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz", - "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==", - "dev": true - } + "engines": { + "node": ">= 12" } }, - "ipaddr.js": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.2.0.tgz", - "integrity": "sha512-Ag3wB2o37wslZS19hZqorUnrnzSkpOVy+IiiDEiTqNubEYpYuHWIf6K4psgN2ZWKExS4xhVCrRVfb/wfW8fWJA==", + "node_modules/ip-address/node_modules/sprintf-js": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz", + "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==", "dev": true }, - "irregular-plurals": { + "node_modules/ipaddr.js": { + "version": "2.2.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10" + } + }, + "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 + "dev": true, + "engines": { + "node": ">=8" + } }, - "is-absolute": { + "node_modules/is-absolute": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-absolute/-/is-absolute-1.0.0.tgz", - "integrity": "sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "is-relative": "^1.0.0", "is-windows": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" } }, - "is-arrayish": { + "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 + "dev": true, + "license": "MIT" }, - "is-bigint": { + "node_modules/is-bigint": { "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", - "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "has-bigints": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "is-binary-path": { + "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, - "requires": { + "license": "MIT", + "dependencies": { "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" } }, - "is-boolean-object": { + "node_modules/is-boolean-object": { "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", - "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "call-bind": "^1.0.2", "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "is-buffer": { + "node_modules/is-buffer": { "version": "1.1.6", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", - "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", - "dev": true + "dev": true, + "license": "MIT" }, - "is-builtin-module": { + "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, - "requires": { + "dependencies": { "builtin-modules": "^3.3.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "is-callable": { + "node_modules/is-callable": { "version": "1.2.7", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", - "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "is-core-module": { + "node_modules/is-core-module": { "version": "2.10.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.10.0.tgz", - "integrity": "sha512-Erxj2n/LDAZ7H8WNJXd9tw38GYM3dv8rk8Zcs+jJuxYTW7sozH+SS8NtrSjVL1/vpLvWi1hxy96IzjJ3EHTJJg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "has": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "is-date-object": { + "node_modules/is-date-object": { "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", - "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "is-docker": { + "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 + "dev": true, + "license": "MIT", + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "is-extendable": { + "node_modules/is-extendable": { "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } }, - "is-extglob": { + "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 + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } }, - "is-fullwidth-code-point": { + "node_modules/is-fullwidth-code-point": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } }, - "is-generator-fn": { + "node_modules/is-generator-fn": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", - "dev": true + "dev": true, + "engines": { + "node": ">=6" + } }, - "is-glob": { + "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, - "requires": { + "license": "MIT", + "dependencies": { "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" } }, - "is-interactive": { + "node_modules/is-interactive": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", - "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } }, - "is-negative-zero": { + "node_modules/is-negative-zero": { "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", - "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "is-number": { + "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 + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } }, - "is-number-object": { + "node_modules/is-number-object": { "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", - "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "is-obj": { + "node_modules/is-obj": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", - "dev": true + "dev": true, + "engines": { + "node": ">=8" + } }, - "is-path-cwd": { + "node_modules/is-path-cwd": { "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz", - "integrity": "sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } }, - "is-path-in-cwd": { + "node_modules/is-path-in-cwd": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-2.1.0.tgz", - "integrity": "sha512-rNocXHgipO+rvnP6dk3zI20RpOtrAM/kzbB258Uw5BWr3TpXi861yzjo16Dn4hUox07iw5AyeMLHWsujkjzvRQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "is-path-inside": "^2.1.0" + }, + "engines": { + "node": ">=6" } }, - "is-path-inside": { + "node_modules/is-path-inside": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-2.1.0.tgz", - "integrity": "sha512-wiyhTzfDWsvwAW53OBWF5zuvaOGlZ6PwYxAbPVDhpm+gM09xKQGjBq/8uYN12aDvMxnAnq3dxTyoSoRNmg5YFg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "path-is-inside": "^1.0.2" + }, + "engines": { + "node": ">=6" } }, - "is-plain-obj": { + "node_modules/is-plain-obj": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", - "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "is-plain-object": { + "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 + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, - "is-potential-custom-element-name": { + "node_modules/is-potential-custom-element-name": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", - "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==", - "dev": true + "dev": true, + "license": "MIT" }, - "is-regex": { + "node_modules/is-regex": { "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", - "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "call-bind": "^1.0.2", "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "is-relative": { + "node_modules/is-relative": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-1.0.0.tgz", - "integrity": "sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "is-unc-path": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, - "is-shared-array-buffer": { + "node_modules/is-shared-array-buffer": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", - "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "is-stream": { + "node_modules/is-stream": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", - "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "is-string": { + "node_modules/is-string": { "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", - "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "is-symbol": { + "node_modules/is-symbol": { "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", - "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "is-typedarray": { + "node_modules/is-typedarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==", "dev": true }, - "is-unc-path": { + "node_modules/is-unc-path": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-unc-path/-/is-unc-path-1.0.0.tgz", - "integrity": "sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "unc-path-regex": "^0.1.2" + }, + "engines": { + "node": ">=0.10.0" } }, - "is-unicode-supported": { + "node_modules/is-unicode-supported": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", - "dev": true + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "is-weakref": { + "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, - "requires": { + "license": "MIT", + "dependencies": { "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "is-windows": { + "node_modules/is-windows": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", - "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } }, - "is-wsl": { + "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, - "requires": { + "license": "MIT", + "dependencies": { "is-docker": "^2.0.0" + }, + "engines": { + "node": ">=8" } }, - "isarray": { + "node_modules/isarray": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", - "dev": true + "dev": true, + "license": "MIT" }, - "isexe": { + "node_modules/isexe": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true + "dev": true, + "license": "ISC" }, - "isobject": { + "node_modules/isobject": { "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } }, - "istanbul-lib-coverage": { + "node_modules/istanbul-lib-coverage": { "version": "3.2.2", "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==", - "dev": true + "dev": true, + "engines": { + "node": ">=8" + } }, - "istanbul-lib-instrument": { + "node_modules/istanbul-lib-instrument": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", "dev": true, - "requires": { + "dependencies": { "@babel/core": "^7.12.3", "@babel/parser": "^7.14.7", "@istanbuljs/schema": "^0.1.2", "istanbul-lib-coverage": "^3.2.0", "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" } }, - "istanbul-lib-report": { + "node_modules/istanbul-lib-report": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", "dev": true, - "requires": { + "dependencies": { "istanbul-lib-coverage": "^3.0.0", "make-dir": "^4.0.0", "supports-color": "^7.1.0" }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-report/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/istanbul-lib-report/node_modules/make-dir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", + "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", + "dev": true, "dependencies": { - "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 - }, - "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, - "requires": { - "yallist": "^4.0.0" - } - }, - "make-dir": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", - "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", - "dev": true, - "requires": { - "semver": "^7.5.3" - } - }, - "semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "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, - "requires": { - "has-flag": "^4.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - } + "semver": "^7.5.3" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/istanbul-lib-report/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/istanbul-lib-report/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" } }, - "istanbul-lib-source-maps": { + "node_modules/istanbul-lib-source-maps": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", "dev": true, - "requires": { + "dependencies": { "debug": "^4.1.1", "istanbul-lib-coverage": "^3.0.0", "source-map": "^0.6.1" }, - "dependencies": { - "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 - } + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-source-maps/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, + "engines": { + "node": ">=0.10.0" } }, - "istanbul-reports": { + "node_modules/istanbul-reports": { "version": "3.1.7", "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.7.tgz", "integrity": "sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==", "dev": true, - "requires": { + "dependencies": { "html-escaper": "^2.0.0", "istanbul-lib-report": "^3.0.0" + }, + "engines": { + "node": ">=8" } }, - "jest": { + "node_modules/jest": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/jest/-/jest-29.7.0.tgz", "integrity": "sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==", "dev": true, - "requires": { + "dependencies": { "@jest/core": "^29.7.0", "@jest/types": "^29.6.3", "import-local": "^3.0.2", "jest-cli": "^29.7.0" }, - "dependencies": { - "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, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "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, - "requires": { - "color-name": "~1.1.4" - } - }, - "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 - }, - "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 - }, - "jest-cli": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-29.7.0.tgz", - "integrity": "sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==", - "dev": true, - "requires": { - "@jest/core": "^29.7.0", - "@jest/test-result": "^29.7.0", - "@jest/types": "^29.6.3", - "chalk": "^4.0.0", - "create-jest": "^29.7.0", - "exit": "^0.1.2", - "import-local": "^3.0.2", - "jest-config": "^29.7.0", - "jest-util": "^29.7.0", - "jest-validate": "^29.7.0", - "yargs": "^17.3.1" - } - }, - "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, - "requires": { - "has-flag": "^4.0.0" - } + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true } } }, - "jest-changed-files": { + "node_modules/jest-changed-files": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-29.7.0.tgz", "integrity": "sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w==", "dev": true, - "requires": { + "dependencies": { "execa": "^5.0.0", "jest-util": "^29.7.0", "p-limit": "^3.1.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "jest-circus": { + "node_modules/jest-circus": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-29.7.0.tgz", "integrity": "sha512-3E1nCMgipcTkCocFwM90XXQab9bS+GMsjdpmPrlelaxwD93Ad8iVEjX/vvHPdLPnFf+L40u+5+iutRdA1N9myw==", "dev": true, - "requires": { + "dependencies": { "@jest/environment": "^29.7.0", "@jest/expect": "^29.7.0", "@jest/test-result": "^29.7.0", @@ -13368,64 +11865,189 @@ "slash": "^3.0.0", "stack-utils": "^2.0.3" }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-circus/node_modules/ansi-styles": { + "version": "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/jest-circus/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": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "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, - "requires": { - "color-name": "~1.1.4" - } - }, - "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 - }, - "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 - }, - "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, - "requires": { - "has-flag": "^4.0.0" - } + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-circus/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/jest-circus/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/jest-circus/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/jest-circus/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/jest-cli": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-29.7.0.tgz", + "integrity": "sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==", + "dev": true, + "dependencies": { + "@jest/core": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/types": "^29.6.3", + "chalk": "^4.0.0", + "create-jest": "^29.7.0", + "exit": "^0.1.2", + "import-local": "^3.0.2", + "jest-config": "^29.7.0", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "yargs": "^17.3.1" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true } } }, - "jest-config": { + "node_modules/jest-cli/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/jest-cli/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/jest-cli/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/jest-cli/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/jest-cli/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/jest-cli/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/jest-config": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-29.7.0.tgz", "integrity": "sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ==", "dev": true, - "requires": { + "dependencies": { "@babel/core": "^7.11.6", "@jest/test-sequencer": "^29.7.0", "@jest/types": "^29.6.3", @@ -13449,64 +12071,96 @@ "slash": "^3.0.0", "strip-json-comments": "^3.1.1" }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@types/node": "*", + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "ts-node": { + "optional": true + } + } + }, + "node_modules/jest-config/node_modules/ansi-styles": { + "version": "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/jest-config/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/jest-config/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/jest-config/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/jest-config/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/jest-config/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": { - "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, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "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, - "requires": { - "color-name": "~1.1.4" - } - }, - "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 - }, - "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 - }, - "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, - "requires": { - "has-flag": "^4.0.0" - } - } + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "jest-dev-server": { + "node_modules/jest-dev-server": { "version": "9.0.2", - "resolved": "https://registry.npmjs.org/jest-dev-server/-/jest-dev-server-9.0.2.tgz", - "integrity": "sha512-Zc/JB0IlNNrpXkhBw+h86cGrde/Mey52KvF+FER2eyrtYJTHObOwW7Iarxm3rPyTKby5+3Y2QZtl8pRz/5GCxg==", "dev": true, - "requires": { + "dependencies": { "chalk": "^4.1.2", "cwd": "^0.10.0", "find-process": "^1.4.7", @@ -13515,200 +12169,262 @@ "tree-kill": "^1.2.2", "wait-on": "^7.2.0" }, + "engines": { + "node": ">=16" + } + }, + "node_modules/jest-dev-server/node_modules/ansi-styles": { + "version": "4.3.0", + "dev": true, + "license": "MIT", "dependencies": { - "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, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "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, - "requires": { - "color-name": "~1.1.4" - } - }, - "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 - }, - "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 - }, - "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, - "requires": { - "has-flag": "^4.0.0" - } - } + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-dev-server/node_modules/chalk": { + "version": "4.1.2", + "dev": true, + "license": "MIT", + "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/jest-dev-server/node_modules/color-convert": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-dev-server/node_modules/color-name": { + "version": "1.1.4", + "dev": true, + "license": "MIT" + }, + "node_modules/jest-dev-server/node_modules/has-flag": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-dev-server/node_modules/supports-color": { + "version": "7.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "jest-diff": { + "node_modules/jest-diff": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.7.0.tgz", "integrity": "sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==", "dev": true, - "requires": { + "dependencies": { "chalk": "^4.0.0", "diff-sequences": "^29.6.3", "jest-get-type": "^29.6.3", "pretty-format": "^29.7.0" }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-diff/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, "dependencies": { - "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, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "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, - "requires": { - "color-name": "~1.1.4" - } - }, - "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 - }, - "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 - }, - "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, - "requires": { - "has-flag": "^4.0.0" - } - } + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-diff/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/jest-diff/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/jest-diff/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/jest-diff/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/jest-diff/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" } }, - "jest-docblock": { + "node_modules/jest-docblock": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.7.0.tgz", "integrity": "sha512-q617Auw3A612guyaFgsbFeYpNP5t2aoUNLwBUbc/0kD1R4t9ixDbyFTHd1nok4epoVFpr7PmeWHrhvuV3XaJ4g==", "dev": true, - "requires": { + "dependencies": { "detect-newline": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "jest-each": { + "node_modules/jest-each": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-29.7.0.tgz", "integrity": "sha512-gns+Er14+ZrEoC5fhOfYCY1LOHHr0TI+rQUHZS8Ttw2l7gl+80eHc/gFf2Ktkw0+SIACDTeWvpFcv3B04VembQ==", "dev": true, - "requires": { + "dependencies": { "@jest/types": "^29.6.3", "chalk": "^4.0.0", "jest-get-type": "^29.6.3", "jest-util": "^29.7.0", "pretty-format": "^29.7.0" }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-each/node_modules/ansi-styles": { + "version": "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/jest-each/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": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "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, - "requires": { - "color-name": "~1.1.4" - } - }, - "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 - }, - "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 - }, - "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, - "requires": { - "has-flag": "^4.0.0" - } - } + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-each/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/jest-each/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/jest-each/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/jest-each/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" } }, - "jest-environment-jsdom": { + "node_modules/jest-environment-jsdom": { "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-29.7.0.tgz", - "integrity": "sha512-k9iQbsf9OyOfdzWH8HDmrRT0gSIcX+FLNW7IQq94tFX0gynPwqDTW0Ho6iMVNjGz/nb+l/vW3dWM2bbLLpkbXA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@jest/environment": "^29.7.0", "@jest/fake-timers": "^29.7.0", "@jest/types": "^29.6.3", @@ -13717,127 +12433,173 @@ "jest-mock": "^29.7.0", "jest-util": "^29.7.0", "jsdom": "^20.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "canvas": "^2.5.0" + }, + "peerDependenciesMeta": { + "canvas": { + "optional": true + } } }, - "jest-environment-node": { + "node_modules/jest-environment-node": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.7.0.tgz", "integrity": "sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw==", "dev": true, - "requires": { + "dependencies": { "@jest/environment": "^29.7.0", "@jest/fake-timers": "^29.7.0", "@jest/types": "^29.6.3", "@types/node": "*", "jest-mock": "^29.7.0", "jest-util": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "jest-get-type": { + "node_modules/jest-get-type": { "version": "29.6.3", "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.6.3.tgz", "integrity": "sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==", - "dev": true + "dev": true, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } }, - "jest-haste-map": { + "node_modules/jest-haste-map": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.7.0.tgz", "integrity": "sha512-fP8u2pyfqx0K1rGn1R9pyE0/KTn+G7PxktWidOBTqFPLYX0b9ksaMFkhK5vrS3DVun09pckLdlx90QthlW7AmA==", "dev": true, - "requires": { + "dependencies": { "@jest/types": "^29.6.3", "@types/graceful-fs": "^4.1.3", "@types/node": "*", "anymatch": "^3.0.3", "fb-watchman": "^2.0.0", - "fsevents": "^2.3.2", "graceful-fs": "^4.2.9", "jest-regex-util": "^29.6.3", "jest-util": "^29.7.0", "jest-worker": "^29.7.0", "micromatch": "^4.0.4", "walker": "^1.0.8" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "optionalDependencies": { + "fsevents": "^2.3.2" } }, - "jest-leak-detector": { + "node_modules/jest-leak-detector": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-29.7.0.tgz", "integrity": "sha512-kYA8IJcSYtST2BY9I+SMC32nDpBT3J2NvWJx8+JCuCdl/CR1I4EKUJROiP8XtCcxqgTTBGJNdbB1A8XRKbTetw==", "dev": true, - "requires": { + "dependencies": { "jest-get-type": "^29.6.3", "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "jest-matcher-utils": { + "node_modules/jest-matcher-utils": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.7.0.tgz", "integrity": "sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g==", "dev": true, - "requires": { + "dependencies": { "chalk": "^4.0.0", "jest-diff": "^29.7.0", "jest-get-type": "^29.6.3", "pretty-format": "^29.7.0" }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-matcher-utils/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, "dependencies": { - "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, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "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, - "requires": { - "color-name": "~1.1.4" - } - }, - "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 - }, - "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 - }, - "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, - "requires": { - "has-flag": "^4.0.0" - } - } + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-matcher-utils/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/jest-matcher-utils/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/jest-matcher-utils/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/jest-matcher-utils/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" } }, - "jest-message-util": { + "node_modules/jest-matcher-utils/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/jest-message-util": { "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.7.0.tgz", - "integrity": "sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@babel/code-frame": "^7.12.13", "@jest/types": "^29.6.3", "@types/stack-utils": "^2.0.0", @@ -13848,87 +12610,119 @@ "slash": "^3.0.0", "stack-utils": "^2.0.3" }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-message-util/node_modules/ansi-styles": { + "version": "4.3.0", + "dev": true, + "license": "MIT", "dependencies": { - "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, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "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, - "requires": { - "color-name": "~1.1.4" - } - }, - "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 - }, - "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 - }, - "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, - "requires": { - "has-flag": "^4.0.0" - } - } + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-message-util/node_modules/chalk": { + "version": "4.1.2", + "dev": true, + "license": "MIT", + "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/jest-message-util/node_modules/color-convert": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-message-util/node_modules/color-name": { + "version": "1.1.4", + "dev": true, + "license": "MIT" + }, + "node_modules/jest-message-util/node_modules/has-flag": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-message-util/node_modules/supports-color": { + "version": "7.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "jest-mock": { + "node_modules/jest-mock": { "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.7.0.tgz", - "integrity": "sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@jest/types": "^29.6.3", "@types/node": "*", "jest-util": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "jest-pnp-resolver": { + "node_modules/jest-pnp-resolver": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", - "dev": true + "dev": true, + "engines": { + "node": ">=6" + }, + "peerDependencies": { + "jest-resolve": "*" + }, + "peerDependenciesMeta": { + "jest-resolve": { + "optional": true + } + } }, - "jest-regex-util": { + "node_modules/jest-regex-util": { "version": "29.6.3", "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.6.3.tgz", "integrity": "sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg==", - "dev": true + "dev": true, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } }, - "jest-resolve": { + "node_modules/jest-resolve": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-29.7.0.tgz", "integrity": "sha512-IOVhZSrg+UvVAshDSDtHyFCCBUl/Q3AAJv8iZ6ZjnZ74xzvwuzLXid9IIIPgTnY62SJjfuupMKZsZQRsCvxEgA==", "dev": true, - "requires": { + "dependencies": { "chalk": "^4.0.0", "graceful-fs": "^4.2.9", "jest-haste-map": "^29.7.0", @@ -13939,74 +12733,99 @@ "resolve.exports": "^2.0.0", "slash": "^3.0.0" }, - "dependencies": { - "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, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "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, - "requires": { - "color-name": "~1.1.4" - } - }, - "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 - }, - "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 - }, - "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, - "requires": { - "has-flag": "^4.0.0" - } - } + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "jest-resolve-dependencies": { + "node_modules/jest-resolve-dependencies": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-29.7.0.tgz", "integrity": "sha512-un0zD/6qxJ+S0et7WxeI3H5XSe9lTBBR7bOHCHXkKR6luG5mwDDlIzVQ0V5cZCuoTgEdcdwzTghYkTWfubi+nA==", "dev": true, - "requires": { + "dependencies": { "jest-regex-util": "^29.6.3", "jest-snapshot": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-resolve/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/jest-resolve/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/jest-resolve/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/jest-resolve/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/jest-resolve/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/jest-resolve/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" } }, - "jest-runner": { + "node_modules/jest-runner": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-29.7.0.tgz", "integrity": "sha512-fsc4N6cPCAahybGBfTRcq5wFR6fpLznMg47sY5aDpsoejOcVYFb07AHuSnR0liMcPTgBsA3ZJL6kFOjPdoNipQ==", "dev": true, - "requires": { + "dependencies": { "@jest/console": "^29.7.0", "@jest/environment": "^29.7.0", "@jest/test-result": "^29.7.0", @@ -14029,64 +12848,86 @@ "p-limit": "^3.1.0", "source-map-support": "0.5.13" }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-runner/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": { - "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, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "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, - "requires": { - "color-name": "~1.1.4" - } - }, - "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 - }, - "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 - }, - "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, - "requires": { - "has-flag": "^4.0.0" - } - } + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-runner/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/jest-runner/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/jest-runner/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/jest-runner/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/jest-runner/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" } }, - "jest-runtime": { + "node_modules/jest-runtime": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-29.7.0.tgz", "integrity": "sha512-gUnLjgwdGqW7B4LvOIkbKs9WGbn+QLqRQQ9juC6HndeDiezIwhDP+mhMwHWCEcfQ5RUXa6OPnFF8BJh5xegwwQ==", "dev": true, - "requires": { + "dependencies": { "@jest/environment": "^29.7.0", "@jest/fake-timers": "^29.7.0", "@jest/globals": "^29.7.0", @@ -14110,64 +12951,86 @@ "slash": "^3.0.0", "strip-bom": "^4.0.0" }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-runtime/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": { - "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, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "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, - "requires": { - "color-name": "~1.1.4" - } - }, - "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 - }, - "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 - }, - "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, - "requires": { - "has-flag": "^4.0.0" - } - } + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-runtime/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/jest-runtime/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/jest-runtime/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/jest-runtime/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/jest-runtime/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" } }, - "jest-snapshot": { + "node_modules/jest-snapshot": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-29.7.0.tgz", "integrity": "sha512-Rm0BMWtxBcioHr1/OX5YCP8Uov4riHvKPknOGs804Zg9JGZgmIBkbtlxJC/7Z4msKYVbIJtfU+tKb8xlYNfdkw==", "dev": true, - "requires": { + "dependencies": { "@babel/core": "^7.11.6", "@babel/generator": "^7.7.2", "@babel/plugin-syntax-jsx": "^7.7.2", @@ -14189,88 +13052,97 @@ "pretty-format": "^29.7.0", "semver": "^7.5.3" }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-snapshot/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, "dependencies": { - "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, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "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, - "requires": { - "color-name": "~1.1.4" - } - }, - "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 - }, - "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 - }, - "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, - "requires": { - "yallist": "^4.0.0" - } - }, - "semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "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, - "requires": { - "has-flag": "^4.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - } + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-snapshot/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/jest-snapshot/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/jest-snapshot/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/jest-snapshot/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/jest-snapshot/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/jest-snapshot/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" } }, - "jest-util": { + "node_modules/jest-util": { "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.7.0.tgz", - "integrity": "sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@jest/types": "^29.6.3", "@types/node": "*", "chalk": "^4.0.0", @@ -14278,129 +13150,167 @@ "graceful-fs": "^4.2.9", "picomatch": "^2.2.3" }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-util/node_modules/ansi-styles": { + "version": "4.3.0", + "dev": true, + "license": "MIT", "dependencies": { - "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, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "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, - "requires": { - "color-name": "~1.1.4" - } - }, - "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 - }, - "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 - }, - "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, - "requires": { - "has-flag": "^4.0.0" - } - } + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "jest-validate": { + "node_modules/jest-util/node_modules/chalk": { + "version": "4.1.2", + "dev": true, + "license": "MIT", + "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/jest-util/node_modules/color-convert": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-util/node_modules/color-name": { + "version": "1.1.4", + "dev": true, + "license": "MIT" + }, + "node_modules/jest-util/node_modules/has-flag": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-util/node_modules/supports-color": { + "version": "7.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-validate": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-29.7.0.tgz", "integrity": "sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw==", "dev": true, - "requires": { - "@jest/types": "^29.6.3", - "camelcase": "^6.2.0", - "chalk": "^4.0.0", - "jest-get-type": "^29.6.3", - "leven": "^3.1.0", - "pretty-format": "^29.7.0" - }, "dependencies": { - "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, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "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, - "requires": { - "color-name": "~1.1.4" - } - }, - "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 - }, - "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 - }, - "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, - "requires": { - "has-flag": "^4.0.0" - } - } + "@jest/types": "^29.6.3", + "camelcase": "^6.2.0", + "chalk": "^4.0.0", + "jest-get-type": "^29.6.3", + "leven": "^3.1.0", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-validate/node_modules/ansi-styles": { + "version": "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/jest-validate/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/jest-validate/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/jest-validate/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/jest-validate/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/jest-validate/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" } }, - "jest-watcher": { + "node_modules/jest-watcher": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-29.7.0.tgz", "integrity": "sha512-49Fg7WXkU3Vl2h6LbLtMQ/HyB6rXSIX7SqvBLQmssRBGN9I0PNvPmAmCWSOY6SOvrjhI/F7/bGAv9RtnsPA03g==", "dev": true, - "requires": { + "dependencies": { "@jest/test-result": "^29.7.0", "@jest/types": "^29.6.3", "@types/node": "*", @@ -14410,93 +13320,124 @@ "jest-util": "^29.7.0", "string-length": "^4.0.1" }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-watcher/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": { - "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, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "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, - "requires": { - "color-name": "~1.1.4" - } - }, - "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 - }, - "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 - }, - "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, - "requires": { - "has-flag": "^4.0.0" - } - } + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "jest-worker": { + "node_modules/jest-watcher/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/jest-watcher/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/jest-watcher/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/jest-watcher/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/jest-watcher/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/jest-worker": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.7.0.tgz", "integrity": "sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==", "dev": true, - "requires": { + "dependencies": { "@types/node": "*", "jest-util": "^29.7.0", "merge-stream": "^2.0.0", "supports-color": "^8.0.0" }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-worker/node_modules/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/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, "dependencies": { - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "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, - "requires": { - "has-flag": "^4.0.0" - } - } + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "joi": { + "node_modules/joi": { "version": "17.13.0", - "resolved": "https://registry.npmjs.org/joi/-/joi-17.13.0.tgz", - "integrity": "sha512-9qcrTyoBmFZRNHeVP4edKqIUEgFzq7MHvTNSDuHSqkpOPtiBkgNgcmTSqmiw1kw9tdKaiddvIDv/eCJDxmqWCA==", "dev": true, - "requires": { + "license": "BSD-3-Clause", + "dependencies": { "@hapi/hoek": "^9.3.0", "@hapi/topo": "^5.1.0", "@sideway/address": "^4.1.5", @@ -14504,52 +13445,58 @@ "@sideway/pinpoint": "^2.0.0" } }, - "jpeg-js": { + "node_modules/jpeg-js": { "version": "0.4.4", "resolved": "https://registry.npmjs.org/jpeg-js/-/jpeg-js-0.4.4.tgz", "integrity": "sha512-WZzeDOEtTOBK4Mdsar0IqEU5sMr3vSV2RqkAIzUEV2BHnUfKGyswWFPFwK5EeDo93K3FohSHbLAjj0s1Wzd+dg==", "dev": true }, - "js-library-detector": { + "node_modules/js-library-detector": { "version": "6.7.0", "resolved": "https://registry.npmjs.org/js-library-detector/-/js-library-detector-6.7.0.tgz", "integrity": "sha512-c80Qupofp43y4cJ7+8TTDN/AsDwLi5oOm/plBrWI+iQt485vKXCco+yVmOwEgdo9VOdsYTuV0UlTeetVPTriXA==", - "dev": true + "dev": true, + "engines": { + "node": ">=12" + } }, - "js-tokens": { + "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==", - "dev": true + "dev": true, + "license": "MIT" }, - "js-yaml": { + "node_modules/js-yaml": { "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "argparse": "^1.0.7", "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "jsbn": { + "node_modules/jsbn": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-1.1.0.tgz", "integrity": "sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==", "dev": true }, - "jsdoc-type-pratt-parser": { - "version": "2.2.5", - "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-2.2.5.tgz", - "integrity": "sha512-2a6eRxSxp1BW040hFvaJxhsCMI9lT8QB8t14t+NY5tC5rckIR0U9cr2tjOeaFirmEOy6MHvmJnY7zTBHq431Lw==", - "dev": true + "node_modules/jsdoc-type-pratt-parser": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-4.0.0.tgz", + "integrity": "sha512-YtOli5Cmzy3q4dP26GraSOeAhqecewG04hoO8DY56CH4KJ9Fvv5qKWUCCo3HZob7esJQHCv6/+bnTy72xZZaVQ==", + "dev": true, + "engines": { + "node": ">=12.0.0" + } }, - "jsdom": { + "node_modules/jsdom": { "version": "20.0.3", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-20.0.3.tgz", - "integrity": "sha512-SYhBvTh89tTfCD/CRdSOm13mOBa42iTaTyfyEWBdKcGdPxPtLFBXuHR8XHb33YNYaP+lLbmSvBTsnoesCNJEsQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "abab": "^2.0.6", "acorn": "^8.8.1", "acorn-globals": "^7.0.0", @@ -14577,222 +13524,269 @@ "ws": "^8.11.0", "xml-name-validator": "^4.0.0" }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "canvas": "^2.5.0" + }, + "peerDependenciesMeta": { + "canvas": { + "optional": true + } + } + }, + "node_modules/jsdom/node_modules/http-proxy-agent": { + "version": "5.0.0", + "dev": true, + "license": "MIT", "dependencies": { - "http-proxy-agent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", - "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", - "dev": true, - "requires": { - "@tootallnate/once": "2", - "agent-base": "6", - "debug": "4" - } - }, - "tr46": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-3.0.0.tgz", - "integrity": "sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==", - "dev": true, - "requires": { - "punycode": "^2.1.1" - } - }, - "webidl-conversions": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", - "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", - "dev": true - }, - "whatwg-url": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-11.0.0.tgz", - "integrity": "sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==", - "dev": true, - "requires": { - "tr46": "^3.0.0", - "webidl-conversions": "^7.0.0" - } + "@tootallnate/once": "2", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/jsdom/node_modules/tr46": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/jsdom/node_modules/webidl-conversions": { + "version": "7.0.0", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=12" + } + }, + "node_modules/jsdom/node_modules/whatwg-url": { + "version": "11.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "tr46": "^3.0.0", + "webidl-conversions": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/jsdom/node_modules/ws": { + "version": "8.16.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true }, - "ws": { - "version": "8.16.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.16.0.tgz", - "integrity": "sha512-HS0c//TP7Ina87TfiPUz1rQzMhHrl/SG2guqRcTOIUYD2q8uhUdNHZYJUaQ8aTGPzCh+c6oawMKW35nFl1dxyQ==", - "dev": true + "utf-8-validate": { + "optional": true } } }, - "jsesc": { + "node_modules/jsesc": { "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true + "dev": true, + "license": "MIT", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } }, - "json-buffer": { + "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 + "dev": true, + "license": "MIT" }, - "json-parse-better-errors": { + "node_modules/json-parse-better-errors": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", - "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", - "dev": true + "dev": true, + "license": "MIT" }, - "json-parse-even-better-errors": { + "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 + "dev": true, + "license": "MIT" }, - "json-schema-traverse": { + "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 + "dev": true, + "license": "MIT" }, - "json-stable-stringify-without-jsonify": { + "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 + "dev": true, + "license": "MIT" }, - "json2php": { + "node_modules/json2php": { "version": "0.0.7", "resolved": "https://registry.npmjs.org/json2php/-/json2php-0.0.7.tgz", "integrity": "sha512-dnSoUiLAoVaMXxFsVi4CrPVYMKOuDBXTghXSmMINX44RZ8WM9cXlY7UqrQnlAcODCVO7FV3+8t/5nDKAjimLfg==", "dev": true }, - "json5": { + "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 + "dev": true, + "license": "MIT", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } }, - "jsonc-parser": { + "node_modules/jsonc-parser": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.0.0.tgz", - "integrity": "sha512-fQzRfAbIBnR0IQvftw9FJveWiHp72Fg20giDrHz6TdfB12UH/uue0D3hm57UB5KgAVuniLMCaS8P1IMj9NR7cA==", - "dev": true + "dev": true, + "license": "MIT" }, - "jsonfile": { + "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, - "requires": { - "graceful-fs": "^4.1.6", + "dependencies": { "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" } }, - "jsx-ast-utils": { + "node_modules/jsx-ast-utils": { "version": "3.3.3", - "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.3.tgz", - "integrity": "sha512-fYQHZTZ8jSfmWZ0iyzfwiU4WDX4HpHbMCZ3gPlWYiCl3BoeOTsqKBqnTVfH2rYT7eP5c3sVbeSPHnnJOaTrWiw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "array-includes": "^3.1.5", "object.assign": "^4.1.3" + }, + "engines": { + "node": ">=4.0" } }, - "keyv": { + "node_modules/keyv": { "version": "4.5.0", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.0.tgz", - "integrity": "sha512-2YvuMsA+jnFGtBareKqgANOEKe1mk3HKiXu2fRmAfyxG0MJAywNhi5ttWA3PMjl4NmpyjZNbFifR2vNjW1znfA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "json-buffer": "3.0.1" } }, - "kind-of": { + "node_modules/kind-of": { "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" } }, - "kleur": { + "node_modules/kleur": { "version": "3.0.3", - "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", - "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } }, - "klona": { + "node_modules/klona": { "version": "2.0.6", - "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.6.tgz", - "integrity": "sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } }, - "known-css-properties": { + "node_modules/known-css-properties": { "version": "0.26.0", "resolved": "https://registry.npmjs.org/known-css-properties/-/known-css-properties-0.26.0.tgz", "integrity": "sha512-5FZRzrZzNTBruuurWpvZnvP9pum+fe0HcK8z/ooo+U+Hmp4vtbyp1/QDsqmufirXy4egGzbaH/y2uCZf+6W5Kg==", "dev": true }, - "language-subtag-registry": { + "node_modules/language-subtag-registry": { "version": "0.3.22", - "resolved": "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.22.tgz", - "integrity": "sha512-tN0MCzyWnoz/4nHS6uxdlFWoUZT7ABptwKPQ52Ea7URk6vll88bWBVhodtnlfEuCcKWNGoc+uGbw1cwa9IKh/w==", - "dev": true + "dev": true, + "license": "CC0-1.0" }, - "language-tags": { + "node_modules/language-tags": { "version": "1.0.5", - "resolved": "https://registry.npmjs.org/language-tags/-/language-tags-1.0.5.tgz", - "integrity": "sha512-qJhlO9cGXi6hBGKoxEG/sKZDAHD5Hnu9Hs4WbOY3pCWXDhw0N8x1NenNzm2EnNLkLkk7J2SdxAkDSbb6ftT+UQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "language-subtag-registry": "~0.3.2" } }, - "launch-editor": { + "node_modules/launch-editor": { "version": "2.6.1", - "resolved": "https://registry.npmjs.org/launch-editor/-/launch-editor-2.6.1.tgz", - "integrity": "sha512-eB/uXmFVpY4zezmGp5XtU21kwo7GBbKB+EQ+UZeWtGb9yAM5xt/Evk+lYH3eRNAtId+ej4u7TYPFZ07w4s7rRw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "picocolors": "^1.0.0", "shell-quote": "^1.8.1" - }, - "dependencies": { - "shell-quote": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.1.tgz", - "integrity": "sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==", - "dev": true - } } }, - "lazy-cache": { + "node_modules/launch-editor/node_modules/shell-quote": { + "version": "1.8.1", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/lazy-cache": { "version": "1.0.4", - "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz", - "integrity": "sha512-RE2g0b5VGZsOCFOCgP7omTRYFqydmZkBwl5oNnQ1lDYC57uyO9KqNnNVxT7COSHTxrRCWVcAVOcbjk+tvh/rgQ==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } }, - "leven": { + "node_modules/leven": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", - "dev": true + "dev": true, + "engines": { + "node": ">=6" + } }, - "levn": { + "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, - "requires": { + "license": "MIT", + "dependencies": { "prelude-ls": "^1.2.1", "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" } }, - "liftup": { + "node_modules/liftup": { "version": "3.0.1", - "resolved": "https://registry.npmjs.org/liftup/-/liftup-3.0.1.tgz", - "integrity": "sha512-yRHaiQDizWSzoXk3APcA71eOI/UuhEkNN9DiW2Tt44mhYzX4joFoCZlxsSOF7RyeLlfqzFLQI1ngFq3ggMPhOw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "extend": "^3.0.2", "findup-sync": "^4.0.0", "fined": "^1.2.0", @@ -14802,70 +13796,81 @@ "rechoir": "^0.7.0", "resolve": "^1.19.0" }, + "engines": { + "node": ">=10" + } + }, + "node_modules/liftup/node_modules/findup-sync": { + "version": "4.0.0", + "dev": true, + "license": "MIT", "dependencies": { - "findup-sync": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-4.0.0.tgz", - "integrity": "sha512-6jvvn/12IC4quLBL1KNokxC7wWTvYncaVUYSoxWw7YykPLuRrnv4qdHcSOywOI5RpkOVGeQRtWM8/q+G6W6qfQ==", - "dev": true, - "requires": { - "detect-file": "^1.0.0", - "is-glob": "^4.0.0", - "micromatch": "^4.0.2", - "resolve-dir": "^1.0.1" - } - }, - "global-modules": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz", - "integrity": "sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==", - "dev": true, - "requires": { - "global-prefix": "^1.0.1", - "is-windows": "^1.0.1", - "resolve-dir": "^1.0.0" - } - }, - "global-prefix": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz", - "integrity": "sha512-5lsx1NUDHtSjfg0eHlmYvZKv8/nVqX4ckFbM+FrGcQ+04KWcWFo9P5MxPZYSzUvyzmdTbI7Eix8Q4IbELDqzKg==", - "dev": true, - "requires": { - "expand-tilde": "^2.0.2", - "homedir-polyfill": "^1.0.1", - "ini": "^1.3.4", - "is-windows": "^1.0.1", - "which": "^1.2.14" - } - }, - "is-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", - "dev": true, - "requires": { - "isobject": "^3.0.1" - } - }, - "resolve-dir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz", - "integrity": "sha512-R7uiTjECzvOsWSfdM0QKFNBVFcK27aHOUwdvK53BcW8zqnGdYp0Fbj82cy54+2A4P2tFM22J5kRfe1R+lM/1yg==", - "dev": true, - "requires": { - "expand-tilde": "^2.0.0", - "global-modules": "^1.0.0" - } - } + "detect-file": "^1.0.0", + "is-glob": "^4.0.0", + "micromatch": "^4.0.2", + "resolve-dir": "^1.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/liftup/node_modules/global-modules": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "global-prefix": "^1.0.1", + "is-windows": "^1.0.1", + "resolve-dir": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/liftup/node_modules/global-prefix": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "expand-tilde": "^2.0.2", + "homedir-polyfill": "^1.0.1", + "ini": "^1.3.4", + "is-windows": "^1.0.1", + "which": "^1.2.14" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/liftup/node_modules/is-plain-object": { + "version": "2.0.4", + "dev": true, + "license": "MIT", + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" } }, - "lighthouse": { + "node_modules/liftup/node_modules/resolve-dir": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "expand-tilde": "^2.0.0", + "global-modules": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/lighthouse": { "version": "10.4.0", "resolved": "https://registry.npmjs.org/lighthouse/-/lighthouse-10.4.0.tgz", "integrity": "sha512-XQWHEWkJ8YxSPsxttBJORy5+hQrzbvGkYfeP3fJjyYKioWkF2MXfFqNK4ZuV4jL8pBu7Z91qnQP6In0bq1yXww==", "dev": true, - "requires": { + "dependencies": { "@sentry/node": "^6.17.4", "axe-core": "4.7.2", "chrome-launcher": "^0.15.2", @@ -14894,414 +13899,513 @@ "yargs": "^17.3.1", "yargs-parser": "^21.0.0" }, - "dependencies": { - "axe-core": { - "version": "4.7.2", - "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.7.2.tgz", - "integrity": "sha512-zIURGIS1E1Q4pcrMjp+nnEh+16G56eG/MUllJH8yEvw7asDo7Ac9uhC9KIH5jzpITueEZolfYglnCGIuSBz39g==", - "dev": true - }, - "puppeteer-core": { - "version": "20.9.0", - "resolved": "https://registry.npmjs.org/puppeteer-core/-/puppeteer-core-20.9.0.tgz", - "integrity": "sha512-H9fYZQzMTRrkboEfPmf7m3CLDN6JvbxXA3qTtS+dFt27tR+CsFHzPsT6pzp6lYL6bJbAPaR0HaPO6uSi+F94Pg==", - "dev": true, - "requires": { - "@puppeteer/browsers": "1.4.6", - "chromium-bidi": "0.4.16", - "cross-fetch": "4.0.0", - "debug": "4.3.4", - "devtools-protocol": "0.0.1147663", - "ws": "8.13.0" - }, - "dependencies": { - "devtools-protocol": { - "version": "0.0.1147663", - "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.1147663.tgz", - "integrity": "sha512-hyWmRrexdhbZ1tcJUGpO95ivbRhWXz++F4Ko+n21AY5PNln2ovoJw+8ZMNDTtip+CNFQfrtLVh/w4009dXO/eQ==", - "dev": true - }, - "ws": { - "version": "8.13.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.13.0.tgz", - "integrity": "sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA==", - "dev": true - } - } - }, - "semver": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", - "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", - "dev": true - } + "bin": { + "chrome-debug": "core/scripts/manual-chrome-launcher.js", + "lighthouse": "cli/index.js", + "smokehouse": "cli/test/smokehouse/frontends/smokehouse-bin.js" + }, + "engines": { + "node": ">=16.16" + } + }, + "node_modules/lighthouse-logger": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/lighthouse-logger/-/lighthouse-logger-1.4.2.tgz", + "integrity": "sha512-gPWxznF6TKmUHrOQjlVo2UbaL2EJ71mb2CCeRs/2qBpi4L/g4LUVc9+3lKQ6DTUZwJswfM7ainGrLO1+fOqa2g==", + "dev": true, + "dependencies": { + "debug": "^2.6.9", + "marky": "^1.2.2" + } + }, + "node_modules/lighthouse-logger/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/lighthouse-logger/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/lighthouse-stack-packs": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/lighthouse-stack-packs/-/lighthouse-stack-packs-1.11.0.tgz", + "integrity": "sha512-sRr0z1S/I26VffRLq9KJsKtLk856YrJlNGmcJmbLX8dFn3MuzVPUbstuChEhqnSxZb8TZmVfthuXuwhG9vRoSw==", + "dev": true + }, + "node_modules/lighthouse/node_modules/puppeteer-core": { + "version": "20.9.0", + "resolved": "https://registry.npmjs.org/puppeteer-core/-/puppeteer-core-20.9.0.tgz", + "integrity": "sha512-H9fYZQzMTRrkboEfPmf7m3CLDN6JvbxXA3qTtS+dFt27tR+CsFHzPsT6pzp6lYL6bJbAPaR0HaPO6uSi+F94Pg==", + "dev": true, + "dependencies": { + "@puppeteer/browsers": "1.4.6", + "chromium-bidi": "0.4.16", + "cross-fetch": "4.0.0", + "debug": "4.3.4", + "devtools-protocol": "0.0.1147663", + "ws": "8.13.0" + }, + "engines": { + "node": ">=16.3.0" + }, + "peerDependencies": { + "typescript": ">= 4.7.4" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/lighthouse/node_modules/puppeteer-core/node_modules/chromium-bidi": { + "version": "0.4.16", + "resolved": "https://registry.npmjs.org/chromium-bidi/-/chromium-bidi-0.4.16.tgz", + "integrity": "sha512-7ZbXdWERxRxSwo3txsBjjmc/NLxqb1Bk30mRb0BMS4YIaiV6zvKZqL/UAH+DdqcDYayDWk2n/y8klkBDODrPvA==", + "dev": true, + "dependencies": { + "mitt": "3.0.0" + }, + "peerDependencies": { + "devtools-protocol": "*" } }, - "lighthouse-logger": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/lighthouse-logger/-/lighthouse-logger-1.4.2.tgz", - "integrity": "sha512-gPWxznF6TKmUHrOQjlVo2UbaL2EJ71mb2CCeRs/2qBpi4L/g4LUVc9+3lKQ6DTUZwJswfM7ainGrLO1+fOqa2g==", + "node_modules/lighthouse/node_modules/puppeteer-core/node_modules/devtools-protocol": { + "version": "0.0.1147663", + "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.1147663.tgz", + "integrity": "sha512-hyWmRrexdhbZ1tcJUGpO95ivbRhWXz++F4Ko+n21AY5PNln2ovoJw+8ZMNDTtip+CNFQfrtLVh/w4009dXO/eQ==", + "dev": true + }, + "node_modules/lighthouse/node_modules/puppeteer-core/node_modules/ws": { + "version": "8.13.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.13.0.tgz", + "integrity": "sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA==", "dev": true, - "requires": { - "debug": "^2.6.9", - "marky": "^1.2.2" + "engines": { + "node": ">=10.0.0" }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true + "utf-8-validate": { + "optional": true } } }, - "lighthouse-stack-packs": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/lighthouse-stack-packs/-/lighthouse-stack-packs-1.11.0.tgz", - "integrity": "sha512-sRr0z1S/I26VffRLq9KJsKtLk856YrJlNGmcJmbLX8dFn3MuzVPUbstuChEhqnSxZb8TZmVfthuXuwhG9vRoSw==", - "dev": true + "node_modules/lighthouse/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true, + "bin": { + "semver": "bin/semver" + } }, - "lilconfig": { + "node_modules/lilconfig": { "version": "3.1.1", - "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.1.1.tgz", - "integrity": "sha512-O18pf7nyvHTckunPWCV1XUNXU1piu01y2b7ATJ0ppkUkk8ocqVWBrYjJBCwHDjD/ZWcfyrA0P4gKhzWGi5EINQ==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antonk52" + } }, - "lines-and-columns": { + "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 + "dev": true, + "license": "MIT" }, - "linkify-it": { + "node_modules/linkify-it": { "version": "3.0.3", - "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-3.0.3.tgz", - "integrity": "sha512-ynTsyrFSdE5oZ/O9GEf00kPngmOfVwazR5GKDq6EYfhlpFug3J2zybX56a2PRRpc9P+FuSoGNAwjlbDs9jJBPQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "uc.micro": "^1.0.1" } }, - "load-grunt-tasks": { + "node_modules/load-grunt-tasks": { "version": "5.1.0", - "resolved": "https://registry.npmjs.org/load-grunt-tasks/-/load-grunt-tasks-5.1.0.tgz", - "integrity": "sha512-oNj0Jlka1TsfDe+9He0kcA1cRln+TMoTsEByW7ij6kyktNLxBKJtslCFEvFrLC2Dj0S19IWJh3fOCIjLby2Xrg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "arrify": "^2.0.1", "multimatch": "^4.0.0", "pkg-up": "^3.1.0", "resolve-pkg": "^2.0.0" + }, + "engines": { + "node": ">=8" + }, + "peerDependencies": { + "grunt": ">=1" } }, - "load-json-file": { + "node_modules/load-json-file": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", - "integrity": "sha512-Kx8hMakjX03tiGTLAIdJ+lL0htKnXjEZN6hk/tozf/WOuYGdZBJrZ+rCJRbVCugsjB3jMLn9746NsQIf5VjBMw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "graceful-fs": "^4.1.2", "parse-json": "^4.0.0", "pify": "^3.0.0", "strip-bom": "^3.0.0" }, + "engines": { + "node": ">=4" + } + }, + "node_modules/load-json-file/node_modules/parse-json": { + "version": "4.0.0", + "dev": true, + "license": "MIT", "dependencies": { - "parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==", - "dev": true, - "requires": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" - } - }, - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==", - "dev": true - }, - "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 - } + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/load-json-file/node_modules/pify": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/load-json-file/node_modules/strip-bom": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" } }, - "loader-runner": { + "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 + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.11.5" + } }, - "loader-utils": { + "node_modules/loader-utils": { "version": "2.0.4", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", - "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "big.js": "^5.2.2", "emojis-list": "^3.0.0", "json5": "^2.1.2" + }, + "engines": { + "node": ">=8.9.0" } }, - "locate-path": { + "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, - "requires": { + "license": "MIT", + "dependencies": { "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "lodash": { + "node_modules/lodash": { "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true + "dev": true, + "license": "MIT" }, - "lodash.debounce": { + "node_modules/lodash.debounce": { "version": "4.0.8", "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", "dev": true }, - "lodash.memoize": { + "node_modules/lodash.memoize": { "version": "4.1.2", - "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", - "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==", - "dev": true + "dev": true, + "license": "MIT" }, - "lodash.merge": { + "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 + "dev": true, + "license": "MIT" }, - "lodash.truncate": { + "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 }, - "lodash.uniq": { + "node_modules/lodash.uniq": { "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", - "integrity": "sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==", - "dev": true + "dev": true, + "license": "MIT" }, - "log-symbols": { + "node_modules/log-symbols": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", "dev": true, - "requires": { + "dependencies": { "chalk": "^4.1.0", "is-unicode-supported": "^0.1.0" }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/log-symbols/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": { - "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, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "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, - "requires": { - "color-name": "~1.1.4" - } - }, - "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 - }, - "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 - }, - "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, - "requires": { - "has-flag": "^4.0.0" - } - } + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/log-symbols/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/log-symbols/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/log-symbols/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/log-symbols/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/log-symbols/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" } }, - "lookup-closest-locale": { + "node_modules/lookup-closest-locale": { "version": "6.2.0", "resolved": "https://registry.npmjs.org/lookup-closest-locale/-/lookup-closest-locale-6.2.0.tgz", "integrity": "sha512-/c2kL+Vnp1jnV6K6RpDTHK3dgg0Tu2VVp+elEiJpjfS1UyY7AjOYHohRug6wT0OpoX2qFgNORndE9RqesfVxWQ==", "dev": true }, - "loose-envify": { + "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==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "js-tokens": "^3.0.0 || ^4.0.0" + }, + "bin": { + "loose-envify": "cli.js" } }, - "lower-case": { + "node_modules/lower-case": { "version": "2.0.2", - "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz", - "integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "tslib": "^2.0.3" } }, - "lowercase-keys": { + "node_modules/lowercase-keys": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", - "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", - "dev": true - }, - "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, - "requires": { - "yallist": "^3.0.2" + "license": "MIT", + "engines": { + "node": ">=8" } }, - "lru_map": { + "node_modules/lru_map": { "version": "0.3.3", "resolved": "https://registry.npmjs.org/lru_map/-/lru_map-0.3.3.tgz", "integrity": "sha512-Pn9cox5CsMYngeDbmChANltQl+5pi6XmTrraMSzhPmMBbmgcxmqWry0U3PGapCU1yB4/LqCcom7qhHZiF/jGfQ==", "dev": true }, - "make-dir": { + "node_modules/lru-cache": { + "version": "5.1.1", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/make-dir": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "make-iterator": { + "node_modules/make-iterator": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/make-iterator/-/make-iterator-1.0.1.tgz", - "integrity": "sha512-pxiuXh0iVEq7VM7KMIhs5gxsfxCux2URptUQaXo4iZZJxBAzTPOLE2BumO5dbfVYq/hBJFBR/a1mFDmOx5AGmw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "kind-of": "^6.0.2" }, - "dependencies": { - "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/make-iterator/node_modules/kind-of": { + "version": "6.0.3", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" } }, - "makeerror": { + "node_modules/makeerror": { "version": "1.0.12", "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", "dev": true, - "requires": { + "dependencies": { "tmpl": "1.0.5" } }, - "map-cache": { + "node_modules/map-cache": { "version": "0.2.2", - "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", - "integrity": "sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } }, - "map-obj": { + "node_modules/map-obj": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.3.0.tgz", "integrity": "sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==", - "dev": true + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "map-values": { + "node_modules/map-values": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/map-values/-/map-values-1.0.1.tgz", - "integrity": "sha512-BbShUnr5OartXJe1GeccAWtfro11hhgNJg6G9/UtWKjVGvV5U4C09cg5nk8JUevhXODaXY+hQ3xxMUKSs62ONQ==", - "dev": true + "dev": true, + "license": "Public Domain" }, - "markdown-it": { + "node_modules/markdown-it": { "version": "12.3.2", - "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-12.3.2.tgz", - "integrity": "sha512-TchMembfxfNVpHkbtriWltGWc+m3xszaRD0CZup7GFFhzIgQqxIfn3eGj1yZpfuflzPvfkt611B2Q/Bsk1YnGg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "argparse": "^2.0.1", "entities": "~2.1.0", "linkify-it": "^3.0.1", "mdurl": "^1.0.1", "uc.micro": "^1.0.5" }, - "dependencies": { - "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 - }, - "entities": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.1.0.tgz", - "integrity": "sha512-hCx1oky9PFrJ611mf0ifBLBRW8lUUVRlFolb5gWRfIELabBlbp9xZvrqZLZAs+NxFnbfQoeGd8wDkygjg7U85w==", - "dev": true - } + "bin": { + "markdown-it": "bin/markdown-it.js" + } + }, + "node_modules/markdown-it/node_modules/argparse": { + "version": "2.0.1", + "dev": true, + "license": "Python-2.0" + }, + "node_modules/markdown-it/node_modules/entities": { + "version": "2.1.0", + "dev": true, + "license": "BSD-2-Clause", + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" } }, - "markdownlint": { + "node_modules/markdownlint": { "version": "0.25.1", - "resolved": "https://registry.npmjs.org/markdownlint/-/markdownlint-0.25.1.tgz", - "integrity": "sha512-AG7UkLzNa1fxiOv5B+owPsPhtM4D6DoODhsJgiaNg1xowXovrYgOnLqAgOOFQpWOlHFVQUzjMY5ypNNTeov92g==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "markdown-it": "12.3.2" + }, + "engines": { + "node": ">=12" } }, - "markdownlint-cli": { + "node_modules/markdownlint-cli": { "version": "0.31.1", - "resolved": "https://registry.npmjs.org/markdownlint-cli/-/markdownlint-cli-0.31.1.tgz", - "integrity": "sha512-keIOMwQn+Ch7MoBwA+TdkyVMuxAeZFEGmIIlvwgV0Z1TGS5MxPnRr29XCLhkNzCHU+uNKGjU+VEjLX+Z9kli6g==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "commander": "~9.0.0", "get-stdin": "~9.0.0", "glob": "~7.2.0", @@ -15313,127 +14417,141 @@ "minimatch": "~3.0.5", "run-con": "~1.2.10" }, + "bin": { + "markdownlint": "markdownlint.js" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/markdownlint-cli/node_modules/argparse": { + "version": "2.0.1", + "dev": true, + "license": "Python-2.0" + }, + "node_modules/markdownlint-cli/node_modules/commander": { + "version": "9.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.20.0 || >=14" + } + }, + "node_modules/markdownlint-cli/node_modules/glob": { + "version": "7.2.3", + "dev": true, + "license": "ISC", + "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/markdownlint-cli/node_modules/glob/node_modules/minimatch": { + "version": "3.1.2", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/markdownlint-cli/node_modules/js-yaml": { + "version": "4.1.0", + "dev": true, + "license": "MIT", "dependencies": { - "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 - }, - "commander": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-9.0.0.tgz", - "integrity": "sha512-JJfP2saEKbQqvW+FI93OYUB4ByV5cizMpFMiiJI8xDbBvQvSkIk0VvQdn1CZ8mqAO8Loq2h0gYTYtDFUZUeERw==", - "dev": true - }, - "glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "requires": { - "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" - }, - "dependencies": { - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - } - } - }, - "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, - "requires": { - "argparse": "^2.0.1" - } - }, - "minimatch": { - "version": "3.0.8", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.8.tgz", - "integrity": "sha512-6FsRAQsxQ61mw+qP1ZzbL9Bc78x2p5OqNgNpnoAFLTrX8n5Kxph0CsnhmKKNXTWjXqU5L0pGPR7hYk+XWZr60Q==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - } + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/markdownlint-cli/node_modules/minimatch": { + "version": "3.0.8", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" } }, - "markdownlint-rule-helpers": { + "node_modules/markdownlint-rule-helpers": { "version": "0.16.0", - "resolved": "https://registry.npmjs.org/markdownlint-rule-helpers/-/markdownlint-rule-helpers-0.16.0.tgz", - "integrity": "sha512-oEacRUVeTJ5D5hW1UYd2qExYI0oELdYK72k1TKGvIeYJIbqQWAz476NAc7LNixSySUhcNl++d02DvX0ccDk9/w==", - "dev": true + "dev": true, + "license": "MIT" }, - "marky": { + "node_modules/marky": { "version": "1.2.5", "resolved": "https://registry.npmjs.org/marky/-/marky-1.2.5.tgz", "integrity": "sha512-q9JtQJKjpsVxCRVgQ+WapguSbKC3SQ5HEzFGPAJMStgh3QjCawp00UKv3MTTAArTmGmmPUvllHZoNbZ3gs0I+Q==", "dev": true }, - "mathml-tag-names": { + "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 + "dev": true, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } }, - "mdn-data": { + "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 + "dev": true, + "license": "CC0-1.0" }, - "mdurl": { + "node_modules/mdurl": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", - "integrity": "sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==", - "dev": true + "dev": true, + "license": "MIT" }, - "media-typer": { + "node_modules/media-typer": { "version": "0.3.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } }, - "memfs": { + "node_modules/memfs": { "version": "3.5.3", - "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.5.3.tgz", - "integrity": "sha512-UERzLsxzllchadvbPs5aolHh65ISpKpM+ccLbOJ8/vvpBKmAWf+la7dXFy7Mr0ySHbdHrFv5kGFCUHHe6GFEmw==", "dev": true, - "requires": { + "license": "Unlicense", + "dependencies": { "fs-monkey": "^1.0.4" + }, + "engines": { + "node": ">= 4.0.0" } }, - "memize": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/memize/-/memize-2.1.0.tgz", - "integrity": "sha512-yywVJy8ctVlN5lNPxsep5urnZ6TTclwPEyigM9M3Bi8vseJBOfqNrGWN/r8NzuIt3PovM323W04blJfGQfQSVg==", - "dev": true - }, - "memorystream": { + "node_modules/memorystream": { "version": "0.3.1", - "resolved": "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz", - "integrity": "sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==", - "dev": true + "dev": true, + "engines": { + "node": ">= 0.10.0" + } }, - "meow": { + "node_modules/meow": { "version": "9.0.0", "resolved": "https://registry.npmjs.org/meow/-/meow-9.0.0.tgz", "integrity": "sha512-+obSblOQmRhcyBt62furQqRAQpNyWXo8BuQ5bN7dG8wmwQ+vwHKp/rCFD4CrTP8CsDQD1sjoZ94K417XEUk8IQ==", "dev": true, - "requires": { + "dependencies": { "@types/minimist": "^1.2.0", "camelcase-keys": "^6.2.2", "decamelize": "^1.2.0", @@ -15447,488 +14565,601 @@ "type-fest": "^0.18.0", "yargs-parser": "^20.2.3" }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/meow/node_modules/hosted-git-info": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", + "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", + "dev": true, "dependencies": { - "hosted-git-info": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", - "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "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, - "requires": { - "yallist": "^4.0.0" - } - }, - "normalize-package-data": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", - "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", - "dev": true, - "requires": { - "hosted-git-info": "^4.0.1", - "is-core-module": "^2.5.0", - "semver": "^7.3.4", - "validate-npm-package-license": "^3.0.1" - } - }, - "semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "type-fest": { - "version": "0.18.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.18.1.tgz", - "integrity": "sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==", - "dev": true - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", - "dev": true - } + "lru-cache": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/meow/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/meow/node_modules/normalize-package-data": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", + "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", + "dev": true, + "dependencies": { + "hosted-git-info": "^4.0.1", + "is-core-module": "^2.5.0", + "semver": "^7.3.4", + "validate-npm-package-license": "^3.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/meow/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/meow/node_modules/type-fest": { + "version": "0.18.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.18.1.tgz", + "integrity": "sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/meow/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/meow/node_modules/yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "dev": true, + "engines": { + "node": ">=10" } }, - "merge-deep": { + "node_modules/merge-deep": { "version": "3.0.3", - "resolved": "https://registry.npmjs.org/merge-deep/-/merge-deep-3.0.3.tgz", - "integrity": "sha512-qtmzAS6t6grwEkNrunqTBdn0qKwFgNWvlxUbAV8es9M7Ot1EbyApytCnvE0jALPa46ZpKDUo527kKiaWplmlFA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "arr-union": "^3.1.0", "clone-deep": "^0.2.4", "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" } }, - "merge-descriptors": { + "node_modules/merge-descriptors": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==", - "dev": true + "dev": true, + "license": "MIT" }, - "merge-stream": { + "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 + "dev": true, + "license": "MIT" }, - "merge2": { + "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 + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } }, - "metaviewport-parser": { + "node_modules/metaviewport-parser": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/metaviewport-parser/-/metaviewport-parser-0.3.0.tgz", "integrity": "sha512-EoYJ8xfjQ6kpe9VbVHvZTZHiOl4HL1Z18CrZ+qahvLXT7ZO4YTC2JMyt5FaUp9JJp6J4Ybb/z7IsCXZt86/QkQ==", "dev": true }, - "methods": { + "node_modules/methods": { "version": "1.1.2", - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } }, - "micromatch": { + "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, - "requires": { + "license": "MIT", + "dependencies": { "braces": "^3.0.2", "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" } }, - "mime": { + "node_modules/mime": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/mime/-/mime-3.0.0.tgz", "integrity": "sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==", - "dev": true + "dev": true, + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=10.0.0" + } }, - "mime-db": { + "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 + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } }, - "mime-types": { + "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, - "requires": { + "license": "MIT", + "dependencies": { "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" } }, - "mimic-fn": { + "node_modules/mimic-fn": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } }, - "mimic-response": { + "node_modules/mimic-response": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", - "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } }, - "min-indent": { + "node_modules/min-indent": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, - "mini-css-extract-plugin": { + "node_modules/mini-css-extract-plugin": { "version": "2.9.0", - "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.9.0.tgz", - "integrity": "sha512-Zs1YsZVfemekSZG+44vBsYTLQORkPMwnlv+aehcxK/NLKC+EGhDB39/YePYYqx/sTk6NnYpuqikhSn7+JIevTA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "schema-utils": "^4.0.0", "tapable": "^2.2.1" }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + } + }, + "node_modules/mini-css-extract-plugin/node_modules/ajv": { + "version": "8.12.0", + "dev": true, + "license": "MIT", "dependencies": { - "ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - } - }, - "ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.3" - } - }, - "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 - }, - "schema-utils": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.2.0.tgz", - "integrity": "sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.9.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.1.0" - } - } + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/mini-css-extract-plugin/node_modules/ajv-keywords": { + "version": "5.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" + } + }, + "node_modules/mini-css-extract-plugin/node_modules/json-schema-traverse": { + "version": "1.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/mini-css-extract-plugin/node_modules/schema-utils": { + "version": "4.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.9.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.1.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" } }, - "minimalistic-assert": { + "node_modules/minimalistic-assert": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", - "dev": true + "dev": true, + "license": "ISC" }, - "minimatch": { + "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, - "requires": { + "license": "ISC", + "dependencies": { "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" } }, - "minimist": { + "node_modules/minimist": { "version": "1.2.6", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", - "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==", - "dev": true + "dev": true, + "license": "MIT" }, - "minimist-options": { + "node_modules/minimist-options": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz", "integrity": "sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==", "dev": true, - "requires": { + "dependencies": { "arrify": "^1.0.1", "is-plain-obj": "^1.1.0", "kind-of": "^6.0.3" }, - "dependencies": { - "arrify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==", - "dev": true - }, - "is-plain-obj": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", - "integrity": "sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==", - "dev": true - }, - "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": ">= 6" + } + }, + "node_modules/minimist-options/node_modules/arrify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", + "integrity": "sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/minimist-options/node_modules/is-plain-obj": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", + "integrity": "sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/minimist-options/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" } }, - "mitt": { + "node_modules/mitt": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/mitt/-/mitt-3.0.0.tgz", "integrity": "sha512-7dX2/10ITVyqh4aOSVI9gdape+t9l2/8QxHrFmUXu4EEUpdlxl6RudZUPZoc+zuY2hk1j7XxVroIVIan/pD/SQ==", "dev": true }, - "mixin-object": { + "node_modules/mixin-object": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/mixin-object/-/mixin-object-2.0.1.tgz", - "integrity": "sha512-ALGF1Jt9ouehcaXaHhn6t1yGWRqGaHkPFndtFVHfZXOvkIZ/yoGaSi0AHVTafb3ZBGg4dr/bDwnaEKqCXzchMA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "for-in": "^0.1.3", "is-extendable": "^0.1.1" }, - "dependencies": { - "for-in": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/for-in/-/for-in-0.1.8.tgz", - "integrity": "sha512-F0to7vbBSHP8E3l6dCjxNOLuSFAACIxFy3UehTUlG7svlXi37HHsDkyVcHo0Pq8QwrE+pXvWSVX3ZT1T9wAZ9g==", - "dev": true - } + "engines": { + "node": ">=0.10.0" } }, - "mkdirp": { + "node_modules/mixin-object/node_modules/for-in": { + "version": "0.1.8", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/mkdirp": { "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" } }, - "mkdirp-classic": { + "node_modules/mkdirp-classic": { "version": "0.5.3", - "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz", - "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==", - "dev": true + "dev": true, + "license": "MIT" }, - "mrmime": { + "node_modules/mrmime": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/mrmime/-/mrmime-2.0.0.tgz", - "integrity": "sha512-eu38+hdgojoyq63s+yTpN4XMBdt5l8HhMhc4VKLO9KM5caLIBvUm4thi7fFaxyTmCKeNnXZ5pAlBwCUnhA09uw==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + } }, - "ms": { + "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 + "dev": true, + "license": "MIT" }, - "multicast-dns": { + "node_modules/multicast-dns": { "version": "7.2.5", - "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-7.2.5.tgz", - "integrity": "sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "dns-packet": "^5.2.2", "thunky": "^1.0.2" + }, + "bin": { + "multicast-dns": "cli.js" } }, - "multimatch": { + "node_modules/multimatch": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/multimatch/-/multimatch-4.0.0.tgz", - "integrity": "sha512-lDmx79y1z6i7RNx0ZGCPq1bzJ6ZoDDKbvh7jxr9SJcWLkShMzXrHbYVpTdnhNM5MXpDUxCQ4DgqVttVXlBgiBQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@types/minimatch": "^3.0.3", "array-differ": "^3.0.0", "array-union": "^2.1.0", "arrify": "^2.0.1", "minimatch": "^3.0.4" }, - "dependencies": { - "@types/minimatch": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.5.tgz", - "integrity": "sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==", - "dev": true - } + "engines": { + "node": ">=8" } }, - "mute-stream": { + "node_modules/multimatch/node_modules/@types/minimatch": { + "version": "3.0.5", + "dev": true, + "license": "MIT" + }, + "node_modules/mute-stream": { "version": "0.0.8", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", - "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", - "dev": true + "dev": true, + "license": "ISC" }, - "nanoid": { + "node_modules/nanoid": { "version": "3.3.7", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", - "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", - "dev": true + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } }, - "natural-compare": { + "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 + "dev": true, + "license": "MIT" }, - "negotiator": { + "node_modules/negotiator": { "version": "0.6.3", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", - "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } }, - "neo-async": { + "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 + "dev": true, + "license": "MIT" }, - "netmask": { + "node_modules/netmask": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/netmask/-/netmask-2.0.2.tgz", "integrity": "sha512-dBpDMdxv9Irdq66304OLfEmQ9tbNRFnFTuZiLo+bD+r332bBmMJ8GBLXklIXXgxd3+v9+KUnZaUR5PJMa75Gsg==", - "dev": true + "dev": true, + "engines": { + "node": ">= 0.4.0" + } }, - "nice-try": { + "node_modules/nice-try": { "version": "1.0.5", - "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", - "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", - "dev": true + "dev": true, + "license": "MIT" }, - "no-case": { + "node_modules/no-case": { "version": "3.0.4", - "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz", - "integrity": "sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "lower-case": "^2.0.2", "tslib": "^2.0.3" } }, - "node-fetch": { + "node_modules/node-fetch": { "version": "2.7.0", "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", "dev": true, - "requires": { + "dependencies": { "whatwg-url": "^5.0.0" + }, + "engines": { + "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } } }, - "node-forge": { + "node_modules/node-forge": { "version": "1.3.1", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", - "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==", - "dev": true + "dev": true, + "license": "(BSD-3-Clause OR GPL-2.0)", + "engines": { + "node": ">= 6.13.0" + } }, - "node-int64": { + "node_modules/node-int64": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", "dev": true }, - "node-releases": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.6.tgz", - "integrity": "sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==", + "node_modules/node-releases": { + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.18.tgz", + "integrity": "sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==", "dev": true }, - "nopt": { + "node_modules/nopt": { "version": "3.0.6", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz", - "integrity": "sha512-4GUt3kSEYmk4ITxzB/b9vaIDfUVWN/Ml1Fwl11IlnIG2iaJ9O6WXZ9SrYM9NLI8OCBieN2Y8SWC2oJV0RQ7qYg==", "dev": true, - "requires": { + "license": "ISC", + "dependencies": { "abbrev": "1" + }, + "bin": { + "nopt": "bin/nopt.js" } }, - "normalize-package-data": { + "node_modules/normalize-package-data": { "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", "dev": true, - "requires": { + "license": "BSD-2-Clause", + "dependencies": { "hosted-git-info": "^2.1.4", "resolve": "^1.10.0", "semver": "2 || 3 || 4 || 5", "validate-npm-package-license": "^3.0.1" - }, - "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } } }, - "normalize-path": { + "node_modules/normalize-package-data/node_modules/semver": { + "version": "5.7.1", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/normalize-path": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } }, - "normalize-range": { + "node_modules/normalize-range": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, - "normalize-url": { + "node_modules/normalize-url": { "version": "6.1.0", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz", - "integrity": "sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "npm-bundled": { + "node_modules/npm-bundled": { "version": "1.1.2", - "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.1.2.tgz", - "integrity": "sha512-x5DHup0SuyQcmL3s7Rx/YQ8sbw/Hzg0rj48eN0dV7hf5cmQq5PXIeioroH3raV1QC1yh3uTYuMThvEQF3iKgGQ==", "dev": true, - "requires": { + "license": "ISC", + "dependencies": { "npm-normalize-package-bin": "^1.0.1" } }, - "npm-normalize-package-bin": { + "node_modules/npm-normalize-package-bin": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz", - "integrity": "sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA==", - "dev": true + "dev": true, + "license": "ISC" }, - "npm-package-json-lint": { + "node_modules/npm-package-json-lint": { "version": "6.4.0", "resolved": "https://registry.npmjs.org/npm-package-json-lint/-/npm-package-json-lint-6.4.0.tgz", "integrity": "sha512-cuXAJJB1Rdqz0UO6w524matlBqDBjcNt7Ru+RDIu4y6RI1gVqiWBnylrK8sPRk81gGBA0X8hJbDXolVOoTc+sA==", "dev": true, - "requires": { + "dependencies": { "ajv": "^6.12.6", "ajv-errors": "^1.0.1", "chalk": "^4.1.2", @@ -15947,139 +15178,180 @@ "type-fest": "^3.2.0", "validate-npm-package-name": "^5.0.0" }, + "bin": { + "npmPkgJsonLint": "dist/cli.js" + }, + "engines": { + "node": ">=14.0.0", + "npm": ">=6.0.0" + } + }, + "node_modules/npm-package-json-lint/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": { - "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, - "requires": { - "color-convert": "^2.0.1" - } - }, - "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 - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "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, - "requires": { - "color-name": "~1.1.4" - } - }, - "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 - }, - "cosmiconfig": { - "version": "8.3.6", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.3.6.tgz", - "integrity": "sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==", - "dev": true, - "requires": { - "import-fresh": "^3.3.0", - "js-yaml": "^4.1.0", - "parse-json": "^5.2.0", - "path-type": "^4.0.0" - } - }, - "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 - }, - "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, - "requires": { - "argparse": "^2.0.1" - } - }, - "jsonc-parser": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.1.tgz", - "integrity": "sha512-AilxAyFOAcK5wA1+LeaySVBrHsGQvUFCDWXKpZjzaL0PqW+xfBOttn8GNtWKFWqneyMZj41MWF9Kl6iPWLwgOA==", - "dev": true - }, - "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, - "requires": { - "yallist": "^4.0.0" - } - }, - "semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "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, - "requires": { - "has-flag": "^4.0.0" - } - }, - "type-fest": { - "version": "3.13.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.13.1.tgz", - "integrity": "sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==", - "dev": true - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/npm-package-json-lint/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/npm-package-json-lint/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/npm-package-json-lint/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/npm-package-json-lint/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/npm-package-json-lint/node_modules/cosmiconfig": { + "version": "8.3.6", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.3.6.tgz", + "integrity": "sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==", + "dev": true, + "dependencies": { + "import-fresh": "^3.3.0", + "js-yaml": "^4.1.0", + "parse-json": "^5.2.0", + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/d-fischer" + }, + "peerDependencies": { + "typescript": ">=4.9.5" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true } } }, - "npm-packlist": { + "node_modules/npm-package-json-lint/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/npm-package-json-lint/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/npm-package-json-lint/node_modules/jsonc-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.3.1.tgz", + "integrity": "sha512-HUgH65KyejrUFPvHFPbqOY0rsFip3Bo5wb4ngvdi1EpCYWUQDC5V+Y7mZws+DLkr4M//zQJoanu1SP+87Dv1oQ==", + "dev": true + }, + "node_modules/npm-package-json-lint/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/npm-package-json-lint/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/npm-package-json-lint/node_modules/type-fest": { + "version": "3.13.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.13.1.tgz", + "integrity": "sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==", + "dev": true, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/npm-packlist": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-3.0.0.tgz", - "integrity": "sha512-L/cbzmutAwII5glUcf2DBRNY/d0TFd4e/FnaZigJV6JD85RHZXJFGwCndjMWiiViiWSsWt3tiOLpI3ByTnIdFQ==", "dev": true, - "requires": { + "license": "ISC", + "dependencies": { "glob": "^7.1.6", "ignore-walk": "^4.0.1", "npm-bundled": "^1.1.1", "npm-normalize-package-bin": "^1.0.1" + }, + "bin": { + "npm-packlist": "bin/index.js" + }, + "engines": { + "node": ">=10" } }, - "npm-run-all": { + "node_modules/npm-run-all": { "version": "4.1.5", - "resolved": "https://registry.npmjs.org/npm-run-all/-/npm-run-all-4.1.5.tgz", - "integrity": "sha512-Oo82gJDAVcaMdi3nuoKFavkIHBRVqQ1qvMb+9LHk/cF4P6B2m8aP04hGf7oL6wZ9BuGwX1onlLhpuoofSyoQDQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "ansi-styles": "^3.2.1", "chalk": "^2.4.1", "cross-spawn": "^6.0.5", @@ -16090,266 +15362,326 @@ "shell-quote": "^1.6.1", "string.prototype.padend": "^3.0.0" }, + "bin": { + "npm-run-all": "bin/npm-run-all/index.js", + "run-p": "bin/run-p/index.js", + "run-s": "bin/run-s/index.js" + }, + "engines": { + "node": ">= 4" + } + }, + "node_modules/npm-run-all/node_modules/cross-spawn": { + "version": "6.0.5", + "dev": true, + "license": "MIT", "dependencies": { - "cross-spawn": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", - "dev": true, - "requires": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - }, - "path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==", - "dev": true - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + }, + "engines": { + "node": ">=4.8" + } + }, + "node_modules/npm-run-all/node_modules/path-key": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/npm-run-all/node_modules/semver": { + "version": "5.7.1", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver" } }, - "npm-run-path": { + "node_modules/npm-run-path": { "version": "4.0.1", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", - "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" } }, - "nth-check": { + "node_modules/nth-check": { "version": "2.1.1", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", - "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", "dev": true, - "requires": { + "license": "BSD-2-Clause", + "dependencies": { "boolbase": "^1.0.0" + }, + "funding": { + "url": "https://github.com/fb55/nth-check?sponsor=1" } }, - "nwsapi": { + "node_modules/nwsapi": { "version": "2.2.9", - "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.9.tgz", - "integrity": "sha512-2f3F0SEEer8bBu0dsNCFF50N0cTThV1nWFYcEYFZttdW0lDAoybv9cQoK7X7/68Z89S7FoRrVjP1LPX4XRf9vg==", - "dev": true + "dev": true, + "license": "MIT" }, - "object-assign": { + "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==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } }, - "object-filter": { + "node_modules/object-filter": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/object-filter/-/object-filter-1.0.2.tgz", - "integrity": "sha512-NahvP2vZcy1ZiiYah30CEPw0FpDcSkSePJBMpzl5EQgCmISijiGuJm3SPYp7U+Lf2TljyaIw3E5EgkEx/TNEVA==", - "dev": true + "dev": true, + "license": "MIT" }, - "object-inspect": { + "node_modules/object-inspect": { "version": "1.12.2", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz", - "integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==", - "dev": true + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "object-keys": { + "node_modules/object-keys": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } }, - "object.assign": { + "node_modules/object.assign": { "version": "4.1.4", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", - "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", "dev": true, - "requires": { + "license": "MIT", + "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" } }, - "object.defaults": { + "node_modules/object.defaults": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/object.defaults/-/object.defaults-1.1.0.tgz", - "integrity": "sha512-c/K0mw/F11k4dEUBMW8naXUuBuhxRCfG7W+yFy8EcijU/rSmazOUd1XAEEe6bC0OuXY4HUKjTJv7xbxIMqdxrA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "array-each": "^1.0.1", "array-slice": "^1.0.0", "for-own": "^1.0.0", "isobject": "^3.0.0" }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object.defaults/node_modules/for-own": { + "version": "1.0.0", + "dev": true, + "license": "MIT", "dependencies": { - "for-own": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz", - "integrity": "sha512-0OABksIGrxKK8K4kynWkQ7y1zounQxP+CWnyclVwj81KW3vlLlGUx57DKGcP/LH216GzqnstnPocF16Nxs0Ycg==", - "dev": true, - "requires": { - "for-in": "^1.0.1" - } - } + "for-in": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" } }, - "object.entries": { + "node_modules/object.entries": { "version": "1.1.5", - "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.5.tgz", - "integrity": "sha512-TyxmjUoZggd4OrrU1W66FMDG6CuqJxsFvymeyXI51+vQLN67zYfZseptRge703kKQdo4uccgAKebXFcRCzk4+g==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", "es-abstract": "^1.19.1" + }, + "engines": { + "node": ">= 0.4" } }, - "object.fromentries": { + "node_modules/object.fromentries": { "version": "2.0.5", - "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.5.tgz", - "integrity": "sha512-CAyG5mWQRRiBU57Re4FKoTBjXfDoNwdFVH2Y1tS9PqCsfUTymAohOkEMSG3aRNKmv4lV3O7p1et7c187q6bynw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", "es-abstract": "^1.19.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "object.hasown": { + "node_modules/object.hasown": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.1.tgz", - "integrity": "sha512-LYLe4tivNQzq4JdaWW6WO3HMZZJWzkkH8fnI6EebWl0VZth2wL2Lovm74ep2/gZzlaTdV62JZHEqHQ2yVn8Q/A==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "define-properties": "^1.1.4", "es-abstract": "^1.19.5" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "object.map": { + "node_modules/object.map": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/object.map/-/object.map-1.0.1.tgz", - "integrity": "sha512-3+mAJu2PLfnSVGHwIWubpOFLscJANBKuB/6A4CxBstc4aqwQY0FWcsppuy4jU5GSB95yES5JHSI+33AWuS4k6w==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "for-own": "^1.0.0", "make-iterator": "^1.0.0" }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object.map/node_modules/for-own": { + "version": "1.0.0", + "dev": true, + "license": "MIT", "dependencies": { - "for-own": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz", - "integrity": "sha512-0OABksIGrxKK8K4kynWkQ7y1zounQxP+CWnyclVwj81KW3vlLlGUx57DKGcP/LH216GzqnstnPocF16Nxs0Ycg==", - "dev": true, - "requires": { - "for-in": "^1.0.1" - } - } + "for-in": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" } }, - "object.pick": { + "node_modules/object.pick": { "version": "1.3.0", - "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", - "integrity": "sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" } }, - "object.values": { + "node_modules/object.values": { "version": "1.1.5", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.5.tgz", - "integrity": "sha512-QUZRW0ilQ3PnPpbNtgdNV1PDbEqLIiSFB3l+EnGtBQ/8SUTLj1PZwtQHABZtLgwpJZTSZhuGLOGk57Drx2IvYg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", "es-abstract": "^1.19.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "obuf": { + "node_modules/obuf": { "version": "1.1.2", - "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", - "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==", - "dev": true + "dev": true, + "license": "MIT" }, - "on-finished": { + "node_modules/on-finished": { "version": "2.4.1", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", - "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" } }, - "on-headers": { + "node_modules/on-headers": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", - "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8" + } }, - "once": { + "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, - "requires": { + "license": "ISC", + "dependencies": { "wrappy": "1" } }, - "onetime": { + "node_modules/onetime": { "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "open": { + "node_modules/open": { "version": "8.4.2", - "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz", - "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "define-lazy-prop": "^2.0.0", "is-docker": "^2.1.1", "is-wsl": "^2.2.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "opener": { + "node_modules/opener": { "version": "1.5.2", - "resolved": "https://registry.npmjs.org/opener/-/opener-1.5.2.tgz", - "integrity": "sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A==", - "dev": true + "dev": true, + "license": "(WTFPL OR MIT)", + "bin": { + "opener": "bin/opener-bin.js" + } }, - "optionator": { + "node_modules/optionator": { "version": "0.9.3", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz", - "integrity": "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@aashutoshrathi/word-wrap": "^1.2.3", "deep-is": "^0.1.3", "fast-levenshtein": "^2.0.6", "levn": "^0.4.1", "prelude-ls": "^1.2.1", "type-check": "^0.4.0" + }, + "engines": { + "node": ">= 0.8.0" } }, - "ora": { + "node_modules/ora": { "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ora/-/ora-4.1.1.tgz", - "integrity": "sha512-sjYP8QyVWBpBZWD6Vr1M/KwknSw6kJOz41tvGMlwWeClHBtYKTbHMki1PsLZnxKpXMPbTKv9b3pjQu3REib96A==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "chalk": "^3.0.0", "cli-cursor": "^3.1.0", "cli-spinners": "^2.2.0", @@ -16359,1288 +15691,1448 @@ "strip-ansi": "^6.0.0", "wcwidth": "^1.0.1" }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ora/node_modules/ansi-styles": { + "version": "4.3.0", + "dev": true, + "license": "MIT", "dependencies": { - "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, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "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, - "requires": { - "color-name": "~1.1.4" - } - }, - "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 - }, - "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 - }, - "log-symbols": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-3.0.0.tgz", - "integrity": "sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ==", - "dev": true, - "requires": { - "chalk": "^2.4.2" - }, - "dependencies": { - "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, - "requires": { - "color-convert": "^1.9.0" - } - }, - "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, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "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, - "requires": { - "color-name": "1.1.3" - } - }, - "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 - }, - "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 - }, - "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, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "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, - "requires": { - "has-flag": "^4.0.0" - } - } + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/ora/node_modules/chalk": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ora/node_modules/color-convert": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/ora/node_modules/color-name": { + "version": "1.1.4", + "dev": true, + "license": "MIT" + }, + "node_modules/ora/node_modules/has-flag": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/ora/node_modules/log-symbols": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "chalk": "^2.4.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ora/node_modules/log-symbols/node_modules/ansi-styles": { + "version": "3.2.1", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/ora/node_modules/log-symbols/node_modules/chalk": { + "version": "2.4.2", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/ora/node_modules/log-symbols/node_modules/color-convert": { + "version": "1.9.3", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/ora/node_modules/log-symbols/node_modules/color-name": { + "version": "1.1.3", + "dev": true, + "license": "MIT" + }, + "node_modules/ora/node_modules/log-symbols/node_modules/has-flag": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/ora/node_modules/log-symbols/node_modules/supports-color": { + "version": "5.5.0", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/ora/node_modules/supports-color": { + "version": "7.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "os-homedir": { + "node_modules/os-homedir": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", - "integrity": "sha512-B5JU3cabzk8c67mRRd3ECmROafjYMXbuzlwtqdM8IbS8ktlTix8aFGb2bAGKrSRIlnfKwovGUUr72JUPyOb6kQ==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } }, - "os-tmpdir": { + "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 + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } }, - "osenv": { + "node_modules/osenv": { "version": "0.1.5", "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz", "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", + "deprecated": "This package is no longer supported.", "dev": true, - "requires": { + "dependencies": { "os-homedir": "^1.0.0", "os-tmpdir": "^1.0.0" } }, - "p-cancelable": { + "node_modules/p-cancelable": { "version": "2.1.1", - "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-2.1.1.tgz", - "integrity": "sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } }, - "p-limit": { + "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, - "requires": { + "license": "MIT", + "dependencies": { "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "p-locate": { + "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, - "requires": { + "license": "MIT", + "dependencies": { "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "p-map": { + "node_modules/p-map": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-2.1.0.tgz", - "integrity": "sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } }, - "p-retry": { + "node_modules/p-retry": { "version": "4.6.2", - "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-4.6.2.tgz", - "integrity": "sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@types/retry": "0.12.0", "retry": "^0.13.1" + }, + "engines": { + "node": ">=8" } }, - "p-try": { + "node_modules/p-try": { "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } }, - "pac-proxy-agent": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/pac-proxy-agent/-/pac-proxy-agent-7.0.1.tgz", - "integrity": "sha512-ASV8yU4LLKBAjqIPMbrgtaKIvxQri/yh2OpI+S6hVa9JRkUI3Y3NPFbfngDtY7oFtSMD3w31Xns89mDa3Feo5A==", + "node_modules/pac-proxy-agent": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/pac-proxy-agent/-/pac-proxy-agent-7.0.2.tgz", + "integrity": "sha512-BFi3vZnO9X5Qt6NRz7ZOaPja3ic0PhlsmCRYLOpN11+mWBCR6XJDqW5RF3j8jm4WGGQZtBA+bTfxYzeKW73eHg==", "dev": true, - "requires": { + "dependencies": { "@tootallnate/quickjs-emscripten": "^0.23.0", "agent-base": "^7.0.2", "debug": "^4.3.4", "get-uri": "^6.0.1", "http-proxy-agent": "^7.0.0", - "https-proxy-agent": "^7.0.2", - "pac-resolver": "^7.0.0", - "socks-proxy-agent": "^8.0.2" - }, - "dependencies": { - "agent-base": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", - "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", - "dev": true, - "requires": { - "debug": "^4.3.4" - } - }, - "https-proxy-agent": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.4.tgz", - "integrity": "sha512-wlwpilI7YdjSkWaQ/7omYBMTliDcmCN8OLihO6I9B86g06lMyAoqgoDpV0XqoaPOKj+0DIdAvnsWfyAAhmimcg==", - "dev": true, - "requires": { - "agent-base": "^7.0.2", - "debug": "4" - } - } + "https-proxy-agent": "^7.0.5", + "pac-resolver": "^7.0.1", + "socks-proxy-agent": "^8.0.4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/pac-proxy-agent/node_modules/agent-base": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", + "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", + "dev": true, + "dependencies": { + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/pac-proxy-agent/node_modules/https-proxy-agent": { + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.5.tgz", + "integrity": "sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw==", + "dev": true, + "dependencies": { + "agent-base": "^7.0.2", + "debug": "4" + }, + "engines": { + "node": ">= 14" } }, - "pac-resolver": { + "node_modules/pac-resolver": { "version": "7.0.1", "resolved": "https://registry.npmjs.org/pac-resolver/-/pac-resolver-7.0.1.tgz", "integrity": "sha512-5NPgf87AT2STgwa2ntRMr45jTKrYBGkVU36yT0ig/n/GMAa3oPqhZfIQ2kMEimReg0+t9kZViDVZ83qfVUlckg==", "dev": true, - "requires": { + "dependencies": { "degenerator": "^5.0.0", "netmask": "^2.0.2" + }, + "engines": { + "node": ">= 14" } }, - "param-case": { + "node_modules/param-case": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/param-case/-/param-case-3.0.4.tgz", "integrity": "sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==", "dev": true, - "requires": { + "dependencies": { "dot-case": "^3.0.4", "tslib": "^2.0.3" } }, - "parent-module": { + "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, - "requires": { + "license": "MIT", + "dependencies": { "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" } }, - "parse-cache-control": { + "node_modules/parse-cache-control": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/parse-cache-control/-/parse-cache-control-1.0.1.tgz", "integrity": "sha512-60zvsJReQPX5/QP0Kzfd/VrpjScIQ7SHBW6bFCYfEP+fp0Eppr1SHhIO5nd1PjZtvclzSzES9D/p5nFJurwfWg==", "dev": true }, - "parse-filepath": { + "node_modules/parse-filepath": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/parse-filepath/-/parse-filepath-1.0.2.tgz", - "integrity": "sha512-FwdRXKCohSVeXqwtYonZTXtbGJKrn+HNyWDYVcp5yuJlesTwNH4rsmRZ+GrKAPJ5bLpRxESMeS+Rl0VCHRvB2Q==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "is-absolute": "^1.0.0", "map-cache": "^0.2.0", "path-root": "^0.1.1" + }, + "engines": { + "node": ">=0.8" } }, - "parse-gitignore": { + "node_modules/parse-gitignore": { "version": "0.5.1", - "resolved": "https://registry.npmjs.org/parse-gitignore/-/parse-gitignore-0.5.1.tgz", - "integrity": "sha512-Ls8RQQrYC0HqaIugZ0lwKl+dcIeuaV+8iQwrsQFNHCEnodTXaEAM2+RxQFFv2xDaJ1gM4C05eY4u6KzIHvNayQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "array-unique": "^0.3.2", "is-glob": "^3.1.0" }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/parse-gitignore/node_modules/is-glob": { + "version": "3.1.0", + "dev": true, + "license": "MIT", "dependencies": { - "is-glob": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "integrity": "sha512-UFpDDrPgM6qpnFNI+rh/p3bUaq9hKLZN8bMUWzxmcnZVS3omf4IPK+BrewlnWjO1WmUsMYuSjKh4UJuV4+Lqmw==", - "dev": true, - "requires": { - "is-extglob": "^2.1.0" - } - } + "is-extglob": "^2.1.0" + }, + "engines": { + "node": ">=0.10.0" } }, - "parse-json": { + "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, - "requires": { + "license": "MIT", + "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" } }, - "parse-passwd": { + "node_modules/parse-passwd": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz", - "integrity": "sha512-1Y1A//QUXEZK7YKz+rD9WydcE1+EuPr6ZBgKecAB8tmoW6UFv0NREVJe1p+jRxtThkcbbKkfwIbWJe/IeE6m2Q==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } }, - "parse5": { + "node_modules/parse5": { "version": "7.1.2", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", - "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "entities": "^4.4.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" } }, - "parseurl": { + "node_modules/parseurl": { "version": "1.3.3", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8" + } }, - "pascal-case": { + "node_modules/pascal-case": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/pascal-case/-/pascal-case-3.1.2.tgz", "integrity": "sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==", "dev": true, - "requires": { + "dependencies": { "no-case": "^3.0.4", "tslib": "^2.0.3" } }, - "path-case": { + "node_modules/path-case": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/path-case/-/path-case-3.0.4.tgz", "integrity": "sha512-qO4qCFjXqVTrcbPt/hQfhTQ+VhFsqNKOPtytgNKkKxSoEp3XPUQ8ObFuePylOIok5gjn69ry8XiULxCwot3Wfg==", "dev": true, - "requires": { + "dependencies": { "dot-case": "^3.0.4", "tslib": "^2.0.3" } }, - "path-exists": { + "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 + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } }, - "path-is-absolute": { + "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 + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } }, - "path-is-inside": { + "node_modules/path-is-inside": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", - "integrity": "sha512-DUWJr3+ULp4zXmol/SZkFf3JGsS9/SIv+Y3Rt93/UjPpDpklB5f1er4O3POIbUuUJ3FXgqte2Q7SrU6zAqwk8w==", - "dev": true + "dev": true, + "license": "(WTFPL OR MIT)" }, - "path-key": { + "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==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } }, - "path-parse": { + "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 + "dev": true, + "license": "MIT" }, - "path-root": { + "node_modules/path-root": { "version": "0.1.1", - "resolved": "https://registry.npmjs.org/path-root/-/path-root-0.1.1.tgz", - "integrity": "sha512-QLcPegTHF11axjfojBIoDygmS2E3Lf+8+jI6wOVmNVenrKSo3mFdSGiIgdSHenczw3wPtlVMQaFVwGmM7BJdtg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "path-root-regex": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" } }, - "path-root-regex": { + "node_modules/path-root-regex": { "version": "0.1.2", - "resolved": "https://registry.npmjs.org/path-root-regex/-/path-root-regex-0.1.2.tgz", - "integrity": "sha512-4GlJ6rZDhQZFE0DPVKh0e9jmZ5egZfxTkp7bcRDuPlJXbAwhxcl2dINPUAsjLdejqaLsCeg8axcLjIbvBjN4pQ==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } }, - "path-to-regexp": { + "node_modules/path-to-regexp": { "version": "0.1.7", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", - "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==", - "dev": true + "dev": true, + "license": "MIT" }, - "path-type": { + "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 + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } }, - "pend": { + "node_modules/pend": { "version": "1.2.0", - "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", - "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==", - "dev": true + "dev": true, + "license": "MIT" }, - "picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "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 }, - "picomatch": { + "node_modules/picomatch": { "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } }, - "pidtree": { + "node_modules/pidtree": { "version": "0.3.1", - "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.3.1.tgz", - "integrity": "sha512-qQbW94hLHEqCg7nhby4yRC7G2+jYHY4Rguc2bjw7Uug4GIJuu1tvf2uHaZv5Q8zdt+WKJ6qK1FOI6amaWUo5FA==", - "dev": true + "dev": true, + "license": "MIT", + "bin": { + "pidtree": "bin/pidtree.js" + }, + "engines": { + "node": ">=0.10" + } }, - "pify": { + "node_modules/pify": { "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } }, - "pinkie": { + "node_modules/pinkie": { "version": "2.0.4", - "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", - "integrity": "sha512-MnUuEycAemtSaeFSjXKW/aroV7akBbY+Sv+RkyqFjgAe73F+MR0TBWKBRDkmfWq/HiFmdavfZ1G7h4SPZXaCSg==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } }, - "pinkie-promise": { + "node_modules/pinkie-promise": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", - "integrity": "sha512-0Gni6D4UcLTbv9c57DfxDGdr41XfgUjqWZu492f0cIGr16zDU06BWP/RAEvOuo7CQ0CNjHaLlM59YJJFm3NWlw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "pinkie": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, - "pirates": { + "node_modules/pirates": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", - "dev": true + "dev": true, + "engines": { + "node": ">= 6" + } }, - "pkg-dir": { + "node_modules/pkg-dir": { "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "find-up": "^4.0.0" }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/node_modules/find-up": { + "version": "4.1.0", + "dev": true, + "license": "MIT", "dependencies": { - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - } + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/node_modules/locate-path": { + "version": "5.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/node_modules/p-limit": { + "version": "2.3.0", + "dev": true, + "license": "MIT", + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-dir/node_modules/p-locate": { + "version": "4.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" } }, - "pkg-up": { + "node_modules/pkg-up": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/pkg-up/-/pkg-up-3.1.0.tgz", - "integrity": "sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "find-up": "^3.0.0" }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-up/node_modules/find-up": { + "version": "3.0.0", + "dev": true, + "license": "MIT", "dependencies": { - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, - "requires": { - "locate-path": "^3.0.0" - } - }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, - "requires": { - "p-limit": "^2.0.0" - } - }, - "path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", - "dev": true - } + "locate-path": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/pkg-up/node_modules/locate-path": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/pkg-up/node_modules/p-limit": { + "version": "2.3.0", + "dev": true, + "license": "MIT", + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-up/node_modules/p-locate": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "p-limit": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/pkg-up/node_modules/path-exists": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/playwright": { + "version": "1.46.1", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.46.1.tgz", + "integrity": "sha512-oPcr1yqoXLCkgKtD5eNUPLiN40rYEM39odNpIb6VE6S7/15gJmA1NzVv6zJYusV0e7tzvkU/utBFNa/Kpxmwng==", + "dev": true, + "peer": true, + "dependencies": { + "playwright-core": "1.46.1" + }, + "bin": { + "playwright": "cli.js" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "fsevents": "2.3.2" } }, - "plur": { + "node_modules/playwright-core": { + "version": "1.46.1", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.46.1.tgz", + "integrity": "sha512-h9LqIQaAv+CYvWzsZ+h3RsrqCStkBHlgo6/TJlFst3cOTlLghBQlJwPOZKQJTKNaD3QIB7aAVQ+gfWbN3NXB7A==", + "dev": true, + "peer": true, + "bin": { + "playwright-core": "cli.js" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/playwright/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" + ], + "peer": true, + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/plur": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/plur/-/plur-4.0.0.tgz", "integrity": "sha512-4UGewrYgqDFw9vV6zNV+ADmPAUAfJPKtGvb/VdpQAx25X5f3xXdGdyOEVFwkl8Hl/tl7+xbeHqSEM+D5/TirUg==", "dev": true, - "requires": { + "dependencies": { "irregular-plurals": "^3.2.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "postcss": { + "node_modules/postcss": { "version": "8.4.38", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.38.tgz", - "integrity": "sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==", "dev": true, - "requires": { + "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" + } + ], + "license": "MIT", + "dependencies": { "nanoid": "^3.3.7", "picocolors": "^1.0.0", "source-map-js": "^1.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14" } }, - "postcss-calc": { + "node_modules/postcss-calc": { "version": "9.0.1", - "resolved": "https://registry.npmjs.org/postcss-calc/-/postcss-calc-9.0.1.tgz", - "integrity": "sha512-TipgjGyzP5QzEhsOZUaIkeO5mKeMFpebWzRogWG/ysonUlnHcq5aJe0jOjpfzUU8PeSaBQnrE8ehR0QA5vs8PQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "postcss-selector-parser": "^6.0.11", "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.2.2" } }, - "postcss-colormin": { + "node_modules/postcss-colormin": { "version": "6.1.0", - "resolved": "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-6.1.0.tgz", - "integrity": "sha512-x9yX7DOxeMAR+BgGVnNSAxmAj98NX/YxEMNFP+SDCEeNLb2r3i6Hh1ksMsnW8Ub5SLCpbescQqn9YEbE9554Sw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "browserslist": "^4.23.0", "caniuse-api": "^3.0.0", "colord": "^2.9.3", "postcss-value-parser": "^4.2.0" }, - "dependencies": { - "browserslist": { - "version": "4.23.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", - "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", - "dev": true, - "requires": { - "caniuse-lite": "^1.0.30001587", - "electron-to-chromium": "^1.4.668", - "node-releases": "^2.0.14", - "update-browserslist-db": "^1.0.13" - } - }, - "caniuse-lite": { - "version": "1.0.30001612", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001612.tgz", - "integrity": "sha512-lFgnZ07UhaCcsSZgWW0K5j4e69dK1u/ltrL9lTUiFOwNHs12S3UMIEYgBV0Z6C6hRDev7iRnMzzYmKabYdXF9g==", - "dev": true - }, - "electron-to-chromium": { - "version": "1.4.748", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.748.tgz", - "integrity": "sha512-VWqjOlPZn70UZ8FTKUOkUvBLeTQ0xpty66qV0yJcAGY2/CthI4xyW9aEozRVtuwv3Kpf5xTesmJUcPwuJmgP4A==", - "dev": true - }, - "node-releases": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", - "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", - "dev": true - }, - "update-browserslist-db": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", - "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", - "dev": true, - "requires": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" - } - } + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" } }, - "postcss-convert-values": { + "node_modules/postcss-convert-values": { "version": "6.1.0", - "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-6.1.0.tgz", - "integrity": "sha512-zx8IwP/ts9WvUM6NkVSkiU902QZL1bwPhaVaLynPtCsOTqp+ZKbNi+s6XJg3rfqpKGA/oc7Oxk5t8pOQJcwl/w==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "browserslist": "^4.23.0", "postcss-value-parser": "^4.2.0" }, - "dependencies": { - "browserslist": { - "version": "4.23.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", - "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", - "dev": true, - "requires": { - "caniuse-lite": "^1.0.30001587", - "electron-to-chromium": "^1.4.668", - "node-releases": "^2.0.14", - "update-browserslist-db": "^1.0.13" - } - }, - "caniuse-lite": { - "version": "1.0.30001612", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001612.tgz", - "integrity": "sha512-lFgnZ07UhaCcsSZgWW0K5j4e69dK1u/ltrL9lTUiFOwNHs12S3UMIEYgBV0Z6C6hRDev7iRnMzzYmKabYdXF9g==", - "dev": true - }, - "electron-to-chromium": { - "version": "1.4.748", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.748.tgz", - "integrity": "sha512-VWqjOlPZn70UZ8FTKUOkUvBLeTQ0xpty66qV0yJcAGY2/CthI4xyW9aEozRVtuwv3Kpf5xTesmJUcPwuJmgP4A==", - "dev": true - }, - "node-releases": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", - "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", - "dev": true - }, - "update-browserslist-db": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", - "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", - "dev": true, - "requires": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" - } - } + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" } }, - "postcss-discard-comments": { + "node_modules/postcss-discard-comments": { "version": "6.0.2", - "resolved": "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-6.0.2.tgz", - "integrity": "sha512-65w/uIqhSBBfQmYnG92FO1mWZjJ4GL5b8atm5Yw2UgrwD7HiNiSSNwJor1eCFGzUgYnN/iIknhNRVqjrrpuglw==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } }, - "postcss-discard-duplicates": { + "node_modules/postcss-discard-duplicates": { "version": "6.0.3", - "resolved": "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-6.0.3.tgz", - "integrity": "sha512-+JA0DCvc5XvFAxwx6f/e68gQu/7Z9ud584VLmcgto28eB8FqSFZwtrLwB5Kcp70eIoWP/HXqz4wpo8rD8gpsTw==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } }, - "postcss-discard-empty": { + "node_modules/postcss-discard-empty": { "version": "6.0.3", - "resolved": "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-6.0.3.tgz", - "integrity": "sha512-znyno9cHKQsK6PtxL5D19Fj9uwSzC2mB74cpT66fhgOadEUPyXFkbgwm5tvc3bt3NAy8ltE5MrghxovZRVnOjQ==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } }, - "postcss-discard-overridden": { + "node_modules/postcss-discard-overridden": { "version": "6.0.2", - "resolved": "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-6.0.2.tgz", - "integrity": "sha512-j87xzI4LUggC5zND7KdjsI25APtyMuynXZSujByMaav2roV6OZX+8AaCUcZSWqckZpjAjRyFDdpqybgjFO0HJQ==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } }, - "postcss-loader": { + "node_modules/postcss-loader": { "version": "6.2.1", - "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-6.2.1.tgz", - "integrity": "sha512-WbbYpmAaKcux/P66bZ40bpWsBucjx/TTgVVzRZ9yUO8yQfVBlameJ0ZGVaPfH64hNSBh63a+ICP5nqOpBA0w+Q==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "cosmiconfig": "^7.0.0", "klona": "^2.0.5", "semver": "^7.3.5" }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "postcss": "^7.0.0 || ^8.0.1", + "webpack": "^5.0.0" + } + }, + "node_modules/postcss-loader/node_modules/lru-cache": { + "version": "6.0.0", + "dev": true, + "license": "ISC", "dependencies": { - "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, - "requires": { - "yallist": "^4.0.0" - } - }, - "semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - } + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/postcss-loader/node_modules/semver": { + "version": "7.6.0", + "dev": true, + "license": "ISC", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" } }, - "postcss-media-query-parser": { + "node_modules/postcss-loader/node_modules/yallist": { + "version": "4.0.0", + "dev": true, + "license": "ISC" + }, + "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 }, - "postcss-merge-longhand": { + "node_modules/postcss-merge-longhand": { "version": "6.0.5", - "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-6.0.5.tgz", - "integrity": "sha512-5LOiordeTfi64QhICp07nzzuTDjNSO8g5Ksdibt44d+uvIIAE1oZdRn8y/W5ZtYgRH/lnLDlvi9F8btZcVzu3w==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "postcss-value-parser": "^4.2.0", "stylehacks": "^6.1.1" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" } }, - "postcss-merge-rules": { + "node_modules/postcss-merge-rules": { "version": "6.1.1", - "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-6.1.1.tgz", - "integrity": "sha512-KOdWF0gju31AQPZiD+2Ar9Qjowz1LTChSjFFbS+e2sFgc4uHOp3ZvVX4sNeTlk0w2O31ecFGgrFzhO0RSWbWwQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "browserslist": "^4.23.0", "caniuse-api": "^3.0.0", "cssnano-utils": "^4.0.2", "postcss-selector-parser": "^6.0.16" }, - "dependencies": { - "browserslist": { - "version": "4.23.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", - "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", - "dev": true, - "requires": { - "caniuse-lite": "^1.0.30001587", - "electron-to-chromium": "^1.4.668", - "node-releases": "^2.0.14", - "update-browserslist-db": "^1.0.13" - } - }, - "caniuse-lite": { - "version": "1.0.30001612", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001612.tgz", - "integrity": "sha512-lFgnZ07UhaCcsSZgWW0K5j4e69dK1u/ltrL9lTUiFOwNHs12S3UMIEYgBV0Z6C6hRDev7iRnMzzYmKabYdXF9g==", - "dev": true - }, - "electron-to-chromium": { - "version": "1.4.748", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.748.tgz", - "integrity": "sha512-VWqjOlPZn70UZ8FTKUOkUvBLeTQ0xpty66qV0yJcAGY2/CthI4xyW9aEozRVtuwv3Kpf5xTesmJUcPwuJmgP4A==", - "dev": true - }, - "node-releases": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", - "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", - "dev": true - }, - "update-browserslist-db": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", - "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", - "dev": true, - "requires": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" - } - } + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" } }, - "postcss-minify-font-values": { + "node_modules/postcss-minify-font-values": { "version": "6.1.0", - "resolved": "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-6.1.0.tgz", - "integrity": "sha512-gklfI/n+9rTh8nYaSJXlCo3nOKqMNkxuGpTn/Qm0gstL3ywTr9/WRKznE+oy6fvfolH6dF+QM4nCo8yPLdvGJg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" } }, - "postcss-minify-gradients": { + "node_modules/postcss-minify-gradients": { "version": "6.0.3", - "resolved": "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-6.0.3.tgz", - "integrity": "sha512-4KXAHrYlzF0Rr7uc4VrfwDJ2ajrtNEpNEuLxFgwkhFZ56/7gaE4Nr49nLsQDZyUe+ds+kEhf+YAUolJiYXF8+Q==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "colord": "^2.9.3", "cssnano-utils": "^4.0.2", "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" } }, - "postcss-minify-params": { + "node_modules/postcss-minify-params": { "version": "6.1.0", - "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-6.1.0.tgz", - "integrity": "sha512-bmSKnDtyyE8ujHQK0RQJDIKhQ20Jq1LYiez54WiaOoBtcSuflfK3Nm596LvbtlFcpipMjgClQGyGr7GAs+H1uA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "browserslist": "^4.23.0", "cssnano-utils": "^4.0.2", "postcss-value-parser": "^4.2.0" }, - "dependencies": { - "browserslist": { - "version": "4.23.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", - "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", - "dev": true, - "requires": { - "caniuse-lite": "^1.0.30001587", - "electron-to-chromium": "^1.4.668", - "node-releases": "^2.0.14", - "update-browserslist-db": "^1.0.13" - } - }, - "caniuse-lite": { - "version": "1.0.30001612", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001612.tgz", - "integrity": "sha512-lFgnZ07UhaCcsSZgWW0K5j4e69dK1u/ltrL9lTUiFOwNHs12S3UMIEYgBV0Z6C6hRDev7iRnMzzYmKabYdXF9g==", - "dev": true - }, - "electron-to-chromium": { - "version": "1.4.748", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.748.tgz", - "integrity": "sha512-VWqjOlPZn70UZ8FTKUOkUvBLeTQ0xpty66qV0yJcAGY2/CthI4xyW9aEozRVtuwv3Kpf5xTesmJUcPwuJmgP4A==", - "dev": true - }, - "node-releases": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", - "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", - "dev": true - }, - "update-browserslist-db": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", - "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", - "dev": true, - "requires": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" - } - } + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" } }, - "postcss-minify-selectors": { + "node_modules/postcss-minify-selectors": { "version": "6.0.4", - "resolved": "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-6.0.4.tgz", - "integrity": "sha512-L8dZSwNLgK7pjTto9PzWRoMbnLq5vsZSTu8+j1P/2GB8qdtGQfn+K1uSvFgYvgh83cbyxT5m43ZZhUMTJDSClQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "postcss-selector-parser": "^6.0.16" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" } }, - "postcss-modules-extract-imports": { + "node_modules/postcss-modules-extract-imports": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.1.0.tgz", - "integrity": "sha512-k3kNe0aNFQDAZGbin48pL2VNidTF0w4/eASDsxlyspobzU3wZQLOGj7L9gfRe0Jo9/4uud09DsjFNH7winGv8Q==", - "dev": true + "dev": true, + "license": "ISC", + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } }, - "postcss-modules-local-by-default": { + "node_modules/postcss-modules-local-by-default": { "version": "4.0.5", - "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.5.tgz", - "integrity": "sha512-6MieY7sIfTK0hYfafw1OMEG+2bg8Q1ocHCpoWLqOKj3JXlKu4G7btkmM/B7lFubYkYWmRSPLZi5chid63ZaZYw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "icss-utils": "^5.0.0", "postcss-selector-parser": "^6.0.2", "postcss-value-parser": "^4.1.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" } }, - "postcss-modules-scope": { + "node_modules/postcss-modules-scope": { "version": "3.2.0", - "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.2.0.tgz", - "integrity": "sha512-oq+g1ssrsZOsx9M96c5w8laRmvEu9C3adDSjI8oTcbfkrTE8hx/zfyobUoWIxaKPO8bt6S62kxpw5GqypEw1QQ==", "dev": true, - "requires": { + "license": "ISC", + "dependencies": { "postcss-selector-parser": "^6.0.4" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" } }, - "postcss-modules-values": { + "node_modules/postcss-modules-values": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", - "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", "dev": true, - "requires": { + "license": "ISC", + "dependencies": { "icss-utils": "^5.0.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" } }, - "postcss-normalize-charset": { + "node_modules/postcss-normalize-charset": { "version": "6.0.2", - "resolved": "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-6.0.2.tgz", - "integrity": "sha512-a8N9czmdnrjPHa3DeFlwqst5eaL5W8jYu3EBbTTkI5FHkfMhFZh1EGbku6jhHhIzTA6tquI2P42NtZ59M/H/kQ==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } }, - "postcss-normalize-display-values": { + "node_modules/postcss-normalize-display-values": { "version": "6.0.2", - "resolved": "https://registry.npmjs.org/postcss-normalize-display-values/-/postcss-normalize-display-values-6.0.2.tgz", - "integrity": "sha512-8H04Mxsb82ON/aAkPeq8kcBbAtI5Q2a64X/mnRRfPXBq7XeogoQvReqxEfc0B4WPq1KimjezNC8flUtC3Qz6jg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" } }, - "postcss-normalize-positions": { + "node_modules/postcss-normalize-positions": { "version": "6.0.2", - "resolved": "https://registry.npmjs.org/postcss-normalize-positions/-/postcss-normalize-positions-6.0.2.tgz", - "integrity": "sha512-/JFzI441OAB9O7VnLA+RtSNZvQ0NCFZDOtp6QPFo1iIyawyXg0YI3CYM9HBy1WvwCRHnPep/BvI1+dGPKoXx/Q==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" } }, - "postcss-normalize-repeat-style": { + "node_modules/postcss-normalize-repeat-style": { "version": "6.0.2", - "resolved": "https://registry.npmjs.org/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-6.0.2.tgz", - "integrity": "sha512-YdCgsfHkJ2jEXwR4RR3Tm/iOxSfdRt7jplS6XRh9Js9PyCR/aka/FCb6TuHT2U8gQubbm/mPmF6L7FY9d79VwQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" } }, - "postcss-normalize-string": { + "node_modules/postcss-normalize-string": { "version": "6.0.2", - "resolved": "https://registry.npmjs.org/postcss-normalize-string/-/postcss-normalize-string-6.0.2.tgz", - "integrity": "sha512-vQZIivlxlfqqMp4L9PZsFE4YUkWniziKjQWUtsxUiVsSSPelQydwS8Wwcuw0+83ZjPWNTl02oxlIvXsmmG+CiQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" } }, - "postcss-normalize-timing-functions": { + "node_modules/postcss-normalize-timing-functions": { "version": "6.0.2", - "resolved": "https://registry.npmjs.org/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-6.0.2.tgz", - "integrity": "sha512-a+YrtMox4TBtId/AEwbA03VcJgtyW4dGBizPl7e88cTFULYsprgHWTbfyjSLyHeBcK/Q9JhXkt2ZXiwaVHoMzA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" } }, - "postcss-normalize-unicode": { + "node_modules/postcss-normalize-unicode": { "version": "6.1.0", - "resolved": "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-6.1.0.tgz", - "integrity": "sha512-QVC5TQHsVj33otj8/JD869Ndr5Xcc/+fwRh4HAsFsAeygQQXm+0PySrKbr/8tkDKzW+EVT3QkqZMfFrGiossDg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "browserslist": "^4.23.0", "postcss-value-parser": "^4.2.0" }, - "dependencies": { - "browserslist": { - "version": "4.23.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", - "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", - "dev": true, - "requires": { - "caniuse-lite": "^1.0.30001587", - "electron-to-chromium": "^1.4.668", - "node-releases": "^2.0.14", - "update-browserslist-db": "^1.0.13" - } - }, - "caniuse-lite": { - "version": "1.0.30001612", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001612.tgz", - "integrity": "sha512-lFgnZ07UhaCcsSZgWW0K5j4e69dK1u/ltrL9lTUiFOwNHs12S3UMIEYgBV0Z6C6hRDev7iRnMzzYmKabYdXF9g==", - "dev": true - }, - "electron-to-chromium": { - "version": "1.4.748", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.748.tgz", - "integrity": "sha512-VWqjOlPZn70UZ8FTKUOkUvBLeTQ0xpty66qV0yJcAGY2/CthI4xyW9aEozRVtuwv3Kpf5xTesmJUcPwuJmgP4A==", - "dev": true - }, - "node-releases": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", - "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", - "dev": true - }, - "update-browserslist-db": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", - "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", - "dev": true, - "requires": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" - } - } + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" } }, - "postcss-normalize-url": { + "node_modules/postcss-normalize-url": { "version": "6.0.2", - "resolved": "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-6.0.2.tgz", - "integrity": "sha512-kVNcWhCeKAzZ8B4pv/DnrU1wNh458zBNp8dh4y5hhxih5RZQ12QWMuQrDgPRw3LRl8mN9vOVfHl7uhvHYMoXsQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" } }, - "postcss-normalize-whitespace": { + "node_modules/postcss-normalize-whitespace": { "version": "6.0.2", - "resolved": "https://registry.npmjs.org/postcss-normalize-whitespace/-/postcss-normalize-whitespace-6.0.2.tgz", - "integrity": "sha512-sXZ2Nj1icbJOKmdjXVT9pnyHQKiSAyuNQHSgRCUgThn2388Y9cGVDR+E9J9iAYbSbLHI+UUwLVl1Wzco/zgv0Q==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" } }, - "postcss-ordered-values": { + "node_modules/postcss-ordered-values": { "version": "6.0.2", - "resolved": "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-6.0.2.tgz", - "integrity": "sha512-VRZSOB+JU32RsEAQrO94QPkClGPKJEL/Z9PCBImXMhIeK5KAYo6slP/hBYlLgrCjFxyqvn5VC81tycFEDBLG1Q==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "cssnano-utils": "^4.0.2", "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" } }, - "postcss-reduce-initial": { + "node_modules/postcss-reduce-initial": { "version": "6.1.0", - "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-6.1.0.tgz", - "integrity": "sha512-RarLgBK/CrL1qZags04oKbVbrrVK2wcxhvta3GCxrZO4zveibqbRPmm2VI8sSgCXwoUHEliRSbOfpR0b/VIoiw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "browserslist": "^4.23.0", "caniuse-api": "^3.0.0" }, - "dependencies": { - "browserslist": { - "version": "4.23.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", - "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", - "dev": true, - "requires": { - "caniuse-lite": "^1.0.30001587", - "electron-to-chromium": "^1.4.668", - "node-releases": "^2.0.14", - "update-browserslist-db": "^1.0.13" - } - }, - "caniuse-lite": { - "version": "1.0.30001612", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001612.tgz", - "integrity": "sha512-lFgnZ07UhaCcsSZgWW0K5j4e69dK1u/ltrL9lTUiFOwNHs12S3UMIEYgBV0Z6C6hRDev7iRnMzzYmKabYdXF9g==", - "dev": true - }, - "electron-to-chromium": { - "version": "1.4.748", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.748.tgz", - "integrity": "sha512-VWqjOlPZn70UZ8FTKUOkUvBLeTQ0xpty66qV0yJcAGY2/CthI4xyW9aEozRVtuwv3Kpf5xTesmJUcPwuJmgP4A==", - "dev": true - }, - "node-releases": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", - "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", - "dev": true - }, - "update-browserslist-db": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", - "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", - "dev": true, - "requires": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" - } - } + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" } }, - "postcss-reduce-transforms": { + "node_modules/postcss-reduce-transforms": { "version": "6.0.2", - "resolved": "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-6.0.2.tgz", - "integrity": "sha512-sB+Ya++3Xj1WaT9+5LOOdirAxP7dJZms3GRcYheSPi1PiTMigsxHAdkrbItHxwYHr4kt1zL7mmcHstgMYT+aiA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" } }, - "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==", + "node_modules/postcss-resolve-nested-selector": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/postcss-resolve-nested-selector/-/postcss-resolve-nested-selector-0.1.6.tgz", + "integrity": "sha512-0sglIs9Wmkzbr8lQwEyIzlDOOC9bGmfVKcJTaxv3vMmd3uo4o4DerC3En0bnmgceeql9BfC8hRkp7cg0fjdVqw==", "dev": true }, - "postcss-safe-parser": { + "node_modules/postcss-safe-parser": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/postcss-safe-parser/-/postcss-safe-parser-6.0.0.tgz", "integrity": "sha512-FARHN8pwH+WiS2OPCxJI8FuRJpTVnn6ZNFiqAM2aeW2LwTHWWmWgIyKC6cUo0L8aeKiF/14MNvnpls6R2PBeMQ==", - "dev": true + "dev": true, + "engines": { + "node": ">=12.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + "peerDependencies": { + "postcss": "^8.3.3" + } }, - "postcss-scss": { + "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 + "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" + } }, - "postcss-selector-parser": { + "node_modules/postcss-selector-parser": { "version": "6.0.16", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.16.tgz", - "integrity": "sha512-A0RVJrX+IUkVZbW3ClroRWurercFhieevHB38sr2+l9eUClMqome3LmEmnhlNy+5Mr2EYN6B2Kaw9wYdd+VHiw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "cssesc": "^3.0.0", "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" } }, - "postcss-svgo": { + "node_modules/postcss-svgo": { "version": "6.0.3", - "resolved": "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-6.0.3.tgz", - "integrity": "sha512-dlrahRmxP22bX6iKEjOM+c8/1p+81asjKT+V5lrgOH944ryx/OHpclnIbGsKVd3uWOXFLYJwCVf0eEkJGvO96g==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "postcss-value-parser": "^4.2.0", "svgo": "^3.2.0" + }, + "engines": { + "node": "^14 || ^16 || >= 18" + }, + "peerDependencies": { + "postcss": "^8.4.31" } }, - "postcss-unique-selectors": { + "node_modules/postcss-unique-selectors": { "version": "6.0.4", - "resolved": "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-6.0.4.tgz", - "integrity": "sha512-K38OCaIrO8+PzpArzkLKB42dSARtC2tmG6PvD4b1o1Q2E9Os8jzfWFfSy/rixsHwohtsDdFtAWGjFVFUdwYaMg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "postcss-selector-parser": "^6.0.16" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" } }, - "postcss-value-parser": { + "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 + "dev": true, + "license": "MIT" }, - "prelude-ls": { + "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 + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8.0" + } }, - "prettier": { - "version": "npm:wp-prettier@3.0.3", - "resolved": "https://registry.npmjs.org/wp-prettier/-/wp-prettier-3.0.3.tgz", - "integrity": "sha512-X4UlrxDTH8oom9qXlcjnydsjAOD2BmB6yFmvS4Z2zdTzqqpRWb+fbqrH412+l+OUXmbzJlSXjlMFYPgYG12IAA==", - "dev": true + "node_modules/prettier": { + "name": "wp-prettier", + "version": "3.0.3", + "dev": true, + "license": "MIT", + "bin": { + "prettier": "bin/prettier.cjs" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/prettier/prettier?sponsor=1" + } }, - "prettier-linter-helpers": { + "node_modules/prettier-linter-helpers": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz", "integrity": "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==", "dev": true, - "requires": { + "dependencies": { "fast-diff": "^1.1.2" + }, + "engines": { + "node": ">=6.0.0" } }, - "pretty-format": { + "node_modules/pretty-format": { "version": "29.7.0", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", - "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@jest/schemas": "^29.6.3", "ansi-styles": "^5.0.0", "react-is": "^18.0.0" }, - "dependencies": { - "ansi-styles": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", - "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", - "dev": true - } + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/pretty-format/node_modules/ansi-styles": { + "version": "5.2.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "process-nextick-args": { + "node_modules/process-nextick-args": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "dev": true + "dev": true, + "license": "MIT" }, - "progress": { + "node_modules/progress": { "version": "2.0.3", - "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", - "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.4.0" + } }, - "prompts": { + "node_modules/prompts": { "version": "2.4.2", - "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", - "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "kleur": "^3.0.3", "sisteransi": "^1.0.5" + }, + "engines": { + "node": ">= 6" } }, - "prop-types": { + "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==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "loose-envify": "^1.4.0", "object-assign": "^4.1.1", "react-is": "^16.13.1" - }, - "dependencies": { - "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==", - "dev": true - } } }, - "proxy-addr": { + "node_modules/prop-types/node_modules/react-is": { + "version": "16.13.1", + "dev": true, + "license": "MIT" + }, + "node_modules/proxy-addr": { "version": "2.0.7", - "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", - "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "forwarded": "0.2.0", "ipaddr.js": "1.9.1" }, - "dependencies": { - "ipaddr.js": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", - "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", - "dev": true - } + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/proxy-addr/node_modules/ipaddr.js": { + "version": "1.9.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.10" } }, - "proxy-agent": { + "node_modules/proxy-agent": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/proxy-agent/-/proxy-agent-6.3.0.tgz", "integrity": "sha512-0LdR757eTj/JfuU7TL2YCuAZnxWXu3tkJbg4Oq3geW/qFNT/32T0sp2HnZ9O0lMR4q3vwAt0+xCA8SR0WAD0og==", "dev": true, - "requires": { + "dependencies": { "agent-base": "^7.0.2", "debug": "^4.3.4", "http-proxy-agent": "^7.0.0", @@ -17650,80 +17142,93 @@ "proxy-from-env": "^1.1.0", "socks-proxy-agent": "^8.0.1" }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/proxy-agent/node_modules/agent-base": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", + "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", + "dev": true, + "dependencies": { + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/proxy-agent/node_modules/https-proxy-agent": { + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.5.tgz", + "integrity": "sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw==", + "dev": true, "dependencies": { - "agent-base": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", - "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", - "dev": true, - "requires": { - "debug": "^4.3.4" - } - }, - "https-proxy-agent": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.4.tgz", - "integrity": "sha512-wlwpilI7YdjSkWaQ/7omYBMTliDcmCN8OLihO6I9B86g06lMyAoqgoDpV0XqoaPOKj+0DIdAvnsWfyAAhmimcg==", - "dev": true, - "requires": { - "agent-base": "^7.0.2", - "debug": "4" - } - }, - "lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", - "dev": true - } + "agent-base": "^7.0.2", + "debug": "4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/proxy-agent/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "dev": true, + "engines": { + "node": ">=12" } }, - "proxy-from-env": { + "node_modules/proxy-from-env": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", - "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==", - "dev": true + "dev": true, + "license": "MIT" }, - "ps-list": { + "node_modules/ps-list": { "version": "8.1.1", "resolved": "https://registry.npmjs.org/ps-list/-/ps-list-8.1.1.tgz", "integrity": "sha512-OPS9kEJYVmiO48u/B9qneqhkMvgCxT+Tm28VCEJpheTpl8cJ0ffZRRNgS5mrQRTrX5yRTpaJ+hRDeefXYmmorQ==", - "dev": true + "dev": true, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "pseudomap": { + "node_modules/pseudomap": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==", - "dev": true + "dev": true, + "license": "ISC" }, - "psl": { + "node_modules/psl": { "version": "1.9.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", - "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==", - "dev": true + "dev": true, + "license": "MIT" }, - "pump": { + "node_modules/pump": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "end-of-stream": "^1.1.0", "once": "^1.3.1" } }, - "punycode": { + "node_modules/punycode": { "version": "2.3.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", - "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } }, - "puppeteer-core": { + "node_modules/puppeteer-core": { "version": "13.7.0", - "resolved": "https://registry.npmjs.org/puppeteer-core/-/puppeteer-core-13.7.0.tgz", - "integrity": "sha512-rXja4vcnAzFAP1OVLq/5dWNfwBGuzcOARJ6qGV7oAZhnLmVRU8G5MsdeQEAOy332ZhkIOnn9jp15R89LKHyp2Q==", "dev": true, - "requires": { + "license": "Apache-2.0", + "dependencies": { "cross-fetch": "3.1.5", "debug": "4.3.4", "devtools-protocol": "0.0.981744", @@ -17737,309 +17242,411 @@ "unbzip2-stream": "1.4.3", "ws": "8.5.0" }, + "engines": { + "node": ">=10.18.1" + } + }, + "node_modules/puppeteer-core/node_modules/cross-fetch": { + "version": "3.1.5", + "dev": true, + "license": "MIT", "dependencies": { - "cross-fetch": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.1.5.tgz", - "integrity": "sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw==", - "dev": true, - "requires": { - "node-fetch": "2.6.7" - } - }, - "devtools-protocol": { - "version": "0.0.981744", - "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.981744.tgz", - "integrity": "sha512-0cuGS8+jhR67Fy7qG3i3Pc7Aw494sb9yG9QgpG97SFVWwolgYjlhJg7n+UaHxOQT30d1TYu/EYe9k01ivLErIg==", - "dev": true - }, - "extract-zip": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz", - "integrity": "sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==", - "dev": true, - "requires": { - "@types/yauzl": "^2.9.1", - "debug": "^4.1.1", - "get-stream": "^5.1.0", - "yauzl": "^2.10.0" - } - }, - "node-fetch": { - "version": "2.6.7", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", - "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", - "dev": true, - "requires": { - "whatwg-url": "^5.0.0" - } - }, - "readable-stream": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", - "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "tar-fs": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz", - "integrity": "sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==", - "dev": true, - "requires": { - "chownr": "^1.1.1", - "mkdirp-classic": "^0.5.2", - "pump": "^3.0.0", - "tar-stream": "^2.1.4" - } - }, - "tar-stream": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", - "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", - "dev": true, - "requires": { - "bl": "^4.0.3", - "end-of-stream": "^1.4.1", - "fs-constants": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.1.1" - } + "node-fetch": "2.6.7" + } + }, + "node_modules/puppeteer-core/node_modules/devtools-protocol": { + "version": "0.0.981744", + "dev": true, + "license": "BSD-3-Clause" + }, + "node_modules/puppeteer-core/node_modules/extract-zip": { + "version": "2.0.1", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "debug": "^4.1.1", + "get-stream": "^5.1.0", + "yauzl": "^2.10.0" + }, + "bin": { + "extract-zip": "cli.js" + }, + "engines": { + "node": ">= 10.17.0" + }, + "optionalDependencies": { + "@types/yauzl": "^2.9.1" + } + }, + "node_modules/puppeteer-core/node_modules/node-fetch": { + "version": "2.6.7", + "dev": true, + "license": "MIT", + "dependencies": { + "whatwg-url": "^5.0.0" + }, + "engines": { + "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } + } + }, + "node_modules/puppeteer-core/node_modules/readable-stream": { + "version": "3.6.2", + "dev": true, + "license": "MIT", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/puppeteer-core/node_modules/tar-fs": { + "version": "2.1.1", + "dev": true, + "license": "MIT", + "dependencies": { + "chownr": "^1.1.1", + "mkdirp-classic": "^0.5.2", + "pump": "^3.0.0", + "tar-stream": "^2.1.4" + } + }, + "node_modules/puppeteer-core/node_modules/tar-stream": { + "version": "2.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "bl": "^4.0.3", + "end-of-stream": "^1.4.1", + "fs-constants": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^3.1.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/puppeteer-core/node_modules/ws": { + "version": "8.5.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true }, - "ws": { - "version": "8.5.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.5.0.tgz", - "integrity": "sha512-BWX0SWVgLPzYwF8lTzEy1egjhS4S4OEAHfsO8o65WOVsrnSRGaSiUaa9e0ggGlkMTtBlmOpEXiie9RUcBO86qg==", - "dev": true + "utf-8-validate": { + "optional": true } } }, - "pure-rand": { + "node_modules/pure-rand": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/pure-rand/-/pure-rand-6.1.0.tgz", "integrity": "sha512-bVWawvoZoBYpp6yIoQtQXHZjmz35RSVHnUOTefl8Vcjr8snTPY1wnpSPMWekcFwbxI6gtmT7rSYPFvz71ldiOA==", - "dev": true + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/dubzzz" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/fast-check" + } + ] }, - "qrcode-generator": { + "node_modules/qrcode-generator": { "version": "1.4.4", - "resolved": "https://registry.npmjs.org/qrcode-generator/-/qrcode-generator-1.4.4.tgz", - "integrity": "sha512-HM7yY8O2ilqhmULxGMpcHSF1EhJJ9yBj8gvDEuZ6M+KGJ0YY2hKpnXvRD+hZPLrDVck3ExIGhmPtSdcjC+guuw==" + "license": "MIT" }, - "qs": { + "node_modules/qs": { "version": "6.11.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", - "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", "dev": true, - "requires": { + "license": "BSD-3-Clause", + "dependencies": { "side-channel": "^1.0.4" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "querystringify": { + "node_modules/querystringify": { "version": "2.2.0", - "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", - "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==", - "dev": true + "dev": true, + "license": "MIT" }, - "queue-microtask": { + "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 + "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" + } + ], + "license": "MIT" }, - "queue-tick": { + "node_modules/queue-tick": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/queue-tick/-/queue-tick-1.0.1.tgz", "integrity": "sha512-kJt5qhMxoszgU/62PLP1CJytzd2NKetjSRnyuj31fDd3Rlcz3fzlFdFLD1SItunPwyqEOkca6GbV612BWfaBag==", "dev": true }, - "quick-lru": { + "node_modules/quick-lru": { "version": "5.1.1", - "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", - "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "randombytes": { + "node_modules/randombytes": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "safe-buffer": "^5.1.0" } }, - "range-parser": { + "node_modules/range-parser": { "version": "1.2.1", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } }, - "raw-body": { + "node_modules/raw-body": { "version": "2.5.2", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", - "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "bytes": "3.1.2", "http-errors": "2.0.0", "iconv-lite": "0.4.24", "unpipe": "1.0.0" }, - "dependencies": { - "bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", - "dev": true - } + "engines": { + "node": ">= 0.8" } }, - "react": { - "version": "17.0.2", - "resolved": "https://registry.npmjs.org/react/-/react-17.0.2.tgz", - "integrity": "sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==", + "node_modules/raw-body/node_modules/bytes": { + "version": "3.1.2", "dev": true, - "requires": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1" + "license": "MIT", + "engines": { + "node": ">= 0.8" } }, - "react-dom": { - "version": "17.0.2", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-17.0.2.tgz", - "integrity": "sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA==", + "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==", "dev": true, - "requires": { + "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==", + "dev": true, + "peer": true, + "dependencies": { "loose-envify": "^1.1.0", - "object-assign": "^4.1.1", - "scheduler": "^0.20.2" + "scheduler": "^0.23.2" + }, + "peerDependencies": { + "react": "^18.3.1" } }, - "react-is": { + "node_modules/react-is": { "version": "18.2.0", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", - "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==", - "dev": true + "dev": true, + "license": "MIT" + }, + "node_modules/react-refresh": { + "version": "0.14.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/read-pkg": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "load-json-file": "^4.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/read-pkg-up": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", + "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", + "dev": true, + "dependencies": { + "find-up": "^4.1.0", + "read-pkg": "^5.2.0", + "type-fest": "^0.8.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/read-pkg-up/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/read-pkg-up/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/read-pkg-up/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/read-pkg-up/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/read-pkg-up/node_modules/read-pkg": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", + "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", + "dev": true, + "dependencies": { + "@types/normalize-package-data": "^2.4.0", + "normalize-package-data": "^2.5.0", + "parse-json": "^5.0.0", + "type-fest": "^0.6.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/read-pkg-up/node_modules/read-pkg/node_modules/type-fest": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", + "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", + "dev": true, + "engines": { + "node": ">=8" + } }, - "react-refresh": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.14.0.tgz", - "integrity": "sha512-wViHqhAd8OHeLS/IRMJjTSDHF3U9eWi62F/MledQGPdJGDhodXJ9PBLNGr6WWL7qlH12Mt3TyTpbS+hGXMjCzQ==", - "dev": true + "node_modules/read-pkg-up/node_modules/type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "dev": true, + "engines": { + "node": ">=8" + } }, - "read-pkg": { + "node_modules/read-pkg/node_modules/path-type": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", - "integrity": "sha512-BLq/cCO9two+lBgiTYNqD6GdtK8s4NpaWrl6/rCO9w0TUS8oJl7cmToOZfRYllKTISY6nt1U7jQ53brmKqY6BA==", "dev": true, - "requires": { - "load-json-file": "^4.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^3.0.0" - }, + "license": "MIT", "dependencies": { - "path-type": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", - "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", - "dev": true, - "requires": { - "pify": "^3.0.0" - } - }, - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==", - "dev": true - } + "pify": "^3.0.0" + }, + "engines": { + "node": ">=4" } }, - "read-pkg-up": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", - "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", + "node_modules/read-pkg/node_modules/pify": { + "version": "3.0.0", "dev": true, - "requires": { - "find-up": "^4.1.0", - "read-pkg": "^5.2.0", - "type-fest": "^0.8.1" - }, - "dependencies": { - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "read-pkg": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", - "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", - "dev": true, - "requires": { - "@types/normalize-package-data": "^2.4.0", - "normalize-package-data": "^2.5.0", - "parse-json": "^5.0.0", - "type-fest": "^0.6.0" - }, - "dependencies": { - "type-fest": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", - "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", - "dev": true - } - } - }, - "type-fest": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", - "dev": true - } + "license": "MIT", + "engines": { + "node": ">=4" } }, - "readable-stream": { + "node_modules/readable-stream": { "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", "isarray": "~1.0.0", @@ -18049,437 +17656,568 @@ "util-deprecate": "~1.0.1" } }, - "readdirp": { + "node_modules/readdirp": { "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" } }, - "rechoir": { + "node_modules/rechoir": { "version": "0.7.1", - "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.7.1.tgz", - "integrity": "sha512-/njmZ8s1wVeR6pjTZ+0nCnv8SpZNRMT2D1RLOJQESlYFDBvwpTA4KWJpZ+sBJ4+vhjILRcK7JIFdGCdxEAAitg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "resolve": "^1.9.0" + }, + "engines": { + "node": ">= 0.10" } }, - "redent": { + "node_modules/redent": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", "dev": true, - "requires": { + "dependencies": { "indent-string": "^4.0.0", "strip-indent": "^3.0.0" + }, + "engines": { + "node": ">=8" } }, - "regenerate": { + "node_modules/regenerate": { "version": "1.4.2", "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", "dev": true }, - "regenerate-unicode-properties": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz", - "integrity": "sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ==", + "node_modules/regenerate-unicode-properties": { + "version": "10.1.1", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.1.tgz", + "integrity": "sha512-X007RyZLsCJVVrjgEFVpLUTZwyOZk3oiL75ZcuYjlIWd6rNJtOjkBwQc5AsRrpbKVkxN6sklw/k/9m2jJYOf8Q==", "dev": true, - "requires": { + "dependencies": { "regenerate": "^1.4.2" + }, + "engines": { + "node": ">=4" } }, - "regenerator-runtime": { + "node_modules/regenerator-runtime": { "version": "0.13.9", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz", - "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==", - "dev": true + "dev": true, + "license": "MIT" }, - "regenerator-transform": { - "version": "0.15.0", - "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.0.tgz", - "integrity": "sha512-LsrGtPmbYg19bcPHwdtmXwbW+TqNvtY4riE3P83foeHRroMbH6/2ddFBfab3t7kbzc7v7p4wbkIecHImqt0QNg==", + "node_modules/regenerator-transform": { + "version": "0.15.2", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.2.tgz", + "integrity": "sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==", "dev": true, - "requires": { + "dependencies": { "@babel/runtime": "^7.8.4" } }, - "regexp.prototype.flags": { + "node_modules/regexp.prototype.flags": { "version": "1.4.3", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz", - "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", "functions-have-names": "^1.2.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "regexpp": { + "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 + "dev": true, + "license": "MIT", + "optional": true, + "peer": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + } }, - "regexpu-core": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.2.1.tgz", - "integrity": "sha512-HrnlNtpvqP1Xkb28tMhBUO2EbyUHdQlsnlAhzWcwHy8WJR53UWr7/MAvqrsQKMbV4qdpv03oTMG8iIhfsPFktQ==", + "node_modules/regexpu-core": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.2.tgz", + "integrity": "sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==", "dev": true, - "requires": { + "dependencies": { + "@babel/regjsgen": "^0.8.0", "regenerate": "^1.4.2", "regenerate-unicode-properties": "^10.1.0", - "regjsgen": "^0.7.1", "regjsparser": "^0.9.1", "unicode-match-property-ecmascript": "^2.0.0", - "unicode-match-property-value-ecmascript": "^2.0.0" + "unicode-match-property-value-ecmascript": "^2.1.0" + }, + "engines": { + "node": ">=4" } }, - "regextras": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/regextras/-/regextras-0.8.0.tgz", - "integrity": "sha512-k519uI04Z3SaY0fLX843MRXnDeG2+vHOFsyhiPZvNLe7r8rD2YNRjq4BQLZZ0oAr2NrtvZlICsXysGNFPGa3CQ==", - "dev": true - }, - "regjsgen": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.7.1.tgz", - "integrity": "sha512-RAt+8H2ZEzHeYWxZ3H2z6tF18zyyOnlcdaafLrm21Bguj7uZy6ULibiAFdXEtKQY4Sy7wDTwDiOazasMLc4KPA==", - "dev": true - }, - "regjsparser": { + "node_modules/regjsparser": { "version": "0.9.1", "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.9.1.tgz", "integrity": "sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==", "dev": true, - "requires": { + "dependencies": { "jsesc": "~0.5.0" }, - "dependencies": { - "jsesc": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", - "dev": true - } + "bin": { + "regjsparser": "bin/parser" } }, - "remove-accents": { + "node_modules/regjsparser/node_modules/jsesc": { "version": "0.5.0", - "resolved": "https://registry.npmjs.org/remove-accents/-/remove-accents-0.5.0.tgz", - "integrity": "sha512-8g3/Otx1eJaVD12e31UbJj1YzdtVvzH85HV7t+9MJYk/u3XmkOUJ5Ys9wQrf9PCPK8+xn4ymzqYCiZl6QWKn+A==", - "dev": true + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", + "dev": true, + "bin": { + "jsesc": "bin/jsesc" + } }, - "require-directory": { + "node_modules/require-directory": { "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } }, - "require-from-string": { + "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 + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } }, - "requireindex": { + "node_modules/requireindex": { "version": "1.2.0", - "resolved": "https://registry.npmjs.org/requireindex/-/requireindex-1.2.0.tgz", - "integrity": "sha512-L9jEkOi3ASd9PYit2cwRfyppc9NoABujTP8/5gFcbERmo5jUoAKovIC3fsF17pkTnGsrByysqX+Kxd2OTNI1ww==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.5" + } }, - "requires-port": { + "node_modules/requires-port": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", - "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==", - "dev": true + "dev": true, + "license": "MIT" }, - "resolve": { + "node_modules/resolve": { "version": "1.22.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", - "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "is-core-module": "^2.9.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "resolve-alpn": { + "node_modules/resolve-alpn": { "version": "1.2.1", - "resolved": "https://registry.npmjs.org/resolve-alpn/-/resolve-alpn-1.2.1.tgz", - "integrity": "sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g==", - "dev": true + "dev": true, + "license": "MIT" }, - "resolve-bin": { + "node_modules/resolve-bin": { "version": "0.4.3", - "resolved": "https://registry.npmjs.org/resolve-bin/-/resolve-bin-0.4.3.tgz", - "integrity": "sha512-9u8TMpc+SEHXxQXblXHz5yRvRZERkCZimFN9oz85QI3uhkh7nqfjm6OGTLg+8vucpXGcY4jLK6WkylPmt7GSvw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "find-parent-dir": "~0.3.0" } }, - "resolve-cwd": { + "node_modules/resolve-cwd": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", - "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" } }, - "resolve-dir": { + "node_modules/resolve-dir": { "version": "0.1.1", - "resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-0.1.1.tgz", - "integrity": "sha512-QxMPqI6le2u0dCLyiGzgy92kjkkL6zO0XyvHzjdTNH3zM6e5Hz3BwG6+aEyNgiQ5Xz6PwTwgQEj3U50dByPKIA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "expand-tilde": "^1.2.2", "global-modules": "^0.2.3" }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/resolve-dir/node_modules/expand-tilde": { + "version": "1.2.2", + "dev": true, + "license": "MIT", "dependencies": { - "expand-tilde": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-1.2.2.tgz", - "integrity": "sha512-rtmc+cjLZqnu9dSYosX9EWmSJhTwpACgJQTfj4hgg2JjOD/6SIQalZrt4a3aQeh++oNxkazcaxrhPUj6+g5G/Q==", - "dev": true, - "requires": { - "os-homedir": "^1.0.1" - } - } + "os-homedir": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" } }, - "resolve-from": { + "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 + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } }, - "resolve-pkg": { + "node_modules/resolve-pkg": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/resolve-pkg/-/resolve-pkg-2.0.0.tgz", - "integrity": "sha512-+1lzwXehGCXSeryaISr6WujZzowloigEofRB+dj75y9RRa/obVcYgbHJd53tdYw8pvZj8GojXaaENws8Ktw/hQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" } }, - "resolve.exports": { + "node_modules/resolve.exports": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.2.tgz", "integrity": "sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg==", - "dev": true + "dev": true, + "engines": { + "node": ">=10" + } }, - "responselike": { + "node_modules/responselike": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/responselike/-/responselike-2.0.1.tgz", - "integrity": "sha512-4gl03wn3hj1HP3yzgdI7d3lCkF95F21Pz4BPGvKHinyQzALR5CapwC8yIi0Rh58DEMQ/SguC03wFj2k0M/mHhw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "lowercase-keys": "^2.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "restore-cursor": { + "node_modules/restore-cursor": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", - "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "onetime": "^5.1.0", "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=8" } }, - "retry": { + "node_modules/retry": { "version": "0.13.1", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", - "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 4" + } }, - "reusify": { + "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 + "dev": true, + "license": "MIT", + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } }, - "rimraf": { + "node_modules/rimraf": { "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", "dev": true, - "requires": { + "license": "ISC", + "dependencies": { "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "robots-parser": { + "node_modules/robots-parser": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/robots-parser/-/robots-parser-3.0.1.tgz", "integrity": "sha512-s+pyvQeIKIZ0dx5iJiQk1tPLJAWln39+MI5jtM8wnyws+G5azk+dMnMX0qfbqNetKKNgcWWOdi0sfm+FbQbgdQ==", - "dev": true + "dev": true, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/rtlcss": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/rtlcss/-/rtlcss-3.5.0.tgz", + "integrity": "sha512-wzgMaMFHQTnyi9YOwsx9LjOxYXJPzS8sYnFaKm6R5ysvTkwzHiB0vxnbHwchHQT65PTdBjDG21/kQBWI7q9O7A==", + "dev": true, + "dependencies": { + "find-up": "^5.0.0", + "picocolors": "^1.0.0", + "postcss": "^8.3.11", + "strip-json-comments": "^3.1.1" + }, + "bin": { + "rtlcss": "bin/rtlcss.js" + } + }, + "node_modules/rtlcss-webpack-plugin": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/rtlcss-webpack-plugin/-/rtlcss-webpack-plugin-4.0.7.tgz", + "integrity": "sha512-ouSbJtgcLBBQIsMgarxsDnfgRqm/AS4BKls/mz/Xb6HSl+PdEzefTR+Wz5uWQx4odoX0g261Z7yb3QBz0MTm0g==", + "dev": true, + "dependencies": { + "babel-runtime": "~6.25.0", + "rtlcss": "^3.5.0" + } }, - "run-async": { + "node_modules/run-async": { "version": "2.4.1", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", - "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } }, - "run-con": { + "node_modules/run-con": { "version": "1.2.12", - "resolved": "https://registry.npmjs.org/run-con/-/run-con-1.2.12.tgz", - "integrity": "sha512-5257ILMYIF4RztL9uoZ7V9Q97zHtNHn5bN3NobeAnzB1P3ASLgg8qocM2u+R18ttp+VEM78N2LK8XcNVtnSRrg==", "dev": true, - "requires": { + "license": "(BSD-2-Clause OR MIT OR Apache-2.0)", + "dependencies": { "deep-extend": "^0.6.0", "ini": "~3.0.0", "minimist": "^1.2.8", "strip-json-comments": "~3.1.1" }, - "dependencies": { - "ini": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/ini/-/ini-3.0.1.tgz", - "integrity": "sha512-it4HyVAUTKBc6m8e1iXWvXSTdndF7HbdN713+kvLrymxTaU4AUBWrJ4vEooP+V7fexnVD3LKcBshjGGPefSMUQ==", - "dev": true - }, - "minimist": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", - "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", - "dev": true - } + "bin": { + "run-con": "cli.js" + } + }, + "node_modules/run-con/node_modules/ini": { + "version": "3.0.1", + "dev": true, + "license": "ISC", + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/run-con/node_modules/minimist": { + "version": "1.2.8", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "run-parallel": { + "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, - "requires": { + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "dependencies": { "queue-microtask": "^1.2.2" } }, - "rxjs": { + "node_modules/rxjs": { "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", "dev": true, - "requires": { + "license": "Apache-2.0", + "dependencies": { "tslib": "^1.9.0" }, - "dependencies": { - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - } + "engines": { + "npm": ">=2.0.0" } }, - "safe-buffer": { + "node_modules/rxjs/node_modules/tslib": { + "version": "1.14.1", + "dev": true, + "license": "0BSD" + }, + "node_modules/safe-buffer": { "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true + "dev": true, + "license": "MIT" }, - "safe-regex-test": { + "node_modules/safe-regex-test": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", - "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "call-bind": "^1.0.2", "get-intrinsic": "^1.1.3", "is-regex": "^1.1.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "safer-buffer": { + "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 + "dev": true, + "license": "MIT" }, - "sass": { + "node_modules/sass": { "version": "1.75.0", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.75.0.tgz", - "integrity": "sha512-ShMYi3WkrDWxExyxSZPst4/okE9ts46xZmJDSawJQrnte7M1V9fScVB+uNXOVKRBt0PggHOwoZcn8mYX4trnBw==", "dev": true, - "requires": { + "license": "MIT", + "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" } }, - "sass-loader": { + "node_modules/sass-loader": { "version": "12.6.0", - "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-12.6.0.tgz", - "integrity": "sha512-oLTaH0YCtX4cfnJZxKSLAyglED0naiYfNG1iXfU5w1LNZ+ukoA5DtyDIN5zmKVZwYNJP4KRc5Y3hkWga+7tYfA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "klona": "^2.0.4", "neo-async": "^2.6.2" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "fibers": ">= 3.1.0", + "node-sass": "^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0", + "sass": "^1.3.0", + "sass-embedded": "*", + "webpack": "^5.0.0" + }, + "peerDependenciesMeta": { + "fibers": { + "optional": true + }, + "node-sass": { + "optional": true + }, + "sass": { + "optional": true + }, + "sass-embedded": { + "optional": true + } } }, - "saxes": { + "node_modules/saxes": { "version": "6.0.0", - "resolved": "https://registry.npmjs.org/saxes/-/saxes-6.0.0.tgz", - "integrity": "sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA==", "dev": true, - "requires": { + "license": "ISC", + "dependencies": { "xmlchars": "^2.2.0" + }, + "engines": { + "node": ">=v12.22.7" } }, - "scheduler": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.20.2.tgz", - "integrity": "sha512-2eWfGgAqqWFGqtdMmcL5zCMK1U8KlXv8SQFGglL3CEtd0aDVDWgeF/YoCmvln55m5zSk3J/20hTaSBeSObsQDQ==", + "node_modules/scheduler": { + "version": "0.23.2", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz", + "integrity": "sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==", "dev": true, - "requires": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1" + "peer": true, + "dependencies": { + "loose-envify": "^1.1.0" } }, - "schema-utils": { + "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, - "requires": { + "license": "MIT", + "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" } }, - "select-hose": { + "node_modules/select-hose": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", - "integrity": "sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==", - "dev": true + "dev": true, + "license": "MIT" }, - "selfsigned": { + "node_modules/selfsigned": { "version": "2.4.1", - "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.4.1.tgz", - "integrity": "sha512-th5B4L2U+eGLq1TVh7zNRGBapioSORUeymIydxgFpwww9d2qyKvtuPU2jJuHvYAwwqi2Y596QBL3eEqcPEYL8Q==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@types/node-forge": "^1.3.0", "node-forge": "^1" + }, + "engines": { + "node": ">=10" } }, - "semver": { + "node_modules/semver": { "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } }, - "send": { + "node_modules/send": { "version": "0.18.0", - "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", - "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "debug": "2.6.9", "depd": "2.0.0", "destroy": "1.2.0", @@ -18494,64 +18232,63 @@ "range-parser": "~1.2.1", "statuses": "2.0.1" }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/send/node_modules/debug": { + "version": "2.6.9", + "dev": true, + "license": "MIT", "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - }, - "dependencies": { - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - } - } - }, - "mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", - "dev": true - }, - "ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "dev": true - } + "ms": "2.0.0" + } + }, + "node_modules/send/node_modules/debug/node_modules/ms": { + "version": "2.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/send/node_modules/mime": { + "version": "1.6.0", + "dev": true, + "license": "MIT", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" } }, - "sentence-case": { + "node_modules/send/node_modules/ms": { + "version": "2.1.3", + "dev": true, + "license": "MIT" + }, + "node_modules/sentence-case": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/sentence-case/-/sentence-case-3.0.4.tgz", "integrity": "sha512-8LS0JInaQMCRoQ7YUytAo/xUu5W2XnQxV2HI/6uM6U7CITS1RqPElr30V6uIqyMKM9lJGRVFy5/4CuzcixNYSg==", "dev": true, - "requires": { + "dependencies": { "no-case": "^3.0.4", "tslib": "^2.0.3", "upper-case-first": "^2.0.2" } }, - "serialize-javascript": { + "node_modules/serialize-javascript": { "version": "6.0.2", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz", - "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==", "dev": true, - "requires": { + "license": "BSD-3-Clause", + "dependencies": { "randombytes": "^2.1.0" } }, - "serve-index": { + "node_modules/serve-index": { "version": "1.9.1", - "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", - "integrity": "sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "accepts": "~1.3.4", "batch": "0.6.1", "debug": "2.6.9", @@ -18560,509 +18297,582 @@ "mime-types": "~2.1.17", "parseurl": "~1.3.2" }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/serve-index/node_modules/debug": { + "version": "2.6.9", + "dev": true, + "license": "MIT", "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", - "dev": true - }, - "http-errors": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", - "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", - "dev": true, - "requires": { - "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.0", - "statuses": ">= 1.4.0 < 2" - } - }, - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", - "dev": true - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "setprototypeof": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", - "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", - "dev": true - }, - "statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", - "dev": true - } + "ms": "2.0.0" + } + }, + "node_modules/serve-index/node_modules/depd": { + "version": "1.1.2", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-index/node_modules/http-errors": { + "version": "1.6.3", + "dev": true, + "license": "MIT", + "dependencies": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.0", + "statuses": ">= 1.4.0 < 2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-index/node_modules/inherits": { + "version": "2.0.3", + "dev": true, + "license": "ISC" + }, + "node_modules/serve-index/node_modules/ms": { + "version": "2.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/serve-index/node_modules/setprototypeof": { + "version": "1.1.0", + "dev": true, + "license": "ISC" + }, + "node_modules/serve-index/node_modules/statuses": { + "version": "1.5.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" } }, - "serve-static": { + "node_modules/serve-static": { "version": "1.15.0", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", - "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "encodeurl": "~1.0.2", "escape-html": "~1.0.3", "parseurl": "~1.3.3", "send": "0.18.0" + }, + "engines": { + "node": ">= 0.8.0" } }, - "setprototypeof": { + "node_modules/setprototypeof": { "version": "1.2.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", - "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", - "dev": true + "dev": true, + "license": "ISC" }, - "shallow-clone": { + "node_modules/shallow-clone": { "version": "0.1.2", - "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-0.1.2.tgz", - "integrity": "sha512-J1zdXCky5GmNnuauESROVu31MQSnLoYvlyEn6j2Ztk6Q5EHFIhxkMhYcv6vuDzl2XEzoRr856QwzMgWM/TmZgw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "is-extendable": "^0.1.1", "kind-of": "^2.0.1", "lazy-cache": "^0.2.3", "mixin-object": "^2.0.1" }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/shallow-clone/node_modules/kind-of": { + "version": "2.0.1", + "dev": true, + "license": "MIT", "dependencies": { - "kind-of": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-2.0.1.tgz", - "integrity": "sha512-0u8i1NZ/mg0b+W3MGGw5I7+6Eib2nx72S/QvXa0hYjEkjTknYmEYQJwGu3mLC0BrhtJjtQafTkyRUQ75Kx0LVg==", - "dev": true, - "requires": { - "is-buffer": "^1.0.2" - } - }, - "lazy-cache": { - "version": "0.2.7", - "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-0.2.7.tgz", - "integrity": "sha512-gkX52wvU/R8DVMMt78ATVPFMJqfW8FPz1GZ1sVHBVQHmu/WvhIWE4cE1GBzhJNFicDeYhnwp6Rl35BcAIM3YOQ==", - "dev": true - } + "is-buffer": "^1.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/shallow-clone/node_modules/lazy-cache": { + "version": "0.2.7", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" } }, - "shebang-command": { + "node_modules/shebang-command": { "version": "1.2.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "shebang-regex": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, - "shebang-regex": { + "node_modules/shebang-regex": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } }, - "shell-quote": { + "node_modules/shell-quote": { "version": "1.7.3", - "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.7.3.tgz", - "integrity": "sha512-Vpfqwm4EnqGdlsBFNmHhxhElJYrdfcxPThu+ryKS5J8L/fhAwLazFZtq+S+TWZ9ANj2piSQLGj6NQg+lKPmxrw==", - "dev": true + "dev": true, + "license": "MIT" }, - "side-channel": { + "node_modules/side-channel": { "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "call-bind": "^1.0.0", "get-intrinsic": "^1.0.2", "object-inspect": "^1.9.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "signal-exit": { + "node_modules/signal-exit": { "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true + "dev": true, + "license": "ISC" }, - "simple-git": { + "node_modules/simple-git": { "version": "3.16.0", - "resolved": "https://registry.npmjs.org/simple-git/-/simple-git-3.16.0.tgz", - "integrity": "sha512-zuWYsOLEhbJRWVxpjdiXl6eyAyGo/KzVW+KFhhw9MqEEJttcq+32jTWSGyxTdf9e/YCohxRE+9xpWFj9FdiJNw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@kwsites/file-exists": "^1.1.1", "@kwsites/promise-deferred": "^1.1.1", "debug": "^4.3.4" + }, + "funding": { + "type": "github", + "url": "https://github.com/steveukx/git-js?sponsor=1" } }, - "sirv": { + "node_modules/sirv": { "version": "2.0.4", - "resolved": "https://registry.npmjs.org/sirv/-/sirv-2.0.4.tgz", - "integrity": "sha512-94Bdh3cC2PKrbgSOUqTiGPWVZeSiXfKOVZNJniWoqrWrRkB1CJzBU3NEbiTsPcYy1lDsANA/THzS+9WBiy5nfQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@polka/url": "^1.0.0-next.24", "mrmime": "^2.0.0", "totalist": "^3.0.0" + }, + "engines": { + "node": ">= 10" } }, - "sisteransi": { + "node_modules/sisteransi": { "version": "1.0.5", - "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", - "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", - "dev": true + "dev": true, + "license": "MIT" }, - "slash": { + "node_modules/slash": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } }, - "slice-ansi": { + "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, - "requires": { + "dependencies": { "ansi-styles": "^4.0.0", "astral-regex": "^2.0.0", "is-fullwidth-code-point": "^3.0.0" }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/slice-ansi?sponsor=1" + } + }, + "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, "dependencies": { - "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, - "requires": { - "color-convert": "^2.0.1" - } - }, - "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, - "requires": { - "color-name": "~1.1.4" - } - }, - "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 - } + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "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": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" } }, - "smart-buffer": { + "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/smart-buffer": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", - "dev": true + "dev": true, + "engines": { + "node": ">= 6.0.0", + "npm": ">= 3.0.0" + } }, - "snake-case": { + "node_modules/snake-case": { "version": "3.0.4", - "resolved": "https://registry.npmjs.org/snake-case/-/snake-case-3.0.4.tgz", - "integrity": "sha512-LAOh4z89bGQvl9pFfNF8V146i7o7/CqFPbqzYgP+yYzDIDeS9HaNFtXABamRW+AQzEVODcvE79ljJ+8a9YSdMg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "dot-case": "^3.0.4", "tslib": "^2.0.3" } }, - "sockjs": { + "node_modules/sockjs": { "version": "0.3.24", - "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz", - "integrity": "sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "faye-websocket": "^0.11.3", "uuid": "^8.3.2", "websocket-driver": "^0.7.4" } }, - "socks": { + "node_modules/socks": { "version": "2.8.3", "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.3.tgz", "integrity": "sha512-l5x7VUUWbjVFbafGLxPWkYsHIhEvmF85tbIeFZWc8ZPtoMyybuEhL7Jye/ooC4/d48FgOjSJXgsF/AJPYCW8Zw==", "dev": true, - "requires": { + "dependencies": { "ip-address": "^9.0.5", "smart-buffer": "^4.2.0" + }, + "engines": { + "node": ">= 10.0.0", + "npm": ">= 3.0.0" } }, - "socks-proxy-agent": { - "version": "8.0.3", - "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.3.tgz", - "integrity": "sha512-VNegTZKhuGq5vSD6XNKlbqWhyt/40CgoEw8XxD6dhnm8Jq9IEa3nIa4HwnM8XOqU0CdB0BwWVXusqiFXfHB3+A==", + "node_modules/socks-proxy-agent": { + "version": "8.0.4", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.4.tgz", + "integrity": "sha512-GNAq/eg8Udq2x0eNiFkr9gRg5bA7PXEWagQdeRX4cPSG+X/8V38v637gim9bjFptMk1QWsCTr0ttrJEiXbNnRw==", "dev": true, - "requires": { + "dependencies": { "agent-base": "^7.1.1", "debug": "^4.3.4", - "socks": "^2.7.1" + "socks": "^2.8.3" }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/socks-proxy-agent/node_modules/agent-base": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", + "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", + "dev": true, "dependencies": { - "agent-base": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", - "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", - "dev": true, - "requires": { - "debug": "^4.3.4" - } - } + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" } }, - "source-map": { + "node_modules/source-map": { "version": "0.7.4", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", - "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", - "dev": true + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">= 8" + } }, - "source-map-js": { + "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 + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } }, - "source-map-loader": { + "node_modules/source-map-loader": { "version": "3.0.2", - "resolved": "https://registry.npmjs.org/source-map-loader/-/source-map-loader-3.0.2.tgz", - "integrity": "sha512-BokxPoLjyl3iOrgkWaakaxqnelAJSS+0V+De0kKIq6lyWrXuiPgYTGp6z3iHmqljKAaLXwZa+ctD8GccRJeVvg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "abab": "^2.0.5", "iconv-lite": "^0.6.3", "source-map-js": "^1.0.1" }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + } + }, + "node_modules/source-map-loader/node_modules/iconv-lite": { + "version": "0.6.3", + "dev": true, + "license": "MIT", "dependencies": { - "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, - "requires": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - } - } + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, - "source-map-support": { + "node_modules/source-map-support": { "version": "0.5.13", "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz", "integrity": "sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==", "dev": true, - "requires": { + "dependencies": { "buffer-from": "^1.0.0", "source-map": "^0.6.0" - }, - "dependencies": { - "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 - } } }, - "spawnd": { + "node_modules/source-map-support/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, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/spawnd": { "version": "9.0.2", - "resolved": "https://registry.npmjs.org/spawnd/-/spawnd-9.0.2.tgz", - "integrity": "sha512-nl8DVHEDQ57IcKakzpjanspVChkMpGLuVwMR/eOn9cXE55Qr6luD2Kn06sA0ootRMdgrU4tInN6lA6ohTNvysw==", "dev": true, - "requires": { + "dependencies": { "signal-exit": "^4.1.0", "tree-kill": "^1.2.2" }, - "dependencies": { - "signal-exit": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", - "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", - "dev": true - } + "engines": { + "node": ">=16" + } + }, + "node_modules/spawnd/node_modules/signal-exit": { + "version": "4.1.0", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "spdx-correct": { + "node_modules/spdx-correct": { "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", "dev": true, - "requires": { + "license": "Apache-2.0", + "dependencies": { "spdx-expression-parse": "^3.0.0", "spdx-license-ids": "^3.0.0" } }, - "spdx-exceptions": { + "node_modules/spdx-exceptions": { "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", - "dev": true + "dev": true, + "license": "CC-BY-3.0" }, - "spdx-expression-parse": { + "node_modules/spdx-expression-parse": { "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "spdx-exceptions": "^2.1.0", "spdx-license-ids": "^3.0.0" } }, - "spdx-license-ids": { + "node_modules/spdx-license-ids": { "version": "3.0.12", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.12.tgz", - "integrity": "sha512-rr+VVSXtRhO4OHbXUiAF7xW3Bo9DuuF6C5jH+q/x15j2jniycgKbxU09Hr0WqlSLUs4i4ltHGXqTe7VHclYWyA==", - "dev": true + "dev": true, + "license": "CC0-1.0" }, - "spdy": { + "node_modules/spdy": { "version": "4.0.2", - "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz", - "integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "debug": "^4.1.0", "handle-thing": "^2.0.0", "http-deceiver": "^1.2.7", "select-hose": "^2.0.0", "spdy-transport": "^3.0.0" + }, + "engines": { + "node": ">=6.0.0" } }, - "spdy-transport": { + "node_modules/spdy-transport": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz", - "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "debug": "^4.1.0", "detect-node": "^2.0.4", "hpack.js": "^2.1.6", "obuf": "^1.1.2", "readable-stream": "^3.0.6", "wbuf": "^1.7.3" - }, + } + }, + "node_modules/spdy-transport/node_modules/readable-stream": { + "version": "3.6.2", + "dev": true, + "license": "MIT", "dependencies": { - "readable-stream": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", - "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - } + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" } }, - "speedline-core": { + "node_modules/speedline-core": { "version": "1.4.3", "resolved": "https://registry.npmjs.org/speedline-core/-/speedline-core-1.4.3.tgz", "integrity": "sha512-DI7/OuAUD+GMpR6dmu8lliO2Wg5zfeh+/xsdyJZCzd8o5JgFUjCeLsBDuZjIQJdwXS3J0L/uZYrELKYqx+PXog==", "dev": true, - "requires": { + "dependencies": { "@types/node": "*", "image-ssim": "^0.2.0", "jpeg-js": "^0.4.1" + }, + "engines": { + "node": ">=8.0" } }, - "sprintf-js": { + "node_modules/sprintf-js": { "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", - "dev": true + "dev": true, + "license": "BSD-3-Clause" }, - "stack-utils": { + "node_modules/stack-utils": { "version": "2.0.6", - "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", - "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "escape-string-regexp": "^2.0.0" }, - "dependencies": { - "escape-string-regexp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", - "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", - "dev": true - } + "engines": { + "node": ">=10" + } + }, + "node_modules/stack-utils/node_modules/escape-string-regexp": { + "version": "2.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" } }, - "stackframe": { + "node_modules/stackframe": { "version": "1.3.4", - "resolved": "https://registry.npmjs.org/stackframe/-/stackframe-1.3.4.tgz", - "integrity": "sha512-oeVtt7eWQS+Na6F//S4kJ2K2VbRlS9D43mAlMyVpVWovy9o+jfgH8O9agzANzaiLjclA0oYzUXEM4PurhSUChw==", - "dev": true + "dev": true, + "license": "MIT" }, - "statuses": { + "node_modules/statuses": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/streamx": { + "version": "2.19.0", + "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.19.0.tgz", + "integrity": "sha512-5z6CNR4gtkPbwlxyEqoDGDmWIzoNJqCBt4Eac1ICP9YaIT08ct712cFj0u1rx4F8luAuL+3Qc+RFIdI4OX00kg==", + "dev": true, + "dependencies": { + "fast-fifo": "^1.3.2", + "queue-tick": "^1.0.1", + "text-decoder": "^1.1.0" + }, + "optionalDependencies": { + "bare-events": "^2.2.0" + } }, - "streamx": { - "version": "2.16.1", - "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.16.1.tgz", - "integrity": "sha512-m9QYj6WygWyWa3H1YY69amr4nVgy61xfjys7xO7kviL5rfIEc2naf+ewFiOA+aEJD7y0JO3h2GoiUv4TDwEGzQ==", + "node_modules/string_decoder": { + "version": "1.1.1", "dev": true, - "requires": { - "bare-events": "^2.2.0", - "fast-fifo": "^1.1.0", - "queue-tick": "^1.0.1" + "license": "MIT", + "dependencies": { + "safe-buffer": "~5.1.0" } }, - "string-length": { + "node_modules/string-length": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", "dev": true, - "requires": { + "dependencies": { "char-regex": "^1.0.2", "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" } }, - "string-width": { + "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, - "requires": { + "license": "MIT", + "dependencies": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", "strip-ansi": "^6.0.1" }, - "dependencies": { - "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 - } + "engines": { + "node": ">=8" } }, - "string.prototype.matchall": { + "node_modules/string-width/node_modules/emoji-regex": { + "version": "8.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/string.prototype.matchall": { "version": "4.0.7", - "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.7.tgz", - "integrity": "sha512-f48okCX7JiwVi1NXCVWcFnZgADDC/n2vePlQ/KUCNqCikLLilQvwjMO8+BHVKvgzH0JB0J9LEPgxOGT02RoETg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", "es-abstract": "^1.19.1", @@ -19071,159 +18881,142 @@ "internal-slot": "^1.0.3", "regexp.prototype.flags": "^1.4.1", "side-channel": "^1.0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "string.prototype.padend": { + "node_modules/string.prototype.padend": { "version": "3.1.3", - "resolved": "https://registry.npmjs.org/string.prototype.padend/-/string.prototype.padend-3.1.3.tgz", - "integrity": "sha512-jNIIeokznm8SD/TZISQsZKYu7RJyheFNt84DUPrh482GC8RVp2MKqm2O5oBRdGxbDQoXrhhWtPIWQOiy20svUg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", "es-abstract": "^1.19.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "string.prototype.trimend": { + "node_modules/string.prototype.trimend": { "version": "1.0.5", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.5.tgz", - "integrity": "sha512-I7RGvmjV4pJ7O3kdf+LXFpVfdNOxtCW/2C8f6jNiW4+PQchwxkCDzlk1/7p+Wl4bqFIZeF47qAHXLuHHWKAxog==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.4", "es-abstract": "^1.19.5" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "string.prototype.trimstart": { + "node_modules/string.prototype.trimstart": { "version": "1.0.5", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.5.tgz", - "integrity": "sha512-THx16TJCGlsN0o6dl2o6ncWUsdgnLRSA23rRE5pyGBw/mLr3Ej/R2LaqCtgP8VNMGZsvMWnf9ooZPyY2bHvUFg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.4", "es-abstract": "^1.19.5" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - }, - "strip-ansi": { + "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, - "requires": { + "license": "MIT", + "dependencies": { "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" } }, - "strip-bom": { + "node_modules/strip-bom": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", - "dev": true + "dev": true, + "engines": { + "node": ">=8" + } }, - "strip-final-newline": { + "node_modules/strip-final-newline": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", - "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } }, - "strip-indent": { + "node_modules/strip-indent": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", "dev": true, - "requires": { + "dependencies": { "min-indent": "^1.0.0" + }, + "engines": { + "node": ">=8" } }, - "strip-json-comments": { + "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 + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "strip-outer": { + "node_modules/strip-outer": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/strip-outer/-/strip-outer-1.0.1.tgz", - "integrity": "sha512-k55yxKHwaXnpYGsOzg4Vl8+tDrWylxDEpknGjhTiZB8dFRU5rTo9CAzeycivxV3s+zlTKwrs6WxMxR95n26kwg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "escape-string-regexp": "^1.0.2" + }, + "engines": { + "node": ">=0.10.0" } }, - "style-search": { + "node_modules/style-search": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/style-search/-/style-search-0.1.0.tgz", "integrity": "sha512-Dj1Okke1C3uKKwQcetra4jSuk0DqbzbYtXipzFlFMZtowbF1x7BKJwB9AayVMyFARvU8EDrZdcax4At/452cAg==", "dev": true }, - "stylehacks": { + "node_modules/stylehacks": { "version": "6.1.1", - "resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-6.1.1.tgz", - "integrity": "sha512-gSTTEQ670cJNoaeIp9KX6lZmm8LJ3jPB5yJmX8Zq/wQxOsAFXV3qjWzHas3YYk1qesuVIyYWWUpZ0vSE/dTSGg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "browserslist": "^4.23.0", "postcss-selector-parser": "^6.0.16" }, - "dependencies": { - "browserslist": { - "version": "4.23.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", - "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", - "dev": true, - "requires": { - "caniuse-lite": "^1.0.30001587", - "electron-to-chromium": "^1.4.668", - "node-releases": "^2.0.14", - "update-browserslist-db": "^1.0.13" - } - }, - "caniuse-lite": { - "version": "1.0.30001612", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001612.tgz", - "integrity": "sha512-lFgnZ07UhaCcsSZgWW0K5j4e69dK1u/ltrL9lTUiFOwNHs12S3UMIEYgBV0Z6C6hRDev7iRnMzzYmKabYdXF9g==", - "dev": true - }, - "electron-to-chromium": { - "version": "1.4.748", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.748.tgz", - "integrity": "sha512-VWqjOlPZn70UZ8FTKUOkUvBLeTQ0xpty66qV0yJcAGY2/CthI4xyW9aEozRVtuwv3Kpf5xTesmJUcPwuJmgP4A==", - "dev": true - }, - "node-releases": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", - "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", - "dev": true - }, - "update-browserslist-db": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", - "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", - "dev": true, - "requires": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" - } - } + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" } }, - "stylelint": { + "node_modules/stylelint": { "version": "14.16.1", "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-14.16.1.tgz", "integrity": "sha512-ErlzR/T3hhbV+a925/gbfc3f3Fep9/bnspMiJPorfGEmcBbXdS+oo6LrVtoUZ/w9fqD6o6k7PtUlCOsCRdjX/A==", "dev": true, - "requires": { + "dependencies": { "@csstools/selector-specificity": "^2.0.2", "balanced-match": "^2.0.0", "colord": "^2.9.3", @@ -19263,159 +19056,174 @@ "v8-compile-cache": "^2.3.0", "write-file-atomic": "^4.0.2" }, - "dependencies": { - "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 - }, - "cosmiconfig": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", - "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", - "dev": true, - "requires": { - "@types/parse-json": "^4.0.0", - "import-fresh": "^3.2.1", - "parse-json": "^5.0.0", - "path-type": "^4.0.0", - "yaml": "^1.10.0" - } - }, - "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, - "requires": { - "global-prefix": "^3.0.0" - } - }, - "global-prefix": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz", - "integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==", - "dev": true, - "requires": { - "ini": "^1.3.5", - "kind-of": "^6.0.2", - "which": "^1.3.1" - } - }, - "ignore": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", - "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", - "dev": true - }, - "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 - }, - "write-file-atomic": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", - "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", - "dev": true, - "requires": { - "imurmurhash": "^0.1.4", - "signal-exit": "^3.0.7" - } - } + "bin": { + "stylelint": "bin/stylelint.js" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stylelint" } }, - "stylelint-config-recommended": { + "node_modules/stylelint-config-recommended": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/stylelint-config-recommended/-/stylelint-config-recommended-6.0.0.tgz", "integrity": "sha512-ZorSSdyMcxWpROYUvLEMm0vSZud2uB7tX1hzBZwvVY9SV/uly4AvvJPPhCcymZL3fcQhEQG5AELmrxWqtmzacw==", - "dev": true + "dev": true, + "peerDependencies": { + "stylelint": "^14.0.0" + } }, - "stylelint-config-recommended-scss": { + "node_modules/stylelint-config-recommended-scss": { "version": "5.0.2", "resolved": "https://registry.npmjs.org/stylelint-config-recommended-scss/-/stylelint-config-recommended-scss-5.0.2.tgz", "integrity": "sha512-b14BSZjcwW0hqbzm9b0S/ScN2+3CO3O4vcMNOw2KGf8lfVSwJ4p5TbNEXKwKl1+0FMtgRXZj6DqVUe/7nGnuBg==", "dev": true, - "requires": { + "dependencies": { "postcss-scss": "^4.0.2", "stylelint-config-recommended": "^6.0.0", "stylelint-scss": "^4.0.0" + }, + "peerDependencies": { + "stylelint": "^14.0.0" } }, - "stylelint-scss": { + "node_modules/stylelint-scss": { "version": "4.7.0", "resolved": "https://registry.npmjs.org/stylelint-scss/-/stylelint-scss-4.7.0.tgz", "integrity": "sha512-TSUgIeS0H3jqDZnby1UO1Qv3poi1N8wUYIJY6D1tuUq2MN3lwp/rITVo0wD+1SWTmRm0tNmGO0b7nKInnqF6Hg==", "dev": true, - "requires": { + "dependencies": { "postcss-media-query-parser": "^0.2.3", "postcss-resolve-nested-selector": "^0.1.1", "postcss-selector-parser": "^6.0.11", "postcss-value-parser": "^4.2.0" + }, + "peerDependencies": { + "stylelint": "^14.5.1 || ^15.0.0" } }, - "supports-color": { + "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/stylelint/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/stylelint/node_modules/global-prefix": { + "version": "3.0.0", + "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": ">=6" + } + }, + "node_modules/stylelint/node_modules/ignore": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/stylelint/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/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, - "requires": { + "license": "MIT", + "dependencies": { "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" } }, - "supports-hyperlinks": { + "node_modules/supports-hyperlinks": { "version": "2.3.0", - "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.3.0.tgz", - "integrity": "sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "has-flag": "^4.0.0", "supports-color": "^7.0.0" }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-hyperlinks/node_modules/has-flag": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-hyperlinks/node_modules/supports-color": { + "version": "7.2.0", + "dev": true, + "license": "MIT", "dependencies": { - "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 - }, - "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, - "requires": { - "has-flag": "^4.0.0" - } - } + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "supports-preserve-symlinks-flag": { + "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 + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "svg-parser": { + "node_modules/svg-parser": { "version": "2.0.4", - "resolved": "https://registry.npmjs.org/svg-parser/-/svg-parser-2.0.4.tgz", - "integrity": "sha512-e4hG1hRwoOdRb37cIMSgzNsxyzKfayW6VOflrwvR+/bzrkyxY/31WkbgnQpgtrNp1SdpJvpUAGTa/ZoiPNDuRQ==", - "dev": true + "dev": true, + "license": "MIT" }, - "svg-tags": { + "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 }, - "svgo": { + "node_modules/svgo": { "version": "3.2.0", - "resolved": "https://registry.npmjs.org/svgo/-/svgo-3.2.0.tgz", - "integrity": "sha512-4PP6CMW/V7l/GmKRKzsLR8xxjdHTV4IMvhTnpuHwwBazSIlw5W/5SmPjN8Dwyt7lKbSJrRDgp4t9ph0HgChFBQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@trysound/sax": "0.2.0", "commander": "^7.2.0", "css-select": "^5.1.0", @@ -19423,757 +19231,904 @@ "css-what": "^6.1.0", "csso": "^5.0.5", "picocolors": "^1.0.0" + }, + "bin": { + "svgo": "bin/svgo" + }, + "engines": { + "node": ">=14.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/svgo" } }, - "symbol-tree": { + "node_modules/symbol-tree": { "version": "3.2.4", - "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", - "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", - "dev": true + "dev": true, + "license": "MIT" }, - "synckit": { - "version": "0.8.8", - "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.8.8.tgz", - "integrity": "sha512-HwOKAP7Wc5aRGYdKH+dw0PRRpbO841v2DENBtjnR5HFWoiNByAl7vrx3p0G/rCyYXQsrxqtX48TImFtPcIHSpQ==", + "node_modules/synckit": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.9.1.tgz", + "integrity": "sha512-7gr8p9TQP6RAHusBOSLs46F4564ZrjV8xFmw5zCmgmhGUcw2hxsShhJ6CEiHQMgPDwAQ1fWHPM0ypc4RMAig4A==", "dev": true, - "requires": { + "dependencies": { "@pkgr/core": "^0.1.0", "tslib": "^2.6.2" }, - "dependencies": { - "tslib": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", - "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==", - "dev": true - } + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/unts" } }, - "table": { + "node_modules/table": { "version": "6.8.2", "resolved": "https://registry.npmjs.org/table/-/table-6.8.2.tgz", "integrity": "sha512-w2sfv80nrAh2VCbqR5AK27wswXhqcck2AhfnNW76beQXskGZ1V12GwS//yYVa3d3fcvAip2OUnbDAjW2k3v9fA==", "dev": true, - "requires": { + "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" }, - "dependencies": { - "ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - } - }, - "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 - } + "engines": { + "node": ">=10.0.0" } }, - "tannin": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/tannin/-/tannin-1.2.0.tgz", - "integrity": "sha512-U7GgX/RcSeUETbV7gYgoz8PD7Ni4y95pgIP/Z6ayI3CfhSujwKEBlGFTCRN+Aqnuyf4AN2yHL+L8x+TCGjb9uA==", + "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, - "requires": { - "@tannin/plural-forms": "^1.1.0" + "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" } }, - "tapable": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", - "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "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 }, - "tar-fs": { + "node_modules/tapable": { + "version": "2.2.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/tar-fs": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-3.0.4.tgz", "integrity": "sha512-5AFQU8b9qLfZCX9zp2duONhPmZv0hGYiBPJsyUdqMjzq/mqVpy/rEUSeHk1+YitmxugaptgBh5oDGU3VsAJq4w==", "dev": true, - "requires": { + "dependencies": { "mkdirp-classic": "^0.5.2", "pump": "^3.0.0", "tar-stream": "^3.1.5" } }, - "tar-stream": { + "node_modules/tar-stream": { "version": "3.1.7", "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-3.1.7.tgz", "integrity": "sha512-qJj60CXt7IU1Ffyc3NJMjh6EkuCFej46zUqJ4J7pqYlThyd9bO0XBTmcOIhSzZJVWfsLks0+nle/j538YAW9RQ==", "dev": true, - "requires": { + "dependencies": { "b4a": "^1.6.4", "fast-fifo": "^1.2.0", "streamx": "^2.15.0" } }, - "terminal-link": { + "node_modules/terminal-link": { "version": "2.1.1", - "resolved": "https://registry.npmjs.org/terminal-link/-/terminal-link-2.1.1.tgz", - "integrity": "sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "ansi-escapes": "^4.2.1", "supports-hyperlinks": "^2.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "terser": { + "node_modules/terser": { "version": "5.30.4", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.30.4.tgz", - "integrity": "sha512-xRdd0v64a8mFK9bnsKVdoNP9GQIKUAaJPTaqEQDL4w/J8WaW4sWXXoMZ+6SimPkfT5bElreXf8m9HnmPc3E1BQ==", "dev": true, - "requires": { + "license": "BSD-2-Clause", + "dependencies": { "@jridgewell/source-map": "^0.3.3", "acorn": "^8.8.2", "commander": "^2.20.0", "source-map-support": "~0.5.20" }, - "dependencies": { - "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 - }, - "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 - }, - "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, - "requires": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - } + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=10" } }, - "terser-webpack-plugin": { + "node_modules/terser-webpack-plugin": { "version": "5.3.10", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.10.tgz", - "integrity": "sha512-BKFPWlPDndPs+NGGCr1U59t0XScL5317Y0UReNrHaw9/FwhPENlq6bfgs+4yPfyP51vqC1bQ4rp1EfXW5ZSH9w==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@jridgewell/trace-mapping": "^0.3.20", "jest-worker": "^27.4.5", "schema-utils": "^3.1.1", "serialize-javascript": "^6.0.1", "terser": "^5.26.0" }, - "dependencies": { - "@jridgewell/trace-mapping": { - "version": "0.3.25", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", - "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", - "dev": true, - "requires": { - "@jridgewell/resolve-uri": "^3.1.0", - "@jridgewell/sourcemap-codec": "^1.4.14" - } - }, - "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": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.1.0" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true }, - "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, - "requires": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - } + "esbuild": { + "optional": true }, - "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, - "requires": { - "has-flag": "^4.0.0" - } + "uglify-js": { + "optional": true } } }, - "test-exclude": { + "node_modules/terser-webpack-plugin/node_modules/has-flag": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/terser-webpack-plugin/node_modules/jest-worker": { + "version": "27.5.1", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/terser-webpack-plugin/node_modules/supports-color": { + "version": "8.1.1", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/terser/node_modules/commander": { + "version": "2.20.3", + "dev": true, + "license": "MIT" + }, + "node_modules/terser/node_modules/source-map": { + "version": "0.6.1", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/terser/node_modules/source-map-support": { + "version": "0.5.21", + "dev": true, + "license": "MIT", + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/test-exclude": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", "dev": true, - "requires": { + "dependencies": { "@istanbuljs/schema": "^0.1.2", "glob": "^7.1.4", "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/text-decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/text-decoder/-/text-decoder-1.1.1.tgz", + "integrity": "sha512-8zll7REEv4GDD3x4/0pW+ppIxSNs7H1J10IKFZsuOMscumCdM2a+toDGLPA3T+1+fLBql4zbt5z83GEQGGV5VA==", + "dev": true, + "dependencies": { + "b4a": "^1.6.4" } }, - "text-table": { + "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 + "dev": true, + "license": "MIT" }, - "third-party-web": { + "node_modules/third-party-web": { "version": "0.23.4", "resolved": "https://registry.npmjs.org/third-party-web/-/third-party-web-0.23.4.tgz", "integrity": "sha512-kwYnSZRhEvv0SBW2fp8SBBKRglMoBjV8xz6C31m0ewqOtknB5UL+Ihg+M81hyFY5ldkZuGWPb+e4GVDkzf/gYg==", "dev": true }, - "through": { + "node_modules/through": { "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", - "dev": true + "dev": true, + "license": "MIT" }, - "thunky": { + "node_modules/thunky": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", - "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==", - "dev": true + "dev": true, + "license": "MIT" }, - "tmp": { + "node_modules/tmp": { "version": "0.0.33", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", - "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "os-tmpdir": "~1.0.2" + }, + "engines": { + "node": ">=0.6.0" } }, - "tmpl": { + "node_modules/tmpl": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==", "dev": true }, - "to-fast-properties": { + "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 + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } }, - "to-regex-range": { + "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, - "requires": { + "license": "MIT", + "dependencies": { "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" } }, - "toidentifier": { + "node_modules/toidentifier": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", - "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.6" + } }, - "totalist": { + "node_modules/totalist": { "version": "3.0.1", - "resolved": "https://registry.npmjs.org/totalist/-/totalist-3.0.1.tgz", - "integrity": "sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } }, - "tough-cookie": { + "node_modules/tough-cookie": { "version": "4.1.3", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.3.tgz", - "integrity": "sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw==", "dev": true, - "requires": { + "license": "BSD-3-Clause", + "dependencies": { "psl": "^1.1.33", "punycode": "^2.1.1", "universalify": "^0.2.0", "url-parse": "^1.5.3" }, - "dependencies": { - "universalify": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", - "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==", - "dev": true - } + "engines": { + "node": ">=6" + } + }, + "node_modules/tough-cookie/node_modules/universalify": { + "version": "0.2.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 4.0.0" } }, - "tr46": { + "node_modules/tr46": { "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", - "dev": true + "dev": true, + "license": "MIT" }, - "tree-kill": { + "node_modules/tree-kill": { "version": "1.2.2", - "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", - "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==", - "dev": true + "dev": true, + "license": "MIT", + "bin": { + "tree-kill": "cli.js" + } }, - "trim-newlines": { + "node_modules/trim-newlines": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.1.tgz", "integrity": "sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==", - "dev": true + "dev": true, + "engines": { + "node": ">=8" + } }, - "trim-repeated": { + "node_modules/trim-repeated": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/trim-repeated/-/trim-repeated-1.0.0.tgz", - "integrity": "sha512-pkonvlKk8/ZuR0D5tLW8ljt5I8kmxp2XKymhepUeOdCEfKpZaktSArkLHZt76OB1ZvO9bssUsDty4SWhLvZpLg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "escape-string-regexp": "^1.0.2" + }, + "engines": { + "node": ">=0.10.0" } }, - "ts-api-utils": { + "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 + "dev": true, + "engines": { + "node": ">=16" + }, + "peerDependencies": { + "typescript": ">=4.2.0" + } }, - "tsconfig-paths": { + "node_modules/tsconfig-paths": { "version": "3.14.1", - "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.1.tgz", - "integrity": "sha512-fxDhWnFSLt3VuTwtvJt5fpwxBHg5AdKWMsgcPOOIilyjymcYVZoCQF8fvFRezCNfblEXmi+PcM1eYHeOAgXCOQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@types/json5": "^0.0.29", "json5": "^1.0.1", "minimist": "^1.2.6", "strip-bom": "^3.0.0" - }, + } + }, + "node_modules/tsconfig-paths/node_modules/json5": { + "version": "1.0.2", + "dev": true, + "license": "MIT", "dependencies": { - "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, - "requires": { - "minimist": "^1.2.0" - } - }, - "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 - } + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" } }, - "tslib": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", - "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==", + "node_modules/tsconfig-paths/node_modules/strip-bom": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/tslib": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.3.tgz", + "integrity": "sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==", "dev": true }, - "tsutils": { + "node_modules/tsutils": { "version": "3.21.0", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", - "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "tslib": "^1.8.1" }, - "dependencies": { - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - } + "engines": { + "node": ">= 6" + }, + "peerDependencies": { + "typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta" } }, - "type-check": { + "node_modules/tsutils/node_modules/tslib": { + "version": "1.14.1", + "dev": true, + "license": "0BSD" + }, + "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, - "requires": { + "license": "MIT", + "dependencies": { "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" } }, - "type-detect": { + "node_modules/type-detect": { "version": "4.0.8", - "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", - "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } }, - "type-fest": { + "node_modules/type-fest": { "version": "0.21.3", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", - "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", - "dev": true + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "type-is": { + "node_modules/type-is": { "version": "1.6.18", - "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", - "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "media-typer": "0.3.0", "mime-types": "~2.1.24" + }, + "engines": { + "node": ">= 0.6" } }, - "typedarray": { + "node_modules/typedarray": { "version": "0.0.6", - "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==", - "dev": true + "dev": true, + "license": "MIT" }, - "typedarray-to-buffer": { + "node_modules/typedarray-to-buffer": { "version": "3.1.5", "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", "dev": true, - "requires": { + "dependencies": { "is-typedarray": "^1.0.0" } }, - "uc.micro": { + "node_modules/typescript": { + "version": "5.5.4", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.5.4.tgz", + "integrity": "sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q==", + "dev": true, + "peer": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/uc.micro": { "version": "1.0.6", - "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.6.tgz", - "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==", - "dev": true + "dev": true, + "license": "MIT" }, - "unbox-primitive": { + "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, - "requires": { + "license": "MIT", + "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" } }, - "unbzip2-stream": { + "node_modules/unbzip2-stream": { "version": "1.4.3", - "resolved": "https://registry.npmjs.org/unbzip2-stream/-/unbzip2-stream-1.4.3.tgz", - "integrity": "sha512-mlExGW4w71ebDJviH16lQLtZS32VKqsSfk80GCfUlwT/4/hNRFsoscrF/c++9xinkMzECL1uL9DDwXqFWkruPg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "buffer": "^5.2.1", "through": "^2.3.8" } }, - "unc-path-regex": { + "node_modules/unc-path-regex": { "version": "0.1.2", - "resolved": "https://registry.npmjs.org/unc-path-regex/-/unc-path-regex-0.1.2.tgz", - "integrity": "sha512-eXL4nmJT7oCpkZsHZUOJo8hcX3GbsiDOa0Qu9F646fi8dT3XuSVopVqAcEiVzSKKH7UoDti23wNX3qGFxcW5Qg==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } }, - "underscore.string": { + "node_modules/underscore.string": { "version": "3.3.6", - "resolved": "https://registry.npmjs.org/underscore.string/-/underscore.string-3.3.6.tgz", - "integrity": "sha512-VoC83HWXmCrF6rgkyxS9GHv8W9Q5nhMKho+OadDJGzL2oDYbYEppBaCMH6pFlwLeqj2QS+hhkw2kpXkSdD1JxQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "sprintf-js": "^1.1.1", "util-deprecate": "^1.0.2" }, - "dependencies": { - "sprintf-js": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.2.tgz", - "integrity": "sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==", - "dev": true - } + "engines": { + "node": "*" } }, - "unicode-canonical-property-names-ecmascript": { + "node_modules/underscore.string/node_modules/sprintf-js": { + "version": "1.1.2", + "dev": true, + "license": "BSD-3-Clause" + }, + "node_modules/unicode-canonical-property-names-ecmascript": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, - "unicode-match-property-ecmascript": { + "node_modules/unicode-match-property-ecmascript": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", "dev": true, - "requires": { + "dependencies": { "unicode-canonical-property-names-ecmascript": "^2.0.0", "unicode-property-aliases-ecmascript": "^2.0.0" + }, + "engines": { + "node": ">=4" } }, - "unicode-match-property-value-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.0.0.tgz", - "integrity": "sha512-7Yhkc0Ye+t4PNYzOGKedDhXbYIBe1XEQYQxOPyhcXNMJ0WCABqqj6ckydd6pWRZTHV4GuCPKdBAUiMc60tsKVw==", - "dev": true + "node_modules/unicode-match-property-value-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz", + "integrity": "sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==", + "dev": true, + "engines": { + "node": ">=4" + } }, - "unicode-property-aliases-ecmascript": { + "node_modules/unicode-property-aliases-ecmascript": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz", "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, - "unique-string": { + "node_modules/unique-string": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==", "dev": true, - "requires": { + "dependencies": { "crypto-random-string": "^2.0.0" + }, + "engines": { + "node": ">=8" } }, - "universalify": { + "node_modules/universalify": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", - "dev": true + "dev": true, + "engines": { + "node": ">= 10.0.0" + } }, - "unpipe": { + "node_modules/unpipe": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8" + } }, - "update-browserslist-db": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz", - "integrity": "sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==", + "node_modules/update-browserslist-db": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.0.tgz", + "integrity": "sha512-EdRAaAyk2cUE1wOf2DkEhzxqOQvFOoRJFNS6NeyJ01Gp2beMRpBAINjM2iDXE3KCuKhwnvHIQCJm6ThL2Z+HzQ==", "dev": true, - "requires": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "escalade": "^3.1.2", + "picocolors": "^1.0.1" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" } }, - "upper-case": { + "node_modules/upper-case": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/upper-case/-/upper-case-2.0.2.tgz", "integrity": "sha512-KgdgDGJt2TpuwBUIjgG6lzw2GWFRCW9Qkfkiv0DxqHHLYJHmtmdUIKcZd8rHgFSjopVTlw6ggzCm1b8MFQwikg==", "dev": true, - "requires": { + "dependencies": { "tslib": "^2.0.3" } }, - "upper-case-first": { + "node_modules/upper-case-first": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/upper-case-first/-/upper-case-first-2.0.2.tgz", "integrity": "sha512-514ppYHBaKwfJRK/pNC6c/OxfGa0obSnAl106u97Ed0I625Nin96KAjttZF6ZL3e1XLtphxnqrOi9iWgm+u+bg==", "dev": true, - "requires": { + "dependencies": { "tslib": "^2.0.3" } }, - "uri-js": { + "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, - "requires": { + "license": "BSD-2-Clause", + "dependencies": { "punycode": "^2.1.0" } }, - "url-loader": { + "node_modules/url-loader": { "version": "4.1.1", - "resolved": "https://registry.npmjs.org/url-loader/-/url-loader-4.1.1.tgz", - "integrity": "sha512-3BTV812+AVHHOJQO8O5MkWgZ5aosP7GnROJwvzLS9hWDj00lZ6Z0wNak423Lp9PBZN05N+Jk/N5Si8jRAlGyWA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "loader-utils": "^2.0.0", "mime-types": "^2.1.27", "schema-utils": "^3.0.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "file-loader": "*", + "webpack": "^4.0.0 || ^5.0.0" + }, + "peerDependenciesMeta": { + "file-loader": { + "optional": true + } } }, - "url-parse": { + "node_modules/url-parse": { "version": "1.5.10", - "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz", - "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "querystringify": "^2.1.1", "requires-port": "^1.0.0" } }, - "util-deprecate": { + "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 + "dev": true, + "license": "MIT" }, - "utils-merge": { + "node_modules/utils-merge": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4.0" + } }, - "uuid": { + "node_modules/uuid": { "version": "8.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", - "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", - "dev": true + "dev": true, + "license": "MIT", + "bin": { + "uuid": "dist/bin/uuid" + } }, - "v8-compile-cache": { + "node_modules/v8-compile-cache": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.4.0.tgz", "integrity": "sha512-ocyWc3bAHBB/guyqJQVI5o4BZkPhznPYUG2ea80Gond/BgNWpap8TOmLSeeQG7bnh2KMISxskdADG59j7zruhw==", "dev": true }, - "v8-to-istanbul": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.2.0.tgz", - "integrity": "sha512-/EH/sDgxU2eGxajKdwLCDmQ4FWq+kpi3uCmBGpw1xJtnAxEjlD8j8PEiGWpCIMIs3ciNAgH0d3TTJiUkYzyZjA==", + "node_modules/v8-to-istanbul": { + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.3.0.tgz", + "integrity": "sha512-kiGUalWN+rgBJ/1OHZsBtU4rXZOfj/7rKQxULKlIzwzQSvMJUUNgPwJEEh7gU6xEVxC0ahoOBvN2YI8GH6FNgA==", "dev": true, - "requires": { + "dependencies": { "@jridgewell/trace-mapping": "^0.3.12", "@types/istanbul-lib-coverage": "^2.0.1", "convert-source-map": "^2.0.0" }, - "dependencies": { - "convert-source-map": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", - "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", - "dev": true - } + "engines": { + "node": ">=10.12.0" } }, - "v8flags": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/v8flags/-/v8flags-3.2.0.tgz", - "integrity": "sha512-mH8etigqMfiGWdeXpaaqGfs6BndypxusHHcv2qSHyZkGEznCd/qAXCWWRzeowtL54147cktFOC4P5y+kl8d8Jg==", + "node_modules/v8flags": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/v8flags/-/v8flags-4.0.1.tgz", + "integrity": "sha512-fcRLaS4H/hrZk9hYwbdRM35D0U8IYMfEClhXxCivOojl+yTRAZH3Zy2sSy6qVCiGbV9YAtPssP6jaChqC9vPCg==", "dev": true, - "requires": { - "homedir-polyfill": "^1.0.1" + "engines": { + "node": ">= 10.13.0" } }, - "validate-npm-package-license": { + "node_modules/validate-npm-package-license": { "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", "dev": true, - "requires": { + "license": "Apache-2.0", + "dependencies": { "spdx-correct": "^3.0.0", "spdx-expression-parse": "^3.0.0" } }, - "validate-npm-package-name": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-5.0.0.tgz", - "integrity": "sha512-YuKoXDAhBYxY7SfOKxHBDoSyENFeW5VvIIQp2TGQuit8gpK6MnWaQelBKxso72DoxTZfZdcP3W90LqpSkgPzLQ==", + "node_modules/validate-npm-package-name": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-5.0.1.tgz", + "integrity": "sha512-OljLrQ9SQdOUqTaQxqL5dEfZWrXExyyWsozYlAWFawPVNuD83igl7uJD2RTkNMbniIYgt8l81eCJGIdQF7avLQ==", "dev": true, - "requires": { - "builtins": "^5.0.0" + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "vary": { + "node_modules/vary": { "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8" + } }, - "w3c-xmlserializer": { + "node_modules/w3c-xmlserializer": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-4.0.0.tgz", - "integrity": "sha512-d+BFHzbiCx6zGfz0HyQ6Rg69w9k19nviJspaj4yNscGjrHu94sVP+aRm75yEbCh+r2/yR+7q6hux9LVtbuTGBw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "xml-name-validator": "^4.0.0" + }, + "engines": { + "node": ">=14" } }, - "wait-on": { + "node_modules/wait-on": { "version": "7.2.0", - "resolved": "https://registry.npmjs.org/wait-on/-/wait-on-7.2.0.tgz", - "integrity": "sha512-wCQcHkRazgjG5XoAq9jbTMLpNIjoSlZslrJ2+N9MxDsGEv1HnFoVjOCexL0ESva7Y9cu350j+DWADdk54s4AFQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "axios": "^1.6.1", "joi": "^17.11.0", "lodash": "^4.17.21", "minimist": "^1.2.8", "rxjs": "^7.8.1" }, + "bin": { + "wait-on": "bin/wait-on" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/wait-on/node_modules/minimist": { + "version": "1.2.8", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/wait-on/node_modules/rxjs": { + "version": "7.8.1", + "dev": true, + "license": "Apache-2.0", "dependencies": { - "minimist": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", - "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", - "dev": true - }, - "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, - "requires": { - "tslib": "^2.1.0" - } - } + "tslib": "^2.1.0" } }, - "walker": { + "node_modules/walker": { "version": "1.0.8", "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", "dev": true, - "requires": { + "dependencies": { "makeerror": "1.0.12" } }, - "watchpack": { + "node_modules/watchpack": { "version": "2.4.1", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.1.tgz", - "integrity": "sha512-8wrBCMtVhqcXP2Sup1ctSkga6uc2Bx0IIvKyT7yTFier5AXHooSI+QyQQAtTb7+E0IUCCKyTFmXqdqgum2XWGg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "glob-to-regexp": "^0.4.1", "graceful-fs": "^4.1.2" + }, + "engines": { + "node": ">=10.13.0" } }, - "wbuf": { + "node_modules/wbuf": { "version": "1.7.3", - "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", - "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "minimalistic-assert": "^1.0.0" } }, - "wcwidth": { + "node_modules/wcwidth": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", - "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "defaults": "^1.0.3" } }, - "web-vitals": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/web-vitals/-/web-vitals-3.5.2.tgz", - "integrity": "sha512-c0rhqNcHXRkY/ogGDJQxZ9Im9D19hDihbzSQJrsioex+KnFgmMzBiy57Z1EjkhX/+OjyBpclDCzz2ITtjokFmg==", + "node_modules/web-vitals": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/web-vitals/-/web-vitals-4.2.3.tgz", + "integrity": "sha512-/CFAm1mNxSmOj6i0Co+iGFJ58OS4NRGVP+AWS/l509uIK5a1bSoIVaHz/ZumpHTfHSZBpgrJ+wjfpAOrTHok5Q==", "dev": true }, - "webidl-conversions": { + "node_modules/webidl-conversions": { "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", - "dev": true + "dev": true, + "license": "BSD-2-Clause" }, - "webpack": { + "node_modules/webpack": { "version": "5.91.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.91.0.tgz", - "integrity": "sha512-rzVwlLeBWHJbmgTC/8TvAcu5vpJNII+MelQpylD4jNERPwpBJOE2lEcko1zJX3QJeLjTTAnQxn/OJ8bjDzVQaw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@types/eslint-scope": "^3.7.3", "@types/estree": "^1.0.5", "@webassemblyjs/ast": "^1.12.1", @@ -20199,61 +20154,27 @@ "watchpack": "^2.4.1", "webpack-sources": "^3.2.3" }, - "dependencies": { - "browserslist": { - "version": "4.23.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", - "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", - "dev": true, - "requires": { - "caniuse-lite": "^1.0.30001587", - "electron-to-chromium": "^1.4.668", - "node-releases": "^2.0.14", - "update-browserslist-db": "^1.0.13" - } - }, - "caniuse-lite": { - "version": "1.0.30001612", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001612.tgz", - "integrity": "sha512-lFgnZ07UhaCcsSZgWW0K5j4e69dK1u/ltrL9lTUiFOwNHs12S3UMIEYgBV0Z6C6hRDev7iRnMzzYmKabYdXF9g==", - "dev": true - }, - "electron-to-chromium": { - "version": "1.4.748", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.748.tgz", - "integrity": "sha512-VWqjOlPZn70UZ8FTKUOkUvBLeTQ0xpty66qV0yJcAGY2/CthI4xyW9aEozRVtuwv3Kpf5xTesmJUcPwuJmgP4A==", - "dev": true - }, - "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-releases": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", - "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", - "dev": true - }, - "update-browserslist-db": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", - "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", - "dev": true, - "requires": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" - } + "bin": { + "webpack": "bin/webpack.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependenciesMeta": { + "webpack-cli": { + "optional": true } } }, - "webpack-bundle-analyzer": { + "node_modules/webpack-bundle-analyzer": { "version": "4.10.2", - "resolved": "https://registry.npmjs.org/webpack-bundle-analyzer/-/webpack-bundle-analyzer-4.10.2.tgz", - "integrity": "sha512-vJptkMm9pk5si4Bv922ZbKLV8UTT4zib4FPgXMhgzUny0bfDDkLXAVQs3ly3fS4/TN9ROFtb0NFrm04UXFE/Vw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@discoveryjs/json-ext": "0.5.7", "acorn": "^8.0.4", "acorn-walk": "^8.0.0", @@ -20267,21 +20188,29 @@ "sirv": "^2.0.3", "ws": "^7.3.1" }, - "dependencies": { - "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 - } + "bin": { + "webpack-bundle-analyzer": "lib/bin/analyzer.js" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/webpack-bundle-analyzer/node_modules/escape-string-regexp": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "webpack-cli": { + "node_modules/webpack-cli": { "version": "5.1.4", - "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-5.1.4.tgz", - "integrity": "sha512-pIDJHIEI9LR0yxHXQ+Qh95k2EvXpWzZ5l+d+jIo+RdSm9MiHfzazIxwwni/p7+x4eJZuvG1AJwgC4TNQ7NRgsg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@discoveryjs/json-ext": "^0.5.0", "@webpack-cli/configtest": "^2.1.1", "@webpack-cli/info": "^2.0.2", @@ -20296,125 +20225,180 @@ "rechoir": "^0.8.0", "webpack-merge": "^5.7.3" }, - "dependencies": { - "commander": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.1.tgz", - "integrity": "sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==", - "dev": true - }, - "cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "requires": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - } - }, - "interpret": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/interpret/-/interpret-3.1.1.tgz", - "integrity": "sha512-6xwYfHbajpoF0xLW+iwLkhwgvLoZDfjYfoFNu8ftMoXINzwuymNLd9u/KmwtdT2GbR+/Cz66otEGEVVUHX9QLQ==", - "dev": true - }, - "rechoir": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.8.0.tgz", - "integrity": "sha512-/vxpCXddiX8NGfGO/mTafwjq4aFa/71pvamip0++IQk3zG8cbCj0fifNPrjjF1XMXUne91jL9OoxmdykoEtifQ==", - "dev": true, - "requires": { - "resolve": "^1.20.0" - } - }, - "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==", - "dev": true, - "requires": { - "shebang-regex": "^3.0.0" - } + "bin": { + "webpack-cli": "bin/cli.js" + }, + "engines": { + "node": ">=14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "5.x.x" + }, + "peerDependenciesMeta": { + "@webpack-cli/generators": { + "optional": true }, - "shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true + "webpack-bundle-analyzer": { + "optional": true }, - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } + "webpack-dev-server": { + "optional": true } } }, - "webpack-dev-middleware": { + "node_modules/webpack-cli/node_modules/commander": { + "version": "10.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14" + } + }, + "node_modules/webpack-cli/node_modules/cross-spawn": { + "version": "7.0.3", + "dev": true, + "license": "MIT", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/webpack-cli/node_modules/interpret": { + "version": "3.1.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/webpack-cli/node_modules/rechoir": { + "version": "0.8.0", + "dev": true, + "license": "MIT", + "dependencies": { + "resolve": "^1.20.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/webpack-cli/node_modules/shebang-command": { + "version": "2.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/webpack-cli/node_modules/shebang-regex": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/webpack-cli/node_modules/which": { + "version": "2.0.2", + "dev": true, + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/webpack-dev-middleware": { "version": "5.3.4", - "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.4.tgz", - "integrity": "sha512-BVdTqhhs+0IfoeAf7EoH5WE+exCmqGerHfDM0IL096Px60Tq2Mn9MAbnaGUe6HiMa41KMCYF19gyzZmBcq/o4Q==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "colorette": "^2.0.10", "memfs": "^3.4.3", "mime-types": "^2.1.31", "range-parser": "^1.2.1", "schema-utils": "^4.0.0" }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" + } + }, + "node_modules/webpack-dev-middleware/node_modules/ajv": { + "version": "8.12.0", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/webpack-dev-middleware/node_modules/ajv-keywords": { + "version": "5.1.0", + "dev": true, + "license": "MIT", "dependencies": { - "ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - } - }, - "ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.3" - } - }, - "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 - }, - "schema-utils": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.2.0.tgz", - "integrity": "sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.9.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.1.0" - } - } + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" + } + }, + "node_modules/webpack-dev-middleware/node_modules/json-schema-traverse": { + "version": "1.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/webpack-dev-middleware/node_modules/schema-utils": { + "version": "4.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.9.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.1.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" } }, - "webpack-dev-server": { + "node_modules/webpack-dev-server": { "version": "4.15.2", - "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.15.2.tgz", - "integrity": "sha512-0XavAZbNJ5sDrCbkpWL8mia0o5WPOd2YGtxrEiZkBK9FjLppIUK2TgxK6qGD2P3hUXTJNNPVibrerKcx5WkR1g==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@types/bonjour": "^3.5.9", "@types/connect-history-api-fallback": "^1.3.5", "@types/express": "^4.17.13", @@ -20446,330 +20430,430 @@ "webpack-dev-middleware": "^5.3.4", "ws": "^8.13.0" }, - "dependencies": { - "ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - } - }, - "ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.3" - } - }, - "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 + "bin": { + "webpack-dev-server": "bin/webpack-dev-server.js" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.37.0 || ^5.0.0" + }, + "peerDependenciesMeta": { + "webpack": { + "optional": true }, - "schema-utils": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.2.0.tgz", - "integrity": "sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.9.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.1.0" - } + "webpack-cli": { + "optional": true + } + } + }, + "node_modules/webpack-dev-server/node_modules/ajv": { + "version": "8.12.0", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/webpack-dev-server/node_modules/ajv-keywords": { + "version": "5.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" + } + }, + "node_modules/webpack-dev-server/node_modules/json-schema-traverse": { + "version": "1.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/webpack-dev-server/node_modules/schema-utils": { + "version": "4.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.9.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.1.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/webpack-dev-server/node_modules/ws": { + "version": "8.16.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true }, - "ws": { - "version": "8.16.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.16.0.tgz", - "integrity": "sha512-HS0c//TP7Ina87TfiPUz1rQzMhHrl/SG2guqRcTOIUYD2q8uhUdNHZYJUaQ8aTGPzCh+c6oawMKW35nFl1dxyQ==", - "dev": true + "utf-8-validate": { + "optional": true } } }, - "webpack-merge": { + "node_modules/webpack-merge": { "version": "5.10.0", - "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.10.0.tgz", - "integrity": "sha512-+4zXKdx7UnO+1jaN4l2lHVD+mFvnlZQP/6ljaJVb4SZiwIKeUnrT5l0gkT8z+n4hKpC+jpOv6O9R+gLtag7pSA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "clone-deep": "^4.0.1", "flat": "^5.0.2", "wildcard": "^2.0.0" }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/webpack-merge/node_modules/clone-deep": { + "version": "4.0.1", + "dev": true, + "license": "MIT", "dependencies": { - "clone-deep": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", - "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4", - "kind-of": "^6.0.2", - "shallow-clone": "^3.0.0" - } - }, - "is-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", - "dev": true, - "requires": { - "isobject": "^3.0.1" - } - }, - "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 - }, - "shallow-clone": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", - "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", - "dev": true, - "requires": { - "kind-of": "^6.0.2" - } - } + "is-plain-object": "^2.0.4", + "kind-of": "^6.0.2", + "shallow-clone": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/webpack-merge/node_modules/is-plain-object": { + "version": "2.0.4", + "dev": true, + "license": "MIT", + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/webpack-merge/node_modules/kind-of": { + "version": "6.0.3", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/webpack-merge/node_modules/shallow-clone": { + "version": "3.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "kind-of": "^6.0.2" + }, + "engines": { + "node": ">=8" } }, - "webpack-sources": { + "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 + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10.13.0" + } }, - "websocket-driver": { + "node_modules/webpack/node_modules/graceful-fs": { + "version": "4.2.11", + "dev": true, + "license": "ISC" + }, + "node_modules/websocket-driver": { "version": "0.7.4", - "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz", - "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==", "dev": true, - "requires": { + "license": "Apache-2.0", + "dependencies": { "http-parser-js": ">=0.5.1", "safe-buffer": ">=5.1.0", "websocket-extensions": ">=0.1.1" + }, + "engines": { + "node": ">=0.8.0" } }, - "websocket-extensions": { + "node_modules/websocket-extensions": { "version": "0.1.4", - "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", - "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==", - "dev": true + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=0.8.0" + } }, - "whatwg-encoding": { + "node_modules/whatwg-encoding": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-2.0.0.tgz", - "integrity": "sha512-p41ogyeMUrw3jWclHWTQg1k05DSVXPLcVxRTYsXUk+ZooOCZLcoYgPZ/HL/D/N+uQPOtcp1me1WhBEaX02mhWg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "iconv-lite": "0.6.3" }, + "engines": { + "node": ">=12" + } + }, + "node_modules/whatwg-encoding/node_modules/iconv-lite": { + "version": "0.6.3", + "dev": true, + "license": "MIT", "dependencies": { - "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, - "requires": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - } - } + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, - "whatwg-mimetype": { + "node_modules/whatwg-mimetype": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-3.0.0.tgz", - "integrity": "sha512-nt+N2dzIutVRxARx1nghPKGv1xHikU7HKdfafKkLNLindmPU/ch3U31NOCGGA/dmPcmb1VlofO0vnKAcsm0o/Q==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + } }, - "whatwg-url": { + "node_modules/whatwg-url": { "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "tr46": "~0.0.3", "webidl-conversions": "^3.0.0" } }, - "which": { + "node_modules/which": { "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", "dev": true, - "requires": { + "license": "ISC", + "dependencies": { "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" } }, - "which-boxed-primitive": { + "node_modules/which-boxed-primitive": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", - "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", "dev": true, - "requires": { + "license": "MIT", + "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" } }, - "wildcard": { + "node_modules/wildcard": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.1.tgz", - "integrity": "sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ==", - "dev": true + "dev": true, + "license": "MIT" }, - "wrap-ansi": { + "node_modules/wrap-ansi": { "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", "dev": true, - "requires": { + "license": "MIT", + "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/node_modules/ansi-styles": { + "version": "4.3.0", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/color-convert": { + "version": "2.0.1", + "dev": true, + "license": "MIT", "dependencies": { - "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, - "requires": { - "color-convert": "^2.0.1" - } - }, - "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, - "requires": { - "color-name": "~1.1.4" - } - }, - "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 - } + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" } }, - "wrappy": { + "node_modules/wrap-ansi/node_modules/color-name": { + "version": "1.1.4", + "dev": true, + "license": "MIT" + }, + "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 + "dev": true, + "license": "ISC" }, - "write-file-atomic": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", - "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", + "node_modules/write-file-atomic": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", + "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", "dev": true, - "requires": { + "dependencies": { "imurmurhash": "^0.1.4", - "is-typedarray": "^1.0.0", - "signal-exit": "^3.0.2", - "typedarray-to-buffer": "^3.1.5" + "signal-exit": "^3.0.7" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "ws": { + "node_modules/ws": { "version": "7.5.9", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", - "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", - "dev": true + "dev": true, + "license": "MIT", + "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 + } + } }, - "xdg-basedir": { + "node_modules/xdg-basedir": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", - "dev": true + "dev": true, + "engines": { + "node": ">=8" + } }, - "xml-name-validator": { + "node_modules/xml-name-validator": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-4.0.0.tgz", - "integrity": "sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==", - "dev": true + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=12" + } }, - "xmlchars": { + "node_modules/xmlchars": { "version": "2.2.0", - "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", - "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", - "dev": true + "dev": true, + "license": "MIT" }, - "y18n": { + "node_modules/y18n": { "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "dev": true + "dev": true, + "license": "ISC", + "engines": { + "node": ">=10" + } }, - "yallist": { + "node_modules/yallist": { "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true + "dev": true, + "license": "ISC" }, - "yaml": { + "node_modules/yaml": { "version": "1.10.2", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", - "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", - "dev": true + "dev": true, + "license": "ISC", + "engines": { + "node": ">= 6" + } }, - "yargs": { - "version": "17.6.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.6.0.tgz", - "integrity": "sha512-8H/wTDqlSwoSnScvV2N/JHfLWOKuh5MVla9hqLjK3nsfyy6Y4kDSYSvkU5YCUEPOSnRXfIyx3Sq+B/IWudTo4g==", + "node_modules/yargs": { + "version": "17.7.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.1.tgz", + "integrity": "sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw==", "dev": true, - "requires": { + "dependencies": { "cliui": "^8.0.1", "escalade": "^3.1.1", "get-caller-file": "^2.0.5", "require-directory": "^2.1.1", "string-width": "^4.2.3", "y18n": "^5.0.5", - "yargs-parser": "^21.0.0" + "yargs-parser": "^21.1.1" }, - "dependencies": { - "yargs-parser": { - "version": "21.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", - "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", - "dev": true - } + "engines": { + "node": ">=12" } }, - "yargs-parser": { + "node_modules/yargs-parser": { "version": "21.1.1", "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", - "dev": true + "dev": true, + "engines": { + "node": ">=12" + } }, - "yauzl": { + "node_modules/yauzl": { "version": "2.10.0", - "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", - "integrity": "sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "buffer-crc32": "~0.2.3", "fd-slicer": "~1.1.0" } }, - "yocto-queue": { + "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 + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } } } } diff --git a/package.json b/package.json index 15a3b41f..7ee5b30a 100644 --- a/package.json +++ b/package.json @@ -4,7 +4,7 @@ "private": true, "engineStrict": true, "engines": { - "node": ">=16" + "node": ">=20" }, "homepage": "https://github.com/wordpress/two-factor", "scripts": { @@ -18,9 +18,9 @@ "format:php": "composer format", "format:js": "npm run lint:js -- --fix", "format:css": "npm run lint:css -- --fix", - "test": "npm run composer test", + "test": "wp-env run tests-cli --env-cwd=wp-content/plugins/two-factor vendor/bin/phpunit --", "test:watch": "npm run composer test:watch", - "composer": "wp-env run phpunit composer --working-dir=/var/www/html/wp-content/plugins/two-factor", + "composer": "wp-env run tests-cli --env-cwd=wp-content/plugins/two-factor composer --", "preinstall": "composer install" }, "repository": { @@ -33,11 +33,11 @@ "qrcode-generator": "^1.4.4" }, "devDependencies": { - "@wordpress/env": "^5.4.0", - "@wordpress/eslint-plugin": "^13.3.0", - "@wordpress/scripts": "^27.7.0", - "grunt": "^1.5.3", - "grunt-cli": "^1.4.3", + "@wordpress/env": "^10.5.0", + "@wordpress/eslint-plugin": "^20.2.0", + "@wordpress/scripts": "^28.5.0", + "grunt": "^1.6.1", + "grunt-cli": "^1.5.0", "grunt-contrib-clean": "^2.0.1", "grunt-contrib-copy": "^1.0.0", "load-grunt-tasks": "^5.1.0", diff --git a/phpunit-watcher.yml.dist b/phpunit-watcher.yml.dist index 3505e992..bf5d3573 100644 --- a/phpunit-watcher.yml.dist +++ b/phpunit-watcher.yml.dist @@ -7,7 +7,6 @@ watch: - dist - node_modules - vendor - - wordpress fileMask: '*.php' ignoreDotFiles: true ignoreVCS: true diff --git a/phpunit.xml.dist b/phpunit.xml.dist index 09d13727..3faef7e7 100644 --- a/phpunit.xml.dist +++ b/phpunit.xml.dist @@ -7,9 +7,6 @@ convertWarningsToExceptions="true" cacheResultFile="./tests/.phpunit.result.cache" > - - - tests diff --git a/readme.md b/readme.md index 5750f907..177b9032 100644 --- a/readme.md +++ b/readme.md @@ -29,22 +29,10 @@ When you're ready, open [a pull request](https://help.github.com/articles/creati ## Testing -### Running tests in Docker - -1. Run `npm run env start` -1. Run `npm run test` or `npm run test:watch`. - -### Running tests locally - -1. Create a MySQL database for the tests. Don't reuse an existing database, because all of the data will be deleted every time the tests are run. -1. Add the following to your `~/.bashrc`, with the values for the database you created above: - ``` - export WORDPRESS_DB_NAME=wp_tests - export WORDPRESS_DB_USER=wp_tests - export WORDPRESS_DB_PASSWORD=wp_tests - ``` -1. `source ~/.bashrc` -1. Run `composer run test` or `composer run test:watch`. +1. Run `npm test` or `npm run test:watch`. + +To generate a code coverage report, be sure to start the testing environment with coverage support enabled: + npm run env start -- --xdebug=coverage To view the code coverage report, you can open a web browser, go to `File > Open file...`, and then select `{path to two-factor}/tests/logs/html/index.html`. diff --git a/tests/bootstrap.php b/tests/bootstrap.php index 5afbd140..687c37ad 100644 --- a/tests/bootstrap.php +++ b/tests/bootstrap.php @@ -2,27 +2,31 @@ /** * Bootstrap the PHPUnit tests. * - * The `WP_PHPUNIT__DIR` constant is defined in the phpunit.xml file - * in the project root directory. - * * @package two-factor */ -/** - * Enforce our custom WP_PHPUNIT__TESTS_CONFIG defined in phpunit.xml.dist - * from being replaced by wp-env environment variables. - * - * @see https://github.com/WordPress/gutenberg/blob/936ce3a79ac9f34cc12492e7df5f3320eaf2a6ca/packages/env/lib/build-docker-compose-config.js#L259-L260 - */ -if ( false === strpos( getenv( 'WP_PHPUNIT__TESTS_CONFIG' ), '/two-factor/' ) ) { - putenv( sprintf( 'WP_PHPUNIT__TESTS_CONFIG=%s/wp-config.php', __DIR__ ) ); // phpcs:ignore WordPress.PHP.DiscouragedPHPFunctions.runtime_configuration_putenv +// Composer autoloader must be loaded before phpunit will be available. +require_once dirname( __DIR__ ) . '/vendor/autoload.php'; + +// Determine the tests directory (from a WP dev checkout). +// Try the WP_TESTS_DIR environment variable first. +$_tests_dir = getenv( 'WP_TESTS_DIR' ); + +// See if we're installed inside an existing WP dev instance. +if ( ! $_tests_dir ) { + $_try_tests_dir = __DIR__ . '/../../../../../tests/phpunit'; + if ( file_exists( $_try_tests_dir . '/includes/functions.php' ) ) { + $_tests_dir = $_try_tests_dir; + } } -// Composer autoloader must be loaded before WP_PHPUNIT__DIR will be available. -require_once dirname( __DIR__ ) . '/vendor/autoload.php'; +// Fallback. +if ( ! $_tests_dir ) { + $_tests_dir = '/tmp/wordpress-tests-lib'; +} // Give access to tests_add_filter() function. -require_once getenv( 'WP_PHPUNIT__DIR' ) . '/includes/functions.php'; +require_once $_tests_dir . '/includes/functions.php'; require_once dirname( __DIR__ ) . '/includes/function.login-header.php'; require_once dirname( __DIR__ ) . '/includes/function.login-footer.php'; @@ -35,4 +39,4 @@ function() { ); // Start up the WP testing environment. -require_once getenv( 'WP_PHPUNIT__DIR' ) . '/includes/bootstrap.php'; +require_once $_tests_dir . '/includes/bootstrap.php'; diff --git a/tests/wp-config.php b/tests/wp-config.php deleted file mode 100644 index f95043f9..00000000 --- a/tests/wp-config.php +++ /dev/null @@ -1,34 +0,0 @@ - Date: Thu, 22 Aug 2024 13:27:18 +1000 Subject: [PATCH 088/130] Bump axios from 1.6.8 to 1.7.4 (#626) Bumps [axios](https://github.com/axios/axios) from 1.6.8 to 1.7.4. - [Release notes](https://github.com/axios/axios/releases) - [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md) - [Commits](https://github.com/axios/axios/compare/v1.6.8...v1.7.4) --- updated-dependencies: - dependency-name: axios dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/package-lock.json b/package-lock.json index 702ea4cf..6f5667d5 100644 --- a/package-lock.json +++ b/package-lock.json @@ -5778,9 +5778,10 @@ } }, "node_modules/axios": { - "version": "1.6.8", + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.4.tgz", + "integrity": "sha512-DukmaFRnY6AzAALSH4J2M3k6PkaC+MfaAGdEERRWcC9q3/TWQwLpHR8ZRLKTdQ3aBDL64EdluRDjJqKw+BPZEw==", "dev": true, - "license": "MIT", "dependencies": { "follow-redirects": "^1.15.6", "form-data": "^4.0.0", From 1cb21adb4fb7fcf8e0fa8bef31954e05bd4da813 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 22 Aug 2024 03:32:18 +0000 Subject: [PATCH 089/130] Bump braces from 3.0.2 to 3.0.3 (#613) --- package-lock.json | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/package-lock.json b/package-lock.json index 6f5667d5..bddf5035 100644 --- a/package-lock.json +++ b/package-lock.json @@ -6225,11 +6225,12 @@ } }, "node_modules/braces": { - "version": "3.0.2", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", "dev": true, - "license": "MIT", "dependencies": { - "fill-range": "^7.0.1" + "fill-range": "^7.1.1" }, "engines": { "node": ">=8" @@ -9537,9 +9538,10 @@ } }, "node_modules/fill-range": { - "version": "7.0.1", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", "dev": true, - "license": "MIT", "dependencies": { "to-regex-range": "^5.0.1" }, @@ -11439,8 +11441,9 @@ }, "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, - "license": "MIT", "engines": { "node": ">=0.12.0" } @@ -19526,8 +19529,9 @@ }, "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, - "license": "MIT", "dependencies": { "is-number": "^7.0.0" }, From f46876039c356f3ca1c9cc21ec194acd92bb7b5a Mon Sep 17 00:00:00 2001 From: Dion Hulse Date: Thu, 22 Aug 2024 13:46:41 +1000 Subject: [PATCH 090/130] Included dev environment doesn't need composer run manually. Composer install is run by npm via a `preinstall`. --- readme.md | 1 - 1 file changed, 1 deletion(-) diff --git a/readme.md b/readme.md index 177b9032..a37c885c 100644 --- a/readme.md +++ b/readme.md @@ -18,7 +18,6 @@ To use the provided development environment, you'll first need to install and la $ git clone https://github.com/wordpress/two-factor.git $ cd two-factor - $ composer install $ npm install $ npm run build $ npm run env start From f1bf36295445e8b6816f2d71e768fd519f845627 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 31 Aug 2024 04:27:37 +0000 Subject: [PATCH 091/130] Bump webpack from 5.91.0 to 5.94.0 Bumps [webpack](https://github.com/webpack/webpack) from 5.91.0 to 5.94.0. - [Release notes](https://github.com/webpack/webpack/releases) - [Commits](https://github.com/webpack/webpack/compare/v5.91.0...v5.94.0) --- updated-dependencies: - dependency-name: webpack dependency-type: indirect ... Signed-off-by: dependabot[bot] --- package-lock.json | 33 ++++++++++++++------------------- 1 file changed, 14 insertions(+), 19 deletions(-) diff --git a/package-lock.json b/package-lock.json index bddf5035..cef92650 100644 --- a/package-lock.json +++ b/package-lock.json @@ -3769,20 +3769,13 @@ "version": "8.56.10", "dev": true, "license": "MIT", + "optional": true, + "peer": true, "dependencies": { "@types/estree": "*", "@types/json-schema": "*" } }, - "node_modules/@types/eslint-scope": { - "version": "3.7.7", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/eslint": "*", - "@types/estree": "*" - } - }, "node_modules/@types/estree": { "version": "1.0.5", "dev": true, @@ -5369,10 +5362,11 @@ "acorn-walk": "^8.0.2" } }, - "node_modules/acorn-import-assertions": { - "version": "1.9.0", + "node_modules/acorn-import-attributes": { + "version": "1.9.5", + "resolved": "https://registry.npmjs.org/acorn-import-attributes/-/acorn-import-attributes-1.9.5.tgz", + "integrity": "sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ==", "dev": true, - "license": "MIT", "peerDependencies": { "acorn": "^8" } @@ -8239,9 +8233,10 @@ } }, "node_modules/enhanced-resolve": { - "version": "5.16.0", + "version": "5.17.1", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.1.tgz", + "integrity": "sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==", "dev": true, - "license": "MIT", "dependencies": { "graceful-fs": "^4.2.4", "tapable": "^2.2.0" @@ -20130,20 +20125,20 @@ "license": "BSD-2-Clause" }, "node_modules/webpack": { - "version": "5.91.0", + "version": "5.94.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.94.0.tgz", + "integrity": "sha512-KcsGn50VT+06JH/iunZJedYGUJS5FGjow8wb9c0v5n1Om8O1g4L6LjtfxwlXIATopoQu+vOXXa7gYisWxCoPyg==", "dev": true, - "license": "MIT", "dependencies": { - "@types/eslint-scope": "^3.7.3", "@types/estree": "^1.0.5", "@webassemblyjs/ast": "^1.12.1", "@webassemblyjs/wasm-edit": "^1.12.1", "@webassemblyjs/wasm-parser": "^1.12.1", "acorn": "^8.7.1", - "acorn-import-assertions": "^1.9.0", + "acorn-import-attributes": "^1.9.5", "browserslist": "^4.21.10", "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.16.0", + "enhanced-resolve": "^5.17.1", "es-module-lexer": "^1.2.1", "eslint-scope": "5.1.1", "events": "^3.2.0", From 71b49316370208aab76fde73e84dcdf34078e4cc Mon Sep 17 00:00:00 2001 From: Thrijith Thankachan Date: Tue, 17 Sep 2024 10:26:48 +0530 Subject: [PATCH 092/130] Update two factor options layout (#623) * Update and move two factor option heading out of table Align two factor options with title * Remove wrapping table, update css for existing table to use full width * Duplicate the table header to the table footer, to match other wp-admin tables used on profiles and elsewhere. * Use wp-admin classnames and inherit core CSS. --------- Co-authored-by: Dion Hulse --- class-two-factor-core.php | 83 +++++++++++++++++++-------------------- user-edit.css | 20 ---------- 2 files changed, 41 insertions(+), 62 deletions(-) diff --git a/class-two-factor-core.php b/class-two-factor-core.php index c5864340..62e4019f 100644 --- a/class-two-factor-core.php +++ b/class-two-factor-core.php @@ -1405,7 +1405,7 @@ public static function _login_form_revalidate_2fa( $nonce = '', $provider = '', ) ); do_action( 'two_factor_user_revalidated', $user, $provider ); - + // Must be global because that's how login_header() uses it. global $interim_login; $interim_login = isset( $_REQUEST['interim-login'] ); // phpcs:ignore WordPress.WP.GlobalVariablesOverride.Prohibited,WordPress.Security.NonceVerification.Recommended @@ -1721,48 +1721,47 @@ public static function user_two_factor_options( $user ) { wp_nonce_field( 'user_two_factor_options', '_nonce_user_two_factor_options', false ); ?> +

- - - - - +
- - - - - - - - - - - - $object ) : ?> - - - - - - - -
/> /> - - -
-
+ + + + + + + + + $object ) : ?> + + + + + + + + + + + + + +
/> /> + + +
Date: Tue, 17 Sep 2024 15:01:27 +1000 Subject: [PATCH 093/130] Replace the h3 with a h2, Security keys nests under this. --- class-two-factor-core.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/class-two-factor-core.php b/class-two-factor-core.php index 62e4019f..82b42d96 100644 --- a/class-two-factor-core.php +++ b/class-two-factor-core.php @@ -1721,7 +1721,7 @@ public static function user_two_factor_options( $user ) { wp_nonce_field( 'user_two_factor_options', '_nonce_user_two_factor_options', false ); ?> -

+

From bb048cbb94cdb5bb666cd02d0ed2503a6b0a8273 Mon Sep 17 00:00:00 2001 From: Dion Date: Tue, 17 Sep 2024 15:14:44 +1000 Subject: [PATCH 094/130] TOTP: Add accessibility for the QR Code, marking it as an image and giving it a proper title. --- providers/class-two-factor-totp.php | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/providers/class-two-factor-totp.php b/providers/class-two-factor-totp.php index 4b075495..88f743db 100644 --- a/providers/class-two-factor-totp.php +++ b/providers/class-two-factor-totp.php @@ -318,6 +318,15 @@ public function user_two_factor_options( $user ) { qr.make(); document.querySelector( '#two-factor-qr-code a' ).innerHTML = qr.createSvgTag( 5 ); + + // For accessibility, markup the SVG with a title and role. + var svg = document.querySelector( '#two-factor-qr-code a svg' ), + title = document.createElement( 'title' ); + + svg.role = 'image'; + svg.ariaLabel = ; + title.innerText = svg.ariaLabel; + svg.appendChild( title ); }; // Run now if the document is loaded, otherwise on DOMContentLoaded. From efb96a53b1a5cf3acb9a965d89533ffec74a345c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 17 Sep 2024 19:28:41 +0000 Subject: [PATCH 095/130] Bump send and express Bumps [send](https://github.com/pillarjs/send) and [express](https://github.com/expressjs/express). These dependencies needed to be updated together. Updates `send` from 0.18.0 to 0.19.0 - [Release notes](https://github.com/pillarjs/send/releases) - [Changelog](https://github.com/pillarjs/send/blob/master/HISTORY.md) - [Commits](https://github.com/pillarjs/send/compare/0.18.0...0.19.0) Updates `express` from 4.19.2 to 4.21.0 - [Release notes](https://github.com/expressjs/express/releases) - [Changelog](https://github.com/expressjs/express/blob/4.21.0/History.md) - [Commits](https://github.com/expressjs/express/compare/4.19.2...4.21.0) --- updated-dependencies: - dependency-name: send dependency-type: indirect - dependency-name: express dependency-type: indirect ... Signed-off-by: dependabot[bot] --- package-lock.json | 330 ++++++++++++++++++++++++++++++++++------------ 1 file changed, 247 insertions(+), 83 deletions(-) diff --git a/package-lock.json b/package-lock.json index cef92650..9d266d2b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -6152,9 +6152,10 @@ } }, "node_modules/body-parser": { - "version": "1.20.2", + "version": "1.20.3", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.3.tgz", + "integrity": "sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==", "dev": true, - "license": "MIT", "dependencies": { "bytes": "3.1.2", "content-type": "~1.0.5", @@ -6164,7 +6165,7 @@ "http-errors": "2.0.0", "iconv-lite": "0.4.24", "on-finished": "2.4.1", - "qs": "6.11.0", + "qs": "6.13.0", "raw-body": "2.5.2", "type-is": "~1.6.18", "unpipe": "1.0.0" @@ -6176,24 +6177,27 @@ }, "node_modules/body-parser/node_modules/bytes": { "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", "dev": true, - "license": "MIT", "engines": { "node": ">= 0.8" } }, "node_modules/body-parser/node_modules/debug": { "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, - "license": "MIT", "dependencies": { "ms": "2.0.0" } }, "node_modules/body-parser/node_modules/ms": { "version": "2.0.0", - "dev": true, - "license": "MIT" + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true }, "node_modules/bonjour-service": { "version": "1.2.1", @@ -6353,12 +6357,19 @@ } }, "node_modules/call-bind": { - "version": "1.0.2", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", + "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", "dev": true, - "license": "MIT", "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" @@ -7022,8 +7033,9 @@ }, "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, - "license": "MIT", "engines": { "node": ">= 0.6" } @@ -7843,6 +7855,23 @@ "node": ">=10" } }, + "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==", + "dev": true, + "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-lazy-prop": { "version": "2.0.0", "dev": true, @@ -7952,16 +7981,18 @@ }, "node_modules/depd": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", "dev": true, - "license": "MIT", "engines": { "node": ">= 0.8" } }, "node_modules/destroy": { "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", "dev": true, - "license": "MIT", "engines": { "node": ">= 0.8", "npm": "1.2.8000 || >= 1.4.16" @@ -8159,8 +8190,9 @@ }, "node_modules/ee-first": { "version": "1.1.1", - "dev": true, - "license": "MIT" + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", + "dev": true }, "node_modules/electron-to-chromium": { "version": "1.5.13", @@ -8194,9 +8226,10 @@ } }, "node_modules/encodeurl": { - "version": "1.0.2", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", "dev": true, - "license": "MIT", "engines": { "node": ">= 0.8" } @@ -8333,6 +8366,27 @@ "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==", + "dev": true, + "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==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/es-module-lexer": { "version": "1.5.0", "dev": true, @@ -9107,8 +9161,9 @@ }, "node_modules/etag": { "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", "dev": true, - "license": "MIT", "engines": { "node": ">= 0.6" } @@ -9250,36 +9305,37 @@ "license": "MIT" }, "node_modules/express": { - "version": "4.19.2", + "version": "4.21.0", + "resolved": "https://registry.npmjs.org/express/-/express-4.21.0.tgz", + "integrity": "sha512-VqcNGcj/Id5ZT1LZ/cfihi3ttTn+NJmkli2eZADigjq29qTlWi/hAQ43t/VLPq8+UX06FCEx3ByOYet6ZFblng==", "dev": true, - "license": "MIT", "dependencies": { "accepts": "~1.3.8", "array-flatten": "1.1.1", - "body-parser": "1.20.2", + "body-parser": "1.20.3", "content-disposition": "0.5.4", "content-type": "~1.0.4", "cookie": "0.6.0", "cookie-signature": "1.0.6", "debug": "2.6.9", "depd": "2.0.0", - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "etag": "~1.8.1", - "finalhandler": "1.2.0", + "finalhandler": "1.3.1", "fresh": "0.5.2", "http-errors": "2.0.0", - "merge-descriptors": "1.0.1", + "merge-descriptors": "1.0.3", "methods": "~1.1.2", "on-finished": "2.4.1", "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", + "path-to-regexp": "0.1.10", "proxy-addr": "~2.0.7", - "qs": "6.11.0", + "qs": "6.13.0", "range-parser": "~1.2.1", "safe-buffer": "5.2.1", - "send": "0.18.0", - "serve-static": "1.15.0", + "send": "0.19.0", + "serve-static": "1.16.2", "setprototypeof": "1.2.0", "statuses": "2.0.1", "type-is": "~1.6.18", @@ -9545,12 +9601,13 @@ } }, "node_modules/finalhandler": { - "version": "1.2.0", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.1.tgz", + "integrity": "sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==", "dev": true, - "license": "MIT", "dependencies": { "debug": "2.6.9", - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "on-finished": "2.4.1", "parseurl": "~1.3.3", @@ -9563,16 +9620,18 @@ }, "node_modules/finalhandler/node_modules/debug": { "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, - "license": "MIT", "dependencies": { "ms": "2.0.0" } }, "node_modules/finalhandler/node_modules/ms": { "version": "2.0.0", - "dev": true, - "license": "MIT" + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true }, "node_modules/find-cache-dir": { "version": "3.3.2", @@ -9918,8 +9977,9 @@ }, "node_modules/fresh": { "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", "dev": true, - "license": "MIT", "engines": { "node": ">= 0.6" } @@ -9974,9 +10034,13 @@ } }, "node_modules/function-bind": { - "version": "1.1.1", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", "dev": true, - "license": "MIT" + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, "node_modules/function.prototype.name": { "version": "1.1.5", @@ -10020,13 +10084,19 @@ } }, "node_modules/get-intrinsic": { - "version": "1.1.3", + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", + "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", "dev": true, - "license": "MIT", "dependencies": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.3" + "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": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -10225,6 +10295,18 @@ "integrity": "sha512-xYfnw62CKG8nLkZBfWbhWwDw02CHty86jfPcc2cr3ZfeuK9ysoVPPEUxf21bAD/rWAgk52SuBrLJlefNy8mvFg==", "dev": true }, + "node_modules/gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/got": { "version": "11.8.5", "dev": true, @@ -10679,11 +10761,24 @@ } }, "node_modules/has-property-descriptors": { - "version": "1.0.0", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", "dev": true, - "license": "MIT", "dependencies": { - "get-intrinsic": "^1.1.1" + "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==", + "dev": true, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -10714,6 +10809,18 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/header-case": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/header-case/-/header-case-2.0.4.tgz", @@ -10813,8 +10920,9 @@ }, "node_modules/http-errors": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", "dev": true, - "license": "MIT", "dependencies": { "depd": "2.0.0", "inherits": "2.0.4", @@ -14521,8 +14629,9 @@ }, "node_modules/media-typer": { "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", "dev": true, - "license": "MIT", "engines": { "node": ">= 0.6" } @@ -14663,9 +14772,13 @@ } }, "node_modules/merge-descriptors": { - "version": "1.0.1", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.3.tgz", + "integrity": "sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==", "dev": true, - "license": "MIT" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, "node_modules/merge-stream": { "version": "2.0.0", @@ -15442,9 +15555,13 @@ "license": "MIT" }, "node_modules/object-inspect": { - "version": "1.12.2", + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.2.tgz", + "integrity": "sha512-IRZSRuzJiynemAXPYtPe5BoI/RESNYR7TYm50MC5Mqbd3Jmw5y790sErYw3V6SryFJD64b74qQQs9wn5Bg/k3g==", "dev": true, - "license": "MIT", + "engines": { + "node": ">= 0.4" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -15597,8 +15714,9 @@ }, "node_modules/on-finished": { "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", "dev": true, - "license": "MIT", "dependencies": { "ee-first": "1.1.1" }, @@ -16154,9 +16272,10 @@ } }, "node_modules/path-to-regexp": { - "version": "0.1.7", - "dev": true, - "license": "MIT" + "version": "0.1.10", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.10.tgz", + "integrity": "sha512-7lf7qcQidTku0Gu3YDPc8DJ1q7OOucfa/BSsIwjuh56VU7katFvuM8hULfkwB3Fns/rsVF7PwPKVw1sl5KQS9w==", + "dev": true }, "node_modules/path-type": { "version": "4.0.0", @@ -17376,11 +17495,12 @@ "license": "MIT" }, "node_modules/qs": { - "version": "6.11.0", + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", + "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", "dev": true, - "license": "BSD-3-Clause", "dependencies": { - "side-channel": "^1.0.4" + "side-channel": "^1.0.6" }, "engines": { "node": ">=0.6" @@ -17448,8 +17568,9 @@ }, "node_modules/raw-body": { "version": "2.5.2", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", + "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", "dev": true, - "license": "MIT", "dependencies": { "bytes": "3.1.2", "http-errors": "2.0.0", @@ -17462,8 +17583,9 @@ }, "node_modules/raw-body/node_modules/bytes": { "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", "dev": true, - "license": "MIT", "engines": { "node": ">= 0.8" } @@ -18213,9 +18335,10 @@ } }, "node_modules/send": { - "version": "0.18.0", + "version": "0.19.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.19.0.tgz", + "integrity": "sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==", "dev": true, - "license": "MIT", "dependencies": { "debug": "2.6.9", "depd": "2.0.0", @@ -18237,21 +18360,33 @@ }, "node_modules/send/node_modules/debug": { "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, - "license": "MIT", "dependencies": { "ms": "2.0.0" } }, "node_modules/send/node_modules/debug/node_modules/ms": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/send/node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", "dev": true, - "license": "MIT" + "engines": { + "node": ">= 0.8" + } }, "node_modules/send/node_modules/mime": { "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", "dev": true, - "license": "MIT", "bin": { "mime": "cli.js" }, @@ -18261,8 +18396,9 @@ }, "node_modules/send/node_modules/ms": { "version": "2.1.3", - "dev": true, - "license": "MIT" + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true }, "node_modules/sentence-case": { "version": "3.0.4", @@ -18354,23 +18490,42 @@ } }, "node_modules/serve-static": { - "version": "1.15.0", + "version": "1.16.2", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.2.tgz", + "integrity": "sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==", "dev": true, - "license": "MIT", "dependencies": { - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "parseurl": "~1.3.3", - "send": "0.18.0" + "send": "0.19.0" }, "engines": { "node": ">= 0.8.0" } }, + "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==", + "dev": true, + "dependencies": { + "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": ">= 0.4" + } + }, "node_modules/setprototypeof": { "version": "1.2.0", - "dev": true, - "license": "ISC" + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", + "dev": true }, "node_modules/shallow-clone": { "version": "0.1.2", @@ -18430,13 +18585,18 @@ "license": "MIT" }, "node_modules/side-channel": { - "version": "1.0.4", + "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==", "dev": true, - "license": "MIT", "dependencies": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4", + "object-inspect": "^1.13.1" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -18808,8 +18968,9 @@ }, "node_modules/statuses": { "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", "dev": true, - "license": "MIT", "engines": { "node": ">= 0.8" } @@ -19536,8 +19697,9 @@ }, "node_modules/toidentifier": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", "dev": true, - "license": "MIT", "engines": { "node": ">=0.6" } @@ -19704,8 +19866,9 @@ }, "node_modules/type-is": { "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", "dev": true, - "license": "MIT", "dependencies": { "media-typer": "0.3.0", "mime-types": "~2.1.24" @@ -19858,8 +20021,9 @@ }, "node_modules/unpipe": { "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", "dev": true, - "license": "MIT", "engines": { "node": ">= 0.8" } From dbfe7152894a4fa746522b65ab0994492a5f639a Mon Sep 17 00:00:00 2001 From: Kaspars Dambis Date: Wed, 18 Sep 2024 10:22:55 +0300 Subject: [PATCH 096/130] Be specific about contributors --- two-factor.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/two-factor.php b/two-factor.php index 380ad4c2..274b6c84 100644 --- a/two-factor.php +++ b/two-factor.php @@ -3,7 +3,7 @@ * Two Factor * * @package Two_Factor - * @author Plugin Contributors + * @author WordPress.org Contributors * @copyright 2020 Plugin Contributors * @license GPL-2.0-or-later * @@ -14,7 +14,7 @@ * Version: 0.9.1 * Requires at least: 6.3 * Requires PHP: 7.2 - * Author: Plugin Contributors + * Author: WordPress.org Contributors * Author URI: https://github.com/wordpress/two-factor/graphs/contributors * License: GPL-2.0-or-later * License URI: https://spdx.org/licenses/GPL-2.0-or-later.html From 49a2cc251b6a1029c364892138844b2efa07ae15 Mon Sep 17 00:00:00 2001 From: Kaspars Dambis Date: Wed, 18 Sep 2024 10:23:11 +0300 Subject: [PATCH 097/130] Mention 2FA in short description for discoverability --- readme.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/readme.txt b/readme.txt index f4baaffa..301500c8 100644 --- a/readme.txt +++ b/readme.txt @@ -6,7 +6,7 @@ Stable tag: 0.9.1 License: GPL-2.0-or-later License URI: https://spdx.org/licenses/GPL-2.0-or-later.html -Enable Two-Factor Authentication using time-based one-time passwords, Universal 2nd Factor (FIDO U2F, YubiKey), email, and backup verification codes. +Enable Two-Factor Authentication (2FA) using time-based one-time passwords (TOTP), Universal 2nd Factor (U2F), email, and backup verification codes. == Description == From 49e410ab84d2386ac5d6757ae12d633bcf728e68 Mon Sep 17 00:00:00 2001 From: Kaspars Dambis Date: Wed, 18 Sep 2024 10:53:16 +0300 Subject: [PATCH 098/130] Update screenshots to match the current UI --- assets/screenshot-1.png | Bin 175365 -> 155635 bytes assets/screenshot-2.png | Bin 163789 -> 150589 bytes assets/screenshot-3.png | Bin 6110 -> 42368 bytes 3 files changed, 0 insertions(+), 0 deletions(-) diff --git a/assets/screenshot-1.png b/assets/screenshot-1.png index 545b45ee70dea58f9fd70c7fee3e85ba67fdb683..001fb2aece2e7af643c9117630f0a7e21ce094e8 100644 GIT binary patch literal 155635 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⋙~a9tQoW>}WsfacQU*EBwSPh{AX#>LFfvN%%6B^X=&fm>C2hTtEhgSkE zf=GclDFw(KjXxpWBF#QlHK5Iu4?jl{9Yg|LbjfDKWj;_U@LW>mpFMvUw?bpcWXrk_ zbxHNXDxyU`pdjfyEM5IKakx`SsYHNqmv_LaH+`2DjvZl)bDc3k&Rf zXz6b?^MhW9X;0|dx;L6%J7=&Wp-&rwi(AV##T93t0W;Y;*?wQjpsV!dOKvtxrLiKc z2;m8+x(Mw_v-6uV?v1u2E#{UC0XE2ZZM+9-Q>pjnW~hY?qHl;JOJ|S)r zrmb-;Ml{<)HxJR+0(ZGv zOS`K^r38=NK%EC76A5JYtrj2}g?uK~wf3iRN*kgzdoU&rxRO4|9q6DQr^(EL2lYy( z(d0`drPa;1t5B{_~024AC;6l`)DR-Yn%6IeB{f^O{)wK%}W6tbI&?)v6C8`KB^$Zepul>L(MTXR#h#{3J&DIYXP1WijvHGp?Y&Z5lpiwD5K@JQ=45w;zn2P*;PzKm#z0 zHMCz1;7_gJR*5u-=k=^E&qMk?tmTC&__M+Xk@0Q5D0-Ki(nk!B8c@S~lLN598c($I z_gWxh+2_c)Dc(9Dmg3dHRxgYXdK+_+qF0vNpCL`#D}fV+on_w7nO<|dcSiFkX}3W7 z+WHW%N????eudsHDf?O7k8<0IM%57w77v046rnXnhjIAXC8?FCiz%^Ow0t z)p*roMBcR|=`7>c_;uE+Wf-~y8HJnf5%$Lo8|gFE{D3l|ii zO7*UR=+W|K=ei=<(6~UsKLe(Y3ho?K<6KJXXPq}UDjU94f+@Ep&sJkpB2zRr94~(p z4AAwA^ukiR65m z&ofbu%;4buVho~p(Xq&W*Ayp&4Q97Z&s9Gr8@~a>02_4rlT=w<__n3dSw^(l=xW*%2gMTw+NGUV=6bV%Tha}Nfn&b zDCVI)(@C{+M?W}2Mo*2`DwcB9QB93HdL+*Q&jsuChzz~E@G}h_^uGqLpP)_9YRn;9 zZGVU8+ge^S^4eQkI)m10zW2loOV9mSfS6g>eCZ!zokF2Y^{$rpDNfQX>iE)U(*%Gf zL4*mLUndN#3(4aYil%IPF~KP|3RKT0ljzh7xb$UE|L*Ak7s*l?mYY^`Ycq;1Mdp@% zjD_C~-nTcI{|J-e4{*DJORz|<4j+C?Jkl6a;XSkJ2viuD6ZvLw*X-eDV>9C=7qMxZ z)mm%l#dJ@+;5;8Ks`fmgUtD07@=Lz|Zm_@*#+EeH#=j+pvfbWaiqv{0v5S(P{@ z&QHJx)PT@6#Eg5Bn2>4ZedoUjH5wq2DNfLP_s}sH$!F<}3V_fV%xiR{D@{Nj2e82-2)6^FHu15z?lzrJLUM~f*U&cw5L-soUmki`1!2X>w+ z zsh68PL3=sN4g-b;2-mtKVw}gDUWh zUs=h=;cMsN4v}eq%B%)xIc>i0MJ_-hnC*?t@idF=p>0_S z(Ththt9||gYlfk>xA~Bh>A{e+G)8v*-kE_uvXdc4gQqy^V+CU9-DJ!fCowW`Mw7rNrVRVSSkoVMp}JtBHIYH=`( z>EaY^==#UAJcV!8$C}*pAgFmjxU{Hz&+*YO1?c9ckeYYw zF@h04E(gtJfNn6^NqP{3R4sLx?a}A+Q=b$}!*O*dd_o!o(WlP+dV%DNDCx-pRKd%W zlXr`fg;}>TokvISZH1u36#W%bVsM7Bz`ehpn-Vqv+{QFHKR+K86N;eLQxRc~ervP! ztvlk=K{$Le=YkM*{hT8Pb5HP6_*|3~|Ig19JRJ^-KA^ZsjWE;w>w5Z`?kbo>Xgd!P zaxZ-g7OTbR_IaN5&q>w%3eb&Ovt|Ullj^K&eY^VY9U~qM>UdTE&}Uy!0N`Tk5kP}* z!%nFgNAX`o+30^1BeG`ZZPCFPLU-+V2z}7FYcQ2|pA_{Ud@z^R&Ou}sj zm0Y{ik@@z$LB_#nh@wTEJWcMQ+0D+Yh)7{cyiz(EX=aBvr>_7-x#Bz~Wf-_;F7SIs znth$eT`hz^?t%$;Cv`j05;|8_&n)J_30Ef_XP4D0R2_0xOCz-P+2Lb%e~qqTU@9GQ ztZEQa1rrH5T+x4c*TdplG57+pPLPJ!~LBl z@}tVIewh8+L=#Vvw0?(?1cr7DmwhZ9(V<0~f*-URTToDSwT@`(Tf+RNYNoM!&(|7~ zH7%-Q*_oM{4aRRGAb;I|o_COyTRUm9m78+2&QO(Ad^cK9kEq@@{bYrbXJk~5olCUQ+I$})#QdLl*vgVI z)KWUKsqB!!oBheA@$kISc= zbx4@(9{qvNDp6gWzE)9n61PQ;Edd+TSG!gX9&p@7SXNV=QT(F2+9Ow!t<%9#m=^i3 z^Y!o=s^Mi^kBEb`b{%uRs$x~7F}ADkaO4`TF5lU)7QCXVnc3I51TYV*6F?@(U7FKS z`BTevZ3lA6phvfPeA^7Ukl_CfquHf+_XSHihzxJ~SIf$mAWh~W;@>qjHF;SIh85=; z%J3!(d2`|ry@A{3@`?oxBK|znib|UC)+5pUl$7~tc@CmRl%-Tm?3MrZG@3sadxvpO zDE0b&#y{ptjX7x}!Ta@@MQ@`^WwgxZxpQmA^U(0&-%TJL`Bzzb1LoE4a9xq2CWOYc zj*>Dto`M;q!EVe5;rY2En-PW;9J}XT0X!cAq$nsuWW&P3O6VdAHM4tEF9FrBKxIpTSAJyZJ zWt(WuMAO$C&&c}gbL@d;-3>9_jidGCxIIp~lXM05o^Zw-4 z_+~tRu#y~@XeW{cPF2_aivQ=&_FRDAB4^Kg_fNcCye#L#pCT{|cn#0JX|MiLHKP1teAP+*B;Wg8w-5g5bw{gBkzFT|Y9W#G!_-X&SKdcfgnCXUNhD%5$QYn=^B0gzk_+h~_d0<>)+!!jf zezoOtsaR`q=et)uLEZAAy)eGUQ=?9DA&R5BRV9PF-CgMjP}4L+ zHoD+dz;%a`WliWTak>3ZZ&4wkbVWNxvhH(7Iv1S`Z$W|gh`>+gfQs@k?u&n7n+E8v z+&v&!awBDjft&lc+4w@qpka9N6DzCnCmJPNl!pgahNwIcr$gb#FlbSPzg{Y0 zDv)OZbgyO1Dl@mTzxj?SpYETo?#N`2l?t!(W@K9sb4g6N6u|=wdeTZ}FaE1n0OW8+HtzpKHHv>(T_5Vhepau#8nK}rz8oM}EhUht zJ+F5|!JegUevu82u@febhK<>P!y^k;z`CvvwPI?ci;VwD$uxWhgW#{CHiq%m?ox_9I9u>9h6 zID0=un?QytO(so-D;>&p>G@~zlAhBX{S_jC0g+_{xX|YGB_Bc|?LhItltCnaAhH@F z_}7<~(cp^n6+@{@drYB-6c4s~N&rxr$@3-r`dQoR)yjC1R%~lagqi4rhA80SyG!j8mU^&TC6sdUzr>JEXoTF>5&GfyU zrjjuM5(i+Um)pdOCwHtPO2-))W86JA_YHUcL(_YVHY>TmRMm?a!OlJw-|S!$77|I) zFE0l-5#y6jyTf?h-@nZ=qjB&6IV1%93Mhn_c?$GhWkG+DrwLe&K^MdUZDu%$5JC>e z?BJowhdo0oZh6=Fg=_MTj+g$cTNudm$koa%Id2^|xT_A#uzp-PT3zfS#EFCjFGyVFGu0jkGY1ZjBr*p8)PpKAcZrECgCXg+LL%ro5een z{p6Jz$+obS11mMR0G#4VaL|Xnbg=^p=ss+ZCQyCf(-#n!elv`FJstTwEV@1sg|Ujt zU!$V*pgUxaaPDBCG;+S{JXV_kAj{4kaB?^s@>78b?0L2GQ^Dud)eeC>tp>Y1r^~J= zMHg;%7aeuq>XoK+hR@5AXRnxW%3~)`p%LSP-U# z7ZS7)VoC0JkMQ1dFPsj1z}UYJiXA@!6F4~U3}Kxd@%+*eH~=-0*Pk&)%W1~Co#MrIp%Kd zYH?FCxK+BRFj|I*cv|@r&7-rj@uxj#UA1Pz--FSyWD|jyTo5-T{2mcuOfimcPy8F= zQ4PdbwIcaSKJ_)mJaX<6BbKpDyY^mQQKiN`i+9r(hn9qO_o;T(DtlYi>5VL7_bu}`XuEWs)@=OTe!*|J+oXhdm2caRpIzIDr z3*zGF&ph6LbpI)2AIcf=hB-qo4lC;M3mS*>)0(xIn3y>h#nEYAebbgdEqu-A-^y*D zR01rAIHFZg{hws|n>$#6R)tCIml&rN_=83uW<*GC$J=!&gM6E#p#a&ow=>UN%v>_V z^(Q4|40>O_kQOVa)R=Ho@LL_XwC~3X9>EZ+r7kzuGhDF8Eh$oUWgc2XnQAI^B5BJ; z`LIc(f12F%hXk(tO*+8$%6ksaQt|{(Vg7K84bPYl{&qFmhnN^{b+|$dBbFO4GeoO1 zW~?T0q|$FLF4;=GS$AH=%VYf``mcBS`LKM4!9m3hl~p=@)=8X5b+8m3IKdjjU_@1f z(KN+qBIJ_XU*qb{5fQvAjKvo!WGUzUv0p?;UpOir|Hcl?11C~Rq|*$DL?2l|Cxx(8 ztJ3tiEwBl!_7#DY{HLu$h$-18c2HY<=fmqodzQy$7{a@6A^Z=(dca(TuP5$EY#r({ zdMv-;S@10gKl~LXO^0IV+cWGL0F6V>b9@^3M!wUTeiv|ml}3Tx7Zo1@y{RoGirDO1 z46O81kwo<3E$o%v=jQAbKvGu9kX6W6ev$}&Av;AA8g~JEaz^erH;I*esNpCEGEf*! z^-;9z_6w@?2n4sXGwX_|q0)5oXeFxpD`ilBY+ZUr*bM|AE4i1NeDXxnG}{`#vW!B- z^mDeY5Zv-0beI9I@Wd5Ff1KcPB!y@Zv7@)i7mK!MV_1?tE8l*J;%7nNO4dpVz_hc@O z(TQvECF>}q$@oc&xYJqCykK`5;|bW@URO--+rm7&b2huwXfT6_oML0)JNQ8sPbmR~RFu-c)H{`k9^ZQo76QA%IUi!!^|7k(a zaw1t?XsOKU12gNrai9QCXW6D9hgV;rQGh?!;zZXkvaMJ*vr5mCNA=HA^~POYaK3KW z!dn9xidez2hvCTf$UWba6M0$Ti&O1N8@-Prv7&NC)-d83NT&ENFXfd*9^h! zI#DTg2T&>lGPO+|+-|^V(H{$X>(0?QZ}ff0thM8Xn%~qoSiC--yrCS&tc=pwi^`PjT{EI6E zvRiL460oiJSTPy+0k$uyGl85s=QkVHO~o{;X1Zn~W=iXGc@kGtgd*xY0nvvE0#Dau zB&?n)&*{K(0b%GT)Pxlsv2H}d3NXaH{gyVyalo6C2uAEA@;P=tQap$-;p^coa(V8g zU*s|xB0(6DgkR9S7s$d}Gs#1I%$;kXw-&QOI;i!IpGi0~sY~Lfl~RdjlcD7q{?`v= zY5SF3OiMYCxjWA&5kOtAB;BhQ=-i=eBNwo(%vi3TI*PCt;F~qg3#figkJARx%+j4@h#vIr`jfn+awD?@( z;;~)u8;m1xbp7phs6$H`VM7*MpNZJ62iZ&xjRQa<2dM#c_-3eD2j1-dje)X}3nClA z9~yKuoQnF}6J?DB3__>Vxkt;Pda>U~0lfILjyQr0u|i>r15&b5#z-nO88u&p%#1|1 zFe!!1ji!B}Rr(-0?`ROBtNRG937BPREdz?ndf@${Wmt31Gp4XHgXOMx5*Im5kc2(9E zA^JpL1nozE&uBlLAP076j6hf_i)xAk^zpf)ub1fb+@iH(>NVb%P8~jbHAxa#kk`e0 zTLWZA>gr9Hf~XyD4@@lubA(;0vTA_;|<+Snlm^&j3&3pk{YW-Ck|d z*g2~?K36DWsMLnu3*=8CV#G*K#1?;KdpGObTh-w#B5$=@1zu;z?ee^hn%a{OO7a9JcmPgvRQ%O_qwB>k68!nx1n-)I3{ua8JRTJgaPdhJxO zUL5g4zPv!LkFGTJ%O;j?O=M?0=0Qpk`GnrqQQh{`N@*R4Fjt*9Blyo;04eP)oNxje z*>0b4z5Azj87&UJu2F3n%!O{!wpkS-aje*R2GyThnl;i$a6DlRQ7=?0wZDx@*yJ_U zHI?8X4x~aj0**{!)g|Od9S&HMQlWi@Id10la3(%it?x~ec zPM*p18??_EaU4UM#VqONVR&f4K!Z@wO%ZSrNj{#IO>_y5BOkn;P&Q*|?sbo&#vjQ+ z*dO(|M4m$2;)<*L@Z1Bj2F&O#)DSC*>-&&h)8j9A;NDPuqTcbYPM`HV$YwT29gOLr z3J|tC6E1QhypsP*=6shfMygJ%`k?3OQWZ$V;7>C71NlD_XU#}D(s)hRvL zBCbfOJ05j6u>21-91a^i=zX9xxaixV`Zs|v2*kbU#VL6jBR|o_6rJfcda=Bbe}D_N za#;BN;?3J)GK%vNt6LE;-Fv+|lhcTs>dK=5nHJ_nbuQ5nZJnE*fK1s8=Dl81sP+zP zrXHoks|-gximR6;GcSTJ6R@1w`MZtt z?@Vp636v?W8b_+l!yWC>Wt)(ep0F11;_w&Xwfk@+!u%{BIiezRVF3u7_{zu5VYF{I zYZJk$T)~+58N^?cVRz7XKu)|0nDRV|ktMA-k9hXm{d<2uhr10txJ?O0PGNQ<4E~wm z>usAQM%)pTXqGL(6yeE(zF}3BMlOB72Z-avali%im($^j{vOt6@;h;?6rtvwCXMO2u0zDp+%Kt5YxE6vJqp)aw zU%{r^tWv=8_1>Pfo{7;F97*eu{UrW3lrD5C#-L`=qn?CJ19uDW7@9}q2=(e2P0U!= zj#+1rRE1VE5BzlI8E(T`YlCZdCCEi5#!=a&S|zv=>KiF}hyVu;`Y* z^@XVZ*S~${m~{wMQ0d%Ewn-W;vJY+?9E(n|oLVt#m-f~pZz9=aMtp?(ot zFaI(+gkje5XFWOi{6Wb_2+fXHnh^S+MS>!*TohZ8hEwtk7^GSOqpQGbO23Yp=o|ZX zn)L`F4F1fA3sz{MDf`NEAZ3&zS@c#=%Nm*E{`*o!(I>n@wM-HsL*tM%`Ik{4B{|PY zHVROLB&ZL@Ppz@xWi>0f9ai%XM?+Y_J9&_%V+$)|-)Ilv+sbYc!DaGH=)c~3;Q|;w zps8l{^vS6Xfdmo*CtVFlj4l_7X6iYg@!AmK_|?2m51tibr5v|0oE)$g%U#mvOE3B^ zF|!rUA>Hg!Io@6Vv2hvjf_vo$Q%R%;b_b}==||Lm{Mkg9;hDXn40HxBV)?b2xui+B z^V;`)U)PSmy_-(JB6y>Lx5+xjSmwly&AF8rh+ORBZ7cZ%^g$Cf8e=!EyCx@#XY-YL zP_L0udhx`Euk{S8m=-}ZEt92$e?fHE5-}uT66K=?Tw)vwFiB247DohsG%_tgv;-0o z^lO|IRG~GUcYDbuS|X>$=F`}b6@WSDCOk2c4075?9 z!7xH8vWoiO+L1EeZ@FiRwHcpByE&_OT7}e1Sb%G06Gs-t%N~;HBZmdIMi~=p<#z_z z%Xm?z%uCcI|6(MuoyQ@#a2pkKsZ2)KEDCQ?<1L3X~OO#oTix1+(;tMK93Qh@ls zMk4s%l>F{pxhNZAJeU>)xa1I~dtCFVb59kgP zWB%9lTNqf+FHnONw0U*NjR)TS>rs<%+Wi1vVAN7DIdDQO^1{r21u(pVl3Wzt6G!8~ zD(s1eSZQ8TKe*g^@7YJx*O7sZ#Y9Q|7F$HK5@LieI>Qz&ACyKT!#g?ArAE3Yew~t0 zi8?J+RkC@Brmfa4JluFR`Sf|+yCp50tIW;W?1%o@J5)89q-@n#FfwE3`Z+Bb2S+(m z3tY^2`%HRDMm0oUR$7$M=DEo{B}Eg~Ay$E9av)o7Fm zh*(Pz`RT0{Mk7|huTz>rpqZewSU(&#MJEG+3<#3FtampanzD9ad;iQ?rV(Zy=6fG3 zfb{e_=?ih~=a8pp7*`qDMj&N7Z>pe5UOLxKBv#x)2OKWzCwj^G8B92HYc%SR_LU|l zx?kwDZ>*j>nDIpbQ}i&tAq&&tG_iYRI!T+;kdN2iS2pz6@D@6MNx@2BI(13OGAl2*1=KukclJinfBVBL?Ke6{lM(@sdQHhG2#^>Rj*rF=We{MeN3U^ z^KI~G(D7}}cE$A#B_F02GBN(&RCP(1ee|eJN{ijW3k!FhXHfb%Tm?rZm6;5Su#02? z`|?&u?U^qXqP9nbL`s$YM66|jPXW}2sMd_b%7JgTnkC){JP$X|0c~szCmr_hPT{jd z%Sy~5uf!1_J?7l4%2=JQA8x8M9_lgv;1TrA7i#*X=nYW%1;j;x)c&Mx^DG zkxo$~#eWU)*!2+;p&{de*`!|ucR9SX^@;c9OE9XN)$>Vyr^>8E_2Y+Y9W_Ify2cWr z@*Nc-?)69>$<&7mROG-DO{1_ulxK<)=b`3{{i_bTXd8)i(&Ot)7CK+U?XbZD6~DKA zer=(#@W|YK{jWiZ6p_;BObl}OytJRby; zO>_4WqS5t$19^FPA;Bo~o?3{57=SMO0e?wIg~J9g*KS>G^Ni2Rrw|qKFP5L)AV%%! z37I0lKY22kjGS#pVOA-FerUEp@M&7Vx3jW*uil6HKCf7Zre)Zto;{U?J-K(2i)#=4 zWeY5Q=Ui|47eu(vl2!k9jjWS&O&?td699eNez3xKSox7e5ss)$*%FKCjjrjdx&m4{ z0Y(`+G}pO+6eIo8qI@r{vE!#4#Q}`_q!GNl8?}lG+KVS-T0XfBk5M9k6>WO{u5Twb z;>>~Lqx4H!2PQ87bmXKwhKt^xI-5Op$EeRoXH()!Cg@rhU2-&hs7|w&oVJ1f;qS z4)}R;V?7Zk8+@{l7%!T^FKNlimcADdkbivTPB1%Y!u*nv3VwZ#=|~R7!M87mNzIqm z_B{W=A8_oYXvA7V$HKzFLcn74o4J>i33qcyU?{@WEi8S;d;D3|aH@Wy1*MPKBLIvF z9z_rag_()ol>@Al*aY0Sr~TLaN~~8`Jkej#?5pcyT@=V>(yqJP7^$I+WlZ^MA7=WF zsN*%s0D)d!l_GU_WnQ|#?C{a(z`*rIX%)8UXgt^BxcSm){ePpeLFLnkNg*b^$P1r` z(cc=PzX&pA#1WB+5DScugk6zl0~gEBG}cMh+uH zxrx7&bze77;vlA3bY0Sod^TW=&xf*PTpTd6kAk8i+PS84TbA!g^XS)J(>aB{o(^Mt zDM;dP zBLQnw(CpJxT<%^g8Tc0Nr^KyUwMFl~{l}6n1_C*H>eUpNoMAdR*95Kvncc}dZPLLz z=fno@7bW~-C6)IU$%zvqOViq>RYaoLh$MPl`@y-u9|CY%YJ*L6w>hI}PN4PmhaE`z zas}%KFJY30?8Uz3f7O3mRjRyUwgxaT|JK3<%gm{`OLO3=7RT|_fAIK`cWu&&k+b6w;vcj%&$bs$%4H*t$c6m%aT#6q>S6*i zC5NWg^Gh=LYwR7Qjg5o8YT59PFS<)YPT840Vx}xAydUg znlE1=C5<@YuI`IyCHgW3vD0;?=aL>3d=P5gAvNi&_-Fn7Zc~J4piwsmC-*K^dO_Am&$ORUu<1d$}o;^ zLAl?KE%`0cA|S9-88J8Pw1|A8EI?hSaZ=@s_GPr0z0I*NmH(j=rAgMN@mkTWKC>|a zA*6L03l3OUc4zL}_xiU#T7rE?$w?~cW#!C--)e0;jccLpWklCUQbuDDWL?iy{>Jp$ zS5$X)zYTj9oF~&FC^y@~h&`bc^Mmqv%zKBcBTP`-Ax$5{U=<`1@t@dyTFu8hiveOp zsW~=zrzuHE8{KHxBJUhl4=hA(%66^Zc%27MGd;=@&a+q|we?&-d;F!a&P!}CG%n@- z_;bnaQGi%_=H`%+JXa>Qnu2|>0bxsO@b~p}l8hcY9hPTiNz%c)G{JuWz!Lh*l&7L? zO9wv6lrc33e4V^KVKIj8o*y6G{TlM&eO9*Jj25agOeb=2E6dt&NJ%JPZ0J;pqqz9B z@W8p|H}c*3LUnKd_xn4kKRHR+dY_zs!i=`r#r4oatSrF@{IKm8zY$YL3cR8Gf>dSe z8`KTUjw)11J{_eYAQe2XM(}Z^YrvaM>Ciarw^eE*X)g_gc zXzz9Yr0FLXr4h~AR)lV+-R*SPjfHVwiRzvptUz(o_in{E3FG5G#~{`X)5#9HUlCw>vEHV%hUv2CMfJjXOKp)uSAU0Y8aL< zgP;!K>kJj(nO1}yke0@~O|Ci*3dNRCNf)IKUd^VDiKrCMqa_DGzj4=v-!5K<_u5t< zYC{tJwE^1_US(nSmuXdI2$SA}^I7%G9Eoc!r22U=oXJMzA#i0XbT5F`wfeCc=kpC3 zvd1Dz@jdkyHU$6xbgcGkE1&A5(PJ8yZ!=(uf!PqMa=;S%yoP+J zF1B6XB}etjUX5~$pIc@|+s6!euv2;Zsuh+JPeGo^sX8Z!qJBzSM4@9P3F|oWch<|b`}FKDwwVo%!2MGaM^2{$aEOQSyX8Sn9i?Dz zdP4RZmyT?U_a@H}HU6vx?!TWpI=fH13r($;$Z`Z`@v3bkJ+z+$rG#F(q+$|?H>Bv1 zvRt>;gL)9SK%5SbRBln z{Yo+CXM0{E@+sTYK6BR$bEULCqiGJ#pS7Sfuk)4O>B3TfXO*{h``LTQHFm^jzp?ST zp>Og|4{taBhZVQufVa}>%T*G+u3p8ZUow5C0T$$&Q=&6>-h``F^+|G*ban8So<;4} z@9S5G_|<>eWFJpw{g?k`FFoI`TBdTNM`tP98YDfX&1xCjZNgP9@aMe#WM_f?LaQz( z>om5n?izCgKkEc_Ladmf9c zE(1>f*C&QyG#Ns*eRjjd%C>2$lyr#A8Dd1S!C{ybf|s+@9>vQKOcqlB9aX2m7cD7+ z8Jwi<*#8yTu?NCgE#tjb-;Isj-6)$|k^B!N-xUv^hJD9iDk5I}h3rht*7>~y8~oM& z0Y>Y6ysGS27(no7mJum#(}(VHrYUtz419zHJ(vwe>3yru<-a%LBnf~2N=kVrAs6e7 z8A%?GsBZ4J(D8WzzD-Hej8t>O59PdR<$OA&vB=QEBQkNyJB+SBi`X<%2CP%RTpe!3 zK5;dU4&^w{dp=Zn3R5`3@9CPuPkP>+-nyuq5$s@bA(@ZL+Fi@zoyi7ky-BYTA&5-g z4Y5tXaw{5PS9hdq(?R zJkG~?rKhnZgc4Rn{IXf1VSJ%ol_YW%u^2`ZKJOT{u_&7u`j1DNq>k#KR_tgS zhRQqZMHbTd%DPMoTNxPI(lXf;hOcM3r%YaPV^Gw@zoRzE-(={>PTjWg7N&^h124k7 z$)N1GK*&TLUZYT)>Pgi8piUN3vge>DDftMKaXFfy zu!+01x7e|zvs_ZjM?V2dVwpJ)9Yn|6ngr;4Di?d_xOsu%)E1I7LgXpJBC5w|#(!~n zeY!l-K6B;9M$AGB+Q_1$mWb_MIifFTMvNY3|7#Ai>@mZ|;2`6H541Jj&K8mYwTcIf zMtmFZ<1aEeIw-ssS3)7HxA^WFM(!$tv z+&bEumTEyXH^5N*23Ay5GbxdcKesddBJEG+H>zDsx3LsA^00?Y;XfNWF>Tl$eT(|tt=_#opRRy5HTrcJbJS-qJOxTE9AKO6h&=4$~3*S|wn zY#aOg(USY>HFe^rzwWAs(*GZ#zB;arX8Su>fg;7B#jO-~FYaC_?(P<}#hu`##kEC? zI|R4j?iMT*x8e?Op6A}*efN*~>}IpOGe>83&-tGAO92U>J10MI#DHP>{mJD#Sg~aF z!^jHP=VG?CscrpK1cs!@EQ0In`Rg)+(s=BCO0{;O1yiPlR13yUqt`}OpB;zk3Csi| z!$@=4*9c}Q3{%V52CBI=-6)*Rtk>_@`}qTW1YWlJS5704hO!OJ83tE{`E&lXAH_v` zSTkLnUJj35WbUzZ0rcA7I%0SBAgh?^1uYvjye}ntga<4#-|d3F;!j zZlgf@G@Svi1Jt8aQ@7On{G>LKd>thDdrso)Gbwac6p`<^r2S{Olx@8^hat&N9D!N{ zvsVX@!(0RcPQV{RMoj)Hs=>Ab1e{l3LPXCrl}QX_PW8k$eCrC;xFLq})NLoqWOg_b zNRn&>wn2pu6qG*&iO5aM5iAJEBbDz@%+cOcrP`zS>K6dey-kt0rm30<>_UVH4taxS zzsYcZs)Re$CI{!1zSjGiU2n;6;rfIPbhZbjli^`>04FPNM9wh0jyGuBuX_tsgkz{3 zV7dSjge!STVGJa<8KZBieCn9+eCPm{F6o}Ag`vyg+3XLo$)K(Ir5^^pyb62o82W|) z1pM09#*T(E+rhQ~`k#p*W=JH2bKD3&=?f~);-hHM$-X)4yNVp`r`k9K&Jtm!of~|^ zvq#PdPkuVL67>03SH?31)DXD?YrVZi>>QugyCzmJqs7^L6EQcuu;0bL=g&jQLv*j@ z)of~z*_Gfa;uGNJB@>9A7?}f!+@aFE_@)5k(vlj_jBbrT2Bqu$@xi*mw7qHfJ#Js` z$~nbNy83J2F!kq$nK(D0%@R4t$xVfhQW3}OtSeJEd`qhnk4cj~ychQ#=1)!JJW2z# z8gc6-jjeDh71Cxeweqigcg?5W*TVBT&VET!bSy9ni~SH_<~;7a^ue&iORTG~jPqfr z2DB+lTXwlUOi1{gk<|;3`pV|=M(-B+SQNuyt(Ugd?is=Cl6Hefr_n(9fK1jaVc$d65uk*Z!t6XcjTZDLBhz~mfCeh>VT(XlfIWeJ!*8< zno;qQ_sVLsdYe6^)rp};bZ5yrZXOer%ACA^X07 z%gNu`(&ZR^es|n}1NC3Hv064bkZMgQf{Alu7c&`=!M>2~NLKYoIi&C?nwEEWT&7%+0LPCY7dQqVR!sIb*OpuM4xQ$!~d>%uaG#Z9It;TgUIj9 z%sM%BT3k`Odz!Vhn^+a=lS{Q~hjUbLEF1Vpr&0b)wG5i&-D#{_=aec#Ll9JGFnDmH z^*|E%QG{q2okP@xmJLBWXw9&CV}}_SqPuFj7yN8fvCKMDMk4Zx;xc{R;eqI)cE}9v zU9?e;H@Anq&d6LDjg%onz}OpPYS3Q`zXKIoSRU;)+nSXCA+%!{ZvmA@-rzn zqZCa@0LnkpbEUZ}84?%*p1K~fEY@;Z#~w$DbUY-3@ zWlxs;mN>AIl^Aj9(sr5>1I`Uju~J{TS%M9{Gh}_@+7|5F=-7bGSv-(rVDsZ)hgw_B z&T3XotSMHWeu~^a{|{jKe}a*J!M(IHVc)ClC#_4AvYhx{I!)|QnpwlDI3boGrugxN zjz`wllXGAFH(0;3wJ2%w#8Z#6osv`Rt!eV)ZQplUzs$$oh5TrntMhgribKaiz_`7l zy-3a|j z8E2XjMPY0o=&zV^@_8ckBQ^Tu)fJE2XbTfj6(R&jEaHz;okP&KO`={#F*&R;P4`tY zkzGWqYP7{Z>2O83e068DvQ#^{%PdKhQlH2?)*g@=jKw-DQ6tj@Wi08OHO#)8Ww}A? z^OP@K<36}(g2&$F#Ep3OW&k1GPW}0oHZd0O6w-%AmT+X)=)oE0x*9pR^Tp|QVPp_$ zy_O-Im+5onVKSgD6f5mby5rX#<1E3LU&i#BG$OdxD(ifo-pEJaGNk&Ccddm)ltuTE)mMRCVb3-A>GuWIQaBq&KUC z?6;x+;vfde9<=MY)6+ANi?$eTE4}<}7_21sR|>VHO*!5Vk3Y!05kqaQ3uj*!&57p- z$H*RR-#mtMmbKhw%D$@l7EkeEOaj^wpnLjkxDyTDU zl&3g47Qec~feI!cF)Xz(O0XMdS;!a1ZV%icAeB*X7WQDMS9y+RQ~uK-k=B^I*AHXl=eZ;24iHCxLTm3RwF#`O$AIaqGKH$Qm zCaSDkSJV3BhQpB02CKfk^R<@jLi?=%+l9=0ON1kjyP|XV942^Pr(4j7%eR#Hh=JVc zv}#ag?Wg5u`zEx##!upA5qfff4B=0UjrIw=`33Q}H@&hAcEmBqOTOKPAWbbEVM4Mx zRjs5cujWo!=x;m`7%omzopsLc%&WQ~B&spy;d&}DYSpDro`d_IZ&PTFYoCPh*6d>0 z*sk9i`!0OrvA);58<&MTAczqnz=yF97<5>F(3$l`-ZuO07e=j(|0f)@qmT4-EQNlX zoaLIaS6&8K`lwNhPqWxQwroXx#vlGCi?c9mUM9<~5&;Czp-TsY+?vuYis#fBJQ=CF zhSa~~E1}S8s@I?$c(R-{G$<(S3M?@Ol<)=&>kM2nKdTEUt|Bm@cXMH0h*?r0X z3tW=u+DxRk!SVet&AlzhF;WR8*KdoaOPm7YVmJ2;_}z#tND9OS;1a1OEEbVfYp^a2jj>u~>Gvrg8>2P^lKSO_N>;-TJoli%tOZE( zA8neJlsz3G3Vg6GT9~4}szNrEFhD?#I&WG6$VUEaSuRkTOmeG_&aC@Cw<>xMRlMiyGqH-0A61GU#aq&eX` zaU}bwUXMjlaf}+c#nDw)B*t%+N=T{wimGY3NcZ$glH5&KWRAz))vGW}8sbkv>)z8N z?u1Bn20o68d2C(IFg8!>2Cv=-f*UZ%ApW6f`_n2WHi+V=z-bifIfn<2omWG9h+Tu&wp?Bf2{ss)1-t;y*3?NV zJtGm01_fW!{dIUcFOk}SzB`%QR(~8RF^~-gHPv(>(WFaJ#^$h;`tU>#(_i>5m7W#~ z-q)W8Hyov{KdfQYA-GFOH=;(oU;zE#5#hH$8sx?W#N+DCG#cb2}{{3{h(A-q%VhZfar_m=Uo715zzX*x%rqNyDJ(;@sc(!$Yw~ai!LRL{@^Z z>RxY#>-VCsYl2U3s-x|#&PMxZXRR!824^TI3xg$7#NRDj zLNN!DA_o39&8!y#vpe^1^XsU!k7o-XZ$BiMosz%(hdy=zLB0_46*f7lF^U4^3g!a}i$IUlLk!B(# z>g}~yBNM^Xvf6c+Ts-RDjXn6)4p*lELC}zdW+Lr-2VsEwh4uS!bitOvV@`tR<7@hC zZcuX-(r85;y%!Vph3^U%&zMA3(a~!kVju%HEF=MBfP%Kvi?ULsDvb*C1BzK(uYEio z%`s{r2j^RD!M2tVn|)PCsEwXv)nle>6vmd2l-T88KZg9|Hv0l z5!$_gdTJVh^U~HL^LuY3E!(y8roo=}#NZ7u(4F47d;P?Cwl$L7X=|g{eTXa7#>1G^ z2XQPd9eG+MQ}2XE^(Jk*l>rj0-qr2g*T}=m}#5qrxz7EdDlg zY|MbpUQ>~?okYm#ncs`LjkWO(xNqyn|Cn_k1@hlACB((KW56BNMt==z0UI=!Zd z+k0wO18LKeTH^T?aKs2gF5OWz=L<48uC`$Jb;;>}4>9`QxqvA06G;`hcEU#*Djc`; z9s8LKNYV`Vjbmb@|LTri?T@(a*GfuC60l|hCrDgCI7zShF**?KaFrP-hQlys`=^X* z^{kBw?Z)rEvkJ0F0XrzY*!(b^IG$bZn12^U1jUm!8<=VKkv4of%Mrk7x_6d-J2ai~ z-M+L~%p~e?bx^x;#iD?H^pL~my()(+{V!ANLyi;ZHhq4}C;Fo}AJNGSBF&ssWMLui zfwGUw4wggTO7jO|?b-Q@`ok}ROJ>5{(62gWv)U0bCTo%>m@cNjIQ>2;e;lW{i^64M zFYzvn3NEij&ZKsb+PD?AvDbRUhnxjU8U`a8&zHau_VlHg@Lq`@Z;3l?pJlYH8&D;VSfhFYtPR}1mIb8I zt{k58ATe;na(<8jo+sS}VW5rHk$;xHSvjdh+hI<8J}0heP+h^KQI=l^$aQWn)pOTz zq=>R4FjxThA11-EoQZ)id#28!j^S#^3#?H|)Fh>mE4>kRQQGB_wS@rdO^e9&4Y0*$*^KfF zX!br0K64S1fqugi*~P`Fq@~5MS2tro3A(EawJa#0Xi7I~ZK@ZMT;%@H>5yP}Ry)pW zNc0904jXUOjg;&ZEU>stV;`<&H~14~&yX^fGPzFWEIo3B4*1KDX(#WOVJky8^tS`- z*SBeG7Fp)vD0Y6Ojwf;TQ?RjcxYol}@9~}+X6$hM^3+RA8k-s<^`(Wp0u2pK?(K2m z{Uul0{G;ggcYL>og2*M=`1d286z-4pFh;ixbRb3so)puLxZW=x%HoJ76o|s9eCePF zwJP+edJ8WF7us6hH7#?do8)O0|9bRi9V|Wmut!^7L9#(IwF#2HSHYJ;|J2Z3TI`R7 zK%srFl*Mw9Ig;uLU}yF685{1X!BBfE@ynPPUWMKTXZL|=Y5P&pbNtH&mFh=DC>ynE zKWyn-h8&?5rJq9B|O&>Q~9AjZSegfk}k_IjHCEsqkp?F`%bj z%9QpbhzxE0!}hNse-#JiVF@VJke~fCF7TuCD-~;JT>mWjDNfaUbf6V0M;*N|$lyn? zbD6z!O})mPJvUTO{30i`BFgqO2FqU&mKWs^(vljb%`)BZIR zP#M#nyfz(%^Ie3p#-Gn&U=i6N%8}p1n2n(j6GntHS!$%@oq^1-BEv39kiit9^&i@l z_s6dzk9NQGetJD{)h8h1$3P-VgFSEZ?r8dPXqatI%23#Xkniw<``uf6^GPYFNK-Ng z-Wkf1pQ=OqccT34ZndCwCggfT|B~d4sjq@L8q?ydm$pFlRSX-mT*1w1wHV{U``v2ECoEV}svHC5bnnjKM^q<>8J!N6y*~=S zPQDBNC)CvZIecst1LZGuchsVeaao`X7KI~6-UON?&S3cBJ&ly|K7#ZAGk54MLyqEv z!ry7jtsZsIr)?~D^y**HbV{5*;&$NgF}ttbh=J^5TqZhI5$M9-Vrn8@xEWNelh#Cl z>K3x!`s#bW^w^nkdbLs`{awpf-#n1-Cvk}WAdT2<`2B)DfaoAcrMpcl`fun_@qe|fOxHL)>!XQ!Op*=-IsCt~5ElWBqe z74r`Arwd46f0SK>vb$>|Iht1LV^JhlD#VHJFMLt%9OQ}9wBZ!!j#IqE;t(dHc+DHR znX%K`@J;Sgwl-5K*ji1#as!6_uY_{2Hs~6z`~39WM(!|^?k<qI15HL1gv}rSgP9`?b2J)5v%dw{0YU!$Y_78V2B_F204){wKUskR| z^m82Eil7W~wq)-(y~CWYKnn6OOAqK^=!PaS9`?|WwIyDzJ(ET5H7xP19_XSJ3rC!d zcC^2$^D7sfN0}Vo5LKCJcoqS0l)u1~SI=WD=*DgK4T*tBJP!P*Bk5jo#ssJ8Z$P=P zR#@*z!}ek{GVSN;JwXA;d+h68{l~BG5PS|^(-g#Dm^lQN&Y>Tlt%|kswk+~8evI)F z`s}eDf6lT?HC~tLCwuC>=rH80RX7lENE2^x<*o0MtG6aK&UR+-(~8(}XXi9HAlsFq zsW^$j|{H~x~TZ>;rhFzdywx>VNwn9xlk7a-@kvdt=Jp5XVen1 zew!Fn7~XilGMI3JM8)KLR6Ym;xi=YG$?OrSFav+-1$kcm>}-EYsl1EM!p>M@JYT9T zxtsp2qT-o10x+c-N6xCFA19R;Da@S^0$ofa3%D$Pa5A`|yMI}%K*UyvXMaY2jub

vZ1up7O4(FjOHpNy9fo7!2>m_LufDS=q2qS6`GKCM#)X zXi7S^@QAyWx`%JwC9gsDpLHhKMh^>tzNJFIWZSU{O5TAzH*!lrJC9LBO19ec5@?M0 zYe))m<$36JraApyqw?j{dR5DzRRC6!Z|RIj>Be+y6sqf-p#8~VL+RiUm$$}z{3uo- z#?LKSQy_%MMW4V(YTLzRJR{QDe{F`@L5a^~{96Bx{<}@mZr{(dE-(uuoFCTl{X{4Mw4HfXOD8*Rp zCvD_;uYBa91z=n#*X&daXH?N2@x@;A)oijV5}*;EUG0nTir>h64Q&YPYce_4=8ysyXQwchjE=ng{C|PUqzT?~O&fgpVY_$3hMRuFRp;}cE zVg%dbVq+3zUkygPRm2ZV@F@;yFzJd@YGizdCS~C~h0vdzu>oOI#YU+z1q zGdMWA!!rmJq?=d<=B|-DPT2?dr9-gez(VeZTS|5$U#G z)BB^fUAY84-CosA8b87L83aPJ=~p*S^-@slK5}o*h?t)gDBVtA|8?Ys+Ollv%->Kq|4m`L z!^VS-(l@D_@rPG9jTyqBB~9MN61-A5rzv0rO8wt;ULPX_H5=}b(b^uLU(^Dg?pEKJ zkm${y&Z}$|ja;pXkX0JMe1bfMTf_Za8|S3@PYP(@8@yAg;Fni4G~W)rUr7I+ThIk< zKAOv;Q|Wg8Jc-WwdPW*|*bGmx1foX4 z5h7v*@=mvnBBwOko52J3Ov&CyPrZ!m6syw%^Vo#%~Z3J{Q<`7)k zcn}Cg0*n>-r|+_4|2>3&X#fA=9&v)eSiM&rZ%qOx4E}ErE`ujh!o{J+kOHBDc%|L-R6mvhDZ%)c!3ZtlvNMn6U2%E7r7D=@Y`BjUFQWRNU2Z@Hz2 z&I8$m{`U<2apW8F0O&7#r|Ld$b*=r2hp-}$P0)YOlKS_m#ez3ysv-CaT1e*BpAaxr zqH}+kXE6QS=>Wu7ffCZaeTT37LNkwfVx|gb7wUfEp-gXq@WorY0RVU9Lf;(3y{lraa-Lc5RACrYSi{Dk(zW3zQHxe`_a~$SZ zgynDd_KXW_B*xD*`W^m=P#y6Vq2w#~OZ%4=FPO4fYhMDWnz*nW1;y9njv`snFwy~R zS*?J@3<5=3d)m?Tp#3r7pb|wp#Ofd_(=e(}K}b}NdtHnA zUUQk}+ck9xl8K$Q|1w?w5d~i0uV!?(_X6&gk_YxegpuXmPl|~0ki>aYCbw{4$Eta@ z3lQeU$KL`U1M?DZ51h0-zeSt$&6NyJGKdJ|M!%6=KMtiYtklni6w^+n$GC<)pO)Aj z9;cVc*9Rj15V$xo^|_nQ{9HU0)wnP~dv>O-`{1MoU4OZ3YNvwB-M#PK@a+USFgo78 zMz^n^9LvKn>n>M&On#%mU^`(oVPvV)WbUy&Cj6J)!qdoO^7Wip>q)4aby4^DR?dT2 z+g=B+$=+#n3N-xg?zrgH=cN{r96du_-BGNpXubJ--xKCgs|6z#qh@T(=1#R@hkPKF zNAceL+U$9(Rp|pWjA-4*hW#HwCt5Ac^;gT9cMWLyMjlRUU$6!e4|V-kT3$dqx6d5z zfuZ~YnXV`_^t;j!YWn&$z=yY`Q9JXQoR29LgTJ(DeTb#qWLdfJ*|Ygp5D&dg?}KB< zSI_)UBrV6f3D(R*cUQ9qg~}(g?DyJ{)B6r(b8MHZL#)N|h0c~txl}csG|t_t|L9@f zW#BUuw|Hx|5E@s+?)*KYqSU&aT~DFu3i*6M^aD$Rc)D(-A-2c@3EA&*0$B!Ny*{JL zFVw^EhPZfHkIoD>ELG&m00!@^I0a4S@NTdC8Vjb>^zJ|T$32P#jlXR^d?pKjL+h}l zhBL{bRZj=O80~@hc-c zH;Px4g;+F1{->Z`y647Ee!UYphI#i9_MTX3;}7*cmz!hI_Qb{T;PWyDGc*rJc2!!F z81NCoAV++`t`6=se}z?<>w8WkCPV2-$}crfNlXN?&>8rs;cvDV9}2s7F`qJr>JpWN zMU8-edt}cxWt0nMs%Xs~7#c^oTg>vdmW6@J<|5woMZe8PS=Jmv@^3R^yfZk@yT$Ul z1$#m5XFI~3g3J}i&=%|8*p=&skI0Rk9Sq|`TUV0zCpGX)1i;xP$v-v%0y_M1`sR?K zvrS>jQzUi?+U}Q6qbZETxPH_JS)LxL9*u~)x;s#p8t7a9xEKW%%akKT<$mMr(Vaq! z?St$6XIS4$PUweYzs+Ic?|pot`$kGX#F=$XID}AEAbYCb$eMgM7T@0Y|Fd=$4d%X* zkZh7*R*HNSpH~=7EpS_652${(5JMUMB>4eddSr<6ay}t=84G`K_+W5Zs^yaie$t0+`r3&{%gcDUi@zUQcvjIY4elaTjaA* z~>AtZ~23hhq#J zpyb<`ohV=SCnuj%;k8u7v{HQ@)pTUC~SG)OqKV@U&oZYw$mFx7qOV1^y+LQu3Q0RyOHUwP}+uw(v9 z6T9)NSRQ_U%7@xb$uVB1z%a%>{Jp)~51+r1PmW=@MsPJrcFisiV^RgbD6ng9`bL9V zgM!butw)!{9j`&M5o7(UqEwWlEg}5SB@m+{s{3x;iOApC|SN7%%*mI;Oci3MZ ziwM*RAn6SrUVcaGz_S3l&px)9%S$)R$!aY^z9y}o+mkV7I0W4X0} ztx92|1aML7iB=kHZx40*t2f!M{^_{yO}0g5{V8=oO~rdW7a1`$PR4$ETg|v_+9v>h2~#P zzQl?J>-T2g|BASfpF`LYnwUTckejz5JK`W@BoG5=4c{xtpv|F*b1MVZG|0u3e@J2h zf|t3pn!M4%p~!+cZ)fD|-0Oop*_x0>&4Pw)&^xrs8u@j7;-9Z%fgWYa+E%erN=ps(8-|L- zA3g+hnX>C*cr> zx*|aDf?aQIU$uYM`xlX+i5%Fm{*<}d=_JlX26UFI|8-`jv(RqQ(!yskHl?5mHB{qh z!#DA1uI89o6~)26UPFb$K}ZI`LBk$W*VWs#L}8+Gs5TU06zi+m59Z$9k7qA!2T_d@ zKfg7m@QaFG`*0Av^*qb`2ifuy_Ev z%KDh|6GchnX&|@cV=0xaUR}z*-qZ-M)q#vs!T$Z1mMsYE(5tpEw0FuV+5#$LMrx~E0m`_I}0qW9h@C_pqV95 z#H_A?lamwAM@4fzHjLY>?xOAioLlK{3jX0vcJ)8J0Uh6k62{l`p$% z5bgOyNpS$YQ~@;YfrBi&XW{I4b*iyn?v@^pHRFQ!Q3y6NG4FrvhsVYg{@>deOys-; zs$NUU(2lz_XbK%t zZ#*k;he=cH74wwQfR~I^e~AlYn_N>lO9T?g$wX+vJ}wIjuwfT5R)dKbGeeNqWZb7j z$;gt=%T1C&UyR3?2lKZWIzN+5=&VOgSv<&zu?zl}H|PBDQYD+hholOOs;p?v1s1DCaY2xR0X3%b-{*;F` zDJW=UK0HE~U+u_6mzGwa6r=Bi&-ekz8Y?R?_+K6ytypCUy_@0KZSZdbhWGrqz}!O< z>+dIe?7EInctTyL4sxyMS7WV-_WL(DcWnRII)QKrE= zW}iPv9zn6VIJMlGlr@pCZ5H-WRz*z~x0CziQE zC|EXuuro5WJ7hj*cVE&2VXx!FPVH+(`-=h5rpUP9jPID<;C`NVPO+|Y7s?J&P9wPZ z%eTP#U52_U(22s=Np(PUn(k?|}WQ+3-Hs)X|QQ`6Ywg zIqO{rh1Ttan?km?ds~a}>Y(RE*^NFwfB|&@Hsw5B4RcA8Q0U4lzUFzM=}%?Hk_j<_ z6C2U|b1BQLpv0p0PJ5-M{_o<3Klr^`KF_KvvX#s%^A6e(nP}DU4}UAf857S;WYM2o zsz8h+6RLN0MO1eai7abRU^83}E8M@eoCxS{)$^V+HB{MHWwmy-(z#;*@}gaKHVJ;_ z7U`62EyELR{PqJqjKIdSu zlhVB+Ez(jX5Oc4C z+_@zrO3dCGve8lqn&ICt1@dkjf0U>=&ma=A(UAIDRvjidF}~o0-qup$0lvwc87)b+bh=r?%XCLTL@h3et~ESfQU+)E_~zhU`v+S zTS9G^b5%z8_4v5@#4uJCJc_m04Kfs(4AvlPS5NWY+K&u_K{+t{SwAe+=5M0JK7Npc zvVw1?dTiCIJE9#bQAe6S$2rLd|C|q27lSFEvcE<1^P?QRl1KZ;aTAjO!)Tn%TYPA~ zYD28JkrKl%0$(IG-?qKSm3Ng|_X~D|@TSm?i;@GMU-4nBWR8y_^DIobzYJEKR6IB5 zlL5(H=??;8!6lTmY&%Q#eFz&um9#Y^ix=l*zJk3%(cla{0o$+6L^<934Y`Xh1AdYv z9LVvY1r=XoGta87uV3loYnJuUeoAmtu*(>3)?ow>e69N=BJnTU4Ls>v9U@`M)$%7R z2jmLn_Y@Xjk1A;!YqnPAcHY&8vklv@ZPG*=c0}^$JON&Uof*ihxavph;*!ubu*}ct zEem0lppbzgIqkKuAP*DSzb?XFcRv1r9MFQ-K;@ZovM?ER%J=z(OawgV>CX04Ek4;Sg~ucQvG|*Yy;-Unr0ceHZJs1%(s` z>Mpk#`?mA_JchxcQ5h>U5m-)8hjE+o)1AW)DPjaxS`+(KwpWF+6!3~^PrjOaV!`&( z!G*}&<;8$`A0Z(PPN%(Kxk4qncp5g&1UlH)OcVq<+GS{`FB6P{sfBJ`aSRI#En7$;?;jcyBo^AhSF2U$-2IL$0ZKuWN?fCJ%>F4zl&`JQsr^LvUsg;tF zgS^65@2d;ePmS&>Sx@E2{=$U#M{tSN4XgYPO*^znnN9>)hj*fgi)l{uO1OeMn1=;G z0-^N!#%!+|)Ik(&*$2Gr9WD9IT8{1Y|6yi4O(ny0y641ifqiQeWAaiC5cXS*u;Dc`97(XgXX2YaR0JD0yRqCy(l8-Q7 z-AY3gV#_lOO`-zs0$~)k)?cO$^s^UTx{-bW^L_54y>FEbk+zmA?~|nEx;Iz|V9?

!-#t0B4NrD%%I)uV6l)V1nKe$kbeYi60aY*aJN+2D*C_ju~l7U(jV$lX( z&_@vNZiBd4JbNj>Y@P1L1RQRgAh{2ZlFO345jQ=`upxDHL5y3zrXBC*k6to1Ht72+ z#Fdygb}lo)QUy_PWOiDdDC7RtjuJ}zSmn1KssXX{{|K{eu&I;ebkWaBritG#(pPf` z^_}avq8-!P9i$2cmzgU?K}H+R?u2qia2sQ&~CJP(SXX-=BcK{G-KBI$DC z`Q+9Wvr@bKm1>|Y$W+xEcH8X|wcVeE*2%U?1)j)*5<#5?>rvf#yA6`&+WW9ee6&&c zw-DdNRKQO3QI&`*y<`~$DzZ>n`oQ_2?P%GPnrkrl*sek|0V%5DAY^)NV^z!`@FWsB z$LQiRAe5F$IEg8n_cHez3Fk#P8gj>%rhJ}}D&=?Kl8i8L%XH_Dg<*%au3AcV(B4=4GKB-xgSr-e@V2~GQLA=V*kJyqmn)tw zZ(a8m9h`pm?5lB$gsqr$ztMf@Q7V*Dq0*DM)C8abr_cI%+78?(pvds@C_$1=3#;;jTo>UpF^f zg|FtOa%g+u5EAH`~Wil+lXqmlZo3`!j?@CV= zjr+IXe=B8|%aUH|Ry526z?u6mmOnHB%QNe5$r&!&AXL-Ow%Ve$;ssZHS|?eD7wL>1 zc76N=?v#W7`4dDP5|u0LhZ`o~`%vpPFN)PSjbrlcw|K+a%l$IqOpcF$86*z4xD)8= z400p)J+hM5EcmDVfpYVFz}GWec+792F=--bcqf4g{*@E`FQfGpE*9;~~ee0Y6lp})A?9}KOnUrP;j=dFol zA^CdZ=ttsf<;1w@_M6_7K^OMAHX}c9>n6%x3uQlH(O>suHeJ>Q{i2}O^eP4r(Z~!D zhxjWa6xPZ4t3EE^goI|(p?45$eYH{NDC>VIn756Z!7Ikqh%V;H>DgkwEJphn*@r>0 zA1d1`kAPS@)muD;SB%37eAf-g2XA9CcTk{U8lE(5yt*I_Mml;CuVa2-{T+5DwXTPb z+32B7cc|DMqtV0Y0$_;UzM04Cq|S81Wz=}z*GxF)|)j0(%hzB8NZzUppa4@Ru8cw*`dk1$ZyCmb5FUF zl*gPocNh+dvew}T#I7@Tk~!xSn>1(Va8-4X1VPkWTmwDouO~|z<`6O8cuX9LgAii)$bpGqoZ}lISJoOM)BX*bQZ5{{*eaLP`b16X zkuz$9h&ysEsrdF+lQQ)@>O^l_56Q%-BxkLIL(}QfF9Qi4Hv_2UgNN4+|bW8dE_w|JN| zQ>+Wa&Rq{c7f|_yT|IzXKQT3}#MVG!!#An^5pWdSyu^mrl(4*k-tVytu*MwyS&gfy z=-jm4i7Y#9ipf@JhJophJtyH)Vn&&}j;@*oDV%@`wzVOVeUgozOginRJaS%uD#$5g z>|<=5mn&a00EIuWbVrRS7rSp*K6Pcx{dHc^<9TpEqf`m+z~WN=SBCUq)}IVQ>*In; z+3gsaG!@BcYm+O*Qo(Hkco(iGsXuyZCAAIHo5T3fQUnxfSF7WqPq0j^p<#dNfX$`! zC)WjmxeCx>>r~q&j>Yp(F{6WYWuw z$m{VF;TaJyaVxYU3_#8W?;cd}SRkC{3D90umS+7i@Gzer={{^CRf z>bYIbY|s4c5+dL2`-0G`SM9} za(^xQs&3bZzgshMg7$+m48=A-F9kj0r9C;mMCMrru}M{YcM!`7cbAftjWOuui3HcH za9=NWSFNQ=2*e!KJAfYxUI*gFf9&#UY8zIpX=$dS^P@{S{IsM^qh8ClAfys{&kQNS zOSQsA0q2fz4DW&+2Q)%@qRPT+%{h;KLMfzQ{XF~BA*dva^l0(WG;ay0@dQWMs_RL zwst|zai>k&Y;6uS8i5@PrF+y^&jzO6Tbl)pj3` z7@0Ri6?)A;SGY(PIWkScXQGK4xvi4*T=NGtAJBVvib`y08a+OA%z#3*53^rWCqJy^ z189eLtZJ~Of4*v+h-41Pe7&KvSw-yN>T+%-l~u(AZpXk+KrRsvsPo=2aWWjrrzB;- zXZ1s|wRok8NP~{`E|{(nVd@oYxmpkw8H*>n8G_eOPOeZ|19KDeZUel=#hoB(p_+=+ zK<10yZ+=f|ZI#aT%jtiPPq$rdYAPR`jXYg$2DCg~_oh7KA_7plXxTWZ30cR+GPN)5xQ&I?E?2Y(lqRs*M^fAc1RTY4?o`Xvj-^VHf=<>*U zacC|g1=K&y{_R(?Jwt$m>L5|b_vniN1o#p20pC~zr9_>QkO28kMenjdt?MBHB2`#o zRye1K!*OMOxUPD2XoFag-_k#527 zn6}M=o?LKF8$FR?({=XNa(Z;?^xt|IIaNPk`)q3ji9nHOW*!R04m=BZwvrGzoO)4k z24FiV;tVto?V-+bZ3S{}Bshf0A*)&5f_y<*&M3BjY_OF1mH=JV^tLqbS_(2x^A&0J zl@qePzl9nJNudD zNXN=of_^_rfPUyVoWn3h(oaL5rLR%FWYa`<^ejUa_r5V8$O8M2B*EJYJfQ;=tN5^m zuBpy9RODs)16lu%skZ=X>-pY?aVYLyw77eUJH=_S;_e#UU4j&Mr+8_hMT1+A;uLoX zF2!B{>E}E1{@%&t&fM9Xv%6={+1>l>$#eM6@Zl^Of~4Hq)L2im!F3uGcIY^3#2i3F zf~xI5nVr9xAG()5q863U9v^ifEl5+^r^0tX>X^xW*h)QxYYi^25(!3t8?l!cM?4d! z1zDmuRJR<3_er536`sc_aL4+1poz@Fsj;fWoQ|M(mzIYOZL(OHEHd$^OAJycu|?OJ zkrY0jh-c?l&kwfxo3$JfA)|-oeeCu0w7@bU^iXge1$rA=ZUl%Kq zR?w8y9WgTQ z%!mk^#>zO>@{?(z#Fb;COrN=~?KT;VMdkQDk&h;l*7s6aOJC6$0Yhc1PSSJgjlaky zvqv1LjSQ|(FiTSox`DL{A^{L7-<5IQIisK$N^#e))$hEDo*Y9YhJ4|xPLm#NWrs-e zz%exJ3O&Tw<{|6$B;uqtt)&wl^moh5C(LU0qfxfx&~3M^;^6?aX&!F<`1BO~ZB+ju zTTE63hG_=Lyfr+b&niNer?^6cavv?2KA+Grs+fMNqHOgcL8;3CqXKZF30jY+gU8=A zo3Mw<)GJwtWl2G7HUi$T#?1*6_o@~y8kEjf`wV2c5B^X~H>@y{v8;HvmT4-OAKQ#) z=PDdKgFese95#kU6P z{8Zjlwc0AVxC%}7!}az&4o8^hG88m+i&D!AK49*gfxSrsZ+RLQQ37x-)Pt#pr#GHg z$P>cFF~6=OdSxoni`mlgxpCNHsg2oWDuBhD1@#*J0!eCwkwFG?5&mOQ1xmYAbl6Nz zYOXBtZzq3d8-Wl#O?kmMJ#7kKT|)+{{)E^`XT3HG-FqgtdN?#-fEJK-YI~TYSpnt@Hs+&y%Z?$FUN1#&6#}tRLM`%&eH};{v5lTtnwS3rClr;-~f?FA1W_ z;Wbw<0GoU8y7J_(4YtXJd{i`aLofQpO*M4w^Ty-0+OK74N7Dvuk(#HM6^e5&#=F?*veukvoaQx!->`X9v0O>Q}IgODObq#5lx0zLi<| z@>RV};_*snN&sRcv+}ABst!A6hz|+}U=-Ns;tt+-^K_n{%}_Ss&=<%!9Sr0q=g9bk z0A`%Hj0U62c+cn=p=LXo7<@!>lj(sa6_kjeaCGM2@P)PfcqchVB~~+HAZ2H6>tngz z;oH!~&@HX1Ba$r$VQk_A=h# z&tm=geF^^GWH=y(wAUa~Cnh8NGO5k$ihe3_Jbe62h@bubX4SXl0!hD4dwC%`4&vXc z76^-S$UbdR(d8-{az3dEnKus^d)6GS+epv>WnXZq?>=X46u57#pfghBQRh8>e0#yv zpg=A-5dN@y=#toAMaIQCX*q{DL%-pZj8+JEj2+S#-hBPnu#1E|?ET4%fT3o$md4L! zvM$wi^D~47+E>?#j}=A=lt?Xh_IHjtZ|BA3Pt54Ga5_NdKZ8d3cc?pmP)!%o3K7*_ zJy_3;*Ua=5RBzl=TM!E|yp_|gP82#kGQ|QKA)maMy_SaC4Ml?GSFl3^;a>Tuu9Zf- z*W=R;ijdExcR$k&RdFqJ{_GIL`u2AVu0UI|&gljSnTMyvG}YutV*><6k;&MV7n%u{yy=g3EK(b0lJc!i3+)8WaNylKP8{*7js|rjVH9zYO|*j>s!G_ zQjYK9LqLrQa)Cf`Q-_Oh&HC>vQNOq>(t1|!y(Xn?*R*S!Xl%;lLG?4ws&{4fem|d7 zHF~lF9557!+1}xjXx=Oh6!$YaaexzdpTBqpXrI_eWlGP|v0R_ddEW`T1Y(xA%7OS0 zqzu*b8-ZT?YJS}%NtD-IRO!lVwYU%>&v_iq<5|IN#qyrw0ZJ9{SKs10XHyw-Q&uwdGFbM@rnQx4~0?P|9sU1_eI$!M5l5 zM&i~j-hx^w9-=ZTA#aqdNhSujRESWJKqDlNIG4>mc|LW&cYojr61480$U4tsv09cq zZlG~UIDS-~bpfVchfa5qb^BV7LnYNS04)&D$KtNvw0!b4EGOO=Kp~e8eyTZ2N!n|7 zCKz(C<=rU;gSL!=@AK|^Jg71E9LDx^0p3d}VC%?47SeX|i=~tFNu@mUy1a@Y;1hZ* z8lBrTzV2?!A{=K=jKETVeL*G*0jAV-)g*yqwqqIF1oj5fFC(T?I<|0}1_|rK@g>vr zmnZTp+-F~XyBtYTgz09F4i}XUcWpwMcp!s=qXqwu4-^#Er_PRfqxzP=doVW|!xYcn z;Mj_VXTkYOSWzvMT7d{qg$ud0ma(XyKe<>)S`Ta*bklmEC^KSZCNfkpDO|QQdc-`+ zB8WH6DXSQ|KOT@u7U-H!p^M%7nI6|ch9U~!0kqrWR6m__Icx~lWKkW*=?632D0P~3+qYSKI$cyK z`w4ky zUbF=k9zbeTzn@BOi)mwT36Ea`H3xw=P$;cWCGOfR<9mqY}DI7hyls7gZT)c zl8*AN-V?17l`|JqOpRDDyjbr$I~aq*$n?e=YkM@@=;z;-sT(Ci#@ME%vzbMsgv=Q{ zAoNPfZCOxXdFzr6`2vW9F&y9+i4xnm)Yv150z>*3Wrv0AM(Ih>snP9yt;5tH;w=kf z%{N`kYjhPLHsXT;a?*b5@(0V6hA-?mKoxaq(ofCWKe2vfTVcT)ibfn3ZA=|!(U|%p zA(ADCBMip7ikF_NzC18TfD0wqMzrszN_|dQKHx%rUqPrtzgdcgO+^j=oP2E2)zyKa zkyW}?E*Q*wGt*Y;H`9fD_M})FVMg5d^$XZd0#a9sVPNE1k32U%d2sZ?A6kc3Q*Tzc zdsVBZpm6yt#9Ng^;$x-ANPk1lC|oJZ5<(T$B{ zPuqz#QL%M?ac^Q@<{z|bX-}5$b=Tkfd(=)mvrOlRn_GrYHHpTsj{~tZJc*V?U%9`A z$oG;f%nnhaAACkG0W{xPyYru{s?keEj?Oe+D2)o_I*Us#z4zPOmm*|ws-ecQHH$jd zsL`dQfYcBY{Eh_B;@S~?swcHv)J>QXfiPAsets|yUgURBgY&EOC z$gi8ESSShpJQNk>jxskCfQ3n`Fc5!3vYkK6DDv?`?cDl}x2@NKo=LlsKvQdD{T*N( zpNTmBILt|q8k(c}GZbu@X*JQ21%HiKo7DUf1A+!!3s#2ed0lzYIU9qT(!>V>yaNLR zfqe+iAa$umd7)^#xOY;Na!a1d@;u%0=WMpJoJd&7TzA5IYcm~`plbBc=Ip0pE<)TK z6B9#FQ`ifqIfV*+v}#fN#emf}TnG>WA~1@P?0hy$>HL0kKg&fF8eWI2LRt)?3G;R+ zV&P*J@Njb>nfHA&_Y6xlc$f>#O38eIXEa@-*t@J36Gnw_QBd z+?oEsBE9v@p_otX0-m%y9<6msQDL6 zh*%_)gnwiI_i=vp!HsnX*@^)vE=_`}jA1-blcM3aZ5uN>wTk7_`d9n_yEODPsrVA~ zP@5R)7;juXGwZ(+16dIH)C{bFqC1YSnReS&g3*sfW08PCMkzxPt?$!GYv;dE1Ja#3 z)1srn%2~aVgbFy@Qk{#NcHn&4N`Yn?c8oOBfBpm@7^Tsrx$oc7O(C zWym4|s`BAEQt;r;SmNEs*gS^p!LK0Sa!S~C1g|B~Iv{`pk4PdJj7A*boL`>?Ty(%Ov^a; zRC4ru;;^JSvBLkxBdI3tvLfk}!Rp7Ui|2CGjz_73|7BBw16YQ;G(es7H~L_2fn{C* zjsDY2>kS$dKTKY!h|9eIp;#~KUS*Z3K{Ai;FX6h7Uzyc0($W0(P(=D3{aeUFS<{Upm9EVb%Jz(61v}qi#UJKu!cK~R*ZHI1LK*>8a(N-inB-?7B3(x z8}bJSmQuU>yP1yuD(7Okswbj!>aABENdskosU=W=nlo>ET%KVNr#S7&08=w&@col| zn)s`GU~TEe{D-~fHba>EkVCsIvumpCC>J)lv4C50I$)(&s{WR5!GCIht$meu3tSa~ zlQiTB0bnM0@aPG?vt+xWf>W6dg2-19M?#QG*cq23Z7UQa03%&tfC)7eXu*+7|0Zi= z1+6oUUhe$~-aO~IIDt77#TviOzRF5GFtWepc9LoC4GJ)jT$;I5^DF_$LZgY(qeG@m zbFX}p53D3kCCi+jE*Vc08<5NYb~6T*5uGN1+-C)wq<18Y<|OwG5gH3j1z*l;$WrVQ z&$J5|67oIa%MhzssG%_Qs~?^{G*-oA>d$v+W4e>D&4`+gsdAJ$T$^8v(^gAgk$|-l z=)lS8^ic4ac^kV?1uH7luUMx|c`iv!wcKPu+H1|SBa!cn0PluNGEcoIkuwauJeis; z_a+R?u_^UAKN5g0-l}w3m|PFUcy*_R+}B&BjDe5GLjhsb3>ptMsJM`85U%$;>_JXl zYK-eHB;ca=p`Oe~`GgEntnpo`l|V!0&~vAc677`>2fh484+DECq8c(>=bJ=;pUOY;yi-HY zKhRV=17n)2%g!NCNbJ?n)DV@s(~fhFpOt0)3`Pb{T=a8F8gd5*S{4ZVf5C?1PJdu& zXyD|_Mwl`Q0T5lqO;pO;wk5%%)N+Sio3v`V%+Aijzy_Gn zT6^2~>u+zaIM9+1tyZZPIS2jptMlWns}Ea2zKWkX{)?sAE#d}};mZ%U+HgZ9N!g4m z7VCs1p4bJnVf{TH7)m2Iec(_lKd$9{MUqF%da$v6`eC1Se;NwzXJw|?RB*rWgoW0ZN?N0z=V;=GFat8-^Z-j~GiD;s-H9APPbd%YRH8nc=my3KjxAl8c zi||+!1a)-PZ{+cDKB|P`rUlSyIi*ydLc?)roq3#MWMH#Nj60Xq?EUqcd{;XY4irf_ zZ$GY&Gd5<~HN4H;s^4T^t*nR-#}R4!=EcK=-*_*%GU+naBn-^z%2}J2m-jv4_%8Wb z6_=zkG^MyhyAwM`@JP+m) zkbo8UxJ;E55@M=&%0*iIZ&jt9-?F2|Rc68V*dLru`KBH!u#DP35Z?gJ1(nl?i zx&&Nxcw;GH)8z|qH5m3~qrq2g<@q;W{3PNHTBiZAbk4T{NEQH**sC6+hHTT$0NoGr z#Uv6;EQ(6ic{ih1%@P70#g1^1F1p>4%*!qci;)Ix?f+<6#~dGQG4b}yw{)kD1_x;% z^U8^110CTZKyl{B1rmyH=Y$?RaYM+2XNiWz@4Az05$!{)77;*O7qrf#x>`RYv-vNI z84{8lN$N?p(12zsb0n;`V;R500ST_REMsfFNr9Bmi|g}p_<%bTJ#rUvs4<~5C3cuO zz~3ekHwhVLf6^D(v*zJYLo0+N+j4(Wd+$nHesiJOXK{I9+!#6M=x#3Z`O^l zhZOwzTZb`>#FKWqE}(Z%8wvQmc{%zXHt}~BZ{8%f6w*gaQKGtUm`G6uk|VNO8*$5` zfZMNsJraCJ3r#jFhlARRleG=nol%_jXMw|U<#|9HZlnXYeOX7c`yJ%$cSpD+u@1=$ z=f^VF?P$OT_K_lfrB9zbOS8aw(?5_$OA}=b%{0IJ0P)iX-x-{&9pDCrcqQ{LBm61| z#)RTqa7#YG$ir4gAdsCHqYwZ##=L?cGPO>`TZ1gPAJo%|Az-ws-^k*a7xxEjAU0om z6?+PT5|J*oE+J6c;tzW+6iw{@=aydj$748#PI)2~DQhjcrvCN7~B>0G4o+=K0 zL=UvA!ZW*k#lNl_aTXb6o?PN1k?jbvoxa+q6D!o71m*rUU4b5%SJ!O=R*kBEd_xNp`i(|FBi61X zTT2|6M}2GZ*&uU z%>%QTN>fIggsS2mR&~ZcpxHYy2;&s%Y&L6(NkK$G{-9;74gGhve}#^_p0h;Ki0k3Rj#D2j9x*6+ zaP{5PC2<)ayhrLln6UZ%lZqK!VXqldGUkxgRery zKKj|56Y@*FxGCV~{(~ar1J9XmjMGKJYp=0`(>s~)@8;S0Y>i%tG&RPDhJi9Nv{(Q> z8tc%4U|H9BxC}E$m8+qzF#jZDI9>qsEuUcRsn))VFK$KXhw_txTwwD<3j*lzE4&H` zUmu4xw^bt1BIo?-#gzm^gV$O0Z^_+XtxeyDQo~)`4qAkJJxP%lQ->LBl%AxocI%7a zTI4NWa~hPnZ>x=uOFv!JRu=geZYTDH#|}WG(gmaoZ1@hU#!;sa^DqE6X5^LK{_#Rp znyfP&6$qqjw61hq5TTl3Vi1L3b-t>+7kMq?U4fAnuOx>8f+jf!4oOFSQxp`WjGuST zoI41GVLK{e$xsE;#QZ{9-Lau+eD_;+%ZPy?KZBeUFd3qy74tItD; zcAzb0`9J=_fAx^JXh3}$hPpuwKMg*~nl7h|MgmGB4@o70BU@ChXkZ6c3D2qNAF%?6 zy8p8N9PlY4>*=_~1Er$j+L-65%2ZqfttH&mU|}mZMK#tp3fP52-*HlE@Ew~?+}B&X zL)eAhG!hZucvrx$nZZ34)p z3baN@5aLFAf?#iqwr*vba*?K`OCKDOWBsp=$O@sn6=&D%We((Me^h z7saVHdERW8Y|R^Q6G6@DFQ`e!puz0lG|-^WgH6v{5QWdRF`H5wk;5{KP5p z9glN0dc@+Z=w;4E5a&?_9gxP4}fz1z81SG`$OW?Z(+Z|cPG&v3taqr-!{ZQcwB6UDqyVB zAIPla>tn*wU?|+Yt4>7vb0oSp;vk8PQdfc*A8C~$o;PnTo%Z3-Bu!E%aQORNv|}eq z_yKvZO>>yfccg(Ow&a(Uu;U|qQ`VhNniQhK6^Wa3N?GBGE0=KDo{2`Q8U}-q;2heE z2pM6eo#+kzh&uUxBZ{FzRtD4J%Aq|@Q+xlmo#rQB#-Os>k8gS*-9f_+FvGif~Mt)-Ys)buz&;Y@^2o~!34Ju4H=EfEvW z_edXw!g!XKQj`$pgkz4|@X*aHKINN>nq*Sm3HH3ldX%~V42I5^Vh%)R@hiOW2(3#y zaWoL}GrR*j$auT_KoX@V?eDis`g~+r#DMX)MK=P>xw$||+`*jyJDm?t-}EP*xXeWu zG4EW^Gn^-mWHD}X4Wy~_c(H75XTrqZ%oTt>g@?;qD*je!{vI)?r0#uNYzSqx&O-tU z$6@$6kez)J9TMBWX@7o}guNiIKFLnsy>HRLU`_yx_fF5F5*-#@ot&>gakbFTfrao- z=QwbyaDNO$&sX6>hIx`M?$u+F5ZK8HYGWt0f1|ypfwaAWE4NkjIC;eYwH0L6-ug2&yVE$=)uhGWFPCuE&Q%_g z9Fx(jHI502t?#4JLdz$dwrf3Nv>7pte~b|r3_6nAYb-YuEQ znA&F2ua0}$$bbNOo9!fFO?$E#xx8x#`SMke=lfXINrl3ZTjNx@fLh`PPL^uuGHdSc z4Z>5^$dq<}n>W-FoZaYUCsC(Kc#@Tk??x%9qPraCJlD6uJ zh}P<4h`=`gR&{mNCw9kX8M(c_g)Pvsv*?#SV45-Yn|iodnd+7*M8s8{b+ zHi{VcamoW}2X0R~#fn*cL5`COu)jmmH6PP?k>y`*57^U~7gc zTihM`c#XsaeIi^h=;IU~)97VNa$P?1ND(~Di8b|Np67#AzJKr^o>$V`5eURduj?|wt<77}C@@^MsgOi4X4u~231G3)lx?q@3fP?hXK9hqQY z=~qR;AQjuHV;T$FrclnH0za-NKLfVd2T9^nX8#1<@&&^{SAf>vrbWXF&EDg_{SYaq zqh7wqCPkV!41@6Q?7vhgTX@go(=?ei=Sz0SU&$_it_~%B4?xwcTe^7A65<+654&wv zJiWfz9Psc_*!ao&$!nQP;Ci5%PMK$<@wR;=+YXkxQEg@GsF%{Xy1eQ$*AODGalm2v z8x_9@yF_fKNU`Nf%k(SvH&6j}wDTX?qN~;!Rf5~>4Mz`ulp&&p3LUu^Npgv|Lp#6T z-hTFk!3rxC9&PyyNuJlDfQvzk=oPN!#78 z_XcnFt!E!1pIpYh^$i;pUu6Logmdcyn7KF0tzKg(bXu z-{U&pF$0n{6k5ib)WYtkB(KV$V2e|gg+DsYVg-`;xVOF#-(KyCSl!wm{l1bSij>8b ziOBfTgYf7r_?QNpZfu{lepZC6^$Oo$#&Y>|L3pBS)`2q8Rlmwv)2ZnIXFZ9S(roxCiZ5J$Avy2qE9(ZaO$FSvpNO>rT%8>u3<@vOg*>;v{n2pLG5qXG8v@o`IBc zbyo{t77k(x6fp74V>-hBUCeHQ;7`N(<(pBbhJ$BzzR+ z(lNk%w69e8{blO_cs4TsPT=zmR?UjnX_e{Tic8H&03DYnp;- z_dkE9a(jL3TwX?{Pa#QYiKoGXg%;+V#Ksa3>9SUX`! zrcAGRkvod_9038Q@cJ0b@D)2!A*xXwA1Cd&Q#Vf>d9&@j8g@5Gi#dYMzdZWV*qI<` zV#IS-*|OuFNu^gg#aR{BKW)72Agj60s%HLZZWl5cvm>FA zec5$;S%XsCG?1WL)AhEDzk<)UrKf<*ooH{5iQ}9YBYjo4qtPBOU0w+z9nZ&qNvZJA zU`Xs+Xs7?zN-Ckfx7l?a7f4#aw7jc630!x>_ZYy*g%L_WAL|h7{c%GFPjgjH zAMjDFi#EBP3w=6?^sw*2_B5&*yhp}?#J;4^)9Exa^1{ex|9S!`p3c$=Gr&FjxQi+k zX%PpRTd56oWao#*tl~Mc!Yh9qCQ9)j+=3=jc9u|gxr}gyPUfrJXn8p^zPe+HATJ8r z3kzZ(TH>%xdWM23X~FWH>yN4?-tg9u=Dm`FBn3|w&Vr+5&Ez-SI5m13@+zLw7!jS_ zf^M%kw%%%i#%!ah$oAb zdPRzdOXPQG-FjRqzadqO-E4fJw60q{o)>hDjN8I`0T{D#GUKFt-ITS!jf)!-4Z*hf zosJxB+vPN-N8usTmg5u|E*|8wgw&_fUM=2iC(7&`j)j6RwKsIlWl#*f&8)GlYOJLv z<$7oKyN!IU=6+D(b&1y5xWAyca)_ERK&R^`!!gl;+3;-eaY;>W#-b8@d!T@7-qf+v-IwcRaLJX6MQFPr3!q=+-_!q-<=@a%Me16Tda zdB*lsZEP8;QV=DK|6*s)6*p58Vy0i$DJ^~P5nj6afyjW5{W;t}?@zN&Bw>69KJfJq zN{cnPkxBeJs?0mi@?Z>WF?N*5N^E;Q6C3R7tZzy&;wk#oR9S4uaafFZHa}4i&CIAm zdW*mv9Vm{(Uwg>NdAd{Rsj8zZkmB9P1w-sBvQAJ5B(+qWyMGY9lp!m5%z2$Nqd$Lu z(5{hqRDC8BTd)jDcxU2Ko>J?K7P#sQF+`c1BBt!3BEHa|s;*3Ro=+Z7u-=M*ZzZMBkq|~87?B?J8WFm+>Ias>MH+%c@OS??IX`tD zR6)`iMJ9nK?%ibgOm90p_jn{tdV4uW0~|Ri2(9=42}DElAQ3scRGa9d;Y7Y5X$XSr zqUIQerr^cZGu`|?LH~n_v87dW@;*WMW>1^s!)9e0ilmsKi56* z+^{r#%uWa4I2Tb>J?DFE*fos z+~lm`=VN_~i;I1x04xjsV@NNuOzDg!fx7}cT`%#Z9tS_$-DrlG$$pChU3WB2_tNCc zXs*wR8Ip5#4`yFi9!G|3-kTc7+K7da=$OIj6p+QO8D<~Wk31Jr)9u`JI&Q@(!RyR! z)81g{87Oelo<>{_FItiY7Yzv^24G$Z`K(L(QJ1OfWi3V7ZbpF8If`X&q8{IT$SOj> zj?r0O!R#}^m2hVjij3^S)1xjQ&~D9zGke>Rg72|woV&3L2}`J@w8R3~CCt#C6EhME zKzN`;=n~)+u<&rx!`my+1c5^>T&S{2_alCzlmyrY$zL>gNmw1v2Zr$hVQmPNq)7tx zy#db}=qBffvsF*jri#y8f;jG@Jk%yr*&6}y}oZyVSg zrD(P%B?DiWg{qmJ5H{E0TKewM<6ATQw+~|R@4WoG$=~$5AV}evdYogF7ISPCB1%`} z4k#HoX{6%rN~StwC9ufm4cH%`xsV{1g;Sw=>p=bv-k(z}kvem=Oeer~Xn`Xx|&SDL{;-L5)Eh0I^ z;BU_SY=mdin!5|2ucB!6FT`n*(vHBHofO8mmX3K}bgr%nq5Wqnp^|hk*7-}JTIaI4 z>!u_?l&0nRx^{<|*9ekajjIiYnx%x0`_l&<$osp6I~7(ceWS1-P()buO5A=3-@ACh z9efS?*o2;^rrMUX5IvdVEg~Gp6Tt34=~^R+J2qx(dYT+Le!OG zo9~$JyA=^lL(s`0E0RTgq5nJZsu`y-)-#f9#Mr+5pM11vMv9QhjmcetgjGj#&$dGQ zP=u}|*ZN*J)Fbw1^@G)_Ke=a((`6++t|?ZpKS?c3!mdtcfQk^+=DJNhQiE_4kw{s_ zFdx?u)33#TaT9kR9t1IpUZ?&4692PlTr_@y%;k9_Z|7sA4-R?#1`mg)%Q32xP68ElS#0vAt$6&nljY#f>PF$d;|1SEPsTfS>H`(#qUwZqExa|K*$8X+W`IjYr@1AAGqrZ(y6Aoh;t%Fg#o>goA3y&+W1)RiTM1;qWS{ z_3mI=qRRuK(U7RDX`h2;|u0TBS<;ONv~Bms2)vVQ+x@mT=g zzh6i~VgRrU?LS%n1pX&WmJ(L-pTPf$H{Smz@IP50Aen!%{t5g~76|ZPRj|vy;t7ub z3H+ZdJl!&qFaO$SxZLFFmkdjlE(zH=_h69M_5=R!h7-GHwcbC?nDoE;S`6O%JZ%5g z9^0w~xBeS{0$S)rr*EIra=Y(xg3z>)R;FS0%y^VwMcX&|XUjQjyjvewTWY@T*=+6n zaWy!h0=BHK-gaH@%w*)M%Btjg=$6!A+Sh~pzr%W$N%C#xWpM5Jjz4)Xn6j|YsrZ3t zpN_bVt9WOm$WXUIN($IaSN2`o(CTYLxKA^)gp#ct1;nD5SR)N$JMQ;;%{gP6^PIZ% zbwe;^9c7ieId^^DOc=qcReyNb?do}GV!VCNq9W!uAK%|1p}a2>g$8uN*unxM?;6&# zoZtqZGT?NqNknKh{&5%4MjV?%ewC-rGLBaW<(Zmaq_{q99>1ME?nie$=F!4tliA2# zr#XAN3^jcV$e?qc|Hmd2L6@+z(7L4dUZ>Crz*p@|C|9z3vE>SQPo=Ax5Z^l$I{cDG zkhj^oh`a#TJ_W`K>s&M~mm~!KqgN{ixepbB4R07$wp{GG}0;9 zRQZCsgcFMi%U^?~?U$#z?KtM{W=!Z@RvP86mPzVTa*)% zsq?oyWsdZ@0U9?xc15@vHCyqf7dH{MN!4Qs?>uR^uA+d<)2D+*Bc0x!$ThwlYIkde z*{5lZ{e#|$d^$P9D&^G|za})3^@2%%hRRw?ZvJu{EYa~*A!^+^=w%CrD3yj=VD8(8 z!*T4_dimYUuCX-nv^=g8&Foj5#lHV+LTFwK2JBP=_$CgpbRB|CAlkQ#&S^IEHGF|q z-1W0x9;)$jwRn|uv1Pp&1r3PB}Emuw10QOHoR=pfk=wi^X7J>Q@ zqwI$4iP?BYI-$Im`b@?@=gVJsuHMNfRN`e8+|~W|+k}3;_-b%+Bflpqd0i!Y2Tm*j zv02etVUJYHeI76pgAQEO%zP2|{E#ktI~T|_yEgTBYDJ)H@L`>EcCrRr}q_00Wg|!~_nNqp1=o6&mSl_eu za9LPcx+p3`K zyE2PW^#IutkaB!skcRKw!|K%eX#OAU5)fZ8tAHB{(|bkf*If`run!847a7-Ai`9Mo zyga>M2s&_-t7;so|EMxy9v%w@*P5BlLh2*QQiC}S`3n6gfHqf<7@e6?9)=e2QHV3OQFf|4cH#;SC zKGDU%=-gE)KA2$-BN+tz>oRS>LY|WUVeOdH6ovES-+3?}8NA9#b`@VsR@@R{=Xgk}pn$-l^->gMYG6ZOR~DPJM4y+3sf?^bs1 zsS~f6k-`9`)fO5CvVWSutI#pDX))criW+(BL#ezqxCV((C$7lR)IToDx;;l@or~Ye z5s=dZ!$F$05IwnioPB4z&J4=iunHI{(lVZJG~TVS_qr8BDTgbW%XQ;*U}_f;Py|oM z?~EY+xm^ruN%(=Y14RFiFG#x_I{aDQ<_?scmDIyC+6Fozr|ts5ZE19!SQAW%CsWoS za8db-W^+M@OLGP+c65gRs61gK#ezKvffxGlL57b)+xc>ajxeCDT_a4BOlk)?qrO^Z zTxT|dx9km>>`J#*LQoDaAkMLIX zv;7q))xd8{S%9&=Z%%^hm)4vK`Vy!vT`4`NDhL;mdImDrIDh;-`2?a+@}Y;ucl1;_?ePB$9C}=9huQkPEf@O$ z`8lE-C2S3QhQ*Ci4u1i(jdZS$?!|$90+b=M*GzdoJ@OJNY)-X(r+>$&K+f9(Sg6!X zKczNz%?B;ue&M&I<9yM+5dj_yNj0#`Gf}^F?t0~&GId<d7O;5|m%fFj=k8bE!?rGntBYR)f%$5~EzKZb zkYVe4@}D1UuM*Y*&f6Q|DK%UF=W*!&bxis`C~?WP(Mhkdpw(|#3h;R#YhNAe=f)JYGEwv{+1pE-*PU}&lbW>+%Ev|0nqadK zYs$#+JKgrd5mtF2_%)j3K{o)4WW$U5bx0eUWfI#@sluZ0|C9g5)>)+WMVH)T$9jB> zN2K@SAv6fU1f}807k%r-&KjxmlkEq|)?vPfH5{V_HRRnhFT#yu$F6jkCL>5rGJD1L-JHC7MdEV#!<9mPn1>AAY z%$%9It~2);lui4ucx#`B#rJba+P=jyYCiz|=G%U4jOMlQQp+WE2t)P8KZtKvNDUV* z9J6WiN|@D+Bn?I7pa07K>mxyJ&cm(2!BpJM0`*D@YAXeKc|~IWpNaZO=pw7sY&~l?lo`t2*U?|# zi`tQIysJlbW^agGsy9J!a59#2P8;W4GvSsZk$UuwBX?pKoK>z~V%47lCnrlpR!n+6 zU<$tWzLA}U=)>IYSLBwrVu=M5BFV*}G3sg83KmHwE8+e!f0*gmUWi@ z>5;vXiFvxQ_tx3^J(#8saOTK0J!BCROq6WH=Y#%vNgUJNmWUUtcqfP71}Q>OwhX5eP#!kRM<~zK;^H;*ctp>PC zuP@88QBIEYB*18!_ey!@J*_v~NlYh%rgD7QwakRquWT%^(8A6dB;zJk8EeVXxXZv> z6pLBB1BbyPh#LS18IlGNPRY|gvK?@V9?9k|nD3!Rk6t)^ka-rqi(9`V)wH$<=2!f0 zxbb}@h1Bm8KRzMzbXoM#?wTLK#eJ3lb^$PrEDkjR5DNf403`a0t^i0RXL92on!-Ud zLK$>%zg=eC_*?3<_IfIP4lO2F0V^2HmtSXeY-hB6DTfuG9*qFVI)>nq8ZxeR4^lVCcN6IUqr?Mrlc2!q_ z+UuE~4=VXvdyHM;Ou60Vai}D*nHpX{-1-G589}avI5B4(;`O#;F7Xy z0FY$`=A+J~L>t5(1aYi6hxR5u1F`e=)0X5VxUeS3n%*}OF z#&UB_0xD=cY$M!@e+mHJK|Ih=qvlY+!1UEqw8J=D{3#3ds|-n{A0Z#41zbXXorcL^ zAJ}Bxchi859xD}o1T>L{4|b#~s7ttja)TWQ6ed5lb^p-AyctN`#UB3{U+~*{Zz_Y8 z_&&gVD$5IME6(_?Re7aybP@^e@#vj;4a(gfnYdV;>7@hk@n!AcM6(lqHdsI5|8f(i zu3-L-Sxswbmv9^Of0R1RYmIK;;(vaTCeai|35#v-!dW;@gj_i3(cuA_B>9i%{?ZEn zNB|t85CT}|CXNxfk6B{`eoy?Od>H`YGv~#~xuLs!i1l^QY_Fvdz=24BYTm&M$pQIK zt`R^@!1`#|Jy@EMyvgNq1ge`j@;`692V;`gv(KpoQ(a6Y4=q z?gFyB26o(g1_)p}o0+`CL=J756(m|fI-WJH9`Y|Sc`+P+%HID)2*-ZZ%9_RPK z1(4gj;E(V)oUmN<;3A>b_du}RhKBikGT5EFfYJG019%l=jvWE+UUFRn0=rt4Z%uz2nnPQad8gk%7-c&v+F9SH`$ zU`;ry3N8`xTk8B2*Y*TB+ktH4q|iv>{9czqm`G5Hrxb=ndUvJof?C?e@BICY4Zhfw z5^NE3NzKel;xJL0n9vV5&LNdL3??~8>Ywk69fe@}Co=kt?9iO&gEuBZ`H$9*3^^lE z@?yuqH3PM!b^;z~ckTKLOW&v>O+3K%dY^(un(x+AY`va^S6DSWr~(2d)BPe;Kn3HH ze)gkhY(zQCKO-LqRlcOUhc%dXbENL z(uvq2!!65~fJWM$A5ZL`yP>Tfd2APTZlpHg(>vlsw#+$b;gxP7H_6vt-^}O+kNcIm z&1kd(+0x)KQSwitn#{yMt&_m$uaIz0_p%u6ryqWozyA(>n$N?=+}i1CINh05irm zxjhg;i1UV+9R=&J9BeC1(gr9hOy1p$l`RI|u;GW_5d&fmc^!sI#?gOt_c33S*kMM8 zPxeS<(0A0Ws)~o4+i;OIr{q z(pok59iQoe)aA5zamFm2t#+w#wvZoLdeWHgKbh3_;UZ4#Y_yRm#_pqXlFfa)8-Kk( z_oF(;Z(OmHl6gHt9%MGFHKpHV-HyhP6=K7`O8Sh0v+bKD9=CK}7(}GgZ>%x(JUSkAbZ8@{NFrk0Ru7F&51cdIEaFltO?&pu; zs29Kuwz$agv&tALwbeS}oZ;97yfrsUFl=8jfY5yPk3|HhEoM_&SAc!Dp@ZfRiP-=et}5!In11$Tmqcq?34z?`#mt_dH=f2sW$#sayr; z?(Gf~|DL<)oUtTEx3M4I=vHZ1vXSi-kPFeEH1J@MQ0XXxI7TEdbToX^_aI|GjtUt* z(GmUmq2>vWCbqI0PnG(lp4;ZWEL)rthk7H;ZCU5#{!!HGxv2wBYn`K?c$38E^>N~* z($-UgQfsK;d9;9!PA4Qs&xzQkBUl#gK-9GU;F)-gTbXa3Hrk7ly{p0v2%_a!Oao^q zN{ibA-N!W*$ALg)tmc+i;X=&gj^D}2R%V*>;J!>wW{ZO2CVCKe< zRgT9Tu>r~0@Rbe-Kybjwc=oJ&ekM8EBOUA%tXYNP1ghxNF?EJtZ{?~rr#=zdBOtvJ zN=bWi$=%{RdqGSk&ucYd!wb}DwAN*F&44@a*3XN71lgl z)JduTAhhK6mMg>&ysl~-EIl|+H0Evq^Dw`ffsxgGx(_UPT-Y%V8Wh$~ z%iXFpX*2DVdq_l`5n$OmSmNJuv`^!Rrp!&trc^! zuEJ-Z@Tm`?)ZQ`^E>$|}i6Q8JziyH&;9Rye#%|KnTC|0G?cHU!X>GM`H3{^-2W!dH zh1nL6TxqAWaRaV}^WRumiAZvabslnV_Y6>}Hdf z5pue=(@&t1NC^b-c)69GyC;0#er2nNTt#9-bW75*rxtw5UC>=RFS?>oA%=IMlV`eP z6FjK9sY5s$s(cel8JV?BI+piE#PZ!$!=eYaOV!C-+VzUJV@vz(@o7FX%k;ICpU@Z1D2opd)jm}=BZxlj=x>UyY^El zRZ3d`qg_XNvQ*}Hsj;O_ykFRf@z5VA|I*oV`EYOLXXcZ@|p;B`P_>hB|QBU$kvup>gf0(+bH z&kfO4z61q^u(xe*=CG3*#tF>XG~ZVyL;ot$Pta5V(@!hDYe0YcVARvHeN({4IX*1- zmgBf9@)Oncml(6=;o#Z{gh&X(YkCx0O>sx4xE3`igm8OebzT$Q@XV*cw&_Vn^HF{tB|A8)o+J24k#`-3#V87p! zn{2KmrJfaj0xXd!x?%=c%+-dS{ZiNazRRsGM4zsKe#I1<-wReru}6>6-IsYSc_hV> z)sK>@t&H<4j|j;wHN9W;(-s&YS-7{TBSh|<-&riYh|HP2aN$^higj`sWNx$ZH!Q7+ z>Yqz`>adGatz^T6yLsd6W4fI`yPzAmXSO^>z3#~?m;kbokdZ+=Fc*oTkv_>#u_2%v z06Bq6F0WskWmR9~C*T$y9ookg{y=xQBkrN%dMWH^}t!d-4M1%xpr z6X^;~3YKH0IlhNc3UaBhM3t$PnSY0*giD0|!)ES)O9Kgurvr86WTD${qfT|^D-KQO zVcc6-_J7au!vmzKRGnTsEF}8m5lr^maz*B4O#V)ZJ#E7ro%;0D!_(ZjMmHd(6C0K| zl1~LIPg29|t#;j#;)Y5dYo2^Q;u3vrp@#y_=pbj3Vq(XTH5qJ|e?OahxHyvK4qTg6 zo)Io`!X<-tZ=YILisi@cs*aX}*af>Ex)mRdSFQWa$IbhVl$x$Ltn!Vy5-X=%Le~-I zk1$WSCnyx74fLFxYj4CSLRdmXgH;BVr$C_PHr%l zCvq2iRE;R^4E%s7yHh}T&q#1G4 zZ7H>KhZAkm?$Bs^ku|p*6DJCY!lx2qBrDcaXX2UEBT#S9cf2$ig|9wFK&okfQo?d3 zs}0KU>vLmvM=i~C#BI5Cg}>9^vf5C1XJ611yIV5;e#X(a_BVg*!C-n;L%ovR;`@eu zE!8XwI%={tx14*RzD7?pXOB#c0LGT8`tkX$Cdek#fP3)$SsHwOpK+>meFcv}zzOXa zVz~Tn95ix&++VjVOYgOE`+e(g-!?3+=pHUzbR_-al=NfLdHo&*JdmFoW4j264Cjge zo-ts0$DE=H99N@iSx*ilR;-UqAM9Crv~bs@J9Zj=cAN8JIu_imDLxvx`kgIMUuifJ z<*2$qjWp!JM2}dc8;cR0kU!8vo5m$P!?oH4`uXxDNn<*d(M^x$Ls1g`Jh>2cF3_zm zW*DulN|cCBwPmYWzFudx+$2S1u8VmIOMn%+_};%pz<-+pXVKBX&~Qui-^Rb7HaO&8 zi(uUU6ik?O@>SpI3b2HJDyn0-B@kP-KkHB%Q>1tdA@STiB6A^;PY5JGG(7yQfl*R1 zIdwy44-tsL)X9{(nCgNghtgg}y@fd91ypupSd6r>p1sttvT%o+=72!5PG$YVVpQcx zA&xEgfUb(T_jOu;?nv?)amP<(p&;s}mD*&#GhY*o^J;7>xU^WMPc92;@Cc z-*|%|Rp9*YBd{ahRF=udCl7GlJ&kE`gC=Qg^gU0xADrj1=I`F6-;sRkD0E>sGv3aP z^b=)NXeSa29x^^Cm@Z#AEAk%Q>BwE%oIk8)AylCwHfOAvsdp_`FU~JAq;DviK2t?A z!VKSx)elKFxR(k({@hc}Y=}~0zRIjyAg$30&BlsFU%o>a_C6#ld?7r!n0v=l>~2x5K9pvujZCFYW~#FvIQH$XjI@LS7Pfy zxbBRgJnwA_;G}fW`_yUx$qn09ghwRt8lr20K zT$n)uuGIwY^XCL-gR82|^e}-}LxzHONwN+1Hn)wxK+d7>lH8jl^au zrKBe;xE`$SF978aN+t`j4q49n9oh2fU8g=!X4m?d1L@ZE^SC{KTn0W=dNiw?YEC5C z?LQGM|IYBs;f?LU{4*B>&?~wI@1F(XvjBY)FG`bF8ZU)$Mg%%a{reYe@=CzvQSDXJ zUn@)J2J9Afr9&PuJ0$|yq7_tS`^34xCAL!qbSsKN4YDLu5Y5F)V_f1yYn1$?Z}hJf z55@ssQZtQgQ;-zWkQh`b7jVy43vvR+PGfc3Jd}m{f{i>g&{Q>2duH7bM&VbbS~kub$MPo5+LD-Fok|L zJ}iqRyI}}A?nz(g*ASDRnmJsHfZ3Jjs}|pyZCkwcN;ARp@C-3s8XMh_bbN>OXV2`d zGstALv<0p?DbQJ5VKVgL0@nloUy{kRlOUUEPqwXO)F&4W=wxR0ez!b@rYsZjG`!=p z-j($c$s^}aKeYt#q-wLaI!t%jg|jJX|2tJ+HBVlJ;8w){(?eNLvIU8AnS`?`n7p2h zl^@szJ4*akjex7vwh3y0yG1t&JUI@4ooioEZU|L4>MOQ%!|UmPJZJZEIfqIp>gY2A z$WQ^D4SHh{13x2@Qb&tQz3;J`>CH$rexB*K6o%s6mB4i?#@V#zn^!(@9fvU!q}|db zBGT3I@cKbZ{%@E3q}`I$QG&0bCUhYw9~jIU6w#)PyPHQzTNP!lhbR3070W_Bnz=gO zBZIwxP7m*-Fwxbmg`pk@U7~A&7y*JfEg?I{vZ5*k!fZ?;gOS}P3I59dM8f-7!EeDNtEo`-NI^`x>_4HDqS>s9 z8I9s-p7UUQOYVn+{?Z2Xg>ZK?l2NNdC*!^Q3s`T2j0;>(q#?^X0e7=E!wVw-AMk(2 z4OBuKu+o8Exq!HUcJ(-A;`}>zB<`wzVkA1DlMM>}q-0qp8uhWLMYk#T*E?3CFwQn4 z73|ZqmYZ8)cDi0Y7VQ@;;O^ekr11|HO^-h6E78dK16?@rJH9f)u4j}?(YeT)MDbF= zDh{`Md+2}$t2ir(Vad&;EoUfwMtg4&FXuIM($ZF#RZ~I)a~|7&J=>jgARw^+fzq9R z5@y&LpQMWw=$rp%#&WFa5Oe5kntB823t%{A$MU^QsIn;qM*D9^iZn)eX9Jzr{C)ZXGCkss=Pc@t~{+>mq8DSj8*;>&n0^q9;2$q zRSMabOF3Qkg%(L2u90Y~uZ`d430n0YGVPxS4BVAh*Tf7TiK z)c{Lk5FCuHemTrndN8w}pBd83Zp!3%@x1dLJf%ggpTY@e!AXmRm{0;xN!*ZI# zmq$bTdwxmZ@6K#G+YQiqgf3nma+MSLUpos-4ho&=;b_QtL-M8zqLi%|ZfB5}u z?t(xUE?~Z0+xc@7Y)2Q%`f_V`Q-8_|!<0ac$6zE1spoWrJPe>IIGjvpbUiSg%cufW z93RiCNq|=hWg+a*E46zAB9>~7C4!4|dK)Ou!)=K*jav2{@uiBhd_Pcpr>wc%XVy~0 zj*)r~iJH|=my>J!%?;}+RM}hfcGHKH)O^pUgB^ed|wDJ zVez0N9ZhYs7P-DhUv*k7xK1;U+BAPt7P?d%atn^~-KhX`)@M%ZdOL$30-20^@hhlF zf03dh`GYW|dMZeVG0$`NnvQ(p+Kuf^ViPC<$&vqsHGAw~7OZwP4E2RZ+fv{~nT8`d z7<`H^Z?YFmzUX4tmYb<4gi%hJ0v%aQNG}}*9J6A6C5+V9(b3oc3ca{>U}>-zwKi13 zr@+8#uAQyAEt%}kWwqZ@PSE3rFS>tAE;TAt
ex*XzQ<_QyYDC<-1KB`4thg}H%-)Vv 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 ^o5&kB7Uy;=cPWnyQ&| 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 AXaE2J literal 175365 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 diff --git a/assets/screenshot-2.png b/assets/screenshot-2.png index b98358007515bf6fb0640a487737a1e5b3619e4a..9fb4f742d6520fad292da4e22625bd467e05aee8 100644 GIT binary patch literal 150589 zcma&M1ymeevo=adNYKCp_b_Pipo0gu0Kwe@!C`PGA;{qFgNNYmZi9Pphr!+5e)7KG zx#!&fzxS?Ny;iT8?%Gw)uB!d?-n%>Ki@YQTDiJCI0s@A#l$a6%0tyTP;WZcX%jYY# ztwZMs2rm)7d{z-BrKBaLq9dpNKuJqa`GJv|frXfY8kdL^0Tu6A69EAk2@4OO6o`RG z%qJ|apsHKNcGA!@mX=dwWCtN2V$m|Qo7*}@#U>;{(^E2jL9=qx za|(Xt6q-r zbxobHp7zeJrj|Ar5ASDxV$yPMUf-28^cosldV2f2dwN>hI)g$Zt#RD3(#uVqxPf-`qSrJU%`?-QPbP9UUVRQ63+k z?Cl-w@9*#I?3Ptj@9!U+o}Sq{IIpj7Oij()KFiJR;o%VzGxOc;-R9=@{KDeF!QsKd zbL*3nlhc#qlk@Y7m6g@=i_83iqMPfR-oC->>+7?#^X#15>#OUv^$h|l#_8!<61tE3 zd;8-PlO<&pR~HwL5088Mhc9p`PfkydPfiaGj{)!Lt}d?-5Q#gx`wovzYHAyw9ULAW zKR!JPNh+S6oJz>61A)NTuU{jQGF_gZ^N7j;S^0?=xbN=o=r}(e9i4CpN?}m5GxLav z$f{giU03uhW>$|Kon6eX9T>;MURabO2>(Lh$e38%zJGk!IXYwVu17E`a?0pi-#PUB zJ&5jByS{eNx@ILM7>0x>6XnX(o?&i8}WTkOn zDYaqh1-KI7%WuW7*2jlC0ly{$-2!z;BZ5{wfEK z?aTc#yMf^Hm9?FRrzg@k2oztTG$zpNs|#>Un-3IrdwmsG&_^$0!N@>%etI^m0XjxN zl)9D{6IOA3u|F3WpCv`yeNy1-UjAxu4u#G%6vO%|Ftvr0_9Kt&(p_t8*RU|j&Nw#z z-TffX-cwV@KcnRT>$D;SLFI>XGUk$S1{jedX5llw{i{&#S)%lJ6dBnfB^T{~K zm?sWCuye02Jhq|vwwEpDhZa;%)m&yL@}d9LX!(%8J9a5D_DPxxKUb*(j%0cmUMEOZbec*-ImKwX%js#a^}I@>V93Na$WC)mR&U6P)R>E3`>#2GML`$1wRFYj>` zyVxnR&pBBkhxh!P24y%H%Q@$<$jYuJ7&N;!HYS&F*6RTr3^n)*bql~P$1FF(mCHB2 z09m6VUTt?MY`}eOP6U-wE_UH_Hj%{~h{k=tfWMe9#xTDUnxvErQ$yiVXf${IxfC2U z<5i(*no96&sLcc>mn&Vvt4}*#Iq55{v-6(+OQ|;B9HuWvqI6|7`Qe4ErR{yLiL^fv z^JgcOYK&o32`p{W1%Xq?-CXWhh65DNwh;1W0e;VU0Bm;TFOB|MFQO}t;%);PTmA8c zcyP-__faJk|Bkq#jd|$lb94sHQ@IVmz}#<%sd=Ybd<6aZhU%IxJvw)PDR!~VMEhN2 z65mGQ57URkS2wli4Y)_IFL0xoB%4|cu3Gme0lz%vV4K84~`ZSn~@hrf%TF!ut3Yi@x9! zZxWPjSeGWe@=<;wp^>GN75zLs;WaNZzy6(}Di2hfQ@}1kry~q~OH}<$Saw=zc5X?I zzW4b=_Yiy1E>X*R=x1F!qycgG#r0v-RLJoIFg}$y`gAoCLVs`NKG%7?rtRY9i1dc;d-=QKI~8dy9B^g5HkX&j`5n2B z>ErF`)mN_6fzMkCaC8qWl6Z#ZpYEkQN3a7e{!q)20L2Wxnsz_R_3FMdh5M-H}wZ}8^?{3I_e`4by4g`Cv%&IBt5Dr zV&#y+Jr0aF^?;t6z~b%BonwW9A6MTGqjR2f`5t=p(`UBvtd*mr>uIer^#?b*0hJ6i z<9lO9T?iMd#NDT#jb92?tYSYYF62qE=)(%7EQB;0y$-#fW{yZ$&Fz0qdY1?d7s?XA zD2@mC$-fOJX%;hy29!3|&H*d;t+zCiraG9M)+3lAIW8GJk^GJ6T?eYj2+O28!TBmr9)tN zt1@hio+3Pfk;yc7a&|$G(!nJNq~~JG!i(Cfaof<*=dEX2^{+g-z6!h3*IxadwpQ-W zI#qz3sNE$K-x-VDPfiSpA0d$Wq)jPdgM**} z!;I0#DS(oQHI2TQg<~}db#d)cul^CWTD1&2_4&{Fe=I>s#rn>4K%a~3Jqh^jZRgFX zDV^ApvgF!S_wDw!jySB`cg(_p;fgBjs-A=^W$`0bB_f%(d;*t7D0FE&%cg406n1hN zx7tm-e`%3D!)913r}Bw}Ws-}F>n+d7cwsf?K^UHh{(F1BW8edpU!G5%Ho7eG-3xd! z>dxk+MD=C&_rU_8^$GmuJ9|jmv0v`J@SWl&;){~|A}Jpc?1|KT%p)A|D^9(m>z6In z-Iip5cDay3>8~+6=9-H;RF@$Rel2_ou8Qw-6n@9HFh<1+ruH)YIt~9f!yGV-VOw2_ z@SdGb$_OgYuYL@2$HAZC+Tyv9I*wu6ebh~Mg(DCXYtM?V!aa_-V zxD{anVC^opBhoVi?l~%DA+(GxR|Db>TgJ_a#633A=Y0 z>V_SND`Ha+UfG_&n0bwSp4xB1JfuDSpDY7!AxuwL%i753z<~+^A%zK1g=xXOkz1`7 zx7=F@y^&t*Y#!erYhRU9YEz_u{F`aI0VcLSE%&5w*s`z=TZ*<{x+=g$Q-VZ0PKvF>y69& zG3&81BfPDd;atdTw{m(gXw69#xM;{9YP1G93BK2r>|FI_Dt6a^fdg4;1 z(^BLvItHU$^M0b={w^SY(?j69#V()5t-FNAfnl9gd{wwY^2TW zd)+x!DHhQ{#}yC|WW`wXla=vjO^g&(ls8ZQw5m9~T!X)50g*dde!@#k5RCxI_u#tR z);qf_tdCC=nn7-RSiTJkk2>OcBiF6XDl;|qb+VQk2JSATg((2=`vTDFX%m}7pyA&} zAU|D%1%A`CxMwJ9CAcJ0 zr+M9Aj<7u5&MFKYuJ>m+S)n9!z9Gtk_WbwX!p71 z{IbQ>aKELWs!oJ`U(6O@SwPhp^Obha-dj1QM$T2(aQ{)$tiy)OwEl-w;_xLbY@jLc zw++W{)N>?%KN+G)yZWzOxC}UY*Q{h=-A4H{9q)GsZGC4|&U-pr$V0u+ag1nhRE`T9 z#YlLEHmNBGj`QrfZqDzmnN^hgg?KcGwscMtY8Q2oVB&==ty0|WKAi7*j4oJ-Wlhj# ziC*$j2JUG@2ma{_g#iWwZneS?vvd9tRRCCxK(SvKklU8zuFBTY#_sEXHpYu|Fi^@S zXSc@^Y%XxsIb*0Kut_5s6GT=eu&m?XvFo=~yvBm`__CAm_3&iEL#%9gM=_Dj5!xh8 zJ#2Q2hRxx3I1baXU`O&&sKsWSO+f5K! zOri=^QGyQYMu5U29W#6KQb?|=kF)TstQnWWht~|gHd-`r$EEm4%q(N6hx9mEMCWP0 zrD0|ieR*B9%9NfyY}H_ zT@8`4H|Rf>hF&Bdv&G3e1rsEpr5Xi{{rN`<_-RXIi%!RQ^$Hx|jt%Xp_r8jOOU?y1HxwUttARZXvd@axJZ}ReNU|{rHBFtX!rpfJeN$1i4 z_wnfybZ&bl!<~~Evt=h2tM{yYpDPCRgqT0v&bjl6LwhSw4=rHf8H1-zx>Dr+YfHa5$%M!EEoZZfQxIAAwl1VhIV6Lzc=6KeP$MJ5;b5EE^>BPLKl{NW)|O&! zGPceVj|*$T#j#gDohUdNEpbB z10L*xTVGf>jW9lCi@cgIRrhof`)-o0A)zxN*`t?6USu3Zpk~a63A=)5T`QiYBbCiD|7FLC{pE%^Z_*U8 zM2B{+owz)IlGG<3fIFg4kD2*DqAIe`cSG4@Rp0fK9nIqM^ryt6+%34Dy$E-BGy~Cr|%a5B8<78p|2{ z!U4XWEmqW15x={`e^cK~PiEP5IP7MQo1b^54JP!ye1L*5`-7sLo>+0__@C#(W01gE zDHl>jedfVepq9`&Y7n>Y_?I7D0>m@>x=MhA$5JeA@DQ}_PseM~xM_a-GbyM|AI~1$ zx7z&KQZCcn&uscHz}s+B|*PCa09?=*x&779*K!KCT$ zOVUfMK-#kT_=Gp#%-G$U*d#PvhDeD)vr78LMb+G(WMO3Y{hGVm6Jad9Z(yE7X|l$} z+l^n9nsqzxD1F6BF(vEAmE;P`<2k;P$Mzq&GQqDK;&k*6ri|W5h%({NVv`;+k;h5G zV=FNw;r2T_NjZIeec!b&e+BQ%&MHsKoHj~aS0piG#Tz2M6kA0FJ2j$p2?yEt+Sj-h zutdNX4=|3A7T7&x(TG?AR(v%KHsnir^Zm~^$Y*fMMmIwx2)!y>pnnl?6kds<#a@W+NM#w9$ zsA1Pj5@^oyBaM_to3EH1K2OA=>R5b47yM7=qCk^&4-U&st!+|tM9ho))vavsx;Gc{ zvlAJ~S)!8X2N*Sg%NATe>HxAp$%2~Mp}cC$UE4%?iRJsV*C|>rW#ZHuG%HQ;d=yA=p_*Ie{Q}HSyT~=Qjy{+@XOYLO;l{qP2;y=u zM@vM~>57kJgaj+MQ7I{ZVtXF%{jXqP6pm|s)>J6meS0DfPoP#3WfYgiW@QXh zk3fF2^s*!0<6leiTGq_z;k0JvmuMH4w_51D0XEPR@v=QS%5Y_53U)K+SP6I$H%0hZ zHO*Q=pJp3jdIbJ&YTtn3Fq&7$yOqnS9S;C_zpc3X%QyVpQ(YOsAbZUjOV}@B7W~bf z-3k4ec~+)X&~+28H=wc)dNu_y4oh>t6Lb5cReu^_tp4~43$%sYzn9b~VIYdoDcD*$vK8l2DEH`@wS za;_wdB`K6lHc=l-oZZRUdhHQQ`XsH}hJYku3kPdXe^uK%H>|qTsX?dJjV}-THFht# zA_xvIm-05eUFY(vUYO_km5?U=!x^jV&eN736J>xkTa{sEZ&3u26@!6;$Gu!0L> zx#Jzkz@i$_1h=DX7)3B!u}%%9vp9bE9TK+BNeRZZ;e0nObSt-Q-uFBUn%W%yvRic2 z5CsZI(7_Pfu9??SeVs*22uQYe&TRvuj}SLs22fP_JYxCPJHSZ!St#XW6^z^Q6LmUd zSe<`wYas5)3kv#F#Dvs{8Z1$iM3%%2XlL;$^`?>JI`Dy=3|~g%cUl=et}ER5Yhh_z zo+X9hH-1v*N=(!5wPJE-{rO}40IMhXPiW898G5|nfM2np`eH?5C{TN~nsMhcxiK)M zX-R@|Wa%T^2nQV6_FzvK>K{ZW;9U_nmy#aQ>~0gK$qh}KP+)o=uqa|UM7t~!`R`hF z4&zuTm%GhnEi00R&~W%w$1b1IY%dPtxfWGl0dIT;rDvp@V7ee?0${7hya20k>;&-< zPs@hor?23hlfAKH;SAv6Gy}{_S3<{Pt2V06zyua|G-F3N zcV9Q1xzT?mp9AiepJ(MQ;*vyr6@Xk^pu3x!p9cH%(+i7~xv;NySpcq=I{-1p7;j%7 zpqXT$bYIe;Wotq{5@FRCWSRaBIl`J&Ss=joFAU2Z&^hK`=1h6Y2Z+HYQtnIJMV2FB zWl(Q-X3bES&f?OMS0U{yI=DE#KRjQpt98H~onE7)VsL47ih8BC8+^I)7 z*p!!8PvjF{==_}N2O10W@YpgGmi$FN71IvK_g?~(p^x2lC~SGYKYnns!-^Ao`o=nTH%s)S`~=N4%*S-D#p%7}N?1s{l7Ar1yT zYF~MJ|C~l~iXWSvf1Sp_@O_$3#T-h0B*>B$XZl0jw>2%dkVV9i>Ts;x69tT>y+;i* zF%G`oH`%GtK6`@$enc%)9+{v3%U3Bl`o z@@#}Xdlk8FG_hX;v_px~>Iqh{!B-$SK`)gJ;z&RwY_E+62QKzKjf=5$s)VIh|4aAq ztv}ULlG5VN#^elJj0Ph1N_VcQLYLedkYJoMxFJ;vYpKWmaNBWwGNm0&8ohQ-LqsYU zGW||9xP;ZOJJ9PQ1pw8uE@dw&_rL>7b(as8&R1DV%VDCYQy1RS%TZT&ImYNYm%@LU zVk}`$_+g2Fdf&H`Ylw`>>S0|ohE^{k6CKf9--xYFMqC40 zzL%`MK5z@s$`(fIapv`axN9@xI34KOg?wreXI~^S?kJOlz%Zj1*2aeZq-4JM!5L39 zW?2IE!c^fb1G1K8?2*!lM0r}WGgvt9iR@|&(bwF~FNQ}8ME z6iZaJ1Q`1Bp*1Kl@&EELvb3eoJld93Agc|Kf9h zZ#=)sYa@8$smH1L)-Uj375{nZKEXH54b^VUf@J~# zm(A<)E!H`~nZ1pXz-HRFH@R6#3SqJM=Z1~um!@S|^cn~8DuwI}NHjCnVo;HmO$o&D=SEW8AaEYIjnNQ(G}3BFXI1Q;1BY1nt+qrVc4?rW=3R;P`xkFi=~ix(8FcWR!jZuQ25Zv zbbLZqm#=L{vD3)zO^_Q$)BtU_cKD5k zAhvp16;i8DoJM5Dao#e4$g`jC0Q#I{nw2jfOgg+|BGlZ(QwX-3^z6-TG=%JTUWM!o zx_mC+P)cd{XB&lwrp=+Bx{clQCp|g9ONMA)~W3E0}hT0Vf z%^qFhzuvvN=oq*hrHP66D5#$Jz}-zNPnIOK3~?Mo>c^?|4)YhL;*Tf)n*V}7F@W-~ znReRFw?KpIsQ@Lg7q}_b*|b0GX39eOCc08INEtRMl@Oy#q9enlZl>fu(<7ITs_I=5 zh|_gIBqxzqCR2&bIyrdks36R=K`H!a;a19Thd2?A2_69%&4|;!yz<_xO;Rl}F~<_` zN1d7u1FO2}lZ7!_|0vG5+mvhtW3l`R!$Nh5X!@l8XZkIEZoc@M zXA{n4t0M6^TgJiRR`ghlaIVKaHX<`lUzr#;`9wD_k9K_2s}=)_h84SRLofD#^|Es}ZALHNSn0uZ9$t!o%xZ@o}B>=~?A>4Aawg zHWh(DBCac!gQmu0JWW&%DU|6Ap<)v6Bb}wYFWW3&e1RhSGGnkiW9=bFEY~KL{o2@I z9A`xC%KOZ~B=Rtf-#$148+|2n_r3jtalhh17PnW78Pul+7gF&Kg4rtHEqc43aJaL6 zmh@0~ZRGwPI0eG8HmoRAV}ZP;)vCHPb?gUUP~v}kTbQXvh6Vs&q`v8~dDU85fnyf= zt|jT(L@+R?{v-(rg@3M0Gf70jX)2aK4g~l9G9o5h^2s4`q79?`Raz$H92=v{R5tr* z^Ps!sy{1{K%va1g)?Z{Ky`^B7Kx`XoEOzbIpBX(n+TgQ8)hQ)c#Bx3|qv~Kd8bVN<$PS4sosw>YDyI zJ;`UjRZf*A(}fE?Dz-2Vc{S#hmoF~2Fe>1NXF{NrCCRN2R}X^IOi6xJUk;*VCfg8k zk@XtkwXC9N?vgLq#jzlxSy*VE_g>idwawIHF?mGj@@WBq^3rr_Uy-XlCAhX^R z8wC*f+#*~Zejg?deR|RhYNU!HocyNhNuzb^^ARpM8COTo)_r!S6U1l2|78U8Ukssj z87UU~HP^&JApOnXw#go^e^QnNXAfAMT;p-tVk}2QIK>@A700-bZCNNnUMlBK9tmE( zmej$(PiXuQPpe2w0^ZmjUWB$#jo|;6MU-E6dc4Fzb)PQV>@DqJnE{E$4`Nl;-M}{~ zut;36T~vEl8w4#gUvh)z`QxC!paCu@Tk{X8op>l*@4#uFjU4zggZOxWZx0%@mhyl~ zmQ~Xe9x2T$L7KBTa!cDgqw}aT}J400ER+qKAQ-Lbh@H+k@y0=;1=6wiuo5KK8>b>ZkrU+INT7#-JO+KPVo*;6Y~D zF(+O;dg0#AGS+&Xe5ZE6uGDz%tH*tkV0mzHfMp@+bn|56LbAr$7qU!(h-gP-Pp@}> zUA=gAm2k{3r-&HjOcK@ju098i&TpeiqeYmltY8MXbJ>mkwT|HjfjmL&wxJ9oZD#!m z-QU_I*7_UUQrC*__OV}>E;_@lg!?pAdysbW#Lwtlp3KL}#x0n;wAX>%Qu+54gRU4DO~-02VKVF0)2gj1GeE6n=RtKou$Z4K^Y zzGOoYrH^mL7UWTsjwTGNqS^_>&%z)B0{!u>fd3TPbJG6LRCzr9O+OI$Px78qNBNu( zXwdTyOT2Wu14ttSldbA|Swg^7{h+&yj{I_lu1f6d8mR&H8NgP2a6q)BBsBMx7iEb_ zgc6s;P3ZG5gh4!zSf7U`+NhQUEY40Gn7{_KkwH&`e&5k9PXcUZVNM6vC6a<8_7w&F z%(4GM0&q|KMM15RoTBbY2^X{9EO&ea9*$tU=M`}Fr;L?e+Ez%8#gn1_QzAsqdHco&e9LS^q2xzV zrA+9t9Iz393+97;y}#gJt5oisP)vqDlkrEmp7}qi(gXyKPDaYG6s*E-m%O8C*Uair zoES9#E?*FZGAa3rAt|D>s%#Q&17y@Re>3di^bzh#eVFeLhRu2sN)n?SJOaLj{^5oP z-$?$$FMnz3e~&N;rA^)682w9MAK}BbcYOX#gn%t1b5kdt7xLMuzgIOj&NCf-A9*Vh zY2lZBRvBL<7R6)gk-+xr_$ZWo2MUY(LRCVdRZ*yMSORI^8AWZ;%9t!VmrSd#MO!&7l@&??qx6?~F&v5R<7Njo19B7}) z*RDN|j+XbQB=i`X1_{7T?-B^X)?bx3Vg+Qp-GGPrC9s=4z%;Jyv8c;x>;7Vp{@iv; z&q-wDiaMgWwlDz|*WSR&s109sH$;mfEDD(P~mHX#cKT3z{F=z1(lsLTH zFcU$@RkKjv=9={&{)!u)ILW^Uh2Iw#p+@@{UZhB7;>7O881~x$#|Ocl4S$;B&fhI9 zAcJrH6=;}x_*&4ZNGDFK;R_W{=RlN_)GlE<95B&;8!7jlp_Gm$vr%GL6KMp1Z|jT) z+dtxi^LYBdDjzA;cMRk|3LcBhlGwYdDMwX89BPhQi%Qmogy5I<3Uu%iH&~e2-iT0g zjV=xRky6V5oM?=MVm+?~k5-<27ot;_EXxRP1175!S&W3n)mGD~oHSKJEMNF^<;OoC!eFBvka*$Us6{pnzYsNLA%6UCPnEIDW96k;P_fuo*d|ozI!Ilm&uYO;tN%m z(k0<_Pb-M{j5ll%`)19oPZe?fpKp`Y-XWDVy_@!nhRx>32Gy~t8RRm6{jg4rLqWrL z@87F7G8}b>T7nJxt{>#|ilRkS^&U?l10|EyHDZq*myK4JJ7zf_rH}I~+6pVeK18eP zv3fIzLq+3;G6})MAJg0NbE=W#qX-QPIjZoKta605aKyh}2vsv^-&%U&fTsoFViO|= zG(vONhjD-_^1266QkuXxZ2_h(Q6{II$v=&sbv#`UA0F|H|3tRFC}AKjnbPsh%jrp8 z{}Z?gSJ0!yXe=C~@yc-s*erIDPSNM%i__gx>6ch&;<*_-gjQp8B^87Bdd|Wmkn2m3 z#Yy(8E(1HPzqB$h;o+kPApSTm3n7jXX&;lhGXW$>J9QxGKE-@qWx|OEs315auraWP z4iR`^e!_L5g!}5P;D7RG#G@=};7H)kmK$xo4*Bzit|j(OhB~wj5$oL0U+y?))9`tt z$|(X=cdW@Q0Yy7VHhCwG>Rc85A@;Lg@2{<7Y80e|n2#QY^GxEE3!>6h3qnQl+;m{e z5kV5Lrj8@HQa$8CnZhq}4+0$axH6<#ctqs(r4VKHtbJT%YNJHz6vcI(&jD~F*D@9w z+qDieBE3hWC+Y~=mTq}jr01wjfSN9L7HAD|kbs53a&emb&#z;Gw78b6~0~ zzKcWM%2tyRW{uj;I*6n^ZJwv+wygg4I}W}@)OQEEOf z+4C~;0^-3da8dl*+G_u;$AK?qm~zs=*4%wNIBcN1!bOXwhSTfR2$3y9-ukzP@HpFd z57x%a(t19}2g-2Z;nR_fPJ|$9s>DJ`b^9){Lo_y-mt7RkPTgl1Msle~33ajb>CV+3 zOngWFtlJEJuej18W%Ij4$bj&DC}#gVkzP(QfVv_jVZus>;fG%#(v;j^NVx*b?UZvC z)o9=vN9*<$2X~;|go+gXjdASR1&#&K;6``nxX-OFJ&#tqyBZqbSr0A4n*Yz?y3Vnd zy84Eevu)bKl>AzkHcG*`x#ghWF6@#$VMU?8hZYtLyf@4x^rghl%`S9TrO#irwElX$ zDIAWgKByl;{GZG?`>IA5^|f(k;$sSh>xloY-52t1U*UXXrLO~G(4kq7YZYIEe~%Uy z{B;5C)N)%`^@Kd%ima6xL!?0A?4Z6yOLyVgz7DS6rGM+A;ijIkrz4ZY#1Nl8$>tL2 zvgKESv7zke7Z}U=OmY$J^XF`hA<~ZIjNy0Wy@C@=rr&mx^+Pw=?{L6>4+Qb&4Ta}N z^x;BmXvD90Delw?GH?!Nfy|>JtvWNDLr=Y#+iRo?;!HVQI+P_&4y=c>v?7PXyT~bH72dRa&?$2hW#g3GT z>rz$6Tzl_NcI81~JVLMDCT2m#6`w!4QiK6Skj0^vgXBfKmJmPmk9{m5YOuwo1Hzz* zHa%vz7>&=lt^iJKs13!olgt%y36ZeNusSANRydq+(x5CEJl)ZLU zn$)Rdr~(xjlHztu=N9X}$Vl1narKAM)l%A`>-`-Q`QF*3?H>Vf`VSy;_>-p|tS_Aq z{MO+Qz6A6$KoXfkJriQgu%Hwud#;v(zl_)^-#8LlC$$iyjd}Eg1s}}J|eZ+VAYNah<`0Fr<$82SR}$7K0O z6Q(%?daj5^uZ{UsaVY1`a_+J$X0RClZ6buY3hx*yp`&l!B};jT4SA++g1?V#9)6Yf z=hf?Iv5asPP#zD=4X(9lngh9|i z%OQ0S38LM}g6KmV5~EM!&HO3?Z~Xh3J8PZIfzadFUBCsmd9& zL5K#vq>*cX35g=gb!$lwH2SLaXm$>Hu7&z;z?S11UyLx9mlT~}kchVqOkw`X$sXFG z)+Ut0;Y%XBDBYfwZ$kR2S|9Y>DK(LjuytQzE;F;3UcQ`Rt6g+Il35s0cu%YjKlPYZ z?~bd>E5~DS4`l$SRWEc52DOatH(pVeZ00*r+e8CPAkSNB6pjiyfjH5>A}O}<=Ctm5 zWB|G3afp~D4YVauTV8D50&zFiL}s&Y(>p&0Zs1=9W)Wx+rb5aO{ln6~^WlT11i&O) z-3BLVbqnOYt2GX&zwx=T3Fv=$Bi4yENvDdFgtW}snznA4s7Z_?ibH?=^>_}6qW?e; z^1L9icq^6JIQ66*ruzVik_Tn%@eO|MN$H8CBT+Gw{WK)z+=QAfchPJ>^s&r+G^fFv z0PHhRGSx-_zjSrZC*-EFZzKbeM8^0J5nZ>+iL=rexU#t5fw>f=tQaHOK4hJuc=1;M z)5-I)7Zgt~DdB_QYZ_*+8QVj!L-CfHM~_NP8F@Puud~uv4Ze#-V+7lp z0Kx4|Ws-Vp_Yr2o)OaL|PSD+Q_Sb{sgPK}@A^wWSmbZ9HJ*5GQ)u}#wiHHSg{v|{n z_me4~FB#zkZx4KihtL-jn`)IZApdM{itCs^d3?a553X+avP7uWE`A9ZF`2g!&{$aD z@otRQ;RS&-hDA+y?qX~!`p&b14yKb9U*k8tMQz+!dGOEPpqUZCCOrFzLCW_=0(QXE zyyQLW@q=5B3gd-#6$(X}#Ek~ks^Vl2K&m7wWL zA~&qS$Rzk1GX7j=6nUHL~iU}%D46z|9t^bUKug-Ms_-zT~XIOxal677i3|% zW}U4sd(fF59$La9AggYCGoP%s-BK!Gtu~s|%(N8S)9K~oW31;%M|bnwto{?t6&u(xNQOI_R0*E>6PSfd0{Fx8K5WlhQ`gW?>G8bB3W%O?8-J7UyE0i zLq7ebR6nd>P)Z*9`P4byB!RoE#R70ZhpNmX2yR?#+(dsC+;Ix_AIA<+onX>a4U=Ji zgtEw&7lH*^L8==d)tZ5B#h+~-P)jinw(ym3i7Bt)Yz)xhio5gayn=h5{aGZ3aRY?! ztLv82QMfKc0gZboY}4f5`Pvs#9j>PbtI^(mxZ-!Ry>GswkAl2J5Yxfgq^TZ46B?BT zLvlUMuOGR4C}5S|V|A|g4B{jR@8Peza^^%-J_Fw(V1XfZo(SI|*kA+%pgima0`M*1 z4FUx8e0mQT`>Tru{_oqkX#ZaQNB=uS^soNkM*rwTK>z4JpZ?zNLi~TV^1nIJDgTe_ z{|772rv9fBb;ke3^1oU6KcM3L|Avb2sr-L-7~Zbz1^COpQfeb}%;hZ>ZkGMRFRf7B6omu_n;~w11-oWPa;_St^%uWm6cR#Y^!V zMc~^{u(*`)Vrv`g;?n=CA>O`}_W0E1!F<7njEXitkRJ8l_5sSJ*5>ANf%J#HjJWD3 z&0b#3*4Ea|UWKRt`{!s=z@HPG-;isf%c}*(sHQLBU?H3)%<_!0*SFP#J!t+1m5Sb< zKgpXaI#TkUJPxKSgBf1L(E*^=RT1TA4kW-83#5+m4r(HF(;9 zGPCo{!MsxGo1A;`Fjel>g~C$v z2hZyIEiZZZ;)!qdRnFyCS9iq%%7vL2=s( zv+_{a?KPaw&!Rx2&!P+8EhT2=ijMng)wbE6a z>Q-~2htsyEa(k<}c&jDUDd@tlzlmVrVgpCxWdN+1c_US=erc46@~j7X2i@bBH+CZJ z^mnnsZ(_7sLy#A)mqwRDJ1CQXaW%xBL3gh!)tFWWY`5M9c7W41@+Lbw&WhXu`Y9=R zYPcP*uQkxT$#T_tEB6<=r-G+e{O3&Gz5bo8fceVLf1FW^_nwVUtKnj!5E5LKrFd_5 zl(<#>;#=NzZng1+QT*KGBMlF`@3)KnJG zJIA*Yuk2sb1fpe%^siVg5yOlQlVJTirjVwEmbveuV-{1A+ZtyYU zD04T$^RVXb%DXgK6BA6S{H|Ra<8m@CYUe|M^2@*CR89h-l8vPq(SBkZ`m3uq=}F>M z&fPdxI#7|LU^YxecyHU;(7MVmk#ih@6W>!z8-v8oZ9V%uRamuaVY`rZ>pl0b9Y@Jm zS{~(#CV491I*;bQ;4#Zotzu>+ROOPKR}$o!aL2zARA||t_jFTD%pE{GOd?+i3N!_) zQy(6N5ld*eMvt^FHZ%}-#gEMgQ1#;*ptL@sT*`i@ZY;{Mk%R-FWwX(c`3#cU5XwR(G93{!rozM#Tta)<&aba_Dg{ z87{ofxdm2EtC{>!N3mA{@7`qmG0WipE{9?`tjnB&UliB&N&fvh83!J^zkLR4q2KTU^VQ?n{! z`m5DMnT4x-5zejSK8knhZJ%O(S^daP`$d%W$`U$Ett^i1`e?q{^QqTo9A8G*!M8Wt zl)&g+Zpp%{2;XZtA)I@(&W+P4b}{5>CBYNsM6^*ErnfAjflkN2TSr|*FxY2}{5tt1 zO+5FI-CvzYssC333%P5S_3Ydd7WAPv^DNsVEG@_Pf36LK(8l<(F|dNfL!J3J$hUG5 zscf{`mnK}BPlnTtM~ut;HU#+}!|0IzIOLa~G%Or4vChU(bk_M_-tb^J-vn6X$M zjOQ+ZUpROxF+jGVy`}2IamT*Y?`wQ~Kc6cK?;mJ@Q zE*D48-p}`vE!M9+@E<#iZXU-TwdEaim9PO|mtEuzU8l3Xo~cK zeWodH7sku-lVi_9T~g9lH+qA#Mm~I<72IiSalhaBu1BXQwpViMNYn%VNoo@$-JeuC zi_yKYby`~pcsEehX2`{W+}A6E1NQ#wK>MJC zn>?grsKcm@68st74_LAyx#4Xw<8m_HXg|&TzP&Pig!;eudds-Ddgpx@TBOBUytq@` z-CYV4io3fl?pADZDQ-oIyE_FIFYXSDdvS+ndw+k=+y8mP=a6JiGD#*g$u(Dqxj^;l z+2`)-UqSVO?KHq6?L;=sp2j}hS9Z5-2HDhJ@PX2-~HI8edl zR8BlLziNDx#r~8igc|j#1rox18-T=R*?6<#wUr)-NhliMVHaEjrb6?@ze2I#N`f_1 z+r1wOxp;{bEm9=bwUsrnZ{l*%ijnw913XUtSwTlq<3>L9jgDv!Cm8g5=HjS%Y~YO8 z;4%xl2p$?&|1o-|&JziDh7xvBB2Av?%bc?bJ@7OBW8~lIaq-^-2?a1Du{B3@8}uyzd>0zXU{n;3fVd zMmr%#C{wB{I7NN7onKH;pg^RrnrU{voIi^a`|9@RF4nW8k09gKa05ixWgBS6_->(c z>buO7kbws$3n?M#@5wh@kL8~3o2NGsq$<(WL=n!+Q|IK&=r8E>5sV||FQ8;BB) zjT2Nbc-XjrvH0U5GxVu6v?Ohws*3nAfCH&Y+)(LK{p_zSX4H39BgHwYv!I#T;S17~ z76U8Bi{kdr0rbFwgp9vEvIvy3r<`dZbi1+h=8+r+lNlEQ ze^*=VI=t`7=ofrM`#53%fuBJZr%t_AYD-)+)U03z-YDKCROzO6A$c4(5ySjhFGnku zTcukJbdE}mg3<4OdEpI&C8JMd4m{kS=-jMyT#O7uj@pzJKJT123LM{mt4FLLZ)xU3 zM1Tt23nYO@g@)BTOzotu3CSY=TQYofs@8@6=zsI61Iqhh-^g+mu}`%5>G=Cha!Y)@ z?=v|_q8I2gk|n4fT?QtX+WIP;#2XAQ17C1~o-W26CDS$2_(A=5H+~;0b(ZgE+6d72 zqBT#6qtqb0mvGgpAS_Hi_|c=B!xzslx*${flHs52CM0+VumK%rM4O&8K*t#(hoIpM zu$;9NInbV3sRRBd*4}3@n`b|0E}isu-^>!drhQagbXtcBf%@@swy#m9slP@tuT(1? zkm$4>haLqqjG7rU*S|rZHkg|k*-o}XWg|kfo~PM z{yHkHI~;n1cwLY_^$6fTHKB{6_VF;PGLBOzc^Ww<$NU=lB)Wesfa*^uBe0 z`6&i9>KdreYRiyL!U}1CvT~ydxCav#y<_rEV6L|=IyMlNw2{E{$M2`{bo>&0!6D)B zAF5Gu>RUc^Ait(F!Am>{lDl|b@nSw+aJ3HJ(9 zJH=9s2y1{S#PbU~Xd2V5`f^#G$k68&5%6f=MdT%Ji}}=(S|y)VNEEHR6<-wn{bJow zU3*-n91tF2;<8ziS2IS>dowBN)8ED@yG0pswanGit_X7beSl%7R>cX*glJD&KDUB_ z4@SHGX{nYl4nh>N#DTXbODD>BBj1Q<4HJ2d|Jba2O>62O7-7A2C1mWLu{rn-iWZFs zoGHJ+4b;vV8#&r>8WM7<_ye?x03ILSb2P`TuGEM$9rQ-(=mox> zG%Ij{82Vb?t7i79gSJidcfI4BRUnL`7oNTkb0Mb^fc>)HhQ6KXl!CqTyzsxc&eR~U zd%Elrdb_lED;=6tXCKE;*PJ)tQYm}t(^hB#f>r*Q6iy#|2bVQo2iMaBe?5=fQ{7vo z@BrytNzP}2<%z#Qtcv@v_92h#G?vsdG$W;hChSedAt9n^hKlbQ_i^?#G6VdK)_!2C zCbu-11Y>$Zb(?THl&MFpL>5e}usuCaSa)1^Q!|dOl;P)beYb6y9($e`7%j_$;#7(dE(Iv_H>iS3_$!7gwfF}nfh;(XUBC5G!Bn5p3QExJsxLN z9j(BFl4M_bx?gV`yS)fddnvBXbA&_Q#7L1WFLBZHOP@B!{clz_kU(raj5+c|ouZ)45VD>p~%3q~muj1nKu}reG9h@>@rjlPWf$@)d==BEcvI zC9UxNDGnbA=)4o>gDRu|GZ?{P)Ak#;@Y7;I_&x7ey*;B8%`|XwHq&*R1N!)dtbI7O zcB%a82O{%(Yh5d!l6|3QDl2y`G^NxD@mhE6G%)#(Qw~(+(tR9S-MpHfE>%1@-J7}} zi!C25%=vX>H<~ih0tSP(8>**9ot3WLXxNfkbl()TM)}2^bVYdy8c0y_L~lxc`^uy=rWn*b zor@dK3?wD}&v8D`S>&e9Hn4Pb*aqZaGEY8!f`DBoyEMOpwcRyCbuy zNAGjr_dMGy|Nh1Shn@x=Bg|aXy=o30phPtE>v!{mY(P7K*$gqJvaxX1LMPzuOz6H( zj)eS%#&yslx=EvpAwDuQ7K{AqUzOz8r|#!c@RqBumxV?7$~}w&ZDyL|( zQ#B&5PP~p6l30Ye^7d~GjmXE41e+i+l_cKq${KO%@sBWfcuy9&m`wmnZY%gXs@MwG zTom-8;m=uw^gW!=lXjAloiYX>%icRyO+`U_2FL0W*`$^yoRYfut=!#r1FtU&TmDB* z?SF;_tUv4dzw01iDrq>h74()Gg)Y_bGj{5bon1q5);73rS~FaT&!I|X>{#pg7h+2| zG&z=sFW2Vj{=#NU~Ibg}a3RU3qr8y7U-lnt8^wE=!v_#{$}81>he z02eh1X8bIN@4}11wYdo(WBA*RbW==sf;V@<|FZqt%}QzZ;Na8&kh9lC4T8JEblcy} z0yQJnLQeb>(!0?z;}q2(&PM5h^BbhSn}L1?YiyaTy~v*hU`Rf*?4^VKglrX2sjB7m z?D{l5Cqy-W!;9>PC;_i-=gz^HjB<`wym!mC&GsJ;V=jmL7SqA4BcpdP7Kq9Y<|CTa zu}05ynF652R23n6J@LE6icwcHgex+ezA>Or;UilkY)l91 zho`f;e~pA1i*0~YScrwevo_`YHlso_8W0!@D#?4t$~yrPc|EQG@1A-6F#<)h{5?DJ z`Z=$6thqjY7T#A+k3n-0{qveWOH!_NPS=sdhAF%gnLZY2G$Gj=9z9{xP!QRf)uYC} zx#UkiIrh4?T^?MEvVB8b$7P4T+1$|o6TFPN-GQBL*`Q4aJy4T`jr|MTOg)*8v++TmlM2f>*OgbFwPi@1T>`qXhRo8<;1FH*6c{E$; zf!KeL9bG!ZlBNU)xw#|i7>5%@-FWb$*+9&*P!011KWQOk9#7EW);dM^+QBo&@rl`xAk>ELZAqC z&n_c!FVZ>0=Z~=W9C~5Y_|GrC4u9e9-NfijUq0mP%wE1{k=HwD5JHhq?l(o&Lv+zl ziVL*;p_>OAy-?gOhvJWRrER?zhUz=I3gp2@!5Fi|BRqBk3CIM1hcchXb!(XQm$K=VGYK*CA0rYtu)7ZG8#%h`T1%C4tbyT+-*MbCvo zoC$yw+(w#ztFYNimWlq+BjKE0_)|X(u<{Q7T>Z-hT_jA#R5TA21YA>Qctgp6S)CZ*aI9C6&-0vyCn<(hBqbG0zI^h0N#Fj@C%=Fq&U(+&iw!1fo zXP;fn{0s-g+El!3Om0cZ4f;QYpsDFd*devB!QaUf&5SPe_r7}Wt)2l`TdX!Q9Pm$){2b0uEK4o=NzJ@w>UiC+zKV>FlCX@CW!nCY&09B_7ydj0H4p09MEv1kT~UN_M;!P- z&Zy^iic7mk0;gd=zCA!-dsd?on8g!uSsOGh-^5jSY|3si1s-N>qS1&uvO!y;@F{JdskBbPZis0uPg0O35Fp@x);b zWB(@mYo+osB73ED4tnDWP*VL8Sd`4^84HBfe^ED;y$c-IJ153^fCN^0C6~ji8rZ?b zhGDD3HWb;_dr?Ce!sR1Vq#y98V%ttgc=1L*cD1$6!ToB$ zWqorq2=}^7e<#ibO1dBCL%joy9k;G4U|~AAmra`HXJMir+oWNVqH^qiT8dahEwyp; z7Bb*Ulia)~CtOsgc4=h?6TPGt2i&~4q*PqEqC-y7?YfYaNNP(^U^r@Yw*bK?1Khs2 zMbdZqEW!?<7dYA<}lI<(zi+7h!YjYwAdGK*4?P z@i#a)kRpUJIVUwDJMuAg0IR*+6nP;J zOeu9D;Cxf}ZjUwv9!g9V^LjXU@BVZ3*IzS1^Rp%XEc9gM$5MMHiLE>uppwsDBlG+z zf@F*y{bW%Vz@1;;DI;1`LusN(ePyk!$Dk?a?atrKn8|z($x&w?f~&*fq*7$S-8!eM z3IyAF{DkuCo) zJ+AmE&<|Ag<|r`;THAhjhhpIgb(B(mhd_;L!vBowl0*XU(!T67*~+&+?wwn?0r-yJ zUe?-gM;-M`>NmJ%3C}*+C_b%ic|YmaT1@@Ys`3bB(?+TY>sp3PQpB@8bbvn&zB<@?u_ zx|$}ptujqEc{Es27?`5PX)2}bT7tk}FC|gV#Qg|dv?kJE0-Yy8n8J0~4o8K*b2T(9okTo*C@!?bLdPlqp`Bl|e$8J^GbOp&2ZfLR;S%yo6zU*6dCFIyFZ zz_^SJTaV%})0C#gl@*~i;d5~XR`Pfu89c(+nd-H0%pjC0gC3(Amy-G)dsAKew}l%U z>sU1S>RbuYu?-KMr+&?Kt$9Xj6&mA~g0U*Nsb&s*B*+mrqd&Y;p4UUW9<*~}CB+x9 zPRvkRdD2fl-0ii$jCJ}D9d{m<_&a;X>4(QV`9K))mEeS2tofPA>lsuA1kVJf$C;EZ zV>XK-us@$2)H8l@qoG18bs^DdPU)}x!s>BAhpAyyDSg*c7|+q*wQ8IiyEFDMQ|s@&1#wLrbvXYQ_hGL!I>TfKKosKqkJ$oh-3l<788y*OQ8*qH+rlk*%z-Y&0}Arh}d!N%VD+3ZdePO7(EoC@c?)0SkBYWd?VQnE`pk z4P(i9tA$3J1w2j=(I`_~>_8G*VW@;`uRyi*cDdJ|YN6^~viqO7c-6!^3GPP%4qmQy zB4SkV)~VvAbpW(k8zPVh$=c4P`mk#G=Y_5$jA@&N)vuoZWTyO8+(MVIF_qJoT5dm% zaOhcf*Op#nb2QVUrid6ZUP{Ly9(WdEM)ow!fd_&}%Tt+-WnxR}gRJc%Y0iReS^C>J zihl}MJ*`@c#Q&x`ExTG~6ui=0kET${rPi$ACKlXhHj5T@>?`q(J>WaI^$;hwZ+32n@`#@CVlKTEL63eL8 zR4hw?7Q>!=jAd4T7rsWRdbK=-@RJrM7;t~xoF>6 zD|DhsbZ~ZHp!SxWSl)6$_WR;l2sBm{eu`xzq-IoKz3q$7%=KC{k{1Qx}ZWh5y zfyQ@Vr$-d-(J=Wt z`GHQiq5UK#O#}tVj7)~T!;}H{$kom^WurcE3$4%HFT{rVp~l3bvq7LZk@wKlExG1j zsw+0RXBCR}3Q+XOzu)YSgeD$+Gnk?Nq z4PZs*=%S_Z2!jGmRwL$qT3&}Q$e#Go_+E(u?RO>yFpNBQxS;pKNxI_;QIQ6*7#Nnz zRQJf9L8hkirn9So8Hx=uh>PI3+3D=`PL?6z(KGX}Ht=b`LB*%vK%qD@4Sow#)0Sh9 zk<~fIWo%58Bnn)hfP8VWqWcuXkBW!Rmlab}&mrixPRKCM8ja`Pz13o2BGtQu-)WTt zMVjJ3``m#Y6LC{9q9xGM{~p-E*L%u_7kB-6>d5Vj5N(1}rm}n69`&B*p9PW?N{X;N zNl8rT01*Z6BEnEqalYO=&Wa)9{xE;jK$T+HzyR{oQ3%@$EAdzJ8t4KG%vUc_g96zo z{O)xnu>M!^fISD2r1)8MZI&?Tgwj!H?8XzK{H1L~aTRI4$wxP1#J%o~Vh zGUaWd6(WMp!~;(-DnOZgl0-(2E)g?U3HL4v^G?dX%&U^>M<3arak+nTQPENJ^0XuvmM$z} z<;fWw$|0VxULDb*cG?3{Ely@fA(&Fr%>?nDa#^B(5~x{W?JiB8wvgMMT>K6HjjGe8 zbYa%7P2I-4jhfBg%I@eyxa;RA6;uQ-6YJ@sTyB+q-DE$}(Wp>H%%nugLR3CTA`Rdr zM8Hw(e+0le--^MHIBhB#4I>R^{4_GIENg7Kp6TcD6lt^T5kJK_-Ep$_Ym};VSJic7 z%3ks4vL)H5R~G$>?X!@L>*-H?`8=_{#1O9WQkh*3jS=(*ZX3QMuUCQ~5DE6P{|%%O zV-<=F5)0EI>Kg*^)F&h)P%|6n3E;5Yh4yR%Xmhs6E-^s1)9=b3Zbu~BShCZ6PC8Xl3}f{6+Q_s>ciC=3TVSTxnz(az4dXw0Lky`2%r9#CtA zaf$AXFOK#yMjaawoqD(ao*>6tIfPw9$teytQJWh0zQgJA`j>|=(T?JsHBn!;%iii? zT-qVA!%oa7?!eA{gvStomXeaA9*_Ir_gG&av584PncQlU@n{Mt6XtE^J(Uve509o= z0kZYej~-vSmp|Ec&;ebH2AM6TTy%GZg4pB_;eRp|F@;*7=l#uX!YaF)KT z-;f~%u=Lv>A=DHR4mkZ2f76A#_Xy$<;hW;A1Z&?KzFgNUOt9vEK&k@|4-Ne}VUkvB zgNM1om5Fv_d*=_0IQ1_xS0JSV-ujt86b6+oKX;&XahkPL;&F>IL${*LfY)V_mMGTi z$TJz)6STD8d)(&vCV9Z%sU9Z!=hy+rtPq3yEKiZE=U4*u8Hri@b~De5*E!ju>IGqc zZQ0{QO0hLgbSe9bJ$0;91D9)ZTqw7x|H)q1B@o#K7vI*V4N1qEsQ6c2-l#MS2IIkz z>(tkYJV|3`pA#L46}t>jJxb@r172~JpY!X?Hy)yIRA<|^`C!!5a^QQ@%IWgH*Rwf} zr}Vh6^-gZH1Zsyp3Q9@^qQ;h%>rEr`6R<_M=u}0FPdu0}TYw@f79+v~k+i*&)@`Fo zZ)kmbr(z+H&gQt;`C|>MxRoNpxhKr`t17UUxWDt>dTSK7cueCGsh~N?r(?6d4bGPr zj*w!S={}QOwnkWNCNK_yL6IVJ6vO+hyF09uP2v^fyz^FeA}b@SvVTp= zH(jm>{PPLqV)wT5JhtGN)#7$GT3zLD#m43?mdGJp!;ueO>v9h!)oHu~~T zqB;VU_dcu3_waj9oP+P>MJ23QN((`BbTlInYtSJ^LGSC=N&W~lpBnI-LyqMpyXl_D zR?ftUL3WG&4_=lH`^r<%3pSns?}^h|ys}R2KT99BaBhL1OhR;1uug7NprKFr*4_DN&7?-~}Lr=N*-3pmQo02lt4`%B`1|E+KqP`YV^vIm9WS^H$QvcX^S!6l- zetgYkA{Kw4PIa#eC`cqS8TdgYb-jG^&~ud4ST6%{@b%kA3dnvl^4!U+-~U4M3Mu(+ z(5%-n)K2B#>S^S3&o4n-bq;YGr4!*@rDa_RM`Xfdx;~tAFh~QGoY|v&n-Mrv8iuEp$!S2W7OT$vpH!9bRNfm6I%IX{@0FTqzeX~T7m^20gbBB+^ zZ?@~l-K5wc*un4({T8!)0FUco@7+eXzr;1yfHUNYuvo_6ZRhs0Zc^BaiY9(oD3k3NrnW4I0-#neIbvCa7sc@wh4uioDUALDQU*!O) ztB>sAfQgg3%3J>oHU)uU`@rCK0FTG}AL-?U+LB%7P%Rxtc!P-N#dPKjLLI~`tRaem zD<|`zzRU;PUmKMyI+-P2)tq=LduO*S-!g@{H$<3Ak*f|#PRIpi{4W0*DTtHq4Y46C zdUKv5qD70MixmvwLg5Fr(T^abzPONK=}$}1APgEm!cGwg&;YO7uJh>3yg>!0!IjQ} zwVZqxJ(AXLLi(jI0fhj(vRJz!=v6ofa2ydV4BiUyy>xCMSv`q<>sgD?acZE{NFY)c zl%ObA+#a+2`o*~3g2rK|+>tqs{aqg~f-+hLQEI^BNum^r#GvEGPr%(3OZU3})pq?k zar-#yb7<~*z+L6WhVaww(5`@Em)C6+53@GWZS&i%;l;pUbN6HO%G>3hbvSh0VrS=2 zf^>Aa)*6qVQ8IEa_l?@?fR15@>?*#B)_?sFPba5maXcSQ{2&1CwzUzj$6M3`>^C_i zg8L;R58-{RRXt8d@N~>TK7Wi>j2i*-8#sjQ>kZyZ@ASetfU`OD)>4ym5ocS_LDmn1k|HjfVlR!Uy}E<|SGm zE#&+)Y9Qxw`2a!zPzPjMTTcb%Ve|Oq_T`(r8fIBy{s^x+CZHqL%I$NL zRDsj(=h_(2NUo6C?-bETm+N#GLu5h6S^mhG2(GodURcz|{kWe2IgXky^|UFgXl(29 zotIr5-uCDcboXvJrwlqk=|i17z1*PDwP2uu6FTEJ*%dd#C10_5_#IFL$%@zIwZ~^k(oB@fj(BK_r}1 z7WK&P=(j8QjJ9L<6IE(P&B(QQs-mjJf~y;z?X!xucVOcR6h(alJWN_LRHjyy*VnB) z6q9e>J4HgHelxaHdC}|?#0D9|Fj!S2slbr~yQM8R$#HLv>OlAK$UTHX;6e)ewRAM&f@;2X{|J7z-$@F7)fziQ(=E$yI;?)MNKd7Iez z;%*W0D&`us=(}nCSgq0$g~A`E(?(%awu36_gn4$HTf{Flc{mWiBArpsQ0e;q{&{PD1f zy6x$s(8!Y=?h^uL3RYdWvRcFK?x6_|*Ru+JV>_6`vctX8i(@emj2@XGlPY^<| zepTQ@rvuWkNr~#T;@RvexFj_wA zR_IQC3`$=N-~C9Yq8Y34=R-(^l;|OW3tjLNC&m_$LJB1N#;QM?jZB3iePO&$R4yiv z*iY8!l;kHJRn(RKkN$*kIik5lBSj}r-j~wJBC>GqZWt*O3t)wGo}ft<1yF;^Dv2r< zayi&b7nA$`yiOVC=RqM;-(uwq&QDW4$ow(o@pk@n0fj1&?1!ppL=W|nXVq^n(Bnyq zI569w(u?OSH1(B?h31X2O zK@nN%@dwysUau(3e?34CJj40}%zd9>-l}X<(ma*zi-Vrpf`72SvAnE^~5o# zz7nIDm?t!rYOb6NV$k#?ir`!vF_|wpROUhsHi;RC5c)bmUIzId>^x>qE`~8`DrLz6 zPQm-ARfudS+7RxuZ|+8*wuBLVfD+zt`%VH3pc7N*A5n}~o3fC4%1JW=`)SvFE*!-_ zf>lup?w7f`oi|@po!&c)q|*P%--5VIi;NS6THe|CAjL3q_l~Qu2}TRs!k->zx&&+- zxu4O7H%84C{}t3y`JUU2+$#c%X{Tb%X+d@0O>r~w4t!=H)eH|@JizjDEdy^+fha>J zhr$jUEPk-Nr|gtd+)N=XSe_uwyVYX>7Kk?ui)XA|KiN0Ke{{E<{)TOWHhK7xRc}>q z7;gG^zTME@?Rl_zW5Y3>9m~VbOpO(lSBdm(kKOU%>~@9pGP>_|Y|do?e(SNe{Co@v zl=RPIa(Ks69eRvgw!n<~En=OGbjnzPln(ghLpEV*TK~0GU4&;`KQkQ3^3VZeiOBq2sV?O z)Cbv0t|CR{h>J^tR`Pc+*a&X1$#D_gPDCaBKX<6cmK+@n6;oin;}@VP2qnHImf}AU zKMDT676I4S1jl8huJ%_6Tcy|8to8tB8FtFwNQ&JA0gk3NB0RAPE`=Po`fqfTf=h@` zVgex+Q{X3^I0;s?x)lr+S@hX-l`lEJBD4s%J_=M=A;FlFQdpe8+BlZ_0Pe%bz$$ao z_t=#Edj+1Dce^$(_@&0`qHouLefbuHVr?5SJh|=}E4QQUtXYZ>8%o20k09FxdTeqQ z+-4biUz>`E)5n9&zzFqU<{!N~bFI0F108`VY3qD5l zNYvgDA|9`HB=6qpQ|M+={5C}cbI!8=slq#X;O_G8>A<-@QB&5^AwOB(wK}2S%j$|t z01soFEFFJ~(Q<{0zLO)0TZD@;_|b%~J(UnNWKxgrO3{R9(;uaAGA&M?k90jjx#e_~ z5vwB^Bu~Uc1DyAbD3c6cZ076!KrKs}LZqh{?hRi;79*zzpz9aIAny4ZtVQ&`Ke2^4 zOnn>BjQScd0v)qjIcRcy4JAL7hi=S+A`43G(N8vO87ljt8N;8{ze;S(4p0c|K_Z|0 z_$wRTi~EZH%Jt^c*%O3MpYB}?t3p1Q)F~w>IewGx|46^#8Z&UmS5`NyL;Cn_Z8wn@ zZQJ`hwJxI?!d(;jz~|WvcZU3XHm=8;dTEH~darDCs{iZ7CsU|?SttcBy*ytO&EUcv}WAJAiI{#b_+`k!`xvsUwV&tX-@B}+Vu}K z!P4W(Ax1hIW~=b%CI~z-&q9 zM)W{)F@=%DMDIlIVhKs6M41z;)amo{nT?f=jg4~N<=8N*TvbWA4+ZEV@{kYtVg)7T zqU_e;n?=Ntfge)(*AClQkE|-BH6;uuC+$Ts(PEYZvC;al`3=2S7@IzG`PW;x9f5RH zJ-uc7HV;?^&p#xBh5A^Fuz0#tx|CkL&1M};h*D$U28U$gezXLoGyO9!>%gr{L)y2> z9@Gv&?u?8D01xytWZ2&`qoel1FfBq`yRfRbb21(A3$U9~-xsp@U^2nj%08`LL7r=4 z40ISq1!-d7zGL7&iH2Gevte#+VIHA&*F!JjB0+($;xdOLNcIbQ;8XsP!J(1`q^9#o zL2P`;H>eFNJVBhaFuR*Up8?G)q^j}a8bJYsP%<}qVDb@kj(X!PTc65P2pEP!G5I=J zWGD)LzoTWpQS9ildW-?^3z{QuGn62UIavpA8y_Nb*+~VCec81n%QP}%{Ib12)GAc| zWszimi1r8bD%QY0e98?}-ES(+w0jJ6-=CS6BW%Hzwq8-xDwq%ZX*;d_D<+ExVA*`eo^ zkw5wz+t961Q%k$^gX(2wSRM3ts{?5`y9GYGonwO-;+*}CLGuo>EV=Q#{UPAaitmiD zALRuXOa`Z=zS13PCyBV479*gjcJKEde$jhMIXU~3P*-!S{*Izxd%y>;<$YT zwbuf5g|=;~WoJ`Zts>?JlQP;~F2- zlfKO~_77dS&>||W-|sy?z3+7ectDmPIEoR8ICLOp&!zP<0EZU;{YUbLF13%b2li$@Z}sTX7-!R4RD^O z+5n(pY?7kEHVqQNkB`-F-QR@Hc(hZvezgQ?YG$t~0NNn%aGrAloV>S#t$5VQN!yaH z!364&A*toZSy6Sf;n0!Vr5viNKrR(!ASX&GyIHeB7WTgXuv?>3$yas?o}V0IrwaM2 zg-!gmZ(G=!CU(8gT}1z=;(_1o@5@A7H*j~+!}0BIe<6%0CCM?s|LRXI@j1lk5K|D zg$Jx5LRyeXl#57vS1arvKby%5g4JN9ygQyyuT8CTiasC0B=fEuah*nJn8nCRBU5~C zfN%md)rvJ6r!NoB8ucRxyrqJBG^QFkiKFkKptY^+0kr5y35cT0N&5>$)6Hc#aEL6qK{pKniB9M}DiPs!KK z>QG*u`%gFCUXxs^Oq>1r-F9DAy1QR4N(mPTij)Q2k0o+yQT&0oBW_~&LLRqQ=#}3c z->$3iPEi6Lk|s8O#I0pqKv(_=@L|f-%-__o2QSZ7mJeD@YA8Ts6$jV-jcyoih#7Bm zD1O*3Z>&uHyEeWryfw>{gSe9R7uUO(4DZn;7l~Fo0UovVMG~4iOPcsAuzQ~Y#ZWHN z2HiobD(~9n0O`|LW+6r|ZO*m^-vJ$byoNA&J+WonjbMGVFA$^#4DA!wl*c}ktM}Bg zWTZ$WD%pbkF=b?QVkAlPo`YPvBbuEETPQt$eu{1=71_*1+F9qeM0{V8_-skG=LMsjQ_% zY7;v#PAU2y=3^|4X??S>hbeOBlLy=iBBy4Z{I#}kRZYH)1JyVmxj$pSrqA`B)meoO zaNANj1mZd9cU^`XGH>t>bEq9LukpHXT~2PsB%mv%?Dv-!%XGCnJ;2%5KObI##KMQ6 ztkJvELlJ8|Sx#JNC^32||0nYDZ+L~_pwVxACU_H>lny+Jn@HAIZ*?GEsJuT2 z8#eRUc8rI@AiDP?a;ir(nF8G@;to)p;#9&Hoy?b|46BQPK$dx(ODNX>=Ur;8r0atVP0@0e!F;Bhjj* zo{Adq68a!gHT;5l$YKOm{g63R0G?o1|A#hQ){~3j5gY+A3NA8Rt4&-#4KozFkp$|# zJliI?`y!H|sKP-9kavTJav{ARCS5b7!v?ZfHu~C0Dq5pjIr_N#^}^vuJjQBr?#xO+ zLw5z|4P7$tFW!W(6CptAPsKbyv&Ok$>L-Fy>V@GY)9>Hq+sVee1x4!^ zei!VKh_Q9cXp5f=IS7nco8FfjS2?bCez~^s+h<%pNo9*Mz?gmGfYLz6EG7ri^o09%yzH{asNz2Y3~Sc_))Y> z{l%kD$cnBni|l73Vp6A(Ts1JXa}dw#Nd6ho+4gfe@{2<9kBa17+`E-Y9O1jpTID=|jsidER3p#J6g`$fp~n2iy)PynCxL3Z?f#TqOG@f zBpQqrUqsWRPS)JWMEw>wh6a|P+p-%yIb&;v*d_9gz;GC4AS~Z!rcM1jJA)q3^pDwZ zbvz&sG>l~GjQ^NF zpu`?$FQ*oJ!DL^cXZ29dlZY1djTD`)o3~i`5$`en@q^&a-;qF1mH#95`2YV>FiYWr zctyb=C|}C3^lDN3{}txNTzL8h&K7jG^Dxt*N(z&5ClzoWYJkN|4aY>RZKI@x1DW2> zijj5`n_kWP6qBNjR)jB{3$5EN2S$wcMSKtLZMzEA7ZZ;__*OPccz3wc?{3iU=6aV! zkj`OwH>I2Ep~FoExnzeJSrxou1xvEENr&^17BvcMbpuyA3FFug2U_h34Yi?}B#FGN z#|t5fVelXGjMQt9wnbPNK4mT59az%{EjRa9!9p7}q&eD#ch1Gz#ojBT(`sa8TXO5H9q;H3LRE?ZT#m(YvIThpaY5VejkYpi(d+ zVix!(p%2+sV&XNW;Qu!T4J=ISKhZ%^EwoT<3+7!|=aZ9-iS8z^|E*nuVPcFq6upQ_ z9IVi;OyZ@=sU#W(3+=pZuFU0QB) z6ve4dWc80n7E0Ai0H}ttrTqTK9}8umP1@T^8Z>mRTlfKifpTF(AIfp@{-wz%>2M>^ z`+tC*1T>cK}QD{{LuD^;l&dA)Zoyco5X^#3vlknm&Lyv9f9YNfRZ_%YN8rjF8fFJO~n zm*R`dL&2-^n9j#dyIcx5p9z5d(*HGLA6puQX`N$>*|ir?M*8;&M%|9h4CZfYPc;nn zG=@0W)=CC*lF8^Tw!AN$3XZhi)PK@oCiy@_|M_KnN%V_YLvv+8UNd$XIm#FdBChTV z;JMgd5zY*T6JrlfZMI6*RXZ6cZvVWMD5xG;+{iu2|72mQBK|eH8cLA zQxaBo&s^zcFmi00n|{(4VH4}h>}frrD~z@hzqb{UDUYMNZQrK$UrQU%@qs$p?71z0 zN!lzfBI(&498pCU1@uXyc4m&a7Tl_s(OO-?JR(VoX4B{j#@5C4v6=eg1|Allj5z)g zYDYv80mW8gb<==n?`M*Zi(`e6UfIrtB`GsBT*?DD5&O0cXmG?ZGF`?!Z51RIZmwtH zRi-ay9@UV8o7t1Hsl&|v>n$7(NZVFl%4F6Pjt;%DB08BTEP6H@XTHnss6rsx@s=Kc z@cq`)xE4kXb=~M#c+lrN{%4^!|HE|)Wza|j1Id3QueJ4J`LXD=Ok@vlJ~jh^r2S@0 zIx51wxcf-zOH4t}6~*s^(`Sk%u8lA1@7Atdn&oSg0*h=|A(8*ufe*Y|7z7Y1hLeM*rca>ySaS>Wc@HS3#HPsrR^0fWtLM zT1+H)WcdGvX^S3>hrPRd)8B11L_5?T-QnXyM_StK(};3IMSF40kg&aUSGbmab9ci1 zWtRGVpXU!OzbwC94PV_%;`}%KRe&N&_6OC~)sCM6D<5?!&gAzlTc^s*gjFJ&c9X{g z5DO=34{#}dcV~qjwim2)x0i6`u$_p z4b8!S(=s3Owsg*oJSb?1tpVe)-~vh!cwOH$+^fqZ)^B#PE&UKILYuwureY$GQrW8h z8?0vn7BnMETrPo9r$ajgiXQOT`{U4QufKr_e5fkMEH2>Qs#2V5jBR&u$d?(I?AqGV z=MlMM6(AJDP%Ky4GdQmO=J0BRHMzS3km!>sUhQ2de&c}#@?QCmw8}!KXalX1P0c(QD}K>Os58V+L?X=UWCNFo`4s@4=H&uqcN(3 zDRt8_zyHp;!cm6BnvR;9Vwvi{uR%37;)fb+*)6(z3n>5f_*4$X*$JzG#3u+>;YZPc zrlA_&|Bt7y42vU5+9iU8AcMQROK=PB?(VLGJHZEccXtSG!NLH+-FRhhO139eUuD=o|MxvH0W>hI ziEMeVWLKcA4%_WP3oNGJtnnf|h9?V~F(YN@a5W%s#pb0)FxAr$J52YPM(`vz9P>nbs`vd4mr-ZPNvqKoA$qz37JwLIA%81 zwg0n`mE1~dt`P2I_F@4Vfe54gyX#E41xhOC_heQfNFnHd%CJ={!u03`rRpF{5a^~u3m_Dy4DnZI0K)Bs7>a>0ocnGOZ;$K zZMh{0Lq8ny^OLH`H+b2s*=k$*q7r!;9k`)+GZJM<()%Vb`!}amzB`-N!TXPAY9|P- z*34TDE|qax-x|6n5`k~|70cHNi`zR%is^}wH+P!LOcTJSkG+0N3_K~S9F0s*K-Ed@mk``?`?KosBtaXT9i zs?=Sq{=6Uy;lt}V9nvA*(({_#_1vq(Uz=S?_x*br9`Og(e+#~Yg}@~GN9XBf^!%J( z-Nu;(&`b8by9V($NP<0$#x|C6mvvuar>`NhW+yrRet*-*d~p7)BZd$|{^%Mw?L8(^ zrM{(xZzDHc2Yl^yx8}vw96^^M0)O;-*y_6`DhV4HB*J|_{r`KlFJcVwz4d;FD~!}U z3{!5lvrFCN4f3Ew&D5dyeNZ(1N@C9Uruek&#@rZ&{Yn>x{Tu7w+J6Uovdw!NMBNVF zV=4&7D=zkrWKa%1hjaciwK#jN9Bw2`T^#JF`eZl?Ge{>F`c^@5f>QP#)x0mo5(2Zc z5jZarKVtYklKN6i$Q&r$PruLDB*n7{&?w%Ap>z?uuiBxpn25ezlmk5i{HIC_Oe0pZiseDtHLrO z0lKYZSj!?izn?-2reKe$90tclEp7xZ$1y7G+I|YMinqEmPjN4yN*$iqHl}+572K=Z zg)UN!nwmmQL%9ZYA5NZI=H_tpOje(Rb*l=UlSyAjVBTpXMIx1_;uObU800y#r;3qx zzxOxf^S7cYfWWbqIC($nFa~jdim1$17OXigT4-`+Qhb`y5xbU*n4W(ECz$#~n8Rnx z3Wzu&6tK*w!Qh7i3~m?nh{XO3?a+^XV;GCT&Ej4mD4ESL@~2*l;9@PN&ajDSTjAvH zTDp9zyGw3swUToj??M(Ook41U{6N=PlETL2Wd2gKe6UPXUH4wA4Fzg7um?}=-nc$x zi{o>KE-T~f*>lxGuF@u4Kfp=Np=#E0=&&o*QBka0Np-ASxmtT|D&|z3Pk! zG?F{y;PRcZ8W>x&iC`8swjG`-#?xU!!CH7=`Tc&5o(ZmZ)qA~t6NLQf@V+xJ64WS0!6DXNXzgK`BUPcHf#^6+WZFC+-__ClgJ^TrDq;Tzf(hJ=XynVBc2T zo?llIty4~=3Od`17f8UjhHhQm5^c{8F}G|Q%48FG&dVeVR@zc3Vsi0+&UQyAjC4l+ z$iExL#3fxp@3iw8~ zUVE(z9XP(J^gDq~&LNw3Wmi$b)DpoYp;|rB8A;g1t6G~tbcc%#{p8RmYdP; zKm@gx_Qke=S~Fkm2<2Q=GYrTe#y+Lw*bm0wrB6|Hl$kDO{Vj)iS;ehpwDKhLhqU$} zKSszwWV7Z*S^#z~S8S_eeD>&%3;25d*acqq)Nmo#%DE}TC`)O6Me-s3tPK(ncct%h zN`>XKQ**Gv{Yhp@FUy&KrBA9Ik1uRA7~Hi3v;KAQ_KBavN+zPfvgU`_DdEO9R*AEXL{}>iV@0h zExyTxcw{lgH+#1;s1k6{-^Ms46x<<>PcESkgd>f8=>K+ia&QNTM)X-cRF}y(WO}Mx&*sa&DaJI zd3X!@(O|e^TeoC|lN?MX;`|*k-^n<>QTe*PN(kTR{oAr0HE}#o~aXO+z*f}fKvytUbB{oQFA+pNuyA_CvX{yc9n@>FXJ8R zYeo0_rpVFfmX5w+%ML^ZN_2?;fOa(nmI9Z6N)pWCwZZf$pp09`9bt-Mt!b0P^s@j3a;&i9R` z_nlWzqN}MvAa8;S+?xSV;Y+f=&f6D2DYXE}Nes}39l~s3BhgjJvL8>n6u)c*<|eDb z^nZ8+iNG0|m`x^=(-h-T0ZPfiUpwc2EhrIo5!8$bEb()l_{LS^G?fSG^U~y04PszRH~_t(i_J;6_u+7pN5z7xhNm_Am3z^ z@OHJO@Q**p$&5ynV~TQ^A0!oV5PrM;pyIZGeNAJ3->BKY-WS$^|K6$dpBTU(N&tQw z>uMYk&{BW31+-ljdebM>w(=@YFcxKT)kXRa zx+~#{NpDhY;G0BHpU3u2i%K@?UPFq{w_N?`MJEV+Ckilvo=%%DlY^P|QE%*CAl(O@ z-OT$d9(+F%14rk{O3?tQzYKwQd4v35-R4iQ|wuJym9yT!p$ zDS0QzYd63nV=y{VX^9xqQa9CCZ?_eOF^x7tU}P?740ljX$#QJ}@l33Wf_a<(%!C^R zrNDv10NNQ*Bl%Q!NRq>}pH*)`)oje*PkRN%Dh2k8c7s&pb~A1_I#AmIhRg>OSd@eg zNJR}9ivDR0%Ry^gRfF1%4OG{gHBty*6(CDcMrB({!EZ^3Qjk{mu{K#%bru^|K@@9_ zdGD=zCHSux;ft;^Ov>6vDgN~W?_RI82?bu9lF1`5*kgPNsiu061{+1)RR2s`oG79L z4xKVOlFP?ODKzjjKa_$Jla#WTfhsh^~s|EV37ZO0zArJ7~cRw8gpL2C2HBY-52aDytNwsyufEX?givZqIJY z#D_(bi~BV6DU<7rni8eM>cNbqUG*N6Xr5AUr4UmzEg@q04qw#k6( z&C@_S06KFY(T#X4>FRlZz`vpcw-94K`$RN6YyVo$702i9t09jqHVBWvEpC_Rq+41t zFIh<#vyyfX1RC5oqgjytC{8z*Le>+sl}*=y9}Wi`N$T*1L8ye%FxZ8M>$B(C6CH>?y5?3yr048;qrXP^3-%)%laElrlR-A)7u( zr=lnZ87Txz)AE$QHyYMD#luGd*COfV zmm7%Nca^mZb!QIS{?od(Y!W&C1Mn{&Vwv}1nu>Blc>yUw6wYVNk^w!nE)ocr1;TCX z+`VgX~v z=*5K8%Ay-Pie3c3hPdC3YKCV&s#`$35zet$EM{r=9hpo-$_wPX3_Z(O)) z@XWEr@4)oBQ?JZ(capN&d$!$9Y)#V%rhNJf^SdRsmF4-uWRnk))F=4ZtoU^4emA95 z2%P=7O{P++F{HUzrIWEYKemeAzkl$(z}^cBcbSMwVm#$M4@mB(UFN@#PRX?v#K#7mvj)@!cWvxA8LQV6T5u z%D8<8#84OH`syT#@Ig+NQm`0=ZjwSvbdxKXm!m8|NbxnslBL<8c7e^Mbj&ubW+_hm z%X(s+l8*XXTI#M(!=T+_$=c73h6j%SXsGY=Sj&dq{eAaixC}h0{HFJ-#Kg?gaD-m~ zm#+L<8h#CmPwJv>kzHPy_uoAR;%vX1h+slHM;{xIdf?Q-?_BTq&}(x+qP<6{JU5MT~8A$3fzN(Q|y>1RKKVLV-1&j3T(W&Az5x7?rxEq(UGUZ z?Y8wT$qO|!PpSviM!O;^C#D(n8Jw}v7Y_piQzv-|?D#p;A|__7B|?9c%&{433zx2* z&Wr1LfdQ5R1+2itsVf+vV5B*-wk|!BT*{1`Sa~;=m~;UGco;Hd9RGx<&*IBGSZ?x! zWc<$5gMvsoze;$Ah887Pc3vui96r3i1ku%&?#I(wbc1t@OaIriOb366dLT%oG3^9L zkMyweLbl1GQ52<%*SJP@iD(ovXTP)hy9to@FjgK1-#5ChyrsomKv|m@oBNQB4z#5b zHSe~dQf^h~wtE;qqwAGkEjxqDiz$)1-az^L8^cBAb%D7ZS>p1JRaiD+Jqy{o!?66m zG#=BJof}dJ`xC?}(d&~^u=P5sV6~oLTYmbhbHe}&(^#`sxYq@uP%0sF^ySiTmng^R zs_|bsH6%bZ&M#6bDNZv_QqqJA)5YoT{_-1Vo&PX#0rz7LZ~0V{l?a@cI(l z$-|3!X!*9{XwCR2_E03kiA$Er_Q!eL<4_A$uqC>0Miz@K9P8v#eVjX38;$KZ4(cb* z)b#t@5gUn7Lu0-i2INd&Q%-eVCLu~T1BgVP`8p@6I}I+~$@q;$td$)FGZp;sPHqna z>6ymHtK0_o{7mmQ?D_un^4#yp9}5-`maekev9NI5L63isL8}ycj$P zqUU`)u*TFIgkl1><`NK&V8D#q?h_^8f0G(DPPAyf+O*(y$o~}zZR6yneBH{kb!}BDEuG>u0ByM(2!%)DyjGHRG_jC5@5b)pl zFrCZ?e>mi0K%n`48-Z2>>iOI^}jdT$FFqdM0ToMI|p?p{Yw1 zeQz}`{o}}mH$G&J;NREQ-N!lb_0(=h<;9_eGt7CVp4G#IUi*XtpGExb_IzWmIoYvr z7Vha9c)Gjg&!YPov9`5L*xC+ZK&A$9Je@YKS~~Y-^uFB$rs+2Zy=% z3a9Vti#8M;#mKx6r^aXH^4}Y<3TPXsrvdShKgt62GVLcFo`g$uX99r=g`+5=7_ndh$`{X^m zluoS4p$i^$*Nrov1DPWK;l-c>3wUNzA}Ch&<(q=-OK(v=(uYL`7Jv#I1-n{_uU1X{ z1pJvZ_d^THc2a)6#O-43?@D}eCeo3jp-<|c>61CNm$858RrnmyiY4@4Kn|qX_$XB& z=1e7Ce%`fDL@K7RhUykkeUCjxFrktz})j$lOmrv_>a?Pq%!lKtXv2! zF%%L;9J;-bJC`#6N`ri)vn@*noE-CCD)HCHc8&m_(|XW7Skbgx=3h!j$n05(eD1uIzk@e!RC{-$I*(XR zx~*bS={@J9Au^)Ny*mF?GR$7>KdxrvDtze5?xEXBT?q09`~$_#2UW^gxihO`b1u~f zZ9Hi~?dGc*)8v4@eaGDG9*uR+8WoLx(4LuWn)O&s<1ZNYbJ0z=gE!EUE^-*QfT^L! z8Bh;NW}&(Z-VQGoJu0Y{O>(9)TG_zC2TQ(M&4yL0Y{iHY##Yr&jBHZ0pm*#}O{&z`LF zKX7%~Qv8WV7*{20{W`c45XC8P86x|`8@9kl7xQ^J?FWv-4+3=wS%|Q(H?jL8KuYwk zxC|$-m_NlC;RBJ5%bFB-X7U{BpVJN zUvkV|&2RV1IAwIze$BnE>;&YSHd+gn!}4D|PRgdkOuc#wKMqgr0Df$PE?o_krCj-1 zvL7Sj^!01IT#oGA-T;A_oDU2;Z%1q=(W9aJ%)44SlW*kC5v{2I1FXS4SeW0Ng^g?_ ze{%GoB>07Z!^Mi@KqtCt4c)$#(Z;{@H5dL`8~fIheR?53W$Vedf?ycs$vE+u-ZBf6 z{i%ifXhC`8V%tgF0M_T{8<{g~bN|y%;MCy93scnSi{;75cD-7~|G?4|siFh-@~fJS zEl|Dx#M+Rh%Rh+a_7Tov9!>J+nT^S7UFH}Zo!9d~zlDrO=myP4?FA~RXR;+8m&Kbc z$a;Nhb{>%CzQR=r!XVX-CaMI)jjksPhE6gpYp`OiVRG`3B`(RMYib=*L;h)puscMU z2>C4JdMfLMZE~qIE}htCE>&|qEI*)@S5%C3Wm(|xfDw)1Mb~`S9_{$)^rGdU@QDS+EMD6{IYab! zRL6hfi#FwYGF?X+(}M0#B`;7~oAcxRwPN)OCCb{ zKMh^g-EjP+*{@fjPSKocd@6N}wPoQM_^~J2IXwN-`$3JrvCJeyw$?HUf?8qSAv-?c zwPgZe=clLTy906k4e?T(YP8;nHNYVGta}Vh;(#RW=k))3wyf%L3|0qVf!aCXbfAu^ z__l8l;RCiMk!?f%+~l3GdBM_#(bxIk2EyRv_i?3+7v<$NmHnpLKH6X!{Iq(F8`Ld<&h8l@AfUmaAU=!!V+tR)H6J5q zo3od#?O+O?3HJaVuVXRc4_G`)zI#s^{N4NO46nN>IuC->Y$Lt}+JUsX>vm5)US4xP z@0pys=vs@B9A8%HCF6G*-PE%}M(P_*{#<$!eLF#xl-E*ry6=uaovP|rR|u>$8$ZH( zlBF2->ho&9V~Z^3OX6r|adF%{p5KpZWmPS?x%d#)&+5WXklwKQJV-X);=!ENzU!J+ z^3=#A5#OPEsJCU~i0C!FCx(+tN+6LL15h`|%Pyi+whh*B-@5yDjnR@QZm)Rr2-ntnr88X< zJXSo4DeYEep$-4Bs5TkSHh`IZtA|yMZx%kK^xrDA92Lpyb+pM-v$H(gA34$;eh*2ZGj@I z{xdjd)>eKezA1YF0SP>-CW-A2nsHgYuOqk;LLIc(*b)$>^!|Q_` z4qCq7GMk&M4<8Jfg2neGh6DJj8a0-(7b(#`R;2z-+NBa?1f9x#T*dZMgcng~nLt>2 z&)kFa?S9UbpEPDzqrbolOoquHZx3EwPMZq)qH(xw%aJFdim#xtyb!*lRW{Z|b_o(P zlhU=wvFit}17OA;+P%3*SeBrhX#Xmjs~)`%3JJVJ6xM3rr#Nv_mFs;ah&L0QhB=p{ zVCJ6tUe-LncAN9IHF-;jy-p4%6>!vtM~LAo-39WjBq?hAZh_gkaibR z5B#>JcsMAJSuJtAB^tMp{LPpJ>s!C0zz$Q=f4B(Kmu&C~2T3yM`Z|UX;CVhE^b@*^ zVV`V95pQ*6MaP@V{Z`s)sf&HHTifr^!uiZ2kZfyC=Jm(5CDIFCuU4xQ&N8RZ*rblO z{<+Tao9E%~bYDqRQ)kmB!KCD*0RLChf-9$?iT#8~66Vyj{H2Cww~zO&gP-h8S889r zyk)&Jkx}-fnH)7dC*^5v!3L&ZX&Ae}^AqjSmx9@}A&jIW+%MyzYQYa_T|LZVvV2XG zSXp!-A_D^h@~ik5n#3GXdY&K|!t~s78o^YswOA9~mV-2XSK8%sCjDBm9skpV@BlB= zf){G|KnnbfqM}+6Z&*hIe243?IUXOqDC}9n)OD+(5ehXCI9(ipO)z#s)7)~&h2X}9 zCOD1kF)(|4m!V;RF?1qQxVT4jD0(Gd1G$5eR<^LhKHy8r9&P!#IkmeS8ess*p&{k? z_($epyR?Y*EUPDhM^ywHYfa2FbA*@O()y6hpOI#Cij0`sK01sRnZ(1bhig-fX{axg z1m=%>L-%7e;JJY4-B3lNIwo4p3N zu6%ZR(Yq{9Iq+9Oocn+x8n?>wlm2ZW-aF)FmAkcdA#lg9A5%yJ(U!l2v$bUif$Q= zG9pL@Cx*$^?z?X62cTDt&#%o%D4C8LN!wm`oF8YeJxC9VIaQBVcvS-qcpFAYk_h4bB`qbM28{+&G6EhZ>p)tZ^0$fhrZhV1li^?kC^on==;-h^3h<<4Xljnmr3oEKi)b@5!c!&5EQ8P*MkPDc zNkuDbivLJkT!nh1b|-AqGPKl~`d4T~#bA1D2u?rq6+4V48%WZf)XbFpsCX*_Pa8nw zPj0Gd^lcv{OmuAV$5oz+Xiw512R9m-@!9vp@F_RXAvodJM$pT_l;5se)#`e))h-)x(cQC$6uw1)oxG=#VnHX*1S$YJ-+sCwV3n*}GH0}Sb-93XL zB_?E@$R2Eia@7|Y@8dnq^{Iye-*)zRn6)}>NR=stOHePk)AubL{C+5rJ)anS`HWb& zEtDu{A5193_$!2ZZ@vEU&jA@?wz?`YpJn)wcz_k$MaD6O>0^lm4ugbk8(s?XlrRVZ z9@oI%?{|hQJ7TtwuDSsTBSlH6>+}XhLAf^@%je1@trUS`!56meaSLQoNLBm(*vWle z?%L*gwo<<#yFtg^=zZ^f`n||n{hkT>^)meTu--{PpNHRqW7KQk zYosfiO?IS>#)8Y_w51(z?{ZGq4M8et1Gp;&x7MOT^hwfbL2Y@yAsSIt+-o{_#Qk2E zi!*hgenRkvQrNA=K8^`Q6#bvjI5Cgnouax9&lMpxi97wy)Zrzx7GLO;to(Nm*E1kE2sWaN!i+CQC4-2QA3>d3S} z-Ok@Wx0^3M(40Q?ITi!bdaNhS*`lTot9nB-(~^Lvg`P2MT_bpnc;`=DHq}_I)_O^G z@N7cw>~y|UBHXcqQO02;7y!r09;59;lLfv)797pS1PE-HM0$~otG7gs_mSeGG${)D zh+G5_`pUnyU4rYVnHJY{3UkiYXpPU))b=PnW=vvHFWctg1%9$~FCI$E&JPINSHc21 zm1UU*$|L{{Jh|61nN!H9Wc7!u`qLvJ1kH%zznkld5lj0SOHSqqP%mbMvz@(>FWscB z-+yKr;w2)GAh7`LM$ahfzd1ycpK;}se}P}LWo7&G+X`X()}%0YPpV4}d#$5GTx_Rq ztoGr|ehJy~mC^#3i%_B9gFxyk^y!*w&COs~b3g{KKFe0n1R90Y@JNY&5+74-P;?hQ zfu?xWubNF7g>=0xZg*>O2ERX>GV-RTsf+a~7oQ6mMP94=k|2}!F))go^TOHS<540Z zvfj@}=4t-VS@Y<;{-`Zd`tM!wBC@w1e(motH1s?(?$uQviqJQ0@=1oLXWKoetkr=t zF{ZQ{C8rd3R(?g!T5Bj3_rL!4m>QmFN>T?3-K3QR_{JVU7@5_N|PFA?$ca0 zN3w!eF<6yEmed20-X@M;+UJ(;ua!w!RK$7U|h#vX3W5q8Mvub#1|Tl`N+Ip%WLqA%=(w$^L;B@c6L! zxu<$@I~h1x%%7(u`s*)~Yq34ve(aBs%#t4?crAhH(}9j2# zd3Hq=r*36(+VC@rGrcko!r#B`ceRQU;gSgR0gTagu3%27*ELY5MPfNrhcnbqiqD}v zL!wcMwE-g|HRvMKeBT%B^ay})k;zECvw_mlBaQ{TYAF`mZwQV{YYFfaZa)&e^iK7` z!MqM^AHEXVR5LTOjS4^a>^9>W#{OZOtSCgg`#^7)5S;mU1j;mQ zk=wr`k5OKcQB`G|CB8TeiYW~V?{@PKGu8Km(m7!<6Pgk#G;zEK6HQYtF5}ssQl@+! zjkipCE4kd_%P=qfrJrC~gpj8K9T&L~E)capI7%b(!4fXWaeVSez5*W>s(D0zA(1DK zAxXP2wyMT+IrI@PBL6=5gUb)_2i);JRf}k>&#dahfC;@Ca&}YC?ycVL4L`>TOxZH@ zLuX+7=AGVTvBcD;oNjySCcZV5{MgKUwCN8w-6)<@vT_OI^IWHh&YY%x7%opS#@5oqdA#GeK#T13g7v9f2bG(pyHal@Y{p3B8v-{_0ze2Vb zO$#?%)~BLj#-Rsv$RF_KkcJJ8GEyMyl0R9}7q=s6IMtIeKYvY?^DBbWI z4v0=5yiheo>LX zlVao2`T%ZY4P;C};d%KAQb9JPF8ji8(L*(-n`+KHN+yEpP5KZAvXN`Se;M~sxge&`aPQSF%&CZ$Qerd=>$8~V~ZK^9AN;+)< zO)~XycL6PY$?SDT7d#&mgVgXQe~llj>PoId2ScVK;OUExYZjH|PgCh`cPn%|sR%U! zz+R9E46>WE!QR-idMVAP0bx-Yl>u#T1<1i!4$^naTO`Jk(*_9|S_fugE&hA+TSfC`tqUa+wED z7F_tS`QE$_Kv&LHQQopFzGb_+ToB#JTy2q|DRxB*>B`Y{b03J946~Yz3XUg;i;679 zx{P04%ct46rk7t4rpDy%?~zhBuzk!h9R9tO0o%Dn#P@qaDa!u7;h1u@85uL7bw!s? zYhJdSCNV40ZFn5UR83(8r|a1tTc%*q_^K*l-#+zge#^L}$3!kk(~px`s5G6>YJghe zG7xHk;JR%HEaF)g?RbPJxqYj~{=LFFRJUvrECE#l5)g5+hs55#08!g})rikVKH*Uk z%jG6GOS;iyoK&g3YaZ#2p7-r1$zCX)->3NU9dBQ*-^cLJ?&Wc|bl1j6tpX4G0T~)^HXlPZKvi-*83zJyuC$2^j@?G|tR9~~j80}p{MCx|H@*)DBe^PqUe;biR4aa~ zm)?py9xz(SmdxOaeHa7vF(mKdw%9lg^OckYlRMtki^7a<8Xue-&sHE|XC0R3?CAxH znsbVD^b3044CF^}gU~u#HhUk`E%;}lnYGqVXVHzGU2pR>P?J|mLZj$0i>c3(Nx{jl zwuVm@Z~KI<7$h|h@>wNTfu&E5FWydk9~V9{DPN`xb1JDd_A1GIBiL?r+NKO^^@77e zSGwG3Y;b0o}g2&FSv|S32FR zqliZ~{L{0|Mob(wXr!8z_l@V)oHb!~w`k(U3MEyzUN#N^1`-VI*UjfzJz}?pF6xz% z(}G9oYvoA=9|j0-&1Xdys|&K8Y2p(9d*ST=jShyYM=YKXYUIojQ!C6+Ms(@Jf#zaT z?)~@O0Ln9d&9fMyQg>XakF+VZLZ#muOzQ~r!@(T}+`rP~nW9qz5=FAC+SgMsO^l%x8)eZPZ6#)LMJV zJXB{+`JyB3zVa1RIVQCFiW1g}qHDLlA{!}8HfDf%oASK`2iw%y)8kOdjRA)$qiESvCinn>m|UyW+06h zXl6(~sktNPum5o)i<>w6NPkn8fYA*~;6!n=re(RX|C2jb3cIw+z#lcsI^R*Io-|h(Zk0o3XrFNjJeQoT%A!Bt2)pmH2GQ^~O zY?jiL4^FlS@Jicl((yp-l~p&DPrHqe#qhEHj$ac}F;zNT=Zp%&A%#|D{8z~yHj1UH@w9_Y z^~Ik|>@oLb?NWhs=#Kg#HS@N=@2|dME-@&vmGooYICTV11xj`qBdLjNIk6@`ujw4$ zUw|~#^(ZH0Fd%fTya}UtIGC@ z-G+yzJD=nk~#Cu&lztD7(^eG{U;xu0?0Cmgo3nrX3l!A7@W*WiB z3nPRyv6iMV)z5M7GbycS*#;xi3xU^2QvBLu?M6zx$#o@dp)ld^6>0k(RV*|V)EC3H z=++t#U_Xp4%>Og+_@y^AQJ%9AC76rg1FOLi)qbtNK4y+MD;BMpvDLIQeHFW9h9Zla zh1^*l?Q>5GCW~11WSxSOuOS1CB=>CqQ#HA5e_kF6$qKAOjpgeouYtK{+BGyJ>JXHO zBB6_HA_O-G9n~)r``7^LbD+8+5t%jx3y0SC2)l4%AA$UrSnd!QCW$6c>aq>*EHEkEE zX(_Z1mGJ9JOPaK!XAPi06XyvN$QClsN>L>|IwNopCt6gr?{3!qah+K3!VQWNPCK;x z(}#vDU7Zb;EhNavMVBlNnO00Is>CXXSekX0R76`n0>|RmOnFJ<5=yIEndsgVNpXZI zmsJpTLBo0jf9MkHw}D_SnH^2T&!^p5W)Db^kE~*X-8N8fyb-jC1k;lR#E8JVx}qPZ zBt$IxNlhE$l%GRDMP1FAt6s|?q@mu7z405grIR0k9%!Deg`oa7XHFrm_}8}pG|HFS=gFH>#z3#2RSZ!4YQ z9qHvSah(B#H0guwN<=--xeIt`Jt|jOcGeQhv|sMoP*{r7lJb!nyGvIm%#Ux7(k$*D&5wM&=7>3U0 z7iR}QGK*tZi>!1ppSscGTLFlmH>{V;u0W{5aOW?|zvVWOMy^NJiT-2OMi!KYYK77w*vi_JFhE5*81d4H+I`-HXca#NF z0YldIb{club7E=SICwx)~egy zN@AmsQ9 z{@%c%STOw{yzLl3R@81EMe;;KAla73G;ZT-tUh2ujTk}LcFZI75%WI`qKNQe9z!HC)aqTMGKp zyDiH@^L@G=9JP}^U}fcvAKpT72N$G^V?nnfsh`)xRzK&G^6r&F7$F|nTsR|;xQI2BZswOS$(FqLcxFy;W;;j_Bm$b6JO`98 zW|6{8?uj-l*ST#{j zLGzQd-n(rEai-^v)q#+sKU^a$j`v5TCP}PqK6pUkD>m?>jY}mSWjYG9O@=Y~c%K6& zsG+yLtE32zBUs}TPQyDA9o9pz9U_pae>T6F`;l>d?T2gdN+Z@?9>r;(=d#@u-eB)s znfSY?J)ogz{FT>@O-fAZUB4C{g5PtL;xs{1T%630Sy6Jno7N+}-KUpnt;a z+v^FTZfNsqt(;fI*EA}dmTzb?eCy?1l_vBXGEyw@_1>y7f5;#_~I z``dgzLyVz;GMlU@Vd=VlPXJWfmdPV1zG*;eM{MgoKJfKVL9#^m*nB)jNey5SyDO-5 z8vTI|#OqS)2MaVEfuAs5$UXi_)@%T)^huir?!+G!c%?>Xd!b)c&$Z++*;lDtDl86;#JoPC z(_w8xw)Tv^CZv0V3p@-%DRl%xul1|2eq_t{^SvQa$lzbJLa~TfPTV*a=QM`)D?Cn1lup$VDt$raB zMi7m+GvAqb=GBR|Rt0E?>0-Q(2dZ>-Z3^HPqm)6JoWLziVl5}idOB5Ie)mT8%dqY! zVPMV=iz;SSY!M^{)L(0hkMIq0t4+w7*b{Z=sYFR`p5NPb{qf(XP{~+(qj1)`T1;4i zr!Z0sY(q&X*!m>M4A(Hs3X8iun4ufI`r~fcxG;CZ*nm8c#`De88!|=d_-PoyD-+^S z@*=YFM+{&BvaYE3a?i^hb5|IbQzgwT%ItW=fpqGh$(=xQq#o)m3I6QQZ_QT(;3@K` z(`3Lv0oxUy5IeZZj7E5;z!3ph1zWO5!#d#8&_fS3l^RKunB~$F_&0k5Y`4kw2N0*I(g6GUmAC}nM zzprd$e_d6KcM=jlNr>u@oHj1zN+my{M*UGr=6!&bl3`|wl|y&zHpA^C<0^Y3@o(VjIU&_JKwCz87+3uhHsLP%Xjx;5 z07a>dl{nyi^b&Eh?5auGa|mexSFalp@ILbI>l6=g=a_Re2VYp39NWm~?$hU`+aScI z_z>1URq03Z;3@>|Mj_N&sDYr}b7Fb^FJ?K`uw*y8%gv(K>62Z*f2Il8OQMjWQQ?71 zJa9`;X$Mr-f1L4x5^?BQ0&8HgIo%P@DzJ@|*FRww9GR$igt6+*BYguOoRi5b&ySzl z(WT`hI1E%r6T{^!BH&a$7M#KW$r08K(~X2%=G7fe9-J+v(DuWBWyNv+C8J}lGJoD= zDCo=o>iF9Y0ld@toY?)IO{-dODbjTFpHzEW!~JL zx(5o-l?kH?S}Sy%!u^1tGlc6P9|8K{HRNY7hInh*!T54Gm>FJp`-A3o!Ki-8OfWI~ zTFw5-nFZvG#NN@MGdX-4gtj1%LxAv=ZP$q*`W$*gF}`Y;*;sh;GpsdDl9d{qx#~(E zs~wBh%$EUUH^?R9SUQ=fP)a}dL?5Vu;ljyb zHsH+LfwE4tnB2=H5azw-gqbd4_ECT6pw=W)|IJ74 zNRcnc{Krr2{X>5WIfR4848q+85!LY1*#eYgPh=|tBeW5VrU?xz1Y-%u2G+9n_(+L7 z1Z<)#@vIbfo?LkRqb@S;PxbW5?{n*42v=`}yR714`SQ$NVrW|vPea=cG}R)U3k?FQ`PK#%D#^QNDKsM0a#)L%%nkG;)N|*qj<#J#0(=1k*Nch|E;t z)ZP{{dH#YsP%+;6 z$4zX})0;MT$V@m{>ziv~P(95MpAqfw)aTYL-Au{{J>YbTozZ$iZDw^S-<62-Q(@Ji z52Xqn(M_5V5Q`6@d6zc1AvVufL+7DssV*tO?FE8W5<%pdYhXsT*!+eRn01d)&_S=A zK|1*U3a*ihu(WTq{LP+TI|oybA-cjPqv9f&ADZVlE0eZq8U5vqT}2i}OgZT?iv&<> zxm41IqSo*Qb!)AMv2HdOFQg1B7z9AstJj1Zt;c^y&M#S_VeLO;P5r^Iz2J0~3`r#b z=AbgyUXf~ZaW-e2m@DuXmDkh@S@wTz*WZ{ymxd*2R2I9kCGyauO}Mh)3M=RBgEp6@ zA9RX+-%=9M=PXzGdnwcaBJ-FF0r);>$LP=SDOPH z6ou#RQG{Xck(lo~jIo|wal=+?xEb4}eyl@0F5Va+F-!+8+tb99egY2W4Yj|_>8yTx zeh&X>1KAVPdidoK2C!b70rQ|RsYFxlbJBCc1xjYywgI~KUUDKnK;_3hW?rO4!{jcs zC``K!gecv;`AjWBMboEF*e&5mOY5GHS%`KmImpM5pMQMf0J@4-#I#ax{Z@T)p~BQ{ z4-3gV5|L>9)P5Wj`n1O4C0ln2>Av~YS&s8ec?E1MV7e__MP`x}UrW0elg=#JDsfqS z!g-!XY-1ClTtG@|zrRGc$g^C83N#bOYF8VLwm5iHlk&>eLjpEkm#C=_uke68>J0H_ zXK4Q5+FUYG)z&{(x>dT8HXWvJ5Bim~@p&RxF4(o~ddD)dI0Nkku~+qf1%()n;?`+~ z&DEeHXD(+^OQ^Q@ZTsWf2C+;64N~n|(4?JK2nn!JuFNgt;5G7a-dhO*AU zM`q963?V(pV<`j__Yu;K09?`V-n;z>cO$m>+@O~y4T{?Wv1Ij>TQ=W5g7EyE6 z?(SSRBOw|8^fq(yNcMgWono?qwTE@qW5Ivh_DTQ!yYtq;kSdUp?F&ZQdJ(J)hFz(Jl3aJrIlH#jG6E!#Tt*0c4R-e4m2g~}Sb_-vqNCV}x`Du1h9eZ_tdx7~BLTmJKk=K$eA6!dy; zK@4hCG8Oq#X%_v9)gZ*5REUBzYzkf^8EhkoM9WG7h;(?RL1<%has>y?Z|;OYz7$)b z_M*|D#^Om4{q%6xbW=~b976{>ToF9~YOc;&b6ByD?!(9-w+enrsxg{$I`)g7qM3^% z1keVgKqa(7duZol2?w<{75RTB&Qp&e`;uU6$}+s-&$>IOv|JNA3l&d<^G6$DAYj9d zp6)QMmFbt79i1O$FSTzBdGW79I#KSH#;mR7VxJ)0pY%T|YUmfWNy=&n&d=)!#+&4( z@l2ub(YkTIeEkCvyUB4)o_>8Yigpyk%0T}-G~_1zNU(>s`I8>R(dsUHF1h#nrBo%s zP$#E}^(w?_O7DB!6#^ad;a1%n(#^z7TX+9@M$P4fspC1Cy44X(o?w5glmZKn(zmO9 zBtPp6moqwhxes!5Oi?6>ro|-<>`@4$v(+zgVdhZM)$ZX*K><)ulMqAcG4`>K? zV#2+YSh>=td!}Yb=!F6cYdgw9EQ)JNcW5clCu7jfIeDK&p#Px}+}11Swo4&cz-;B~ zgK3@oMHLo%e83+OAau(YdV!*#PGZXTwo5W9J<+vIPo0i!q-(%qO+hIe%xIiPoEIje zIySlI@q6-Yb~cToUe2{8a5k-&eFSOSTZ$y}OWpRD1oN7{Pk32xheF%qc4j)iyCy_@ z%-}VWb)&K#VhC|eaK{l`v+lie?Gi~*8ICqY8kKFMW zySw^R@YIEPsAznw#*487!nq!XNovyr-~!a#UR0Z((8WstzX6gxItKsGr`@~iS)0n+ z1p-@>KV_1|KjA%IM2PfHCV8bc;LKjm@Tw7$qVs{2J1D>#^fE-~U8ig}h(B1Fo;Kw*$Vb?8EO>2+d3@o!9;vF;0X;4^&*?#WN zx@x9n$A2$5B(u3Zh9eg^Xvx?5RWfojm``S$1f8!1xr!Jc`+yScTWq45%6^#(w`z3H zb;Y>-)jY|#GNj0-Tn?v(3j;xgA5@404-eb_JX)>8IT8&Cc;WPecfN8O8yoY%IXvG9 z?;NgdM`-(f6pG?Zh2+QoColW<(VjC|TGP>oqeax#t&1c#;(1e0=AA!W z!WyKCnKA|53N0PR8xI!F)0tb^Md6syG1#`N4kt$&i$yF)h?gN>$>Rk{$nQSEAW3WVas>6N5r#?V`HVTi=8RQm9Zj0JgVITAXg(+(MZ);yB|dV0Pm73Lu(SNR-J&mM z0|i`*_U$f|g|w{X)*~A^;nsX>B@c};40AP&NkTh-3pPR)p~$#=^Bn!`@Po#tGM0YK z*p?2v3aZJ;V&fx%vt4*)O*OtsdX1wdi$yyFMA(3E$8e+4N#K)W-vAmAW z=xNxXRPGE-J<__T=+l^c>u%fWm1*PB(+Lyj1SLCTS2uU^IO9mwUHcuU+M!s4;7{W8 z15^1Bo)|pBll>G~uV?7D6;ADtle11Mq-t#c<;69A zl9)Wl|Ni(T;eJUG_p4qFI=cj)*GrXsg)^%@6&?%5N~;HdO6&JYhJ;KWkHfsvXc>mt z>_6dj!!bA)g0)*WRGof5G^_N< zy-^TiYf#dPr|GFBuuQnu>?ttH!sQF8>{lR^dm)nM1(%6Pb_3v%2Sy-L-`B2ns<$-- z5O26n0N;9{V7*i6?n^AZQ!Xa!n;_xc7H@*iDn?_fUYxUlupb5If{4Y2f303S{7$Z_ zsJUcef6CwN{^ozT@-$)m;7-qnwiq3*9>MKBS1WLLSbm!1n&HV7yHuT)^DQ!*TESxJ zjMChPjYVaOR5np&jPt+19yqLBvcXXn2bDSq`}~{upA}p7< zaDBegKnn&FAc<{qGlm!_*5qgwyx$FpiC=6~^NX5hnfEN#^g*2Z)fSrRhwNx}6 zGdx`ojoIPClAKnsPSZC79VgciM-h9dCpcq>%r{cR=j8M{H+~c&6eENn0m1_yAjC4! zU?JcDZ~#LHh#($P6bO+pOfc^)DGK;48Yl?N7)PoI7KRSu32J5jpVt362B3xh>j)kw z0F4@~{|p{;P3wPJ|LZ6cCjPJE|7FZ)-~Z_d2l!_U>EAK_8uNGf9@PKeBIuCVjm}?b^+}ubga2gm=tT*;tLBm@7g

AKoVK(`rqFiR}ZcDChkbd^yX{uWe5YE8h0>(n@RoV-M;a?%ys@T~yES zvRo%fPYGTZ=vJ@Otr6Fx++KN>e5)grC@&scTAJLIxQ40JIh#|XPsPhjz3iWBg558O zvtm)6W4rimtqJr{d6;AuSW$n1QVD4EAqbEHKI~AS1t{3Uu!*288R6NJh}bq1qhZ=E zgbXD~)++yASX)&%VC#@wJvzC=yxF;FxcRm3HiF^imYy86|ERz*-8U@lH!$XJM&WA> zl>HX;&5u5+)m?8|`(O3q;jF~{#_J?`OcS?&W3!UG^OeISPgHA@rNEQy-%9BqAx01o zFSeqnXz;efUImo8i7*K?2Kq|nJLYxC zMe`#>+I!TeQ1sBh^Mm7>H6OKG4flr_suo(Jj@zjYM zTHwP$6p*c_u-6T+?&y5LT({t#Ij)J973)dheu>8Q*3VWMZNW70I;z)}vpJwyY|sWJ zNcf*=c{RKs?XTx9O^q-4pvov`L3{iJ+&k6Xu)a@%Ifke|=2e33X+QGw${w0mN#SD! zf5H;YCouk9iC*&1dKCxvn_?R)xP;t9jml1_XwA0LAz#!wm1fd}`p8z&*ke$OmoMwE zK%S=gofsXY=JB7;e7n$xN5!M7FLUT)&NVqY@K3g!23QkVzTp-*n!_I21SNbBfxs<; zM1w=%1cOWPu@-SJp2!HOf*dsP&$m-r1OUR}=k-0O=UQ;A1^Z&xnPV`G_|dJI zKV3YUC8OuwZD>xmpd!w#Kf%~zn3F>ruKLmF^Be`q_SY7!h)d`7Hw0S~3^;AAZ8Brs zxeo^% z$d^W}iuxt+AGW#|!2gjyE61Lw4jRlmMnSlfEo-FCCbX1ShMla(qMVlRrNg;}|C(a>_2ek)o_9;nbk}5lN=l9 zsz+R12ULVC8LWM$T8q3Thay@r&w{aq+%^p4%PJfZrLGCy@9qd<-MPy?>58Ix-#3nT zy!yr``Z1uVYTn+?_f?0=GS-v)SOh=$YhA=W3{lfyzG+-wASlKG#wa_1+6h7&O_~A?aL;`{!g?P@c~iDZbOqjVz)V3nKltzYr~Na z#w2>}jN&rUVZeyiZ{$scQ2dSOc-wE*xC)fl(YN(btL?mcli?>%ntDwn>*f=^F-5g`10lP{yN)|z(0DCZv9W9%gKf#^P-%Rqdc z3U%E=8V`97T!Cd_Y+dUHF7^rCIWisqV`=CT#&`_N?9rW!9#$rid+#Tf0;e z7abmVVQ^WS9;qOQ0rQ_13DMV(;H(!=mvuHZ)cJ*Q(8Au$>*wC9nat3%3?jhI__E|{ z3N~g=QQljceceH1d3D7g5GM!lU+S<);H{}B%5PHzXmJsaiYs}|B0|jS4bd%ChOr+= z2UtMiaz(5{6nGAh&x9ig$RD^Far!&1wKp_44`Z@gc*+Kp$1m`obydKot3mlw9YE(a z*+Pze*<1$1RHe4D;sf@XzBrvy1kD+sgecq^v@Lk#T5n`WE4Iu+XI)!R{sD0Ff?BIi$-zxi_8?g~~nF9@rxh~Z8QT?YT=FI+&-!3n=Lol>`OO{*Tue(Q0+ z5-}mA;M^%Z)QXcA3KTw|V|gAX%@pbop+tHVT}y8~*#W-ttqzlT|9UxfPpP=gzXIQD zy~u|Odz?Z|6Zj3$Zp)MgZVj2){2golexWLiKG|qUmn{Drqm=f|1qng?(T9D@|Fu7A zm|@VRy6J0cAG$Qb`LN&n<hz9boT(dai`@ZEjd;99dFXMekH`$$E zoz$Y@t`~@xX$Bad{+KY;PF&d5Q9&EhvB(TC9Pj}4cI;#+87!d)Hr&0b!s?J zxbf;bI?2p>x7qQ%O1cH85{$arycB8QME-aAyu1n;o}XD0<6Kaj<7&^yFc3tEXVKas zX|0xC3H^~sUfJ`anTK9tx6mKO0{IHwQt=5;Mx6_nusJR;mS~-KN#Y5I$eea>Mdz1^{n^YNhq|tWKx_y};noi$>eN@!~;HvX>Y*jRG zqbE?*BtG8u1E}WyQvSLLUFNPcN+A9HsN29m_y_cf5Wvf_+2&zH-mU@}f2*vm&VTKM z2Zdl7f&uGFufm|OIN@awk$|U+D{bwf>_pIDmdRj=@J#~?yUX`jq0jl#5Fwf(!lOWUMxal|}n0~l5nEjKJC0wk!LUuMH z!65q0N_Hj!k+A2<@B!;`sqMkyuz`na<^Au130?Zv#rsuMm0$Q2AxN@6d~MzUxZwVt z(Cz(I(d|uw{)_m9thv>hD^sIY>CLekKEUDnek{5_!$(dSD%*6cF_n)-0wwB(6f9_S z>2MwVI&N#WUQ5R0>}M?g+G$-WDYl;>_L~nAN9BMXy`?6FBKf=Nz%LvG?~rz6F~}R+ z@|ynm%yOnp6VH9{`MP`Oqd7hV`phKi%~W9l>(?Wl(#S+< z@{bCKpQ!_>zL0ihz56Ypozb%kB|(?yzvX0|)BR&0zAirhDT6p5NPpciaVd5B;zz%B z*x_U;^Su;XjfU^W2cg0C+P+J5Z@Y5XVU7Ce+L;{G1nW9&296(N@>359_U4T{ z*?}${a2uA@gn%e4Le4o8GJS8X%|djouq<^lrc9prFolq^Oe^epP6tS2h2o9RT;pRW z(aR)oyCKs0`M4dOA_93-#0G}I!GdGci|TU0o~Z=Qp&|{&Med}?Az|0YwbM(}mghR} zrb2^@i@+y_ts`4R+xMLs1>G9g7w=e6cYCD&vi)f*-KWLfQqaUe%r`&eHcpT>$?0Rj zXFPb_7F>Y1`&n&6GbEIWWaa{LO!Y){uKG7lY>O1at^xO<5RrX&iy9OmM>ps*uHmrQ zxU{-lGM$RLE$15)MO4vyZRNO!Et#w_9fu*kV75O8D5B0Lx>f(VLF>unE-)4&mNLShBl&zx(sWu0Ba$ilWwb|^aMobsg>zx% z#lOz|LP?>}n|N6EV?3-Q-$%hw4IN`6xDUHO>oih{Ll-=D-G1R<s487rK;*DllhgDVpO&h0~P|}LJRoGtfQ)?U0AC+X~|BfCwknzz|T>Gui7Ot*0ziy*n((qQ_g)N0hpI#F4RVa)Dyh$ z-UOM4I$MfH?@VkT+n2nWTjX;EcZ&0^oz%X0imS^$Egazi$ON4|5l~@V+bKu)!A!cn zHKPx_O{FAYO1;cqS|EhZBnx_aYlmz%vseGU+7NWFxRj)$ij2yg=ibn<;uOskUP4V;J<{37L&0*BMuYiP-Sb)$^kxvuEkh;n}*Ym!#GXqDB67 zqMf6NSqB4R`>zD;lGNxB5L@eI(AIYA!=7%>dRR*5CEUp;X@Y8Y(PIs)R{$okKvZ~Z zj@8{54mvu(1&#a7CcnpaSB9)Q+a>T#)6Q$>KD^XaD}jTyn6dbWl|i_CgxR^~mm(?$ zF_pwaw^sx~UGMT*Kad%Xd4G%I9Cj>idZIFyOo{S%@-hoyN;9`~YGUbE%KT);s@=W~ zCoK+*XxF$t*W*Zsl*Dy%kU@tm;H1@)vZ>OQGEerhz7B@+RZic3ERlmUt@VouF5xOy zf$aF2HTxk2n8eg)iFwr3yhj1RJIILJAe_@Ms7O~rG9+UH!|HDIw5BZ`KzG_B*jSAbo%5a)m<~s)P)xO{DDA;*>vu6 z(zk-bQUK$2^pg~@JHPZap^@jL`#{Zix+W~j959^MwO1{@r+pv@lE`ci4efB4W?l!> zv?s_sPyl|4?l{ZV5N^uK3C&0F;LDa%Z(K?ie3LD+zi0c4FJR63?-9Sz zEvJ>5*SfjK6H8|u6AwB(qSLV@hjdwgUqZVf3Mmw`^c^B5!KMSHX#r1mO8}$Y9OZ{i5M?V zB_lhxdCFk0(se&EH<%$HDly7Rx4l^Q0KJlKUt@yl4#OkC!eH9kK}hqAl7~MD=nTbsW!Xy%_o**UF|8Z zvs=6~%_pPvG|wK&ZZ}zQWh~}ikh&%VaVUk+h!p5`n`s1i6&z1Mve6XjCA65|!3?nc zXgrR2G)W1|PO{mkQov{Cm_HPToYSfpDSjq6)}%Q5h<+>4b*YJ;nB>8Ze*5*<5*`iA z&q#JoAqIS;U$BQpjpW%$dB)*8h}|WZYV`2&mjCIFPmJjh*Vvx+c{M~Jg2HuLZ0)`= z@Eo_1m7~$#C9S&WUb#0HU%?q!#lIitV(UW=miz3w)2xk~{*mPoi?33TjPx1s6=X1&u+}*4%K!5?a<#N%l-we>SSoc(Pe#B+7iJ+dJiijOdvx1UY#S~hv zOKxp?nuS;JOl1)>K1WxKV1SDNv(&>{dxM|Qi3J!yH-O2N-FS)2#HjLm!s{_ifQ~8! zdm2YUy;jv+M}ECk5e{|VMU0o}i3wQ?6)h1~c??}s;7J74dakmXy2clP@ytPlL&UWD zapfpaNt%Hch-+Tv@>s^a2`B%`4d>{lVz9LGlb=GSrUWAPW2nT(Y)+YyxT6NLb03DT z(!$e(NSLFM=3~y50_RUed|>>NfD|bt2$9E{U_SB@0R#Ku+ps}5cj(kfcGdHi8$cWh zpoZ);M*rQWdrmUJr}T8fda?-?q^m{gJu^BG9f#~OiC6teWR1Gjewr*ole7kHcY@5R zz`Aj^I&dCJmc{Z{qN%VSxqKZbYoTD&@9-1%naB$wqV-%!wU~v_@L6kBE*mZ4p?S+B z(jlR78%h26u+~=XxrNOZ_sCZ)%j>g<)4ArK?4tkqQ6!8<(XfMFoVf>U*wxpq*fGF` zFT%a#cv8x}tDH*#=o_KaA;7fuc08(4z<;!EPa60uHB5Qedgk6G&_z))ol2Mje||UX zdvU3bVxxL$VppX5psOKM^k#`38EF3ph2xW69_@U~h|1<+O+}YQ`Oi5e&0>W)kEF=^ zCoGM$jCwMr?dU~VY%|&N1=*6v5+-^Of@!*qul~dJj8?*Am}R+pC1086yhN%Z**_Zd zZnsDeB?W2V6zVzWkCQV~OyH5F(CPijL?QDu5y=LHiJ2eveH@#E(+SK`?h{v zsII$ycs0qiT~0E?IeEHujO_SV1v^sWQ;gwm3euZahh(v)G%e7t+;O{Qy}}`D-V(t+ z_Mg@Z8&r9}6Wt~v4l;h{-h%vg)P7r5-4-edv zH`4Owt=wE<&;L+>2I#7JSYgbLXdN+)UMCFKI-Jcl1cN>;~McLNu(1ZxDF~84+BhAkVFpE0uSF2HPMz=yYtqlHnPNY-O z!Ll1uENoI}IG^uIj^&ZhNnzm;yI7=gSg3XW07|&|tN8;~Ivg&m=^F5V=n#W!V3*t^ z+@S~DwElS#IC?@vmaZ_6M3pURDV&Ydn)xkTQZs7WZ7CV|BTH6N)xgAI>=Wq*h8nO` zE@FAB#KI0G`T}zpxR*H#T#2EpPN1X(6vv7+$+|Lwc#yePO~yZD*=r30?Y^OV^V_t`h)JqZ%7#nL&n?y+l6KTwKipj%nM4YV@WPhj@?fJFJJ#(fpsoo>|kD=o-)0 z8wl9_wW%W1sZERVB5jaKPlDu4(9|mJvv`h_DrKWwBTYb9hcBebVbR6Suh|mEal9>} zSmn#nZ9fuCriy9$cGG+-_OS4h$ILkJ6^5FO6${l$X|lVUs4c6^$FP*-XcW31?5`Jr zBbW-zaylgW*?jE8m}-q4X= zFysA!1{}>|FL38wQ~KKL3YoK~f!E{nrhL;|U`cLgoQjJ6vYoz#rIZDn&B@5dmZW5;?ChGFLzR;X!ao-7D zwf$quhVxS#DFFs$kJc-q}@ zsEY0qzJGdQ7DNC~iXIw9o|W7_;X#bT&|_Iw^a4tKZ`~0sS>^s6c`_U#l??mzepGgp ziN{kOu-y(`^EMP+&q;`xi!VNQhqGZGN$nrsY>cG|TbvJCy@co`bzai(Z7r6l;wu?E zEWXBmx}OP7N$I<%`j-<)K`3m8pNT%<7<9ktcZaNOkD|{Ur5*vFt6k<>7TfTx5kmQ; zs5Z_pcn*317+<}=lw_BbSDs=|%*a2m8ywVlpE~Gc{dX?42Ar^Z)kZ0l6!JTl|d-Seo>2mLvs%U;ZNPzrzn?DF5Ff z1X%6#@8MT?blCsL=I0V%$NX=(iPpVx*N`pq~oEAj*lSvoZbE{VzJ z{OI5Zr4WvdXaFwn;_d2)FnTvW!*$a;o9O68hGiV=9dd0An)5*8i&9?ijQDCLc|7JiUn@AhLPZu6*!YLt8 zoM_Q$`quI}-Fs}590vVzYm-Z&bFa2-kl%*kpb7oJ$e`UX{BC@6_BB7v$cUyWNdvpjdD{S10cAI0M}#4*cmXJJZg-F z>WtS(LhDfH-p!!fqV_C!fg2d1t`oFF-D-IJ2FF+jiEMXiS45^oZq#Jw(SJivHj$jA zrLK`y-WrQ2B$U*&=$P$%FtJdVDNcTl@JvHp(ik87;_Hp>es)37#SS{n6xiHTcJ7}2 z`e*reV`J~T>*ip*WJ(t2?QL>{+QFi?Z!kIJXxHmt<+K&OQTE{A-rydm8y^8W_%0j5 z0SXMrhuD5+tx1Fh8vu$P7*Cp-pXvx#x6$umZ5qtXiY~}C6CzqClh5_h(Y1a@q*(DR z9+{ml*SxwX${ZlQsKclSwVWK4}K=@G5|pW!{OvOIAt zEK-%YQ^41UUv8h>i zO1Qw~y&2IuA$=64_gYSRkM-7oa{)u7N<*?851wSZ24-V|Q7zU7& z_Q0}WKInHs2?85(N=lZi2T;%~$L}R?hFG^tIMdw{Scht%6|$sIa*eO2zl;ND(PC!T zTR5;~$Eg1HcmihTz%uo0tK4;e8-m$_eG_!*gI9F;0sA9!gVa9`1>~2t0qxtLi#guv zjD$Ex?UyHhX(UoYJ_PyUBLoi~x|ZAdad*UX+`Rs$cQ1Txw}m|P7BBxd@ZR+y7aqd5 zcmpsVujH-!%)d88B+3NS*)6lW&HtylG9W#atMW21lVoxF=hbjq_^sPAcW3K;%A#NfQ^ciibcziX}n=nRC z$q??u;G2}I%FtTNTKNp%eB?q0Xf(uMGw_$Z`%&P+8(6*t@%n9|!(vvgyw|%A3ES!G zY&ux}bdo^`f;KU!Kl$=k>+NK z$X^)|mPM8sH+HL=j|6vf$L9&iy~#5V z@T9d*^M$q`)viKu1#Y|`U&Pt3W3$-ZCR7;7R67|p`qczs6onok z1zRiiiEMZ;FM-!Y;zg9bw_fT_0gL_Y21AuvZ7x73kQESQBkm7L_D8uch{yBA#cX`a zY4^+YhTOGBHe9-3zUMC$JE=~0!t%=)z!~oF&H|o}&Uxw_pjfxh(?sqoNEh|09vxiz z2_>nUzRUK7x5fZLcvbeOBonJ|f`>J&&O?JFDW`Hw;(9{S?8Qu`Z-EmY@VI9QvbdT? zs)Jed$`BT0W~M@w4XaS;$SwNSh{aoMs77Gk*6ieG_XtfCvG{^X8`aRQ(t3`a6T(w$ zAW<@TvE2r3jp=$cQ*_c2z!ME(vKlz>ACx&rrE@J&2yErYimaK+iaq&tcdNFF<|^b- zudkR=qkMg{@Jw=!fzFAI(G)A3MqCv8UW--|d0o`sjvH{JS5GOt#PZp3f`^~jm@S=! z3}P{acmjk3B>IpV$KdpG&vM{P)5(jLh(-;&a{*B;spu5Xe09T=Er>lbc~0AlhZg=( zf7D4#kNWtQm(`ofWJmyMJZkRJSIPRtN*=7tj?>C_44ecE8hrq*3WzK6><|+}maV?u|oE zie`$pW(f(fW_-RMNYU%Axqx#t5Jm=kX{KhTU!L#$*tXA9!)4I!a`aS1qNtj=-49D@ z|E0khtp(k%m|jD|?y~jlH#H7hL+pBUh)p=&X2ShBkk@O#rK~lTa726fGY-fFVCzEg zqKq5+P-Z4&qiuFoEd9M4(Bn&#+KHFhoDubw&By{gqh(g7&CWC~v-n)3{pt|&@4kh$*A_|2;TWA>*nRmJpXJw)4zTIi<9=os{2&PNc- zB8WSN2a-?>vnA`8EgQ2uyhW4Qdw_iC00NOpDyl3S%(`sq4AiHp=s{fq#6(dnkbD|@ zhz_r1U`h3Yrr@p^#_?7iO7#7>rCnw(|FH(6?_fKT^IPn%-Kk_YO@40T;4k+8O@Xb- z<_Ep~`Zfj&3@Lw})T(sPIa`btQ=>1Zz(IX@({jlsr-yx)b6W~2+k3}i0|Mg=)=wyA z@=-jhn)41sNTjp!o-$Sny!j%ke9*y|Hu7x?S!GYbL~16QZtlEEtvNR6n*dD$%$hZ$ zfFIAKJ=0+I_utCe^4ifyFeIJ0s_?)f*GDIg2co!$$n7MCW2k3QM(8vW{8L)3Ws z(pX^kV4UH&O~PpKYuBXS{0Uh@00U5AAPHfT%v&MYEJ7!2HOj(X_eJpX^yg)BV*1We zYh-v_Cux;|+t*tt%Km%Orp&rBo#A>ssX4?Gb8{*l9|TY<-==w)o4KAq(jNhpbxE8y z7t~FTVlk^NG{XDhm*eHH-@&=Z&t|OkejSN?19iLfuWrYmwUN4_pIIRg^kIdWZ1}Od z{p!aN1{8@RMTB3=vV$rsdbtDV$o3`dRs9LIZOHNz;e|&0Fxpq?A?>&j3YIn%t9Y=7 zO%dVGRx|-n$@pY>=~gT(Yh(EH?me3j1Dae;b+CkC^X4h=N|wBSYKqwG=!3nhA+kw% zIv>yq`}Te7L_8WKyiValgT4gIb#2wElK&~pPS0rIlzbc9qPWI1N=^PPGe0Gx%EP+} zS3ssA$^Q!{l$xN{im2DPmOR5M)~u)bLgtViHQ!OWQa5@%jS%PF1cmd^RimYcc&T)=%0E^s z)+A|KGCcmGL}j)(-4kMKWEc{xo_2U6FEW9xpF^U*QJ8J#yJD7+8FvbPS`-Iy_3${N5TX+@}64OmaTyf8-$y6bx_K7hTikkkruPC$_V*gIYs1B~Y@{VlsTWsb~%_ zQQ3p>vIb_8IN+VDP`j zkFlz|H%zLx2*w5SpyVX&zwf5f<&;2Snf;pDxT?3!_)RP>n#vSy{$y?0sx3lzQbK2A zQyj=Asr#yqzQid;*4uhJ^bq0B@Av|XBgWOd8 zopFnfj-l!PPD}M!kfdo5LZJ2(m5>AWS&DfYD<4kf9a~vf%K{g`Yw!C-G=TpOL5|IL z-rF>35%L%2@PiHhc%yDbX$~t;&T?v34jF3!{w{N^Naa9&)Lor#z_`TT+QF66F!z`+ zxa4BReM7(oq~&1S!W2$Ji}uAO#lIZ@xAOzW$tyEkIqHvX~4lBMHf zgBsD)X!n(YL-u#P^p;DIxdjgu{njZ3jR8L(&SO;%WKM9Bt{wD6>O&$JnFk=}cv1eQ zCHxuE>aB#ylWSbXL+0e4s6JFoc{oq^f|OaX+$=TI1qs-rVqr zKy;YNURUdJ#sd;3`|maQWfTEMb$MEju$_?NM9v82-lZzRJV6oXA?o)ckV#bo zTAgRGXeYvl#`tD)lc-G!GziVzh3S%S=j*@TzC!#_j=%j7SIs~uFVFC>jI3?gB5a-+ zd^n8Ut5no`y&UZyt9 zB-eFzOtH!dXIGVk5{YYvq()nmnV|4*`6{H21L5XZ$lN?f=rC0Zlc3F-Xhu5m#ZH7i zx*Ecg!1ozWh2B-kX|J^D=NCd}_p(}yIRZ2#HzYN zT`EwL-tYCb753or2P6 zxP%Lg$4_O^r^6&+(>4p7ItwHOvQm`3u&P(#SMkG5E6w(6Gn4y62@W(eRGAN;68!kk zL1I=iVFf%v(sU%j$l0561C@R?3&z8D6xF!F{sw`H+|e5_X$f!ihY+`OOLkMd6agtt zE070~aUB-6a&7_(8T5-m{P`#yb+UBn1L^zJolaO}*Rnr+9!wy#0KSq~X(B@}0_{;?{hHG!P4@P`kuv8Zp8)8jvFS1{^@V9L3HOV=b2F&0uiA>Vvw5}T?tdu`6 zuJ&T3;ff^ZmQzN7$|o%20b0r(`U_HLn5kzBrmxZG+Z8$bJpLA6R0&k3hf}Uk>7kELhACY3*rrRMwYqiNa0v3`wU{+p zeb4Dr5QX9sgeWl_J=(Sqrm3OJ<eOeVTp4y{Nv9s&+=> z?nGcKPkzqy!J-#-Fu6Epbi01_$PG>hmPoF%HwGbsKoUL>(0NF$hK-4<7Kc^~z(M5Viwwr4ujXMmnm}zP=SuMtO98lH}`jqf!g{CF1hD2ytbnfV=YT!1fj954* zg=@-^fSzewl-h}AulGT#<`xASoOYRQeoxIjsi1(Ol>eZ>TZa{dN~QGW<~Dg8GW;L9 z-a0C-py?Zg;K3odJHdkv782au-3iX1!AY>e-7OH@oxveYa0%`Z1_;3h_W(OQ&-;G6 zXZP&RtIt-$wO>Ko6#KqmYrjc|Jo}5n!DnXNFF+KW1ARQA z+Wa2`o2RCvib0*;c;#yw$Y>;aTgm2RcrwxH0dAO{_|93VSPyDss%+cJXMF#5}v{^qiE z)!kFwQO86J=Txx|;bD`k%5%R52+3O=Q7nsc4t%7Iis*3-OybJK?OX!>W2_+~ra;#eSRj-@k3n+_OGCYZW-8G*`3>p{)Fq z;DPL0${)|$U~urrBc6KD)n-@P6^_dMX~K)_`^z`pVpOXNs~iIU#P1hb)=WT2~kLWaJ|h!$e{QdHouY?0{@@LTTG6K0P`BGXd% z3VmjVj|UqnvQJukP(c;*=W%KukdOpl@aouC^Gs|jCI>kvVp0SCj5^W@8wM2;^hypj zGqmv)DpW>dJvXY8tf-i-qZc`NcqGNip0#~mm8+#z%Z2culS%In)m)3;Q^9vJqi%Yy zxs)D7NVVN|C+9BjXP^CUFZ(?!{~iSYz8eY!m|$IR9b?=LUJ$lVNm5FnL5at$Nj#_( zK~|?%bNu``8vDG|0&mjh($mtegiP3P`hYi+jaXg4ZDi=0Q28<5ke@?w5=OgeHrp#6 z&AaN{9RfTO_T@t^!v2ohtnRO5R5sXo;iz{;IPem}g&R6%6;8=~8QGOg5a--*z|yDQ zAI4Vpu433gvg?naCaobp`<4Z4l*BSAGy$%w7=euOg);P+>yY-I@g?7137;~vOVy;- zlEc6xdmq*|FIMIS1J*e)Q-VvZ#UcP~8_A++r?zyR?!g~wjhp5+VkjYqQ=&dp=qX;3 zM!7e?S~6|TziWhoc@N~=GNsjodpJw5el_|ul$zOEw%VEiEcv^9Ujgk`YK;NcY~qWB=4zO44*IO)6DK1S6;uTZ?a>;lfU8A=nsFM$16KT&mR>h z0q?}oSeDUFo)F4O?ZF@|JZ_LG6o`V1aZ6h2R(T=*&JOjGD~i;cd}zvQg#vrr_*W0} zz(8Wvj(2oeOv*O1@>p>)Ix+oRu4RIW7}9ofr;DJu+o;REeEUlq`5 z+(RIIcD^HZ7{Lm^VEs2IfH*#V_#rzTnaVo}MffdT7AD#l+4-3X&=#~=r2FyL&nrTt zy?G}4QAcoHk=m`RdIP1%?u1)O?z;cz-zHQ3$gv8f>cKxqWa66kr;Qhw6vamwkQ81= zm9S%p_ef27+oSjI{0-z$nM{L4ZloWy^s{S3wT!M=6Ht#d_}gW8>)Cj$#?nyg-?v(l zY#gJCkC!H5P@uc0KzcW7+L55gdx*+WRTV==u}CDx?gwnj3Y% zgFc~o1#>49J6tG$eo2=$5pobA`n7zxcK_hzbp zXrjQTpAklm_>8Nn`Kr4sN=HMFZ$p4$m`>)v)Li=Ma1jS$HGN_c>k2c^@KZXFmN`Gx z`^gqeq6kCb!nV?T4CRZocfZZ_jp?=CWR}wzMYteQ3J(0m{FHcy)N zP?Cz5^`0$=22$u*u8@Q;YL9dj0P=ukbd=ja7AMTsNsPW9#k)10cpW(R4rj7&VS%_= zA!c>JS)Ekya2SyzK`m4UpOo~q#r2*zdmm{jk||fdRD+a`d&S?m*@{q9%rL{+S^Ce^ z5T;JdvCPcd#%cqxC3Qab6+hPrQN%tW#CS92mmp*B(&^dHuQ9#-1BDsf*tpMEbpt+J zfyGj}K@#)&fHkB(VKwg^{i?`8!34Y$P7X07;8cih<>f0iUh8@nIzIkqUijA{BO~>9 zwwt^ciBn9V1q4i!0zb+q(Sryz@w|gd`WR7iGS?y;p#{b0(QXB%^rF!B{~UpCCtkFZ z#9E9!EI2rol|3{T36)WnOT{!&3bYH{u6=)`jQxW&pLt-Y`|52@YKAQA9Ab18kcwBX}e zltJo#-?}0xvvu=f?Pf?6nDS7zx?6TQ+5T7BHGIkGvS+;)KL<3f|N3nnQ!@#f8Ma*W z9gCi4#^uCH+PkCN>^sSZWO#*+jreIcIgg&2iK9c*1WDuu8j$XO^cetE3YJ}eU+>{k z=5AitRGF$NOmZg<FgcKF(%Qw>_|*LM+L5@x|>w zS}!7dTZtvEK|f}DZ_pq5v4bc#(}aplxeQ_Zx5Adg0P;B-{wLmF z4i1I&)|oz;GjLIyQ^$IjLEjyAn$x?ZNy+4jt0-uTy!+N0_`kdJjY+Z86Gr zaRf$`4TuE9(DHR>e=?QTSOx_XzJ|5TUR}qY9slBd%@CbsgyuRXS@F6u93M#H%H45 zMTWjmKZj}{a|gB*7efDf0=pc+vG%ln(Z^irgLT6)U z`{@e!p+N)aORx1_jf^&#-W}?CYcm7)j&Xn;@C|U>Pkd7GhZLpXe;=Z>=Wp%RpN@2! z!oVsA#38A|v^oqE+QewDl;9y%BE%ul*?gV@WuRN%DqZYMg{FHhay(!+6}oy(<2!`Q zXnnDTj@7n_K5)W#{*}&vldh7Ffxd1&`PU~S?NIQ;?i)$negcBZE5%>`h5)2eLi3?~ zpFywsA`EPk@3XuS*y9kn4@NwZaR3#JT)jOoqu-nYp&$EI{JOaYztZK5^c>aTnTpOG zBaWqQb*DLJ16topRz^#jX^N5#jnZPIaWX{fX*bdycqKc+e_E($PS zX30%r2C~E=5vE+p{*zv@dn9aB^3ei*X#aR69BWw1YwVAOqeAIe!l>OuC$dFBR~Xzn zLSS{?>=n5)Ng8UDJ%=~m&gUeMq8^1w38cUXR~*KQeU?ulfVyaCxp+C>Po?}=X1w7g zGnRHa)tjrQCCus4(hk07Gh%FHvd$yJ@KyXPXVKlTE>W@F;51g-6y`$nb(LLV7)rc- zlOtc=Ok~+1bzLINkpXESZqgEY_2aV?u|a^qBZtTnSnv==0Bd4cz8p9~2+A48c?r+G zEd5CEW*e!cvk+&+!oT3>w7B0@`In2E9j_Gnj@|jnvvaU+``%GxVhMYjDywx6@hF%1 zO9k$eg^U&UxFtBMP@>6=3(WJjXBy`OcsjJ~7@Cz2@lEaqv^EG6Ijl!X4eE8(Son*; zJW95ITppL(x>52r46&yaE?hS97u$BH%npq}v#MCuI(b=cx|orGZt)-7q_D&l&`=Uo z{ExI!Vh+EIaQ0EHA<|Q%yhGaC%h@nj}&9jD#fGz6%uhRXOPYrL;BVRZJ{cITn#I9o|{ zE^&4kr`9<_GEj7AJX$zIE|ujGsk@MPaYZz#QV0wTNTqX+a#D9QoUP6OwKJKEUPoKo z>fyjATChd2SXH4QgbB9%tu7t<180ifEgA~l7Zjjr8|QDIB{{$>KlCj`bzdjEa7VFg z>6sz!Id+%YA@cAgI{RZP0-&2YoqUxGyty)AA$3}QdzW*jXRzotUsUCL zjN~2Yn~5;9M5mC#Fyiet)kdpiUjS-P&@3IyhYR&KpCxILBR+t_Zg9!o^=?Rj1SOjr zE&kTOyX8*K5c#c4PC5-oa26jln_*1CJ2~>tV^8I+aJXFds2nrIars|{MuSF*2-WlH zT=G9BPtNs!KPRt+dL<`B;xu?~+f~JSr7J3mV14^;)%u5;k$MqCy%I@sFo2kw^V$ShP&|B zU1csaRo;<0g{F9Znq$(Y>7S0J>B?GES)@?gQ1JwO>!kKO<0avnrsdqQ$>6#cc8Q(# zyshVfsJ(E*n*a^vN8fKHX^;6H9*hJ;i06y%H${7;C-#q`=AT$*Cl0xgh8AnJ=es1h zW$-^5?RHhFan=Zg*w0R#WO|SMvGYnTsLON@@^?qd-M;z1hcY7c%S-kwh<@NooZgP$ z^JyzRLd0eTfEf*oAB+|MY)oADhA-=$$eYRxWt>Ep=dz9x<^QDnx8`D4HX>ZGT zR~m}+mVp2@-{mv^h+7#0vbm(jV!7wEBItSTIn*6VYms4Sb4tN{@B}@Dje#ck2Gi^| zq7Hs=6Fh-Wnldr?X z5D*1C(Qo)^;C|d`hUS1j#vd^R#PE`w2Lin058(l~zr19nNmIV0{e6J^C)rM#@+Dmg z1Qx~lLh^Ef)))V#Y~VMU>q}POhZ%a+;z$c-4B@Is@riH%rjzIsP1UUGszyts1zyIF)0Qny(UON0Q6(OL3VFsLKELnJg z3^yZoxJ-*#nFRIvr1iAhSjoo8{5a;Tf^*EQH9!(nieR8IusB%N!HBd4V?*Ylt% zn-r#yX}7$*8pWqU{2z8C=^dy=f;CKiMc z1rWfFoyDIwc&(-~l#K;Fm5hnIzTo zcK=eefRm;JDuMQt@Q#t-JeD>-3jtwHjM1;0gtC@y>ZLb%yA`Dmtn*)uRWwAwCF4J@ z+z9Z+15P06mPI_-ByIemg(?>5)Zs)rxRnG`#e{E}yU$R-*cX-KRN!I*7mW~5Oc$*L zILX9_iV`@uNncCb(hbu3a{j~IO`wF5Thk#}|L6APQ+Uy>4y$vYU%hZ%*FLLHY8Pa;U0R z1av&BL6~VK940xcC4Ne(q%xH{+(a|sjuf0kY@J%=o{lBP$3<3k;(>)fT4VzXcQCp? z7ett;;=`8_oDrmTAdj_D2$Vq76oSGjRcqK&&aOihJ72|C&yTMn&DJy@4}pF(VS*oS z0v!0?HdP=@sa@YV_!*m7l|QU%RF79Ca*aCyZADR+x+hJC^oztK6evkW^DWRKcF%0~ z`;x9Vx_^iT@T~+u$+DYdlr;Z4^d;%s*Cv~|3~k+jRrgfagF+EM$a>o{;c{zgugQax z>xl7N`NBH(hoolh1+P`Sw-fudE7dV#U6q%$=|bt+q)aihCNWd9iF0sPs>{QdDtv8- z?mny^k9E{iE^5UG-);3cR-WqP-+UNr4V)DW{k#J$wb2Q_2}z}?uZpnNGbTa>LImne z%MYY6wm(nE^$N>C;>4hu{_%+{@&%nqaMeH$GYcEtbh&0L`IB3t{rdzCb*-!nl!}}m zXgjJ%i{OgS)ZKrqcL0rxx%=G|vdbi4S2@Vr!uDfO7nB1E(R|ueBtQg1M#kX%Na-~Y z16SH;0e6AK^Myyn544Ca#y#@`inO{7d3bg({>@aXXfMY*tBsq9n7n;}l46FjS8?d$ zLgg33gW*};mB9h;Uo(shNZ9KOjC;pvmR0XK>1~|1qw~6=J;v|Cb9xjYas1F)mFIxv zzg}3!PESZu6?J@eGb{pI=VKFI+k0=}D(?v&zwF8pB6cK2>BDAoIlNu{{-r$dWklg+W5u`!UZd$$YpM)iSBk$iWENDdOm1FaR; zvafCvR9iN>xSDIH(_V|q_P!n@BnR3xKULg!FA@NsUlgrPtr@#;l#R5*-Q!lHvKjAu za4gt<+VJBWN9UMNRUhAYR$U({TNxC$T9eUV7(IITZuTs}*v6I;04#sA7qpJ@rd)GY zdj38S?FyLs_g;J}2Zdg%uyymv*}X!UC5W}6usX_5Tr#&J;c2yr$*mjLmJ?JWfnx4DErR`L2~+We@DVh@otep zLIMBInvV^5=uPUOc4bR2WX?l6r31abu+_gelX})J z3N@Lur@5eXwr|$9DJGw(a;7aTc)#B?>?k>U9kp6lEmrQB5vEe#eRszhudsHL3P5zH z2sFjDF^U)YcuM`{l5yzcFwlUb+%1s{Q4c_lCg1QIfB=xEw$mP#si#Zhf3;(`^@YCV z6}9Rgd|L5JH{VANo#EjA0rX}9-?c{#ci_HyTk;=b8EPhsyJ49&=r;thwZW7LHhoiE zz9>R!8DdOkAQo!q86}eoh4Dr2Q;W9SWn2j!#NQrEpQ+Axyoy(oC;yw58p9X>rNeDwT%j7G zq(a#p>AT?HFDE_XAjX*(9#J6c3;4jTCNhzN>`q`6P&`d;-`3@6Gb*{Hc;Sv(WPv5wso5FN@GO#(|W-?)btrW z%8GymZ{J-rW;Eo7Z)NA_0ufBRjm`D-9CB0yY?x4Adr#-VaMlFg-FY+@{g+Z*k;TBP z`&t*PV&O$Sy+!`e?Txh)U7A`^jXL)Q_Zbm-gi{2+<#wFi$@%$i40(sJ_)_bhY*hVuG(-*yqgq){^q|{T&R$z?<|)RT|CUiJ^CdCk zW-%}!^wr!Gn8cn!K#hLC%1T84bD*7khMuY+H9E}+<-R$Pmg2V3%9c9~ao^0YEm}CU z7WLBf@9B4AXz>yLZW3}fmETSL0+KQ`p9U^U3Tr{IXzj&(Xt}k}%>#=uOS`fU3>jzk zS&>Hfp~kdKFp?2g9!7re(&9L6{qY<5-@mg^uLIo^Mf*fgZRkZD7|yb%b0o%i1p6%Hj~D#PPBJ%$q)jKwu93qLve{Ey-Th0&#ulI7HVc=d68) zh6rOnPW<*)j7m6b6#cX{*fj6{xM7Y|wJA^B_i_@s*bUqvpy0Ya`W}hWwRHFKTl#Cd zy(}2Swaq8)fIbZ{GfXqh9Oy}Ig0=e8=#YV!0=7dB?KdY_JkpBt@6dPT54JXvQJhJ` zrQ4E`WM~!Q6EzxR@as|;)M#xyyts3bl&XM~eB2frGo7^>RdWOeKOhneF;2#;UDNt+ zDWEfw(xKOXXN}`=0Dl?yc(k?#j+5W0ezi?RzrvcCodlSfvQaKRbMflgmm?3}t;=Pt zK3S#5wZ4+HAFhmGWYBjm3R-uU$!BM*Z8eIQ5ujv>QvAkKpT5q+f31sl-qsI*vi}`j zS;Rlp4lX|bO$$t^Xd!;!)%ICXj?Hc8aj{?pj5Mw!2x>Y0BPVPxof`jCZ^|VjiJFoW zi%3E-8ar?~iuR7T?EWY<)!C;qHZKTL@!%|hjc;=E%{1gwp1Dof&ECCV1? z?scd|wCy%jcG*rQb=`BFRK;ghY+k^|U&Gmx+k0&O$+o96^N+p#ukwb;&>+og|8T># znE&W4=%=Ec=V451bcBjoNC+};vbf@W7?^=d0IJW5b;c4}kO@QKsAIv#=&gQBg8wS9 znfwru5j_9NhoA8?$w&kXEsTBS!w2~T)I(y#aL8LeBBbg`PdQc^AulP(SEb_gJpwa7 zNk{o?TDHH@a*3?ChC@nnzJ}S>T}^S)pIS_ipjdOKI4U66oCVCt8A}yR_kUYxnPlqO z?XWcdvf>A&t)Q;95pnk{6irlI6Ene=w^bP04yh*-Z01AM1b0iPquzv3C=0$AU?4qC#r`V4qMYqcrc=X}kVqRZxI$+BA8Y2s0%MnJhlr0j zv>V$>JV<4Ep4E$0M{gJD0q^aYo4~z+K5$Lu^9IMU5{)+M09$c!PRv6f0}nZ0j9ix5 zJ+&gPeCu+(WFn=-k`nQYsITip^Z8iA6O(FRV(v?m}NJKunVW_?!s#=2U!;7uDmy zdM3>~el_Ee) z;gCS?xf2;Jk6qOL%j1P0dxRs$neX7QMicG4? zZ)Dmr4r-Rvuc05_piK@7eRTb9Op74QUA^Dd)oi4@&(vU6z|Lt}*4BdStl;V*?;eTBhJ5c{1RtT>8v7g zIZ9=dGjTi~paI~^SZK$m?v+L6iL&A$jokwi`nbIQLHCeh79SrUbhk^(L|Uj2 zWfgJ2t$%r%GJU0vv^S-lRvy10i{5=ea$y_x#40O|8yzse!^Gez3~J;|^c<83KwP=9 zes>wV8*r%ut?xEvOX1MH*$hYnU+^ z+g3I20vLYY+|P~NUY2lQQ7hzjnds!DO1w9rCLurri7%ApjR}=*)%7NUT@r_S?iw+C zPs1QUiojN&W{;EdS5=Aub!S}x3m*&I4O4nrv2*}j8Oy$3D!F(ibjkjH{#^(UePs~7 zPlnl7sv?M;Ii|&!-WnK7ac94=+?dcRc=` zJmt}Q`XyjE0aBUi4}bRq*~`UJPm;%n(I$B=iVSc4b;Rx3QJY8DSDn(8VW zIjS63MdBJ}aMD-z{<__nr9AdNKR+l^rT~h)n5}Z^5Y&_E*PLPkrVQd$#kjAbnr~5; z?qs2#KW{~sxKm!Rln^kZMQw}Owa}RR@wU_$L-E8PZMS}d%aNX&AQ-Ha-YuC4;&s|0 zhf(@qzHE`kcjvl@~LtFnNZT=%GosI;Fl}PZI{!J9W;(;bE-pOP8JUv3&0byB_ z`a9_r{dav5`@;v{aC?&AD~E9VQIwF#`ETEo{uTPxu8Vl=_as*+_3tlRKF6kxRHTx) zpMTg$GT}r$P^9ezN%#{*3r_#&3B2|%nJeJ8$yZow3WH00l+v=R&)e1Gt(&0Wi-2V# zpG^~JCIr8N4=7PVu%Io~z$J{XCO6746PE7L^Ecy}5r`D%IGkMU&7xAnA$|mzkilM# z7o}Mi#|c)oZG@a1e0HZ&_}X=rqjB;!YQS*ud2R87l2fY+vfufq_B<-98TYpPZsc$Y zCCU|K(b+%EZrz{c^$ic3dYDJBZHg>E<~ngZS1_3(n|z@C0Cf|jDzN+zvad#!lTtKo z&G@EHODmDwczo^eVFbc&^(0Pi|de2#*F3$q0fPj%*@RD z##xGf$)JWWDrPWxLh3jC9D42o+XY@mdGdlXS=2;hC5Od~!(AsM6{cDXXSqCd%utWO zxjXH7PPD+lJVQ|uk0>p21bW{$%7+C9u;K@{`4N@Ib@{N6E7iB}!@vD5U!O4ZbGR~} zf1Jxw9po(naK@36tSuE2_gh2_v`?ZVCmEnz+m(9ExU3_jWVcUI0_S}Lt6hPUocn@+} z$=GK&-jU^y znQ9+e6{jq`#0&9ZrQx*VZ@D(EeGyRXlCZkaqA;J|jcyL*w~!Opkk08KqhyO^W05#7 zrp}D6*a{nCg;vI1NMNk`ifY{PW8{&)R>_{z!Sd~_!Nu{D5BbDYp+StEh~?ny=du01 zW;pG*qgNlxYx|7{Ug~b8L_p^!tik8M1#aIcC(q?B$q{cAowzo7C>9{E@iSjE9%>4h z1~~;DBfv8s(ft`mx@?TQW4NgK5IFy*v3JnTUrCeQ&x>8@GDO~+AAMI#8X4WiRn5b> zf5=^;Yd1*mm><=#t@8dE{T7>Y7M@h;hH9>wM4xDN2be9@5;&Tz_T)nBPTb7^$=WwQ zM)$osSDYNRtz?dT{Hr^_TVAA_Gx=|tTO!j(&GzoVyaeS)(q=mc zHXuq!F;ZmP5F<9CebdL!4{R55Ap(913n84nANGH4*Cn9S_op}UlaDaQ|Hn=}vciWI z6&i9%DvxkcoQP-4jGWQL^yhBe7jG)%Qs}LfU#`)cDUz#CTu_X&QG2X!i|+^;^^>38 z*wAPqk8ew{FusYi&(ENuOOQK7OwE{JNKAYZi#6aXW!^72U!;IgtKkg!5}+EWCnG?exIq;>Pt>W-TtX zNM||DGQi)=98Nf6AMnSSKLWdR>zf8Br)Fmhg#P_D(S;z=!s|AHzIQ!-!aX@Opw0s! zy%Z6^Z{wfX@Uqjiz6*wj{oxM~0^i8Vh$p}!dGN9X#$Q1UIfOuX@C%;>UV`AIh6oE3 z9#p1Rh1Vf~|2?CJr6K(H5<4l7PjUr*BMN|^%LNTW7hZq=9uEk=fLL#cf1}iAVN(@L z4y1=MdqJYWO_4(QZ7vA-ZBidv8fmzpOEuUXHI3thMdN-`HFuYNh94o$1nTP`cmo%a z&Z9-bA`a>k**$uk4-igSNCkN6?C(C5k?8uqCIhH8fCvJIg8<|$e;(Y{R6teB-!gG= zLqJAhpzmh_`vEM{b_ZOD(#G&_{pHe{$%Bv9zt~wBQTGAwlc!TAZABDvQaVQ*r98^I zvq}|UDyw$6%~^a5DIT5RjUM46&qeyBvFbZ`Wy3UDR*h;zj!=}-r`&&>IgH2eTQ16P zcsm6i9>0n2WtfHhRvI?>F+>0l-{J#r&!(PrZqIK11DE^IJf}Kh6?TrR7bXl&&4`!sZR>VM=iJNE>HPs=d;|htWgl z=%J&}@!$aq_FfRU!zI?t)`qnN*y0_R=D|EuXkZ*mu{<1Bn0h@qn*4%pg}{5ZaI1~T ziGOMbQEW=*dJqB^-u%>|k2V~8J4+PB0I5Fyk%VW6&SE3g#FosS^e!Fr@ahHKvfK5U z`14UKEzG|ceqOdk!}^(G+_jCN(!TemkRsE`l2^0pv7md#ootqC^?Qf`EYIo@dlcHfee{V4yyP3Q7S%nr)=hnuu zc1fpEW&#e4d5Gnt5e&06PQN04Ey*Es@elZ6V-zaAF65hE>uK! zo%_#k2bPeVNI^I$UZmpEriF|WCqMT=U~7XLs>@!fIs7KUA;@6#hdMUy?yf@3{MzS$ zU6rp}7J|o_k7q$2Jrk}&^|C-9Bf%G7uHDk8n=gJcj-4gGM-Sq~esJW@q}-W9v)+H! zBJ#%mt>E@qynNS)b=%)hdw)xwX9BBd{mbeO(?LeOFU`ZRPo(DMMWOB4J2IXHpcqJc zHkL=77W;ad{M@US2iwOx3;(49#ssC5sOCa}pPE%PCta#$aRltW3!sPXXSV-hibSF* z=Dk~9qhHJ@{uV@mJA2^{o}D5}%HfJnJbUZE5$xyH?@)fIr-@=7ms1t(U$aG1Q8Q}Kn$my^62QjO1n;?#!;5`~+6K6EL3wT*|+1xZ2tD;H&sq=@&54&j0hU@1#C%5)0cc$-F z1BuI*L|FwMZ{2oB4~4u;A~b^!(RRK4J2VNC;9x029|4>R)}yZTTk=Y8rR+_6;?#aF z--=9UY|z+F$)|a&B#EXhd>%cadBaelb@t8T24@tZARi2qq6wbWL#nqJq z0l{ckz-(ap1$lefzT5@cZ`U2Mx)g5D?>sFzV+O)RL^prfkH1(ky(TPhj%kDIkGs@Z%W z1b%2NT-eI{^7wBT=6UyDeE$CdlRqWEO~RT)8S!&4!qd+Us*`5mE+%D0B`xPM8&YDs zJp#F>v!t^;R>+t_^a-PF7~(7AcwBRy-2P?B04WbaUfS9S17K|9kw7Olp0hmUQ*mwo z@aNlATz4AUDR(>6Na%;QWs1?pK^9iUU<8`c%1)tU~9-VS%Y?@IyKuu zNh_l$vRreLD!cHn2^4!8yv?2WM!tvVhny73!ne)vAAG<#O<7!KJ0n60*d(*b3Hf5x zAQyFa3m&s_oPbBb-5(Xr+4|B7*B%8f9IsAYdEnqn4WyTLTzp3k`6>>%jSz)ccLCvN zv`xl=ov)v=h6KLgANp&@sgII=PyM|^AppIq*$w_eRAx`kEP+wrOZL(p9}PbvK|9Vo zjoEVa5<`(A{r8B(4Y-Vp1In`=U~+er!opU_L9AtYP0YHuQSSJq;m%{}C*6D5AZq;q zQj&F8;y>0}R$tj5f-&~jOfMZuuf4?sI>t$1rrtEjgQubggJR`u^H%8VB5w zQMPI)2nbY7u4Hm93d}EX6m;O*jkk;DOek#DY5pVJ$_hwK4?pAURY8UKPYb1mzVWk# z085$5$T)Rt=Uw}H~>6i5$iF& zF*ah)^zrsvS#T0GAr7D+`?dBkf)>-3WiQMPvthX)d_YR|?GQ5IVJIc8NMxk9j)tG5 zti=ovvdd_F4M6i8Oi4@BfY(>dlfjt&A@yKcYi8pO2|ofgMFb6haG;BXY^^1`i19G) zpUc8c0-S>g`0$d~pA7$qT|cRo5{=p|ijQS^fB^kwzExcs=}d1a3MX?4Zr5XqcK#;v zbu}xH+6H(i*!=s1M|kL_Wfhs~%;Bu=ck2SD0T-Wz-U7$N@$+8cmtPtXi^=Aa5|#0z zmeeyR*7X)&`FQ&H=^f2v;lOANh8(2@e2;~JSQa6j()p(s3-IEB;sI@>W-pIGIXz&I zsC5j{V}iV-FclD^w$)Sm&G9zFabgYrKNAx{I+Ah-AGwW?MkFl?)x~|?+jR0g26)M&Kh^P_>nt^ zqHCW5)Wo6z<0Ec!dzCKK#hEHSF1(E2d8zZ78C*_q9V#bvG7O8ZJ;gTnYp`O)0|)E7 z`({Qn%N(7rnWfiu;d1h_|8OY{{Az^nv#>c~C8bmG&sRD(p(3*p{Dsj&xQR8plPXkM zr^CbGyNtmlEK4?6ikPf({^CoZ0*@&~Ao_c!Z7Z`|$d1#%MQv`#&cl4uogiPgkxTmtv(}{b#v*>b{WKK(f?$cxv$T3mxe`jGT}jMgZ53FY_I_T-+%vYiZYIUU<4RJ9rTVP(vk* zbMk9U?wV|^y~AGgC}p#H^}5Eo)j{PQ4kNBEcrtD;KB_>)7$%j&8Q0{_ifbabN0?6)@A%5Uq?a4;@xV-tnIBYnq|i` zXpUJYGX#?ETrBcM)Fqh-kvol^E+kQ)t@TAvD{>#>UNSYAKZ5F;9 zVMWA644^2Y(_5xJ$5}wWln~ew!Lbp;DOe)In9%KwiN3FMc;>D}aKK}~z-0Xy)?pon zW$#7*EvC_x?MMK*UE(7eJ2t)wuQ3Q*{o5h6M0c{yVYcxw+ewC!;@6|BRj{LRA_@@L zYB&A{dl7O7&+r6{o4t%Tpqt$V+ zl)z5LnB$^Um?yD+j|4a|m>|9OWd43+6uEm_xHL%^simrT`SQd&qV2~9N3v$F1P*Bt zIJe)U(e!H#x)wDl2A8TtQEmYsWAt->-H4cG-v z9K0FWyY)KgVf4=fRdGZEdc|`4!5`)ICe2&bU5ao-q0-$RELk_DD8S76EC;PiZo9uE zUpcxpJ7+DI1OC9P+cL8&TLpHStWYRMc|$k_=@~OS>1!nv@<6L*O#15; z@?$nrtpO3`t7c>#1sv#gwjx*>*_N5yzSjE$a{osmeuAuzWV(w$2{0VPEZtqypad$N zMQcBaH^rm;-RPljlygB0x)8GRZam;t92E-`ObCR!M{qEt9v2YER1E`!@qsyjtA^EyG6PXy2ZKZ-<}vK)XHIxoo_o#z zLq+6rY}@|oYyz~D$i_+>Povo*3XIIWGP(FFc^pIqJU3=c8TX&i!oQ(v{Z9jOc0=z1tQf>Pj*AqK zT(vPU*67|>cX=PWJhNsK)bOH;r71%;m&_@EJ_IttSI!Rf^VDht0bKZHc===`HVWv@ z*7<3emVQjJ^Ef8Akqq&5V}r(hZ`MMyia@KQo?~BQ!;((LS)hUrSkt7hn__vph_jj* zCSAR`-)T|;n~I%#IgB!jJq_NBw}poLB%|JNjP&F~c0^U=E)ZauGh zJ0JXjdqE@f(cx~&zOE#*F&hWy13Q%Ts^tfDRke~|!)6$AUHG$#jOSBclm4X%CXl1a zk;j9q1DK0hq56;ynyr4!Ct^|C94&_#btR{^DIq&SrC9q#Va%v=MIguAaqb;PjgxE> zk1@?!ktA1PJf?xw8K&3I9cnMT!4HtQ>o{T>Qwcdd;Hab=%ln5K^=n30wsod4UNshS zSEz-|TLag~&rGK267o_2?G~0JK*374b$EJU_MP&qq9O#Qi z^ssMafq7SdUS7+a%}Ap%=6Ud7AV)6HwZPi%G?u2C<5%0Cx3PF^)_L_~t*ro}&`z?; zmnlPj)2PFiK>c^KEnMhFe(#@4lu2eJv<~|+YSI~`?qRzz)6+kKgWY>~?$J8W zp(#B+8n@8hIsnv(bJy8HKkDbX;`=(*$$~BdttZ|`r|tkyN{q*Fi+@jFw`=J!i`%=h zo#rxAy-WO|9V-jL9gJJ2eAr)Wtkp7tly#zAA2wpYSBPrSoZa3!5BYXH``7KdZ5V;3 zMq3oK!;0Z$mSP3tLniO1JS5u|*~R8Bun27g*`v^a5u48W<#o^NT5Zz%)ni0un;2^W<41E!8yBbnL`X+TRrd=f(E_`;wIMz^<{i^y;BBtD>Zm0phr5=8 zQ5?P5^YzyWEJfz-Bk;uvPr(+b6ZqFq4)rr@URfrp6hVU_y2mR@{37@4a8JUv!=+`S{`BEC;8OPj_2&-M-2K+Gx=Zj%!eM-+ z&+HWX!_WV!n{jAQ1H@rm{~ga5Y?6tq$~N9ZCb|=SW$_Fa-Ezw(l&qPelH|RnWnLm< z3fs%8D!*PgGI=u^9Ym4o&Yu)H@R~VunJ}+Yxv64T!KUogs{Yh-uqRKTdTGG-P;hPI z+Yeh*)D+S2cC1;q^LNXIqtnOSqVU+XtyYa_2h%*CF$-R0f91cy`GbwCCTKRAf6OEJa>_ zyVzG|&lRWs8Nhq+uH@H-gT^*7b27~znm7mYvMx8hJ;BMqqrBYQU1Qm^&arw~u$Mac znCWH1NDsU2ZRtKf3)t|7=0$9%iPt&wi1;}z2$6Svxi_lXkXdtO+iYzKcUff!?B_Q1 z^>d9SwtajAb)MVkDIIr$I%mmAT+m|7vfzho1YVBC0y?3#A~_=DW6=U@hTU!b{OT)EVM0?ubPl*5IPnnaVwK4&nPe>t3w3nFxLLhQz)9bheDYH{QtA zB3j+kv)Ep{VNhSU@!qk3`>wIJW#0ti@@90zW3Ov8{*ub}SAc znwwu&5)oZOua)Y!^TQ%{c$`a4Q>vn6>un{TG8c{V;tZPK_EMYbz<*u;{*39i$Go!$ zwfKXI;>(1qf}m^r7DC|n{wYPdx{QqsRk5gt>c;kC=dzm%Qx>S{GQQo^y~*R)O!Dum z>D7{w-j?l?iCR>uPwa>U(jfo$C5mC5Y72L=GrR5Wif|Pa^2wJ?AbstL?El5sSBAy0 zG~p76;IOy^2nz&v_uv*FxI=K4#a%*x#T|kN*Wm85NN{%vOK^9GyPWTQ*Pi?1?hhVn zdRk_>rn`?~Y7y5V~2liuYFaaXdkhDy(|=U7zZ*W+!sgUuF~`?|2Z`y=Ku39IqM zuO|&?@-7DI%LgS@g->i0qrr75EFYg42*{5A#O3hwdjwg(tc?C(r<{Z5`If*{NFBZZ z1`Nr*(ZmE!nhF1dBz(vxBO`BY(Oh<- z;2bKy%XrWVL$K$Im&sFCX_IjA4gZ=k-@nwsV2Ey5;j&$dQ7JZRF zdMyGMD5?7+kIPe^O`5gF0fNwjUjFg-^FCPYIe#oN^dHa?1548hMr=K!or&d67O}#1~F%`wwxfA)lhe|kuY3AbDGEaQ64H8 zB+*r@QfmxZNM41MZuPX*1$d0jI(Mi!xMtp<_ZQzM_A0BT<$cyj+OU7&LmTZ=@{lue zucNbCnU97ez|tzqm!ipd z4qx|=cF~ck205&GVkIMt(%2u}F2sgq@6em0~8vXfN0c?LP>v3F&IE^wZn%M$hiA z7AzRHe*K*E$=cXQz?E1Iy=H@cUnAky&wVek{05`HFj01Mx`^oA>;aI#P1w7Yvd-bB zV)tU^gBygTyuJbl&%E+RTyLs_UagZ9qq&{wKH*_18p>9X9e>_mcAaeH}q-Qi#rM~^Dk6176w4L%Gf6PW>0a&hcq z>*x1Zc<<; z6OJXVWM!vcjSe51Ki*wN9j4#1%_0Y2pv2iVJze5_H0M6wEF9tt`Mf+6`PCtd(hR%R zOOpPp`SSw4?QyZTrXi#a=|9YZ@z>(;uZ9xCZ{Hp#tHlx|ZzUm;AQb&wtJ%Ug-}}b> zL*Gdpo@4w`%mIf-*$I$x<@c)cB9?Bh&8NkaE8<}h z!SmOfTm~&2RO*bZKxKH>7GzBPOJyl#wPs-xhXo3gEaVq-5j<4a3c|tM>{X9UVz(P6 z&lxl#m;yo3n`?wCjl_zuz^T3B)D++0F*iVRQP-3n4ruyw?Rqg)%Fr;|YYmOAKf1<) zkz@pl@fV+I`YH~ZRI}`*9`8j8v0n$UH|rwrRUb`U?CtK-3dpfu#>|t6Upq#`w`UG_ zP4z1O=abw~y9tYZd}yZ4a9sr~dip{dhiG)%%jZ zUXj%o&h3RcDGNmn`@Pd~&Ca>W9W0Czzv7MfjwZ)+-F)>b61B=2eAn3IS#^->el=?u zZc^W=+ORu1?Q4-U(YS1c{?$SIpAgC9-*fnn&a1GF%w+XwU8##k#C<@EN3G^*O)Y6n z6A!(!Bir29H3T)w27ME&D@QAF7VF8^o&UlnFZ=CC2tC?YC=;($z5dU~NC4XL0v`1X zKVK9cfBR=Dr-Yxtfa`t9dran?GS00@2yXWmTX&QCVv4v&Gl8TcJFiA=mtWVc_f~H!m|lqM zY!nI{to&?;LM-^c#i*)VYxn1aiouNM>`p^?+6L{1aAvQ=Oye|~c#3KhvT4RTgJZk} z3JcwEZ>wN(XS}Xdvr><%j&QXdR&;?>Y_$Se-^i+?^s!+4;sbIx#iw=98~k>{=z zo)&98<)b9?zJ$HP@ABN3ortz?DR&NeHA)LLFW^?0NV))dDLZiu%jK9B0%7c9ODE!Tww zliq6^Gg0Z#p<%6Y)JjnVH7-mvx0n{kQi}j`Ohht7k(g~Qqj1I_Rq(V7-)26ca7?G~ z)s&&81@@IT(@n{xGR-ho&Y9%1OkD4_(AgkilezG9yA!0<22zu3^s-U zU_Xi|KtGrQc2V*r!VvcRpCl{veCEW=4lEYqL1W%SB!BK)ryv@9ih&WN71m!L}vA8Z; z1W&6R#Yf@dZ{7EnuZ5BekHwc2d=DOLHqIWkfTPTo2pUYiF}9L9=_%s<7npN-_ym?_<=1T>pOEXyy+> zi`RR9gTMLmuafSBubVeWi|9T%CV~0Snj*8WuF}c{Zk?I#=VJ@9DT=cCj(NMVd!oQUqQsV30Bs>B= zXTfRmclCkMuI8S6ZRPbAcc0S*$*WNhBQiELiH_5MdU|~m9ue8A=sd+r@10wpjzly_ zH1XIg7a&R--*cDpQ}uUpi?aVTo1f*1`p+awmBas7{-KGXVC%))E#PS@u2bVCmyn$GUQ16TXwsV)A>S`v^VwNi=obS&L6BoLvv={9<6+kdf3;Hqn0SXkM70=E+uJK}e7$R-bJ*2z=40k;!zZZ< zjC$V%Ha)FbZ~U>e{ZgyPQ)lrvkHtYxM_@rB;?}w|H7f!i?KK263kIPK1=|SrFS1&i zu@FY_grHo{4#%kThoT(bFgaZIl9u)ohdVwSWb9wKL27|D;f17uFCREJd{9+v3V$VB z#}N0y`E6^T`x&&-@-8A++%9UJORQkd;aSkRM%pr}rG(9ywUBJSl43NIgXN3W&2T&c z=nG=l=ee+7U&&-)z?<)9aw`wOr51b%I2sryTQ@SgkSyx@<_{bU0(;mx>j;EA#*mTu zDb7rnOPvR+QwgU6j8azvUDT2<40{ArAA9&oSx9p^k#7Lxc ztye|;dIN{NlsVp^j0HO~>z@kS;*Ytn_DkqCj;RH5|BAE!xX83}gCL6)IGz?b$(%*9 za#J{YN^Y6eCTP;kmko$fytDGOL)#qS_(~!@7t}VCjDDdyY2yk!aMbt3xtRw~A-Wz+ zi*|i8hzkc797Q$moBJIPEu_7|Y$M0NXTDATY`F}v{70C2mO|>1>3zl3B5NzkDs=UI z-Y*=U$vzIwLjLx6txT@d>FR5A_FOvn=9n8jb}s)G2xT`pQLvhvHEJU;L#7x_Jg~_S zlubE|vVc4v#4e!a&z3VJ93ZR!M~IQfhVpq(Un9R|T7EENCu;I_ulkCv0I@7%qAb}^ zcQ)pt4Xo5plsk&_s>rF*W)-4?GT2Z%KDa_|`OLPsDZY>v2d$PRny7r%0X68P9_dW9 z$c1bm$0FZ8HCLDYqW3uT-^4f2aQ7AZ7E)n~xrdgCD@Q0K1pNt;C~uu0vQAWP3$PfV zmI$~N7H^IWYDZ*oqG=1Cxc$8-xFGbX9Qv}9?BDY1i&+93`2X%e-r&&c*>+)zImsey-jAvoA#P= z8sYUGmRD{i3HbXIAY=gTwoorm+|S-^)G^lk?lo-{{MtGpg&k^rsifnv+>Uyz`h3|2 z*sBTk6R!S=UdZf^(Mu*VTbo}!^*;05Aw>ozuj{3M=^}jyd*_9ayB*#b_}%=i(y%x6 z9NbWgN}SLq46+onI+V&Gdn%}(7N-cVk`8tii+3mq% zSdd>UwjHP=9p26qc+@Rwj0zt1=0qw}+iE5RHPYK z0e`FWLv_WJEHvlW;#sMo?GSvq$*VUxvb$QAYrUGGweZ?KXL8WbfQDoh7Crq{9ei1) zc`u7ZKhM`FJib`mG%nXa0d0mM@ya}Owus%?36B@$#?w)a51;O0L_8M45IysGJTt)v zM?t!Q;6L@P?FgD1lSOsG-C$}D;^>a}MGsqA6jNoESCJ~10Kn;?s+caqQE6w}5bTop zV~CL0m0`9md4-+a#^|I!w;##GpveF?%Nu8N;Ap~r<<`DdH5|VMS z7p0!Q;#oR4{PPT|i#s-oP%<`1`5f6_w9?=q)*13^nPcRwz3h%C+d^cLE|Mq$k#U@W z4kU%CifTli2Qb%;oJazSRQzeU5|d-@p6f8gfCleAp)zyKitp$uD+v&c8B?Ep=QqJL z^~pgR{o)pgo}ohF?70DdSR-(`SA0b*r z=BQ~I>UKcGL~_$vxk^Ri%UVzvQ?*KeqzaK3x@xr}On+U19^&Ijs5EQ_Jj!9_hoE#SkLVc;WbTHaF)5CUzZ02vEMf@6CGUdoeQ^9m8x@`z{;{u?ew2)ldHp9t#9D6kH+Hp}_2m<^|FyR(Ve6tpIL&={KqQovT%x zOl?<2k)M)F-(MTZ%AZWw4L;?byoL=?2$jOlxao@kS}{1hcGDfLDGx^ow?Z)~v*=n} zH!?x$XH1nAg&jL_$HDaqn7>ojJm-;I*_Ayj^!{)JF(JyRkE%slO1Er6trm6$`v}$e zf;@2+6cBw=y@vC+4shGfw;tz({M;9ZtdzzDI%IraZv|YJ=p!Q}I{rL~uJo?1eI+O5 zFq1YF*y5v%{R#k>cxMcexbE-kD^F^3B`mO%(k&zbU7iy~GF2!N<<5Fhl)GXf8W5+X zrY@`<7jMKjVhg*f3^ zvKnx-hSBSM_ZkuDr!u;q@@6t?XOHO!N5UEttS2=$Z-HvUUZkUbtYWuuGGk0tAiW!9mbLm?tB7uEqC35JZ35M71)+ zj8{Pj4Sn@4BukexP3QgXu<75&5sIU5GRG3v<34qI?B8y}*oBzxhr2O%6#?gx%O+JV z;!J)>XqwsUtq-%Ex~;>XIjp|UILyFco_^`d%Vy<+kY7aJvS-!U#%ZGp+7%bHbps){ za&}+b7m+Wk-|hJ`V$_8L4v~Q4FAAYJz+Eh~^6B{>~N`)%gCJVVp64 zO|P6V&PcJC1SEmKqOjw@h@xgc1H2#G{F7b%mLIlMUn<{X5+w;YEQU7PMN@-Ev`;-ey`E)|Bg%PlF!K1Y zK}2b|%0NSl^o%}T{h~`AsA_|=bVCir(1lA|!Wi8-v2VQJJ6er+d{GJcnK7 z*67>cF@ghOJX0}_Zv@h;kbq&&%)!^v#9$0@&eRnP7xl-W4ieFvK#C`MuNc>eEUZO1=A_+czPI5(680++Ya|=a44V3d<>T#)<{90C|jF}KI^n0e17fryqbcG zRB`KuxpbN)Ph${+TTd?b=oTM={;O$O9?Uu^r}dkH^XRd?z1RM~{|rn_TU>y6c#s}@ z%iBf`4X^Xx(|V`hI_!ByTc7ksEAt;mFjRb|U~!#p>p)Bk)+e>lJt_#Fl+dn|t}aD&aw&hXiw9ggaj?~% zD`)7I`P#Mf`GOqNoIIa>72Y5GJ=2)-SbLZ47hqh!#dOj64I5PM2`6iAurFLP#hmaW zakp12EA;P{=VAzhhfj0%sCrNrN*!hQ>E697O%iB23Xa*mZ}t3b94wmOJ2Rta7HD7G zT$D?mkmB4lfa!)nF-jYk1vf6+p@;5OmLWWSI=Jy>ATv$BI971*U_EdbdrD>FK%;*n z>nW92II(<$d%?*+w6m6cDK5k%g?-CoUY;Lnxrm=6M}*+A55SjMKof!BE`0< z=8{+sVAFDv^q?`#iJpDA^6sa1JQ$S&Q;vKIl-5@mNJ(g@{NwnM75Y?|%1q2ma$}8& zyuEq-_pk37JPH@R)SzJi7`#(P0ID~vm`f8>K#PuN`g^&!A5x>iLyT&UmLYQm``Vv% z&)d*QW<)H~m-62lTfp{*>VEx^(WqiCbMc-Ps?b2{6=VRJyWWQF&|q70$@l*(vS5JJ z{~}+^7XKk(CWV(h?|(?he~cOveysmi`)@%6&;RQ_SSbMr*66?0U@Q4Q@2Nf{2pR4xjtE2o z+&BPpCee+6c_hFhZqQ+wzK*)47N%eROS%42(weRb^ZcWHBUpWAW(0GCj>)_DA^(!u z3+oQ%sP^e4V&^4@2lnR${u34h^lvl&l>BeS|CIc%;y(sJrlE5WUm&a|IyE$mL74ej zHxJh7pD)1j9~nv4bI}cM!V)j;{vS7z+xY!pXE*mkb}~r^6^z892vyOq_zjT=AgP$H zVfO?^04}G(m~Ue%G)8bDpI$8&iE`j6Oa%zZH}H<^e)c==@R0kYJsHQb%N69UuUEEz z=0cvo?`2}_TWUZz7^gOKYNFYh(Z~)DJHW#P={nT1kyezG5?;VEU%{@xnNvV{=wKH} z%Snq7-Sxvf0=Cr%CbqHvQ|f04sd_3md8k|mmi2?IvXPvXKY3sBA5ezk{(FNVgf(-# z152%E=Jz%lb-J;t3FOtmwJL8o|}<+o-y|^goK(7Pt@su9IKJE3W$!sHCQ+m)J%TM6G?iZ5X!r`J4wz5G4V5#C>@(06w8J#Ze{nbyOrO z74|c5^&H5GYi$#uXE|3rWLniX|4H_wfGQd@F&ZB^o&WDhu&W`OzVbz@pMc%%p`99y?lVDkWnU~iijkNqoPeM_5b>bDt}B^dzJ2cTs5o3M>RWsgnA1+$ zd)f_md+iE4yB1IX<3lZ^dq@=35g(yJ_0}ZzGF=oFBZquSDw1Z3V{2QpD1WXP-d3W;;-H$>uC=f4wLXduHbK;}n{?SfnCIA;vv zAx^H;3apO55dp;VQVWP6Q@Mh(ehQ`*vcLO9J*pAj^712zQd*B{fH`7vWC5qSzbHtK zs8PgW$gqy>B_OOo;XmJX>gauM3U5Bm_j~x#LsP4J(UEJ)#7BaKBsp)p-(C2ddo-IZ zWL!Kbq!-&6ke>l!-ADBm)Dn*4{>HZ&eFx@fU=_KD+_SG@a~oV+vYFE_0(sH7&MLwh zmt4NF%$zrs`|7!G;Zr^TsSOJDdU1LIMj3jeRo$GXt-rNXfpRGcts+W-eELSuTh`L5fb=*gVz91h<}%L=iVi(-L$ML8^JB_ zW^)N%S5{Nc zWK_GK(6iWfyHXEn4rUTqnnabTax<>dY`M)ipEk;2O-kn|qeh^p61OX?az5!(w<`nX zxwOn@+FVo(x6N$z1?E@Hn%FEjZpbOEY#``(kV8LjoW6FO%zdu%Nr zunz4rDKp^rHiDjLavuC@A6yKZs1D@qRe$wo_!Z0*v*&i6cm{?sQYssIoqj@e9BN%y znJhPznSHE0B3s4SdH!DUGHKT7J?K3EM4l6yo{fg(RSpBf)~BMaEm>^N*;#ljSy)(M zMwQ^S*N7Q7OOI~NXl@zRB+Tw13=Xzi2)0X%&x#9bJs%e5ee>{6yDFKoWQUeKs<|(# zl{jqj7e+&}7w}sR9JR;Q))@)kuoP+vrWtizoBUew$Y79rdoKVOu$}T@ zM)AQSB3c<7ynJxqJdU0BLGZq7m5eGYWW!tBSnh?LP+z19S3*fB1{t?*Ym)m|nz-)u z_c}dUA+p~a^{euMZbB)IA|hm`4Q0CWJ2cQ7PSZLZS?(_evqwTO4yUtW-0k2D|h#QuUMi~H17;dqQ+v=vv*zO;~1jNW~U z)@?Lk6yTehtE-<2i+7VEh)%p9PrFsmfYs%+ljHgP!3p}e-|f7LMQN%&Wgj`c0z9;~ zlArM5%giro>&4*wvYoJ!#U(?1dFv6vf-m;j)U0mQQc{NiH0NfU$e*xrfv&Wsj5&iC)XXoPKMRQOaY%AK8*Kj_ZBCq@?h)9sdS z3zJR`Niao%ixPV#^hT*C(SvvE5@@IRdlvh69p16Ul)2tbVLpiex|M;RVQE&>emlxk za2Ky|2SKbww###B`1<%r0jI_*XCS@C-o~9$%H*TGs*=+<_pP3Yk}8FPgyqM{Ru$dm zTlp_JcvG40ftk5gyw;^*-Fg=T9Ey=VA~}myS4$+qLQQ`&a`=OSmc_vvmKrHvrlEAF zwIy`Tf*P{kEZLb6jbD4}Xrr#3M;5}olzM;TFe_PBq_!DIDyQCY;W1$=;)gZsACzKK zZNq<*hCU#*d~s(J7dMsAdjnf!*>OM-ox0K-4f@1IC9aTe;Jyb5TjWXxZEleiSXr;7 z`gVP|z@>C(18^hV^A00pedXXUoebe#R!WmJ(66#ah@HLW)?J^^O_*PeH7T@UvN%Cn z95*rAM!qU}F9)j^hrXhG>|T?o`Ml#iVau|@Vr!&gKh(nIm&0Q%c!OfDZ?2=R3>ptJ z64BEw4z|3PI^PdFYxDVo3y&K;oY-AcNUE^Rsvxc#a|syo?Csj^0jrdyacuhdRqy;= z)^7Tdt+%9>StPAAKxvr_bBTZhALcI)xsvmu;-;DU1RF8#?%>p61k~UcR@yJf1lYX)ea&&gI zii_+KN(C3*{0Z>H|_b~N+p z7ql3VoWsA+TE1P=4=5xKmm*`0bAy>r&uTdCe;Z|oO&Z0Yi9%Qzm}S0+a~fEOvDeJV z5|(6X>S}8b9!}z{%vafQihDbz{bJ~&5&JFSw67OhICLKGx&CbL+oB}?;zpQW1wQ9i zrCQDAqmxtZl|!gV(}Y(s0TW$U{W4 z7$2C8D!;f0Rr5=wCMvPiUuB~6c+r+eXNQWji~HQG)1C~f`P%o)1uH@U?pi|VY}6Bz ztr~G{nfSr2f0)7t*|tf=O+%ASLQmaC^&rJzM!3oK$HGLrz^L`6II4U9*32wzu8eF5 zl9v2K04}dXV~e(>ms8<5?o-}rvxGKoj=By+JvcM;~)rcgrr|;Y8_E(j*yrS zIn>>X(P~PAb}wJ@{$z6+7AJB1-k|FyO2u`{R9Mc-dNY=Gajf~b8FTq1m;N<&&-u;K zG&>B%{)86<&%MYu$u}5ozv=+yX&YZ-@oe)Na-Om_ZR;76DDG)jjO%>fE;n4NH%%!h zCaj@6Pp-F-P#X?4w;ggjo25DBsLa%GDQzG>({_WZZou4-+Y2eyur07{DXfGDCHXa-Z9ZQrce?FT#v}Lfe7&s=1jyhrW?2N= z;QO=VfzV;@Stqdb0{(qpUKxhSGF!&YS+m_&{e_NOvbn@g#s&t!eu>ib55_9|%I#saCzC`N9|M2UOa3^}$zO7Hi+2E0Jz)`SC$ z)t{Y7Z`l2e#6ZcEnN-i?brW6?C$>o1V8KH)S%ILTK_alCN=ixt7UY~Eh}knVx!7ol zZ86kXD=bOs5kR)@r3E3R4{S|FQ7$m+R#){(rwl%Ign1)IHD->vsBzl|QRuVsSpOQ1 z8@|ufkJO_S!2>p|7(`9T!634xp}w@X-$?U(jvFE(BPDq<-=@ETJGp}GIAOsr6CbSx zn1?L6AbF+>QrvhpyL%-+2|&A3-ljSO6&5J6C_`>bkM8FWetpcEi!WHf6%!-`p(zO+NT#Q*5#(A( z7B%{~-NOg{#o6CZKcA@H~jA3La?AvBnO|s?!zIq>g;!Z4z#5P|{dqq0$zOTs?BBIakBhQy)IZHrq{> ziHHZp)A#soYR(!~gLX(H9;xXp6At$HFQGf+P*uH}yDRNx;yt3~ee-*pkr8qU)$?t)=snrP43b8NY#V!& z71oGd18wkZ3;)uxK-LrvmA!&W7)Fv^$GC2vyOBL}l|6k(;2|V)Bk7mVw2+Rv*RKK( zo0gw6M^wAA!V*){sr;Y$Bshrji2K!GX3n4ppz^EoobRbOYXvr|bW zjm*N8X09ssY@6mco5~3X)ZzU6D8&2qz8u-Mcw~xxRfhD$X=!O$rC}a!K2CZnQCUm6 z9oFslq47IsV-2Sltu>-fPi63(I*9+UNk~phg287#UngkY*w0J-Lts)yj@AYzcLqAndLMI0`tL=Hz$@>Vstmy5?ppaJydYZ)mScTubzi4_#ReWyD2;MQXe} z_2URmZ>6o+Ek(<7=~El5#*4*~J)*;x8}{$Z9KBqEr5$={43>%hC1b;X$(P1o$d_hd zWB9+xe=GmD^#8A|Kd=7n>Hp~XzfJ!;jt3{$ru=xQ5@sodgS!cV=}y45h-i_QL39dZ z0i!Nm8lor_*(Z7EDw&6Pw$SdP3<>^e_8|omRMtU{=a(|*c;>0lv`(L-SIf@wAXi7q-Ku5P$C_TMcSW<`wwr!Mrc@_T7*NM&OH) z(Z2&8SYBOy*EATL3zkdA0>M*%(XbrqdWVp|apY9v6m0%zbkTe%&ly%Qd%ydRyb(|hwFAYs5#O_U25ny&SM&B zJ=YxEahd+}Voo$ZL4JE*X0Mmrd{9%z$RY(rU@{DuMuy&B7ut?|#&Sz{)sH%DEZDgU zky{ycPL(ukk5EcQiWEvwi1};d(vao-CTYE~hj)xM$ru2#e+l-$1kpa-5<~lBX)>kL zNkI&W43i4dFgoRLvTLs1Y)bD2QH$O2Tlr$%7|NO4p?&A`R3(PII6-i8i{IfsHxCK!c7 zcT_S5R^I=8tzNJ}{YHE_?S=Wo)6ZEx0B$vNI;|dR!PufQD!e~ghE9veJQuMc;e=M& zM>faya+3+ikFlGUD!W>w;nU2*Y>`XG+;TzY(R>#NXPTTLg-RKH{7;iLRIpNEz|27 zjLqh3%je~`)e}jEL9=pV(x*C|k|KZi)l5(0Xmog5`F5rI)f?vH;fo9V;o)V*@?L4Y zLJKW=9!2Y8m*LOJSY(zu3+XAh4n8?swEZ8TtFWw7aDNnZjqzg#uzY46_cC~*22lnF z=L^N#ol}i@MRE#2DocvazS${AsdS~O>|{|RT=yEKd<-oxDJLr7tC57-N7vl+g8g7QAeRj zByrc4-A*jJ>%6Ig$vV76aH~kOkq?I?ngWCoEf%&)|GkT5jZ67+4z8J%4Lw)3ov@+M zRxcv};OFJ-iR=11E+EBG%5v+KVG2~d;BmZ2s}O9^={DIFzw}60WoW)JuY66l z!KSuM!JsIsOslZC;mlqx)1C`O)VZ_*q*zAw83&}u#n&yutSGNt6<@?`os2mqJuRp; zPezqm6Zv}rEG-V$Dw9YzOy}Wv)7m+qix{$AEkO022r$Rw-oVM82e; z(P=q~QF^R2!Z7*r`7NUq>6(2HpWZ}`x#KSgmoRsQ`QPA{v=jccVp@Y8%4WSEG~}~A zjSc|$m@Qu)9eKLuUQHWb%ck5n6{e? z%x0l(Os+0-<%?c(W|zz@CC!>Q;c}>B0;G7*@H7T5x^>i?XC4985j>ISpvE$8Bl0|M zN)oNB&&n4OLBjetRFxzBacGS)s#>#~h3Zeytxr`>HkWI>bodO~Z0{a55UM+%AHUc2 z1D89@W3c7eZ*rb=#uVlD1s<4b~!oMX8war7T#KXbyvH$i@6CN}p!51`Y$r|IwM z?tr#Fx8DetzPTaPL2<9gJBi5;U|!)3ss$_TDrS>DGuDoaqI6JTT`STpnAe^x=*t&|lEV;qG50UC#XhZq;A;1weW|nc^D*`9kk~)8iVWmx3|c z%-<{eI{VXWJV{fcBZpQMzb?kt-2BNbj@eMZtY>$8*x)$nG+NTk>W~|pP5JJ*$G*#? zxM-dHt^yv?m4B4tb_ri^Tas~|;UlIxLDbBZ!Q2;I&J~W3%hgrmohU>qM=F%v8u_!S zJj$wI3iRRUv%2(zgqkx(D_<7&^T@`xM3te}vwG%aKRhGX{TOK%)S|U{z?zDPdY=$o zC;g^=`tkR97BGGG>?ctT{~e;}+ajj8vt|zGdKp;tAs8R07zLu=`nU#lfUI0vf+9l( zHlC%-5Np0d`f7IkkRcsaO*o>Ju5DbbX1+gu6u#2$>FgXg)O6Y1W@#L1BW|G+Y~c$JdC&>=N)239&egBrsk5W(0DP!=-F9_mu(xBsa|Io9jrDZG9hwM)=NV%B-Q{4hp zGD!Sx?@h6;%Q2RpI75wTL#No5^&B31D*PY5EGJ1XU()|6=(90Z`gt5($Db&ukhIa# z_*5Y9{wTDKaz4FHKaNoDbe%KeL(Pg)>6g4B)u+L%>}P_XKZVEA8lOe6-2NsY7-ZnK zU-ozYS>HHS&evo}uur1YEB)%$mKx7wmm~+;wd3ou$34q8%Kj0>eB}iIW@?sv;an}& z%@Uw|&cIQa)}Lu)g^)^Q8)w`$#5bBeJbb?k-<=LybFiXwoyf2>!wde>!g*g7p0>;G}K8^N8ISl05}T>(W%}vfhC* z#&%71T_PCsAO0$fmo{IGSnM!%2iFI&h6H!VTD0bU7~(R&-!T~ImUD7u$m8BmWRkzH z+^Bf$!1P95XhUf#9N9}Q#9nLoMBJqNDy&{t2LJ2+aSi!T7+#4?udfTQ@Xq*!b;6N& zM_yHlZU$JU0oS)HiQTpLjcNzZj!R7d%-z{=0Io$YH)k+&_erCvmBY z3pEDr0Z$7pf3rNrgt0BP>!qyq&}YN(QrD52R`M?e5nZyF%H+(_^}<3Wu|*wlAmT}b zZQM0l+mk;zSKJ6M=YvP|(-MgdXUdkR^IskP)Sj;>lt(I+b!kqy6rw$8VY{W>jRx*& zYv|tbGQ7Dxy|VT}4>9|kDU&wpE5%R_`vfh1h3b$dz(kU%a(mN*-_u=1Oe6EQ_%Ym0 z6VR4{#IT7G&aN?KVd+mGMrY#Y)2ngxEphL6-l8(;kR!_5F~4xgdZNSFxK=}fdM8HfO z`PB@$I0EHh5MnGOcX**nGwWt4(A)nf&AVHYx8(29ruVSTwx#bVd>aBkpo4W2yuPh{ z5g{d&*#9>9CfEq4OU`q>$UPWApiFRe{Y~tW*MJ_I9E<;NPcsz9SsQK7EKpqVEAvy` zXA(CEj{cFMWZ+hmGl_tj%h+T!uqTK4GN+gAA)EP0}xV_Fi#T~4=-lZ6jOJz}V z)TaMK6L@1Tno;#yJOKZ?F*V7H@-7A&9-RA@qb@%ul0#XQ$28{#N919E9m9JVUBrEx zzaU97ob5PDA|U?>n)zn@@jiyP-NplZZ=0gUUJG9By2SI9h{)t-(F6jz_`a+Jg0~9j zW9PIg`t(JR(I@d8Rkp9u6>~wV;OI=!Q00EG3!DlVDdzK2mm8`bQ`^!GA*yhnvPm=rI^o}O9H`O%8|M3dk)jDJs_?Dk5Z~0Rzg-h zB}hqNAmvzUhNJR^l7h5<5Mqz$fB*$en1>*N>zRC=E5Z5?UfUuhDkOBtXv={2$I~4A z$l^%y6Jf8)cgY|E2@k!UZk&Kj*U5v}WqiP47G5zi?ROFY1?AiC#-~(RKTmG>70&7@ zIO!ytxSC5}4kvQiwYdHvQc^(~o3l?FGld%Q7>3x87kRhA=VQjNd>#;kiJQ{j>}}?=-A-Vd z>8Nz)1U5&j%R<1K?vwwOdRba-9&K#C&?O)Fl&R7^&qShWbPB)A3|1o< z^D;TN{xTi7RAI)WG`H~7`)6M&+N_fV6HsM&W}mhEcIcG=zxRHR*+;wkv(!eNPZXG= zyz!XXo9~UyV&enMlU>%VhStjZ6C8; zeEOWLuQF|C2J-WnI(es3W@u2fkmODiU*{|WwU?&?ej{!tmrGlG5WEnt?l~XVXs;W! zDRe50ZdE2REb-m|xBYQwajJ-a+Y%m9TWLCbi+Y9ddE|unz;Ii}vF`z0>|&O)uv?f6wvh|3CtQ-%E7mSpp$Us`LjOn50?C>xE^!4PtrLDhtB(}6Q~CxpXwq|)P_UgxUvdR& z72~@e;(nr}hbDo2WrV#tr#>2=>L+WlQNN%jgNL1o0UJ1dC)5nyj3nW?hm zEE0grIF0Icf<(-hBdx^QM^+Iid>be~WI`|BpVh4CQg-^WW>d-Os^bvy zb^Y&rkIjfB+G^o)s$SOguiS>1MrVNaudF|1)8yu%!_wL7O&^q0Q+ftU@=~O}2A!03 zDdPV9rX7g0{E)4xllIl}?e%my+7jyEyURYzfP!g0wBhGu>YbSIaQm7=gQ4{>c| zsj2hr35T%zR!;uD*P1=&(W24RrhHisZUkc+pPru28}|JUkDupcmJ9u|Hh2@pD;CMo zEta00NtRd48X13eVVMHS6>H6KH9gx(=70m%isu^_sLVZBJdOgLEHgxnC7n{ zu=`NYRMg=3T627gfNG4q5AYAM1nU0ZOL~F~Yr;9zkfdX>J|Iq@v5Y4s$)<%Y@Ajq^ zi~I~o&=oQ?C@;_$7SL%~OH7?_8OQPB*e$N}oTaIa*+==FM`R)}WyiCs&v4-+3YHk> zZFs6Be-*9374SWW@AC(!tsa#&K@Q_rVwh$5)eddyhX5(-pKM&@g2TK5ugR-R>7;|c z?fHKZUgY+&kZF_qp$4~juG|%V`PDNG1>j^J#b>iRSaaY*B~3k~%*u{1!5knK*i`(X zFfspL^PBtm4DeDzQJ1^}rSZd}l0LYoc`32>Ae4?p5wU{$i;2XX0gwJIK5a z|El^8|1~9gB_VTv?V-36v>%E=E(o&2n9A%A0#6lHk5ZEtpMevYU+N^&WFRKOJvLxs zY51W~3F}mtW0EE|j;43s-$0Lu5TbqWNu!eLpECs2?WvX~w82o=@x-K=ec(5Of%Syi zJnS+ljve2TA2cjA);KqP9@bqs`-W6=eJ@8;^#;eq zolZZpyYase_&%0s;!s@P8H!&P?CJgBo056ES4Vy|UcPREmP3A+0xmgjUHDo+8j|JO z_P{>kTf6$5oQVUnv!9*kSssu3d1uK*a)hK8@|8^F^c>r4@8kiiB)TllgNiW(ghm8Oo*byfdCkESqf$w%#`V>IhM?SE zg$9_0EFm#%P)j25B6vXA z>%9o5qv3R?;9rs~yWQ37DKhC22$P;d9p6s#M~5K-YNEKk9Nath9NxZ1_7{0s=XD;` z<;Srb^$lslGMq5Q7_-N>ZK3Sn954!3vd$Ga=o{!hb#v76`jRhDvO|&G%%#KcrCm+t zW0CZBFUvDiy+ozYQ~3ut77dp&-mRae`v$1d)`9Gf)lC|B_#tMR6LxQj*~CpdNZbjA z&Fwi3xzGKoFj(r<^ySk|2*eq!SjkjhwY7qpE@o`6<>GD+CYq5sxV|aINgvE3B%>>A zUUo%v@YrF7HIETj2S@73OvPxLdX=i|>W>`1b~4fPt?XnoPENwTz#54@oytueL+Yy> zJ6Otpev3brV04)k^8;4(tqXYkDs0ot;sHR380qmFVvm*>VnhY9MQ@HJ7t0&2@*xWT zP@fE>G`1>A%OwdL-zS^EoHF(xLo4<_Xe)~BEVuUEf^8f6(S0YE8ht=|BbiKOxkCxS zXZ~H`bsVg)616gy?zOt>;J{;j3jXq?$G0a9|D092X++fTUOl@QmVZIo-Tias@tSE) z9gr7Ibr}8K8XblS*MagEG`V}l+hmxu-ot!kxg2+ML5P#FmC2n&XZem=PYqam^62@A zGUyZ!cQo3ZqC^vy4t(DsPrE8oVM zJ(E3qov-eB7esy-8O{yFiAd9Fsgd)a;(gu?oI3aC^p1H;Gw6m~dlw>h*L61k;hifP zxv!9o9lS5IDm{38sms%`u!s5dDoddCbeq!d`&H`$mnHz)=D3HuZH@%*k-q0tj+Sn- zi2LvJ?_nNU7qV6N;q?)iuC6P-K^6&VI!dDAra|aryGfneqCja(>P)p(hr`kt53Fs# zg!+Y!TV-u6tgz$$OLfqR=$ON{iAzjm`CK4=)Z~COA=8bPuXqgDgIW`IL+d)xg@D)K zDbKfuNyJ6PvYPS>$)GF{S$|K{gzZYe}!`Fqd$+B)u@=UM z0wEDtbjUepE$Uoy)ozUUX7?BrS;04I9hsYHvuP?W4v`3p*QA8;Z4Tg`KLHnl~Na<`$paqKyl!YrJ9A@ve?7eguU$uqG~& zYmOLrye^TDff;W`xim#v!N#>3w;?qof1};}!a>~1I``&}XpsIs>%`>juB(onaI2xw z2?6IH=ULc#OT(71F)tzTmhOgZ=&Dut7>P0;Mb^cx zUA?kt9i6=k9Eq!LK?HS0-kxObo+*~Y7coy05=@wiQP&{`!?E3cl)Ti?^%@BF`}r?E z&tKvjr7+~0=X3- zr%WcP(cuMX*JgH5+!gQk_g`_EaLcUpdnRw+!?}o8hX9>1M zOC7CCY`^H>URGx_uhiWDE2!{F&T(%2p0ha6^w~A5q;SEt5toeYZ?9WEg{tfc6wjSu zL7ugdp>x;YQRgqW?_>{mrVj6tdA+Z|#a&pkgwnpb_FN#fZa=Q*dD_RDQ$zCHelvh>OpW(ZHV;OQeeJ#IHWJuh5t zjBkg7f#2ughVvP--mQ-pjk=u1X06_EeJB!v7mkYgey|{2veo|O2a)*Knt*U^nhi1M z8Py$N+6NEOn!?ffv*G!f>wa*KHN3Mjgzwg?7Jc2Bt&=|j^6H}+6rVbm3ylpbwIeZE zr_D^MW#=an=6WI9qAbRuyA=?R4ZSSaRpHH>4X`Si^0g47a9Dpg&BvT~K2Y4jG+@h# z9)`v9hCcTWsiQVsLxYA3TIe_7QEz7^fr*2LFH+K>1=L7Ay8m`3cM$ZMTAe zE}=gj_)8KVVzGEt$_?S|E1(f|N_EN^ca3BesBMkfzjL{NvxkULnc_VQ)iC3~Ca361 zrjBp)WY=W)^-!30#pbpzI?0}lim#Vf0TU5mlYR^n5yzRRY7-_)PxrHnb=z`p>8sWK z!=(J^quUoAV+g81v#Az}TGM56}caJVLMyAKRs`9V)P!LI!ZONu3 z3fjONN>eRgCjb~t@1A zAX=so1%Xy+by|90-l&NhfZijmZKX|<#IrLCR#`S^+*y{Jb5S9o< zw#C^`{&W;$34zZ6vX=t2un2Nb;j=5qmSqQX-hKOXk71ZsOWK*UD9F)crJrz{Vz$b~ z$5O&ojU6i1#SsgXu3Rx)TmDy=dTP;xJbDFHCYMm&q1%eto?WTqRS0A+#Lnc1)QAiH z)-IA#=dm5n{-tZkjX~NCwI9dvffcnmiiqS@{JI}O2Lg)EEYxk@!TL6ZNWS)QyuOlk zIU-Us>;ixQJF-TN;AU+{eL53yz&~r8%3uvJG$1#cB>AloW5_~&5})*DPdgyvS4hHD zP+-$zTC6KrK0^9W{Z{T0(!&S8&v0IzFpvk#wTPsd;`!yn!~aiFQZ&xfMCWqyiLTFU zsx0s8^?fo#)yv`i83J$jI*pH;ra;%m*{ZJ2)9z^MXO@xN>b3Xl9Svg-`#l%gM@=H6 zlWc4R1DS8#uZm|+qAfkIhl#wX;f8Gkc7I$Y3MC(hYCsAWha{&uFQxB;N^T^sHNoXX zFNQLQE zD5-+_{J!oNZUdBXUPa$VU2NyVxRRN4M*X7SB@Vq8TWhlX*6p=248<^wgQ`XW@Z*{# zgjim^i?(X@4|Y(|?TKX`L_5iZ)%ePaE^4KvZBPrq$;|CxFzZyuN@B z9+3+(&ilEgPSNYRW#B=L0w%B<%fUB{?ko45oZwks?C@A#{Ku%8yoew@z(u(oe9FOQ z79)NyPzS^b;d^rtIf=ZfsV1+a3=up$NV4WUjv_Q1QA;y4 zepnAS!*6y;*GL|C{veD9P+Uo8`MX<>Rv`_ZF-c)nSD7b6N2F~x6EFc3xpBXxtP)52 za97*=Qn26osl%YjX#ShDs&EES0$iUDVP54#EW0(Bh(iJk1hoVT=E3BfrOH%e8P^}Y+pmHJ5NNWFoh69@F)F)!TKHg zh0&&nQ_?ln;BJ1$bv&|y6Ypo$ktEJp*(dNd*J9<(SZkD;U3Ea}{elhWV0QPr(m&Ry zx$r}Z8Q7<3rG-7^3MzTcK(Y#pDy~1;=DN|NaI?Y**G*2E7fuL%)%wAfrm!P_8QbRhH?e%^B`1iYco*lm zdryr!zeCXZ*d@ryx$F%k(0NjS8inMg?(TV%_Hw|3YiEyf_JnpUKYcos=yEulB8VIa z53$k|F!LJl{rVX}ok6VRrlVQ@UOxCb#hlf zX{3(YC{mGHMHeO$m#`Lp$6a5VhGiLOF?n*tDeJ*5qRJUj;L$|syg7mx*ywe;>J)Si z%hZr;FBRFXKYhx!EjGQ-JRt4bApWWwIH~=G#jV#!JhxBC=H{@^ z<<)?Od$-z=gGIBNmX@|y(S8S)=*~NCI=fYaRwh)uK+(I|qDI%yzf~myW|T>Q6MhucKc2 z5IOqKHRH2JJME`m9a48g9e)8PjTrfP(ncr=Ld`g}uk`&}0?}6M=0kWjwSg-hkZ<5m zv54AntsM(RW?}Gly2hB0Q?~023Kf81%3!kX47@Wn`kdU&HXi-naUtU@iINo)#@l1{{bxMFgd4g7#U3;Z(T6*RGTdOGQ`Cv$(^R%qPpRE?2e_|1C2!4E2O;&mN;nNr}cD0Y9iQ~(L@_Iwf7 z{sm{tLd}m~omqSV37(Zdz>_F8)?OMOGPy{T^&%QqVl*+(%af%2#vTvJO3(4-D!fuO z66wAIsJp8Qu_)hvLI+wyUBrw(OOQzOmQgI%fZv-ncIH@0L(txj3l7<-z?&gp^h z6|#rGyA7@Il59-9L$1W4piJH^e8731Tzv!Rh-u2C-IT|Nry{QT4Ul?&nq8 zosHzF_YR)>s}WJ(Zsr4DYN)(BqRRt>%%c`w+;CX&i_L`K(7Qo#5qeQN23)$~P!z5| zf?-*O#RvGv{y+hdMC>wab+KKht^yQP#exvg3Oz?vV~RF2v*kgg8ND+Vn#HpC{g7+usUb?}aG6NXv)AFTWJWa8$p zOZjw}YzKld#&AAmqx}UzkMj0?LXZAnINDHS8m?ZI|rGw619-Lbpm76TI) zDpyXFD{=Q?-1Om-`=&HZ#eD*UeBrg4rg}JK&Ep@&&7m%43oDk3pJGNb&_R7=|E~9} zBHI5=vAY!O_n9;r;V#Rspy0qDJTX^>sOBsQ`ncH!v|74r3wouS9geunSYK)2W0Qfo zvI2p@O;r?sDd~gAoCW&igVVYxlILbBC769dJz{)z!${+?C7xZ-zQ6dj9F^kOMV*)J z9u)zjKaT#F{FW2sJ9Er&IAsw!YvZ-=#&@_y5mPpW2X)NOEw1GZtqra5=bEER!1VJn zX!Z6FaA+4)X-xTy4lsz8$E79m?5XiR&h>A)aM^Mk>#s1i;Gvk=G%Yd~iJ6LgSj5gG zE#wtfvl0i>M&=Hz<>39RO^CO&s43@6FM7v(em}ylm9-sp`xliF3s{4T`U+osz-X)% z=d&^n|A@>ePd_;5*+Y~o;w;8AYC9-80y>LtY<18?vc$4LuY23Y4qmH0;b=PS6OUKO z{iTm}?P9-v>py9T)UWPN{yHE4HMQQ}AS3wI9r70(i!wSq_;S`WKGi12)c#Nr&VWug z6PtYh;m<_7?Z&m3p3<)C(8T>3L@)lT+%2hT*3&yL`LMVt)`vfyQ2wS^o~Y&H>nwsYL=I4ysl~m@!j?W z{+&eyZxSl`zQ49y9mu|O@-8pl_n!60w&;EwDvoZy*8*(F)2Tz-o<%pLj--H?0=+df zyCSaaP)D;&q81Hxd|l9wE^xO`o3l(P62jI$z=#IYI!VZ;&GWwNTYC)B(qq%}>Ba=0 zJ5|Ew6SJNk99A%3=LeB!E+U}|0HBElo`^cQUEU>>eKQ4mJxCVnkk$k*Ej;{EOJ$8S z^K2Jm2GwqiWF3e}U5^3&kH*Q}L+G6YP4ySt-+MK$EV%K&?CXDImo~}J3k(=wx6C5% zp1MkUYX#1wjh^XCFhUW@r6oEgmDj$y*iOw#uBGE3s)ug^D)tC5G|tiYvOAl5Y14&9i^!o zCOaOYHo5Y}L}}fS_}K_IQ_aj zK!YKA&Z1JlntvsSX$>kRdtp5MQcCngNT$0OE@)tr5aD9W$Qjql`R^6DwqWN;0x|R( zmF-F!b&8)O(QcpXiv}jfL34!f(iKLKYDE^{hCFPVu~1yGc_CGtl*ViVGOl9(dNjHZ z1|S9)=o|E*Qtq_Zz^j=5h?VW|)}O$}QqHTJwZ|Z!CKXkf+J)($d?&cbNGr=Z%e$yM`hs?G|h6koE zO?ZEk#XahUXal4utT^RXl{L$Er?d)55>FY26g(%^NkF!PxTwI?9V&t$8Fp))9q2Ko zJIhX?478m+)APhhHp23c55frJ3~zjA$83MC=rNs}a1X&)K#tWLRHLL$Us!4O3fk1` z#c?9pua!%Scft^8&>#n9um7@xLt1$TdWme2%n=gv2xp1jbsBmPZ+tmzno^JYGQk;^ z`wCo_5U9)fbnUvVRB2*Tk+IUNNR;R2biyjV+U! z)Sf_`sM?Rhn+7;j3pz_TaoXqhcC&puTd$mhX38#4O;~8vIo#9q%3EIex-56nmQf@M zt|M72>tWNoSZX>y$XKH7z_~&9m~_ygyU>KuoU+F-6k%yS#_?%3On2u3k@m8nhKbT5 z8g)#{a_}J)8ndztPn(v=T6yhqOQr`DeguaC?X6vP$7aO{1{Jk7Id_h3n2}%rPg=!0;NXW2hCx5mD3VBKrf2wy8qj~{@zHSCl#i~L zLL+zQWIy@tTS@E;Q>^L8Kp<|%aUSL=9-x3XVc&XQa<(?@?IFIHb!OO{&O)786*hF_ z7p5DNvR?RrYG-b~kio*l8w&^0WV4Y8@$r{o>Equ%jTAxMqoHTSpC@B1H0|q%q?V^% zJIh@vUo28{hfkJ>$k0ImZhHoR|8aR$r?Sb-_g?^bhfush8*=JbL_rm&7E=w;M2t%_rf#4SQ3W3Db6i85N+^Bk!(38@d{K;b{d{-sDko;S zi4GG!Bqr=)aoH@jNsRSnK=`fNPR1eZT*DeA+U`pP?8SFqP{X$EbrA>KRz@eM5bR&? zld2?0y!-mK6&e}V$XG308!Ue2P{XdO#jZp|73qVtkY|SmiT5mcIV|n z<%jToPqLzdY^b2r9AIyunNRM0>LLz;p@7|4B?pi3cmxD27Xc zZd5}|6;Bdr#om3?*4-d5!$WUi+FxB{nM-29-Mt3B&cu$qmei34m=f{q@g(AEx3KMYu^Gy=Pw~gC$p8|a@!CrI8|jnB*z+av?p%8&lVcnKbk8T>>13?V zdZ$Ae&h)@9%q-~ZhM${AjOPZ|bi4I7cjBzCZSkP_mC#@lLJ>U~({m7D&aIroNqVbu zdcjt1go>FYCxkzimA_N6iHlB|*vtl8jx88?907yi+$FXXD3;Zl)&aOHla3LDJg^+) zZA8G>$t2w;EzFQ%n_|2Pu#;Gi+O~;o0fW4o^{fU%d1IoIjc)}rzk&x6$K6e4NfE7u zQ##mU@go|3GRm+`GHYaQwe}|ucGm)cV=|WZO1ZR8S^z-&$VAmI3nF7SQo7T0y7p|* z6rwnzaKPkvz=k!?fRieR`gLbS+P}!=nqG3S}BQ7)C^PisJpqu|zMQ zpmSSVmmwGGN=Y77>v8RFz67fnN3m9H@`5 z&I+so{bBayo9A_7WL6cdjX>velc^NT^69lxgU|!+@Ev7g_MlrBcTPnru?%RA!BfTg z&vzk>mmL86@2?#(>jHIyJtN5tfA)e67LdGPwNdssua|XS@Zdv59>6X(#-B0o55^8z zMppv=z*YXF9^{nrkT#L`5v#pBzPV28ZB&R?V4LFdH!AlwFm#5JQcaNOr}k~4CVZ=q zF5v^ea%&^JIa-*bT%jFaSLVO|o4hE&BchPgR*V(u|8T(kkvwKiT*u=ydT z7l?r=8N-*Yg)DrO+k)6Ng)fatM%$%66#`@pYQN@pe+qz*Gh?c$E<0E>^?*f7_B&=X z#%(*Uwe@PuQt;edbXrTBGm4aSJL_$X*%AuJM@5LYyln#|CbB2z!J8X4 zYU@moiz|~m-B`wK6<17?0=}Arj-dC&2$1U&iK|pUbo0n#II_~v>y3Vs^ht7)BC=!y z?$1$zJ`K78fzd~XKx(wz9miuY`2;?z&4-n|bV%62BjEN6D@%v^L@Wal8H4$_{5k)Y z6#K?@rt&UEXn&B|Tqbmmux;h_tB9kde{&ZHmrs1#?eBULJ+&Hw-v=Ho^a9VHu_V?4 zHrcVtiGnVxp}q)PZj~-a+jqaM83EhTM~#w6p4^T7FmB5zJ(Xz;AjwGjo>zO|?7@&; z@_AL-;@hcxy_+nfpge`s`L#1%t!gsM{mM5yT_dCW7B)8Y4+FjyhBTIx=dV8c*0qn( z8kWamvIkzAdHY1T+*Amp>>;PjvwF#IWXbZb?IMH=Dxl@?}TP})ID zZx+4!ngrBJ_)x!hC<=>J2%@xYaX1Wv*C!0ri(;#^=uWVD$zDXx=_wRkceLY}5L&7n zo47W3wU892={Ou)$UM0sB1mydV@6Q8)S9J;=TYOyV z;&?ErbKC1hICq`z9FmH-mF#+5JCRG#9lKk(j%D;B|CVg~ zx*;zS+Yb~`fNP+q%>aMA`Bvqv$3!tbR${l1mU67j;Vc@*?P610 z7$7e{dYq2f3^y(MghOb$HGo+P=KcYa_L#SUelbQXA-j`#?+RtTSqh?|?0kjhYo%+J zcV9LMl*?^rN!4JNt zB@j_i6kBc=kB*K(LpuH5vpPRKfh0Hnk79QnS=$~}+CGs%0h9UGZak=zZI?d{0VQZV zSopZieqlyrKTg2>LZn)E=;&S5j8Rc>+E)}E8)P_P^+&S8O75|Weq66v;mtineZ07p zRsv;0?i)wsmhUTSQzmZ|G}&|tZSEBSK6ug6^Xp`ML{!?4JvDfk(6Bv(5`L3te<*z= zR|ofvfI3O=5Q@9)A^s`-hRm&KVvw6VHUCF2r6t>W8vI&dhMTt?xyeYduaq)jo+bn? zu6P#ci-R~7Iz$U8f;rzp^w!*5G)+@2n|)svbM}PAbpnc3(BKQ!A0w0T*)@UAP!v37 zLlM4_U^Ox>jXZ1$5H$lemBw!+hk{M0LI&Cb%L!k;WsjOX^F2`p1gIuLBA4Gl!>JEt zK~nR>J6M9ii68%j@M&Da{(2xW0-dEPUmYHW2NQ?Z(h>RNbq`@u?RHkF@C&^fgtz?u z7m$uSYl<$yp<20RdfEW0y=ynuRwZU#{3>%hW~!r(FMP;A0t03y$%1g~&G1Z8-T5TeQt#+R|5EV$4_?O?N-YekPu#eT)<<2c|8 zBAWMbmwAyh#M>4-2frf7K;SbwXJ%o`JAA#6m;MgSVp@>{M30LFv1MfKxGygL`>f+H z5__{e!IaIC(^}&PKF_ew*&?fA=}2a*=JO1>!QJ|T<2DKnRvD3nhmgE#LqNsbK_~s_ zDS=1zVNe7g#`9_BdXG3>ajJRAZhB*!EKk9*#kAY^hXZqm@H7wiO_mePgCOl9hv>kt zpoBUU{Cp00Lo(CE>U0B$>i0hlX$C9-8;PxHj0(O1OUW;qVA@-Fz~%>L!Gf_D5C5MJ zZsyCX)c4UWF-5VN017EfOx0d!GzEUB7w@S zne-I27bdZv)?mJWmePpI@N9&$y@|P*umrwFt}|iZQ1aVud3?AbilfuLd2uAO;aymx zI*AX~ACV)7Y6oRYjvX(12p!#MiSeEL2Rev#GM}@Rt%uldPAKFl$AXMRVtre8hpSU> z^W8S?t;cq(WNrV|oF)$S{Jik8L+b&H{KGQe&}eT4yta3y#J#IZbr}=*gZ;gy%RZE& z8HvY$XmQYMUcdo8zAy<#Ki=CmT+~)0=F$}Ey_A^}@Zs^4dU5AMm71D-;$p0T?CXwt z&p!VW(v^0ED2R&OQU-34+GlEBe#AUD{#phw4YNi(wn^33jYzgf5ET_dW^Hhy;y`E8 zodsdE98t^dFDz=V%~F*WHW9$B3_c6Fr7(|FcnETO^UnBoATmyCcLJ|#?T>XQ@ut?O zp199E+=rNY=(ZtB8=FGOLe3Xfg;V!!*tY^)g4 z=6#lbU=ge6PkiGI;$lMf%jn&Hqv=F_5fo@n5^o6LNr;ioROpM_OiijG|vMBm6Sbjt>B>4w;s2u^%0a0|4 zMt}A!wtWT_ZHr2oy$Qoo(Kgs<9t{CV?Xa-#&$1G#4$>TR1Jj_uA9tEXJd-@ zeTP355UfPu*695NQ-6^%)^dfD!5;Ju%?to&OT`Rh-fF9~z_3l*X_#z&I_OwA1j{#^ zMp?Fzv8no}kEUl(&kH`ju5O5YK?|69c1&fPQkAj3WPu=Ja6$siaG?Auq}~x&WUl5c zmm;ZvWahRK>P9xO%3#8F%}A|W`$~pngtu;mrU@s+S?eFMzs%P!?LtiEQ0HWNu(Mt1 zkO`w^%AfCZER+6)s^8}^iBM1rT#j83Tsum-f>y&6ar|M&2s&AJ{?If}pwJ1`DiOa? z&k&cvN>sU;SivP%IT6JgnskV&B)~ttzwoGdWO55IX+kzuLp z(!_7zTn)#~R1Hp|_Yv#d1DOmdpJkQPP~%A-f-@mYbwT};Gv6L=vb#ihu)sE%Tu3Y9 z01{A8v7e6Au?M2ijr{-}XuQKTIS`2DCig1&oV$u48jzg+uD-1le92gZp>@q4VZ`5T z$KR83Vlw2ZenDG$7+wsnW3WBLJP#XjJ05Qq)s9GaynPL0K~tH_&vhh>@zo6A(QM3A zBm5dP`UzrcANRWBc#o*(o2W*P)5$&(l$+TqJ%>WGS`tHoX3IH{e#8w<(d|@4Yf(l- zvMR~rOH_Y|lT#e72YbhyLRGGIQxM1$vZcI4{^@BMj&E$3@pDSWA;1IgSfTH+qhD61 z?ac;CGrRb_DLRJx_e_`VM)%FOX-VIB;RPLh3xR3Ggvdf{rhddl&GENr3rknavITje zAXYztynl^h4073?6=+EYRiOLvT8eB^yLz;5P`~rou0?WoCics_x4T!DlR>NhH+xQh zWVOq=o@@yx@vuzpa!K5jI??GF!r2=u&*RBfm3_1?0`#4yZTIt-tuAXlr^+ddA_Xdp zaTvAWny-MH(@8cR$0eBph1l!u);&QD?>^7ZHcz|DtCt<7TDgB2Up5i!lSE^KS(5~a zqTqA6uGYJG&EXL)>L6f)|5=Nn7sh$g{wq@=5Ajbk^p?--L=4_49~3A*>RpvJ0kpKn zxqsSZ9)wW+VV4`sW5x~s%Qi^DCm>RD_?bS{{@`< z3pMxz3j8mR@?XLKmj3_eQECZUe+R18e{NOw3#;gg`Dl(k{4P55`5RjX7qogf>a$=m z7_PqOHp5pd?&k+;OU;RC+3~bHT=fOc=BE=$dW}YuJTu+Fi;=fM!)wFNck z{Kd_Ucy@u2)yUbq&Hrda30$;?6^vWnp*YfN{K&EUomr%U&%VRC(z-(()#^(6DYgUk ziI^lE`h)4+d-w++w=11DDz9V*EcwvN#7;UHjzR8v0?l2I2z!a6^WJ88oTc;nr{QIz zGH|8$gXx(Hr3qIAKl=II2-lpObJ+p+dC1dx0{HE+gzQLpz&flIL+8dn*M-{a9kzxa ziYRDWI)ZJx$yDX!1T8gjS3d3fp>jstsM2O6vVqM5-9GWmd7z4X@lew_-klm__Q7bt zyC1S^f7Rz8)aT>sp@a7x<>I4v^Ah{7;p=H(hTY38@!dlJ6xq0w(i&_Q3G6+cI$J4{ z7L9&zQ-RtOa{D6+jD*CfxG0$TnCZxiAKMCX;}(!UJdO;~4W1_z?>? z0MAyP(uLBvi{`MG*Vw0cg10x`=P6&W*SCY**WL@SO;zuA%fF&UPJ+ZSj2FLzRDs{w zJ?U}iMXK{`dXL|slt6~H6QyuvlI*@vf$*pTB?c(-Kpc*;l!7QgLTeV~B@~cV>g~o{ z)V>=fX_fj(67Jc>kL{zXs+Y5`pjW_RgIwYkdUb0c9Bo-Bb#)M*FA&_^^nB?0K34g@ zJ-)PGyoTpKRZn@`{jU-ILjt-6=)o}y2zUXV8+N@{;{eCj;nv%tm3pD)OsIATK;UEj5F9wi@hW7!F}NEoN0>>qeKS8s45Jv`-J5A!|- zZays$_~3Lt&hWnA^t@B*-e%x@`4n^N`*go`^`10rEba|I?+R6`yPX<>L3!J;G_p0t z6~nrf6<9Z@y|YKyZas7Chnk#$;5Ko2-(HNY<@ZkF1*iK1+4E&ia!KuL0FsVnU8m!L z(M&>;SlU!QUV;iogFv!Hr!IqbcjJzEm&*Y_#?=*5c^J>r!66@Kc1LC#HsKmLi80{9 z3x~SuX^sJL)Xj|&`rh#=Kyb+Gb2sJl-miOK|G5c=?q!kp{mu9NV#;G8+V4MoqNS^f zZdpUTEHZ3P{0&Leeo{M;D;)(O=vX}rj!Syw;<(IEd^9GBbRf}#BD&KL?4$V;AyZ*u zV(J;4zVIEh72Ns(0iL6-y8o9aRo&ZAEskh#1E+#;Xfe7n!q6WlrypEvEY09+C3rYR zEfH3NkMCOK;v5UnKnTajyfZ$rAXTwOFIV9;-;d+X_v23|ptcFd;60goKN}Ll{i~vf zl$x1KFd#higY4IZwvd)lBq3#+L|MX_EUt_S*unV9*&iErza2qKc)ltUTD!3~Gf|Ke ztS(50Kg`W+qir~N9m|(_7VYkS>vi8%K4%$k1t20j#?}SIlf*VtY5765rPdC+eM95; z3VWCI1A&lCRX4P}QBx$7ozyZwdY}*1KXoq;Sz=Z2yPGhkH~cYi z>}pxysTzYwwStwIX+Z8bMG?|Q;yF+3Qhh4C8(-XgkTItI(A)iq-w3?KhfB>~_cQYb;er!m-cagY z6RNT*PhOt!qy_pQ$pSal|Mt%)w(|Mn8R}++ucT0IsP@GicQwMe+>J~lOZ~_$z?I)< zNsz8P$M&@`tr2h_eB5;}^OE=?TAk#mJClKv4p7q!@^`d>xUI5Y7?Q!1K2likz$SacLWB#1(1`FP^| z-|K249l%A1n4%|UgURfROk0LTB3t*WyOyYGHClH%ouNt zyT8*{@6QVlG*NA{`4AwLYPsF#u&rjRV1`zuE)%VFeEf1vDo+BQksOj1f9rP8dLmS^ zB?EGm72s2BPKEDyj<MHJWgb_jI+8EAq3mXcvo%>`SSv&Kd9T8CjUi#UiP~GkS0~n_5A*y_t)p7k0J9iU zuKlK_NU7}9<>T1M=3c-k9q5SD0X zE(1GjZ6^@V`G+&IOUO9?oEKqa9#x%)7HPb88zY(`xwhi!gtKJ|YkBHp6m{HGFBnhd zX5NjJ`Ey2C^{Aec?$`OUqy2N~zOXTwPTG%CmB#d*Fg8w3l_;(LfL~Xz{{8o5%ART8ufYlJuI+U%xVK}K6d8%SQ!mvq~MWaG)UoeOv#RYuGcRDs= zU}5+l2fTg!0C`^%@|bX1#q+$cg(hl~u}{v7eW+NluLBP#?9<9)!;i&rm!;?BJ&oe> zt=(LMDr9Ao8b;vlm|pq9P(?eIyN-ErK>&}cxMtYzRPA;Qo>hwIu`{oOFW`)CA8b+6 zM;Si|6qASUn%tk)|B+_YVqpVP^ls#PXg4~4Rh#HqUpiJyRR^OFbPVi=_41NS=s zDa;jFbHQ(#}^I+*-{h`s?|6YmnengYq;a_OVn}r z?E;4jBD~p;^sr5BJ0ZK%b2_-`Gq|d3e{_BV?{&iI(8cC?%NWJ>S5C2OsL7x#>UrN` z5UYUT*dJgU0M}MyM6tA_P-qAk-1VarfUKZK4>@8(0Ueod#NKp@% zmxWU@%D%e3y2RGygR5iz^uv~G>fE&Q_!$Dv4y10#UmQRbhwV=cf;0}|3KdY&kJy22 zq0GMO1~XsPIkE#gd-$*dbt&q2PuczT)nYY6yx zt6`8Xe16R83IKBqH@Nyl&Pki(FX_iGtizjC7x}V>>Ri_MDl>n!o8HyN`v${zcS7}I zt=*#gF)Y#C(~@U%)K@qbUMeOx5FF2U8CBld-?kMmw3D!!?c`a~T2^XA=!yib2RFs( zHU9>^FU^U}qd~e_@*i$$i_-h9%C_t2#`oE%@9kXHd#8zxt+o4((>6@Db3H1IlS-tk zlnpm!l=&4m%+>=Ol-IxW0z*5z>l3SMZk|b`E|g_VCq>g^G|+aRLP8|fr~Hv8vUR5P zY5i8aNS58feTD6-8oo{LM|Z1g&vFP#_uFxc&1O>A&G&hh)npGVQ&fF_$C#zXkJRvI zqZ9WF8-aPR3n7IzTG_V4ICZn_^N%_Uxh(!bJjz4ZXliAA6j-S5dmEZ|W zStmv&I?d%!f8pTnD61kL)L&iRy?&y$7d4-XTRtF;alA8n4MuuEuMsNv{qt~F#$m$D z@IRm~t^P2S7y8ckKNlazw(s+F9}_jNLj;>1Z>ude;$TQY{` z0{E{TaVZncaaEh14|l*8Mx)_}vnaccPD_{gJDW4`2neKwbCIgNP=`bBu=#09r^@wR zk2}6_Mz;0~{GiDM%NEXxI$Uwf)Z0HJ*k!%4@5EFbnmEe~eiR-6H);8S6&aGq&~i;J zTL5qDuONkY1r;c_2?GlDkJ_X46oz7R@G{zSe`f2;`SGIJ^8Nu0iPYjB7uFg+)aF4S zMIPD4Jrl;3dVDh|l=}k*61trEK|8%*{2n7voa+yNQ?HQ+m%39lx@*3CXWBr&b+Rp3 z?3vAJjRyu&iRn&!mmmX2G@DS9G4DqkQ%708?AlxPoIq#wiB5iV)Ok1m6$g;YfhgNm zBYzh0&g95~LAFI}w5fMmP;1})D+@L1KZsW=J`(vFy3M+q?(%9GGF3@@gmHya(x)1<%;EZR3rQ>Y-0onAE>ia;eyQm_iSFpt2v;f?$x+6(+VimuyS+)Q zRij74F!u=$)D_O<9_)Dft74l~Y20;7wmQ1GaZTIRHs~^kdv$X#Q&kpID-ZmPS}yQO z1pmlUYJcH$n$k}G5d$dDg#(2^a=rOCIs}Gs9;2mvB`y!yd{(f$TpVr_fz*6821)?Rmlg<^4HwOk5*{Eb z=c3@0QeJQ=Th4Pb?XhXD+;Lb?MRt7Q53R&tDHK&)kEsBP=5brEKq>c*9(=58rErZa z+xo8VLJ^;TzEk+5P(dQOvduYGxRr(R)YguW$4 z!r^ERX)dP~{?QaMG?xQIawYj}4!^L#;BOCRK$=t1{hEN*7INK#g=E-^D?5g7B3&Nt8idZ9IGu+LT?h9{nc zQBoc?X@J-FXEum$&by4avqJ$W zA#HP|TXFLk&==wIZJr-Io|h$p z(D>b_c2T68=g@S03+MHFKv2Cx=i^dnw=QOmDDHzu_foM*Gq!n>mCX^tFmrNCYEdvS zZKu!dBpoRfifv`6YfYP2Z7?^&XRjU_}(E-&Q#y^uAe~Rus3)x#V3fKO$FU zxOhkUbGJ~G)Y$td4-{s1_`i{uZ-9T`NQGFY0@PE!f2|T>XGAZrL^%jiz9F6an6CfW zV;Exg{OBFH4Q$m_g;uRNy2@LwmP{q4MY-8|0cTGfl zQvzy1CH7mU@OT%N+zAtI%Rs{@XxmW3&^m{mEw2lu*=kvn=f(p@B(ta9MzdX4ri{6C zd<=n@!I*CgHLs0P~2$Kt^)YnA$ zn7xeVkwL#SlVT5##rYp-xjD(X&d@$SC}&FuN#^*#fJ=`KDP-y5l!nsR6@aQ|U0KWB4@_Og8Q zl*>g1ZJi6UOd&>I&V)L3FlB0<{zU)R(pGY!a%)jX&0HE+Bd;Ptj{7rUFWJz4$eKd9 zLTkohjQveXb!s|xMT9zvNp<7@Em^`B1|d$26jFno06-S_Z;`p*VS9+(4g)(H1g{7k z&e1xoh~Roou{8*?C^Y?;KV!yYzh*xt zho1pwnSn2Vv7ny;;s2a~e17wJ@;8|L*%+TET`vxKSV&76Plp|!giWMW(Shh!&&x}l z#tgl^lo|vG(NCObSSuXy`D_RR!iQE{^WJ$D#m3-=!nm%GlBy%?XhqncEed?}&AoZ{ z1?0i3Qf*;pv`8{k#e9wCW+mpr_R=Atd0CZeytkplt_P6RUIW4*?j`YT#@)TKNlA_lc|I)R-{H@=YzX_0^htGNt0zVIaVJM%Z z)qg4fP5zhi|4IHoe7$u*T)nn83=}EF-QC^Y-L1G6cNyHFP+;)lh2oR~#jQ-CK!L%F zyTjn_Ztt|`x#!$_zxR9hA3HO9C)q12$;!$~ek*@;xxcCZdHvVQ{_oWP2gF(ryIfH*l0Uh_b_6^#h}Guv53wg$GYTPqwwlu za$eVM5ahhxiJ5HN8&NB5qnb_HWU9^mvO2Oi>B(Q*?K{o|+Sl*M%sAK5{T92y2*Y@M zW2CwE;^Y$X;QbWfD0rOdbY4+Z*0EAJW&c$*i`!<9@^~j*Dklu(9Rum;`wp`oqys5o zG(_l+nzVP7V$Wq$66{X`>A&8WM$tx=7Ac;Z2#y5fknFbysv+O1k3P-MVgIU$h1G#f zoNQ$U5+gq%Cx?DC)w_=@0ywCJ=x&~P^`NjmWReW0F=>BQB?8-E-X!!tvXE$!v``-D z!{5#Fn1n2q4}BQ>cDI!DQ98lMzZU0gKfO&WPxa9%#n!OI*9ZPyUFVG3)$z;^k(fg%Q6NqwRv06)53_%o5yfLdHx_E?6L1DYyLf) zVq)V_=9*okRLA-P+}%cD=9S_@Pc|p%oys_Nl|Aco*wkqW>9np+vIG+{b+N?g*dM;6 zF-3q-As$tEb$7XOG4122C~F)UAKg%gx?7G`6TV7#Nt5Ror!@vUrpHgnH|d}1w$V<0 znA@W}i4W+TMF*+L*bj)g@t)$>U&j*(R$0f-&LM^sy+z7YM86?zJT0(fi?*V?#fk*BI#n{ zM%in9#|e4z2y@J552FOj?FYuM>PS+v^WDGlaaHn@s2}Z~2L8?QzP^pYg1kN@%BrS? zcaX_Likda5E`^9VDlM>F$b#ve(|1kPnXIveed+VPL7a@$ zpG-@yVdk?x+?Rh|{2}*zXhadyX~O|@Mx~fVO?ZGUy}lG4F8(@V?N`0|JhuBCHXP*Y zf&^G~VsEUzN4M_K#y!Vy>e5_2lfLg3-teh0iO)KTq?{XHyKgUE+w8@^TRu!)ts9=8 z=z8t_Kvq*yn*X0FgXz#ml}1v?ch|>I1tzm%z{mH&q=0!A^-vM>XwL{E&km2@D_}fU z6YVRVi6Z-S0cXles~MFpjq#Bbqxv`zHCtD#9pCg%+hNYW9yKQ8(TWQ*qT8j#6xj9t zt$wz>&Md0dHq2B?;M+9gxAe_4?E(J=9zdXfjt+_UK;v!Wr`Jjupsi@c*Up~Awesy9@{jM^l|yL}fJ8iw@O+nG$@k|atslC1bPHVj0< z`2i(!0)*Or!S5tFHYwSPt5dX1J@jZLE_4H6rqeQTTdoo=ZY0+sA_UWb$J`EC3Bqc1 zdo1|{+xV@e(*a?msvAyjyGKpG}eu?#oR%ztF4{&o!*tTRSuvZP+1r$hir|#onmDiw{KxL?m^L1DL}) zD${U)fwPqql@MKLxfK_4JTCQbrtn9pgk5vh>2@xp5A5JbzW$S;i1H4jxXA2hsczZO z1>Mj%?HJ?7UzzKN;!S*c3HyREEnOh@dIA&@5bPP1O10&iSJ>@F>w81D@fk3KDCqjM zU7%?<-dCZX$LuRV6PWH<@h9MaHB8@QLAvy?hZM<^Akq( zG$OGq`w#mredyJdQ_O&=+-ns)fDHi;xXRGLA(zLGxm5GU{ZcZSln`0KgM ziV|UhQWX@doCBokBj#t-L`@sh<6fJ^5GiKY9*ah?5g7BV>q{^PgF@U%c(#>Eg=17VhPuFuGEv`g!>Mx zruEq7g_m-P^OB46Ciu(sm<+G4Ge~8;njT1@H9$QzW_A%K16@G4@b$3h`;Nd+K1E1B z$82;iDt!%*T96{e5HOsWIpk0J;H)10UBo;#>HBTd_9ua4q3;ODSeHvp+wFx7+oph`O2(xSJ57rs_Grp6A$xH(AwCCxfSz_9IO=%RQxZ3TcZ zuEs?-GjeYQy7ZAa*Sr2MSj6;|hr3v$a)UCy!R4VLsh&nIJsqbNsH>7wFZFt-ic4`v zj3kcFd4|8f|I!p9U)D=nY1X)|PNI=yS@zi27$3K3IH|@e+brfLc5z=FAI+Cp>I;TT zrA40i3kS6%xV@ej3w*O#^p5*$))dwFo#+AZ5Q8$YKG<+L8Rnz9pBVmIAdbH^dFn4c z(6_+tSW7?r1~xSB4;y=H=jRhni^wc>+YT4!^#^SYwSFcpiB|Y)cauZ%s!VO6awW&( ziVXoLaWB(C`ytO>m*Te)=K#S(e_W*}`y#C*Onq|)d2fg`CDj^2`S`X2N+0sZt*Ap3 zSE|aZRkHl^uT{PrN#Anqd2sAj1N)1|r=sUbPU__wfceX7bMKFB3SP(CPj@#mdLqhr z(dlC+X~ZEBB0K+B6%!XfCmu{>pm36|OO6iUYwI`TakAq*)X9Fi@3*vGIJEIv5EI|m z6GrtId?}-#dI-)e`HtB)Ho{9(vgFsm7yptJN;d5Jx$h*G$Cq>0gl{!e6ss|6RxQ|q z$@1#ho;W?JwflMQhp_Ozp2{2Oz_2CX>L35i(nQEyu2d5XhwelS_NXduRsV6vGR;dd?Rb}u)YX-0 zN!BZ^<=Z^wbEL#!=bRC<)Lvg0rmYt?TF3cD|#T<7IJ=-mBENyQ)*JkF)ErS%|5s;?dluPGg} zj_07vWt%$2nEl0ucewdmye&l7GgB`hLI@0_plX}cD(H#Q_I|dj0$&xf8Ab|^GI@xQ zhvIIY58@q__Vrlbkz}rPFGea!oM&N(Thf$P%9jpA=r6C zXMY8CS~AXyYQ#k)tS_@!$HhEKB_&eYoqfRH)v5M7R5#T`Yc_$l(Zl*xP*8B-79TZ1 zPrU5=nKjSuA)&kpMopaY-{<J6C~cmRz&^K*mq z0v7h4awp21@qvQO<`|A1Uc}cmHNu`7+D%lV5ukxGs?R$uJClT^Ir=Q)KSKl@cL0>3 z*?#(3n;X|{x!*l|jr<_j+JP3mb zOE7)MedpkuRz|E7^)wXt(rv2bZxO({6u5kNQo*kPs;q%B=D1()UkyhjlsR0jM`K3A zX7s)75aYl`UdZQPPVkqbY<^M_`gw}~!rzC)8>Ix&BVq4lt&rmx#glz;bgxP2AK16E z;}gH)$DCzR;3`Rz*7&YYXisG7*+V+0&x3#u|NYbNJPRR)oLj-~i@C&8MdxL=a4KeN zgXtk|T#PaIo9Sh03a@KFfw0t@k*FJrL{JX!RhVyzvnhShuqwf1(6gT2z=m+w zmA!v%_#T|wdX76^Z#7FIhp)tZ&c zsvFp>xSyl2TURAXnK%dT$dw|ega`#k^SDjOOSNqX$ z*D}CG^6W*7K>jr>pNvwHgCm^yB_BAC5~Jz1gXl!IcR)5V|0aCd?*zPS?Tfkh<*5lR zkJnB>l4*~r!6}F7cTt(8DeV(r=>ZThJ)|?tBVv{+^6+Em z!|m(16)a0Fq9h+_jY@HG?fydt`fZ>9 zKSQ@dj@y6n?OT;5)euQ9j6g}PeSQtd(F&g12*rTVnh4D@FtgXahOl>OIXGQ#c6YYATw|aSoUBEV<@@Qe*JM17NBRYVae~B`LTxBjfq?@Q z!ASVhMvPz+iCDECEijii&&S$Nhsi+wCiRB%Ewz@`d4+!iq-f^(RyoOXVM>Bc*b#l= zPP8OEWXY#A%Y>`tVUh4I&8v;UGk7taf^f znCGKXb>h>ff-h1(0;)AxSq$Q|x^KpfJ?C!roW=P5&P#wpl<4njafx{`J~cqx3#%qY zUjM9rxHg6g)F$o}{XILWHBJ);lhx&r?BPo^FqMxKaKhoaZ$-*P80r~JYDw1;8Hd0k zVrGB&^YB?U+tbi;`2siIt9Da$(}AtRj(m}t5I+<3t?E!;A-rJh%C}d8eM-ORhssBK zA1^%pnLg3HE}7;iCjTPZ(sujdQm8DCKvS~^ZVt>6j0TXOm0MNP-~sT^MPnYy!BIDg zv^FrF!UH-J^k#=#>yt7KzPzGDuppBh-o>{F(q_Zziu%TMU@>Na^MbAl-%{j37W5o% zWIik|(8qZr3`*56W8?;VAcK2CY&OB4i`=^ghS#n=_g|d-Lc`{dI8j||NR)2Z4AuOU z7ty=gKlu_k9xesH%`1U7SC1HLJ@96Q6=Q5_9LWzS1NUriFczoO_vVd)m5{+y#;iI7 zYB!W*^^=uMZf@UDNEE69Xr|s6Lnmc>79GD0vs-6+5V#Y0Kl|6*Z0;kWVO2p5N)jd6 zrn?)05ukqrV1%F~q@-59K>`Wz)JX$YDq5J7Sk29hZ>^z9ybFB~N@Ag01BGcr1tN4g z7#%KsJHGUX$Vdy?2}VBU$l}V}uh=*=utoSaz-ztWnF;Lu^a+($E{18S5&Pc%+=(z6Rq9${4r)u(#wT(RjKVT$OtvylT5kR7KKmqVx+uX+1tT|7}Is5yD90~+Fnn+sv5>DbS z?#*a3Akb@20#SlCLlbvjU?3SfUGIDz>TU9)+111CqMv%fg&PPcC~sA*{9Yt*d_DkJ z>HAHPAJ5X8KWt_WmA{r)9Pn^F7Ci(DftxHzQTjhk2Kn(wD34rYLPw|+TIM%cqpfso z_#eHkO$Mc~AV`i@Mfnv@*Fs<}E@IgLBlV{@5O^&x)yCBEV2Qq;SPlqDP*BDj+PSXO z1&YTQRbYakl5qWCYbyVP;CKf}yT`;)bo&hnFcsd0%bhCm!$eqW|4+*Ie;Zqx6zN+; zfauXBk`-|uKMBe1nGS_aSkJS=g@ct$ofE4=JWjg&m$}zmjeH%pfzuKgfW-u~uyCJ~ zB+6q`I1D&+3^tl6V}xH!4d+eD+JwF10~D8rQ~05b<)xuxvaqiNolOzgOuF2!b3=Bz z_!23BFX&)^b6a3FRR&y_1r12se)?kbQx_wkoV9b^$LdvMaa6 zx1h^wc$SnfcYy5GFHc~xKdR4QKm?Ye|E*LB7b-)h3L4#XyHFm%XEbA&wP+F&MbZ+s z8b){p2!}?E$PJT0DfCDaw-&yHUZ~cfu%AU@au^Vec_zcVx3_QY;9B(?slv7$mgas#`+E5wt|RqMA=aUDgN zO#0n=XpCD%TU*z41?F(LuUPg z>wQmcgQ_%?mbjzhxIBM-YpbP?4Y3K!p>49~^|b6E{LYq^eD6z{7D%Hucoi|EQK zQ5KzhO=!#cyaK#4pSeP39=rx7n|Xj=Tlc2dUg&WRqB*^s%BrKkvCW_T5N%GubxsQL z_@=*C8yKi+eA0%Czuv`++eqT}JrYFNkU}F*sCXZ@K1_a115`;OWI9YFymJ5!5fvZQ znZ8S3D6riy23kQZJ-~{E@9>bsWQUZeq?UR97@M^b0ikX{9yoZwV#jv2yhp$s2kowp z_e{pt+pD14!`ju)?t0n2%2M_djXWU6rp}Rsu3AXBtNZOGm|^6 z*q|An@vv?r>gb90erNnp7vEt}nM3?_o<)PhamL7Uq1bRZEy1Iy`!$TD#82{)8?M)j z-64zjzd!lnTl~Po2|RYLWgHyevoF-F6&yP_25q1%A`#ve(Hm3~?nmAE&7Ewj`y&FJ z9sGPZ5*Jqr zF&^0HRT`8kpo076_#PSR1Tfdjs{3aQ9OAxC4ez$C8!riky9a1&f&|={O+K~bsl(pz zYjRfsN%=pv(J0W$7WI?dZ&Gp7)}D_!mb;k>eP$1fPR)tgrC*2N7;W+;B}N@BoZX=) zGqnj|U<2cxn*=+*V=7F&Tmh08?%FOc7pk@u6NzM@ItcOR?Dg>i)LOs*tRM@$MY<5g z(La_4guF=f*?%e?df&{*-ZPb&bA9ai$z+$eQkEYfkG8hIblav`XkUc)<4gvCS5=sX zY!-5Ld)XEWe9w`l%EiZ#{7p;&9!4eO4M$QUB1&dP|8SGBg6T;vb*)o{-Vr$&k^q$4 zl_4Z1@YM>zDmI~+s0;b1I%i7ERz(~W2XxLmSd#3{i6ydCT`E1M6i@EYM@QH8>Vr1@ z!v{^E{)AIAV(#Y~6cptg9|{v{2F*&$SF}@Km%owlFfMRZFFWcP@rO4=_|tKb6N?X5 zruQ;^TThlCV=5T$@4y%)N~LcP9iq6n!ULQvCO zs9)gJFFMJeZ0#q8A59+GnBVxhv!_ZIHnp{@8nN(+smUl9^LQ1PH*048Gq5bJ;y^gV zsa}VBs}W!-s*>Mst9eX9VN@2cseVNM++}pt8pbNuMCnvE8_DgG7~i=x^O+}Rc;ai` zrEz+peJoOO?%C;+iy+<~ZERe}vGa9w z>pgUL>5qNb^wmbNbLkv^JU{m+&S(#gM_p7qXE2q2eRFW~Z?0cy{s3fPjqH5&-AEb1 zj(9u3@-zG=yHD1Xm%P4wZxA~4u#-&H`1^1z3V#+L!e_`P?jR#Jv5p{9a)Bhsn(`ic zio>L`#nYT771Ue$%b1MAB;8ZYe@y?1zU$kz*Gb!YVQ+EM;U$c^FI5sCLsaQfFyz~! z%a~Jpd!qp{)Jh32s=?WK6V$U4DNs#BcU+@2y2B@h_7X#?@V;p59KPoF&dh}>b*imp ziX6f#pL0WTDYA<>7Tlj7?anv(Rk~gl2-UHviYs@L_4{WeCf%7>$hyY;tg-x`VndxH z3-zw6StO^W#J2#UIGiOTsbN9CaN->YuU~9NQ3W@E;eyX}1e#JmyC4OdEeObA;SnHg zM!j{A4xq|OwoA`r(PUp&<3qt@>(SLWV~2PCCAt2d0yD3CNoy}?e%!454z*qR+3h}b zLf#b01>HsWw)3(|h&Q%~7h5h`kPPCJZzBW?!+s-(BGQI$oxW=QE)bs^RO?J{f{rg% z=^28ig_zYQDfVLv{@A0leg@Vc7OCFqN5b3wQ$d{fNpyY+(RQddHaQWE5`>pkq%p8Y zF8uDIn3Wvd#TS}z;|2NQReEanay~yi2`xe?C>abR$)r#+=?F3q3lYC{A9q0QQ%{&X ze79Xe-a1;nPp@H|xaiB}cT#UMfBdR)vp6Ux(Wxo^x#WdGL9-+rQl7p%P9vW|k(_65 z7d?bw^m|lc7JyxD221R8vZT^!$eer9W!i=9bd+|JZeZdE-qV8d=2(cu9eregA~Qv| z4j~E?Q|8(!YZ_x{vRb(RFkp3M^qE@Da14p#jKbAM8#jo)ApOO9I3VV296ou*dlUqE zf1=kPJczQG_UTPVZFS5PV|FYht0Wmxn15m`3wqAMQz%)t)4bKwnow5q^ANl%YUo5Ahguie>KDVun`L8#0I&FfdtTCx3;}c+>S6r&_(e{UIo5%uoaK zBq8)AD+i;&?V?q!!J(Bvw~sM)LK2q@a=9~AnnaQ2vLT-LC@7YgU^x0@@Ai0oHP5J& z=bWcZHbAEAAWQ%oH6@&67pK=yy1|F7u4P&pM7Sy|aea1&VW z{}QU0{CzF^?{JC25JC;Tj37q;JuITDrelXb{@aBuAV0hKnYNL_ZyG@nh5gN>TOT>1H@ z8{TpTS>V&ak;(ONl}GkE)F3lQg1MfJCOE}@|K?b@j=Yyir3u%sf;X)=9*Jujgzrmb z^|=YOXHGWRx68by#yZV!5U3A}y&%Zaz2s+GACQ`i!)%v0jFEpYF{d%388IYrM5bH! zw55Hz6w`8Lq?*4J`Mw!wP>tdkKD4%9+zcaSYaO0+{^a`6bd$*XEoF?Rx)a1V=q7v2 zmu@ncrzi3-Jz30AzjS^GvfE@0MqZUvZzx`C99VPOx_O;STl1a7wp?ecKBOZMaC0j` z7-hw&G27XCTzAs3YUnz8qU>X%^_!2#DNSs~ku9eD+?s@Uwp6Be8E>LjM^E#4F;XfA zE)egqeEaFA~?dzbR3Um>Jkmv7j>qV9?PAYow7VEAl@jvfYtqY=md8aSPt>vPpg< z%33Q9>L9Tu@JGzTRisXv%)TXCZKJ<59PnCI1yBXrSSKw^J6zWb2CxwUy6TcA4;ckr zxNnW_#JXq)DvqKInRSIKS5M4x#GWyt)(L-40!}Lf44tH=r!+v<6d-@{I&b zd{|*_m86CK?omL-JdyOTz*4`_n=-J{Qhn(yL5(^L43~+GIjyS>BoX)PIV{Ys&evM< zZfphs+pzI5BFxx!6Pij6xNX9JwD}Fp*p`Ib&M&Z%$pc;WbsGsx!FDuQ3A&dE0F4h5 z_UGr{8zuB`t3MB+yMg}P6iNTwa-iFf{@$Q*|MmZ0DgP@{&ObT**Z=<{TFPt_d34}j z#1YJMuOSJcH72FjtfWV6(u6@`3Zq1L-B96y(sRzH2`{u$S6m;K^i{IA@gtlv^6=6= z=1=vUC2)KTk=@FJ!0-Gf@yL(CfVP1YYAV*)PR=5g;?=WghmZy$!&nb{SKg+WZH(I2F|u5!IDkHW2yX>-y04~S z(eU}aAT;L?T(e~Qsh3!g+`z(#f=TG3HWtC^2tFMIRfemL&HOxicWa6@+uSt$i3>N3 zo^>Me3W?@eRtdM86U#TA=GgY9NjA29SVF)ai)_x!PmKeNX9C0o3sU54B>is{8uXVB zecE+i%F@??7mB*`;1lxI$22btdxE@!qV*CU^UY&x)^k{ z8ixuRelSCo|4XwF1iZz8QUqH>P(n=s7-VKGm=-WHESOr)mop1lBZ;)YrHIYiPa)Ii z$QE^hMJC6iR%iNUTZ9Qv#>0=+3)_-48L!qx!vSoiY>6$rz1xaVdi6UuO&&Wtyx=kD zrWxpoR0}f%=hDV@_>54?i!>z=_QU`b?3T@m5nMgJd*x6G0~KW)zRqXRcVPVk9L#oTmMNL8IQiuzI2e6s)59(SrCUI{e3?mH{W09cdO& z``31}W*Lv)qprn%n*5qJRw-ZnYG~-qY{kC2boYiX+Cd;aL`~D1l!=}QrOvv zUL_bOZv}xJ2uqzS2s?%L}$*S8{ zQ3DgvLlXVLKbDQDlCzq3yMYb6M;Sj`NN8WjPN54Z3x32l}&G3pw}6$j9p3=~uY zv-mH!!VKZ1_%io=?T@i&?(b2%RG>LN$Os0Ys$QThxTgP1{LEP3@|HADFJC0q;uBD0 z1gn`t41@XQEsqg2hi^-!lXEK}b+RKy*(=rS?7k|2%W<6}%x8_wQ-?ou=%o&KZa?0H z_nDvD!pUh7MQvN;=IA*}GHVuir=sdMi5`3`d=3J$@wV1@N7d_tPl#1tSuuF%s_|6G zMCfASYV2=4O1fO#;2^qgvJ2x7z}wCqHJ$25Y@V&Rt-u??k1b(JZuOUe0Z@k`dZexk>ISr6DV z>)SSgoTVvZg17~<+5~*vzMBR0Jqu4m+dVZqik*%7{*e?|%8Mt)O5emv9o$1Al{x^$ zM!fQzo`ByYm`JoT3Q;a*r0=dROTSeEQQ1(jq9mb;b=9%EGC=OPE&yR?arL=TVWt;#?>5ml-PIVoR z31XDwAZBd(LNiYqh9d*qWD9%O9Gn`oYlm``BClLt#$T3|I@0_YkH

r`ZejZM>d% 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 XWA+{QB9jm<7eH20QKC%jtMC5>{!;MX literal 163789 zcmb@ucT`jB);?<4%C=w!wjfv#(9pJlfC7SwpddYk4k}GTQz0OMfDPS%bO8eb(h{<0 zQUVeP*ytcFp$e$&y3JUSEFvTkVCB*K*enygVj0a$4*Dp@TZT)tJ&TxsmzB zo|TAV<6J7_S*h!?K(Ma3;goAe#WJPP{ zH^8I+$F*?EKfej?d#oe&Kd#xr{_71VpPoSO`tNJM5w-t&BqwW7zYgr@H!hP7{f}$^ zUx&t9FPrE)9Np2E)%$H?lD@KE7~!}2k|;MKjhVmXk4;Hz-5VDot@q!sUQjcD*y{ri~#e@4gpcl`{#AJSmx0B?9 zajV>tBr`@ItuwA(Oh4+ZN53k|sPE$bj}^0Po<3I+Q&`WKMPqedFCY=vsdaVj=-k=N zepP`rvAD|xj>Ab1irmZ&)t0gPzlFcU8&eu*;qQh zF<`wuWL*~{txVv~^9m_sSQfE_3y|177CKaKB%n^sPRi; z#+#GXV`VJ0OLY)YN)F%iX(4f4M?xN%RcHmb942WV{}ac`TF!?meAdN$qOEcQ26rWy zk#19obNoHz=Iv{>EjlTK9Th(1*ODGVpX`zUHILJx$V#eH$9(@D0U0T?!qHlZq}5{o zmEw(vkRue2F}1ZewYAj|HUEJS#hv>_zUJ9f!|m!+R>lidi7@RLDeu*#dt;sRbtpMX zo4xEA)0})=?@T>)2|=4cO+A;dWg%z^_M{o=*$N|$BN#tF!E}3j`;_V73vaYeM?tO5 z!V(3;vLDEi@?^Tt}mhF7Bv9K9n;LO-$W{*bny z9VADQtuV9jhpJFRUV(_A#pCeVu5AI-1JbZ40(MS8*d?F`Hz~66ga4(lax?ojChJ~iOmKhLafoX$nB$=AjtzlAObNJkifWo&S*H*WNyESFR_R_7{~ z8{JN0{MXpl0%r`~-2Cvk>Ehy7S^wo5xK$@@jzGmy06MphY!(P*nB=9{vY461ZDPoJ zW6CWJA|{G^J2^%05F(G?7oD%**s=i5Y@wLbBMg^PT=SaF0mpz`C!Njws!`7j%p<+b zF+jI$U!w%#wdL+8ggPI>8qH8n>*n1+YNu!njYv~^@V-Kym3N>2)#rp?lR+{|bJt5B z%-rTonx|clIH~?j%97@>#svp9+w9%l?=&2H-Xt|$#=J;pI|cIK1PE9ynJQqyAr`tr z;_gsgw0@GRv}`;-k;^F9A+A?%L{`vaffIfnyZZ8J{8T0rnldlv&m6<=p&N>i!wB!U zs$V1S$~4K2Au%#~u2&iVJ?O@U54yhMRJ+nI1L94;b5RsQH-bV>$m#H>K8w5)Qv$@G ze>m3gy)P+0+Oy3&a;^Kz38gRtv`=@b*VJOazdyS@du3rl*<-Z1CH0!Vy{HEC!C?P! z)iU=HJzfYhL+@g2EURshIXlN;NGB$gexVIb>@GqoQsMhW&SAp*ml*{F9^U;fvB%GO zwoacrT&+)}^ocq&Sf;J}FpXp1 zth^EJ|FNwrxA=)QaB}lx`}P~N%O5O9nLn7=_R2IfdDvU=^6A;k%Sm8PwGwD?=3^a= zU%h%{Zi?!);Iak#i05l$lBkj60zdx!PJJB`B*m$htw5Qwfa?%aaL(u>+=!LQ{@4a= zr~Xx4eB$|gKNu9GLqW;i?;jP1VyOo4!MKu<`}_t}7b-57yI9wT}$G3T#V}N;52IZ%1Wo1c)e! z6X&z~CJ#=g83)JaL$Z! z*7!QK&C2Gpf=i2i!@FIQeb$`sTwWx(iPcJXczdY$QgVtCsbX!R$8S52jZtHo*<)2i z035xo$CD6BF(iKw?boiRGiSC0MW3O7pQku$^?h|*T1raVS`7X~P1Xe(XyA#gz z+AZ%}>OCJEn6R(OF6`_tf$X~YHR(s#di)Uekm2xI^SroWO5Cl+3Nh{24Fw_U5Av9_ zmDD^$4=|g(fQpQuu)Zwv?Z+0QDgSBksQaEH zGW@l*^tnl&9BOynMfy24a`ALY##jBO@+XD+)HOq++HeVL&#IJ`n9gyg{;U9s*>mRc ztO9qPQ*zZr0Vy+QIWJc0MQVJCeebhtp&}~^?}zG*mCEP5c6=7AN9U7Cjjx6hWU`H@ znhB2&h6Yu4rm-GQHK#wHRQR3Cu+LUb(U zH%TQyNtE{tT@28y~T~W|qu467YUj5rw z!&UMvu=UuEnS?WQ4RLa^nahi*oTJp?8b(7bWuz&o*ws&MWn2!|Ai19#-@mGfOE0i* zH2OZ4c+m$H1C2pi^j9IP8S9dUkQozrd#5AlkQ}HEC8WUF42e3VB7ocwSuDl#m2kA# zoga*>7NhJaqv&*elFJ|B7tnapP3dTW4%1V zpZz?fA?_4AOovm4vP4-E=%;@Lb|;V#l+%$q(fn(y%v=-^+R5C`vu}0WK`rVi+H&k; zz@B2~u6(a4EB1h~D!QAwE=h!bpy&n~nXGYR;caRh26AJ4YC|RjlJQ5UKwtcNs7_>W zR8`z>&A*n`!gED>N26cXW{@5PpzbVk;knA2HO0j=b!<;+E!M zt>tiynfDpD5N~7D^C4HCYfOu-%tMF7Mp{0wtP)iNddbt`)G7`H`?b*e080 z8c)S9PWCtD4bIQRP+D{$F`B;a@+-}GtgcyN{8>T#5JM7g+WT&SU81sfEm;E=H7LI1f?w~>sJF}vtaJY;%Lv$`)<0W zENzaLGZRh`tH-=Nhdy5M!CIuzjLJl2_u#IQy3gLEud+WpysRGaOP2B5W*juMg=ouk z!b;J+!=r6G{1!|5(OD*jy{ph3>kuMrbK5WCh8vFZM$-r@3(IpOxuym7BVQ8mo=gZ0 z-IBH{TgnBnWMiR!Jzg7?UC^&e;J)(K&C{9aE3N2`&17PyKYz+IWXn6V5^gnocKp!p z%|5*3raLhNTd{vtdS^K}Ac%I9)M)i4?{rcPYpVEBA~RmK+cG^*I(2DhKk`rmn0h@X zi{bC~_1&`V)2I>*{aM`i)qp+6r}_q>DYW~9x09c)Uo72sRKcieVZ2wdZucFjJIb}e z(PxB})I+*Ch{Vii+BhV?lvzq8_Kf2SGA!D>*v;wW^RQ!iYVq<;LzaKNC~fzyZ5^r( zO*(&XmJzgQj3X2q-`U?}`lMr@2r2O<=hjeIhg&CuL>OtN<><&!S_oLzI))aKHMrn;5Kx{<%pOP+NyP5WsRxE=Y$40G{lv3;OOY_7U8Nr8D|79H%Ed-mr#X_3d3Jb>FcEdTHY{Q8oWMMyMst z2`TT!lv!f1-C|mhpRR?@^aVsE*+F${JiNj=JlunC`WQB`6aekNeM=T)oO|C@FyfI^ zSGFVAmt2q&g~#xW)N5ER_O9QqF3U~YZW%srnK~8_O#d(?_jkS)xdKO2i+2T~oif(2 zA5tp)0t{0_NwWU_>H23fGF5b~3kRoO>PB?*p<3d&LCWq6S%ty!PtB@);b`er?5%bu zv1^an6w*znTT#b#tw`mlL4=cS`)H8=R13^;&vOhT`afY)F-(wlSx+!eL7gp{*Ej z@SleY<}TPV)9k4`7KO5^KWT3CHa~-FffK;-V71woC!?e9NB8GDq`#VXh!r6u*2wrV zZRlg77v>~U*%Xxs%X`Xp!(}G6kP4B>pmmV6Nejp2ZM}-t9s5h1Mx7;%b6X0qR{eQw zn_L|xr;_%&9{?nmui-|%2w!B+#g&hKEsChE2x%tyZSP%WU0nLa z5qdm#=aq@|)Q3Y`Vr8t09B|zaR%%~r)cZ!ULJte0RFhy1Q>7Cp2ynE3)J25X`jx4x z69Ksu>t<~oIV&}bM_uk(g!qn;uIF|)SfNr^U2|1|qgGmVo;E(ty}hqaB0G5;b=RKI zb>zW=(q}TGAC9{AuQ!ywE)rI9(!N{NGO1RJzin$$j?aIUL<{)$8==Op8r5VX^LNBt>cVi9~?RESE21a;De09UOf7DJO)z z%k*yNit~sWE=MSAy6VU;w&`YvmD0`6+0ip1nq6YP1X(Z)D1mS(SM3CD2y@%8&z_P? z2&okqa%dlioMv-pg`BALVDzqqkOYcUmuB`n6|d~p^TszkZsoDL=sVTcrb$!w_9hW| z$39qRsC2MnPk%7JkvGPenbG#`%Sh7mqQcAu(FOk5Ka6Ghi2!h*(_ZN?BZ`2Xk@F4n zC@dtWKSd)Lq~tm|s7g{V$cny}xPvq!(>S-U*sXuEw{&r|#pcWF3ytxL)}@}=N5-S{ zRhPpymcm%GUf}E)PxVn3ZRLU+>2&0H4Z1_!$F8OCi zX0^EP-`=*EilmPU0m#+3)>iJCYR^3pBr@9cIJazA`qW;;(YOx^0aH{;B&9V2eSA(2A9=?Xg^2D1}>=MVecG;+xxgG-a$K$2wLhxO^W?#$_ zWLH$2lPV%ehuPkSoITeU2%Dxl5s#EEhQDpKbqjm<<(eK*A+^q&x~JSI3m{X{T!5>y zRP}}~p_brd%eU`j zD{Jm3WgS)SuVY9gdAID;B#cFOoDz<~V-&q@|B}%aug$cZ&$(~!uEZ;C3>x=QB3Lg-q%V?2#v*D?^udj@Arv>9HDzzdw%nq|C=cc zw}_$SDb_-|I>^C;WwL4n?qQ!2rAKpm#(6Q~&;nx}73<7`{>*G#T@8qFQOdYVMU`k{ z_1mt>ovp3Dq^>viZu=f);?(Jk z_Eoo(Y+atiifcRf$yhupWMGS`JA z3^w1EhrE}1DZlOt92k9z_!C^?78Aklu%S=wu^Usc!IR<780nXvZ7QdgI` zFC?MQ9!Wt;JQ(4UhT`~~eu^Pp^~B%w>1j_ z^8HbFJ1Ss^l*wrjbW89u&<|<%&E9Q1Rhl7Q&G|TL3&nlOGHUOE#!m-iS(WjAR3$>O z@ii~M&GRy#7@VRB2Q#pfFH?Og=rh||OLsm3sJ|})9%R@?In{1sVD#IYx>LQWRRp1bI z?1E9);zSSm2P!0r=FpV5z3a|-bVw4Ej8@~0ik?LijhBtlB#3N{JD7C~GlXnAgG^W_ z{)vm}5Wr-j`#XN90M6-Kie_m1cmi2Fgr@%hzr_y)M?cE~{HMZ;%x6!~Sk&UTPXUOc9|9SMtfYWXl0RB-rDO3YDrfn{GP zln5c%>EEf+4968>4egS=HjeH)-f$o_eBFGYhO`qd__)~*Oji3 zkVToaY7mux1RJ*PTb`}3pzn}ulsJ=;d)tp=IX-xBvm5!^C#6l--~QB9yj=#8P{U~>b&x( z&R_Y)@LbZ>3(%4gysa-AvEqT8pZ)fhkeuh~j1xcRTUWIsINim7IjOl}ZX=(R(ZWE3^&KbO?q!M`^(huEaWAE zqc4Mj`|%;X)gsuvt95rAZHVPKn|G{7XKgRqQOOfZUW+;2QT#48zAm$HbV39xE(PN@ z)ygO>3@LW--)RTsgQUS)zhVK#i4*Fm8;#+ug(0}+YEjQb6y17dZV|B_|5l42RSrB-g5C&8kUn%k8-)>rd3{-Fri!< zguzLMx5dB&+YLu@!WQURW#ST1DCOT^?b6Ya#F4b zo<`yxtdxhB9fhl8{$|1LUqmNQ`Pf1lgfsCvAs#$|v~SG?A@N05NdP-2y(!w7jH||+ zCPGHe%9pSB+Ym#AJ^UTRy->KtVvg-qA<5Df%CW1d3st3xj5NVaeIh$ z-Ow#Sl_+Q&mDQc;)<=s*t4+WCd_y!*`!{HhX6Cm0PwwseL#3f-8>zef3~x=NIh7Zn zt*o6sTxAEsiNR$541zFcbI)mbry;k-kvL zl|7OTR4n~^#CcGAFuL2>aYlMDFV{*6&Kd72fXHwn9r&-ce3TN{kh*L!{b-qQ4~T?|kJsVQSo$$AN9Mb2G0mZki%R$1$h#E@tr zw;*XvN7j(%W1Ms)oT)w2CuOb`X1Tvudt}nzn0Mhz>6EwmYipl^EElIK73_J>)J(m^ znW&br?t)z1F@|)ekP|&ZgstoTU8N%BL#qUv5pucJuYiGyN|u=XaT|d zwsIrm-P8n9*^>wjybrnHtM;%LmSWS}m>VkTB84tBz9Nu7X>%A$iLte=+g1I-@S`|$ z1Q|uS8EQ=Gj(uJ*#wxzRjwhK)Dp!3aoMBmacnuyq|DZ-uK2=fa^!#{adcDm#Ei*;j zkpqHL4TmOZyRJV;)J9O;jB-73aI}+af=2bbd#7qqoC^n()=L&uj849r%Dl3ueiC`y zs?+)$k<}CEzv4OCuHN*lPbH$s4oXo~&$@xloY+@~Vjt<%6#V_RvCW$NjOB0k4RP#p zsjPSpODsd~QK_uk`!~sPF5^$NR)0wRZEb*Tdr++tQmoa!v)8$WM5ktC>Y9iq(jIR$ z{sh5v+$88~h!g(n-lL@%vJG!^&^l|h0F&btf`?{mU)5_pfiri*p5|U{6hiEUD*YO} zae|+2%yx3Fj7L#s-(dH8=sQ-T;F2SPS?UFzU-k9oSjANDBRPS3W0lXZJQ=+FxDmN&OYXWP z7%U977q=oPn!hKII)vmP)v9V>8nc{-u9)zUtKLTY=lOAG79R8|oN^+K^Od z-df|-&DN$PQdvt@UP7kNIeH|ssbxXbc`YKge~6W!Hjn1w3w$ENDG@2M*P|!_LHuEb zY)+Qf0Rvk|vCZL2QL;WK`1Bd1%U2&u?kP)YKI!jn)-GcCetp9A-zow%Vw(YO(IEiB|D zMnMH!)r+IxCN#MmRD{A!(76?YR{;A*tXLhAwKLlI4(iGs73)-6)+W`V|LV{077Ax$ zC{&@cY<^qby_D*7Nfbvx(%6sfCUnE@ar?=)htru(im#NM%8LcNON`QOOX^Ik3B8)G zo4_CG{F^r2(X442)a74&7C!G>n3l_a+fk`B#ze+_P?}}li1c^44M!VqjXqWy=Om=T z#I*}*fz7_VYRDeznEcqBK|I^_uziX>dC})^I3*~AMONx~&~Ln8nR=7eoBa?i@bcO$ z@5$stFte;o*5HVKk`7Z$ioG6-ak2Y>hq*2EIY*}F;=KxNmCwtfaI>)p32d>*RMQ-%bRik^^oIaM#O z?GZC35H@+ah1Ub0y%RT`Xkpnukv?^#H|~w{eIxUu`hV9$!YO$*j0f?ydjxzwG2PfP5Xh%GDp8lIHRw`2puerMutW16{+7IPC=J2-=Rq>h=PGbQToEygJ|B+AJWf>u=2K&r&LuDrM)b(ImY@ z6;nhmoC<6zw`_sLOlCE==m{%&KXdZ%b9-+v^;*}QT0CY4!}$F8z9myNEF%>oZWPJn zYI_PA1v5W#`0=7^rteGw=M(yHf(q2WXK0Jj>{Fadbb=XgidBk$_+0l>JJ#X-&(FuO zjUG|7XXf9%td`S=q$pfZo%yjRei_j9gn?(O-znN)RU#A7 z#yMvrD3}<*RS{~01s#q?P}M9S3n}hdOM#h{r4=i#UWYRk0w#Cuj?VY&f2f!AB9fBh zH9wfDAy%QPYhDx~GqI#s{0+&HQP<}cRQjPfv-l)J-xhKalPoR1B~k`wGNG8p_1ht0 z7^$4&R-VH&0hWM1=HN09yYTKs1FE9h;@=4T`egm45%F<8+jF+($K#P5zP&VpL}ONr zBJ!<~*Q8inmtgyqQW}o;-UrWmP!}=PufRMxa>FgS#SS7~cQos<=swbSd2hDF_vUA= zYz=sj4laA%;fp;-uk2>aA#3F#i%WOc;e1f1GHu%*i1_Ciovv38chxh_WD4Z!@NwNi zoqwug!w>LYd-$c!JXdo4`mQzoMrM3Js6x8|LZIQ*xdbH~&ugNfSnx`Oc;@}Sjch+R|(mVO^DS# zrJc<-UF%8>vwlTcU_84RzkFq`WzU!0AfCX{+^^p*%;CUpz*(ms#AY!1-kyrHd~jNvmlm)ZO500hGw z%s1avHZT!ThlJpOMGP>ilxc@*z0Q z^(ZEtl3^@70_9&|KT9z3XFHgb)8J@2OQs&R8(W?_J(AI;SqwCBd1!=LV)1 zg0e(P5Oz$~{>NT_jG}2bX+kqn3Jp+IOuG+7j<-KV3euu(MbaI3eo=vxh$9DFBB|T{ zbZUv5GFe~OR>aIGov? zG0_$xDA(6$AHBaz;~<(Y8+!+7T?!~JGv%>E8qx2{7xPum3dmXxJ5^)a=w|h6G$kJs z!z;y1O>f#`g^K!hYO=&aTnrFh6n@d|7`z?esgSUeSLTvGn>Cj^-Vl=^4oAk zQri)Fz`8Rd3rB0Z+x8lYLmw||v3tT!>)<8CH8>rPp#;?#St^%K7X76`f5_nJdzAZJ|AHl3)@NW?diJw|VMkUX zeT8L|F{T?=oF53w$qyS>n!=>9KzTna(5NzOQ0UZD9ZEyJiG`O=PFeer;F{A?e&w;) zGllLH%|AJPm7=+nPw&0P^o>Z}yqA^svKVgT;@CU)nDsmDuz{^Z*`FM;6D`&A_qF8n zaV9bXxi9)aQTc<*u37!^mX9tqCeb@tzk66=`fqu*J)G(b&vY{oP)){hxZYDtn~O9C*n}*zsW5ia27$0{j|@^*nf|B5yPW?<}C{jqEs=TU3B6 zPdjWz5hQpGTU4qwc-oQ~Vi@NsmB9kW zu@%7rvXjlppWa-4!YIu>2I0AAQ%EGE!nzUgzw;N|hfR1Y^i^g)`)^Ebto5%?^rMLQ z`BB40BAy6onlI~h)UA5fd*<|dcaB!DcVTSaV6usb10-GnY=j91aa8U5*$3#tOA@c= zHOu#NOz3c!v8d9kPsDw0gUiQ@vUy_5 zk0AG!CfA!rSL9Y-Ayu6M<*z^NdfKYk3w}JE8V0{jp}j$Qs{KO2Su{s@Vw^-vjxE!Q z)?r@nXun(*elM1v`Q5>;S#YXb0?F4KY}+s2#aDbSOL^N$;mh;B-CQNJNf?(juqe#7fgS7UGnR z|AbwrP9yiIaar05??^Po)S9CHtOuw6JV$29?5{OSQoP{#lkd)0=DA!bS6+gcSx#*n z_3-{*#H53UKRM9s}Gk=tN(UoP_(qU=a0{UvlLKY!bC$@qp;&@u5k1x67~qQ z#C_yT9O4FFrr?F2wM#Li|N2~#ew@6PMoxYvz|73YnY3I~TLc ziMFr4Zq3bH9WR-Cl6YRWj^Po{kPzX&%7UeR@hgA~3)HIw6@_?YEzl zPxSbo=u~xVj#oBmwU&>}HIvX8~>uyY`LGiIV3j`}07GEBDMl~Dx$%%N& zXMTGrhD*;7d^j~bB&kpl_l8L!@4SVQ^tjuAq8@`-4U(>?$Q4kDE#Lp6JCE6yv(ue$ zSFxb@cyk3pt=;j>%$(*kNET2|yJ1?ZcC}e2_O@w92=weSX|8gA62VsazCiW(BZY z&f}eVf`;g}wo^#-){FPLojY=KJr{uTFKetsqepLjAnTsH_1yf8M^}nvE^Ya5tOjgEM?<<{bZXb+!V8(+-EOh@1LzSp60C5m;i3l|CGQWpXUzpIJB5n?Uhvoq5tJq%-4R!x4PiNY@5 zCu?B{r=S*i)sO3FlkSJ9A3{;pFX9i3FP;;NkZk$=1$GVD<@%-ZZBtoB_etUnx92qd zt1`P=d1TQ!k@C7yAscxf8pJ_X&#LheZp+5 z#1O`3el+jifM!Sxgl_{y;HG#*eP#xn0{Fz%?Yd<^siU$M#3uIp)QB zxExRy*0&8i1U(zRuqT$1F&~&E6K`Go0m(Ga)sN&AM)Y;4^cJFhlHw8&{UJUPkF>^2&XzKvGTXb0X0n2%+t zC-V%%S~9j=hqTcyqg(x{_VpOHdqlEb^!Y=P%}UU2^$r%ht?| zeMc|oA^W6OiuW1sDW5fad)Xg!8u&YK*z$}$Orf{ZpVPAV*Y9M18jwIrqB9)_ETAWD zGX6EF$bMUxINv{dAp$SLZVLZ-Cxcgly#D>MT*edYkRQa!P@xD)(9TPsjHc=*c5P*G zYU8VWQ!P10(pZna;t6aTgl`xM?N9;ELbi2IdW^$e1(%48wYf?qRC*`by`w4?J58H%$-2FBT@O{|yH@N2h? zj{6YJO080rll)zUjhw>kJ6E*DYEZKeYEU|`UsZbt4*3*0_lo!1-?ponHvDi@zKVF7 zy&$YCw^5+76VB<(v$3{KRrN#LL#}>kKP8*07l1fyczprMOb1;BGKMKvXMR+oUv~om z0${GeJgf$i>(YSe1p`NmqixFLBADAJEGAShwjaR>zqTT>d?BS_>I^b^n~1UE{jY-t zZVZaKZ2$fF`|MuDMP1h6gF6LYM55>lUPg2beN$C6I=mw|ri_c%l6hPriX7mDN2iVD zKhyfPjV1iuEYLy1%)ind+@62w^-VQ5+f6s~t*m1LsanHo6a3z6p`)BVA0ZW$7(+Rf z1W88g04?Xj7a%?Zl|8t_mt(kXQt4*NS9UPdpm=L$nrm175a@3p>nF9pj?9gl%XCIX zK|?0@pqEfB%DcU=9yNlD{vcX~XFot?n3aC$0d-=6+xzCcD3bnb1)t8*U34yQ`)WXN z^fc`ZXxo^+uEVmCMec$}51JE${xSFik=F)j%h6hN@44ah8?mVCkO&?K1i|W}9zeTM zYu?}9Z{;lZ06x}ljqCFDogsZCPCZ&b`mgB6YjB|vg9LrR@eO_rr)V$35QEy;6XjkT zC)4YU^Adehugcv~XmrkPt*0K?x97_50321O{i8jnmJLUEMFMJGh2#9FD1p{!^_DR> zI)7nLDTig8jd=p(g)r27NWZGF!GE;yov-nMRvEGGItQ*?haUfPDvxy;R-rK~_OATj==$HE;3^x|+A%2~9$0%%=<>eWEH5ReR)rCs^IxA5lQpS+#z{%>|H{on3l`qeW3HP`=N4OZ88&sA*Qa$;avCB9DbNa8&RD;UmEFlP(j~gIJ zzJClDs18d4!qd8F$y_VCpyQ*($=)8&Jp;;8h`GVqDC1l!!f10ca93pC#tJS=GCRB7 z)J@)N@+)|1638Nez+cC&7W6fAD2#yy20;3Pp&TO+%|ei5y=;)~wx($v_gnf7$QR_w zxv4&SDX5kMOn{AIT`%>Xv)5Kw0jDlj+MGncVBhcxe0JKfDtmCQPRY5aNSEjR(_M$> zt))%f7Vm_aXSY7u&Ql0i;uN{{=cvyMT_4#>D!93^zNXYm(jlhU=}->~+W@DUox9kqaY9!p$W0UU?>%hz+}${fF+UERpe=06 zmJ`UWv#~k>)h2M}=82;i8RX%wx-zOQdaE;C$=*_*j(lRHJll zr}iu@twzbsuW#N*3`#il8xeF2f_rUYD&iR{&5>OUz!rc86xIlau&2OuOE_io&WD?= z6pwXwYytOyCw_|uwPJLRMaiJLe9f7j-?nT%augGs+q5!E@SH7M5a6?x)L0Rbk z;l?fhe#?K2`yZD#$N3Np;NP4Hq*a`jnyjx~ZM0^&R`p*4zhuSps|C!Su0cI)-~p0$ur)R8UoGfTB3QBT<;`({ z`FacgY6&$_VA}AcYS4GE#_0f_v&G+iLU_{`M@i`W0b$Y41-$l;Lo=uaR+iW#`jT=# z9Qa;qK=T9W1)2hs9KO5;o|jE_iwsV<;BMa-hX6n^&Iyj2{91yqCh5leE%ti-eB#&t zW$+`0wW#R(o@1@)_78#3*tx&_qFXHkAhj`JHiP26u}*M%G!DG8>e@VVbL%eAHv4z~ zZI3nN1_0zfKHUZ0ShtF%drkE{+`3)!#UIHx_$8x6_lu}(it+}f@6YLi&l#Vz_->Xg zlQ!3EB%+1^x)&7hG+)}558lSj?z_|u1k@M(pPd7bk3d#q|7efAu`B(`J;WZTi9NVWF?+8cK zbwe37MNJ?S&V8@@`~!wM1oJV2zW`NsXiTj)DWyF#UrymcQO$U1Z$Gl&ySsZ=f5fmu-Mtiuak|(=e*K&5U zr&vG7I6WOSR}~_T{dw~terdDA)Gs6xj}9&Joan}5KRn(6^mN>F<=%6o$*`8ImYr_) zhbemnejY8AWiyiM-0frq;Zjg@xY_rE&oJeve7wD8;K9uh4uH<3I`8Rkm!n~5+vF^_ z_q+LEqj|LBd)F4ti=7#FgnTilF#4cLykY%osaNj0??{4I!|%}64y#O<=HelsrE7Kq z!dz5*7Dki6Cu2#Ik0iFugTB`akmACsBNmx(fCq)8{z9de&{HwyvMnq71m&+cmg86q zZ{W$8HzyJjJ4B_m=bX-%x*QjV zfd;H7)H{zcBM+kBz_}+nJ1&tx2L-ffX{k4nFRn;oHvz=Q2=?1;2N_hC(abA5QgcZ+ z@>%hKfF9Dt?eIK|<1IvFp)=co$1U5_(v4?28j#@jKSL%$(Uz6#w_*VVeCS84Inws$ zAu?P|N4xjUhUH}W0#Ir`RrM2`fZ%c>pe9-Sveq~y+SDJaMf+=$1Ms4Aw_ulcsb=bJ z%)b=8JJAH}Fm|uHnCxXDp&@V-M{Most1cvd&J%&Y$+DVJFY0GZq1^ZOFDCA+Rfbpb~`Tb8oS%y zK->NeGyz8d+O@jDx}a35-J|OcMF1RZIO3?sOp8E>jA>u_UEH3(Tq!LXt+n+i%PbJ; z2I7}Xr^?%0wD6e8b_pa9eGkNU!Az;X{T>`WXEE~TvE5?J5{;rX@t;w7@VT@36v`15 ze{KI2hvq$;+0~mBRr6Krg* zZ}0qMula4QLtogP@_yL2uCg+K#o02n5Aiylel?pmlE3^TSQfMz0lIJkWhI(R(%Tj$ zauJ((8uf6Lu%`rl*bR_6fSQ^ByMU;;nib^NkU^2G1ahx*o8{RdpszaZ?zzUrA<&r* z7>P#ecV9RO)mlUOZKTX`G(iFzt-ADWJD+L{3|)7G6pu`gfwvD&r`@35MLc$L@)~Xa zFqkg6Q}=;gnwtx4fyBCseq<|FpkUZ@;S7>$hx$R`J%fYz!l9QvMcQ`W7~WU012d_S z;*Bb|K0f^|^djMmxuWz{ek6pJe8Zy$`ZCDv)i5&dJ!nQ;+)M#;EDR4mc|J!A~aRk?1fU?kH>sU1yap& z62aZX`0#`WbT!pjK#^xXmaz_DeybT1J;N5|zTVsL>b=5j zs$gc5g9|73B>L*uS@cUhCvEQ|A}Yxit(BwlG&@kARE2B!-N#y3&I)wb0=FU_ma_ox zOd{MaNJbT73?Z~MNukHpROdq&D>NYgpsNz0zAprKR%^&6HoZi$f31TybUYFzNRPKp z(${q%umFcw5mHABYZt&%&jUdI6U5rW-rGEbMAAd$gVMYn8d00DDYR1!!bCw|(PY{s zpXAc>cMLJne-xJ82H|%2z5E-JK8coME(=;z+mIoG2<1pR`?&Em3H@N^x^D(H44t`ihkP`)!J)P$f#_74zpA~nyNM-Q# zS!D+GeJhwPUl<1o{_FLZnjxqik{T||_f|x~sdIB3<2`#&@j@%%pdVxlP{CbCoAp<4 z#kDm_ccWodZvt{uT-7UO}&nhh6N0e!Ovc-)e@6MHA@SRfA4cPnjANf`=!G2E=gm>Cb_O z6)JJN*b}kLWSY8l^;S2RKn=RCw4J-G<>ym))lRIB9S-&fq0z&>?%Xj5S@Dm5yHe>m8XLy(` z76gm|))&R8J4R4viAdzqEc0fX`T*3g+`x@o_$F& zBSM04-;k35uA|x^?v7md+keb{P^hq79z4&&cN9R^v6p=1g8 zr4XQ%!Cq=BC#-;0o!S~yF+4((`!Z?)%~b+!^8S;#Og<}p+(b8mTivol#i;+|h1;BW z&}4|bI!GkS0xB`rVQK1DMv8F@Kr0(|^r!0=gX7j$mtlJ?^KG@#jy8DVT{4C{j_^(# z8$V_uyzO}%iW8Be*ZpKq$M0Qu%v#e=I2lgy*7=ELKtDsJBvRRHO4!a%+8|iBSci%N zU0Bf>A{RYZ0gMX-m9ML1@n#C8d2m`*!a?amaQTF#<)3 zT?fL2BFDOT=bFc3FH3Y~{eIZ580=w;0G~iJ2-Rw#X0{_4)$@(^+C*%eeS|lHLsA3j z78l|)3IXq1D+vXR0GZ>V(*}g%eMt5TR|Z5WgQ``3_(4MX`=mqfwLr&5m<)4rxRaOp zYrGl3{Lv>(=g8Z*GceJW><2#b<07Wi0@t{7T(|t?F#s*$ zyeB>4C7fgfzdo|k9eQuqolDfpR5*$u(0UzZeVA6;Sig}bijYw$3Eh9DTrFo#cN+Z3 zTvy!mtBy=|g(qKLS$ULqonbQ~sFy73S}EAzOb23;W^nxlkN%ApH9m6OYTS zle^9ObCip8-${`^K{IZ=md0bai6Y8F3NiXoHLi00=mlf7$uid-$0|B74EQvXbPLcB z?lbRm*z08v%6(BBHW5jUWu?G{$uS?C8)=@644uSY9uP%29sPV=tNjaJqQ;LF&5vAg z7MDmeOr;=mDK;P}hUCW*sgW$l$(VuAlit^@)2PD{j@l+Sc<%m>FYkO(>b8Z62Za(V zODG2)KtZ)4Db(MF2nXMPFB>75#I9jvR#>h`lb-cg*?whdqDx70Vp2PDz-_?6{9dPw zJwcc(AWunv&U2xz*?ERb$5Nttk0frtO?xCx8ApioI#LRuC)tzr?wc$SE(lx|^SOZXkTjFR5DS0#bzh?6c=N(SC5JgyhD5Zy1KDJ}P z3Cm zzI?4Gkd7tIeHg^BoV=1g0j|Bp01J|I8JmD!9#1LFC}M|0j?aOYP!arnu5$28yV|;7 zWNL2<<|Luyixn_F5WsxdmeY!W6YoH_T+oR`w`Ltuv+9&>D0`u~0hi!nj2n5MzovT9 z6)9y510ul;D64AuWRu#6-o{*IAS!_DvUJ3_%!Q}Pe#mdWCDs1Bze5vbMUQre#eq@U z_6azyRwMM+)A-#2R`w*Tg)hB^D$Qvm5@AJ<-k(3?eFNOB?q<&tG90;H3X?(vr0A`A zr+R>?b4Qb8)1g?kp^`=`aMbC{;e+cj@CQ+Ei)=eZ8;jJF_brP}6Lf$_y}$ps-TT2} z$oOP^7q9;=G98J-JH_T4jZ;RU$qp8IEzTN3S3E5UqV9|fEjV_S*$;c7GO;_23*E~0 z-ZTp=3PTGjg`FZ^@)g%YB@JT6TFtV+FF}6&6JY*+srl8_2hv zA4?wM6!nWH=&8mM$>k>XK;!5~zQVzyr<~%uG)v?q4a*EzXhKwKG?GMf;#Rd7ET^7`%# zRp^5{>Pmn>jKwB zHVnIQ|C^elR3GeItIX`<+y~es=p#5}q-uvO&cX8T7$YA}Z6Ke}tNUL1_}+Na!t9V) z8~VPkBo8!mS2JKIbjVB{V?TX+K3d2~_uN|F(dqj0j)Rz0uzJ27-5!6I>rjH(ZtLK^ z$NWSQgXX+je;3PM;uU4LX3d*gYjQF+P{}*qt++R`U%K}=-b@3$pBdOw%DAQ?TD->Q zbZUvcMijsj!C`KdwMfTq}lDt>MpXF5_IA zirF0Rfh^9+s*65gTFpWfjzARccf5@Y-4lgd4%Lk@a28U?!l$7i^Z5hh#I~X38T1yvpWki}!xkEK5T^YLz}eV2bXFK6z*wBN zyV)M2CruW)2bB*a5_)9q-Zo}2>j^^@A*|%{9BPjJNHDZ@B_ED0v2ee_VP8?2$z1)I zl`lao_TND0<2O&F46;JBO^9wL*ZAxjGReQAkfk2Y5_^-fA7T}^Bcvk^JNlrFy=s~v zpYusaTVb_BUGi>T?I=s&a?q?0uR7LZ@=FZ<=P9wkmfWARUO(QDFZ@0z-B_xGsWOEf z+YzoelFd95##xV$j(?;J8)kpbnVgke(khA%==?hf2x%s7T)SE4s9mptojLYUsx>co z46Bwil!aHW2JX$s+fN{&vlSz5qkx7NsS}8Cm72WH~`qC+`mOXR!`mZ44S4l`*A|8`Do@sjjvf8mXy>DX#?q6!o*i=zzbi&KmwwoFa zxb?}Hv6ObjsxiU8xU6A~9B^)G$NkSbQHJa@d5e|=9f#MH6aLH-8nYMwDo7u35XF`Q_L&=B4o`ddMD0aOaR{bjE1PZ@y~z zoNgc}`IAbY#JX&}-$}3LxX`^H1hedt%h}R9x{;z0H5&u-kn)`EXy1uGt!;D%?;`IW zmVNM{Lv~mD3hF6(p6L7aqLxVOp|ey531?{6-l+DxpnN-Ru^aZbg8GPt=oCX*J1lAN<=HD3XY+=brpz&ueYsZ z9C=Vn_NIN^W;^o~B!Lg2!a?XB{K)wblr3>w2b#!lBiIll75?cAX0Ju`7_(NtrGaex z3NJP){EF@ttHW}(kqj`#6;qCc`qGm^SHMS`}_BoYT9r|B2})R;^!8q~3l$aU-|&dfXEW*CPn8r*+G2+te1_)|P(~t``f` zLd9g2Bz?pq<~eki)oJj_0L&>*I z(tHvrnm$7bb9h`q;+N=cI)XJNSF_aA?^u#g$U1+!o+m;c-gAU^Swf=;TvEi_k~M>+ z9(5-5n&TBG*b_9hyLOo#^LeBGXNK%LWP$=>hz!E;Z873=bM;7Wq`AD+hXg6t??_U- zv9r*x{r`7RPPL?c@_ugq5)bN+gD=rijXKQbr@eMQl5J+}R71Kkbe`lwXP=KqfvlkW zM@D!&r<@B}CaCVA{?b=Q=ZGLP(edVpQ=9Iqa2jv2OLX8t%n{dZ)3VU^J-3p3Xf{=~ z*@RTL&4)olH+gSjr0*^0%ev2Z=iG9Vy+_vn&(dPT*kw@@C!)QzZa*z$#Ka5qr;h*= zM9G{~Cs%1{%$;9Sj#ZAMab4~(_}e4EFl&!) zldq}pnh=foS~5${(CT7kKdQS+QW%4tZyw#Cm9_;}uP$JU{&QeL7ZS?14SvkdH#9RV zH6Q>0u-$WVUY=?OjfAlNsXc-yO5F`*bP=qSrv*BQx25H{M*O8_^{Jn?_oDaf46TV& z8gqkH<>i6t?zE+F4g(c>=SXv7GZ|d>PpY*(5)e~7K6j9EgH?Q;uW{YZ1uc2nhViM} zjMu$Kno#r;Q}Jbxe>pemlwLyha4=@La)+4OfM4}T=%Ajo5V$%T^t)E^-F+@t&7mJ} z6rr)uH|2aS(ZfAdy#6@)YuRZeqIe9dXX26BW56VF?m}EabC2l}O=|&YVELo{PYKr) zz2|)V$UL)}pKki$d384tv#WmZ^z1{Q$WV?}(eT#$c8tvqcs^+JOp;p<*+`J`b-X|N z(!A~?57JCft8SF*qK(auzDL2&!8yZ(T>k11Kx%OL|9#mFt5w3iENNf*3=0Htt0sS7L$_wvOT{_-bl^I^g zOnbQbk^X53<)U36Udzp7hS2I4^zhgN@d7cE@tbAaf<;Wr(=)sMiwD)Oc#Y@dvg9a| zMLY6+CxNR`=-sS~ETaYX$~VkRm6eG9=Z@I&qLJB^<@)`F(|J)M7KA2ggbjMzz#97A zf}U-Gp%=k|2GHT}>Lz6O>1SHzdV%?^VQKn>_Q9Ii5}U5UB*T0g%-1s@N6Ilnh z(wZpqvx%%iK~q)X*?YUlv3AJ9=zHo%RkXP7694aw39CYEd*)Xc{nwqifA_!J z>WOP-kwBxA0J`u=e}ak@g_M`NTMDbgtnnnP#Ta}pm>h<{m_9Yo6E4PX=tq-uV^BjErRpVIkv9C@k`QWHB&~KzVy>aXT=x$_c>z13N_#s! zj-~rY7D3qE6iLisH!wRu9Es^s$-2_hf`3G{6x2nxkY4R+(8lOd?=_QJ`p|@DzH$tmnOuH6*+N>Dc7kj~| z0B}TR0&|9pZWU6xA&=xiyNIewdQiHOrb6<`_8CqDU*9bnqMEWsSDn@YYN@ZuyvDzN zA9C{)?>nA-S^J)5@T>Eb&mCD* zvXyr5|K_K+G#Fi%PMd}H@yS#C)SZ4s@EiUuykP$Aq8hjj3Nm4D8H?qw;OAc-0JH;T zHpVDFTAC=RXHGtZpHBH7KMu9>H?3A9i-1;mIIJc~ZJ?4DX7+)G>3>K#;K$(g;LyKh z2*1CyWsBnf(AoU{>K|MGEgSj$wbMKPy{5mv_J7~-_d5KayoNub)ck+10`tG8{_hTB zF2nz?HU#=09`x(HVgHMC@{wA2EXXcejVe>kdy*P1{zpy6TmpF9tnCs-?2bae)Lj1< z)%NDYKi&S{-v!|sO9MGUT|n-)aFuxm{C=J0dZc!sQ6$;N<6ChbWXW!{?tRHB|L8gY z{zoq~ui~C$I?qFAAykv+KXSj{-))dTjjTl$80Osm|N15$^P45w^jo6G{@1tVV!o}x zsLo-F&Cw501Fr?MEeq%I@7MQ(D|)yR`<|6V&mlom!rDHO8YV)Y zf~IhZx)^WcMX`zdeS%E;HC(^!)%#Uemwl$Z?tAqBIxx?mV&+p{5p*&8AUd^bOXSLU zKvIk;)y+2cpCj9b*D@wDkJGECWjxm@PRXufVW(v7PL^=`fD{6&5GX*gqqxpDoCLy? zBcPAGy+|23f@lB*dBf6?{z($HxK=+&(MsC3|uo$((h-HTYdu>H^{~V!kX>=awQz0x*sYQA*r4EEa7l`Xu{3Kgauph(L;g!9 zDzS^JLz`eq`YC4hX?Z?*^HaojSda(xul)p&MxNuZUP~T8;2YzdM$aSpG!t{#W&j+R zxO@{oxBK8JhQwds8k4f*PrU`qymo?v|=|ILxTxGY!Ef5MgJmE_YP;f-J zB|+GH@4&C?1pT5*q7KyJ87b$Hrel&d>U|&#i`d6@#p?&yR6J$}h3pOwH=UGrvswP} zRmiaTyitig=&zci`MW?P2vY{8s3gI`HiY+_MNTb*JZWvbENCM3$F4OXTNfu8GHu|a zSdmZu#VHGHL>>I$Rn?iH8hMxR4IqDy`E+x&7}Ot7q)=ZXfZp%Jpw=d@`pVB_&3uPm zD41vRx!d=5x3h7slc2jtu?L6c0lAELZZ~xsa+VfeJEPcdy%ek-pr7mkfu7V%9EdQ> zF-qa=89Q@LtFWpdXWp{qO5JxQ3>9bI^O!P`5Zuh$_FBgGo%Sjd&#By<4i2igni_4f z1R2jkb*3EyP@6s1*JTVw(%sp``H?9qs~RRAvwe1G*WQMXL7w92_CB15VPUp&S8UsH zzYGXVAgeEFb=}w^#?g#}Z#jIWrb);adE}ygGS&ZqRoYFM~NxJQEMq&!fl- zDPh1%(+la9kGt~16r^-R<3;LV8ZDyan#g=Tu$(Esjt3#3;Vr1zof;nIHpK|o5-=EvTerH>7KLch$4K2UR(xyoNI@eVbTd4;IF zIIVj1B&`&*y53{MRJ9w*ebKMUCoKtsBkwbl(Ys>8%R_)rhrsjm(I%IBK21WW$G;5F z5DcYBN%XhflX43}ejmmQu=Ai|8Dvmznd1mlRN@{xhVS~WWt`JsA*wm#ThQN6nU}r! z?s|r`ksEG5Y9r+bEB(jFn0a58Qv>C8vvm#?M`hcSv00e`UVef*k-?4Jlu)6tu%!=R zx%1!0CT67us$l`WTziq1h9J5{j!WP2!CQ4$MLBlZv7EeoA8Pu*7ZWikOt)-~o#9`< zcDk-D#!i&3;2~Ke(4&e<&cFae5VhL6SmDtJ{X~*~_2$MZ2v6OiOti49EVQSA+#9*M zkYb3=Q3hEh*GhH3=K2ze7jC$fisue4q9_sQxRN*(f%-$qId+%^LuhoCDtV~@-55bm zEqcsWuR5l$7s6PN*|qW^#d%OpVTr#tb?$c=4B@L5pIYLvJY^Wla(~W$g_jpO!cXzf z#kYWaxBogNgwSlJj*)Zq_`$Oi8YzLNC;Iritjj~7W!!l*=0#nh9B9klz5i(M6E`FK z=i}c;o%*o`a^*+Kp$*e=H*<}66Q(cf6YF!~s7g+&n|z^a2TY#%?1uiuL-)sm;tN*y zPwhG8TN1dr@y=Oz~y_O1{G#KjMXNbgt3My8X_R{Od%# zBJsW6F@QOBAx?9;&$FGW0yIQLHIik0mkg52W0~bzFbls-1HGJ2vo;Z&|%tdAFb3hd$S+^O3ZTL3EYbeY8k}-7;|$P zK!KpCkv{;)eaBdjVy1!o$+}J@cge%Un4i8jevujYQ7p$}syW zRJv8Y6fKHj4+f=x*VmD=jvEoPZqK=8gv{&I+lxTZ;DS_%&GA~AG4YKlUod#Lt3H@k_|Va_Zp3@hnv@rz zTBgFJG^|()J~znRpv}U92IpwG$8@=!Ubig~hO#(kq3PUz(7S2II=YReFKoMTwi_U4 z?M-H!HYp1E?oT=-OEgvXFH{j#F2MuU8F~p_`{BTBzcl5WQ&&_RJZU0680sTE4FhGM z`Tlf2+qXn(_#aLgk8G{9CpTY4|JBVGTI`)?QX%0nrN8H5pJP>?MUueIpzZo~!bno) zU@Py!a3I799w)$eTB~kc>X<0k0VV7O{i>~YzGy`8DDA63;*HhpB+us)Z?u>48Lz1d zSftFP0@jkS_)H*&eo*y57_GljdgsDV(h!N4 zy3d5`8?m!{jB*Kg&2T%||AbU3Q1ODxxWQ@sJ3IF+U>!4~`~@Pz#-H11ciPe8t~*OT zL`6x!%9Q3lYpcOwswb)T-3uSm3bt_iD-D40+}#bk<3ar^2pY_n@Og0;;`R|5EeIRV zUOlzYuao!tKK{y5FkNDOdtwB;orZYlHs6IAyB7UHEcIJPQ_fJn^6WQCF$4}y-GvTQ zqA1(;w;0_|6^GV2jDm|Yn)T|~e}{#Lt)EIKl!B>wh{Y894@=5#;_P5ZRQJWb4dkQF zo6ULY*VUg7ZcMqZw~CMD1l4wzzc{1t@dP&;1|1|rFz;lMU(2_60Dg{%w{xvd*B+L?V@I9g^UUC% z(}o9wQfv{KDW&l^LeCTMMRGytCFMPrzBD3DnC4d&%_)g50zI`vP@N!!_~^NSN%;bB zY5WDxU9vi-%XmSYuW|x|j@JG71-MYvvVxgjU*GR!QyFTqam5$*m7WZ-kSh9uwRt_DeJR(}$7p_W>q zV~}xDK8;*48jaD&Q44=09ypHT*@_{!cd5ELDg20FUN5*{57q>c$3i;CdEMv2%F5EP zsbLs)tfw#i(h56%^D9X7ZWQLQFX>P+_OS{{d2T!^N`W?0gbB`2C0aPo^cjFaGCd10 zbe7RNb)&Nff5&$0BDgCgc5S&r&Oi-zq3h2(x4p#kE8NJi(vD1&HfKlmcPEre(31-b zgq$KBR_%7RSgD{y#FJJ0Y3E+zSx$La(2lt<*qru#F0@pQaPkNId9Uv?m=HiH(WDo` z$tVw9XvSHXpH@SdwBN~11aiV9&lzKNtxKtSn&!^q?PrXhExevj!*-Q~HF=;a@TL84 zozuK8W6sP5cR;M5j%^4c9M$yEzDEbrD@&nz4sCP6zRHKr9b23rQoXErkOabD-oelD zd;QNEMWgkZ{9ud(N*^Y)4H{?1e#r?_i%}!Zn1aP{f?~qEX@RG|Bn|5v$wqYWb#67! z)!Q~WxsU!9o|+|d)NO~Oux1&#(%Yslt36etv{dl=ko?m%m~*f8WeGVcVGkZl{z=h7 z3+6r2ncmlE&Us6qnrvN~B5N7ppdp))fseOS@0pQVKQyf#ub`J-I_T59_=cuFVk2T& znT5QW(YdIMx&Zw_-EhJqy*^zBZO&a%gTZek3*Ec#zJQ+2{;c+=D%v>03F(2vTg=cN zvNSF*Pe90du3kMt7zyhBB#bBt3a6tY&skY!Gd(xnf7Eqnw>-oCvsfW&RDzdi_;&C- zN)7}isekIjP#gc@o8WZk*z)ZKGvRxI4{6jXleDYZkl!5JT+@RmHLpbRRSUFAey6q= zURO4|&i_aj(^=+~&(Euih)3;_NhaJVkmU+di{UShtB5elh_eqxZ@Bo`h5XgqVmBv> z(D~kwkM;q(OqHVuV4At*e8_?MOm%CQrR2cTm@I6jjuzfiqwMNDez4Gl56M#nH`kca zTWS9TbZu?IE3~15`#zu<6$miMPwB^~G?EqBV(-9*=mwo>OAfA{(z_-t&R|6JXBc2F zX4OMOfs^2AHGQ-{1qP4IJ*OH|&lL^~PEgNvU&~|6(lsQz_|sMZ+2EaNClVhG0Pg5Z zkjo}J8V>Zh779Cd7vwBvdpO_srFBhIAQm~fgE&AA4BD1iY-La4-U4HEY8s1O-rlA= z%=L%6j`^6pgl~eef?`MzTpR9*O7!2o{~#$oPQD`dE0En+OXhhXM2 zNW1HrRZ`^FD||5n4PK5<vi?7rM?XT*<~c(pS#OW!Z~Ozzj3YON2%d0usjbO^^CikwLFx6Hz-20iqze$9>$H#;AoB! z%*^D~NH}2}eQ>`_fOx0Fec!<{SH4_-ZdoUh1@HCU6EE@7`-?m5S9jN}Pfv@pJEof) z@p;kT{Y>@UuVnxGvAHz016VSQUV0LdOqe(v#Rg3XdLA(jR8I7jxX|S!c0ffOi`UII zti=J=pb=njfmb7aWBLDBWYRC`QlYi^&9Fur-jsYvomz9FVV=FT>~%O^ODNe)R4y(&e$g zXC%_2Xm9JbI2og?r4P#V_WRrrS>K)>0qb1}Kd6BA9b{qKGku+CmvG7aW`r1@2$C|5 zz8~Pu$8jM8NLmt?vtYCCmG5e#`BB{8($HJ4mgKKystJ`%?~vq52Zmgzd7-{<8+M?vFVDWwpM{^0C`YmZgH<(8%?% z!T?9eEm4#bHb*&~Q`)Bew4fqACsG<6;VB83MdM(zUiR8)Sy2ji@y!HOWY;@u)zRzs zxlQg0_ybJTxSttGfBAV1vbEb$3~Ick*##Z9_hbWwWQK0y6AV9+N5P#h+Z0Tb-rl#7 zuL*lO<(&(?+j&&ue8+n1vCAuCo{*?9;-@f(K|+)E($qla1TDR%Kh3E_Ql(E35E;67 zL-koV1j&X0z5~$jrAItM{G1pwLw8nENRvIo>whqVOX!Bw?ue&8r!3~A);(4y%;W!# zE2F+c4o7{E*_IS{Q#6X;gLIm>A6@ljZ!rCE)ou4Xzy1}vz}|>2N_@-M+#gwEy>GtW zQo}WEuFwX>sTu0d!%8>bVQw7wff@b;o){;5^0kqel7kXA@qY>+O&TY_!vFbtOBz3L zcjhMq``-P$o0U%ixwRU7@!jN&pi1ffboO>2OyG%kXSZa?6>i*hUwdmj0rifBh-**w zPf&<)^lR}joT;l@;w39bd7AnL$-Yl?VT7Q*5PNQ@+`U;Yv9A31y_gW--``ascc~C;nnm&N zGPQ+~?v*#>6Q>P0!(V!Y3-&CgzVxIM;16(d_#Nj(uJItxVRU>Y#*w=Za2;uWlL8a9 z1akU4I}<-z$G^~#-AYpk+>mOV$nfgWRPC^ zanx(s8{p~Fe`vk5OFvG{)iP_(o&OFXQozSd7wwRF3sIQ~)Z>I&`eWQK#9>d`LTxWy z_~oyBb545Y7LHIm_|=^ErYK$^8EeOj0Qh@GD!`(^2f-&qI7PG&UtQp`K%`Yy8sHu^ zp%Pb*mM6QtOXU%8InbJYw&#XwY#9%v>RBZe-CjEsbKJn{7UJJGfC$Xf`#w4?L-lzY zkx2gY9>sl++xsbLQwg3oH*6moX0x`kwyI;$MR>PQ>MJu9v-T%|sB&_My63gN@KGoZ z(rLZ2tfIL^O`?FA`oJtXI41v<#o2%)F8BT8QPwAFt54aQmk2`Yp7~*-<7+z^=AnEg z;QKiYwP^Nqva*ow+3RPqn!qM@n+c1>5^QvI!e20;9XxtDld&wMo9aekcMoM1S!vEp z3eQMb3XXfeBXhC}(p>$K9ID7M?*j(6n1$#DvIW?Fc)ROoGX#5dw9uSuyb=jHD>^-W zd91fIYkoGRpMP>LHaH8Z>zfm*P}P+ap`H=-?k;k zZ!AJBW($&@Nom9Lam*sYV82AS;0O&LJul%jc(U22{GnLdEv1+{Sf8JC1Xch;D~=^B zaO>tonhm{4aXj67LS7HdWck`AA=}rRXDA&YUuYKq9d^6eh$R!slATN{iHw z`l^`g(@<38Vy3BMvsMVfNrOI&U3-o1=Fe550Tdv5_!AVE8l8-;xm!-f8?d$Ft*l6hzW-TR!R)!vB0Yx7j;p1rc1T~gxT34-L^&91?%=X}c|=D+M` z4*s+r@i&)x4*N~Om!#)iQM8M>zFziTYnFtYES#b)31WEmJR+Vv%R%VbYpGAeNIO6Bd4)O#%eS)*Rje#QQ{ z)A)@B7ysGGYbcv3&Aj(v1KC;JIv-!=a@>_t#eabANq-R`W4`JljG291h&Y#Z$|guG zOBKa0PE;Y|^3~HN4PlO#dYps1m{J@*Uc#Z!8Z6^eYm4aiLJrx-rr030#K72x(pS-piWV;d$ntTJKG7^X~eh z;JD5W5#9oD3sRmw?%B=9i&Vc=PpJ@PUIOq02U(y=h6mKrS`FS#O~+2(W8;bb#hSSa zV(WJnG_K8Me}V;p^_8qWZK;6_O7!ztSsG}urh6lXI)M|Tagi?-#U5H@z1F-bFsRA5 z-MXp$g(Y4uFUebuIJR%vQJf@-devxpHj#fTt8}DsURUEQ*KTKG%0q!F`ZEAj%ROJq zfCuQgk=)P8hx-Rv1nJ{Ro$&9L$tl%PC4btB3$F7ZUy?zrNv1q%xT z?Ye5+)mNgZEI;HatzE4c^JABq7j0E>*Kk-(x{5;1>+F+!n zfVL#CW_?6|wg0;RJ2XE!&lGy@K6vt(P7|AmsGsOvP{8W+C9LUQz)rt>6NL0HZ!)(% z$6a>5EMs5aj`}YPDdE|k3kLm_kM_18E;={{c-r_9t{Kv!PR^HugL4rdlqmgUh>@@Ft4twm(e)I-p~Jc_9FisUoN=i!DodkH9ar@gE545|MGl~ z?y+L_5Z!B41f<;}C-Y-nsr#=aOYw4d*DT+doVr!7&g=uc;Zgs!ZCkE?g@TJq6uYkP>8ly{`*}T zjQ&}^hNBn;v__Q~Ek?^HM0EFJ5Q<~T8;{l0g#-jh8v!w5V>&5YZP(LsJ6s1Goe;BN%S@P-~JYlA}P)aa74M7zwSz`&oWw{qm>~SJ2 zE9K~fBs&t5C2lV0Db;H zq@uq+#Fqbqgm@2jFpXG1@+*dvMdHTBci`qi->DApukUaThyX}zK(PO@{2k%=?WBjXhSh4P&o}%Lm#a;q&|XkvNNL@Tmn*^r#-#6pML(2>O)7u zWE;Rq940%>sHB8$SyLkJ)h`8}=vvvc^U6X&!9FCtCng zh{-1c#fB4+IiL%=I=1(cHb{$E0Uo2vX^wzTSlow(Dki3=4Ek9aD0T_^*X!OeRoAGo ze)PESO@FhVEUjyHg)Spa^;3o0<^H*spaOns>ulw`Mq}1~PU!_WkuYn2>WnkT66T;m z3(=cmI@*?;*OGek(|A!L=o}X5KZolbn&7&s)`hKQRH=lg7t}Pxh|$#3+W1#_1~`lz zZ21uHlzb?@vsIZcsECK(wVs#J>d3}3@t`@O1KQ9QN!)*SUOt$dXIPbXQV4yrZJpF< zvd@F-Y80#T`8oT(S^u}Vu`>B)&&9=gJ7 zSzVE5R~5Blz5_KVSt{NR%C&}q152Yaj`Q7-#ph)t)2j1c;#dBquYI8O01S>JBJ=q+ z9jTCB8X#YiURrv!*#mDWhusct0vQjRscFXuF#2V9-Q6M<=g?n5SMS+so@ZF;RWOT( z5q<{iX7_Dr=RcW_06HnmUFi*LhTI3kQbz~Pi5#fqPZr&N^>#6OuYQIVh>orT&;!mDO$FtNRK(|ix_q;Vb zQK6rRv0EMYHDg)Gl#(|I*!=NS{(DE_DMpc4Q>)5Sr1Zdc>ya8}rL;JQ;nhI?-z*b` z&%K@9Pi1;12oXquVlsDkc|Ut>i9V11qw9)GLP6dGb|ZC)5~jXUC+Fr5g9Ep$5-0E; z?J`x+@7Fy#SUTz9Sq_QIg6a%!K{SsrGh_kSO11v@h2>zIfAuk&)wXV z9Kw=AZ~mF5Y!=y<6meGB?;9;J1mOer0}}SVhm7CDO*?HcU=X9}p=%gOp18$y->rZ4 z;jX&yq0r!zIR>kB8aWS|`+s7eEs+n-gGyy_pqmydRJ>iX!SB>|4DE5${o3qMV3yf6 zy}o3AcFzO2gKT#lxYc;~1-G{e4(%l+voF<+-`0NtuP+c+A>MO7NO!vB?k>z8QAE@+ z4c=y*a34qim79joq#G#vVN6UDpNyctJWQ*2>UgY>8drItLo)vT2Uax&G0o3sTIJY~^gGEj!X4OMy< z*-4;_-Nl&j03_Mc?!FW|sbO>p&Eh_Q=ZBe)_mOe{@>VZ!xw#$`$XJ-5x#%JyXnJB_ zBkuzn1JYmR0|Xw`a9ye!7(X|D)^nK;QE8u$PJA+`G8fC3Kgazu)i8%IoNHG>kBoi7 zq}78*vn#U*Vc%Dnv2b^)dhF*5JS~D^wG8S#hftpd62Ek6s^59eI|P+5XB3HxvPcG> z(5?gQHb^@z<@|{|&&4-k)}T&9Rv+0lyQLEL%oqE?;oCw+TW8MXS2%ypo(aBW9zev5gEGvK`v_EBHv|w#hkX`P2QpzQLF|lMC zB1ocKLC#hagsD#>X!kxRNLz~EP;wv7j6K~`G-$fJ)46ZIY}Q#5wA+hugGBX^L`Pdj zWlENk5~mK{#*)@iWm%$c0*`!AfI>9W+F(U%MvO+&8%@ z*&7@(45(nxnBe3dvF27RxSg=m(HUx+JK6T({7}!t@}55{)F^keN5MT`&*01_y%*n)VtbC%j&gP}Y+l;92cHuP|QJ-XxmeE*LGbjrSC zdn9T~ca}kpi%qRlk-SlR9Fx)hIzl(yCfl@1x*+n+^qumLPYu!cP9~|SbEK%Yt1x`h zP_9qh?FG+S3N$~*N|C4H11$&=PPY@$X$DccD!Zo0e_(ZahOcFWQfC1b&}tJLra)$$ zwF`EuPr(sw+azlYt-!BSYcZ<%Q! z>Q!ys1e9tUK}e>cOK2on@~}2S;z|lj6>0X52W8j9 zclo=Qo7eRSOp}g3;rxURUj@-glw{|)^|5%?2t1c3MQ^9!$3SN7wT3W3RRs~&bij?-hI*l-DJHKQ&;VZQ8 zTy1b*by#dLhAh9gQtzR!c)1$c}i~fN<=^h)}8Bo|II|ht5JCwNa_p~__YM&VNKb+aRRMKl070PZz zX-eCrGBBQlA^Fgbk_WX)iS=jy*w#O8x82#oh+ z?zcqw!E-C`Y8{<|X`MRRX`>f~jICdA8lvY5`xY|%q&Y||)Tbo*supW7*9X5U@#8EP z=(#QUnkq;cDkLcp71{;=N`MH8lG*(yvBV^i6Kz>^ur9bY@v&#_%Exh~JKX8g&$#Dfg01(U{sTT#^b@^5`-GKW7HCX)_%G5`fd zI<&6$v_K-RIsz2|kNFALi3eoU63>p%zB7cxq~2U8lF@Xx%Q(2_%nw){UHy8zr<`YV z{nQOylf=Z#ZlM)WyS+M8j-`)x)DCLsg^fR_I0LY<;+g$Mno=ZH_&)BP!2uy;eY!`v z#IyD4!m0}kA(hQxOAq$ns84TI^0bc34QC+roMx}QikR8p$Z-wR8xZ$T%ozUmWwj48 z+*)|n=~(a1A(Q^0ZlQV=o7qU|M3^dFET6XK)fJa*f_00v&9pf(k>3YuruC@~yQf{kkX1WuE1L}_Ll=;z`2dn{MMg%2x-^ z8r#|BP-oJp)o^hQStK}u3vcErm>Cn|8_1wKr#{jVGR}O`ZD#gHV5*ul* zy$8h`j~iflnzi^ytEW2p(ntDT-0m(6JU!ZDdFB-;1)8ZIQI3&6s*UGmR%n7&q~{^x z7dNfidPGS^c>yog2sgyuRR3d_`O?v(V{o7%uWyo{vKiye*(3VR?k|dJWho2sYb~jc z!A-;peU?w^I)e{!T@_;WgpwH{?!7SrSMkMnA*jv-|-n(|w1QGS2s>NJ&Gxvl&ZCtZ2FQ86R zL-{^8j`#nmRi_4Xr|H+Nj~x@ZFmJnGsQd8?PgJ5BC6)VP?gcw|Qf zHtZ3@y*T#XQ0Rm!UPN6metr=d_m?e)n{I~rqqwpccz41#o_Vg z_D@pT@wXyAHw{!~wEawS#IIMryf}p41%&U-G-{ zwZ66!LrTvIU9aVBDf@BcY^WM(WLXy#=Pc8bBlh)!@V*on`X^!+l~x_do+V}>hO0K8 zdsn;lbybbSX%LveY}xCQc-EFD>%R)fOkmRII6Rt1%kELr!KtC|=zTvH1Mpviv&98^ z-+aNYR_)x;y(6t6CusT!cw!P)tpl+ZXq)Ccm0a%}!`qyfOFvvx#+SUm6BU}*rRCIB zl6Uf=N`=vs1+Xs^9&qlL4)D9NU;28^)`sWoyLqzw)b+G(3kAFPOxPWEFIQ}FK;LoM zZVY(_ugXe9%r2F8yCSbS#XPCCa2R*y7+(8%s!_KsMfUK?-KsyO zrlH+RwTIDXOP?5e7Rq4QeO&t1-sR5Ut9Q%J+j5rGqA-W|TrpLe@-8dNBvcNBe(=4@8v^u0hmlEn0~tN@H!8#(IcUS0R_y@iXL>jlr~c9> zP7iZeKkG|71H(`BlSAiuJ(I+mMcliueQ8j^P$xkD+B+9!&&>vesp3XkHJ_aqMGc)xsVdQDp-CSY$ozlU zd#|V_yRYrnj-Y^rq9CBsL5fIGs)F=TlhAu7G!a5C3IYNGf^oHz!CC%7YcuG zgMc}LMmtxboWSdOOK{;6%*Qeqb9F#zH(Hb`Q!FcA3l(0Y*0FW**;YH+)q>!hXdSQC zVDPHQ`=_{*u8yH9@u!~ax1_Q-(D+${%*;f*mL~KdMg{m^3@3X_4n@!vt8qF{HaL7n zYiBJeu(W&_Wyu$NZ@grX7iwsI%$PaZNyfXw(t$sTMSrS0+h-weNyTf4?H0>(d2p+j z>;i=%1iQsLaqPWa_}<*c0sL z?70dNuf_UM4^gPu%Bz&j@`EF%0Sj^o;@xP#{Ro%8y`i)dtd}?EaxT_J6pZqf{bJ9s zl4j@wul-Z%915xiC?%$dyFf)TQ~E*?h43~mYBbtIZgU3jerR&-3T_6zZ`p_rq{G#H zRd7~YS)~I@n>g`<^(F5EIl^XBC2!MoG83IiW;9nr^vt28`rd~dKqzDrADT%t+NrxO z=?peK7cKn*=4&$eozQ!m(<9?z+r>LmVWawkbSbX<@iFRM#4VjZI#Xu$K*odE2o>Bw z5GU@YofM;IJ$%`TH3ia}nRP+O2GibpHgFppx-`*8gSn81rVKEgXuMcjXyiSNpxpP( zRZOGP?@*bl9dfe1+QbBc#7;a1xf$%gHJ>W4Ak>N_d@aU#C93kjKC`fePrfOhr_a~} zJ^niBR+Do0A#SL`uRWF#)PAty@_e?6-4A53X{3Sht43I><$iONjD~7*G1BSW)boqAMR}8@Cdfmoa@2N;Fkz zgv870xd3KX-}uj0zcdf~7%3Wsk%!8~WnuzTdoz*=1fFY$HV`w^`2MrLpV#Ygoo3%i zu9*<(q~k`FG8x~ude1b)3}}X#rQGbIhh|J+%1&ucfHnyF#6smI70^8G1sa-o>ztM9 z&ZqBeC65{{6ivxqx^#C^_rRAuTcMR&1F#IRe422_&xk8c9M*y-|?rnjJJ2sfq@miO4g>s*N2 zruG_RS`b~BtM1|JD#gVJ?GyZqL9$~lWo37$jWcHAN`2fzU8#~XiZ)!R4Vi8^c}+9o z0&i@#8L8sxlio8h@6TmiN=uiLy8(K|CkvVOmqFPtAak|d-|%cV{!~+ONhrnSZO35J zEiYi*R5$Xy%j{y&P)u<7f>2s|gDUoV+rOd9bruo009|&d!x`nALDROT^$=~*IIX0* z`WJzPh8!sXB+AzEF6a>VzF_>QVWTkR-t-qpd_Siq%a1ySiR%C(s1^(B!V{~|@9tc- z!3%vJO|i`+<86pXbK>4}` z5Nzu8lrOf4D}Y_iDy3J&KquDUN#JvPz}B!n=Of%)EJRGFV8wZ-9?#JKAN`DY{XJQXS8Jx%lIh(Ooc4v&bKr&ECm%I{#}#d<4<7&fy* zyB($Vms3~Es(=|RX5~))g5&_^i9+1%l9e5SM}UOLzwq_QT*jQ9hR}Rb65Mi=5_K`1P6lGIlPR&wOs|L>N8L*~SUXiNfEo(A+yhX8;e9QExwMX&7UlG>nC$qMQ^5+lfgVN0^tUg$nqfrW; z#yhKpqaRCOm8!&qyQ<`UE{4P`vHR#0#Nw`+du#b0B*l21e8;$SPowZD+)Pa@5mN)J z3NfNC_Mu5*lC(ouITRSj=*OBakW0%W7p>?_F6-t|+Xkxm87B^cjY=lLRH(jGh94_J zzy3Mdy1ku>7 zy!yUd+cUFvqtEXltTEkNf_zugA!5}vm_oh9Z0fW2g`T4z zAbkUBJ(dIr&ZhRCXZpXYU%vbEn`!N{=IIS^%XgkY_(|b-y-$s%U;`HcM$$faUzRLA z9O;8L`kQ#~?FQiugLkvJV>6-Ya{F9caBO>hf?u6@+50?dT~{?Yvv8PlbdWSLq%5wi z*LB^1xD!sg6^PSpyP>?7SE^tQ_0;k6Q_=mqdyDx96=x6ij)-|Sq=bF3<$fyUl&L4F zvdOG_dTAf}3!;5koh0UDzEq_BX}tG1YI_EE`a;_N-5z|cam~5D;>b8Pl;&$`7XW%x z8;c@Xr8OgBB*lMq-gaCL*`1m6_mu2?EicvG1@x20H6Jui>cpK%) z7a>VzU2_G1IomGN{r1Iv)XvuF6xTGI%Y?YG{HFVsr{t1+-o}TL)TJcBK}*!RTtX?h zo5&`CW1!l&+7PLZdLtJsyIV}>w%Um|@cO-I>khwIZPzvj6w&nv^VTJXksW{F z`vR6}%G^d@fefCuGF)`k0ZHr6Dh;$A_09cYmF_Uevy`>|rDHF9%ZK*c*R}{3zZXem zs-=0dSg#0Pf=Zh|cbuzVIs2GD)^nQiw(CdG>jh?rdl&xm9_2+vlpn2~5U75GB0(sK z=UaL-PnZv{W@U|IhHYz`jy^+ixgSa=_HEw`TT`Z`ci3Q}wAp*v(6VBa7{`OyOfFtv zbA7GnXOUj8#YWk|qd?bgJZQilKM;5LeEz|o_Dk3?l?VvEczD{;*3#0uuA?L%1DfIK zwJ|I97exM~AGblX-UYeKnP2BvoSlJ3BIp(Lk(1~6?2rp;!!aL-K61HEp~9yD69VX+ z_){^Lo5=O$jnvW3ieP8y)@}69#cp zO8i1>ft&HN#cRUl;V|Fl0QrTb#Rv#h^NyugHTFg?CZor10edlQ``t{Zcsq|;hj(A; zC*N5;KwE3HHys~+`~YQ?W}3IH#?QJAc;7p0*E%%$TK&*5lWcjU%Ed_&Kktz}M7hU+ zk5(-{Xv$|`&7kTm?o}IVwA@!x!|K`-4TBQ43Z zc`%e^BJV=|dtWWdgBYfn%xjpQ>Lff1GFx&i=)gBv{NY$#3;+GqpU6;Us`w6nHmXad@;x^b_5yQA-v|mdXMFNu0?0b!-b#=XW2hHqKBT8T zcD{tfaE-F%`gz)X#QWG{mPm%HH$2a*m@~f_HjLpJ)i{ahr42f6*nvR|r__F5ykDa5 z=+5|qITtDQTCl|0R0BGmZyo6E^CyAcj&03at0C>Li~#l+h=0xGyh1&tAD;>#+|I4( zyAsFXy^S7f?JvO`{|dZ!t!YM$HywL}G0s)4#0GLVB@oXqC0bGznn=YEU)qgr=Rs#u5A@Wkw8ek9k< zsKkCqIFI&6l{YGyMzRFmDirMGDsrVVjsX&qGK+LH?f8W{h+5M

JFd7Zmb)%TUHO@eVEXz46}H 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�yL{rSOR|@d{xWR?y5K?%_5|SA>NL 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 diff --git a/assets/screenshot-3.png b/assets/screenshot-3.png index a9810f87b10d40aab7ce63f8cbe91bfe4c1f78d2..b866bbb0c0bf3dfa76566cf261adda1fa5cc58e5 100644 GIT binary patch literal 42368 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 literal 6110 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 y!fY?Z+d|*_Zd<}c{(U8T Date: Wed, 18 Sep 2024 11:31:34 +0300 Subject: [PATCH 099/130] Introduce a helper to return all available two-factor providers (even if disabled) for uninstall purposes --- class-two-factor-core.php | 28 ++++++++++++++++++++++------ 1 file changed, 22 insertions(+), 6 deletions(-) diff --git a/class-two-factor-core.php b/class-two-factor-core.php index 82b42d96..88eee556 100644 --- a/class-two-factor-core.php +++ b/class-two-factor-core.php @@ -132,13 +132,11 @@ public static function add_hooks( $compat ) { } /** - * For each provider, include it and then instantiate it. - * - * @since 0.1-dev + * Get the registered providers of which some might not be enabled. * - * @return array + * @return array List of provider keys and paths to class files. */ - public static function get_providers() { + public static function get_providers_registered() { $providers = array( 'Two_Factor_Email' => TWO_FACTOR_DIR . 'providers/class-two-factor-email.php', 'Two_Factor_Totp' => TWO_FACTOR_DIR . 'providers/class-two-factor-totp.php', @@ -147,6 +145,24 @@ public static function get_providers() { 'Two_Factor_Dummy' => TWO_FACTOR_DIR . 'providers/class-two-factor-dummy.php', ); + // Get providers registered by other plugins. + $additional_providers = apply_filters( 'two_factor_providers', array() ); + + if ( ! empty( $additional_providers ) ) + return array_merge( $providers, $additional_providers ); + } + + return $providers; + } + + /** + * For each provider, include it and then instantiate it. + * + * @since 0.1-dev + * + * @return array + */ + public static function get_providers() { /** * Filter the supplied providers. * @@ -156,7 +172,7 @@ public static function get_providers() { * @param array $providers A key-value array where the key is the class name, and * the value is the path to the file containing the class. */ - $providers = apply_filters( 'two_factor_providers', $providers ); + $providers = apply_filters( 'two_factor_providers', self::get_providers_registered() ); // FIDO U2F is PHP 5.3+ only. if ( isset( $providers['Two_Factor_FIDO_U2F'] ) && version_compare( PHP_VERSION, '5.3.0', '<' ) ) { From 9119613dba91ccec2d4e452c088370d9f10a89be Mon Sep 17 00:00:00 2001 From: Kaspars Dambis Date: Wed, 18 Sep 2024 11:32:49 +0300 Subject: [PATCH 100/130] Let each provider announce the meta keys and options used --- providers/class-two-factor-provider.php | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/providers/class-two-factor-provider.php b/providers/class-two-factor-provider.php index 2e9f2a8f..68610c69 100644 --- a/providers/class-two-factor-provider.php +++ b/providers/class-two-factor-provider.php @@ -165,4 +165,22 @@ public static function sanitize_code_from_request( $field, $length = 0 ) { return (string) $code; } + + /** + * Return the user meta keys that need to be deletated on plugin uninstall. + * + * @return array + */ + public static function uninstall_user_meta_keys() { + return array(); + } + + /** + * Return the option keys that need to be deleted on plugin uninstall. + * + * @return array + */ + public static function uninstall_options() { + return array(); + } } From 8ea9cd3095fbaef03685dfedab976a5ffd5ccb50 Mon Sep 17 00:00:00 2001 From: Kaspars Dambis Date: Wed, 18 Sep 2024 11:40:35 +0300 Subject: [PATCH 101/130] Keep the same format --- class-two-factor-core.php | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/class-two-factor-core.php b/class-two-factor-core.php index 88eee556..c429366f 100644 --- a/class-two-factor-core.php +++ b/class-two-factor-core.php @@ -163,6 +163,8 @@ public static function get_providers_registered() { * @return array */ public static function get_providers() { + $providers = self::get_providers_registered(); + /** * Filter the supplied providers. * @@ -172,7 +174,7 @@ public static function get_providers() { * @param array $providers A key-value array where the key is the class name, and * the value is the path to the file containing the class. */ - $providers = apply_filters( 'two_factor_providers', self::get_providers_registered() ); + $providers = apply_filters( 'two_factor_providers', $providers ); // FIDO U2F is PHP 5.3+ only. if ( isset( $providers['Two_Factor_FIDO_U2F'] ) && version_compare( PHP_VERSION, '5.3.0', '<' ) ) { From 129cbfb04b1d51539a7c3bbda29f7d40ffdbf66b Mon Sep 17 00:00:00 2001 From: Kaspars Dambis Date: Wed, 18 Sep 2024 11:59:54 +0300 Subject: [PATCH 102/130] Split into dedicated helpers to allow re-use for uninstall and setup --- class-two-factor-core.php | 97 ++++++++++++++++++++++++++++++--------- 1 file changed, 75 insertions(+), 22 deletions(-) diff --git a/class-two-factor-core.php b/class-two-factor-core.php index c429366f..d9de5261 100644 --- a/class-two-factor-core.php +++ b/class-two-factor-core.php @@ -145,16 +145,84 @@ public static function get_providers_registered() { 'Two_Factor_Dummy' => TWO_FACTOR_DIR . 'providers/class-two-factor-dummy.php', ); - // Get providers registered by other plugins. + /** + * Filter the supplied providers. + * + * @param array $providers A key-value array where the key is the class name, and + * the value is the path to the file containing the class. + */ $additional_providers = apply_filters( 'two_factor_providers', array() ); - if ( ! empty( $additional_providers ) ) + if ( ! empty( $additional_providers ) ) { return array_merge( $providers, $additional_providers ); } return $providers; } + /** + * Get the user meta keys to delete when uninstalling from each provider. + * + * This attempts to get keys also from methods that are not enabled to + * ensure that all meta keys ever used are removed. + * + * @return array List of user meta keys to delete. + */ + private static function get_providers_uninstall_user_meta_keys() { + $user_meta_keys = array(); + + foreach ( self::get_providers_classes() as $provider_class ) { + if ( method_exists( $provider_class, 'uninstall_user_meta_keys' ) ) { + try { + $user_meta_keys = array_merge( + $user_meta_keys, + call_user_func( array( $provider_class, 'uninstall_user_meta_keys' ) ) + ); + } catch ( Exception $e ) { + // Do nothing. + } + } + } + + return $user_meta_keys; + } + + /** + * Get the classnames for all registered providers. + * + * Note some of these providers might not be enabled. + * + * @return array List of provider keys and classnames. + */ + private static function get_providers_classes() { + $providers = self::get_providers_registered(); + + foreach ( $providers as $provider_key => $path ) { + require_once $path; + + $class = $provider_key; + + /** + * Filters the classname for a provider. The dynamic portion of the filter is the defined providers key. + * + * @param string $class The PHP Classname of the provider. + * @param string $path The provided provider path to be included. + */ + $class = apply_filters( "two_factor_provider_classname_{$provider_key}", $class, $path ); + + /** + * Confirm that it's been successfully included before instantiating. + */ + if ( method_exists( $class, 'get_instance' ) ) { + $providers[ $provider_key ] = $class; + } else { + unset( $providers[ $provider_key ] ); + } + } + + return $providers; + } + /** * For each provider, include it and then instantiate it. * @@ -188,28 +256,13 @@ public static function get_providers() { ); } - /** - * For each filtered provider, - */ - foreach ( $providers as $provider_key => $path ) { - require_once $path; - - $class = $provider_key; - - /** - * Filters the classname for a provider. The dynamic portion of the filter is the defined providers key. - * - * @param string $class The PHP Classname of the provider. - * @param string $path The provided provider path to be included. - */ - $class = apply_filters( "two_factor_provider_classname_{$provider_key}", $class, $path ); + // Get the classes for the enabled providers. + $providers = array_intersect_key( self::get_providers_classes(), $providers ); - /** - * Confirm that it's been successfully included before instantiating. - */ - if ( class_exists( $class ) ) { + foreach ( $providers as $provider_key => $provider_class ) { + if ( method_exists( $provider_class, 'get_instance' ) ) { try { - $providers[ $provider_key ] = call_user_func( array( $class, 'get_instance' ) ); + $providers[ $provider_key ] = call_user_func( array( $provider_class, 'get_instance' ) ); } catch ( Exception $e ) { unset( $providers[ $provider_key ] ); } From 369ead9f63bf8d665c2fc3262143f2a9003e4718 Mon Sep 17 00:00:00 2001 From: Kaspars Dambis Date: Wed, 18 Sep 2024 12:00:54 +0300 Subject: [PATCH 103/130] Add the actual uninstall hook --- class-two-factor-core.php | 37 +++++++++++++++++++++++++++++++++++++ two-factor.php | 3 +++ 2 files changed, 40 insertions(+) diff --git a/class-two-factor-core.php b/class-two-factor-core.php index d9de5261..5a7a4b20 100644 --- a/class-two-factor-core.php +++ b/class-two-factor-core.php @@ -131,6 +131,43 @@ public static function add_hooks( $compat ) { $compat->init(); } + /** + * Delete all plugin data on uninstall. + * + * @return void + */ + public static function uninstall() { + // Keep this updated as user meta keys are added or removed. + $user_meta_keys = array( + self::PROVIDER_USER_META_KEY, + self::ENABLED_PROVIDERS_USER_META_KEY, + self::USER_META_NONCE_KEY, + self::USER_RATE_LIMIT_KEY, + self::USER_FAILED_LOGIN_ATTEMPTS_KEY, + self::USER_PASSWORD_WAS_RESET_KEY, + ); + + // Merge with any provider-specific user meta keys. + $user_meta_keys = array_merge( + $user_meta_keys, + self::get_providers_uninstall_user_meta_keys() + ); + + $user_ids = get_users( + array( + 'blog_id' => 0, // Return all users. + 'fields' => 'ID', + 'number' => -1, // This might take a while on larger sites but we have only one uninstall hook to run this. + ) + ); + + foreach ( $user_ids as $user_id ) { + foreach ( $user_meta_keys as $meta_key ) { + delete_user_meta( $user_id, $meta_key ); + } + } + } + /** * Get the registered providers of which some might not be enabled. * diff --git a/two-factor.php b/two-factor.php index 380ad4c2..20996b54 100644 --- a/two-factor.php +++ b/two-factor.php @@ -50,3 +50,6 @@ $two_factor_compat = new Two_Factor_Compat(); Two_Factor_Core::add_hooks( $two_factor_compat ); + +// Delete our options and user meta during uninstall. +register_uninstall_hook( __FILE__, array( Two_Factor_Core::class, 'uninstall' ) ); From 638f6d1898e9dcb0bae25dda7bfcfbe8491ee777 Mon Sep 17 00:00:00 2001 From: Kaspars Dambis Date: Wed, 18 Sep 2024 12:03:15 +0300 Subject: [PATCH 104/130] =?UTF-8?q?Move=20inline=20because=20it=20isn?= =?UTF-8?q?=E2=80=99t=20really=20used=20anywhere=20else?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- class-two-factor-core.php | 43 +++++++++++---------------------------- 1 file changed, 12 insertions(+), 31 deletions(-) diff --git a/class-two-factor-core.php b/class-two-factor-core.php index 5a7a4b20..caa18eff 100644 --- a/class-two-factor-core.php +++ b/class-two-factor-core.php @@ -148,10 +148,18 @@ public static function uninstall() { ); // Merge with any provider-specific user meta keys. - $user_meta_keys = array_merge( - $user_meta_keys, - self::get_providers_uninstall_user_meta_keys() - ); + foreach ( self::get_providers_classes() as $provider_class ) { + if ( method_exists( $provider_class, 'uninstall_user_meta_keys' ) ) { + try { + $user_meta_keys = array_merge( + $user_meta_keys, + call_user_func( array( $provider_class, 'uninstall_user_meta_keys' ) ) + ); + } catch ( Exception $e ) { + // Do nothing. + } + } + } $user_ids = get_users( array( @@ -197,33 +205,6 @@ public static function get_providers_registered() { return $providers; } - /** - * Get the user meta keys to delete when uninstalling from each provider. - * - * This attempts to get keys also from methods that are not enabled to - * ensure that all meta keys ever used are removed. - * - * @return array List of user meta keys to delete. - */ - private static function get_providers_uninstall_user_meta_keys() { - $user_meta_keys = array(); - - foreach ( self::get_providers_classes() as $provider_class ) { - if ( method_exists( $provider_class, 'uninstall_user_meta_keys' ) ) { - try { - $user_meta_keys = array_merge( - $user_meta_keys, - call_user_func( array( $provider_class, 'uninstall_user_meta_keys' ) ) - ); - } catch ( Exception $e ) { - // Do nothing. - } - } - } - - return $user_meta_keys; - } - /** * Get the classnames for all registered providers. * From f5f75d2965953fac15192a9aabe3883edb1e5ada Mon Sep 17 00:00:00 2001 From: Kaspars Dambis Date: Wed, 18 Sep 2024 12:06:25 +0300 Subject: [PATCH 105/130] Account for classes being replaced for core providers --- class-two-factor-core.php | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/class-two-factor-core.php b/class-two-factor-core.php index caa18eff..34615267 100644 --- a/class-two-factor-core.php +++ b/class-two-factor-core.php @@ -196,8 +196,9 @@ public static function get_providers_registered() { * @param array $providers A key-value array where the key is the class name, and * the value is the path to the file containing the class. */ - $additional_providers = apply_filters( 'two_factor_providers', array() ); + $additional_providers = apply_filters( 'two_factor_providers', $providers ); + // Merge them with the default providers. if ( ! empty( $additional_providers ) ) { return array_merge( $providers, $additional_providers ); } @@ -242,7 +243,7 @@ private static function get_providers_classes() { } /** - * For each provider, include it and then instantiate it. + * Get all enabled two-factor providers. * * @since 0.1-dev * From 6f50ece0c6ee39f9636dad6b02bbdcd3e411e5f1 Mon Sep 17 00:00:00 2001 From: Kaspars Dambis Date: Wed, 18 Sep 2024 12:06:43 +0300 Subject: [PATCH 106/130] Describe the mapping logic --- class-two-factor-core.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/class-two-factor-core.php b/class-two-factor-core.php index 34615267..c96a689f 100644 --- a/class-two-factor-core.php +++ b/class-two-factor-core.php @@ -275,7 +275,7 @@ public static function get_providers() { ); } - // Get the classes for the enabled providers. + // Map provider keys to classes so that we can instantiate them. $providers = array_intersect_key( self::get_providers_classes(), $providers ); foreach ( $providers as $provider_key => $provider_class ) { From 5d3b5299212cde6203bbf96178d5b5b0e860e8d0 Mon Sep 17 00:00:00 2001 From: Kaspars Dambis Date: Wed, 18 Sep 2024 12:12:31 +0300 Subject: [PATCH 107/130] Account for options too --- class-two-factor-core.php | 28 +++++++++++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/class-two-factor-core.php b/class-two-factor-core.php index c96a689f..575ed43b 100644 --- a/class-two-factor-core.php +++ b/class-two-factor-core.php @@ -147,8 +147,10 @@ public static function uninstall() { self::USER_PASSWORD_WAS_RESET_KEY, ); - // Merge with any provider-specific user meta keys. + $option_keys = array(); + foreach ( self::get_providers_classes() as $provider_class ) { + // Merge with provider-specific user meta keys. if ( method_exists( $provider_class, 'uninstall_user_meta_keys' ) ) { try { $user_meta_keys = array_merge( @@ -159,8 +161,32 @@ public static function uninstall() { // Do nothing. } } + + // Merge with provider-specific option keys. + if ( method_exists( $provider_class, 'uninstall_options' ) ) { + try { + $option_keys = array_merge( + $option_keys, + call_user_func( array( $provider_class, 'uninstall_options' ) ) + ); + } catch ( Exception $e ) { + // Do nothing. + } + } + } + + // Delete options first since that is faster. + if ( ! empty( $option_keys ) ) { + foreach ( $option_keys as $option_key ) { + delete_option( $option_key ); + } } + /** + * Get all user IDs to delete their user meta. + * + * Consider replacing this with a direct SQL query to speed up the process. + */ $user_ids = get_users( array( 'blog_id' => 0, // Return all users. From 9297b60a8785eee0651413da8a2c9508bca71d66 Mon Sep 17 00:00:00 2001 From: Kaspars Dambis Date: Wed, 18 Sep 2024 12:51:12 +0300 Subject: [PATCH 108/130] Report the meta keys to delete --- providers/class-two-factor-backup-codes.php | 11 +++++++++++ providers/class-two-factor-email.php | 12 ++++++++++++ providers/class-two-factor-fido-u2f.php | 12 ++++++++++++ 3 files changed, 35 insertions(+) diff --git a/providers/class-two-factor-backup-codes.php b/providers/class-two-factor-backup-codes.php index c53a8448..4044b265 100644 --- a/providers/class-two-factor-backup-codes.php +++ b/providers/class-two-factor-backup-codes.php @@ -399,4 +399,15 @@ public function delete_code( $user, $code_hashed ) { // Update the backup code master list. update_user_meta( $user->ID, self::BACKUP_CODES_META_KEY, $backup_codes ); } + + /** + * Return user meta keys to delete during plugin uninstall. + * + * @return array + */ + public static function uninstall_user_meta_keys() { + return array( + self::BACKUP_CODES_META_KEY, + ); + } } diff --git a/providers/class-two-factor-email.php b/providers/class-two-factor-email.php index ac3955ce..64ccb1dd 100644 --- a/providers/class-two-factor-email.php +++ b/providers/class-two-factor-email.php @@ -351,4 +351,16 @@ public function user_options( $user ) { Date: Wed, 18 Sep 2024 12:56:40 +0300 Subject: [PATCH 109/130] Add the missing keys --- providers/class-two-factor-fido-u2f.php | 1 + providers/class-two-factor-totp.php | 12 ++++++++++++ 2 files changed, 13 insertions(+) diff --git a/providers/class-two-factor-fido-u2f.php b/providers/class-two-factor-fido-u2f.php index d631ee64..d5ea9a8b 100644 --- a/providers/class-two-factor-fido-u2f.php +++ b/providers/class-two-factor-fido-u2f.php @@ -398,6 +398,7 @@ public static function uninstall_user_meta_keys() { return array( self::REGISTERED_KEY_USER_META_KEY, self::AUTH_DATA_USER_META_KEY, + Two_Factor_FIDO_U2F_Admin::REGISTER_DATA_USER_META_KEY, ); } } diff --git a/providers/class-two-factor-totp.php b/providers/class-two-factor-totp.php index 88f743db..7bbcf856 100644 --- a/providers/class-two-factor-totp.php +++ b/providers/class-two-factor-totp.php @@ -771,4 +771,16 @@ private static function abssort( $a, $b ) { } return ( $a < $b ) ? -1 : 1; } + + /** + * Return user meta keys to delete during plugin uninstall. + * + * @return array + */ + public static function uninstall_user_meta_keys() { + return array( + self::SECRET_META_KEY, + self::LAST_SUCCESSFUL_LOGIN_META_KEY, + ); + } } From f4d463dcfcad1f3d27133d515ccc8f4800ef2cd2 Mon Sep 17 00:00:00 2001 From: Kaspars Dambis Date: Wed, 18 Sep 2024 13:04:49 +0300 Subject: [PATCH 110/130] Pull in key name copies when no access otherwise --- providers/class-two-factor-fido-u2f.php | 2 +- providers/class-two-factor-provider.php | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/providers/class-two-factor-fido-u2f.php b/providers/class-two-factor-fido-u2f.php index d5ea9a8b..f24e55e2 100644 --- a/providers/class-two-factor-fido-u2f.php +++ b/providers/class-two-factor-fido-u2f.php @@ -398,7 +398,7 @@ public static function uninstall_user_meta_keys() { return array( self::REGISTERED_KEY_USER_META_KEY, self::AUTH_DATA_USER_META_KEY, - Two_Factor_FIDO_U2F_Admin::REGISTER_DATA_USER_META_KEY, + '_two_factor_fido_u2f_register_request', // From Two_Factor_FIDO_U2F_Admin which is not loaded during uninstall. ); } } diff --git a/providers/class-two-factor-provider.php b/providers/class-two-factor-provider.php index 68610c69..0e82dd67 100644 --- a/providers/class-two-factor-provider.php +++ b/providers/class-two-factor-provider.php @@ -178,6 +178,8 @@ public static function uninstall_user_meta_keys() { /** * Return the option keys that need to be deleted on plugin uninstall. * + * Note: this method doesn't have access to the instantiated provider object. + * * @return array */ public static function uninstall_options() { From 72ee3e0f9941debef15d2854187dacda52e1ce3d Mon Sep 17 00:00:00 2001 From: Kaspars Dambis Date: Wed, 18 Sep 2024 13:57:40 +0300 Subject: [PATCH 111/130] Test the uninstall --- tests/class-two-factor-core.php | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/tests/class-two-factor-core.php b/tests/class-two-factor-core.php index 29c1336b..5f6a15a2 100644 --- a/tests/class-two-factor-core.php +++ b/tests/class-two-factor-core.php @@ -1555,4 +1555,30 @@ public function test_all_sessions_destroyed_when_enabling_2fa_by_admin() { // Validate that the Admin still has a session. $this->assertCount( 1, $admin_session_manager->get_all(), 'No admin sessions are present first' ); } + + /** + * Plugin uninstall removes all user meta. + * + * @covers Two_Factor_Core::uninstall + */ + public function test_uninstall_removes_user_meta() { + $user = self::factory()->user->create_and_get(); + + // Enable a provider for the user. + Two_Factor_Core::enable_provider_for_user( $user->ID, 'Two_Factor_Totp' ); + + $this->assertContains( + 'Two_Factor_Totp', + Two_Factor_Core::get_enabled_providers_for_user( $user->ID ), + 'Sample provider was enabled' + ); + + Two_Factor_Core::uninstall(); + + $this->assertNotContains( + 'Two_Factor_Totp', + Two_Factor_Core::get_enabled_providers_for_user( $user->ID ), + 'Provider was disabled due to uninstall' + ); + } } From 86bc0072b152858de46d28e43cf0138e3af4541b Mon Sep 17 00:00:00 2001 From: Kaspars Dambis Date: Wed, 18 Sep 2024 14:06:10 +0300 Subject: [PATCH 112/130] Switch to a core helper --- class-two-factor-core.php | 19 ++----------------- 1 file changed, 2 insertions(+), 17 deletions(-) diff --git a/class-two-factor-core.php b/class-two-factor-core.php index 575ed43b..fa87135e 100644 --- a/class-two-factor-core.php +++ b/class-two-factor-core.php @@ -182,23 +182,8 @@ public static function uninstall() { } } - /** - * Get all user IDs to delete their user meta. - * - * Consider replacing this with a direct SQL query to speed up the process. - */ - $user_ids = get_users( - array( - 'blog_id' => 0, // Return all users. - 'fields' => 'ID', - 'number' => -1, // This might take a while on larger sites but we have only one uninstall hook to run this. - ) - ); - - foreach ( $user_ids as $user_id ) { - foreach ( $user_meta_keys as $meta_key ) { - delete_user_meta( $user_id, $meta_key ); - } + foreach ( $user_meta_keys as $meta_key ) { + delete_metadata( 'user', null, $meta_key, null, true ); } } From 572c288b9c703f882ce00ba76aa970cd3990427c Mon Sep 17 00:00:00 2001 From: Kaspars Dambis Date: Wed, 18 Sep 2024 15:52:10 +0300 Subject: [PATCH 113/130] Add phpstan --- .distignore | 3 +- .gitignore | 1 + composer.json | 2 + composer.lock | 171 +++++++++++++++++++++++++++++++++++++++++++++- package.json | 1 + phpstan.dist.neon | 10 +++ 6 files changed, 186 insertions(+), 2 deletions(-) create mode 100644 phpstan.dist.neon diff --git a/.distignore b/.distignore index ffb1e0e4..cd7978e7 100644 --- a/.distignore +++ b/.distignore @@ -14,5 +14,6 @@ /package-lock.json /phpcs* /phpunit* +/phpstan.* /readme.md -/SECURITY.md \ No newline at end of file +/SECURITY.md diff --git a/.gitignore b/.gitignore index 6430f0ee..d36ae742 100644 --- a/.gitignore +++ b/.gitignore @@ -5,3 +5,4 @@ /dist/ /tests/logs/ .phpunit.result.cache +phpstan.neon diff --git a/composer.json b/composer.json index fe2389c7..71befcf1 100644 --- a/composer.json +++ b/composer.json @@ -31,12 +31,14 @@ "phpcompatibility/phpcompatibility-wp": "^2.1", "phpunit/phpunit": "^8.5|^9.6", "spatie/phpunit-watcher": "^1.23", + "szepeviktor/phpstan-wordpress": "^1.3", "wp-coding-standards/wpcs": "^3.1", "yoast/phpunit-polyfills": "^2.0" }, "scripts": { "lint": "phpcs", "lint-compat": "phpcs -p --standard=PHPCompatibilityWP --runtime-set testVersion 7.2- --extensions=php --ignore='tests/,dist/,includes/Yubico/,vendor/,node_modules/' .", + "lint-phpstan": "phpstan analyse --memory-limit=1G", "test": "vendor/bin/phpunit", "test:watch": [ "Composer\\Config::disableProcessTimeout", diff --git a/composer.lock b/composer.lock index a4046e68..f1ecd991 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "a1a44a4d12c7db29c2010274f4d2f36f", + "content-hash": "13824921a7208b7752f2a13ecde2ab08", "packages": [], "packages-dev": [ { @@ -1121,6 +1121,54 @@ }, "time": "2023-11-22T10:21:01+00:00" }, + { + "name": "php-stubs/wordpress-stubs", + "version": "v6.6.0", + "source": { + "type": "git", + "url": "https://github.com/php-stubs/wordpress-stubs.git", + "reference": "86e8753e89d59849276dcdd91b9a7dd78bb4abe2" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-stubs/wordpress-stubs/zipball/86e8753e89d59849276dcdd91b9a7dd78bb4abe2", + "reference": "86e8753e89d59849276dcdd91b9a7dd78bb4abe2", + "shasum": "" + }, + "require-dev": { + "dealerdirect/phpcodesniffer-composer-installer": "^1.0", + "nikic/php-parser": "^4.13", + "php": "^7.4 || ^8.0", + "php-stubs/generator": "^0.8.3", + "phpdocumentor/reflection-docblock": "^5.4.1", + "phpstan/phpstan": "^1.10.49", + "phpunit/phpunit": "^9.5", + "szepeviktor/phpcs-psr-12-neutron-hybrid-ruleset": "^1.0", + "wp-coding-standards/wpcs": "3.1.0 as 2.3.0" + }, + "suggest": { + "paragonie/sodium_compat": "Pure PHP implementation of libsodium", + "symfony/polyfill-php80": "Symfony polyfill backporting some PHP 8.0+ features to lower PHP versions", + "szepeviktor/phpstan-wordpress": "WordPress extensions for PHPStan" + }, + "type": "library", + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "WordPress function and class declaration stubs for static analysis.", + "homepage": "https://github.com/php-stubs/wordpress-stubs", + "keywords": [ + "PHPStan", + "static analysis", + "wordpress" + ], + "support": { + "issues": "https://github.com/php-stubs/wordpress-stubs/issues", + "source": "https://github.com/php-stubs/wordpress-stubs/tree/v6.6.0" + }, + "time": "2024-07-17T08:50:38+00:00" + }, { "name": "phpcompatibility/php-compatibility", "version": "dev-develop", @@ -1519,6 +1567,64 @@ ], "time": "2024-05-20T13:34:27+00:00" }, + { + "name": "phpstan/phpstan", + "version": "1.12.3", + "source": { + "type": "git", + "url": "https://github.com/phpstan/phpstan.git", + "reference": "0fcbf194ab63d8159bb70d9aa3e1350051632009" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phpstan/phpstan/zipball/0fcbf194ab63d8159bb70d9aa3e1350051632009", + "reference": "0fcbf194ab63d8159bb70d9aa3e1350051632009", + "shasum": "" + }, + "require": { + "php": "^7.2|^8.0" + }, + "conflict": { + "phpstan/phpstan-shim": "*" + }, + "bin": [ + "phpstan", + "phpstan.phar" + ], + "type": "library", + "autoload": { + "files": [ + "bootstrap.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "PHPStan - PHP Static Analysis Tool", + "keywords": [ + "dev", + "static analysis" + ], + "support": { + "docs": "https://phpstan.org/user-guide/getting-started", + "forum": "https://github.com/phpstan/phpstan/discussions", + "issues": "https://github.com/phpstan/phpstan/issues", + "security": "https://github.com/phpstan/phpstan/security/policy", + "source": "https://github.com/phpstan/phpstan-src" + }, + "funding": [ + { + "url": "https://github.com/ondrejmirtes", + "type": "github" + }, + { + "url": "https://github.com/phpstan", + "type": "github" + } + ], + "time": "2024-09-09T08:10:35+00:00" + }, { "name": "phpunit/php-code-coverage", "version": "7.0.17", @@ -4589,6 +4695,69 @@ ], "time": "2024-05-31T14:33:22+00:00" }, + { + "name": "szepeviktor/phpstan-wordpress", + "version": "v1.3.5", + "source": { + "type": "git", + "url": "https://github.com/szepeviktor/phpstan-wordpress.git", + "reference": "7f8cfe992faa96b6a33bbd75c7bace98864161e7" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/szepeviktor/phpstan-wordpress/zipball/7f8cfe992faa96b6a33bbd75c7bace98864161e7", + "reference": "7f8cfe992faa96b6a33bbd75c7bace98864161e7", + "shasum": "" + }, + "require": { + "php": "^7.2 || ^8.0", + "php-stubs/wordpress-stubs": "^4.7 || ^5.0 || ^6.0", + "phpstan/phpstan": "^1.10.31", + "symfony/polyfill-php73": "^1.12.0" + }, + "require-dev": { + "composer/composer": "^2.1.14", + "dealerdirect/phpcodesniffer-composer-installer": "^1.0", + "php-parallel-lint/php-parallel-lint": "^1.1", + "phpstan/phpstan-strict-rules": "^1.2", + "phpunit/phpunit": "^8.0 || ^9.0", + "szepeviktor/phpcs-psr-12-neutron-hybrid-ruleset": "^1.0", + "wp-coding-standards/wpcs": "3.1.0 as 2.3.0" + }, + "suggest": { + "swissspidy/phpstan-no-private": "Detect usage of internal core functions, classes and methods" + }, + "type": "phpstan-extension", + "extra": { + "phpstan": { + "includes": [ + "extension.neon" + ] + } + }, + "autoload": { + "psr-4": { + "SzepeViktor\\PHPStan\\WordPress\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "WordPress extensions for PHPStan", + "keywords": [ + "PHPStan", + "code analyse", + "code analysis", + "static analysis", + "wordpress" + ], + "support": { + "issues": "https://github.com/szepeviktor/phpstan-wordpress/issues", + "source": "https://github.com/szepeviktor/phpstan-wordpress/tree/v1.3.5" + }, + "time": "2024-06-28T22:27:19+00:00" + }, { "name": "theseer/tokenizer", "version": "1.2.3", diff --git a/package.json b/package.json index 7ee5b30a..894e834d 100644 --- a/package.json +++ b/package.json @@ -12,6 +12,7 @@ "build": "grunt build", "lint": "npm-run-all lint:*", "lint:php": "composer lint", + "lint:phpstan": "composer lint-phpstan", "lint:css": "wp-scripts lint-style ./user-edit.css ./providers/css/", "lint:js": "wp-scripts lint-js ./Gruntfile.js ./providers/js/", "format": "npm-run-all format:*", diff --git a/phpstan.dist.neon b/phpstan.dist.neon new file mode 100644 index 00000000..fc02e7c0 --- /dev/null +++ b/phpstan.dist.neon @@ -0,0 +1,10 @@ +includes: + - vendor/szepeviktor/phpstan-wordpress/extension.neon +parameters: + level: 0 + paths: + - includes + - providers + - class-two-factor-compat.php + - class-two-factor-core.php + - two-factor.php From ea846beb92b6c2080d3a48f61158d2ba3464f6ca Mon Sep 17 00:00:00 2001 From: Kaspars Dambis Date: Wed, 18 Sep 2024 15:52:22 +0300 Subject: [PATCH 114/130] Ensure the class exists for phpstan --- class-two-factor-compat.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/class-two-factor-compat.php b/class-two-factor-compat.php index 731a2dff..d7b4f46a 100644 --- a/class-two-factor-compat.php +++ b/class-two-factor-compat.php @@ -50,6 +50,6 @@ public function jetpack_rememberme( $rememberme ) { * @return boolean */ public function jetpack_is_sso_active() { - return ( method_exists( 'Jetpack', 'is_module_active' ) && Jetpack::is_module_active( 'sso' ) ); + return ( class_exists( 'Jetpack' ) && method_exists( 'Jetpack', 'is_module_active' ) && Jetpack::is_module_active( 'sso' ) ); } } From 3b1c6868878f8723432236017277c32497e5d2f5 Mon Sep 17 00:00:00 2001 From: Kaspars Dambis Date: Wed, 18 Sep 2024 17:42:42 +0300 Subject: [PATCH 115/130] Add a warning for now --- class-two-factor-core.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/class-two-factor-core.php b/class-two-factor-core.php index 51c3cee3..90b6ebaf 100644 --- a/class-two-factor-core.php +++ b/class-two-factor-core.php @@ -93,7 +93,7 @@ class Two_Factor_Core { * @since 0.1-dev */ public static function add_hooks( $compat ) { - add_action( 'init', array( __CLASS__, 'get_providers' ) ); + add_action( 'init', array( __CLASS__, 'get_providers' ) ); // @phpstan-ignore return.void add_action( 'wp_login', array( __CLASS__, 'wp_login' ), 10, 2 ); add_filter( 'wp_login_errors', array( __CLASS__, 'maybe_show_reset_password_notice' ) ); add_action( 'after_password_reset', array( __CLASS__, 'clear_password_reset_notice' ) ); From d59daca076d1555c330af7142cd8068f3cf8ba4b Mon Sep 17 00:00:00 2001 From: Kaspars Dambis Date: Wed, 18 Sep 2024 18:04:41 +0300 Subject: [PATCH 116/130] This test no longer makes sense --- tests/providers/class-two-factor-totp.php | 9 --------- 1 file changed, 9 deletions(-) diff --git a/tests/providers/class-two-factor-totp.php b/tests/providers/class-two-factor-totp.php index 8c961f12..52aa6090 100644 --- a/tests/providers/class-two-factor-totp.php +++ b/tests/providers/class-two-factor-totp.php @@ -61,15 +61,6 @@ public function test_get_label() { $this->assertStringContainsString( 'Authenticator app', $this->provider->get_label() ); } - /** - * Verify the options list is empty. - * - * @covers Two_Factor_Totp::user_two_factor_options - */ - public function test_user_two_factor_options_empty() { - $this->assertFalse( $this->provider->user_two_factor_options( get_current_user() ) ); - } - /** * Verify getting user options creates a key. * From 04ef5e7c62aac862080a442af45a2c6c8fb8c2da Mon Sep 17 00:00:00 2001 From: Kaspars Dambis Date: Wed, 18 Sep 2024 18:20:06 +0300 Subject: [PATCH 117/130] Use the verbose flag to include the error identifier for exclude --- composer.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/composer.json b/composer.json index 71befcf1..2fe8e169 100644 --- a/composer.json +++ b/composer.json @@ -38,7 +38,7 @@ "scripts": { "lint": "phpcs", "lint-compat": "phpcs -p --standard=PHPCompatibilityWP --runtime-set testVersion 7.2- --extensions=php --ignore='tests/,dist/,includes/Yubico/,vendor/,node_modules/' .", - "lint-phpstan": "phpstan analyse --memory-limit=1G", + "lint-phpstan": "phpstan analyse --verbose --memory-limit=1G", "test": "vendor/bin/phpunit", "test:watch": [ "Composer\\Config::disableProcessTimeout", From 7b772774b392146ec1e38e5f2f6b929e16046170 Mon Sep 17 00:00:00 2001 From: Kaspars Dambis Date: Wed, 18 Sep 2024 18:25:36 +0300 Subject: [PATCH 118/130] Version bump --- readme.txt | 2 +- two-factor.php | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/readme.txt b/readme.txt index f4baaffa..30a55e73 100644 --- a/readme.txt +++ b/readme.txt @@ -2,7 +2,7 @@ Contributors: georgestephanis, valendesigns, stevenkword, extendwings, sgrant, aaroncampbell, johnbillion, stevegrunwell, netweb, kasparsd, alihusnainarshad, passoniate Tags: 2fa, mfa, totp, authentication, security Tested up to: 6.6 -Stable tag: 0.9.1 +Stable tag: 0.9.2 License: GPL-2.0-or-later License URI: https://spdx.org/licenses/GPL-2.0-or-later.html diff --git a/two-factor.php b/two-factor.php index 380ad4c2..20d76a20 100644 --- a/two-factor.php +++ b/two-factor.php @@ -11,7 +11,7 @@ * Plugin Name: Two Factor * Plugin URI: https://wordpress.org/plugins/two-factor/ * Description: Enable Two-Factor Authentication using time-based one-time passwords, Universal 2nd Factor (FIDO U2F, YubiKey), email, and backup verification codes. - * Version: 0.9.1 + * Version: 0.9.2 * Requires at least: 6.3 * Requires PHP: 7.2 * Author: Plugin Contributors @@ -30,7 +30,7 @@ /** * Version of the plugin. */ -define( 'TWO_FACTOR_VERSION', '0.9.1' ); +define( 'TWO_FACTOR_VERSION', '0.9.2' ); /** * Include the base class here, so that other plugins can also extend it. From 47425c504e4a9f04a1be12d8ece1453beae27223 Mon Sep 17 00:00:00 2001 From: Kaspars Dambis Date: Wed, 18 Sep 2024 18:36:10 +0300 Subject: [PATCH 119/130] Add the PHPstan checks to CI --- .github/workflows/test.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index c20d222e..c940d0db 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -59,6 +59,9 @@ jobs: - name: Lint PHP Compatibility run: composer lint-compat + - name: PHPStan + run: npm run lint:phpstan + test-php: name: Test PHP ${{ matrix.php }} ${{ matrix.wp != '' && format( ' (WP {0}) ', matrix.wp ) || '' }} runs-on: ubuntu-latest From 534a14df04f901b1c515b3e14375f44faaa3479d Mon Sep 17 00:00:00 2001 From: Kaspars Dambis Date: Thu, 19 Sep 2024 11:22:18 +0300 Subject: [PATCH 120/130] =?UTF-8?q?Bump=20to=200.10.0=20since=20we?= =?UTF-8?q?=E2=80=99re=20changing=20the=20profile=20markup=20in=20a=20pote?= =?UTF-8?q?ntially=20breaking=20way=20for=20integrations?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- two-factor.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/two-factor.php b/two-factor.php index 537e61ee..38248d70 100644 --- a/two-factor.php +++ b/two-factor.php @@ -11,7 +11,7 @@ * Plugin Name: Two Factor * Plugin URI: https://wordpress.org/plugins/two-factor/ * Description: Enable Two-Factor Authentication using time-based one-time passwords, Universal 2nd Factor (FIDO U2F, YubiKey), email, and backup verification codes. - * Version: 0.9.2 + * Version: 0.10.0 * Requires at least: 6.3 * Requires PHP: 7.2 * Author: WordPress.org Contributors @@ -30,7 +30,7 @@ /** * Version of the plugin. */ -define( 'TWO_FACTOR_VERSION', '0.9.2' ); +define( 'TWO_FACTOR_VERSION', '0.10.0' ); /** * Include the base class here, so that other plugins can also extend it. From 240bcce33468684236968c20acc53166e7298afe Mon Sep 17 00:00:00 2001 From: Kaspars Dambis Date: Thu, 19 Sep 2024 12:40:12 +0300 Subject: [PATCH 121/130] Add notices --- class-two-factor-core.php | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/class-two-factor-core.php b/class-two-factor-core.php index 99033a70..eebce9c4 100644 --- a/class-two-factor-core.php +++ b/class-two-factor-core.php @@ -1821,9 +1821,21 @@ public static function user_two_factor_options( $user ) { $show_2fa_options ? '' : 'disabled="disabled"' ); - wp_nonce_field( 'user_two_factor_options', '_nonce_user_two_factor_options', false ); + $notices = []; + if ( empty( $enabled_providers ) ) { + $notices[] = __( 'Configure a primary two-factor method along with a backup method, such as Recovery Codes, to avoid being locked out if you lose access to your primary method.', 'two-factor' ); + } elseif ( 1 === count( $enabled_providers ) ) { + $notices['warning'] = __( 'To prevent being locked out of your account, consider enabling a backup method like Recovery Codes in case you lose access to your primary authentication method.', 'two-factor' ); + } + ?>

+ $notice ) : ?> +
+

+
+ +

From 1225521ae22c19e363b9082b57d1a488e037b56c Mon Sep 17 00:00:00 2001 From: Kaspars Dambis Date: Thu, 19 Sep 2024 13:29:01 +0300 Subject: [PATCH 122/130] Add the default notice as a permanent information Collect all warnings into same place --- class-two-factor-core.php | 31 ++++++++++++++++--------------- 1 file changed, 16 insertions(+), 15 deletions(-) diff --git a/class-two-factor-core.php b/class-two-factor-core.php index eebce9c4..78525089 100644 --- a/class-two-factor-core.php +++ b/class-two-factor-core.php @@ -1788,6 +1788,8 @@ public static function manage_users_custom_column( $output, $column_name, $user_ * @param WP_User $user WP_User object of the logged-in user. */ public static function user_two_factor_options( $user ) { + $notices = []; + wp_enqueue_style( 'user-edit-2fa', plugins_url( 'user-edit.css', __FILE__ ), array(), TWO_FACTOR_VERSION ); $enabled_providers = array_keys( self::get_available_providers_for_user( $user ) ); @@ -1803,16 +1805,16 @@ public static function user_two_factor_options( $user ) { $show_2fa_options = self::current_user_can_update_two_factor_options(); if ( ! $show_2fa_options ) { - $url = self::get_user_two_factor_revalidate_url(); - $url = add_query_arg( 'redirect_to', urlencode( self::get_user_settings_page_url( $user->ID ) . '#two-factor-options' ), $url ); + $url = add_query_arg( + 'redirect_to', + urlencode( self::get_user_settings_page_url( $user->ID ) . '#two-factor-options' ), + self::get_user_two_factor_revalidate_url() + ); - printf( - '

%s

', - sprintf( - __( 'To update your Two-Factor options, you must first revalidate your session.', 'two-factor' ) . - '
' . __( 'Revalidate now', 'two-factor' ) . '', + $notices['warning two-factor-warning-revalidate-session'] = sprintf( + esc_html__( 'To update your Two-Factor options, you must first revalidate your session.', 'two-factor' ) . + ' ' . esc_html__( 'Revalidate now', 'two-factor' ) . '', esc_url( $url ) - ) ); } @@ -1821,20 +1823,19 @@ public static function user_two_factor_options( $user ) { $show_2fa_options ? '' : 'disabled="disabled"' ); - $notices = []; - if ( empty( $enabled_providers ) ) { - $notices[] = __( 'Configure a primary two-factor method along with a backup method, such as Recovery Codes, to avoid being locked out if you lose access to your primary method.', 'two-factor' ); - } elseif ( 1 === count( $enabled_providers ) ) { - $notices['warning'] = __( 'To prevent being locked out of your account, consider enabling a backup method like Recovery Codes in case you lose access to your primary authentication method.', 'two-factor' ); + if ( 1 === count( $enabled_providers ) ) { + $notices['warning two-factor-warning-suggest-backup'] = esc_html__( 'To prevent being locked out of your account, consider enabling a backup method like Recovery Codes in case you lose access to your primary authentication method.', 'two-factor' ); } - ?>

$notice ) : ?>
-

+

+

+ +

From 7ce06347c6fd218067d22b28328629eb053e7957 Mon Sep 17 00:00:00 2001 From: thrijith Date: Thu, 24 Oct 2024 20:43:47 +0530 Subject: [PATCH 123/130] Focus in code input when totp is checked --- providers/class-two-factor-totp.php | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/providers/class-two-factor-totp.php b/providers/class-two-factor-totp.php index 7bafe1a1..8579d2a4 100644 --- a/providers/class-two-factor-totp.php +++ b/providers/class-two-factor-totp.php @@ -356,6 +356,13 @@ public function user_two_factor_options( $user ) {