From c693a2afe5255437d7fda105a33d86c0d8e47088 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Thu, 1 May 2025 11:26:54 +0000 Subject: [PATCH 1/3] Version 5.15.9 --- composer.json | 6 +- package-lock.json | 4 +- package.json | 2 +- tests/TestCase.php | 2 +- .../gateway-test-plugin/includes/API.php | 2 +- .../gateway-test-plugin/includes/Gateway.php | 2 +- .../gateway-test-plugin/includes/Plugin.php | 2 +- .../plugins/test-plugin/includes/API.php | 2 +- .../plugins/test-plugin/includes/Gateway.php | 2 +- .../plugins/test-plugin/includes/Plugin.php | 2 +- .../integration/API/CacheableAPIBaseTest.php | 10 +-- tests/integration/DependenciesTest.php | 6 +- tests/integration/HelperTest.php | 4 +- tests/integration/PluginTest.php | 6 +- .../REST_API/Controllers/SettingsTest.php | 10 +-- tests/integration/REST_API/RESTAPITest.php | 8 +-- .../SV_WC_Payment_Gateway_Helper_Test.php | 4 +- .../Settings_API/AbstractSettingsTest.php | 12 ++-- .../integration/Settings_API/SettingTest.php | 4 +- .../payment-gateway/GatewayPluginTest.php | 2 +- .../payment-gateway/MyPaymentMethodsTest.php | 8 +-- .../payment-gateway/PaymentFormTest.php | 6 +- ..._WC_Payment_Gateway_Payment_Token_Test.php | 4 +- ...nt_Gateway_Payment_Tokens_Handler_Test.php | 4 +- .../apple-pay/ApplePayFrontendTest.php | 10 +-- tests/unit/API/CacheableRequestTraitTest.php | 20 +++--- tests/unit/AutoloadingTest.php | 68 +++++++++---------- tests/unit/HelperTest.php | 18 ++--- tests/unit/Helpers/ArrayHelperTest.php | 8 +-- tests/unit/Helpers/CountryHelperTest.php | 8 +-- tests/unit/Helpers/NumberHelperTest.php | 8 +-- tests/unit/Helpers/PageHelperTest.php | 8 +-- .../Google_Pay/AdminTest.php | 8 +-- .../Google_Pay/FrontendTest.php | 14 ++-- .../Google_Pay/GooglePayTest.php | 8 +-- .../PaymentFormContextCheckerTest.php | 20 +++--- tests/unit/PluginTest.php | 16 ++--- tests/unit/Settings_API/ControlTest.php | 28 ++++---- tests/unit/Settings_API/SettingTest.php | 26 +++---- .../Traits/CanConvertToArrayTraitTest.php | 16 ++--- .../Traits/CanGetNewInstanceTraitTest.php | 10 +-- tests/unit/Traits/IsSingletonTraitTest.php | 12 ++-- ...ommerce-framework-plugin-loader-sample.php | 2 +- woocommerce/Addresses/Address.php | 4 +- woocommerce/Addresses/Customer_Address.php | 4 +- woocommerce/Blocks/Block_Integration.php | 10 +-- woocommerce/Blocks/Blocks_Handler.php | 10 +-- .../Blocks/Traits/Block_Integration_Trait.php | 16 ++--- .../Traits/HasEmailPreviewValuesTrait.php | 2 +- woocommerce/Enums/PaymentFormContext.php | 4 +- woocommerce/Enums/Traits/EnumTrait.php | 2 +- woocommerce/Handlers/Country_Helper.php | 4 +- woocommerce/Handlers/Script_Handler.php | 10 +-- woocommerce/Helpers/ArrayHelper.php | 2 +- woocommerce/Helpers/NumberHelper.php | 2 +- woocommerce/Helpers/PageHelper.php | 2 +- woocommerce/Plugin/Lifecycle.php | 10 +-- .../Settings_API/Abstract_Settings.php | 6 +- woocommerce/Settings_API/Control.php | 6 +- woocommerce/Settings_API/Setting.php | 6 +- woocommerce/Traits/CanConvertToArrayTrait.php | 4 +- woocommerce/Traits/CanGetNewInstanceTrait.php | 4 +- woocommerce/Traits/IsSingletonTrait.php | 4 +- woocommerce/admin/Notes_Helper.php | 4 +- ...stract-sv-wc-plugin-admin-setup-wizard.php | 6 +- .../api/Abstract_Cacheable_API_Base.php | 8 +-- .../api/Traits/Cacheable_Request_Trait.php | 4 +- .../api/abstract-sv-wc-api-json-request.php | 4 +- .../api/abstract-sv-wc-api-json-response.php | 4 +- .../api/abstract-sv-wc-api-xml-request.php | 4 +- .../api/abstract-sv-wc-api-xml-response.php | 4 +- woocommerce/api/class-sv-wc-api-base.php | 4 +- woocommerce/api/class-sv-wc-api-exception.php | 4 +- .../api/interface-sv-wc-api-request.php | 4 +- .../api/interface-sv-wc-api-response.php | 4 +- woocommerce/changelog.txt | 2 + .../class-sv-wc-admin-notice-handler.php | 4 +- woocommerce/class-sv-wc-helper.php | 6 +- woocommerce/class-sv-wc-hook-deprecator.php | 4 +- .../class-sv-wc-plugin-compatibility.php | 4 +- .../class-sv-wc-plugin-dependencies.php | 4 +- woocommerce/class-sv-wc-plugin-exception.php | 4 +- woocommerce/class-sv-wc-plugin.php | 14 ++-- .../class-sv-wp-admin-message-handler.php | 4 +- .../abstract-sv-wc-data-compatibility.php | 4 +- .../class-sv-wc-order-compatibility.php | 4 +- ...class-sv-wc-subscription-compatibility.php | 4 +- .../woocommerce-plugin-framework.pot | 8 +-- .../Blocks/Gateway_Blocks_Handler.php | 8 +-- .../Gateway_Checkout_Block_Integration.php | 16 ++--- .../External_Checkout/Admin.php | 4 +- .../External_Checkout/External_Checkout.php | 6 +- .../External_Checkout/Frontend.php | 16 ++--- .../External_Checkout/Google_Pay/AJAX.php | 8 +-- .../External_Checkout/Google_Pay/Admin.php | 8 +-- .../External_Checkout/Google_Pay/Frontend.php | 12 ++-- .../Google_Pay/Google_Pay.php | 16 ++--- .../External_Checkout/Orders.php | 4 +- ...-payment-gateway-apple-pay-api-request.php | 4 +- ...payment-gateway-apple-pay-api-response.php | 4 +- ...ss-sv-wc-payment-gateway-apple-pay-api.php | 6 +- ...ent-gateway-apple-pay-payment-response.php | 4 +- ...-sv-wc-payment-gateway-apple-pay-admin.php | 6 +- ...s-sv-wc-payment-gateway-apple-pay-ajax.php | 4 +- ...-wc-payment-gateway-apple-pay-frontend.php | 10 +-- .../class-sv-wc-payment-gateway-apple-pay.php | 8 +-- .../Abstract_Hosted_Payment_Handler.php | 6 +- .../Handlers/Abstract_Payment_Handler.php | 6 +- .../payment-gateway/Handlers/Capture.php | 6 +- .../PaymentFormContextChecker.php | 6 +- ...ment-gateway-plugin-admin-setup-wizard.php | 6 +- ...lass-sv-wc-payment-gateway-admin-order.php | 4 +- ...ent-gateway-admin-payment-token-editor.php | 4 +- ...-wc-payment-gateway-admin-user-handler.php | 4 +- ...nt-gateway-api-response-message-helper.php | 4 +- ...ent-gateway-api-authorization-response.php | 4 +- ...eway-api-create-payment-token-response.php | 4 +- ...-payment-gateway-api-customer-response.php | 4 +- ...get-tokenized-payment-methods-response.php | 4 +- ...ment-notification-credit-card-response.php | 4 +- ...i-payment-notification-echeck-response.php | 4 +- ...eway-api-payment-notification-response.php | 4 +- ...ent-notification-tokenization-response.php | 4 +- ...face-sv-wc-payment-gateway-api-request.php | 4 +- ...ace-sv-wc-payment-gateway-api-response.php | 4 +- .../interface-sv-wc-payment-gateway-api.php | 4 +- .../sv-wc-payment-gateway-apple-pay.js | 2 +- .../sv-wc-payment-gateway-apple-pay.js.map | 2 +- .../sv-wc-payment-gateway-google-pay.js | 2 +- .../sv-wc-payment-gateway-google-pay.js.map | 2 +- ...v-wc-payment-gateway-my-payment-methods.js | 2 +- ...-payment-gateway-my-payment-methods.js.map | 2 +- .../sv-wc-payment-gateway-payment-form.js | 2 +- .../sv-wc-payment-gateway-payment-form.js.map | 2 +- .../sv-wc-payment-gateway-apple-pay.coffee | 4 +- .../sv-wc-payment-gateway-google-pay.js | 6 +- ...-payment-gateway-my-payment-methods.coffee | 4 +- .../sv-wc-payment-gateway-payment-form.coffee | 6 +- .../class-sv-wc-payment-gateway-direct.php | 6 +- .../class-sv-wc-payment-gateway-helper.php | 4 +- .../class-sv-wc-payment-gateway-hosted.php | 4 +- ...-wc-payment-gateway-my-payment-methods.php | 8 +-- ...ass-sv-wc-payment-gateway-payment-form.php | 12 ++-- .../class-sv-wc-payment-gateway-plugin.php | 8 +-- .../class-sv-wc-payment-gateway-privacy.php | 4 +- .../class-sv-wc-payment-gateway.php | 10 +-- .../class-sv-wc-payment-gateway-exception.php | 4 +- ...ract-sv-wc-payment-gateway-integration.php | 4 +- ...payment-gateway-integration-pre-orders.php | 4 +- ...ment-gateway-integration-subscriptions.php | 4 +- ...ss-sv-wc-payment-gateway-payment-token.php | 4 +- ...payment-gateway-payment-tokens-handler.php | 4 +- ...-sv-wc-payment-gateway-plugin-rest-api.php | 10 +-- woocommerce/rest-api/Controllers/Settings.php | 8 +-- .../rest-api/class-sv-wc-plugin-rest-api.php | 4 +- .../utilities/class-sv-wp-async-request.php | 4 +- .../class-sv-wp-background-job-handler.php | 4 +- .../class-sv-wp-job-batch-handler.php | 4 +- 158 files changed, 520 insertions(+), 518 deletions(-) diff --git a/composer.json b/composer.json index 290e45156..535f7169a 100644 --- a/composer.json +++ b/composer.json @@ -1,7 +1,7 @@ { "name": "skyverge/wc-plugin-framework", "description": "The official SkyVerge WooCommerce plugin framework", - "version": "5.15.8", + "version": "5.15.9", "license": "GPL-3.0", "minimum-stability": "dev", "prefer-stable": true, @@ -35,12 +35,12 @@ "woocommerce/class-sv-wp-admin-message-handler.php" ], "psr-4": { - "SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\": "woocommerce/" + "SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\": "woocommerce/" } }, "autoload-dev": { "psr-4": { - "SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\Tests\\": "tests/" + "SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\Tests\\": "tests/" } }, "config": { diff --git a/package-lock.json b/package-lock.json index a3ccc1c7b..c109f7ddd 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "wc-plugin-framework", - "version": "5.15.8", + "version": "5.15.9", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "wc-plugin-framework", - "version": "5.15.8", + "version": "5.15.9", "license": "GPL-3.0", "devDependencies": { "@parcel/transformer-coffeescript": "^2.13.3", diff --git a/package.json b/package.json index 30d354aba..5587dd90e 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "wc-plugin-framework", - "version": "5.15.8", + "version": "5.15.9", "title": "WooCommerce Plugin Framework", "author": "SkyVerge Team", "homepage": "https://github.com/skyverge/wc-plugin-framework#readme", diff --git a/tests/TestCase.php b/tests/TestCase.php index c88698035..fff90d2b7 100644 --- a/tests/TestCase.php +++ b/tests/TestCase.php @@ -1,6 +1,6 @@ assertInstanceOf( '\SkyVerge\WooCommerce\PluginFramework\v5_15_8\SV_WC_Plugin_Dependencies', $this->get_plugin()->get_dependency_handler() ); + $this->assertInstanceOf( '\SkyVerge\WooCommerce\PluginFramework\v5_15_9\SV_WC_Plugin_Dependencies', $this->get_plugin()->get_dependency_handler() ); } @@ -161,7 +161,7 @@ public function test_get_dependency_handler() { */ public function test_get_lifecycle_handler() { - $this->assertInstanceOf( '\SkyVerge\WooCommerce\PluginFramework\v5_15_8\Plugin\Lifecycle', $this->get_plugin()->get_lifecycle_handler() ); + $this->assertInstanceOf( '\SkyVerge\WooCommerce\PluginFramework\v5_15_9\Plugin\Lifecycle', $this->get_plugin()->get_lifecycle_handler() ); } diff --git a/tests/integration/REST_API/Controllers/SettingsTest.php b/tests/integration/REST_API/Controllers/SettingsTest.php index 396582b21..2717bac88 100644 --- a/tests/integration/REST_API/Controllers/SettingsTest.php +++ b/tests/integration/REST_API/Controllers/SettingsTest.php @@ -1,14 +1,14 @@ render_js(); $this->assertStringContainsString( 'function load_gateway_test_plugin_payment_methods_handler', $wc_queued_js ); - $this->assertStringContainsString( 'window.jQuery( document.body ).on( \'sv_wc_payment_methods_handler_v5_15_8_loaded\', load_gateway_test_plugin_payment_methods_handler );', $wc_queued_js ); + $this->assertStringContainsString( 'window.jQuery( document.body ).on( \'sv_wc_payment_methods_handler_v5_15_9_loaded\', load_gateway_test_plugin_payment_methods_handler );', $wc_queued_js ); } diff --git a/tests/integration/payment-gateway/PaymentFormTest.php b/tests/integration/payment-gateway/PaymentFormTest.php index 01e32eef9..9b6b757d1 100644 --- a/tests/integration/payment-gateway/PaymentFormTest.php +++ b/tests/integration/payment-gateway/PaymentFormTest.php @@ -1,11 +1,11 @@ get_plugin()->get_gateway()->get_payment_form_instance()->render_js(); $this->assertStringContainsString( 'function load_test_gateway_payment_form_handler', $wc_queued_js ); - $this->assertStringContainsString( 'window.jQuery( document.body ).on( \'sv_wc_payment_form_handler_v5_15_8_loaded\', load_test_gateway_payment_form_handler );', $wc_queued_js ); + $this->assertStringContainsString( 'window.jQuery( document.body ).on( \'sv_wc_payment_form_handler_v5_15_9_loaded\', load_test_gateway_payment_form_handler );', $wc_queued_js ); } diff --git a/tests/integration/payment-gateway/SV_WC_Payment_Gateway_Payment_Token_Test.php b/tests/integration/payment-gateway/SV_WC_Payment_Gateway_Payment_Token_Test.php index 56bb16e91..24170246b 100644 --- a/tests/integration/payment-gateway/SV_WC_Payment_Gateway_Payment_Token_Test.php +++ b/tests/integration/payment-gateway/SV_WC_Payment_Gateway_Payment_Token_Test.php @@ -1,11 +1,11 @@ invokeArgs( $frontend_instance, [[]] ); $this->assertStringContainsString( 'function load_test_gateway_apple_pay_handler', $wc_queued_js ); - $this->assertStringContainsString( 'window.jQuery( document.body ).on( \'sv_wc_apple_pay_handler_v5_15_8_loaded\', load_test_gateway_apple_pay_handler );', $wc_queued_js ); + $this->assertStringContainsString( 'window.jQuery( document.body ).on( \'sv_wc_apple_pay_handler_v5_15_9_loaded\', load_test_gateway_apple_pay_handler );', $wc_queued_js ); } diff --git a/tests/unit/API/CacheableRequestTraitTest.php b/tests/unit/API/CacheableRequestTraitTest.php index c9b0fb8b3..74a0eb590 100644 --- a/tests/unit/API/CacheableRequestTraitTest.php +++ b/tests/unit/API/CacheableRequestTraitTest.php @@ -1,9 +1,9 @@ \SkyVerge\WooCommerce\PluginFramework\v5_15_8\Country_Helper::class, - PaymentFormContextChecker::class => \SkyVerge\WooCommerce\PluginFramework\v5_15_8\PaymentFormContextChecker::class, + Country_Helper::class => \SkyVerge\WooCommerce\PluginFramework\v5_15_9\Country_Helper::class, + PaymentFormContextChecker::class => \SkyVerge\WooCommerce\PluginFramework\v5_15_9\PaymentFormContextChecker::class, ]; foreach ($aliases as $alias) { diff --git a/tests/unit/HelperTest.php b/tests/unit/HelperTest.php index 7088ef78d..f427197cb 100644 --- a/tests/unit/HelperTest.php +++ b/tests/unit/HelperTest.php @@ -1,20 +1,20 @@ js_handler_base_class_name ); + return sprintf( '%s_v5_15_9', $this->js_handler_base_class_name ); } diff --git a/woocommerce/Helpers/ArrayHelper.php b/woocommerce/Helpers/ArrayHelper.php index 977671155..93d21306b 100644 --- a/woocommerce/Helpers/ArrayHelper.php +++ b/woocommerce/Helpers/ArrayHelper.php @@ -22,7 +22,7 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8\Helpers; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9\Helpers; use ArrayAccess; diff --git a/woocommerce/Helpers/NumberHelper.php b/woocommerce/Helpers/NumberHelper.php index f2314ddc9..df442be38 100644 --- a/woocommerce/Helpers/NumberHelper.php +++ b/woocommerce/Helpers/NumberHelper.php @@ -22,7 +22,7 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8\Helpers; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9\Helpers; class NumberHelper { diff --git a/woocommerce/Helpers/PageHelper.php b/woocommerce/Helpers/PageHelper.php index f356be43e..aa316da67 100644 --- a/woocommerce/Helpers/PageHelper.php +++ b/woocommerce/Helpers/PageHelper.php @@ -22,7 +22,7 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8\Helpers; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9\Helpers; class PageHelper { diff --git a/woocommerce/Plugin/Lifecycle.php b/woocommerce/Plugin/Lifecycle.php index 1e37912a3..980f3276d 100644 --- a/woocommerce/Plugin/Lifecycle.php +++ b/woocommerce/Plugin/Lifecycle.php @@ -22,12 +22,12 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8\Plugin; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9\Plugin; -use SkyVerge\WooCommerce\PluginFramework\v5_15_8\Admin\Notes_Helper; -use SkyVerge\WooCommerce\PluginFramework\v5_15_8\SV_WC_Payment_Gateway_Plugin; -use SkyVerge\WooCommerce\PluginFramework\v5_15_8\SV_WC_Plugin; -use SkyVerge\WooCommerce\PluginFramework\v5_15_8\SV_WC_Plugin_Compatibility; +use SkyVerge\WooCommerce\PluginFramework\v5_15_9\Admin\Notes_Helper; +use SkyVerge\WooCommerce\PluginFramework\v5_15_9\SV_WC_Payment_Gateway_Plugin; +use SkyVerge\WooCommerce\PluginFramework\v5_15_9\SV_WC_Plugin; +use SkyVerge\WooCommerce\PluginFramework\v5_15_9\SV_WC_Plugin_Compatibility; defined( 'ABSPATH' ) or exit; diff --git a/woocommerce/Settings_API/Abstract_Settings.php b/woocommerce/Settings_API/Abstract_Settings.php index 77f2cf0e5..e3c7df992 100644 --- a/woocommerce/Settings_API/Abstract_Settings.php +++ b/woocommerce/Settings_API/Abstract_Settings.php @@ -22,13 +22,13 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8\Settings_API; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9\Settings_API; -use SkyVerge\WooCommerce\PluginFramework\v5_15_8 as Framework; +use SkyVerge\WooCommerce\PluginFramework\v5_15_9 as Framework; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\Settings_API\\Abstract_Settings' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\Settings_API\\Abstract_Settings' ) ) : /** diff --git a/woocommerce/Settings_API/Control.php b/woocommerce/Settings_API/Control.php index dbed93817..73e875eb6 100644 --- a/woocommerce/Settings_API/Control.php +++ b/woocommerce/Settings_API/Control.php @@ -22,13 +22,13 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8\Settings_API; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9\Settings_API; -use SkyVerge\WooCommerce\PluginFramework\v5_15_8 as Framework; +use SkyVerge\WooCommerce\PluginFramework\v5_15_9 as Framework; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\Settings_API\\Control' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\Settings_API\\Control' ) ) : /** diff --git a/woocommerce/Settings_API/Setting.php b/woocommerce/Settings_API/Setting.php index 9c7e07351..66b0e5b4c 100644 --- a/woocommerce/Settings_API/Setting.php +++ b/woocommerce/Settings_API/Setting.php @@ -22,13 +22,13 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8\Settings_API; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9\Settings_API; -use SkyVerge\WooCommerce\PluginFramework\v5_15_8 as Framework; +use SkyVerge\WooCommerce\PluginFramework\v5_15_9 as Framework; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\Settings_API\\Setting' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\Settings_API\\Setting' ) ) : /** diff --git a/woocommerce/Traits/CanConvertToArrayTrait.php b/woocommerce/Traits/CanConvertToArrayTrait.php index 6629fef5f..2328fefbe 100644 --- a/woocommerce/Traits/CanConvertToArrayTrait.php +++ b/woocommerce/Traits/CanConvertToArrayTrait.php @@ -22,11 +22,11 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8\Traits; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9\Traits; use ReflectionClass; use ReflectionProperty; -use SkyVerge\WooCommerce\PluginFramework\v5_15_8\Helpers\ArrayHelper; +use SkyVerge\WooCommerce\PluginFramework\v5_15_9\Helpers\ArrayHelper; /** * A trait that allows a given class/object to convert its state to an array. diff --git a/woocommerce/Traits/CanGetNewInstanceTrait.php b/woocommerce/Traits/CanGetNewInstanceTrait.php index 7e11b11a6..fc2acf9f5 100644 --- a/woocommerce/Traits/CanGetNewInstanceTrait.php +++ b/woocommerce/Traits/CanGetNewInstanceTrait.php @@ -22,11 +22,11 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8\Traits; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9\Traits; defined('ABSPATH') or exit; -if (trait_exists('\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\Traits\\CanGetNewInstanceTrait')) { +if (trait_exists('\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\Traits\\CanGetNewInstanceTrait')) { return; } diff --git a/woocommerce/Traits/IsSingletonTrait.php b/woocommerce/Traits/IsSingletonTrait.php index d00694c9f..4bdc2fb28 100644 --- a/woocommerce/Traits/IsSingletonTrait.php +++ b/woocommerce/Traits/IsSingletonTrait.php @@ -22,11 +22,11 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8\Traits; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9\Traits; defined('ABSPATH') or exit; -if (trait_exists('\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\Traits\\IsSingletonTrait')) { +if (trait_exists('\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\Traits\\IsSingletonTrait')) { return; } diff --git a/woocommerce/admin/Notes_Helper.php b/woocommerce/admin/Notes_Helper.php index 1100bc17f..d3e543346 100644 --- a/woocommerce/admin/Notes_Helper.php +++ b/woocommerce/admin/Notes_Helper.php @@ -21,13 +21,13 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8\Admin; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9\Admin; use Automattic\WooCommerce\Admin\Notes as WooCommerce_Admin_Notes; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\Admin\\Notes_Helper' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\Admin\\Notes_Helper' ) ) : /** diff --git a/woocommerce/admin/abstract-sv-wc-plugin-admin-setup-wizard.php b/woocommerce/admin/abstract-sv-wc-plugin-admin-setup-wizard.php index 9a0a161a9..084079d93 100644 --- a/woocommerce/admin/abstract-sv-wc-plugin-admin-setup-wizard.php +++ b/woocommerce/admin/abstract-sv-wc-plugin-admin-setup-wizard.php @@ -21,13 +21,13 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8\Admin; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9\Admin; defined( 'ABSPATH' ) or exit; -use SkyVerge\WooCommerce\PluginFramework\v5_15_8 as Framework; +use SkyVerge\WooCommerce\PluginFramework\v5_15_9 as Framework; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\Admin\\Setup_Wizard' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\Admin\\Setup_Wizard' ) ) : /** diff --git a/woocommerce/api/Abstract_Cacheable_API_Base.php b/woocommerce/api/Abstract_Cacheable_API_Base.php index 247bb329d..49c8c1ef3 100644 --- a/woocommerce/api/Abstract_Cacheable_API_Base.php +++ b/woocommerce/api/Abstract_Cacheable_API_Base.php @@ -22,14 +22,14 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8\API; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9\API; -use SkyVerge\WooCommerce\PluginFramework\v5_15_8\SV_WC_API_Base; -use SkyVerge\WooCommerce\PluginFramework\v5_15_8\API\Traits\Cacheable_Request_Trait; +use SkyVerge\WooCommerce\PluginFramework\v5_15_9\SV_WC_API_Base; +use SkyVerge\WooCommerce\PluginFramework\v5_15_9\API\Traits\Cacheable_Request_Trait; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\API\\Abstract_Cacheable_API_Base' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\API\\Abstract_Cacheable_API_Base' ) ) : /** diff --git a/woocommerce/api/Traits/Cacheable_Request_Trait.php b/woocommerce/api/Traits/Cacheable_Request_Trait.php index faa8cc55d..640ce6230 100644 --- a/woocommerce/api/Traits/Cacheable_Request_Trait.php +++ b/woocommerce/api/Traits/Cacheable_Request_Trait.php @@ -22,11 +22,11 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8\API\Traits; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9\API\Traits; defined( 'ABSPATH' ) or exit; -if ( ! trait_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\API\\Traits\\Cacheable_Request_Trait' ) ) : +if ( ! trait_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\API\\Traits\\Cacheable_Request_Trait' ) ) : /** diff --git a/woocommerce/api/abstract-sv-wc-api-json-request.php b/woocommerce/api/abstract-sv-wc-api-json-request.php index f89481411..20f78f401 100644 --- a/woocommerce/api/abstract-sv-wc-api-json-request.php +++ b/woocommerce/api/abstract-sv-wc-api-json-request.php @@ -22,11 +22,11 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\SV_WC_API_JSON_Request' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\SV_WC_API_JSON_Request' ) ) : /** diff --git a/woocommerce/api/abstract-sv-wc-api-json-response.php b/woocommerce/api/abstract-sv-wc-api-json-response.php index 9bfc25292..bb48f183e 100644 --- a/woocommerce/api/abstract-sv-wc-api-json-response.php +++ b/woocommerce/api/abstract-sv-wc-api-json-response.php @@ -22,11 +22,11 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\SV_WC_API_JSON_Response' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\SV_WC_API_JSON_Response' ) ) : /** diff --git a/woocommerce/api/abstract-sv-wc-api-xml-request.php b/woocommerce/api/abstract-sv-wc-api-xml-request.php index f050e9a5d..9f7b5aa41 100644 --- a/woocommerce/api/abstract-sv-wc-api-xml-request.php +++ b/woocommerce/api/abstract-sv-wc-api-xml-request.php @@ -22,11 +22,11 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\SV_WC_API_XML_Request' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\SV_WC_API_XML_Request' ) ) : /** diff --git a/woocommerce/api/abstract-sv-wc-api-xml-response.php b/woocommerce/api/abstract-sv-wc-api-xml-response.php index cfde72f6d..eeafbdfb1 100644 --- a/woocommerce/api/abstract-sv-wc-api-xml-response.php +++ b/woocommerce/api/abstract-sv-wc-api-xml-response.php @@ -22,11 +22,11 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\SV_WC_API_XML_Response' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\SV_WC_API_XML_Response' ) ) : /** diff --git a/woocommerce/api/class-sv-wc-api-base.php b/woocommerce/api/class-sv-wc-api-base.php index 7447250b9..e126c33fe 100644 --- a/woocommerce/api/class-sv-wc-api-base.php +++ b/woocommerce/api/class-sv-wc-api-base.php @@ -22,11 +22,11 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\SV_WC_API_Base' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\SV_WC_API_Base' ) ) : /** diff --git a/woocommerce/api/class-sv-wc-api-exception.php b/woocommerce/api/class-sv-wc-api-exception.php index 6a49c722e..d0b1a1976 100644 --- a/woocommerce/api/class-sv-wc-api-exception.php +++ b/woocommerce/api/class-sv-wc-api-exception.php @@ -22,11 +22,11 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\SV_WC_API_Exception' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\SV_WC_API_Exception' ) ) : /** diff --git a/woocommerce/api/interface-sv-wc-api-request.php b/woocommerce/api/interface-sv-wc-api-request.php index 85812c1d6..bf9879b19 100644 --- a/woocommerce/api/interface-sv-wc-api-request.php +++ b/woocommerce/api/interface-sv-wc-api-request.php @@ -22,11 +22,11 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9; defined( 'ABSPATH' ) or exit; -if ( ! interface_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\SV_WC_API_Request' ) ) : +if ( ! interface_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\SV_WC_API_Request' ) ) : /** diff --git a/woocommerce/api/interface-sv-wc-api-response.php b/woocommerce/api/interface-sv-wc-api-response.php index f0abfba59..5a95ead5e 100644 --- a/woocommerce/api/interface-sv-wc-api-response.php +++ b/woocommerce/api/interface-sv-wc-api-response.php @@ -22,11 +22,11 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9; defined( 'ABSPATH' ) or exit; -if ( ! interface_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\SV_WC_API_Response' ) ) : +if ( ! interface_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\SV_WC_API_Response' ) ) : /** diff --git a/woocommerce/changelog.txt b/woocommerce/changelog.txt index eacf0b499..37a158887 100644 --- a/woocommerce/changelog.txt +++ b/woocommerce/changelog.txt @@ -1,5 +1,7 @@ *** SkyVerge WooCommerce Plugin Framework Changelog *** +2025.nn.nn - version 5.15.9 + 2025.nn.nn - version 5.15.8 2025.04.29 - version 5.15.7 diff --git a/woocommerce/class-sv-wc-admin-notice-handler.php b/woocommerce/class-sv-wc-admin-notice-handler.php index 4a415a9a5..9f1e1937d 100644 --- a/woocommerce/class-sv-wc-admin-notice-handler.php +++ b/woocommerce/class-sv-wc-admin-notice-handler.php @@ -22,11 +22,11 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\SV_WC_Admin_Notice_Handler' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\SV_WC_Admin_Notice_Handler' ) ) : /** diff --git a/woocommerce/class-sv-wc-helper.php b/woocommerce/class-sv-wc-helper.php index 142b54e94..5cbed30cb 100644 --- a/woocommerce/class-sv-wc-helper.php +++ b/woocommerce/class-sv-wc-helper.php @@ -22,15 +22,15 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9; -use SkyVerge\WooCommerce\PluginFramework\v5_15_8\Helpers\NumberHelper; +use SkyVerge\WooCommerce\PluginFramework\v5_15_9\Helpers\NumberHelper; use WC_Data; use WP_Post; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\SV_WC_Helper' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\SV_WC_Helper' ) ) : /** diff --git a/woocommerce/class-sv-wc-hook-deprecator.php b/woocommerce/class-sv-wc-hook-deprecator.php index f01fc7935..9a07ec56c 100644 --- a/woocommerce/class-sv-wc-hook-deprecator.php +++ b/woocommerce/class-sv-wc-hook-deprecator.php @@ -22,11 +22,11 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\SV_WC_Hook_Deprecator' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\SV_WC_Hook_Deprecator' ) ) : /** diff --git a/woocommerce/class-sv-wc-plugin-compatibility.php b/woocommerce/class-sv-wc-plugin-compatibility.php index 25df4c18c..26523b375 100644 --- a/woocommerce/class-sv-wc-plugin-compatibility.php +++ b/woocommerce/class-sv-wc-plugin-compatibility.php @@ -22,13 +22,13 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9; use Automattic\WooCommerce\Utilities\OrderUtil; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\SV_WC_Plugin_Compatibility' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\SV_WC_Plugin_Compatibility' ) ) : /** diff --git a/woocommerce/class-sv-wc-plugin-dependencies.php b/woocommerce/class-sv-wc-plugin-dependencies.php index d18ab272a..c75b26c67 100644 --- a/woocommerce/class-sv-wc-plugin-dependencies.php +++ b/woocommerce/class-sv-wc-plugin-dependencies.php @@ -22,11 +22,11 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\SV_WC_Plugin_Dependencies' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\SV_WC_Plugin_Dependencies' ) ) : /** diff --git a/woocommerce/class-sv-wc-plugin-exception.php b/woocommerce/class-sv-wc-plugin-exception.php index a29544b3f..51dd98702 100644 --- a/woocommerce/class-sv-wc-plugin-exception.php +++ b/woocommerce/class-sv-wc-plugin-exception.php @@ -22,11 +22,11 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\SV_WC_Plugin_Exception' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\SV_WC_Plugin_Exception' ) ) : /** diff --git a/woocommerce/class-sv-wc-plugin.php b/woocommerce/class-sv-wc-plugin.php index 45902271c..82ce27fe5 100644 --- a/woocommerce/class-sv-wc-plugin.php +++ b/woocommerce/class-sv-wc-plugin.php @@ -22,18 +22,18 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9; use Automattic\WooCommerce\Utilities\FeaturesUtil; -use SkyVerge\WooCommerce\PluginFramework\v5_15_8\Handlers\Country_Helper; -use SkyVerge\WooCommerce\PluginFramework\v5_15_8\Payment_Gateway\PaymentFormContextChecker; +use SkyVerge\WooCommerce\PluginFramework\v5_15_9\Handlers\Country_Helper; +use SkyVerge\WooCommerce\PluginFramework\v5_15_9\Payment_Gateway\PaymentFormContextChecker; use stdClass; use Throwable; use WC_Logger_Interface; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\SV_WC_Plugin' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\SV_WC_Plugin' ) ) : /** @@ -51,7 +51,7 @@ abstract class SV_WC_Plugin { /** Plugin Framework Version */ - public const VERSION = '5.15.8'; + public const VERSION = '5.15.9'; /** @var object single instance of plugin */ protected static $instance; @@ -487,7 +487,7 @@ private function includes() { */ protected function setupClassAliases() : void { - $countryHelperAlias = '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\Country_Helper'; + $countryHelperAlias = '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\Country_Helper'; if (! class_exists($countryHelperAlias)) { class_alias( Country_Helper::class, @@ -495,7 +495,7 @@ class_alias( ); } - $paymentFormContextCheckerAlias = '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\PaymentFormContextChecker'; + $paymentFormContextCheckerAlias = '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\PaymentFormContextChecker'; if (! class_exists($paymentFormContextCheckerAlias)) { class_alias( PaymentFormContextChecker::class, diff --git a/woocommerce/class-sv-wp-admin-message-handler.php b/woocommerce/class-sv-wp-admin-message-handler.php index 230269cee..2bb8f4ebb 100644 --- a/woocommerce/class-sv-wp-admin-message-handler.php +++ b/woocommerce/class-sv-wp-admin-message-handler.php @@ -22,11 +22,11 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\SV_WP_Admin_Message_Handler' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\SV_WP_Admin_Message_Handler' ) ) : /** diff --git a/woocommerce/compatibility/abstract-sv-wc-data-compatibility.php b/woocommerce/compatibility/abstract-sv-wc-data-compatibility.php index 208db46d2..14c29a1df 100644 --- a/woocommerce/compatibility/abstract-sv-wc-data-compatibility.php +++ b/woocommerce/compatibility/abstract-sv-wc-data-compatibility.php @@ -22,11 +22,11 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\SV_WC_Data_Compatibility' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\SV_WC_Data_Compatibility' ) ) : /** diff --git a/woocommerce/compatibility/class-sv-wc-order-compatibility.php b/woocommerce/compatibility/class-sv-wc-order-compatibility.php index 5f52c19af..21c69b836 100644 --- a/woocommerce/compatibility/class-sv-wc-order-compatibility.php +++ b/woocommerce/compatibility/class-sv-wc-order-compatibility.php @@ -22,7 +22,7 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9; use Automattic\WooCommerce\Admin\Overrides\Order; use Automattic\WooCommerce\Internal\Admin\Orders\PageController; @@ -32,7 +32,7 @@ defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\SV_WC_Order_Compatibility' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\SV_WC_Order_Compatibility' ) ) : /** diff --git a/woocommerce/compatibility/class-sv-wc-subscription-compatibility.php b/woocommerce/compatibility/class-sv-wc-subscription-compatibility.php index 0a7e3e565..ddb762665 100644 --- a/woocommerce/compatibility/class-sv-wc-subscription-compatibility.php +++ b/woocommerce/compatibility/class-sv-wc-subscription-compatibility.php @@ -22,11 +22,11 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\SV_WC_Subscription_Compatibility' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\SV_WC_Subscription_Compatibility' ) ) : /** * WooCommerce subscription compatibility class. diff --git a/woocommerce/i18n/languages/woocommerce-plugin-framework.pot b/woocommerce/i18n/languages/woocommerce-plugin-framework.pot index e4a8d02b9..ea74905dc 100644 --- a/woocommerce/i18n/languages/woocommerce-plugin-framework.pot +++ b/woocommerce/i18n/languages/woocommerce-plugin-framework.pot @@ -1,14 +1,14 @@ # Copyright (c) GoDaddy Operating Company, LLC. All Rights Reserved. msgid "" msgstr "" -"Project-Id-Version: SkyVerge WooCommerce Plugin Framework 1.0.0 TODO: plugin version\n" -"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/wc-plugin-framework\n" +"Project-Id-Version: SkyVerge WooCommerce Plugin Framework\n" +"Report-Msgid-Bugs-To: https://github.com/godaddy-wordpress/wc-plugin-framework/issues\n" "Last-Translator: plugins@godaddy.com\n" -"Language-Team: LANGUAGE \n" +"Language-Team: plugins@godaddy.com\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"POT-Creation-Date: 2025-04-30T09:34:59+00:00\n" +"POT-Creation-Date: 2025-05-01T11:26:52+00:00\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "X-Generator: WP-CLI 2.11.0\n" "X-Domain: woocommerce-plugin-framework\n" diff --git a/woocommerce/payment-gateway/Blocks/Gateway_Blocks_Handler.php b/woocommerce/payment-gateway/Blocks/Gateway_Blocks_Handler.php index df1aacd10..67f2e064c 100644 --- a/woocommerce/payment-gateway/Blocks/Gateway_Blocks_Handler.php +++ b/woocommerce/payment-gateway/Blocks/Gateway_Blocks_Handler.php @@ -1,13 +1,13 @@ get_handler()->get_plugin()->get_payment_gateway_framework_assets_url() . '/css/frontend/sv-wc-payment-gateway-external-checkout.css', array(), $this->get_handler()->get_plugin()->get_version() ); // TODO: min + wp_enqueue_style( 'sv-wc-external-checkout-v5_15_9', $this->get_handler()->get_plugin()->get_payment_gateway_framework_assets_url() . '/css/frontend/sv-wc-payment-gateway-external-checkout.css', array(), $this->get_handler()->get_plugin()->get_version() ); // TODO: min } diff --git a/woocommerce/payment-gateway/External_Checkout/Google_Pay/AJAX.php b/woocommerce/payment-gateway/External_Checkout/Google_Pay/AJAX.php index 8cc159da5..a6f6d0dd3 100644 --- a/woocommerce/payment-gateway/External_Checkout/Google_Pay/AJAX.php +++ b/woocommerce/payment-gateway/External_Checkout/Google_Pay/AJAX.php @@ -22,14 +22,14 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8\Payment_Gateway\External_Checkout\Google_Pay; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9\Payment_Gateway\External_Checkout\Google_Pay; -use SkyVerge\WooCommerce\PluginFramework\v5_15_8\SV_WC_Helper; -use SkyVerge\WooCommerce\PluginFramework\v5_15_8\SV_WC_Payment_Gateway_Exception; +use SkyVerge\WooCommerce\PluginFramework\v5_15_9\SV_WC_Helper; +use SkyVerge\WooCommerce\PluginFramework\v5_15_9\SV_WC_Payment_Gateway_Exception; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\Payment_Gateway\\External_Checkout\\Google_Pay\\AJAX' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\Payment_Gateway\\External_Checkout\\Google_Pay\\AJAX' ) ) : /** diff --git a/woocommerce/payment-gateway/External_Checkout/Google_Pay/Admin.php b/woocommerce/payment-gateway/External_Checkout/Google_Pay/Admin.php index cc23566ea..f631ed9a3 100755 --- a/woocommerce/payment-gateway/External_Checkout/Google_Pay/Admin.php +++ b/woocommerce/payment-gateway/External_Checkout/Google_Pay/Admin.php @@ -22,13 +22,13 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8\Payment_Gateway\External_Checkout\Google_Pay; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9\Payment_Gateway\External_Checkout\Google_Pay; -use SkyVerge\WooCommerce\PluginFramework\v5_15_8\SV_WC_Helper; +use SkyVerge\WooCommerce\PluginFramework\v5_15_9\SV_WC_Helper; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\Payment_Gateway\\External_Checkout\\Google_Pay\\Admin' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\Payment_Gateway\\External_Checkout\\Google_Pay\\Admin' ) ) : /** @@ -37,7 +37,7 @@ * @since 5.10.0 */ #[\AllowDynamicProperties] -class Admin extends \SkyVerge\WooCommerce\PluginFramework\v5_15_8\Payment_Gateway\External_Checkout\Admin { +class Admin extends \SkyVerge\WooCommerce\PluginFramework\v5_15_9\Payment_Gateway\External_Checkout\Admin { /** @var Google_Pay the Google Pay handler instance */ diff --git a/woocommerce/payment-gateway/External_Checkout/Google_Pay/Frontend.php b/woocommerce/payment-gateway/External_Checkout/Google_Pay/Frontend.php index 61def4ae0..a7d9cbaf8 100644 --- a/woocommerce/payment-gateway/External_Checkout/Google_Pay/Frontend.php +++ b/woocommerce/payment-gateway/External_Checkout/Google_Pay/Frontend.php @@ -22,14 +22,14 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8\Payment_Gateway\External_Checkout\Google_Pay; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9\Payment_Gateway\External_Checkout\Google_Pay; -use SkyVerge\WooCommerce\PluginFramework\v5_15_8\SV_WC_Payment_Gateway_Exception; -use SkyVerge\WooCommerce\PluginFramework\v5_15_8\SV_WC_Payment_Gateway_Plugin; +use SkyVerge\WooCommerce\PluginFramework\v5_15_9\SV_WC_Payment_Gateway_Exception; +use SkyVerge\WooCommerce\PluginFramework\v5_15_9\SV_WC_Payment_Gateway_Plugin; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\Payment_Gateway\\External_Checkout\\Google_Pay\\Frontend' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\Payment_Gateway\\External_Checkout\\Google_Pay\\Frontend' ) ) : /** @@ -38,7 +38,7 @@ * @since 5.10.0 */ #[\AllowDynamicProperties] -class Frontend extends \SkyVerge\WooCommerce\PluginFramework\v5_15_8\Payment_Gateway\External_Checkout\Frontend { +class Frontend extends \SkyVerge\WooCommerce\PluginFramework\v5_15_9\Payment_Gateway\External_Checkout\Frontend { /** @var string JS handler base class name, without the FW version */ @@ -102,7 +102,7 @@ public function enqueue_scripts() { $version = $gateway->get_plugin()->get_assets_version( $gateway->get_id() ); wp_enqueue_script( 'google-pay-js-library', 'https://pay.google.com/gp/p/js/pay.js', [], $version, true ); - wp_enqueue_script( 'sv-wc-google-pay-v5_15_8', $this->get_plugin()->get_payment_gateway_framework_assets_url() . '/dist/frontend/sv-wc-payment-gateway-google-pay.js', [ 'google-pay-js-library', 'jquery' ], $version, true ); + wp_enqueue_script( 'sv-wc-google-pay-v5_15_9', $this->get_plugin()->get_payment_gateway_framework_assets_url() . '/dist/frontend/sv-wc-payment-gateway-google-pay.js', [ 'google-pay-js-library', 'jquery' ], $version, true ); } diff --git a/woocommerce/payment-gateway/External_Checkout/Google_Pay/Google_Pay.php b/woocommerce/payment-gateway/External_Checkout/Google_Pay/Google_Pay.php index a20f97ae4..29eab1e17 100755 --- a/woocommerce/payment-gateway/External_Checkout/Google_Pay/Google_Pay.php +++ b/woocommerce/payment-gateway/External_Checkout/Google_Pay/Google_Pay.php @@ -22,17 +22,17 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8\Payment_Gateway\External_Checkout\Google_Pay; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9\Payment_Gateway\External_Checkout\Google_Pay; -use SkyVerge\WooCommerce\PluginFramework\v5_15_8\Payment_Gateway\External_Checkout\External_Checkout; -use SkyVerge\WooCommerce\PluginFramework\v5_15_8\Payment_Gateway\External_Checkout\Orders; -use SkyVerge\WooCommerce\PluginFramework\v5_15_8\SV_WC_Payment_Gateway_Exception; -use SkyVerge\WooCommerce\PluginFramework\v5_15_8\SV_WC_Payment_Gateway_Helper; -use SkyVerge\WooCommerce\PluginFramework\v5_15_8\SV_WC_Payment_Gateway_Plugin; +use SkyVerge\WooCommerce\PluginFramework\v5_15_9\Payment_Gateway\External_Checkout\External_Checkout; +use SkyVerge\WooCommerce\PluginFramework\v5_15_9\Payment_Gateway\External_Checkout\Orders; +use SkyVerge\WooCommerce\PluginFramework\v5_15_9\SV_WC_Payment_Gateway_Exception; +use SkyVerge\WooCommerce\PluginFramework\v5_15_9\SV_WC_Payment_Gateway_Helper; +use SkyVerge\WooCommerce\PluginFramework\v5_15_9\SV_WC_Payment_Gateway_Plugin; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\Payment_Gateway\\External_Checkout\\Google_Pay\\Google_Pay' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\Payment_Gateway\\External_Checkout\\Google_Pay\\Google_Pay' ) ) : /** @@ -680,7 +680,7 @@ public function get_supported_networks() { $accepted_card_types = ( $this->get_processing_gateway() ) ? $this->get_processing_gateway()->get_card_types() : []; - $accepted_card_types = array_map( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\SV_WC_Payment_Gateway_Helper::normalize_card_type', $accepted_card_types ); + $accepted_card_types = array_map( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\SV_WC_Payment_Gateway_Helper::normalize_card_type', $accepted_card_types ); $valid_networks = [ SV_WC_Payment_Gateway_Helper::CARD_TYPE_AMEX => 'AMEX', diff --git a/woocommerce/payment-gateway/External_Checkout/Orders.php b/woocommerce/payment-gateway/External_Checkout/Orders.php index 6215c9798..0c0b3052d 100644 --- a/woocommerce/payment-gateway/External_Checkout/Orders.php +++ b/woocommerce/payment-gateway/External_Checkout/Orders.php @@ -22,9 +22,9 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8\Payment_Gateway\External_Checkout; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9\Payment_Gateway\External_Checkout; -use SkyVerge\WooCommerce\PluginFramework\v5_15_8 as Framework; +use SkyVerge\WooCommerce\PluginFramework\v5_15_9 as Framework; defined( 'ABSPATH' ) or exit; diff --git a/woocommerce/payment-gateway/External_Checkout/apple-pay/api/class-sv-wc-payment-gateway-apple-pay-api-request.php b/woocommerce/payment-gateway/External_Checkout/apple-pay/api/class-sv-wc-payment-gateway-apple-pay-api-request.php index 85a34b922..6cec97988 100644 --- a/woocommerce/payment-gateway/External_Checkout/apple-pay/api/class-sv-wc-payment-gateway-apple-pay-api-request.php +++ b/woocommerce/payment-gateway/External_Checkout/apple-pay/api/class-sv-wc-payment-gateway-apple-pay-api-request.php @@ -22,11 +22,11 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\SV_WC_Payment_Gateway_Apple_Pay_API_Request' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\SV_WC_Payment_Gateway_Apple_Pay_API_Request' ) ) : /** diff --git a/woocommerce/payment-gateway/External_Checkout/apple-pay/api/class-sv-wc-payment-gateway-apple-pay-api-response.php b/woocommerce/payment-gateway/External_Checkout/apple-pay/api/class-sv-wc-payment-gateway-apple-pay-api-response.php index 428cfb8ce..750528fbb 100644 --- a/woocommerce/payment-gateway/External_Checkout/apple-pay/api/class-sv-wc-payment-gateway-apple-pay-api-response.php +++ b/woocommerce/payment-gateway/External_Checkout/apple-pay/api/class-sv-wc-payment-gateway-apple-pay-api-response.php @@ -22,11 +22,11 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\SV_WC_Payment_Gateway_Apple_Pay_API_Response' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\SV_WC_Payment_Gateway_Apple_Pay_API_Response' ) ) : /** diff --git a/woocommerce/payment-gateway/External_Checkout/apple-pay/api/class-sv-wc-payment-gateway-apple-pay-api.php b/woocommerce/payment-gateway/External_Checkout/apple-pay/api/class-sv-wc-payment-gateway-apple-pay-api.php index 2f5ed0d93..14d78d14f 100644 --- a/woocommerce/payment-gateway/External_Checkout/apple-pay/api/class-sv-wc-payment-gateway-apple-pay-api.php +++ b/woocommerce/payment-gateway/External_Checkout/apple-pay/api/class-sv-wc-payment-gateway-apple-pay-api.php @@ -22,11 +22,11 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\SV_WC_Payment_Gateway_Apple_Pay_API' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\SV_WC_Payment_Gateway_Apple_Pay_API' ) ) : /** @@ -58,7 +58,7 @@ public function __construct( SV_WC_Payment_Gateway $gateway ) { $this->set_request_content_type_header( 'application/json' ); $this->set_request_accept_header( 'application/json' ); - $this->set_response_handler( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\SV_WC_Payment_Gateway_Apple_Pay_API_Response' ); + $this->set_response_handler( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\SV_WC_Payment_Gateway_Apple_Pay_API_Response' ); } diff --git a/woocommerce/payment-gateway/External_Checkout/apple-pay/api/class-sv-wc-payment-gateway-apple-pay-payment-response.php b/woocommerce/payment-gateway/External_Checkout/apple-pay/api/class-sv-wc-payment-gateway-apple-pay-payment-response.php index a717fd3cf..c06411a22 100644 --- a/woocommerce/payment-gateway/External_Checkout/apple-pay/api/class-sv-wc-payment-gateway-apple-pay-payment-response.php +++ b/woocommerce/payment-gateway/External_Checkout/apple-pay/api/class-sv-wc-payment-gateway-apple-pay-payment-response.php @@ -22,11 +22,11 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\SV_WC_Payment_Gateway_Apple_Pay_Payment_Response' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\SV_WC_Payment_Gateway_Apple_Pay_Payment_Response' ) ) : /** diff --git a/woocommerce/payment-gateway/External_Checkout/apple-pay/class-sv-wc-payment-gateway-apple-pay-admin.php b/woocommerce/payment-gateway/External_Checkout/apple-pay/class-sv-wc-payment-gateway-apple-pay-admin.php index 0ce6bdf46..31e867058 100755 --- a/woocommerce/payment-gateway/External_Checkout/apple-pay/class-sv-wc-payment-gateway-apple-pay-admin.php +++ b/woocommerce/payment-gateway/External_Checkout/apple-pay/class-sv-wc-payment-gateway-apple-pay-admin.php @@ -22,13 +22,13 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9; -use SkyVerge\WooCommerce\PluginFramework\v5_15_8\Payment_Gateway\External_Checkout\Admin; +use SkyVerge\WooCommerce\PluginFramework\v5_15_9\Payment_Gateway\External_Checkout\Admin; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\SV_WC_Payment_Gateway_Apple_Pay_Admin' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\SV_WC_Payment_Gateway_Apple_Pay_Admin' ) ) : /** diff --git a/woocommerce/payment-gateway/External_Checkout/apple-pay/class-sv-wc-payment-gateway-apple-pay-ajax.php b/woocommerce/payment-gateway/External_Checkout/apple-pay/class-sv-wc-payment-gateway-apple-pay-ajax.php index d9368e767..6db40e995 100644 --- a/woocommerce/payment-gateway/External_Checkout/apple-pay/class-sv-wc-payment-gateway-apple-pay-ajax.php +++ b/woocommerce/payment-gateway/External_Checkout/apple-pay/class-sv-wc-payment-gateway-apple-pay-ajax.php @@ -22,11 +22,11 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\SV_WC_Payment_Gateway_Apple_Pay_AJAX' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\SV_WC_Payment_Gateway_Apple_Pay_AJAX' ) ) : /** diff --git a/woocommerce/payment-gateway/External_Checkout/apple-pay/class-sv-wc-payment-gateway-apple-pay-frontend.php b/woocommerce/payment-gateway/External_Checkout/apple-pay/class-sv-wc-payment-gateway-apple-pay-frontend.php index 758ba3a85..c39765e3a 100644 --- a/woocommerce/payment-gateway/External_Checkout/apple-pay/class-sv-wc-payment-gateway-apple-pay-frontend.php +++ b/woocommerce/payment-gateway/External_Checkout/apple-pay/class-sv-wc-payment-gateway-apple-pay-frontend.php @@ -22,11 +22,11 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\SV_WC_Payment_Gateway_Apple_Pay_Frontend' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\SV_WC_Payment_Gateway_Apple_Pay_Frontend' ) ) : /** @@ -35,7 +35,7 @@ * @since 4.7.0 */ #[\AllowDynamicProperties] -class SV_WC_Payment_Gateway_Apple_Pay_Frontend extends \SkyVerge\WooCommerce\PluginFramework\v5_15_8\Payment_Gateway\External_Checkout\Frontend { +class SV_WC_Payment_Gateway_Apple_Pay_Frontend extends \SkyVerge\WooCommerce\PluginFramework\v5_15_9\Payment_Gateway\External_Checkout\Frontend { /** @var string JS handler base class name, without the FW version */ @@ -116,9 +116,9 @@ public function enqueue_scripts() { $gateway = $this->get_gateway(); $version = $gateway->get_plugin()->get_assets_version( $gateway->get_id() ); - wp_enqueue_style( 'sv-wc-apple-pay-v5_15_8', $this->get_plugin()->get_payment_gateway_framework_assets_url() . '/css/frontend/sv-wc-payment-gateway-apple-pay.css', [], $version ); // TODO: min + wp_enqueue_style( 'sv-wc-apple-pay-v5_15_9', $this->get_plugin()->get_payment_gateway_framework_assets_url() . '/css/frontend/sv-wc-payment-gateway-apple-pay.css', [], $version ); // TODO: min - wp_enqueue_script( 'sv-wc-apple-pay-v5_15_8', $this->get_plugin()->get_payment_gateway_framework_assets_url() . '/dist/frontend/sv-wc-payment-gateway-apple-pay.js', [ 'jquery' ], $version, true ); + wp_enqueue_script( 'sv-wc-apple-pay-v5_15_9', $this->get_plugin()->get_payment_gateway_framework_assets_url() . '/dist/frontend/sv-wc-payment-gateway-apple-pay.js', [ 'jquery' ], $version, true ); } diff --git a/woocommerce/payment-gateway/External_Checkout/apple-pay/class-sv-wc-payment-gateway-apple-pay.php b/woocommerce/payment-gateway/External_Checkout/apple-pay/class-sv-wc-payment-gateway-apple-pay.php index b13800cc0..794359351 100755 --- a/woocommerce/payment-gateway/External_Checkout/apple-pay/class-sv-wc-payment-gateway-apple-pay.php +++ b/woocommerce/payment-gateway/External_Checkout/apple-pay/class-sv-wc-payment-gateway-apple-pay.php @@ -22,13 +22,13 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9; -use SkyVerge\WooCommerce\PluginFramework\v5_15_8\Payment_Gateway\External_Checkout\Orders; +use SkyVerge\WooCommerce\PluginFramework\v5_15_9\Payment_Gateway\External_Checkout\Orders; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\SV_WC_Payment_Gateway_Apple_Pay' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\SV_WC_Payment_Gateway_Apple_Pay' ) ) : /** @@ -940,7 +940,7 @@ public function get_supported_networks() { $accepted_card_types = ( $this->get_processing_gateway() ) ? $this->get_processing_gateway()->get_card_types() : array(); - $accepted_card_types = array_map( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\SV_WC_Payment_Gateway_Helper::normalize_card_type', $accepted_card_types ); + $accepted_card_types = array_map( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\SV_WC_Payment_Gateway_Helper::normalize_card_type', $accepted_card_types ); $valid_networks = array( SV_WC_Payment_Gateway_Helper::CARD_TYPE_AMEX => 'amex', diff --git a/woocommerce/payment-gateway/Handlers/Abstract_Hosted_Payment_Handler.php b/woocommerce/payment-gateway/Handlers/Abstract_Hosted_Payment_Handler.php index 2b8efc8b0..7f3b901ac 100644 --- a/woocommerce/payment-gateway/Handlers/Abstract_Hosted_Payment_Handler.php +++ b/woocommerce/payment-gateway/Handlers/Abstract_Hosted_Payment_Handler.php @@ -22,11 +22,11 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8\Payment_Gateway\Handlers; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9\Payment_Gateway\Handlers; -use SkyVerge\WooCommerce\PluginFramework\v5_15_8 as FrameworkBase; +use SkyVerge\WooCommerce\PluginFramework\v5_15_9 as FrameworkBase; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\Payment_Gateway\\Handlers\\Abstract_Hosted_Payment_Handler' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\Payment_Gateway\\Handlers\\Abstract_Hosted_Payment_Handler' ) ) : /** diff --git a/woocommerce/payment-gateway/Handlers/Abstract_Payment_Handler.php b/woocommerce/payment-gateway/Handlers/Abstract_Payment_Handler.php index fa4b6cedc..e746c4c01 100644 --- a/woocommerce/payment-gateway/Handlers/Abstract_Payment_Handler.php +++ b/woocommerce/payment-gateway/Handlers/Abstract_Payment_Handler.php @@ -22,11 +22,11 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8\Payment_Gateway\Handlers; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9\Payment_Gateway\Handlers; -use SkyVerge\WooCommerce\PluginFramework\v5_15_8 as FrameworkBase; +use SkyVerge\WooCommerce\PluginFramework\v5_15_9 as FrameworkBase; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\Payment_Gateway\\Handlers\\Abstract_Payment_Handler' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\Payment_Gateway\\Handlers\\Abstract_Payment_Handler' ) ) : /** diff --git a/woocommerce/payment-gateway/Handlers/Capture.php b/woocommerce/payment-gateway/Handlers/Capture.php index 419b356b0..fbfb52355 100644 --- a/woocommerce/payment-gateway/Handlers/Capture.php +++ b/woocommerce/payment-gateway/Handlers/Capture.php @@ -22,13 +22,13 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8\Payment_Gateway\Handlers; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9\Payment_Gateway\Handlers; -use SkyVerge\WooCommerce\PluginFramework\v5_15_8 as Framework; +use SkyVerge\WooCommerce\PluginFramework\v5_15_9 as Framework; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\Payment_Gateway\\Handlers\\Capture' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\Payment_Gateway\\Handlers\\Capture' ) ) : /** diff --git a/woocommerce/payment-gateway/PaymentFormContextChecker.php b/woocommerce/payment-gateway/PaymentFormContextChecker.php index 4524acced..cf1b3bd20 100644 --- a/woocommerce/payment-gateway/PaymentFormContextChecker.php +++ b/woocommerce/payment-gateway/PaymentFormContextChecker.php @@ -1,9 +1,9 @@ 0&&void 0!==arguments[0]?arguments[0]:{};return this.block_ui(),this.get_payment_request(n).then(function(n){return e(t.button).show(),e(t.wrapper).show(),t.payment_request=JSON.parse(n),t.unblock_ui()},function(n){return console.error("[Apple Pay] Could not build payment request. "+n.message),e(t.button).hide(),1===e(t.container).children().length&&e(t.wrapper).hide(),t.unblock_ui()})}},{key:"get_payment_request",value:function(t){var n=this;return new Promise(function(i,a){var o;return o={action:"wc_".concat(n.gateway_id,"_apple_pay_get_payment_request")},e.extend(t,o),e.post(n.ajax_url,t,function(e){return e.success?i(e.data):a(e.data)})})}},{key:"render_errors",value:function(t){return e(".woocommerce-error, .woocommerce-message").remove(),this.ui_element.prepend('"),this.ui_element.removeClass("processing").unblock(),e("html, body").animate({scrollTop:this.ui_element.offset().top-100},1e3)}},{key:"block_ui",value:function(){return this.ui_element.block({message:null,overlayCSS:{background:"#fff",opacity:.6}})}},{key:"unblock_ui",value:function(){return this.ui_element.unblock()}}]),t}(),e(document.body).trigger("sv_wc_apple_pay_handler_v5_15_8_loaded")})}).call(void 0); +function e(e,t,n,i){Object.defineProperty(e,t,{get:n,set:i,enumerable:!0,configurable:!0})}var t="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{},n={},i={},a=t.parcelRequire94c2;null==a&&((a=function(e){if(e in n)return n[e].exports;if(e in i){var t=i[e];delete i[e];var a={id:e,exports:{}};return n[e]=a,t.call(a.exports,a,a.exports),a.exports}var o=Error("Cannot find module '"+e+"'");throw o.code="MODULE_NOT_FOUND",o}).register=function(e,t){i[e]=t},t.parcelRequire94c2=a);var o=a.register;o("guLUH",function(t,n){e(t.exports,"_",function(){return i});function i(e,t){if(!(e instanceof t))throw TypeError("Cannot call a class as a function")}}),o("90XvN",function(t,n){function i(e,t){for(var n=0;n0&&void 0!==arguments[0]?arguments[0]:{};return this.block_ui(),this.get_payment_request(n).then(function(n){return e(t.button).show(),e(t.wrapper).show(),t.payment_request=JSON.parse(n),t.unblock_ui()},function(n){return console.error("[Apple Pay] Could not build payment request. "+n.message),e(t.button).hide(),1===e(t.container).children().length&&e(t.wrapper).hide(),t.unblock_ui()})}},{key:"get_payment_request",value:function(t){var n=this;return new Promise(function(i,a){var o;return o={action:"wc_".concat(n.gateway_id,"_apple_pay_get_payment_request")},e.extend(t,o),e.post(n.ajax_url,t,function(e){return e.success?i(e.data):a(e.data)})})}},{key:"render_errors",value:function(t){return e(".woocommerce-error, .woocommerce-message").remove(),this.ui_element.prepend('"),this.ui_element.removeClass("processing").unblock(),e("html, body").animate({scrollTop:this.ui_element.offset().top-100},1e3)}},{key:"block_ui",value:function(){return this.ui_element.block({message:null,overlayCSS:{background:"#fff",opacity:.6}})}},{key:"unblock_ui",value:function(){return this.ui_element.unblock()}}]),t}(),e(document.body).trigger("sv_wc_apple_pay_handler_v5_15_9_loaded")})}).call(void 0); //# sourceMappingURL=sv-wc-payment-gateway-apple-pay.js.map diff --git a/woocommerce/payment-gateway/assets/dist/frontend/sv-wc-payment-gateway-apple-pay.js.map b/woocommerce/payment-gateway/assets/dist/frontend/sv-wc-payment-gateway-apple-pay.js.map index bd02e1f5b..d91f82eba 100644 --- a/woocommerce/payment-gateway/assets/dist/frontend/sv-wc-payment-gateway-apple-pay.js.map +++ b/woocommerce/payment-gateway/assets/dist/frontend/sv-wc-payment-gateway-apple-pay.js.map @@ -1 +1 @@ -{"mappings":"A,S,E,C,C,C,C,C,C,C,E,O,c,C,E,E,C,I,E,I,E,W,C,E,a,C,C,E,C,I,E,A,a,O,W,W,A,a,O,K,K,A,a,O,O,O,A,a,O,O,O,C,E,E,C,E,E,C,E,E,E,iB,A,O,I,A,C,E,S,C,E,G,K,E,O,C,C,E,C,O,C,G,K,E,C,I,E,C,C,E,A,Q,C,C,E,C,I,E,C,G,E,Q,C,C,E,O,C,C,E,C,E,E,I,C,E,O,C,E,E,O,E,E,O,A,C,I,E,A,M,uB,E,I,O,E,I,C,mB,C,C,E,Q,C,S,C,C,C,E,C,C,E,C,C,E,E,iB,C,G,I,E,E,Q,C,E,Q,S,C,C,C,E,E,E,O,C,I,W,O,C,GCAA,SAAS,EAAkB,CAAQ,CAAE,CAAW,EAC5C,GAAI,CAAE,CAAA,aAAoB,CAAA,EAAc,MAAM,AAAI,UAAU,oCAChE,C,G,E,Q,S,C,C,C,ECFA,SAAS,EAAkB,CAAM,CAAE,CAAK,EACpC,IAAK,IAAI,EAAI,EAAG,EAAI,EAAM,MAAM,CAAE,IAAK,CACnC,IAAI,EAAa,CAAK,CAAC,EAAE,AACzB,CAAA,EAAW,UAAU,CAAG,EAAW,UAAU,EAAI,CAAA,EACjD,EAAW,YAAY,CAAG,CAAA,EAEtB,UAAW,GAAY,CAAA,EAAW,QAAQ,CAAG,CAAA,CAAjD,EAEA,OAAO,cAAc,CAAC,EAAQ,EAAW,GAAG,CAAE,EAClD,CACJ,CACA,SAAS,EAAc,CAAW,CAAE,CAAU,CAAE,CAAW,EAIvD,OAHI,GAAY,EAAkB,EAAY,SAAS,CAAE,GACrD,GAAa,EAAkB,EAAa,GAEzC,CACX,C,E,E,O,C,I,W,O,C,E,G,I,E,E,S,E,E,SCTG,AAAA,CAAA,WAEH,OAAO,SAAE,CAAF,EAibN,OA1aM,OAAO,+BAAA,CAAb,WAAA,SAAA,EAMe,CAAD,EANd,AAAA,CAAA,EAAA,EAAA,CAAA,AAAA,EAAA,IAAA,CAAA,GA0FC,IAAA,CAAA,iBAAA,CAAA,IAAA,CAAA,iBAAA,CAAA,IAAA,CAAA,IAAA,EAQA,IAAA,CAAA,cAAA,CAAA,IAAA,CAAA,cAAA,CAAA,IAAA,CAAA,IAAA,EAaA,IAAA,CAAA,kBAAA,CAAA,IAAA,CAAA,kBAAA,CAAA,IAAA,C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","sources":["","node_modules/@swc/helpers/esm/_class_call_check.js","node_modules/@swc/helpers/esm/_create_class.js","woocommerce/payment-gateway/assets/js/frontend/sv-wc-payment-gateway-apple-pay.coffee"],"sourcesContent":["\nfunction $parcel$export(e, n, v, s) {\n Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});\n}\n\n var $parcel$global =\n typeof globalThis !== 'undefined'\n ? globalThis\n : typeof self !== 'undefined'\n ? self\n : typeof window !== 'undefined'\n ? window\n : typeof global !== 'undefined'\n ? global\n : {};\n \nvar $parcel$modules = {};\nvar $parcel$inits = {};\n\nvar parcelRequire = $parcel$global[\"parcelRequire94c2\"];\n\nif (parcelRequire == null) {\n parcelRequire = function(id) {\n if (id in $parcel$modules) {\n return $parcel$modules[id].exports;\n }\n if (id in $parcel$inits) {\n var init = $parcel$inits[id];\n delete $parcel$inits[id];\n var module = {id: id, exports: {}};\n $parcel$modules[id] = module;\n init.call(module.exports, module, module.exports);\n return module.exports;\n }\n var err = new Error(\"Cannot find module '\" + id + \"'\");\n err.code = 'MODULE_NOT_FOUND';\n throw err;\n };\n\n parcelRequire.register = function register(id, init) {\n $parcel$inits[id] = init;\n };\n\n $parcel$global[\"parcelRequire94c2\"] = parcelRequire;\n}\n\nvar parcelRegister = parcelRequire.register;\nparcelRegister(\"guLUH\", function(module, exports) {\n\n$parcel$export(module.exports, \"_\", function () { return $c0249d4a3fc9bb83$export$71511d61b312f219; });\nfunction $c0249d4a3fc9bb83$export$71511d61b312f219(instance, Constructor) {\n if (!(instance instanceof Constructor)) throw new TypeError(\"Cannot call a class as a function\");\n}\n\n});\n\nparcelRegister(\"90XvN\", function(module, exports) {\n\n$parcel$export(module.exports, \"_\", function () { return $690246f0b6925227$export$71511d61b312f219; });\nfunction $690246f0b6925227$var$_defineProperties(target, props) {\n for(var i = 0; i < props.length; i++){\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\nfunction $690246f0b6925227$export$71511d61b312f219(Constructor, protoProps, staticProps) {\n if (protoProps) $690246f0b6925227$var$_defineProperties(Constructor.prototype, protoProps);\n if (staticProps) $690246f0b6925227$var$_defineProperties(Constructor, staticProps);\n return Constructor;\n}\n\n});\n\n\nvar $guLUH = parcelRequire(\"guLUH\");\n\nvar $90XvN = parcelRequire(\"90XvN\");\n(function() {\n /*\n WooCommerce Apple Pay Handler\n Version 4.7.0\n\n Copyright (c) 2016, SkyVerge, Inc.\n Licensed under the GNU General Public License v3.0\n http://www.gnu.org/licenses/gpl-3.0.html\n */ jQuery(function($) {\n \"use strict\";\n // The WooCommerce Apple Pay handler base class.\n // @since 4.7.0\n window.SV_WC_Apple_Pay_Handler_v5_15_8 = /*#__PURE__*/ function() {\n function SV_WC_Apple_Pay_Handler_v5_15_8(args) {\n (0, $guLUH._)(this, SV_WC_Apple_Pay_Handler_v5_15_8);\n // Initializes the product page.\n // @since 5.6.0\n this.init_product_page = this.init_product_page.bind(this);\n // Initializes the cart page.\n // @since 5.6.0\n this.init_cart_page = this.init_cart_page.bind(this);\n // Initializes the checkout page.\n // @since 5.6.0\n this.init_checkout_page = this.init_checkout_page.bind(this);\n // The callback for after the merchant data is validated.\n // @since 4.7.0\n this.on_validate_merchant = this.on_validate_merchant.bind(this);\n // Validates the merchant data.\n // @since 4.7.0\n // @return object\n this.validate_merchant = this.validate_merchant.bind(this);\n // Fires after a payment method has been selected.\n // @since 4.7.0\n this.on_payment_method_selected = this.on_payment_method_selected.bind(this);\n // Fires after a shipping contact has been selected.\n // @since 4.7.0\n this.on_shipping_contact_selected = this.on_shipping_contact_selected.bind(this);\n // Fires after a shipping method has been selected.\n // @since 4.7.0\n this.on_shipping_method_selected = this.on_shipping_method_selected.bind(this);\n // The callback for after the payment data is authorized.\n // @since 4.7.0\n this.on_payment_authorized = this.on_payment_authorized.bind(this);\n // Processes the transaction data.\n // @since 4.7.0\n this.process_authorization = this.process_authorization.bind(this);\n // The callback for when the payment card is cancelled/dismissed.\n // @since 4.7.0\n this.on_cancel_payment = this.on_cancel_payment.bind(this);\n // Resets the payment request via AJAX.\n // Extending handlers can call this on change events to refresh the data.\n // @since 4.7.0\n this.reset_payment_request = this.reset_payment_request.bind(this);\n // Gets the payment request via AJAX.\n // @since 4.7.0\n this.get_payment_request = this.get_payment_request.bind(this);\n this.gateway_id = args.gateway_id;\n this.gateway_slug = args.gateway_slug;\n this.merchant_id = args.merchant_id;\n this.ajax_url = args.ajax_url;\n this.validate_nonce = args.validate_nonce;\n this.recalculate_totals_nonce = args.recalculate_totals_nonce;\n this.process_nonce = args.process_nonce;\n this.payment_request = args.payment_request;\n this.generic_error = args.generic_error;\n this.wrapper = '.sv-wc-external-checkout';\n this.container = '.buttons-container';\n this.button = '.sv-wc-apple-pay-button';\n }\n (0, $90XvN._)(SV_WC_Apple_Pay_Handler_v5_15_8, [\n {\n // Determines if Apple Pay is available.\n // @since 4.7.0\n // @return bool\n key: \"is_available\",\n value: function is_available() {\n if (!window.ApplePaySession) return false;\n return ApplePaySession.canMakePaymentsWithActiveCard(this.merchant_id).then(function(canMakePayments) {\n return canMakePayments;\n });\n }\n },\n {\n // Initializes the handler.\n // @since 4.7.0\n key: \"init\",\n value: function init() {\n var _this = this;\n // hide the wrapper if Apple Pay is the only button\n if ($(this.container).children().length === 1) $(this.wrapper).hide();\n if (!this.is_available()) return;\n // initialize for the various pages\n if ($('form.cart').length) this.init_product_page();\n else if ($('form.woocommerce-cart-form').length) this.init_cart_page();\n else if ($('form.woocommerce-checkout').length) this.init_checkout_page();\n // bail if no UI was initialized\n if (!this.ui_element) return;\n if (this.payment_request) {\n $(this.button).show();\n $(this.wrapper).show();\n }\n return $(document.body).on('click', '.sv-wc-apple-pay-button', function(e) {\n var error;\n e.preventDefault();\n _this.block_ui();\n try {\n _this.session = _this.get_new_session(_this.payment_request);\n // set the payment card events\n _this.session.onvalidatemerchant = function(event) {\n return _this.on_validate_merchant(event);\n };\n _this.session.onpaymentmethodselected = function(event) {\n return _this.on_payment_method_selected(event);\n };\n _this.session.onshippingcontactselected = function(event) {\n return _this.on_shipping_contact_selected(event);\n };\n _this.session.onshippingmethodselected = function(event) {\n return _this.on_shipping_method_selected(event);\n };\n _this.session.onpaymentauthorized = function(event) {\n return _this.on_payment_authorized(event);\n };\n _this.session.oncancel = function(event) {\n return _this.on_cancel_payment(event);\n };\n return _this.session.begin();\n } catch (error1) {\n error = error1;\n return _this.fail_payment(error);\n }\n });\n }\n },\n {\n key: \"init_product_page\",\n value: function init_product_page() {\n return this.ui_element = $('form.cart');\n }\n },\n {\n key: \"init_cart_page\",\n value: function init_cart_page() {\n var _this = this;\n this.ui_element = $('form.woocommerce-cart-form').parents('div.woocommerce');\n // re-init if the cart totals are updated\n return $(document.body).on('updated_cart_totals', function() {\n return _this.reset_payment_request();\n });\n }\n },\n {\n key: \"init_checkout_page\",\n value: function init_checkout_page() {\n var _this = this;\n this.ui_element = $('form.woocommerce-checkout');\n return $(document.body).on('updated_checkout', function() {\n // re-init if the checkout is updated\n return _this.reset_payment_request();\n });\n }\n },\n {\n // Gets a new Apple Pay session.\n // @since 5.6.0\n // @param [Object] payment_request payment request object\n // @return ApplePaySession\n key: \"get_new_session\",\n value: function get_new_session(payment_request) {\n return new ApplePaySession(this.get_sdk_version(), payment_request);\n }\n },\n {\n // Gets the Apple SDK version to use.\n // @since 5.6.0\n // @return int\n key: \"get_sdk_version\",\n value: function get_sdk_version() {\n return 2;\n }\n },\n {\n key: \"on_validate_merchant\",\n value: function on_validate_merchant(event) {\n var _this = this;\n return this.validate_merchant(event.validationURL).then(function(merchant_session) {\n merchant_session = JSON.parse(merchant_session);\n return _this.session.completeMerchantValidation(merchant_session);\n }, function(response) {\n _this.session.abort();\n return _this.fail_payment('Merchant could no be validated. ' + response.message);\n });\n }\n },\n {\n key: \"validate_merchant\",\n value: function validate_merchant(url) {\n var _this = this;\n return new Promise(function(resolve, reject) {\n var data;\n data = {\n 'action': \"wc_\".concat(_this.gateway_id, \"_apple_pay_validate_merchant\"),\n 'nonce': _this.validate_nonce,\n 'merchant_id': _this.merchant_id,\n 'url': url\n };\n // retrieve a payment request object\n return $.post(_this.ajax_url, data, function(response) {\n if (response.success) return resolve(response.data);\n else return reject(response.data);\n });\n });\n }\n },\n {\n key: \"on_payment_method_selected\",\n value: function on_payment_method_selected(event) {\n var _this = this;\n return new Promise(function(resolve, reject) {\n var data;\n data = {\n 'action': \"wc_\".concat(_this.gateway_id, \"_apple_pay_recalculate_totals\"),\n 'nonce': _this.recalculate_totals_nonce\n };\n // retrieve a payment request object\n return $.post(_this.ajax_url, data, function(response) {\n if (response.success) {\n data = response.data;\n return resolve(_this.session.completePaymentMethodSelection(data.total, data.line_items));\n } else {\n console.error('[Apple Pay] Error selecting a shipping contact. ' + response.data.message);\n return reject(_this.session.completePaymentMethodSelection(_this.payment_request.total, _this.payment_request.lineItems));\n }\n });\n });\n }\n },\n {\n key: \"on_shipping_contact_selected\",\n value: function on_shipping_contact_selected(event) {\n var _this = this;\n return new Promise(function(resolve, reject) {\n var data;\n data = {\n 'action': \"wc_\".concat(_this.gateway_id, \"_apple_pay_recalculate_totals\"),\n 'nonce': _this.recalculate_totals_nonce,\n 'contact': event.shippingContact\n };\n // retrieve a payment request object\n return $.post(_this.ajax_url, data, function(response) {\n if (response.success) {\n data = response.data;\n return resolve(_this.session.completeShippingContactSelection(ApplePaySession.STATUS_SUCCESS, data.shipping_methods, data.total, data.line_items));\n } else {\n console.error('[Apple Pay] Error selecting a shipping contact. ' + response.data.message);\n return reject(_this.session.completeShippingContactSelection(ApplePaySession.STATUS_FAILURE, [], _this.payment_request.total, _this.payment_request.lineItems));\n }\n });\n });\n }\n },\n {\n key: \"on_shipping_method_selected\",\n value: function on_shipping_method_selected(event) {\n var _this = this;\n return new Promise(function(resolve, reject) {\n var data;\n data = {\n 'action': \"wc_\".concat(_this.gateway_id, \"_apple_pay_recalculate_totals\"),\n 'nonce': _this.recalculate_totals_nonce,\n 'method': event.shippingMethod.identifier\n };\n // retrieve a payment request object\n return $.post(_this.ajax_url, data, function(response) {\n if (response.success) {\n data = response.data;\n return resolve(_this.session.completeShippingMethodSelection(ApplePaySession.STATUS_SUCCESS, data.total, data.line_items));\n } else {\n console.error('[Apple Pay] Error selecting a shipping method. ' + response.data.message);\n return reject(_this.session.completeShippingMethodSelection(ApplePaySession.STATUS_FAILURE, _this.payment_request.total, _this.payment_request.lineItems));\n }\n });\n });\n }\n },\n {\n key: \"on_payment_authorized\",\n value: function on_payment_authorized(event) {\n var _this = this;\n return this.process_authorization(event.payment).then(function(response) {\n _this.set_payment_status(true);\n return _this.complete_purchase(response);\n }, function(response) {\n _this.set_payment_status(false);\n return _this.fail_payment('Payment could no be processed. ' + response.message);\n });\n }\n },\n {\n key: \"process_authorization\",\n value: function process_authorization(payment) {\n var _this = this;\n return new Promise(function(resolve, reject) {\n var data;\n data = {\n action: \"wc_\".concat(_this.gateway_id, \"_apple_pay_process_payment\"),\n nonce: _this.process_nonce,\n payment: JSON.stringify(payment)\n };\n return $.post(_this.ajax_url, data, function(response) {\n if (response.success) return resolve(response.data);\n else return reject(response.data);\n });\n });\n }\n },\n {\n key: \"on_cancel_payment\",\n value: function on_cancel_payment(event) {\n return this.unblock_ui();\n }\n },\n {\n // Completes the purchase based on the gateway result.\n // @since 4.7.0\n key: \"complete_purchase\",\n value: function complete_purchase(response) {\n return window.location = response.redirect;\n }\n },\n {\n // Fails the purchase based on the gateway result.\n // @since 4.7.0\n key: \"fail_payment\",\n value: function fail_payment(error) {\n console.error('[Apple Pay] ' + error);\n this.unblock_ui();\n return this.render_errors([\n this.generic_error\n ]);\n }\n },\n {\n // Sets the Apple Pay payment status depending on the gateway result.\n // @since 4.7.0\n key: \"set_payment_status\",\n value: function set_payment_status(success) {\n var status;\n if (success) status = ApplePaySession.STATUS_SUCCESS;\n else status = ApplePaySession.STATUS_FAILURE;\n return this.session.completePayment(status);\n }\n },\n {\n key: \"reset_payment_request\",\n value: function reset_payment_request() {\n var _this = this;\n var data = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};\n this.block_ui();\n return this.get_payment_request(data).then(function(response) {\n $(_this.button).show();\n $(_this.wrapper).show();\n _this.payment_request = JSON.parse(response);\n return _this.unblock_ui();\n }, function(response) {\n console.error('[Apple Pay] Could not build payment request. ' + response.message);\n $(_this.button).hide();\n // hide the wrapper if Apple Pay is the only button\n if ($(_this.container).children().length === 1) $(_this.wrapper).hide();\n return _this.unblock_ui();\n });\n }\n },\n {\n key: \"get_payment_request\",\n value: function get_payment_request(data) {\n var _this = this;\n return new Promise(function(resolve, reject) {\n var base_data;\n base_data = {\n 'action': \"wc_\".concat(_this.gateway_id, \"_apple_pay_get_payment_request\")\n };\n $.extend(data, base_data);\n // retrieve a payment request object\n return $.post(_this.ajax_url, data, function(response) {\n if (response.success) return resolve(response.data);\n else return reject(response.data);\n });\n });\n }\n },\n {\n // Renders any new errors and bring them into the viewport.\n // @since 4.7.0\n key: \"render_errors\",\n value: function render_errors(errors) {\n // hide and remove any previous errors\n $('.woocommerce-error, .woocommerce-message').remove();\n // add errors\n this.ui_element.prepend('
  • ' + errors.join('
  • ') + '
');\n // unblock UI\n this.ui_element.removeClass('processing').unblock();\n // scroll to top\n return $('html, body').animate({\n scrollTop: this.ui_element.offset().top - 100\n }, 1000);\n }\n },\n {\n // Blocks the payment form UI.\n // @since 4.7.0\n key: \"block_ui\",\n value: function block_ui() {\n return this.ui_element.block({\n message: null,\n overlayCSS: {\n background: '#fff',\n opacity: 0.6\n }\n });\n }\n },\n {\n // Unblocks the payment form UI.\n // @since 4.7.0\n key: \"unblock_ui\",\n value: function unblock_ui() {\n return this.ui_element.unblock();\n }\n }\n ]);\n return SV_WC_Apple_Pay_Handler_v5_15_8;\n }();\n // dispatch loaded event\n return $(document.body).trigger('sv_wc_apple_pay_handler_v5_15_8_loaded');\n });\n}).call(undefined);\n\n\n//# sourceMappingURL=sv-wc-payment-gateway-apple-pay.js.map\n","function _class_call_check(instance, Constructor) {\n if (!(instance instanceof Constructor)) throw new TypeError(\"Cannot call a class as a function\");\n}\nexport { _class_call_check as _ };\n","function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n\n if (\"value\" in descriptor) descriptor.writable = true;\n\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\nfunction _create_class(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n\n return Constructor;\n}\nexport { _create_class as _ };\n","###\n WooCommerce Apple Pay Handler\n Version 4.7.0\n\n Copyright (c) 2016, SkyVerge, Inc.\n Licensed under the GNU General Public License v3.0\n http://www.gnu.org/licenses/gpl-3.0.html\n###\n\njQuery ( $ ) ->\n\n\t\"use strict\"\n\n\t# The WooCommerce Apple Pay handler base class.\n\t#\n\t# @since 4.7.0\n\tclass window.SV_WC_Apple_Pay_Handler_v5_15_8\n\n\n\t\t# Constructs the handler.\n\t\t#\n\t\t# @since 4.7.0\n\t\tconstructor: (args) ->\n\n\t\t\t@gateway_id = args.gateway_id\n\t\t\t@gateway_slug = args.gateway_slug\n\t\t\t@merchant_id = args.merchant_id\n\t\t\t@ajax_url = args.ajax_url\n\t\t\t@validate_nonce = args.validate_nonce\n\t\t\t@recalculate_totals_nonce = args.recalculate_totals_nonce\n\t\t\t@process_nonce = args.process_nonce\n\t\t\t@payment_request = args.payment_request\n\t\t\t@generic_error = args.generic_error\n\n\t\t\t@wrapper = '.sv-wc-external-checkout'\n\t\t\t@container = '.buttons-container'\n\t\t\t@button = '.sv-wc-apple-pay-button'\n\n\n\t\t# Determines if Apple Pay is available.\n\t\t#\n\t\t# @since 4.7.0\n\t\t# @return bool\n\t\tis_available: ->\n\n\t\t\treturn false unless window.ApplePaySession\n\n\t\t\tApplePaySession.canMakePaymentsWithActiveCard( @merchant_id ).then ( canMakePayments ) =>\n\n\t\t\t\treturn canMakePayments\n\n\n\t\t# Initializes the handler.\n\t\t#\n\t\t# @since 4.7.0\n\t\tinit: ->\n\n\t\t\t# hide the wrapper if Apple Pay is the only button\n\t\t\tif $( @container ).children().length is 1\n\t\t\t\t$( @wrapper ).hide()\n\n\t\t\treturn unless this.is_available()\n\n\t\t\t# initialize for the various pages\n\t\t\tif $( 'form.cart' ).length\n\t\t\t\tthis.init_product_page()\n\t\t\telse if $( 'form.woocommerce-cart-form' ).length\n\t\t\t\tthis.init_cart_page()\n\t\t\telse if $( 'form.woocommerce-checkout' ).length\n\t\t\t\tthis.init_checkout_page()\n\n\t\t\t# bail if no UI was initialized\n\t\t\treturn unless @ui_element\n\n\t\t\tif @payment_request\n\t\t\t\t$( @button ).show()\n\t\t\t\t$( @wrapper ).show()\n\n\t\t\t$( document.body ).on 'click', '.sv-wc-apple-pay-button', ( e ) =>\n\n\t\t\t\te.preventDefault()\n\n\t\t\t\tthis.block_ui()\n\n\t\t\t\ttry\n\n\t\t\t\t\t@session = this.get_new_session( @payment_request )\n\n\t\t\t\t\t# set the payment card events\n\t\t\t\t\t@session.onvalidatemerchant = ( event ) => this.on_validate_merchant( event )\n\t\t\t\t\t@session.onpaymentmethodselected = ( event ) => this.on_payment_method_selected( event )\n\t\t\t\t\t@session.onshippingcontactselected = ( event ) => this.on_shipping_contact_selected( event )\n\t\t\t\t\t@session.onshippingmethodselected = ( event ) => this.on_shipping_method_selected( event )\n\t\t\t\t\t@session.onpaymentauthorized = ( event ) => this.on_payment_authorized( event )\n\t\t\t\t\t@session.oncancel = ( event ) => this.on_cancel_payment( event )\n\n\t\t\t\t\t@session.begin()\n\n\t\t\t\tcatch error\n\n\t\t\t\t\tthis.fail_payment( error )\n\n\n\t\t# Initializes the product page.\n\t\t#\n\t\t# @since 5.6.0\n\t\tinit_product_page: =>\n\n\t\t\t@ui_element = $( 'form.cart' )\n\n\n\t\t# Initializes the cart page.\n\t\t#\n\t\t# @since 5.6.0\n\t\tinit_cart_page: =>\n\n\t\t\t@ui_element = $( 'form.woocommerce-cart-form' ).parents( 'div.woocommerce' )\n\n\t\t\t# re-init if the cart totals are updated\n\t\t\t$( document.body ).on 'updated_cart_totals', =>\n\n\t\t\t\tthis.reset_payment_request()\n\n\n\t\t# Initializes the checkout page.\n\t\t#\n\t\t# @since 5.6.0\n\t\tinit_checkout_page: =>\n\n\t\t\t@ui_element = $( 'form.woocommerce-checkout' )\n\n\t\t\t$( document.body ).on 'updated_checkout', =>\n\n\t\t\t\t# re-init if the checkout is updated\n\t\t\t\tthis.reset_payment_request()\n\n\n\t\t# Gets a new Apple Pay session.\n\t\t#\n\t\t# @since 5.6.0\n\t\t#\n\t\t# @param [Object] payment_request payment request object\n\t\t# @return ApplePaySession\n\t\tget_new_session: ( payment_request ) ->\n\n\t\t\treturn new ApplePaySession( this.get_sdk_version(), payment_request )\n\n\n\t\t# Gets the Apple SDK version to use.\n\t\t#\n\t\t# @since 5.6.0\n\t\t# @return int\n\t\tget_sdk_version: ->\n\n\t\t\treturn 2\n\n\n\t\t# The callback for after the merchant data is validated.\n\t\t#\n\t\t# @since 4.7.0\n\t\ton_validate_merchant: ( event ) =>\n\n\t\t\tthis.validate_merchant( event.validationURL ).then ( merchant_session ) =>\n\n\t\t\t\tmerchant_session = JSON.parse( merchant_session )\n\n\t\t\t\t@session.completeMerchantValidation( merchant_session )\n\n\t\t\t, ( response ) =>\n\n\t\t\t\t@session.abort()\n\n\t\t\t\tthis.fail_payment 'Merchant could no be validated. ' + response.message\n\n\n\t\t# Validates the merchant data.\n\t\t#\n\t\t# @since 4.7.0\n\t\t# @return object\n\t\tvalidate_merchant: ( url ) => new Promise ( resolve, reject ) =>\n\n\t\t\tdata = {\n\t\t\t\t'action': \"wc_#{ @gateway_id }_apple_pay_validate_merchant\",\n\t\t\t\t'nonce': @validate_nonce,\n\t\t\t\t'merchant_id': @merchant_id,\n\t\t\t\t'url': url\n\t\t\t}\n\n\t\t\t# retrieve a payment request object\n\t\t\t$.post @ajax_url, data, ( response ) =>\n\n\t\t\t\tif response.success\n\t\t\t\t\tresolve response.data\n\t\t\t\telse\n\t\t\t\t\treject response.data\n\n\n\t\t# Fires after a payment method has been selected.\n\t\t#\n\t\t# @since 4.7.0\n\t\ton_payment_method_selected: ( event ) =>\n\n\t\t\tnew Promise ( resolve, reject ) =>\n\n\t\t\t\tdata = {\n\t\t\t\t\t'action': \"wc_#{ @gateway_id }_apple_pay_recalculate_totals\",\n\t\t\t\t\t'nonce': @recalculate_totals_nonce,\n\t\t\t\t}\n\n\t\t\t\t# retrieve a payment request object\n\t\t\t\t$.post @ajax_url, data, ( response ) =>\n\n\t\t\t\t\tif response.success\n\n\t\t\t\t\t\tdata = response.data\n\n\t\t\t\t\t\tresolve @session.completePaymentMethodSelection( data.total, data.line_items )\n\n\t\t\t\t\telse\n\n\t\t\t\t\t\tconsole.error '[Apple Pay] Error selecting a shipping contact. ' + response.data.message\n\n\t\t\t\t\t\treject @session.completePaymentMethodSelection( @payment_request.total, @payment_request.lineItems )\n\n\n\t\t# Fires after a shipping contact has been selected.\n\t\t#\n\t\t# @since 4.7.0\n\t\ton_shipping_contact_selected: ( event ) =>\n\n\t\t\tnew Promise ( resolve, reject ) =>\n\n\t\t\t\tdata = {\n\t\t\t\t\t'action': \"wc_#{ @gateway_id }_apple_pay_recalculate_totals\",\n\t\t\t\t\t'nonce': @recalculate_totals_nonce,\n\t\t\t\t\t'contact': event.shippingContact\n\t\t\t\t}\n\n\t\t\t\t# retrieve a payment request object\n\t\t\t\t$.post @ajax_url, data, ( response ) =>\n\n\t\t\t\t\tif response.success\n\n\t\t\t\t\t\tdata = response.data\n\n\t\t\t\t\t\tresolve @session.completeShippingContactSelection( ApplePaySession.STATUS_SUCCESS, data.shipping_methods, data.total, data.line_items )\n\n\t\t\t\t\telse\n\n\t\t\t\t\t\tconsole.error '[Apple Pay] Error selecting a shipping contact. ' + response.data.message\n\n\t\t\t\t\t\treject @session.completeShippingContactSelection( ApplePaySession.STATUS_FAILURE, [], @payment_request.total, @payment_request.lineItems )\n\n\n\t\t# Fires after a shipping method has been selected.\n\t\t#\n\t\t# @since 4.7.0\n\t\ton_shipping_method_selected: ( event ) =>\n\n\t\t\tnew Promise ( resolve, reject ) =>\n\n\t\t\t\tdata = {\n\t\t\t\t\t'action': \"wc_#{ @gateway_id }_apple_pay_recalculate_totals\",\n\t\t\t\t\t'nonce': @recalculate_totals_nonce,\n\t\t\t\t\t'method': event.shippingMethod.identifier\n\t\t\t\t}\n\n\t\t\t\t# retrieve a payment request object\n\t\t\t\t$.post @ajax_url, data, ( response ) =>\n\n\t\t\t\t\tif response.success\n\n\t\t\t\t\t\tdata = response.data\n\n\t\t\t\t\t\tresolve @session.completeShippingMethodSelection( ApplePaySession.STATUS_SUCCESS, data.total, data.line_items )\n\n\t\t\t\t\telse\n\n\t\t\t\t\t\tconsole.error '[Apple Pay] Error selecting a shipping method. ' + response.data.message\n\n\t\t\t\t\t\treject @session.completeShippingMethodSelection( ApplePaySession.STATUS_FAILURE, @payment_request.total, @payment_request.lineItems )\n\n\n\t\t# The callback for after the payment data is authorized.\n\t\t#\n\t\t# @since 4.7.0\n\t\ton_payment_authorized: ( event ) =>\n\n\t\t\tthis.process_authorization( event.payment ).then ( response ) =>\n\n\t\t\t\tthis.set_payment_status( true )\n\n\t\t\t\tthis.complete_purchase( response )\n\n\t\t\t, ( response ) =>\n\n\t\t\t\tthis.set_payment_status( false )\n\n\t\t\t\tthis.fail_payment 'Payment could no be processed. ' + response.message\n\n\n\t\t# Processes the transaction data.\n\t\t#\n\t\t# @since 4.7.0\n\t\tprocess_authorization: ( payment ) => new Promise ( resolve, reject ) =>\n\n\t\t\tdata = {\n\t\t\t\taction: \"wc_#{ @gateway_id }_apple_pay_process_payment\",\n\t\t\t\tnonce: @process_nonce,\n\t\t\t\tpayment: JSON.stringify( payment )\n\t\t\t}\n\n\t\t\t$.post @ajax_url, data, ( response ) =>\n\n\t\t\t\tif response.success\n\t\t\t\t\tresolve response.data\n\t\t\t\telse\n\t\t\t\t\treject response.data\n\n\n\t\t# The callback for when the payment card is cancelled/dismissed.\n\t\t#\n\t\t# @since 4.7.0\n\t\ton_cancel_payment: ( event ) =>\n\n\t\t\tthis.unblock_ui()\n\n\n\t\t# Completes the purchase based on the gateway result.\n\t\t#\n\t\t# @since 4.7.0\n\t\tcomplete_purchase: ( response ) ->\n\n\t\t\twindow.location = response.redirect\n\n\n\t\t# Fails the purchase based on the gateway result.\n\t\t#\n\t\t# @since 4.7.0\n\t\tfail_payment: ( error ) ->\n\n\t\t\tconsole.error '[Apple Pay] ' + error\n\n\t\t\tthis.unblock_ui()\n\n\t\t\tthis.render_errors( [ @generic_error ] )\n\n\n\t\t# Sets the Apple Pay payment status depending on the gateway result.\n\t\t#\n\t\t# @since 4.7.0\n\t\tset_payment_status: ( success ) ->\n\n\t\t\tif success\n\t\t\t\tstatus = ApplePaySession.STATUS_SUCCESS\n\t\t\telse\n\t\t\t\tstatus = ApplePaySession.STATUS_FAILURE\n\n\t\t\t@session.completePayment( status )\n\n\n\t\t# Resets the payment request via AJAX.\n\t\t#\n\t\t# Extending handlers can call this on change events to refresh the data.\n\t\t#\n\t\t# @since 4.7.0\n\t\treset_payment_request: ( data = {} ) =>\n\n\t\t\tthis.block_ui()\n\n\t\t\tthis.get_payment_request( data ).then ( response ) =>\n\n\t\t\t\t$( @button ).show()\n\t\t\t\t$( @wrapper ).show()\n\n\t\t\t\t@payment_request = JSON.parse( response )\n\n\t\t\t\tthis.unblock_ui()\n\n\t\t\t, ( response ) =>\n\n\t\t\t\tconsole.error '[Apple Pay] Could not build payment request. ' + response.message\n\n\t\t\t\t$( @button ).hide()\n\t\t\t\t# hide the wrapper if Apple Pay is the only button\n\t\t\t\tif $( @container ).children().length is 1\n\t\t\t\t\t$( @wrapper ).hide()\n\n\t\t\t\tthis.unblock_ui()\n\n\n\t\t# Gets the payment request via AJAX.\n\t\t#\n\t\t# @since 4.7.0\n\t\tget_payment_request: ( data ) => new Promise ( resolve, reject ) =>\n\n\t\t\tbase_data = {\n\t\t\t\t'action': \"wc_#{ @gateway_id }_apple_pay_get_payment_request\"\n\t\t\t}\n\n\t\t\t$.extend data, base_data\n\n\t\t\t# retrieve a payment request object\n\t\t\t$.post @ajax_url, data, ( response ) =>\n\n\t\t\t\tif response.success\n\t\t\t\t\tresolve response.data\n\t\t\t\telse\n\t\t\t\t\treject response.data\n\n\n\t\t# Renders any new errors and bring them into the viewport.\n\t\t#\n\t\t# @since 4.7.0\n\t\trender_errors: ( errors ) ->\n\n\t\t\t# hide and remove any previous errors\n\t\t\t$( '.woocommerce-error, .woocommerce-message' ).remove()\n\n\t\t\t# add errors\n\t\t\t@ui_element.prepend '
  • ' + errors.join( '
  • ' ) + '
'\n\n\t\t\t# unblock UI\n\t\t\t@ui_element.removeClass( 'processing' ).unblock()\n\n\t\t\t# scroll to top\n\t\t\t$( 'html, body' ).animate( { scrollTop: @ui_element.offset().top - 100 }, 1000 )\n\n\n\t\t# Blocks the payment form UI.\n\t\t#\n\t\t# @since 4.7.0\n\t\tblock_ui: -> @ui_element.block( message: null, overlayCSS: background: '#fff', opacity: 0.6 )\n\n\n\t\t# Unblocks the payment form UI.\n\t\t#\n\t\t# @since 4.7.0\n\t\tunblock_ui: -> @ui_element.unblock()\n\n\n\t# dispatch loaded event\n\t$( document.body ).trigger( 'sv_wc_apple_pay_handler_v5_15_8_loaded' )\n"],"names":["$parcel$export","e","n","v","s","Object","defineProperty","get","set","enumerable","configurable","$parcel$global","globalThis","self","window","global","$parcel$modules","$parcel$inits","parcelRequire","id","exports","init","module","call","err","Error","code","register","parcelRegister","$c0249d4a3fc9bb83$export$71511d61b312f219","instance","Constructor","TypeError","$690246f0b6925227$var$_defineProperties","target","props","i","length","descriptor","writable","key","$690246f0b6925227$export$71511d61b312f219","protoProps","staticProps","prototype","$guLUH","$90XvN","jQuery","$","SV_WC_Apple_Pay_Handler_v5_15_8","args","_","init_product_page","bind","init_cart_page","init_checkout_page","on_validate_merchant","validate_merchant","on_payment_method_selected","on_shipping_contact_selected","on_shipping_method_selected","on_payment_authorized","process_authorization","on_cancel_payment","reset_payment_request","get_payment_request","gateway_id","gateway_slug","merchant_id","ajax_url","validate_nonce","recalculate_totals_nonce","process_nonce","payment_request","generic_error","wrapper","container","button","value","ApplePaySession","canMakePaymentsWithActiveCard","then","canMakePayments","_this","children","hide","is_available","ui_element","show","document","body","on","preventDefault","block_ui","session","get_new_session","onvalidatemerchant","event","onpaymentmethodselected","onshippingcontactselected","onshippingmethodselected","onpaymentauthorized","oncancel","begin","error1","fail_payment","parents","get_sdk_version","validationURL","merchant_session","JSON","parse","completeMerchantValidation","response","abort","message","url","Promise","resolve","reject","data","concat","post","success","completePaymentMethodSelection","total","line_items","console","error","lineItems","shippingContact","completeShippingContactSelection","STATUS_SUCCESS","shipping_methods","STATUS_FAILURE","shippingMethod","identifier","completeShippingMethodSelection","payment","set_payment_status","complete_purchase","action","nonce","stringify","unblock_ui","location","redirect","render_errors","status","completePayment","arguments","base_data","extend","errors","remove","prepend","join","removeClass","unblock","animate","scrollTop","offset","top","block","overlayCSS","background","opacity","trigger","undefined"],"version":3,"file":"sv-wc-payment-gateway-apple-pay.js.map","sourceRoot":"../../../../../"} \ No newline at end of file +{"mappings":"A,S,E,C,C,C,C,C,C,C,E,O,c,C,E,E,C,I,E,I,E,W,C,E,a,C,C,E,C,I,E,A,a,O,W,W,A,a,O,K,K,A,a,O,O,O,A,a,O,O,O,C,E,E,C,E,E,C,E,E,E,iB,A,O,I,A,C,E,S,C,E,G,K,E,O,C,C,E,C,O,C,G,K,E,C,I,E,C,C,E,A,Q,C,C,E,C,I,E,C,G,E,Q,C,C,E,O,C,C,E,C,E,E,I,C,E,O,C,E,E,O,E,E,O,A,C,I,E,A,M,uB,E,I,O,E,I,C,mB,C,C,E,Q,C,S,C,C,C,E,C,C,E,C,C,E,E,iB,C,G,I,E,E,Q,C,E,Q,S,C,C,C,E,E,E,O,C,I,W,O,C,GCAA,SAAS,EAAkB,CAAQ,CAAE,CAAW,EAC5C,GAAI,CAAE,CAAA,aAAoB,CAAA,EAAc,MAAM,AAAI,UAAU,oCAChE,C,G,E,Q,S,C,C,C,ECFA,SAAS,EAAkB,CAAM,CAAE,CAAK,EACpC,IAAK,IAAI,EAAI,EAAG,EAAI,EAAM,MAAM,CAAE,IAAK,CACnC,IAAI,EAAa,CAAK,CAAC,EAAE,AACzB,CAAA,EAAW,UAAU,CAAG,EAAW,UAAU,EAAI,CAAA,EACjD,EAAW,YAAY,CAAG,CAAA,EAEtB,UAAW,GAAY,CAAA,EAAW,QAAQ,CAAG,CAAA,CAAjD,EAEA,OAAO,cAAc,CAAC,EAAQ,EAAW,GAAG,CAAE,EAClD,CACJ,CACA,SAAS,EAAc,CAAW,CAAE,CAAU,CAAE,CAAW,EAIvD,OAHI,GAAY,EAAkB,EAAY,SAAS,CAAE,GACrD,GAAa,EAAkB,EAAa,GAEzC,CACX,C,E,E,O,C,I,W,O,C,E,G,I,E,E,S,E,E,SCTG,AAAA,CAAA,WAEH,OAAO,SAAE,CAAF,EAibN,OA1aM,OAAO,+BAAA,CAAb,WAAA,SAAA,EAMe,CAAD,EANd,AAAA,CAAA,EAAA,EAAA,CAAA,AAAA,EAAA,IAAA,CAAA,GA0FC,IAAA,CAAA,iBAAA,CAAA,IAAA,CAAA,iBAAA,CAAA,IAAA,CAAA,IAAA,EAQA,IAAA,CAAA,cAAA,CAAA,IAAA,CAAA,cAAA,CAAA,IAAA,CAAA,IAAA,EAaA,IAAA,CAAA,kBAAA,CAAA,IAAA,CAAA,kBAAA,CAAA,IAAA,C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","sources":["","node_modules/@swc/helpers/esm/_class_call_check.js","node_modules/@swc/helpers/esm/_create_class.js","woocommerce/payment-gateway/assets/js/frontend/sv-wc-payment-gateway-apple-pay.coffee"],"sourcesContent":["\nfunction $parcel$export(e, n, v, s) {\n Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});\n}\n\n var $parcel$global =\n typeof globalThis !== 'undefined'\n ? globalThis\n : typeof self !== 'undefined'\n ? self\n : typeof window !== 'undefined'\n ? window\n : typeof global !== 'undefined'\n ? global\n : {};\n \nvar $parcel$modules = {};\nvar $parcel$inits = {};\n\nvar parcelRequire = $parcel$global[\"parcelRequire94c2\"];\n\nif (parcelRequire == null) {\n parcelRequire = function(id) {\n if (id in $parcel$modules) {\n return $parcel$modules[id].exports;\n }\n if (id in $parcel$inits) {\n var init = $parcel$inits[id];\n delete $parcel$inits[id];\n var module = {id: id, exports: {}};\n $parcel$modules[id] = module;\n init.call(module.exports, module, module.exports);\n return module.exports;\n }\n var err = new Error(\"Cannot find module '\" + id + \"'\");\n err.code = 'MODULE_NOT_FOUND';\n throw err;\n };\n\n parcelRequire.register = function register(id, init) {\n $parcel$inits[id] = init;\n };\n\n $parcel$global[\"parcelRequire94c2\"] = parcelRequire;\n}\n\nvar parcelRegister = parcelRequire.register;\nparcelRegister(\"guLUH\", function(module, exports) {\n\n$parcel$export(module.exports, \"_\", function () { return $c0249d4a3fc9bb83$export$71511d61b312f219; });\nfunction $c0249d4a3fc9bb83$export$71511d61b312f219(instance, Constructor) {\n if (!(instance instanceof Constructor)) throw new TypeError(\"Cannot call a class as a function\");\n}\n\n});\n\nparcelRegister(\"90XvN\", function(module, exports) {\n\n$parcel$export(module.exports, \"_\", function () { return $690246f0b6925227$export$71511d61b312f219; });\nfunction $690246f0b6925227$var$_defineProperties(target, props) {\n for(var i = 0; i < props.length; i++){\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\nfunction $690246f0b6925227$export$71511d61b312f219(Constructor, protoProps, staticProps) {\n if (protoProps) $690246f0b6925227$var$_defineProperties(Constructor.prototype, protoProps);\n if (staticProps) $690246f0b6925227$var$_defineProperties(Constructor, staticProps);\n return Constructor;\n}\n\n});\n\n\nvar $guLUH = parcelRequire(\"guLUH\");\n\nvar $90XvN = parcelRequire(\"90XvN\");\n(function() {\n /*\n WooCommerce Apple Pay Handler\n Version 4.7.0\n\n Copyright (c) 2016, SkyVerge, Inc.\n Licensed under the GNU General Public License v3.0\n http://www.gnu.org/licenses/gpl-3.0.html\n */ jQuery(function($) {\n \"use strict\";\n // The WooCommerce Apple Pay handler base class.\n // @since 4.7.0\n window.SV_WC_Apple_Pay_Handler_v5_15_9 = /*#__PURE__*/ function() {\n function SV_WC_Apple_Pay_Handler_v5_15_9(args) {\n (0, $guLUH._)(this, SV_WC_Apple_Pay_Handler_v5_15_9);\n // Initializes the product page.\n // @since 5.6.0\n this.init_product_page = this.init_product_page.bind(this);\n // Initializes the cart page.\n // @since 5.6.0\n this.init_cart_page = this.init_cart_page.bind(this);\n // Initializes the checkout page.\n // @since 5.6.0\n this.init_checkout_page = this.init_checkout_page.bind(this);\n // The callback for after the merchant data is validated.\n // @since 4.7.0\n this.on_validate_merchant = this.on_validate_merchant.bind(this);\n // Validates the merchant data.\n // @since 4.7.0\n // @return object\n this.validate_merchant = this.validate_merchant.bind(this);\n // Fires after a payment method has been selected.\n // @since 4.7.0\n this.on_payment_method_selected = this.on_payment_method_selected.bind(this);\n // Fires after a shipping contact has been selected.\n // @since 4.7.0\n this.on_shipping_contact_selected = this.on_shipping_contact_selected.bind(this);\n // Fires after a shipping method has been selected.\n // @since 4.7.0\n this.on_shipping_method_selected = this.on_shipping_method_selected.bind(this);\n // The callback for after the payment data is authorized.\n // @since 4.7.0\n this.on_payment_authorized = this.on_payment_authorized.bind(this);\n // Processes the transaction data.\n // @since 4.7.0\n this.process_authorization = this.process_authorization.bind(this);\n // The callback for when the payment card is cancelled/dismissed.\n // @since 4.7.0\n this.on_cancel_payment = this.on_cancel_payment.bind(this);\n // Resets the payment request via AJAX.\n // Extending handlers can call this on change events to refresh the data.\n // @since 4.7.0\n this.reset_payment_request = this.reset_payment_request.bind(this);\n // Gets the payment request via AJAX.\n // @since 4.7.0\n this.get_payment_request = this.get_payment_request.bind(this);\n this.gateway_id = args.gateway_id;\n this.gateway_slug = args.gateway_slug;\n this.merchant_id = args.merchant_id;\n this.ajax_url = args.ajax_url;\n this.validate_nonce = args.validate_nonce;\n this.recalculate_totals_nonce = args.recalculate_totals_nonce;\n this.process_nonce = args.process_nonce;\n this.payment_request = args.payment_request;\n this.generic_error = args.generic_error;\n this.wrapper = '.sv-wc-external-checkout';\n this.container = '.buttons-container';\n this.button = '.sv-wc-apple-pay-button';\n }\n (0, $90XvN._)(SV_WC_Apple_Pay_Handler_v5_15_9, [\n {\n // Determines if Apple Pay is available.\n // @since 4.7.0\n // @return bool\n key: \"is_available\",\n value: function is_available() {\n if (!window.ApplePaySession) return false;\n return ApplePaySession.canMakePaymentsWithActiveCard(this.merchant_id).then(function(canMakePayments) {\n return canMakePayments;\n });\n }\n },\n {\n // Initializes the handler.\n // @since 4.7.0\n key: \"init\",\n value: function init() {\n var _this = this;\n // hide the wrapper if Apple Pay is the only button\n if ($(this.container).children().length === 1) $(this.wrapper).hide();\n if (!this.is_available()) return;\n // initialize for the various pages\n if ($('form.cart').length) this.init_product_page();\n else if ($('form.woocommerce-cart-form').length) this.init_cart_page();\n else if ($('form.woocommerce-checkout').length) this.init_checkout_page();\n // bail if no UI was initialized\n if (!this.ui_element) return;\n if (this.payment_request) {\n $(this.button).show();\n $(this.wrapper).show();\n }\n return $(document.body).on('click', '.sv-wc-apple-pay-button', function(e) {\n var error;\n e.preventDefault();\n _this.block_ui();\n try {\n _this.session = _this.get_new_session(_this.payment_request);\n // set the payment card events\n _this.session.onvalidatemerchant = function(event) {\n return _this.on_validate_merchant(event);\n };\n _this.session.onpaymentmethodselected = function(event) {\n return _this.on_payment_method_selected(event);\n };\n _this.session.onshippingcontactselected = function(event) {\n return _this.on_shipping_contact_selected(event);\n };\n _this.session.onshippingmethodselected = function(event) {\n return _this.on_shipping_method_selected(event);\n };\n _this.session.onpaymentauthorized = function(event) {\n return _this.on_payment_authorized(event);\n };\n _this.session.oncancel = function(event) {\n return _this.on_cancel_payment(event);\n };\n return _this.session.begin();\n } catch (error1) {\n error = error1;\n return _this.fail_payment(error);\n }\n });\n }\n },\n {\n key: \"init_product_page\",\n value: function init_product_page() {\n return this.ui_element = $('form.cart');\n }\n },\n {\n key: \"init_cart_page\",\n value: function init_cart_page() {\n var _this = this;\n this.ui_element = $('form.woocommerce-cart-form').parents('div.woocommerce');\n // re-init if the cart totals are updated\n return $(document.body).on('updated_cart_totals', function() {\n return _this.reset_payment_request();\n });\n }\n },\n {\n key: \"init_checkout_page\",\n value: function init_checkout_page() {\n var _this = this;\n this.ui_element = $('form.woocommerce-checkout');\n return $(document.body).on('updated_checkout', function() {\n // re-init if the checkout is updated\n return _this.reset_payment_request();\n });\n }\n },\n {\n // Gets a new Apple Pay session.\n // @since 5.6.0\n // @param [Object] payment_request payment request object\n // @return ApplePaySession\n key: \"get_new_session\",\n value: function get_new_session(payment_request) {\n return new ApplePaySession(this.get_sdk_version(), payment_request);\n }\n },\n {\n // Gets the Apple SDK version to use.\n // @since 5.6.0\n // @return int\n key: \"get_sdk_version\",\n value: function get_sdk_version() {\n return 2;\n }\n },\n {\n key: \"on_validate_merchant\",\n value: function on_validate_merchant(event) {\n var _this = this;\n return this.validate_merchant(event.validationURL).then(function(merchant_session) {\n merchant_session = JSON.parse(merchant_session);\n return _this.session.completeMerchantValidation(merchant_session);\n }, function(response) {\n _this.session.abort();\n return _this.fail_payment('Merchant could no be validated. ' + response.message);\n });\n }\n },\n {\n key: \"validate_merchant\",\n value: function validate_merchant(url) {\n var _this = this;\n return new Promise(function(resolve, reject) {\n var data;\n data = {\n 'action': \"wc_\".concat(_this.gateway_id, \"_apple_pay_validate_merchant\"),\n 'nonce': _this.validate_nonce,\n 'merchant_id': _this.merchant_id,\n 'url': url\n };\n // retrieve a payment request object\n return $.post(_this.ajax_url, data, function(response) {\n if (response.success) return resolve(response.data);\n else return reject(response.data);\n });\n });\n }\n },\n {\n key: \"on_payment_method_selected\",\n value: function on_payment_method_selected(event) {\n var _this = this;\n return new Promise(function(resolve, reject) {\n var data;\n data = {\n 'action': \"wc_\".concat(_this.gateway_id, \"_apple_pay_recalculate_totals\"),\n 'nonce': _this.recalculate_totals_nonce\n };\n // retrieve a payment request object\n return $.post(_this.ajax_url, data, function(response) {\n if (response.success) {\n data = response.data;\n return resolve(_this.session.completePaymentMethodSelection(data.total, data.line_items));\n } else {\n console.error('[Apple Pay] Error selecting a shipping contact. ' + response.data.message);\n return reject(_this.session.completePaymentMethodSelection(_this.payment_request.total, _this.payment_request.lineItems));\n }\n });\n });\n }\n },\n {\n key: \"on_shipping_contact_selected\",\n value: function on_shipping_contact_selected(event) {\n var _this = this;\n return new Promise(function(resolve, reject) {\n var data;\n data = {\n 'action': \"wc_\".concat(_this.gateway_id, \"_apple_pay_recalculate_totals\"),\n 'nonce': _this.recalculate_totals_nonce,\n 'contact': event.shippingContact\n };\n // retrieve a payment request object\n return $.post(_this.ajax_url, data, function(response) {\n if (response.success) {\n data = response.data;\n return resolve(_this.session.completeShippingContactSelection(ApplePaySession.STATUS_SUCCESS, data.shipping_methods, data.total, data.line_items));\n } else {\n console.error('[Apple Pay] Error selecting a shipping contact. ' + response.data.message);\n return reject(_this.session.completeShippingContactSelection(ApplePaySession.STATUS_FAILURE, [], _this.payment_request.total, _this.payment_request.lineItems));\n }\n });\n });\n }\n },\n {\n key: \"on_shipping_method_selected\",\n value: function on_shipping_method_selected(event) {\n var _this = this;\n return new Promise(function(resolve, reject) {\n var data;\n data = {\n 'action': \"wc_\".concat(_this.gateway_id, \"_apple_pay_recalculate_totals\"),\n 'nonce': _this.recalculate_totals_nonce,\n 'method': event.shippingMethod.identifier\n };\n // retrieve a payment request object\n return $.post(_this.ajax_url, data, function(response) {\n if (response.success) {\n data = response.data;\n return resolve(_this.session.completeShippingMethodSelection(ApplePaySession.STATUS_SUCCESS, data.total, data.line_items));\n } else {\n console.error('[Apple Pay] Error selecting a shipping method. ' + response.data.message);\n return reject(_this.session.completeShippingMethodSelection(ApplePaySession.STATUS_FAILURE, _this.payment_request.total, _this.payment_request.lineItems));\n }\n });\n });\n }\n },\n {\n key: \"on_payment_authorized\",\n value: function on_payment_authorized(event) {\n var _this = this;\n return this.process_authorization(event.payment).then(function(response) {\n _this.set_payment_status(true);\n return _this.complete_purchase(response);\n }, function(response) {\n _this.set_payment_status(false);\n return _this.fail_payment('Payment could no be processed. ' + response.message);\n });\n }\n },\n {\n key: \"process_authorization\",\n value: function process_authorization(payment) {\n var _this = this;\n return new Promise(function(resolve, reject) {\n var data;\n data = {\n action: \"wc_\".concat(_this.gateway_id, \"_apple_pay_process_payment\"),\n nonce: _this.process_nonce,\n payment: JSON.stringify(payment)\n };\n return $.post(_this.ajax_url, data, function(response) {\n if (response.success) return resolve(response.data);\n else return reject(response.data);\n });\n });\n }\n },\n {\n key: \"on_cancel_payment\",\n value: function on_cancel_payment(event) {\n return this.unblock_ui();\n }\n },\n {\n // Completes the purchase based on the gateway result.\n // @since 4.7.0\n key: \"complete_purchase\",\n value: function complete_purchase(response) {\n return window.location = response.redirect;\n }\n },\n {\n // Fails the purchase based on the gateway result.\n // @since 4.7.0\n key: \"fail_payment\",\n value: function fail_payment(error) {\n console.error('[Apple Pay] ' + error);\n this.unblock_ui();\n return this.render_errors([\n this.generic_error\n ]);\n }\n },\n {\n // Sets the Apple Pay payment status depending on the gateway result.\n // @since 4.7.0\n key: \"set_payment_status\",\n value: function set_payment_status(success) {\n var status;\n if (success) status = ApplePaySession.STATUS_SUCCESS;\n else status = ApplePaySession.STATUS_FAILURE;\n return this.session.completePayment(status);\n }\n },\n {\n key: \"reset_payment_request\",\n value: function reset_payment_request() {\n var _this = this;\n var data = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};\n this.block_ui();\n return this.get_payment_request(data).then(function(response) {\n $(_this.button).show();\n $(_this.wrapper).show();\n _this.payment_request = JSON.parse(response);\n return _this.unblock_ui();\n }, function(response) {\n console.error('[Apple Pay] Could not build payment request. ' + response.message);\n $(_this.button).hide();\n // hide the wrapper if Apple Pay is the only button\n if ($(_this.container).children().length === 1) $(_this.wrapper).hide();\n return _this.unblock_ui();\n });\n }\n },\n {\n key: \"get_payment_request\",\n value: function get_payment_request(data) {\n var _this = this;\n return new Promise(function(resolve, reject) {\n var base_data;\n base_data = {\n 'action': \"wc_\".concat(_this.gateway_id, \"_apple_pay_get_payment_request\")\n };\n $.extend(data, base_data);\n // retrieve a payment request object\n return $.post(_this.ajax_url, data, function(response) {\n if (response.success) return resolve(response.data);\n else return reject(response.data);\n });\n });\n }\n },\n {\n // Renders any new errors and bring them into the viewport.\n // @since 4.7.0\n key: \"render_errors\",\n value: function render_errors(errors) {\n // hide and remove any previous errors\n $('.woocommerce-error, .woocommerce-message').remove();\n // add errors\n this.ui_element.prepend('
  • ' + errors.join('
  • ') + '
');\n // unblock UI\n this.ui_element.removeClass('processing').unblock();\n // scroll to top\n return $('html, body').animate({\n scrollTop: this.ui_element.offset().top - 100\n }, 1000);\n }\n },\n {\n // Blocks the payment form UI.\n // @since 4.7.0\n key: \"block_ui\",\n value: function block_ui() {\n return this.ui_element.block({\n message: null,\n overlayCSS: {\n background: '#fff',\n opacity: 0.6\n }\n });\n }\n },\n {\n // Unblocks the payment form UI.\n // @since 4.7.0\n key: \"unblock_ui\",\n value: function unblock_ui() {\n return this.ui_element.unblock();\n }\n }\n ]);\n return SV_WC_Apple_Pay_Handler_v5_15_9;\n }();\n // dispatch loaded event\n return $(document.body).trigger('sv_wc_apple_pay_handler_v5_15_9_loaded');\n });\n}).call(undefined);\n\n\n//# sourceMappingURL=sv-wc-payment-gateway-apple-pay.js.map\n","function _class_call_check(instance, Constructor) {\n if (!(instance instanceof Constructor)) throw new TypeError(\"Cannot call a class as a function\");\n}\nexport { _class_call_check as _ };\n","function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n\n if (\"value\" in descriptor) descriptor.writable = true;\n\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\nfunction _create_class(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n\n return Constructor;\n}\nexport { _create_class as _ };\n","###\n WooCommerce Apple Pay Handler\n Version 4.7.0\n\n Copyright (c) 2016, SkyVerge, Inc.\n Licensed under the GNU General Public License v3.0\n http://www.gnu.org/licenses/gpl-3.0.html\n###\n\njQuery ( $ ) ->\n\n\t\"use strict\"\n\n\t# The WooCommerce Apple Pay handler base class.\n\t#\n\t# @since 4.7.0\n\tclass window.SV_WC_Apple_Pay_Handler_v5_15_9\n\n\n\t\t# Constructs the handler.\n\t\t#\n\t\t# @since 4.7.0\n\t\tconstructor: (args) ->\n\n\t\t\t@gateway_id = args.gateway_id\n\t\t\t@gateway_slug = args.gateway_slug\n\t\t\t@merchant_id = args.merchant_id\n\t\t\t@ajax_url = args.ajax_url\n\t\t\t@validate_nonce = args.validate_nonce\n\t\t\t@recalculate_totals_nonce = args.recalculate_totals_nonce\n\t\t\t@process_nonce = args.process_nonce\n\t\t\t@payment_request = args.payment_request\n\t\t\t@generic_error = args.generic_error\n\n\t\t\t@wrapper = '.sv-wc-external-checkout'\n\t\t\t@container = '.buttons-container'\n\t\t\t@button = '.sv-wc-apple-pay-button'\n\n\n\t\t# Determines if Apple Pay is available.\n\t\t#\n\t\t# @since 4.7.0\n\t\t# @return bool\n\t\tis_available: ->\n\n\t\t\treturn false unless window.ApplePaySession\n\n\t\t\tApplePaySession.canMakePaymentsWithActiveCard( @merchant_id ).then ( canMakePayments ) =>\n\n\t\t\t\treturn canMakePayments\n\n\n\t\t# Initializes the handler.\n\t\t#\n\t\t# @since 4.7.0\n\t\tinit: ->\n\n\t\t\t# hide the wrapper if Apple Pay is the only button\n\t\t\tif $( @container ).children().length is 1\n\t\t\t\t$( @wrapper ).hide()\n\n\t\t\treturn unless this.is_available()\n\n\t\t\t# initialize for the various pages\n\t\t\tif $( 'form.cart' ).length\n\t\t\t\tthis.init_product_page()\n\t\t\telse if $( 'form.woocommerce-cart-form' ).length\n\t\t\t\tthis.init_cart_page()\n\t\t\telse if $( 'form.woocommerce-checkout' ).length\n\t\t\t\tthis.init_checkout_page()\n\n\t\t\t# bail if no UI was initialized\n\t\t\treturn unless @ui_element\n\n\t\t\tif @payment_request\n\t\t\t\t$( @button ).show()\n\t\t\t\t$( @wrapper ).show()\n\n\t\t\t$( document.body ).on 'click', '.sv-wc-apple-pay-button', ( e ) =>\n\n\t\t\t\te.preventDefault()\n\n\t\t\t\tthis.block_ui()\n\n\t\t\t\ttry\n\n\t\t\t\t\t@session = this.get_new_session( @payment_request )\n\n\t\t\t\t\t# set the payment card events\n\t\t\t\t\t@session.onvalidatemerchant = ( event ) => this.on_validate_merchant( event )\n\t\t\t\t\t@session.onpaymentmethodselected = ( event ) => this.on_payment_method_selected( event )\n\t\t\t\t\t@session.onshippingcontactselected = ( event ) => this.on_shipping_contact_selected( event )\n\t\t\t\t\t@session.onshippingmethodselected = ( event ) => this.on_shipping_method_selected( event )\n\t\t\t\t\t@session.onpaymentauthorized = ( event ) => this.on_payment_authorized( event )\n\t\t\t\t\t@session.oncancel = ( event ) => this.on_cancel_payment( event )\n\n\t\t\t\t\t@session.begin()\n\n\t\t\t\tcatch error\n\n\t\t\t\t\tthis.fail_payment( error )\n\n\n\t\t# Initializes the product page.\n\t\t#\n\t\t# @since 5.6.0\n\t\tinit_product_page: =>\n\n\t\t\t@ui_element = $( 'form.cart' )\n\n\n\t\t# Initializes the cart page.\n\t\t#\n\t\t# @since 5.6.0\n\t\tinit_cart_page: =>\n\n\t\t\t@ui_element = $( 'form.woocommerce-cart-form' ).parents( 'div.woocommerce' )\n\n\t\t\t# re-init if the cart totals are updated\n\t\t\t$( document.body ).on 'updated_cart_totals', =>\n\n\t\t\t\tthis.reset_payment_request()\n\n\n\t\t# Initializes the checkout page.\n\t\t#\n\t\t# @since 5.6.0\n\t\tinit_checkout_page: =>\n\n\t\t\t@ui_element = $( 'form.woocommerce-checkout' )\n\n\t\t\t$( document.body ).on 'updated_checkout', =>\n\n\t\t\t\t# re-init if the checkout is updated\n\t\t\t\tthis.reset_payment_request()\n\n\n\t\t# Gets a new Apple Pay session.\n\t\t#\n\t\t# @since 5.6.0\n\t\t#\n\t\t# @param [Object] payment_request payment request object\n\t\t# @return ApplePaySession\n\t\tget_new_session: ( payment_request ) ->\n\n\t\t\treturn new ApplePaySession( this.get_sdk_version(), payment_request )\n\n\n\t\t# Gets the Apple SDK version to use.\n\t\t#\n\t\t# @since 5.6.0\n\t\t# @return int\n\t\tget_sdk_version: ->\n\n\t\t\treturn 2\n\n\n\t\t# The callback for after the merchant data is validated.\n\t\t#\n\t\t# @since 4.7.0\n\t\ton_validate_merchant: ( event ) =>\n\n\t\t\tthis.validate_merchant( event.validationURL ).then ( merchant_session ) =>\n\n\t\t\t\tmerchant_session = JSON.parse( merchant_session )\n\n\t\t\t\t@session.completeMerchantValidation( merchant_session )\n\n\t\t\t, ( response ) =>\n\n\t\t\t\t@session.abort()\n\n\t\t\t\tthis.fail_payment 'Merchant could no be validated. ' + response.message\n\n\n\t\t# Validates the merchant data.\n\t\t#\n\t\t# @since 4.7.0\n\t\t# @return object\n\t\tvalidate_merchant: ( url ) => new Promise ( resolve, reject ) =>\n\n\t\t\tdata = {\n\t\t\t\t'action': \"wc_#{ @gateway_id }_apple_pay_validate_merchant\",\n\t\t\t\t'nonce': @validate_nonce,\n\t\t\t\t'merchant_id': @merchant_id,\n\t\t\t\t'url': url\n\t\t\t}\n\n\t\t\t# retrieve a payment request object\n\t\t\t$.post @ajax_url, data, ( response ) =>\n\n\t\t\t\tif response.success\n\t\t\t\t\tresolve response.data\n\t\t\t\telse\n\t\t\t\t\treject response.data\n\n\n\t\t# Fires after a payment method has been selected.\n\t\t#\n\t\t# @since 4.7.0\n\t\ton_payment_method_selected: ( event ) =>\n\n\t\t\tnew Promise ( resolve, reject ) =>\n\n\t\t\t\tdata = {\n\t\t\t\t\t'action': \"wc_#{ @gateway_id }_apple_pay_recalculate_totals\",\n\t\t\t\t\t'nonce': @recalculate_totals_nonce,\n\t\t\t\t}\n\n\t\t\t\t# retrieve a payment request object\n\t\t\t\t$.post @ajax_url, data, ( response ) =>\n\n\t\t\t\t\tif response.success\n\n\t\t\t\t\t\tdata = response.data\n\n\t\t\t\t\t\tresolve @session.completePaymentMethodSelection( data.total, data.line_items )\n\n\t\t\t\t\telse\n\n\t\t\t\t\t\tconsole.error '[Apple Pay] Error selecting a shipping contact. ' + response.data.message\n\n\t\t\t\t\t\treject @session.completePaymentMethodSelection( @payment_request.total, @payment_request.lineItems )\n\n\n\t\t# Fires after a shipping contact has been selected.\n\t\t#\n\t\t# @since 4.7.0\n\t\ton_shipping_contact_selected: ( event ) =>\n\n\t\t\tnew Promise ( resolve, reject ) =>\n\n\t\t\t\tdata = {\n\t\t\t\t\t'action': \"wc_#{ @gateway_id }_apple_pay_recalculate_totals\",\n\t\t\t\t\t'nonce': @recalculate_totals_nonce,\n\t\t\t\t\t'contact': event.shippingContact\n\t\t\t\t}\n\n\t\t\t\t# retrieve a payment request object\n\t\t\t\t$.post @ajax_url, data, ( response ) =>\n\n\t\t\t\t\tif response.success\n\n\t\t\t\t\t\tdata = response.data\n\n\t\t\t\t\t\tresolve @session.completeShippingContactSelection( ApplePaySession.STATUS_SUCCESS, data.shipping_methods, data.total, data.line_items )\n\n\t\t\t\t\telse\n\n\t\t\t\t\t\tconsole.error '[Apple Pay] Error selecting a shipping contact. ' + response.data.message\n\n\t\t\t\t\t\treject @session.completeShippingContactSelection( ApplePaySession.STATUS_FAILURE, [], @payment_request.total, @payment_request.lineItems )\n\n\n\t\t# Fires after a shipping method has been selected.\n\t\t#\n\t\t# @since 4.7.0\n\t\ton_shipping_method_selected: ( event ) =>\n\n\t\t\tnew Promise ( resolve, reject ) =>\n\n\t\t\t\tdata = {\n\t\t\t\t\t'action': \"wc_#{ @gateway_id }_apple_pay_recalculate_totals\",\n\t\t\t\t\t'nonce': @recalculate_totals_nonce,\n\t\t\t\t\t'method': event.shippingMethod.identifier\n\t\t\t\t}\n\n\t\t\t\t# retrieve a payment request object\n\t\t\t\t$.post @ajax_url, data, ( response ) =>\n\n\t\t\t\t\tif response.success\n\n\t\t\t\t\t\tdata = response.data\n\n\t\t\t\t\t\tresolve @session.completeShippingMethodSelection( ApplePaySession.STATUS_SUCCESS, data.total, data.line_items )\n\n\t\t\t\t\telse\n\n\t\t\t\t\t\tconsole.error '[Apple Pay] Error selecting a shipping method. ' + response.data.message\n\n\t\t\t\t\t\treject @session.completeShippingMethodSelection( ApplePaySession.STATUS_FAILURE, @payment_request.total, @payment_request.lineItems )\n\n\n\t\t# The callback for after the payment data is authorized.\n\t\t#\n\t\t# @since 4.7.0\n\t\ton_payment_authorized: ( event ) =>\n\n\t\t\tthis.process_authorization( event.payment ).then ( response ) =>\n\n\t\t\t\tthis.set_payment_status( true )\n\n\t\t\t\tthis.complete_purchase( response )\n\n\t\t\t, ( response ) =>\n\n\t\t\t\tthis.set_payment_status( false )\n\n\t\t\t\tthis.fail_payment 'Payment could no be processed. ' + response.message\n\n\n\t\t# Processes the transaction data.\n\t\t#\n\t\t# @since 4.7.0\n\t\tprocess_authorization: ( payment ) => new Promise ( resolve, reject ) =>\n\n\t\t\tdata = {\n\t\t\t\taction: \"wc_#{ @gateway_id }_apple_pay_process_payment\",\n\t\t\t\tnonce: @process_nonce,\n\t\t\t\tpayment: JSON.stringify( payment )\n\t\t\t}\n\n\t\t\t$.post @ajax_url, data, ( response ) =>\n\n\t\t\t\tif response.success\n\t\t\t\t\tresolve response.data\n\t\t\t\telse\n\t\t\t\t\treject response.data\n\n\n\t\t# The callback for when the payment card is cancelled/dismissed.\n\t\t#\n\t\t# @since 4.7.0\n\t\ton_cancel_payment: ( event ) =>\n\n\t\t\tthis.unblock_ui()\n\n\n\t\t# Completes the purchase based on the gateway result.\n\t\t#\n\t\t# @since 4.7.0\n\t\tcomplete_purchase: ( response ) ->\n\n\t\t\twindow.location = response.redirect\n\n\n\t\t# Fails the purchase based on the gateway result.\n\t\t#\n\t\t# @since 4.7.0\n\t\tfail_payment: ( error ) ->\n\n\t\t\tconsole.error '[Apple Pay] ' + error\n\n\t\t\tthis.unblock_ui()\n\n\t\t\tthis.render_errors( [ @generic_error ] )\n\n\n\t\t# Sets the Apple Pay payment status depending on the gateway result.\n\t\t#\n\t\t# @since 4.7.0\n\t\tset_payment_status: ( success ) ->\n\n\t\t\tif success\n\t\t\t\tstatus = ApplePaySession.STATUS_SUCCESS\n\t\t\telse\n\t\t\t\tstatus = ApplePaySession.STATUS_FAILURE\n\n\t\t\t@session.completePayment( status )\n\n\n\t\t# Resets the payment request via AJAX.\n\t\t#\n\t\t# Extending handlers can call this on change events to refresh the data.\n\t\t#\n\t\t# @since 4.7.0\n\t\treset_payment_request: ( data = {} ) =>\n\n\t\t\tthis.block_ui()\n\n\t\t\tthis.get_payment_request( data ).then ( response ) =>\n\n\t\t\t\t$( @button ).show()\n\t\t\t\t$( @wrapper ).show()\n\n\t\t\t\t@payment_request = JSON.parse( response )\n\n\t\t\t\tthis.unblock_ui()\n\n\t\t\t, ( response ) =>\n\n\t\t\t\tconsole.error '[Apple Pay] Could not build payment request. ' + response.message\n\n\t\t\t\t$( @button ).hide()\n\t\t\t\t# hide the wrapper if Apple Pay is the only button\n\t\t\t\tif $( @container ).children().length is 1\n\t\t\t\t\t$( @wrapper ).hide()\n\n\t\t\t\tthis.unblock_ui()\n\n\n\t\t# Gets the payment request via AJAX.\n\t\t#\n\t\t# @since 4.7.0\n\t\tget_payment_request: ( data ) => new Promise ( resolve, reject ) =>\n\n\t\t\tbase_data = {\n\t\t\t\t'action': \"wc_#{ @gateway_id }_apple_pay_get_payment_request\"\n\t\t\t}\n\n\t\t\t$.extend data, base_data\n\n\t\t\t# retrieve a payment request object\n\t\t\t$.post @ajax_url, data, ( response ) =>\n\n\t\t\t\tif response.success\n\t\t\t\t\tresolve response.data\n\t\t\t\telse\n\t\t\t\t\treject response.data\n\n\n\t\t# Renders any new errors and bring them into the viewport.\n\t\t#\n\t\t# @since 4.7.0\n\t\trender_errors: ( errors ) ->\n\n\t\t\t# hide and remove any previous errors\n\t\t\t$( '.woocommerce-error, .woocommerce-message' ).remove()\n\n\t\t\t# add errors\n\t\t\t@ui_element.prepend '
  • ' + errors.join( '
  • ' ) + '
'\n\n\t\t\t# unblock UI\n\t\t\t@ui_element.removeClass( 'processing' ).unblock()\n\n\t\t\t# scroll to top\n\t\t\t$( 'html, body' ).animate( { scrollTop: @ui_element.offset().top - 100 }, 1000 )\n\n\n\t\t# Blocks the payment form UI.\n\t\t#\n\t\t# @since 4.7.0\n\t\tblock_ui: -> @ui_element.block( message: null, overlayCSS: background: '#fff', opacity: 0.6 )\n\n\n\t\t# Unblocks the payment form UI.\n\t\t#\n\t\t# @since 4.7.0\n\t\tunblock_ui: -> @ui_element.unblock()\n\n\n\t# dispatch loaded event\n\t$( document.body ).trigger( 'sv_wc_apple_pay_handler_v5_15_9_loaded' )\n"],"names":["$parcel$export","e","n","v","s","Object","defineProperty","get","set","enumerable","configurable","$parcel$global","globalThis","self","window","global","$parcel$modules","$parcel$inits","parcelRequire","id","exports","init","module","call","err","Error","code","register","parcelRegister","$c0249d4a3fc9bb83$export$71511d61b312f219","instance","Constructor","TypeError","$690246f0b6925227$var$_defineProperties","target","props","i","length","descriptor","writable","key","$690246f0b6925227$export$71511d61b312f219","protoProps","staticProps","prototype","$guLUH","$90XvN","jQuery","$","SV_WC_Apple_Pay_Handler_v5_15_9","args","_","init_product_page","bind","init_cart_page","init_checkout_page","on_validate_merchant","validate_merchant","on_payment_method_selected","on_shipping_contact_selected","on_shipping_method_selected","on_payment_authorized","process_authorization","on_cancel_payment","reset_payment_request","get_payment_request","gateway_id","gateway_slug","merchant_id","ajax_url","validate_nonce","recalculate_totals_nonce","process_nonce","payment_request","generic_error","wrapper","container","button","value","ApplePaySession","canMakePaymentsWithActiveCard","then","canMakePayments","_this","children","hide","is_available","ui_element","show","document","body","on","preventDefault","block_ui","session","get_new_session","onvalidatemerchant","event","onpaymentmethodselected","onshippingcontactselected","onshippingmethodselected","onpaymentauthorized","oncancel","begin","error1","fail_payment","parents","get_sdk_version","validationURL","merchant_session","JSON","parse","completeMerchantValidation","response","abort","message","url","Promise","resolve","reject","data","concat","post","success","completePaymentMethodSelection","total","line_items","console","error","lineItems","shippingContact","completeShippingContactSelection","STATUS_SUCCESS","shipping_methods","STATUS_FAILURE","shippingMethod","identifier","completeShippingMethodSelection","payment","set_payment_status","complete_purchase","action","nonce","stringify","unblock_ui","location","redirect","render_errors","status","completePayment","arguments","base_data","extend","errors","remove","prepend","join","removeClass","unblock","animate","scrollTop","offset","top","block","overlayCSS","background","opacity","trigger","undefined"],"version":3,"file":"sv-wc-payment-gateway-apple-pay.js.map","sourceRoot":"../../../../../"} \ No newline at end of file diff --git a/woocommerce/payment-gateway/assets/dist/frontend/sv-wc-payment-gateway-google-pay.js b/woocommerce/payment-gateway/assets/dist/frontend/sv-wc-payment-gateway-google-pay.js index 6ec843e5e..d3d828a2e 100644 --- a/woocommerce/payment-gateway/assets/dist/frontend/sv-wc-payment-gateway-google-pay.js +++ b/woocommerce/payment-gateway/assets/dist/frontend/sv-wc-payment-gateway-google-pay.js @@ -1,2 +1,2 @@ -function e(e,t,n,a){Object.defineProperty(e,t,{get:n,set:a,enumerable:!0,configurable:!0})}var t="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{},n={},a={},o=t.parcelRequire94c2;null==o&&((o=function(e){if(e in n)return n[e].exports;if(e in a){var t=a[e];delete a[e];var o={id:e,exports:{}};return n[e]=o,t.call(o.exports,o,o.exports),o.exports}var i=Error("Cannot find module '"+e+"'");throw i.code="MODULE_NOT_FOUND",i}).register=function(e,t){a[e]=t},t.parcelRequire94c2=o);var i=o.register;i("guLUH",function(t,n){e(t.exports,"_",function(){return a});function a(e,t){if(!(e instanceof t))throw TypeError("Cannot call a class as a function")}}),i("90XvN",function(t,n){function a(e,t){for(var n=0;n
  • '+t.join("
  • ")+"
  • "),this.uiElement.removeClass("processing").unblock(),e("html, body").animate({scrollTop:this.uiElement.offset().top-100},1e3)}},{key:"blockUI",value:function(){this.uiElement.block({message:null,overlayCSS:{background:"#fff",opacity:.6}})}},{key:"unblockUI",value:function(){this.uiElement.unblock()}}]),t}(),e(document.body).trigger("sv_wc_google_pay_handler_v5_15_8_loaded")}); +function e(e,t,n,a){Object.defineProperty(e,t,{get:n,set:a,enumerable:!0,configurable:!0})}var t="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{},n={},a={},o=t.parcelRequire94c2;null==o&&((o=function(e){if(e in n)return n[e].exports;if(e in a){var t=a[e];delete a[e];var o={id:e,exports:{}};return n[e]=o,t.call(o.exports,o,o.exports),o.exports}var i=Error("Cannot find module '"+e+"'");throw i.code="MODULE_NOT_FOUND",i}).register=function(e,t){a[e]=t},t.parcelRequire94c2=o);var i=o.register;i("guLUH",function(t,n){e(t.exports,"_",function(){return a});function a(e,t){if(!(e instanceof t))throw TypeError("Cannot call a class as a function")}}),i("90XvN",function(t,n){function a(e,t){for(var n=0;n
  • '+t.join("
  • ")+"
  • "),this.uiElement.removeClass("processing").unblock(),e("html, body").animate({scrollTop:this.uiElement.offset().top-100},1e3)}},{key:"blockUI",value:function(){this.uiElement.block({message:null,overlayCSS:{background:"#fff",opacity:.6}})}},{key:"unblockUI",value:function(){this.uiElement.unblock()}}]),t}(),e(document.body).trigger("sv_wc_google_pay_handler_v5_15_9_loaded")}); //# sourceMappingURL=sv-wc-payment-gateway-google-pay.js.map diff --git a/woocommerce/payment-gateway/assets/dist/frontend/sv-wc-payment-gateway-google-pay.js.map b/woocommerce/payment-gateway/assets/dist/frontend/sv-wc-payment-gateway-google-pay.js.map index 95b34d112..b5f53f0f6 100644 --- a/woocommerce/payment-gateway/assets/dist/frontend/sv-wc-payment-gateway-google-pay.js.map +++ b/woocommerce/payment-gateway/assets/dist/frontend/sv-wc-payment-gateway-google-pay.js.map @@ -1 +1 @@ -{"mappings":"A,S,E,C,C,C,C,C,C,C,E,O,c,C,E,E,C,I,E,I,E,W,C,E,a,C,C,E,C,I,E,A,a,O,W,W,A,a,O,K,K,A,a,O,O,O,A,a,O,O,O,C,E,E,C,E,E,C,E,E,E,iB,A,O,I,A,C,E,S,C,E,G,K,E,O,C,C,E,C,O,C,G,K,E,C,I,E,C,C,E,A,Q,C,C,E,C,I,E,C,G,E,Q,C,C,E,O,C,C,E,C,E,E,I,C,E,O,C,E,E,O,E,E,O,A,C,I,E,A,M,uB,E,I,O,E,I,C,mB,C,C,E,Q,C,S,C,C,C,E,C,C,E,C,C,E,E,iB,C,G,I,E,E,Q,C,E,Q,S,C,C,C,E,E,E,O,C,I,W,O,C,GCAA,SAAS,EAAkB,CAAQ,CAAE,CAAW,EAC5C,GAAI,CAAE,CAAA,aAAoB,CAAA,EAAc,MAAM,AAAI,UAAU,oCAChE,C,G,E,Q,S,C,C,C,ECFA,SAAS,EAAkB,CAAM,CAAE,CAAK,EACpC,IAAK,IAAI,EAAI,EAAG,EAAI,EAAM,MAAM,CAAE,IAAK,CACnC,IAAI,EAAa,CAAK,CAAC,EAAE,AACzB,CAAA,EAAW,UAAU,CAAG,EAAW,UAAU,EAAI,CAAA,EACjD,EAAW,YAAY,CAAG,CAAA,EAEtB,UAAW,GAAY,CAAA,EAAW,QAAQ,CAAG,CAAA,CAAjD,EAEA,OAAO,cAAc,CAAC,EAAQ,EAAW,GAAG,CAAE,EAClD,CACJ,CACA,SAAS,EAAc,CAAW,CAAE,CAAU,CAAE,CAAW,EAIvD,OAHI,GAAY,EAAkB,EAAY,SAAS,CAAE,GACrD,GAAa,EAAkB,EAAa,GAEzC,CACX,C,E,E,O,C,I,W,O,C,E,G,I,E,E,S,E,E,SChBA,OAAQ,SAAU,CAAC,EAWlB,OAAO,gCAAgC,CAAG,WAAM,SAAA,EA0BlC,CAAM,EA1B4B,AAAA,CAAA,EAAA,EAAA,CAAA,AAAA,EAAA,IAAA,CAAA,GA4B9C,IACC,EAgBG,EAhBH,SAAA,CACA,EAeG,EAfH,WAAA,CACA,EAcG,EAdH,aAAA,CACA,EAaG,EAbH,UAAA,CAEA,GAWG,EAZH,qBAAA,CAYG,EAXH,mBAAA,EACA,EAUG,EAVH,WAAA,CACA,EASG,EATH,QAAA,CACA,EAQG,EARH,wBAAA,CACA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","sources":["","node_modules/@swc/helpers/esm/_class_call_check.js","node_modules/@swc/helpers/esm/_create_class.js","woocommerce/payment-gateway/assets/js/frontend/sv-wc-payment-gateway-google-pay.js"],"sourcesContent":["\nfunction $parcel$export(e, n, v, s) {\n Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});\n}\n\n var $parcel$global =\n typeof globalThis !== 'undefined'\n ? globalThis\n : typeof self !== 'undefined'\n ? self\n : typeof window !== 'undefined'\n ? window\n : typeof global !== 'undefined'\n ? global\n : {};\n \nvar $parcel$modules = {};\nvar $parcel$inits = {};\n\nvar parcelRequire = $parcel$global[\"parcelRequire94c2\"];\n\nif (parcelRequire == null) {\n parcelRequire = function(id) {\n if (id in $parcel$modules) {\n return $parcel$modules[id].exports;\n }\n if (id in $parcel$inits) {\n var init = $parcel$inits[id];\n delete $parcel$inits[id];\n var module = {id: id, exports: {}};\n $parcel$modules[id] = module;\n init.call(module.exports, module, module.exports);\n return module.exports;\n }\n var err = new Error(\"Cannot find module '\" + id + \"'\");\n err.code = 'MODULE_NOT_FOUND';\n throw err;\n };\n\n parcelRequire.register = function register(id, init) {\n $parcel$inits[id] = init;\n };\n\n $parcel$global[\"parcelRequire94c2\"] = parcelRequire;\n}\n\nvar parcelRegister = parcelRequire.register;\nparcelRegister(\"guLUH\", function(module, exports) {\n\n$parcel$export(module.exports, \"_\", function () { return $c0249d4a3fc9bb83$export$71511d61b312f219; });\nfunction $c0249d4a3fc9bb83$export$71511d61b312f219(instance, Constructor) {\n if (!(instance instanceof Constructor)) throw new TypeError(\"Cannot call a class as a function\");\n}\n\n});\n\nparcelRegister(\"90XvN\", function(module, exports) {\n\n$parcel$export(module.exports, \"_\", function () { return $690246f0b6925227$export$71511d61b312f219; });\nfunction $690246f0b6925227$var$_defineProperties(target, props) {\n for(var i = 0; i < props.length; i++){\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\nfunction $690246f0b6925227$export$71511d61b312f219(Constructor, protoProps, staticProps) {\n if (protoProps) $690246f0b6925227$var$_defineProperties(Constructor.prototype, protoProps);\n if (staticProps) $690246f0b6925227$var$_defineProperties(Constructor, staticProps);\n return Constructor;\n}\n\n});\n\n\nvar $guLUH = parcelRequire(\"guLUH\");\n\nvar $90XvN = parcelRequire(\"90XvN\");\njQuery(function($) {\n \"use strict\";\n /**\n\t * Google Pay handler.\n\t *\n\t * @since 5.10.0\n\t *\n\t * @type {SV_WC_Google_Pay_Handler_v5_15_8} object\n\t */ window.SV_WC_Google_Pay_Handler_v5_15_8 = /*#__PURE__*/ function() {\n function SV_WC_Google_Pay_Handler_v5_15_8(params) {\n (0, $guLUH._)(this, SV_WC_Google_Pay_Handler_v5_15_8);\n var plugin_id = params.plugin_id, merchant_id = params.merchant_id, merchant_name = params.merchant_name, gateway_id = params.gateway_id, gateway_id_dasherized = params.gateway_id_dasherized, gateway_merchant_id = params.gateway_merchant_id, environment = params.environment, ajax_url = params.ajax_url, recalculate_totals_nonce = params.recalculate_totals_nonce, process_nonce = params.process_nonce, button_style = params.button_style, card_types = params.card_types, available_countries = params.available_countries, currency_code = params.currency_code, needs_shipping = params.needs_shipping, generic_error = params.generic_error;\n this.gatewayID = gateway_id;\n this.gatewayMerchantID = gateway_merchant_id;\n this.merchantID = merchant_id;\n this.merchantName = merchant_name;\n this.environment = environment;\n this.ajaxURL = ajax_url;\n this.recalculateTotalsNonce = recalculate_totals_nonce;\n this.processNonce = process_nonce;\n this.buttonStyle = button_style;\n this.availableCountries = available_countries;\n this.currencyCode = currency_code;\n this.needsShipping = needs_shipping;\n this.genericError = generic_error;\n if (params.product_id) this.productID = params.product_id;\n /**\n\t\t\t * Card networks supported by your site and your gateway\n\t\t\t *\n\t\t\t * @see {@link https://developers.google.com/pay/api/web/reference/request-objects#CardParameters|CardParameters}\n\t\t\t */ var allowedCardNetworks = card_types;\n /**\n\t\t\t * Define the version of the Google Pay API referenced when creating your configuration\n\t\t\t *\n\t\t\t * @see {@link https://developers.google.com/pay/api/web/reference/request-objects#PaymentDataRequest|apiVersion in PaymentDataRequest}\n\t\t\t */ this.baseRequest = {\n apiVersion: 2,\n apiVersionMinor: 0\n };\n /**\n\t\t\t * Card authentication methods supported by your site and your gateway\n\t\t\t *\n\t\t\t * @see {@link https://developers.google.com/pay/api/web/reference/request-objects#CardParameters|CardParameters}\n\t\t\t *\n\t\t\t * @todo confirm your processor supports Android device tokens for your supported card networks\n\t\t\t */ var allowedCardAuthMethods = [\n 'PAN_ONLY',\n 'CRYPTOGRAM_3DS'\n ];\n /**\n\t\t\t * Identify your gateway and your site's gateway merchant identifier\n\t\t\t *\n\t\t\t * The Google Pay API response will return an encrypted payment method capable\n\t\t\t * of being charged by a supported gateway after payer authorization\n\t\t\t *\n\t\t\t * @see {@link https://developers.google.com/pay/api/web/reference/request-objects#gateway|PaymentMethodTokenizationSpecification}\n\t\t\t */ var tokenizationSpecification = {\n type: 'PAYMENT_GATEWAY',\n parameters: {\n 'gateway': plugin_id,\n 'gatewayMerchantId': this.gatewayMerchantID\n }\n };\n /**\n\t\t\t * Describe your site's support for the CARD payment method and its required fields\n\t\t\t *\n\t\t\t * @see {@link https://developers.google.com/pay/api/web/reference/request-objects#CardParameters|CardParameters}\n\t\t\t */ this.baseCardPaymentMethod = {\n type: 'CARD',\n parameters: {\n allowedAuthMethods: allowedCardAuthMethods,\n allowedCardNetworks: allowedCardNetworks,\n billingAddressRequired: true,\n billingAddressParameters: {\n format: 'FULL',\n phoneNumberRequired: true\n }\n }\n };\n /**\n\t\t\t * Describe your site's support for the CARD payment method including optional fields\n\t\t\t *\n\t\t\t * @see {@link https://developers.google.com/pay/api/web/reference/request-objects#CardParameters|CardParameters}\n\t\t\t */ this.cardPaymentMethod = Object.assign({}, this.baseCardPaymentMethod, {\n tokenizationSpecification: tokenizationSpecification\n });\n /**\n\t\t\t * An initialized google.payments.api.PaymentsClient object or null if not yet set\n\t\t\t *\n\t\t\t * @see {@link getGooglePaymentsClient}\n\t\t\t */ this.paymentsClient = null;\n }\n (0, $90XvN._)(SV_WC_Google_Pay_Handler_v5_15_8, [\n {\n /**\n\t\t * Configure your site's support for payment methods supported by the Google Pay\n\t\t * API.\n\t\t *\n\t\t * Each member of allowedPaymentMethods should contain only the required fields,\n\t\t * allowing reuse of this base request when determining a viewer's ability\n\t\t * to pay and later requesting a supported payment method\n\t\t *\n\t\t * @returns {object} Google Pay API version, payment methods supported by the site\n\t\t */ key: \"getGoogleIsReadyToPayRequest\",\n value: function getGoogleIsReadyToPayRequest() {\n return Object.assign({}, this.baseRequest, {\n allowedPaymentMethods: [\n this.baseCardPaymentMethod\n ]\n });\n }\n },\n {\n /**\n\t\t * Configure support for the Google Pay API\n\t\t *\n\t\t * @see {@link https://developers.google.com/pay/api/web/reference/request-objects#PaymentDataRequest|PaymentDataRequest}\n\t\t *\n\t\t * @param {function} resolve callback\n\t\t * @returns {object} PaymentDataRequest fields\n\t\t */ key: \"getGooglePaymentDataRequest\",\n value: function getGooglePaymentDataRequest(resolve) {\n var _this = this;\n return this.getGoogleTransactionInfo(function(transactionInfo) {\n var paymentDataRequest = Object.assign({}, _this.baseRequest);\n paymentDataRequest.allowedPaymentMethods = [\n _this.cardPaymentMethod\n ];\n paymentDataRequest.transactionInfo = transactionInfo;\n paymentDataRequest.merchantInfo = {\n merchantId: _this.merchantID,\n merchantName: _this.merchantName\n };\n paymentDataRequest.emailRequired = true;\n paymentDataRequest.callbackIntents = [\n 'PAYMENT_AUTHORIZATION'\n ];\n if (_this.needsShipping) {\n paymentDataRequest.callbackIntents = [\n 'SHIPPING_ADDRESS',\n 'SHIPPING_OPTION',\n 'PAYMENT_AUTHORIZATION'\n ];\n paymentDataRequest.shippingAddressRequired = true;\n paymentDataRequest.shippingAddressParameters = _this.getGoogleShippingAddressParameters();\n paymentDataRequest.shippingOptionRequired = true;\n }\n resolve(paymentDataRequest);\n });\n }\n },\n {\n /**\n\t\t * Return an active PaymentsClient or initialize\n\t\t *\n\t\t * @see {@link https://developers.google.com/pay/api/web/reference/client#PaymentsClient|PaymentsClient constructor}\n\t\t * @returns {google.payments.api.PaymentsClient} Google Pay API client\n\t\t */ key: \"getGooglePaymentsClient\",\n value: function getGooglePaymentsClient() {\n var _this = this;\n if (this.paymentsClient === null) {\n var args = {\n environment: this.environment,\n merchantInfo: {\n merchantName: this.merchantName,\n merchantId: this.merchantID\n },\n paymentDataCallbacks: {\n onPaymentAuthorized: function(paymentData) {\n return _this.onPaymentAuthorized(paymentData);\n }\n }\n };\n if (this.needsShipping) args.paymentDataCallbacks.onPaymentDataChanged = function(paymentData) {\n return _this.onPaymentDataChanged(paymentData);\n };\n this.paymentsClient = new google.payments.api.PaymentsClient(args);\n }\n return this.paymentsClient;\n }\n },\n {\n /**\n\t\t * Handles payment authorization callback intent.\n\t\t *\n\t\t * @param {object} paymentData response from Google Pay API after a payer approves payment.\n\t\t * @see {@link https://developers.google.com/pay/api/web/reference/response-objects#PaymentData|PaymentData object reference}\n\t\t *\n\t\t * @returns Promise<{object}> Promise object to complete or fail the transaction.\n\t\t */ key: \"onPaymentAuthorized\",\n value: function onPaymentAuthorized(paymentData) {\n var _this = this;\n this.blockUI();\n return new Promise(function(resolve, reject) {\n // handle the response\n try {\n _this.processPayment(paymentData, resolve);\n } catch (err) {\n reject({\n transactionState: 'ERROR',\n error: {\n intent: 'PAYMENT_AUTHORIZATION',\n message: 'Payment could not be processed',\n reason: 'PAYMENT_DATA_INVALID'\n }\n });\n }\n _this.unblockUI();\n });\n }\n },\n {\n /**\n\t\t * Handles dynamic buy flow shipping address and shipping options callback intents.\n\t\t *\n\t\t * @param {object} intermediatePaymentData response from Google Pay API a shipping address or shipping option is selected in the payment sheet.\n\t\t * @see {@link https://developers.google.com/pay/api/web/reference/response-objects#IntermediatePaymentData|IntermediatePaymentData object reference}\n\t\t *\n\t\t * @see {@link https://developers.google.com/pay/api/web/reference/response-objects#PaymentDataRequestUpdate|PaymentDataRequestUpdate}\n\t\t * @returns Promise<{object}> Promise of PaymentDataRequestUpdate object to update the payment sheet.\n\t\t */ key: \"onPaymentDataChanged\",\n value: function onPaymentDataChanged(intermediatePaymentData) {\n var _this = this;\n this.blockUI();\n return new Promise(function(resolve, reject) {\n try {\n var shippingAddress = intermediatePaymentData.shippingAddress;\n var shippingOptionData = intermediatePaymentData.shippingOptionData;\n var chosenShippingMethod = '';\n if (intermediatePaymentData.callbackTrigger == 'SHIPPING_OPTION') chosenShippingMethod = shippingOptionData.id;\n _this.getUpdatedTotals(shippingAddress, chosenShippingMethod, function(paymentDataRequestUpdate) {\n if (paymentDataRequestUpdate.newShippingOptionParameters.shippingOptions.length == 0) paymentDataRequestUpdate = {\n error: _this.getGoogleUnserviceableAddressError()\n };\n resolve(paymentDataRequestUpdate);\n });\n } catch (err) {\n _this.failPayment('Could not load updated totals or process payment data request update. ' + err);\n }\n _this.unblockUI();\n });\n }\n },\n {\n /**\n\t\t * Provide Google Pay API with a payment amount, currency, and amount status\n\t\t *\n\t\t * @see {@link https://developers.google.com/pay/api/web/reference/request-objects#TransactionInfo|TransactionInfo}\n\t\t *\n\t\t * @param {function} resolve callback\n\t\t * @returns {object} transaction info, suitable for use as transactionInfo property of PaymentDataRequest\n\t\t */ key: \"getGoogleTransactionInfo\",\n value: function getGoogleTransactionInfo(resolve) {\n var _this = this;\n // get transaction info from cart\n var data = {\n action: \"wc_\".concat(this.gatewayID, \"_google_pay_get_transaction_info\")\n };\n if (this.productID) data.productID = this.productID;\n $.post(this.ajaxURL, data, function(response) {\n if (response.success) resolve(JSON.parse(response.data));\n else _this.failPayment('Could not build transaction info. ' + response.data.message);\n });\n }\n },\n {\n /**\n\t\t * Get updated totals and shipping options via AJAX for use in the PaymentDataRequest\n\t\t *\n\t\t * @see {@link https://developers.google.com/pay/api/web/reference/response-objects#PaymentDataRequestUpdate|PaymentDataRequestUpdate}\n\t\t *\n\t\t * @param {object} shippingAddress shipping address\n\t\t * @param {object} shippingMethod chosen shipping method\n\t\t * @param {function} resolve callback\n\t\t */ key: \"getUpdatedTotals\",\n value: function getUpdatedTotals(shippingAddress, shippingMethod, resolve) {\n var _this = this;\n var data = {\n action: \"wc_\".concat(this.gatewayID, \"_google_pay_recalculate_totals\"),\n 'nonce': this.recalculateTotalsNonce,\n shippingAddress: shippingAddress,\n shippingMethod: shippingMethod\n };\n if (this.productID) data.productID = this.productID;\n $.post(this.ajaxURL, data, function(response) {\n if (response.success) resolve(JSON.parse(response.data));\n else _this.failPayment('Could not recalculate totals. ' + response.data.message);\n });\n }\n },\n {\n /**\n\t\t * Provide Google Pay API with shipping address parameters when using dynamic buy flow.\n\t\t *\n\t\t * @see {@link https://developers.google.com/pay/api/web/reference/request-objects#ShippingAddressParameters|ShippingAddressParameters}\n\t\t * @returns {object} shipping address details, suitable for use as shippingAddressParameters property of PaymentDataRequest\n\t\t */ key: \"getGoogleShippingAddressParameters\",\n value: function getGoogleShippingAddressParameters() {\n return {\n allowedCountryCodes: this.availableCountries\n };\n }\n },\n {\n /**\n\t\t * Provide Google Pay API with a payment data error.\n\t\t *\n\t\t * @see {@link https://developers.google.com/pay/api/web/reference/response-objects#PaymentDataError|PaymentDataError}\n\t\t * @returns {object} payment data error, suitable for use as error property of PaymentDataRequestUpdate\n\t\t */ key: \"getGoogleUnserviceableAddressError\",\n value: function getGoogleUnserviceableAddressError() {\n return {\n reason: 'SHIPPING_ADDRESS_UNSERVICEABLE',\n message: 'Cannot ship to the selected address',\n intent: 'SHIPPING_ADDRESS'\n };\n }\n },\n {\n /**\n\t\t * Add a Google Pay purchase button alongside an existing checkout button\n\t\t *\n\t\t * @see {@link https://developers.google.com/pay/api/web/reference/request-objects#ButtonOptions|Button options}\n\t\t * @see {@link https://developers.google.com/pay/api/web/guides/brand-guidelines|Google Pay brand guidelines}\n\t\t */ key: \"addGooglePayButton\",\n value: function addGooglePayButton() {\n var _this = this;\n var paymentsClient = this.getGooglePaymentsClient();\n var button = paymentsClient.createButton({\n onClick: function(event) {\n return _this.onGooglePaymentButtonClicked(event);\n },\n buttonColor: this.buttonStyle,\n buttonSizeMode: 'fill'\n });\n document.getElementById('sv-wc-google-pay-button-container').appendChild(button);\n }\n },\n {\n /**\n\t\t * Prefetch payment data to improve performance\n\t\t *\n\t\t * @see {@link https://developers.google.com/pay/api/web/reference/client#prefetchPaymentData|prefetchPaymentData()}\n\t\t */ key: \"prefetchGooglePaymentData\",\n value: function prefetchGooglePaymentData() {\n var _this = this;\n this.getGooglePaymentDataRequest(function(paymentDataRequest) {\n // transactionInfo must be set but does not affect cache\n paymentDataRequest.transactionInfo = {\n totalPriceStatus: 'NOT_CURRENTLY_KNOWN',\n currencyCode: _this.currencyCode\n };\n var paymentsClient = _this.getGooglePaymentsClient();\n paymentsClient.prefetchPaymentData(paymentDataRequest);\n });\n }\n },\n {\n /**\n\t\t * Process payment data returned by the Google Pay API\n\t\t *\n\t\t * @see {@link https://developers.google.com/pay/api/web/reference/response-objects#PaymentData|PaymentData object reference}\n\t\t *\n\t\t * @param {object} paymentData response from Google Pay API after user approves payment\n\t\t * @param {function} resolve callback\n\t\t */ key: \"processPayment\",\n value: function processPayment(paymentData, resolve) {\n var _this = this;\n // pass payment token to your gateway to process payment\n var data = {\n action: \"wc_\".concat(this.gatewayID, \"_google_pay_process_payment\"),\n nonce: this.processNonce,\n paymentData: JSON.stringify(paymentData)\n };\n if (this.productID && !this.needsShipping) data.productID = this.productID;\n return $.post(this.ajaxURL, data, function(response) {\n if (response.success) {\n resolve({\n transactionState: 'SUCCESS'\n });\n window.location = response.data.redirect;\n } else {\n resolve({\n transactionState: 'ERROR',\n error: {\n intent: 'SHIPPING_ADDRESS',\n message: 'Invalid data',\n reason: 'PAYMENT_DATA_INVALID'\n }\n });\n _this.failPayment('Payment could not be processed. ' + response.data.message);\n }\n });\n }\n },\n {\n /**\n\t\t * Show Google Pay payment sheet when Google Pay payment button is clicked\n\t\t */ key: \"onGooglePaymentButtonClicked\",\n value: function onGooglePaymentButtonClicked(event) {\n var _this = this;\n event.preventDefault();\n this.blockUI();\n this.getGooglePaymentDataRequest(function(paymentDataRequest) {\n var paymentsClient = _this.getGooglePaymentsClient();\n try {\n paymentsClient.loadPaymentData(paymentDataRequest);\n } catch (err) {\n _this.failPayment('Could not load payment data. ' + err);\n }\n _this.unblockUI();\n });\n }\n },\n {\n /**\n\t\t * Initialize Google PaymentsClient after Google-hosted JavaScript has loaded\n\t\t *\n\t\t * Display a Google Pay payment button after confirmation of the viewer's\n\t\t * ability to pay.\n\t\t */ key: \"init\",\n value: function init() {\n // initialize for the various pages\n if ($('form.cart').length) this.initProductPage();\n else if ($('form.woocommerce-cart-form').length) this.initCartPage();\n else if ($('form.woocommerce-checkout').length) this.initCheckoutPage();\n else return;\n this.initGooglePay();\n }\n },\n {\n /**\n\t\t * Initializes Google Pay.\n\t\t */ key: \"initGooglePay\",\n value: function initGooglePay() {\n var _this = this;\n var paymentsClient = this.getGooglePaymentsClient();\n paymentsClient.isReadyToPay(this.getGoogleIsReadyToPayRequest()).then(function(response) {\n if (response.result) {\n _this.addGooglePayButton();\n // prefetch payment data to improve performance\n _this.prefetchGooglePaymentData();\n }\n }).catch(function(err) {\n _this.failPayment('Google Pay is not ready. ' + err);\n });\n }\n },\n {\n /**\n\t\t * Initializes the product page.\n\t\t */ key: \"initProductPage\",\n value: function initProductPage() {\n this.uiElement = $('form.cart');\n }\n },\n {\n /**\n\t\t * Initializes the cart page.\n\t\t */ key: \"initCartPage\",\n value: function initCartPage() {\n var _this = this;\n this.uiElement = $('form.woocommerce-cart-form').parents('div.woocommerce');\n // re-init if the cart totals are updated\n $(document.body).on('updated_cart_totals', function() {\n _this.initGooglePay();\n });\n }\n },\n {\n /**\n\t\t * Initializes the checkout page.\n\t\t */ key: \"initCheckoutPage\",\n value: function initCheckoutPage() {\n this.uiElement = $('form.woocommerce-checkout');\n }\n },\n {\n /**\n\t\t * Fails the purchase based on the gateway result.\n\t\t */ key: \"failPayment\",\n value: function failPayment(error) {\n console.error('[Google Pay] ' + error);\n this.unblockUI();\n this.renderErrors([\n this.genericError\n ]);\n }\n },\n {\n /**\n\t\t * Renders any new errors and bring them into the viewport.\n \t\t */ key: \"renderErrors\",\n value: function renderErrors(errors) {\n // hide and remove any previous errors\n $('.woocommerce-error, .woocommerce-message').remove();\n // add errors\n this.uiElement.prepend('
    • ' + errors.join('
    • ') + '
    ');\n // unblock UI\n this.uiElement.removeClass('processing').unblock();\n // scroll to top\n $('html, body').animate({\n scrollTop: this.uiElement.offset().top - 100\n }, 1000);\n }\n },\n {\n /**\n\t\t * Blocks the payment form UI.\n\t\t */ key: \"blockUI\",\n value: function blockUI() {\n this.uiElement.block({\n message: null,\n overlayCSS: {\n background: '#fff',\n opacity: 0.6\n }\n });\n }\n },\n {\n /**\n\t\t * Unblocks the payment form UI.\n\t\t */ key: \"unblockUI\",\n value: function unblockUI() {\n this.uiElement.unblock();\n }\n }\n ]);\n return SV_WC_Google_Pay_Handler_v5_15_8;\n }();\n $(document.body).trigger('sv_wc_google_pay_handler_v5_15_8_loaded');\n});\n\n\n//# sourceMappingURL=sv-wc-payment-gateway-google-pay.js.map\n","function _class_call_check(instance, Constructor) {\n if (!(instance instanceof Constructor)) throw new TypeError(\"Cannot call a class as a function\");\n}\nexport { _class_call_check as _ };\n","function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n\n if (\"value\" in descriptor) descriptor.writable = true;\n\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\nfunction _create_class(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n\n return Constructor;\n}\nexport { _create_class as _ };\n","jQuery( function( $ ) {\n\n\t\"use strict\"\n\n\t/**\n\t * Google Pay handler.\n\t *\n\t * @since 5.10.0\n\t *\n\t * @type {SV_WC_Google_Pay_Handler_v5_15_8} object\n\t */\n\twindow.SV_WC_Google_Pay_Handler_v5_15_8 = class SV_WC_Google_Pay_Handler_v5_15_8 {\n\n\t\t/**\n\t\t * Handler constructor.\n\t\t *\n\t\t * @since 5.10.0\n\t\t *\n\t\t * @param {Object} params The plugin ID\n\t\t * @param {string} params.plugin_id The plugin ID\n\t\t * @param {string} params.merchant_id The merchant ID\n\t\t * @param {string} params.merchant_name The site name\n\t\t * @param {string} params.gateway_id The gateway ID\n\t\t * @param {string} params.gateway_id_dasherized The gateway ID dasherized\n\t\t * @param {string} params.gateway_merchant_id The gateway merchant ID\n\t\t * @param {string} params.environment The gateway environment (PRODUCTION or TEST)\n\t\t * @param {string} params.ajax_url The AJAX URL\n\t\t * @param {string} params.recalculate_totals_nonce Nonce for the recalculate_totals AJAX action\n\t\t * @param {string} params.process_nonce Nonce for the process AJAX action\n\t\t * @param {string} params.button_style The button style\n\t\t * @param {string[]} params.card_types The supported card types\n\t\t * @param {string[]} params.available_countries Array of two-letter country codes the gateway is available for\n\t\t * @param {string[]} params.currency_code WC configured currency\n\t\t * @param {boolean} params.needs_shipping Whether or not the cart or product needs shipping\n\t\t * @param {string} params.generic_error The generic error message\n\t\t * @param {string} params.product_id The product ID if we are on a Product page\n\t\t */\n\t\tconstructor( params ) {\n\n\t\t\tlet {\n\t\t\t\tplugin_id,\n\t\t\t\tmerchant_id,\n\t\t\t\tmerchant_name,\n\t\t\t\tgateway_id,\n\t\t\t\tgateway_id_dasherized,\n\t\t\t\tgateway_merchant_id,\n\t\t\t\tenvironment,\n\t\t\t\tajax_url,\n\t\t\t\trecalculate_totals_nonce,\n\t\t\t\tprocess_nonce,\n\t\t\t\tbutton_style,\n\t\t\t\tcard_types,\n\t\t\t\tavailable_countries,\n\t\t\t\tcurrency_code,\n\t\t\t\tneeds_shipping,\n\t\t\t\tgeneric_error\n\t\t\t} = params;\n\n\t\t\tthis.gatewayID = gateway_id;\n\t\t\tthis.gatewayMerchantID = gateway_merchant_id;\n\t\t\tthis.merchantID = merchant_id;\n\t\t\tthis.merchantName = merchant_name;\n\t\t\tthis.environment = environment;\n\t\t\tthis.ajaxURL = ajax_url;\n\t\t\tthis.recalculateTotalsNonce = recalculate_totals_nonce;\n\t\t\tthis.processNonce = process_nonce;\n\t\t\tthis.buttonStyle = button_style;\n\t\t\tthis.availableCountries = available_countries;\n\t\t\tthis.currencyCode = currency_code;\n\t\t\tthis.needsShipping = needs_shipping;\n\t\t\tthis.genericError = generic_error;\n\n\t\t\tif ( params.product_id ) {\n\t\t\t\tthis.productID = params.product_id;\n\t\t\t}\n\n\t\t\t/**\n\t\t\t * Card networks supported by your site and your gateway\n\t\t\t *\n\t\t\t * @see {@link https://developers.google.com/pay/api/web/reference/request-objects#CardParameters|CardParameters}\n\t\t\t */\n\t\t\tconst allowedCardNetworks = card_types;\n\n\t\t\t/**\n\t\t\t * Define the version of the Google Pay API referenced when creating your configuration\n\t\t\t *\n\t\t\t * @see {@link https://developers.google.com/pay/api/web/reference/request-objects#PaymentDataRequest|apiVersion in PaymentDataRequest}\n\t\t\t */\n\t\t\tthis.baseRequest = {\n\t\t\t\tapiVersion: 2,\n\t\t\t\tapiVersionMinor: 0\n\t\t\t};\n\n\t\t\t/**\n\t\t\t * Card authentication methods supported by your site and your gateway\n\t\t\t *\n\t\t\t * @see {@link https://developers.google.com/pay/api/web/reference/request-objects#CardParameters|CardParameters}\n\t\t\t *\n\t\t\t * @todo confirm your processor supports Android device tokens for your supported card networks\n\t\t\t */\n\t\t\tconst allowedCardAuthMethods = [ 'PAN_ONLY', 'CRYPTOGRAM_3DS' ];\n\n\t\t\t/**\n\t\t\t * Identify your gateway and your site's gateway merchant identifier\n\t\t\t *\n\t\t\t * The Google Pay API response will return an encrypted payment method capable\n\t\t\t * of being charged by a supported gateway after payer authorization\n\t\t\t *\n\t\t\t * @see {@link https://developers.google.com/pay/api/web/reference/request-objects#gateway|PaymentMethodTokenizationSpecification}\n\t\t\t */\n\t\t\tconst tokenizationSpecification = {\n\t\t\t\ttype: 'PAYMENT_GATEWAY',\n\t\t\t\tparameters: {\n\t\t\t\t\t'gateway': plugin_id,\n\t\t\t\t\t'gatewayMerchantId': this.gatewayMerchantID\n\t\t\t\t}\n\t\t\t};\n\n\t\t\t/**\n\t\t\t * Describe your site's support for the CARD payment method and its required fields\n\t\t\t *\n\t\t\t * @see {@link https://developers.google.com/pay/api/web/reference/request-objects#CardParameters|CardParameters}\n\t\t\t */\n\t\t\tthis.baseCardPaymentMethod = {\n\t\t\t\ttype: 'CARD',\n\t\t\t\tparameters: {\n\t\t\t\t\tallowedAuthMethods: allowedCardAuthMethods,\n\t\t\t\t\tallowedCardNetworks: allowedCardNetworks,\n\t\t\t\t\tbillingAddressRequired: true,\n\t\t\t\t\tbillingAddressParameters: {\n\t\t\t\t\t\tformat: 'FULL',\n\t\t\t\t\t\tphoneNumberRequired: true\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t};\n\n\t\t\t/**\n\t\t\t * Describe your site's support for the CARD payment method including optional fields\n\t\t\t *\n\t\t\t * @see {@link https://developers.google.com/pay/api/web/reference/request-objects#CardParameters|CardParameters}\n\t\t\t */\n\t\t\tthis.cardPaymentMethod = Object.assign(\n\t\t\t\t{},\n\t\t\t\tthis.baseCardPaymentMethod,\n\t\t\t\t{\n\t\t\t\t\ttokenizationSpecification: tokenizationSpecification\n\t\t\t\t}\n\t\t\t);\n\n\t\t\t/**\n\t\t\t * An initialized google.payments.api.PaymentsClient object or null if not yet set\n\t\t\t *\n\t\t\t * @see {@link getGooglePaymentsClient}\n\t\t\t */\n\t\t\tthis.paymentsClient = null;\n\t\t}\n\n\t\t/**\n\t\t * Configure your site's support for payment methods supported by the Google Pay\n\t\t * API.\n\t\t *\n\t\t * Each member of allowedPaymentMethods should contain only the required fields,\n\t\t * allowing reuse of this base request when determining a viewer's ability\n\t\t * to pay and later requesting a supported payment method\n\t\t *\n\t\t * @returns {object} Google Pay API version, payment methods supported by the site\n\t\t */\n\t\tgetGoogleIsReadyToPayRequest() {\n\n\t\t\treturn Object.assign(\n\t\t\t\t{},\n\t\t\t\tthis.baseRequest,\n\t\t\t\t{\n\t\t\t\t\tallowedPaymentMethods: [ this.baseCardPaymentMethod ]\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\n\t\t/**\n\t\t * Configure support for the Google Pay API\n\t\t *\n\t\t * @see {@link https://developers.google.com/pay/api/web/reference/request-objects#PaymentDataRequest|PaymentDataRequest}\n\t\t *\n\t\t * @param {function} resolve callback\n\t\t * @returns {object} PaymentDataRequest fields\n\t\t */\n\t\tgetGooglePaymentDataRequest( resolve ) {\n\n\t\t\treturn this.getGoogleTransactionInfo( ( transactionInfo ) => {\n\n\t\t\t\tconst paymentDataRequest = Object.assign( {}, this.baseRequest );\n\t\t\t\tpaymentDataRequest.allowedPaymentMethods = [ this.cardPaymentMethod ];\n\t\t\t\tpaymentDataRequest.transactionInfo = transactionInfo;\n\t\t\t\tpaymentDataRequest.merchantInfo = {\n\t\t\t\t\tmerchantId: this.merchantID,\n\t\t\t\t\tmerchantName: this.merchantName\n\t\t\t\t};\n\n\t\t\t\tpaymentDataRequest.emailRequired = true;\n\t\t\t\tpaymentDataRequest.callbackIntents = [ 'PAYMENT_AUTHORIZATION' ];\n\n\t\t\t\tif ( this.needsShipping ) {\n\t\t\t\t\tpaymentDataRequest.callbackIntents = [ 'SHIPPING_ADDRESS', 'SHIPPING_OPTION', 'PAYMENT_AUTHORIZATION' ];\n\t\t\t\t\tpaymentDataRequest.shippingAddressRequired = true;\n\t\t\t\t\tpaymentDataRequest.shippingAddressParameters = this.getGoogleShippingAddressParameters();\n\t\t\t\t\tpaymentDataRequest.shippingOptionRequired = true;\n\t\t\t\t}\n\n\t\t\t\tresolve( paymentDataRequest );\n\t\t\t} );\n\t\t}\n\n\t\t/**\n\t\t * Return an active PaymentsClient or initialize\n\t\t *\n\t\t * @see {@link https://developers.google.com/pay/api/web/reference/client#PaymentsClient|PaymentsClient constructor}\n\t\t * @returns {google.payments.api.PaymentsClient} Google Pay API client\n\t\t */\n\t\tgetGooglePaymentsClient() {\n\t\t\tif ( this.paymentsClient === null ) {\n\t\t\t\tlet args = {\n\t\t\t\t\tenvironment: this.environment,\n\t\t\t\t\tmerchantInfo: {\n\t\t\t\t\t\tmerchantName: this.merchantName,\n\t\t\t\t\t\tmerchantId: this.merchantID\n\t\t\t\t\t},\n\t\t\t\t\tpaymentDataCallbacks: {\n\t\t\t\t\t\tonPaymentAuthorized: ( paymentData ) => this.onPaymentAuthorized( paymentData ),\n\t\t\t\t\t}\n\t\t\t\t};\n\n\t\t\t\tif ( this.needsShipping ) {\n\t\t\t\t\targs.paymentDataCallbacks.onPaymentDataChanged = ( paymentData ) => this.onPaymentDataChanged( paymentData );\n\t\t\t\t}\n\n\t\t\t\tthis.paymentsClient = new google.payments.api.PaymentsClient( args );\n\t\t\t}\n\t\t\treturn this.paymentsClient;\n\t\t}\n\n\t\t/**\n\t\t * Handles payment authorization callback intent.\n\t\t *\n\t\t * @param {object} paymentData response from Google Pay API after a payer approves payment.\n\t\t * @see {@link https://developers.google.com/pay/api/web/reference/response-objects#PaymentData|PaymentData object reference}\n\t\t *\n\t\t * @returns Promise<{object}> Promise object to complete or fail the transaction.\n\t\t */\n\t\tonPaymentAuthorized( paymentData ) {\n\n\t\t\tthis.blockUI();\n\n\t\t\treturn new Promise( (resolve, reject) => {\n\n\t\t\t\t// handle the response\n\t\t\t\ttry {\n\t\t\t\t\tthis.processPayment( paymentData, resolve );\n\t\t\t\t}\tcatch( err ) {\n\t\t\t\t\treject( {\n\t\t\t\t\t\ttransactionState: 'ERROR',\n\t\t\t\t\t\terror: {\n\t\t\t\t\t\t\tintent: 'PAYMENT_AUTHORIZATION',\n\t\t\t\t\t\t\tmessage: 'Payment could not be processed',\n\t\t\t\t\t\t\treason: 'PAYMENT_DATA_INVALID'\n\t\t\t\t\t\t}\n\t\t\t\t\t} );\n\t\t\t\t}\n\n\t\t\t\tthis.unblockUI();\n\t\t\t} );\n\t\t}\n\n\t\t/**\n\t\t * Handles dynamic buy flow shipping address and shipping options callback intents.\n\t\t *\n\t\t * @param {object} intermediatePaymentData response from Google Pay API a shipping address or shipping option is selected in the payment sheet.\n\t\t * @see {@link https://developers.google.com/pay/api/web/reference/response-objects#IntermediatePaymentData|IntermediatePaymentData object reference}\n\t\t *\n\t\t * @see {@link https://developers.google.com/pay/api/web/reference/response-objects#PaymentDataRequestUpdate|PaymentDataRequestUpdate}\n\t\t * @returns Promise<{object}> Promise of PaymentDataRequestUpdate object to update the payment sheet.\n\t\t */\n\t\tonPaymentDataChanged( intermediatePaymentData ) {\n\n\t\t\tthis.blockUI();\n\n\t\t\treturn new Promise(( resolve, reject ) => {\n\n\t\t\t\ttry {\n\t\t\t\t\tlet shippingAddress = intermediatePaymentData.shippingAddress;\n\t\t\t\t\tlet shippingOptionData = intermediatePaymentData.shippingOptionData;\n\t\t\t\t\tlet chosenShippingMethod = '';\n\n\t\t\t\t\tif ( intermediatePaymentData.callbackTrigger == 'SHIPPING_OPTION' ) {\n\t\t\t\t\t\tchosenShippingMethod = shippingOptionData.id;\n\t\t\t\t\t}\n\n\t\t\t\t\tthis.getUpdatedTotals( shippingAddress, chosenShippingMethod, ( paymentDataRequestUpdate ) => {\n\n\t\t\t\t\t\tif ( paymentDataRequestUpdate.newShippingOptionParameters.shippingOptions.length == 0 ) {\n\t\t\t\t\t\t\tpaymentDataRequestUpdate = {\n\t\t\t\t\t\t\t\terror: this.getGoogleUnserviceableAddressError()\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tresolve( paymentDataRequestUpdate );\n\t\t\t\t\t} );\n\n\t\t\t\t}\tcatch( err ) {\n\t\t\t\t\tthis.failPayment( 'Could not load updated totals or process payment data request update. ' + err );\n\t\t\t\t}\n\n\t\t\t\tthis.unblockUI();\n\t\t\t} );\n\t\t}\n\n\t\t/**\n\t\t * Provide Google Pay API with a payment amount, currency, and amount status\n\t\t *\n\t\t * @see {@link https://developers.google.com/pay/api/web/reference/request-objects#TransactionInfo|TransactionInfo}\n\t\t *\n\t\t * @param {function} resolve callback\n\t\t * @returns {object} transaction info, suitable for use as transactionInfo property of PaymentDataRequest\n\t\t */\n\t\tgetGoogleTransactionInfo( resolve ) {\n\n\t\t\t// get transaction info from cart\n\t\t\tconst data = {\n\t\t\t\taction: `wc_${this.gatewayID}_google_pay_get_transaction_info`,\n\t\t\t}\n\n\t\t\tif ( this.productID ) {\n\t\t\t\tdata.productID = this.productID;\n\t\t\t}\n\n\t\t\t$.post( this.ajaxURL, data, ( response ) => {\n\n\t\t\t\tif ( response.success ) {\n\t\t\t\t\tresolve( JSON.parse( response.data ) )\n\t\t\t\t} else {\n\t\t\t\t\tthis.failPayment( 'Could not build transaction info. ' + response.data.message );\n\t\t\t\t}\n\t\t\t} );\n\t\t}\n\n\t\t/**\n\t\t * Get updated totals and shipping options via AJAX for use in the PaymentDataRequest\n\t\t *\n\t\t * @see {@link https://developers.google.com/pay/api/web/reference/response-objects#PaymentDataRequestUpdate|PaymentDataRequestUpdate}\n\t\t *\n\t\t * @param {object} shippingAddress shipping address\n\t\t * @param {object} shippingMethod chosen shipping method\n\t\t * @param {function} resolve callback\n\t\t */\n\t\tgetUpdatedTotals( shippingAddress, shippingMethod, resolve ) {\n\n\t\t\tconst data = {\n\t\t\t\taction: `wc_${this.gatewayID}_google_pay_recalculate_totals`,\n\t\t\t\t'nonce': this.recalculateTotalsNonce,\n\t\t\t\tshippingAddress,\n\t\t\t\tshippingMethod\n\t\t\t}\n\n\t\t\tif ( this.productID ) {\n\t\t\t\tdata.productID = this.productID;\n\t\t\t}\n\n\t\t\t$.post( this.ajaxURL, data, ( response ) => {\n\n\t\t\t\tif ( response.success ) {\n\t\t\t\t\tresolve( JSON.parse( response.data ) )\n\t\t\t\t} else {\n\t\t\t\t\tthis.failPayment( 'Could not recalculate totals. ' + response.data.message );\n\t\t\t\t}\n\t\t\t} );\n\t\t}\n\n\t\t/**\n\t\t * Provide Google Pay API with shipping address parameters when using dynamic buy flow.\n\t\t *\n\t\t * @see {@link https://developers.google.com/pay/api/web/reference/request-objects#ShippingAddressParameters|ShippingAddressParameters}\n\t\t * @returns {object} shipping address details, suitable for use as shippingAddressParameters property of PaymentDataRequest\n\t\t */\n\t\tgetGoogleShippingAddressParameters() {\n\n\t\t\treturn {\n\t\t\t\tallowedCountryCodes: this.availableCountries\n\t\t\t};\n\t\t}\n\n\t\t/**\n\t\t * Provide Google Pay API with a payment data error.\n\t\t *\n\t\t * @see {@link https://developers.google.com/pay/api/web/reference/response-objects#PaymentDataError|PaymentDataError}\n\t\t * @returns {object} payment data error, suitable for use as error property of PaymentDataRequestUpdate\n\t\t */\n\t\tgetGoogleUnserviceableAddressError() {\n\t\t\treturn {\n\t\t\t\treason: 'SHIPPING_ADDRESS_UNSERVICEABLE',\n\t\t\t\tmessage: 'Cannot ship to the selected address',\n\t\t\t\tintent: 'SHIPPING_ADDRESS'\n\t\t\t};\n\t\t}\n\n\t\t/**\n\t\t * Add a Google Pay purchase button alongside an existing checkout button\n\t\t *\n\t\t * @see {@link https://developers.google.com/pay/api/web/reference/request-objects#ButtonOptions|Button options}\n\t\t * @see {@link https://developers.google.com/pay/api/web/guides/brand-guidelines|Google Pay brand guidelines}\n\t\t */\n\t\taddGooglePayButton() {\n\n\t\t\tconst paymentsClient = this.getGooglePaymentsClient();\n\t\t\tconst button = paymentsClient.createButton( {\n\t\t\t\tonClick: ( event ) => this.onGooglePaymentButtonClicked( event ),\n\t\t\t\tbuttonColor: this.buttonStyle,\n\t\t\t\tbuttonSizeMode: 'fill'\n\t\t\t} );\n\t\t\tdocument.getElementById( 'sv-wc-google-pay-button-container' ).appendChild( button );\n\t\t}\n\n\t\t/**\n\t\t * Prefetch payment data to improve performance\n\t\t *\n\t\t * @see {@link https://developers.google.com/pay/api/web/reference/client#prefetchPaymentData|prefetchPaymentData()}\n\t\t */\n\t\tprefetchGooglePaymentData() {\n\n\t\t\tthis.getGooglePaymentDataRequest( ( paymentDataRequest ) => {\n\n\t\t\t\t// transactionInfo must be set but does not affect cache\n\t\t\t\tpaymentDataRequest.transactionInfo = {\n\t\t\t\t\ttotalPriceStatus: 'NOT_CURRENTLY_KNOWN',\n\t\t\t\t\tcurrencyCode: this.currencyCode\n\t\t\t\t};\n\t\t\t\tconst paymentsClient = this.getGooglePaymentsClient();\n\t\t\t\tpaymentsClient.prefetchPaymentData( paymentDataRequest );\n\t\t\t} );\n\t\t}\n\n\t\t/**\n\t\t * Process payment data returned by the Google Pay API\n\t\t *\n\t\t * @see {@link https://developers.google.com/pay/api/web/reference/response-objects#PaymentData|PaymentData object reference}\n\t\t *\n\t\t * @param {object} paymentData response from Google Pay API after user approves payment\n\t\t * @param {function} resolve callback\n\t\t */\n\t\tprocessPayment( paymentData, resolve ) {\n\n\t\t\t// pass payment token to your gateway to process payment\n\t\t\tconst data = {\n\t\t\t\taction: `wc_${this.gatewayID}_google_pay_process_payment`,\n\t\t\t\tnonce: this.processNonce,\n\t\t\t\tpaymentData: JSON.stringify( paymentData ),\n\t\t\t}\n\n\t\t\tif ( this.productID && ! this.needsShipping ) {\n\t\t\t\tdata.productID = this.productID;\n\t\t\t}\n\n\t\t\treturn $.post( this.ajaxURL, data, ( response ) => {\n\t\t\t\tif ( response.success ) {\n\t\t\t\t\tresolve( {\n\t\t\t\t\t\ttransactionState: 'SUCCESS'\n\t\t\t\t\t} );\n\t\t\t\t\twindow.location = response.data.redirect;\n\t\t\t\t} else {\n\t\t\t\t\tresolve( {\n\t\t\t\t\t\ttransactionState: 'ERROR',\n\t\t\t\t\t\terror: {\n\t\t\t\t\t\t\tintent: 'SHIPPING_ADDRESS',\n\t\t\t\t\t\t\tmessage: 'Invalid data',\n\t\t\t\t\t\t\treason: 'PAYMENT_DATA_INVALID'\n\t\t\t\t\t\t}\n\t\t\t\t\t} );\n\t\t\t\t\tthis.failPayment( 'Payment could not be processed. ' + response.data.message );\n\t\t\t\t}\n\t\t\t} );\n\t\t}\n\n\t\t/**\n\t\t * Show Google Pay payment sheet when Google Pay payment button is clicked\n\t\t */\n\t\tonGooglePaymentButtonClicked( event ) {\n\n\t\t\tevent.preventDefault();\n\n\t\t\tthis.blockUI();\n\n\t\t\tthis.getGooglePaymentDataRequest( ( paymentDataRequest ) => {\n\n\t\t\t\tconst paymentsClient = this.getGooglePaymentsClient();\n\t\t\t\ttry {\n\t\t\t\t\tpaymentsClient.loadPaymentData( paymentDataRequest );\n\t\t\t\t} catch ( err ) {\n\t\t\t\t\tthis.failPayment( 'Could not load payment data. ' + err );\n\t\t\t\t}\n\n\t\t\t\tthis.unblockUI();\n\t\t\t} );\n\t\t}\n\n\t\t/**\n\t\t * Initialize Google PaymentsClient after Google-hosted JavaScript has loaded\n\t\t *\n\t\t * Display a Google Pay payment button after confirmation of the viewer's\n\t\t * ability to pay.\n\t\t */\n\t\tinit() {\n\n\t\t\t// initialize for the various pages\n\t\t\tif ( $( 'form.cart' ).length ) {\n\t\t\t\tthis.initProductPage();\n\t\t\t} else if ( $( 'form.woocommerce-cart-form' ).length ) {\n\t\t\t\tthis.initCartPage();\n\t\t\t} else if ( $( 'form.woocommerce-checkout' ).length) {\n\t\t\t\tthis.initCheckoutPage()\n\t\t\t} else {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis.initGooglePay();\n\t\t}\n\n\t\t/**\n\t\t * Initializes Google Pay.\n\t\t */\n\t\tinitGooglePay() {\n\n\t\t\tconst paymentsClient = this.getGooglePaymentsClient();\n\t\t\tpaymentsClient.isReadyToPay( this.getGoogleIsReadyToPayRequest() )\n\t\t\t\t.then( ( response ) => {\n\t\t\t\t\tif ( response.result ) {\n\t\t\t\t\t\tthis.addGooglePayButton();\n\t\t\t\t\t\t// prefetch payment data to improve performance\n\t\t\t\t\t\tthis.prefetchGooglePaymentData();\n\t\t\t\t\t}\n\t\t\t\t} )\n\t\t\t\t.catch( ( err ) => {\n\t\t\t\t\tthis.failPayment( 'Google Pay is not ready. ' + err );\n\t\t\t\t} );\n\t\t}\n\n\t\t/**\n\t\t * Initializes the product page.\n\t\t */\n\t\tinitProductPage() {\n\t\t\tthis.uiElement = $( 'form.cart' );\n\t\t}\n\n\t\t/**\n\t\t * Initializes the cart page.\n\t\t */\n\t\tinitCartPage() {\n\t\t\tthis.uiElement = $( 'form.woocommerce-cart-form' ).parents( 'div.woocommerce' );\n\n\t\t\t// re-init if the cart totals are updated\n\t\t\t$( document.body ).on( 'updated_cart_totals', () => {\n\t\t\t\tthis.initGooglePay();\n\t\t\t} );\n\t\t}\n\n\t\t/**\n\t\t * Initializes the checkout page.\n\t\t */\n\t\tinitCheckoutPage() {\n\t\t\tthis.uiElement = $( 'form.woocommerce-checkout' );\n\t\t}\n\n\t\t/**\n\t\t * Fails the purchase based on the gateway result.\n\t\t */\n\t\tfailPayment( error ) {\n\n\t\t\tconsole.error( '[Google Pay] ' + error );\n\n\t\t\tthis.unblockUI();\n\n\t\t\tthis.renderErrors( [ this.genericError ] );\n\t\t}\n\n\t\t/**\n\t\t * Renders any new errors and bring them into the viewport.\n \t\t */\n\t\trenderErrors( errors ) {\n\n\t\t\t// hide and remove any previous errors\n\t\t\t$( '.woocommerce-error, .woocommerce-message' ).remove();\n\n\t\t\t// add errors\n\t\t\tthis.uiElement.prepend( '
    • ' + errors.join( '
    • ' ) + '
    ' );\n\n\t\t\t// unblock UI\n\t\t\tthis.uiElement.removeClass( 'processing' ).unblock();\n\n\t\t\t// scroll to top\n\t\t\t$( 'html, body' ).animate( { scrollTop: this.uiElement.offset().top - 100 }, 1000 );\n\t\t}\n\n\t\t/**\n\t\t * Blocks the payment form UI.\n\t\t */\n\t\tblockUI() {\n\t\t\tthis.uiElement.block( { message: null, overlayCSS: { background: '#fff', opacity: 0.6 } } );\n\t\t}\n\n\t\t/**\n\t\t * Unblocks the payment form UI.\n\t\t */\n\t\tunblockUI() {\n\t\t\tthis.uiElement.unblock();\n\t\t}\n\t}\n\n\t$( document.body ).trigger( 'sv_wc_google_pay_handler_v5_15_8_loaded' );\n\n} );\n"],"names":["$parcel$export","e","n","v","s","Object","defineProperty","get","set","enumerable","configurable","$parcel$global","globalThis","self","window","global","$parcel$modules","$parcel$inits","parcelRequire","id","exports","init","module","call","err","Error","code","register","parcelRegister","$c0249d4a3fc9bb83$export$71511d61b312f219","instance","Constructor","TypeError","$690246f0b6925227$var$_defineProperties","target","props","i","length","descriptor","writable","key","$690246f0b6925227$export$71511d61b312f219","protoProps","staticProps","prototype","$guLUH","$90XvN","jQuery","$","SV_WC_Google_Pay_Handler_v5_15_8","params","_","plugin_id","merchant_id","merchant_name","gateway_id","gateway_merchant_id","gateway_id_dasherized","environment","ajax_url","recalculate_totals_nonce","process_nonce","button_style","card_types","available_countries","currency_code","needs_shipping","generic_error","gatewayID","gatewayMerchantID","merchantID","merchantName","ajaxURL","recalculateTotalsNonce","processNonce","buttonStyle","availableCountries","currencyCode","needsShipping","genericError","product_id","productID","baseRequest","apiVersion","apiVersionMinor","tokenizationSpecification","type","parameters","baseCardPaymentMethod","allowedAuthMethods","allowedCardNetworks","billingAddressRequired","billingAddressParameters","format","phoneNumberRequired","cardPaymentMethod","assign","paymentsClient","value","allowedPaymentMethods","resolve","_this","getGoogleTransactionInfo","transactionInfo","paymentDataRequest","merchantInfo","merchantId","emailRequired","callbackIntents","shippingAddressRequired","shippingAddressParameters","getGoogleShippingAddressParameters","shippingOptionRequired","args","paymentDataCallbacks","onPaymentAuthorized","paymentData","onPaymentDataChanged","google","payments","api","PaymentsClient","blockUI","Promise","reject","processPayment","transactionState","error","intent","message","reason","unblockUI","intermediatePaymentData","shippingAddress","shippingOptionData","chosenShippingMethod","callbackTrigger","getUpdatedTotals","paymentDataRequestUpdate","newShippingOptionParameters","shippingOptions","getGoogleUnserviceableAddressError","failPayment","data","action","concat","post","response","success","JSON","parse","shippingMethod","allowedCountryCodes","button","getGooglePaymentsClient","createButton","onClick","event","onGooglePaymentButtonClicked","buttonColor","buttonSizeMode","document","getElementById","appendChild","getGooglePaymentDataRequest","totalPriceStatus","prefetchPaymentData","nonce","stringify","location","redirect","preventDefault","loadPaymentData","initProductPage","initCartPage","initCheckoutPage","initGooglePay","isReadyToPay","getGoogleIsReadyToPayRequest","then","result","addGooglePayButton","prefetchGooglePaymentData","catch","uiElement","parents","body","on","console","renderErrors","errors","remove","prepend","join","removeClass","unblock","animate","scrollTop","offset","top","block","overlayCSS","background","opacity","trigger"],"version":3,"file":"sv-wc-payment-gateway-google-pay.js.map","sourceRoot":"../../../../../"} \ No newline at end of file +{"mappings":"A,S,E,C,C,C,C,C,C,C,E,O,c,C,E,E,C,I,E,I,E,W,C,E,a,C,C,E,C,I,E,A,a,O,W,W,A,a,O,K,K,A,a,O,O,O,A,a,O,O,O,C,E,E,C,E,E,C,E,E,E,iB,A,O,I,A,C,E,S,C,E,G,K,E,O,C,C,E,C,O,C,G,K,E,C,I,E,C,C,E,A,Q,C,C,E,C,I,E,C,G,E,Q,C,C,E,O,C,C,E,C,E,E,I,C,E,O,C,E,E,O,E,E,O,A,C,I,E,A,M,uB,E,I,O,E,I,C,mB,C,C,E,Q,C,S,C,C,C,E,C,C,E,C,C,E,E,iB,C,G,I,E,E,Q,C,E,Q,S,C,C,C,E,E,E,O,C,I,W,O,C,GCAA,SAAS,EAAkB,CAAQ,CAAE,CAAW,EAC5C,GAAI,CAAE,CAAA,aAAoB,CAAA,EAAc,MAAM,AAAI,UAAU,oCAChE,C,G,E,Q,S,C,C,C,ECFA,SAAS,EAAkB,CAAM,CAAE,CAAK,EACpC,IAAK,IAAI,EAAI,EAAG,EAAI,EAAM,MAAM,CAAE,IAAK,CACnC,IAAI,EAAa,CAAK,CAAC,EAAE,AACzB,CAAA,EAAW,UAAU,CAAG,EAAW,UAAU,EAAI,CAAA,EACjD,EAAW,YAAY,CAAG,CAAA,EAEtB,UAAW,GAAY,CAAA,EAAW,QAAQ,CAAG,CAAA,CAAjD,EAEA,OAAO,cAAc,CAAC,EAAQ,EAAW,GAAG,CAAE,EAClD,CACJ,CACA,SAAS,EAAc,CAAW,CAAE,CAAU,CAAE,CAAW,EAIvD,OAHI,GAAY,EAAkB,EAAY,SAAS,CAAE,GACrD,GAAa,EAAkB,EAAa,GAEzC,CACX,C,E,E,O,C,I,W,O,C,E,G,I,E,E,S,E,E,SChBA,OAAQ,SAAU,CAAC,EAWlB,OAAO,gCAAgC,CAAG,WAAM,SAAA,EA0BlC,CAAM,EA1B4B,AAAA,CAAA,EAAA,EAAA,CAAA,AAAA,EAAA,IAAA,CAAA,GA4B9C,IACC,EAgBG,EAhBH,SAAA,CACA,EAeG,EAfH,WAAA,CACA,EAcG,EAdH,aAAA,CACA,EAaG,EAbH,UAAA,CAEA,GAWG,EAZH,qBAAA,CAYG,EAXH,mBAAA,EACA,EAUG,EAVH,WAAA,CACA,EASG,EATH,QAAA,CACA,EAQG,EARH,wBAAA,CACA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","sources":["","node_modules/@swc/helpers/esm/_class_call_check.js","node_modules/@swc/helpers/esm/_create_class.js","woocommerce/payment-gateway/assets/js/frontend/sv-wc-payment-gateway-google-pay.js"],"sourcesContent":["\nfunction $parcel$export(e, n, v, s) {\n Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});\n}\n\n var $parcel$global =\n typeof globalThis !== 'undefined'\n ? globalThis\n : typeof self !== 'undefined'\n ? self\n : typeof window !== 'undefined'\n ? window\n : typeof global !== 'undefined'\n ? global\n : {};\n \nvar $parcel$modules = {};\nvar $parcel$inits = {};\n\nvar parcelRequire = $parcel$global[\"parcelRequire94c2\"];\n\nif (parcelRequire == null) {\n parcelRequire = function(id) {\n if (id in $parcel$modules) {\n return $parcel$modules[id].exports;\n }\n if (id in $parcel$inits) {\n var init = $parcel$inits[id];\n delete $parcel$inits[id];\n var module = {id: id, exports: {}};\n $parcel$modules[id] = module;\n init.call(module.exports, module, module.exports);\n return module.exports;\n }\n var err = new Error(\"Cannot find module '\" + id + \"'\");\n err.code = 'MODULE_NOT_FOUND';\n throw err;\n };\n\n parcelRequire.register = function register(id, init) {\n $parcel$inits[id] = init;\n };\n\n $parcel$global[\"parcelRequire94c2\"] = parcelRequire;\n}\n\nvar parcelRegister = parcelRequire.register;\nparcelRegister(\"guLUH\", function(module, exports) {\n\n$parcel$export(module.exports, \"_\", function () { return $c0249d4a3fc9bb83$export$71511d61b312f219; });\nfunction $c0249d4a3fc9bb83$export$71511d61b312f219(instance, Constructor) {\n if (!(instance instanceof Constructor)) throw new TypeError(\"Cannot call a class as a function\");\n}\n\n});\n\nparcelRegister(\"90XvN\", function(module, exports) {\n\n$parcel$export(module.exports, \"_\", function () { return $690246f0b6925227$export$71511d61b312f219; });\nfunction $690246f0b6925227$var$_defineProperties(target, props) {\n for(var i = 0; i < props.length; i++){\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\nfunction $690246f0b6925227$export$71511d61b312f219(Constructor, protoProps, staticProps) {\n if (protoProps) $690246f0b6925227$var$_defineProperties(Constructor.prototype, protoProps);\n if (staticProps) $690246f0b6925227$var$_defineProperties(Constructor, staticProps);\n return Constructor;\n}\n\n});\n\n\nvar $guLUH = parcelRequire(\"guLUH\");\n\nvar $90XvN = parcelRequire(\"90XvN\");\njQuery(function($) {\n \"use strict\";\n /**\n\t * Google Pay handler.\n\t *\n\t * @since 5.10.0\n\t *\n\t * @type {SV_WC_Google_Pay_Handler_v5_15_9} object\n\t */ window.SV_WC_Google_Pay_Handler_v5_15_9 = /*#__PURE__*/ function() {\n function SV_WC_Google_Pay_Handler_v5_15_9(params) {\n (0, $guLUH._)(this, SV_WC_Google_Pay_Handler_v5_15_9);\n var plugin_id = params.plugin_id, merchant_id = params.merchant_id, merchant_name = params.merchant_name, gateway_id = params.gateway_id, gateway_id_dasherized = params.gateway_id_dasherized, gateway_merchant_id = params.gateway_merchant_id, environment = params.environment, ajax_url = params.ajax_url, recalculate_totals_nonce = params.recalculate_totals_nonce, process_nonce = params.process_nonce, button_style = params.button_style, card_types = params.card_types, available_countries = params.available_countries, currency_code = params.currency_code, needs_shipping = params.needs_shipping, generic_error = params.generic_error;\n this.gatewayID = gateway_id;\n this.gatewayMerchantID = gateway_merchant_id;\n this.merchantID = merchant_id;\n this.merchantName = merchant_name;\n this.environment = environment;\n this.ajaxURL = ajax_url;\n this.recalculateTotalsNonce = recalculate_totals_nonce;\n this.processNonce = process_nonce;\n this.buttonStyle = button_style;\n this.availableCountries = available_countries;\n this.currencyCode = currency_code;\n this.needsShipping = needs_shipping;\n this.genericError = generic_error;\n if (params.product_id) this.productID = params.product_id;\n /**\n\t\t\t * Card networks supported by your site and your gateway\n\t\t\t *\n\t\t\t * @see {@link https://developers.google.com/pay/api/web/reference/request-objects#CardParameters|CardParameters}\n\t\t\t */ var allowedCardNetworks = card_types;\n /**\n\t\t\t * Define the version of the Google Pay API referenced when creating your configuration\n\t\t\t *\n\t\t\t * @see {@link https://developers.google.com/pay/api/web/reference/request-objects#PaymentDataRequest|apiVersion in PaymentDataRequest}\n\t\t\t */ this.baseRequest = {\n apiVersion: 2,\n apiVersionMinor: 0\n };\n /**\n\t\t\t * Card authentication methods supported by your site and your gateway\n\t\t\t *\n\t\t\t * @see {@link https://developers.google.com/pay/api/web/reference/request-objects#CardParameters|CardParameters}\n\t\t\t *\n\t\t\t * @todo confirm your processor supports Android device tokens for your supported card networks\n\t\t\t */ var allowedCardAuthMethods = [\n 'PAN_ONLY',\n 'CRYPTOGRAM_3DS'\n ];\n /**\n\t\t\t * Identify your gateway and your site's gateway merchant identifier\n\t\t\t *\n\t\t\t * The Google Pay API response will return an encrypted payment method capable\n\t\t\t * of being charged by a supported gateway after payer authorization\n\t\t\t *\n\t\t\t * @see {@link https://developers.google.com/pay/api/web/reference/request-objects#gateway|PaymentMethodTokenizationSpecification}\n\t\t\t */ var tokenizationSpecification = {\n type: 'PAYMENT_GATEWAY',\n parameters: {\n 'gateway': plugin_id,\n 'gatewayMerchantId': this.gatewayMerchantID\n }\n };\n /**\n\t\t\t * Describe your site's support for the CARD payment method and its required fields\n\t\t\t *\n\t\t\t * @see {@link https://developers.google.com/pay/api/web/reference/request-objects#CardParameters|CardParameters}\n\t\t\t */ this.baseCardPaymentMethod = {\n type: 'CARD',\n parameters: {\n allowedAuthMethods: allowedCardAuthMethods,\n allowedCardNetworks: allowedCardNetworks,\n billingAddressRequired: true,\n billingAddressParameters: {\n format: 'FULL',\n phoneNumberRequired: true\n }\n }\n };\n /**\n\t\t\t * Describe your site's support for the CARD payment method including optional fields\n\t\t\t *\n\t\t\t * @see {@link https://developers.google.com/pay/api/web/reference/request-objects#CardParameters|CardParameters}\n\t\t\t */ this.cardPaymentMethod = Object.assign({}, this.baseCardPaymentMethod, {\n tokenizationSpecification: tokenizationSpecification\n });\n /**\n\t\t\t * An initialized google.payments.api.PaymentsClient object or null if not yet set\n\t\t\t *\n\t\t\t * @see {@link getGooglePaymentsClient}\n\t\t\t */ this.paymentsClient = null;\n }\n (0, $90XvN._)(SV_WC_Google_Pay_Handler_v5_15_9, [\n {\n /**\n\t\t * Configure your site's support for payment methods supported by the Google Pay\n\t\t * API.\n\t\t *\n\t\t * Each member of allowedPaymentMethods should contain only the required fields,\n\t\t * allowing reuse of this base request when determining a viewer's ability\n\t\t * to pay and later requesting a supported payment method\n\t\t *\n\t\t * @returns {object} Google Pay API version, payment methods supported by the site\n\t\t */ key: \"getGoogleIsReadyToPayRequest\",\n value: function getGoogleIsReadyToPayRequest() {\n return Object.assign({}, this.baseRequest, {\n allowedPaymentMethods: [\n this.baseCardPaymentMethod\n ]\n });\n }\n },\n {\n /**\n\t\t * Configure support for the Google Pay API\n\t\t *\n\t\t * @see {@link https://developers.google.com/pay/api/web/reference/request-objects#PaymentDataRequest|PaymentDataRequest}\n\t\t *\n\t\t * @param {function} resolve callback\n\t\t * @returns {object} PaymentDataRequest fields\n\t\t */ key: \"getGooglePaymentDataRequest\",\n value: function getGooglePaymentDataRequest(resolve) {\n var _this = this;\n return this.getGoogleTransactionInfo(function(transactionInfo) {\n var paymentDataRequest = Object.assign({}, _this.baseRequest);\n paymentDataRequest.allowedPaymentMethods = [\n _this.cardPaymentMethod\n ];\n paymentDataRequest.transactionInfo = transactionInfo;\n paymentDataRequest.merchantInfo = {\n merchantId: _this.merchantID,\n merchantName: _this.merchantName\n };\n paymentDataRequest.emailRequired = true;\n paymentDataRequest.callbackIntents = [\n 'PAYMENT_AUTHORIZATION'\n ];\n if (_this.needsShipping) {\n paymentDataRequest.callbackIntents = [\n 'SHIPPING_ADDRESS',\n 'SHIPPING_OPTION',\n 'PAYMENT_AUTHORIZATION'\n ];\n paymentDataRequest.shippingAddressRequired = true;\n paymentDataRequest.shippingAddressParameters = _this.getGoogleShippingAddressParameters();\n paymentDataRequest.shippingOptionRequired = true;\n }\n resolve(paymentDataRequest);\n });\n }\n },\n {\n /**\n\t\t * Return an active PaymentsClient or initialize\n\t\t *\n\t\t * @see {@link https://developers.google.com/pay/api/web/reference/client#PaymentsClient|PaymentsClient constructor}\n\t\t * @returns {google.payments.api.PaymentsClient} Google Pay API client\n\t\t */ key: \"getGooglePaymentsClient\",\n value: function getGooglePaymentsClient() {\n var _this = this;\n if (this.paymentsClient === null) {\n var args = {\n environment: this.environment,\n merchantInfo: {\n merchantName: this.merchantName,\n merchantId: this.merchantID\n },\n paymentDataCallbacks: {\n onPaymentAuthorized: function(paymentData) {\n return _this.onPaymentAuthorized(paymentData);\n }\n }\n };\n if (this.needsShipping) args.paymentDataCallbacks.onPaymentDataChanged = function(paymentData) {\n return _this.onPaymentDataChanged(paymentData);\n };\n this.paymentsClient = new google.payments.api.PaymentsClient(args);\n }\n return this.paymentsClient;\n }\n },\n {\n /**\n\t\t * Handles payment authorization callback intent.\n\t\t *\n\t\t * @param {object} paymentData response from Google Pay API after a payer approves payment.\n\t\t * @see {@link https://developers.google.com/pay/api/web/reference/response-objects#PaymentData|PaymentData object reference}\n\t\t *\n\t\t * @returns Promise<{object}> Promise object to complete or fail the transaction.\n\t\t */ key: \"onPaymentAuthorized\",\n value: function onPaymentAuthorized(paymentData) {\n var _this = this;\n this.blockUI();\n return new Promise(function(resolve, reject) {\n // handle the response\n try {\n _this.processPayment(paymentData, resolve);\n } catch (err) {\n reject({\n transactionState: 'ERROR',\n error: {\n intent: 'PAYMENT_AUTHORIZATION',\n message: 'Payment could not be processed',\n reason: 'PAYMENT_DATA_INVALID'\n }\n });\n }\n _this.unblockUI();\n });\n }\n },\n {\n /**\n\t\t * Handles dynamic buy flow shipping address and shipping options callback intents.\n\t\t *\n\t\t * @param {object} intermediatePaymentData response from Google Pay API a shipping address or shipping option is selected in the payment sheet.\n\t\t * @see {@link https://developers.google.com/pay/api/web/reference/response-objects#IntermediatePaymentData|IntermediatePaymentData object reference}\n\t\t *\n\t\t * @see {@link https://developers.google.com/pay/api/web/reference/response-objects#PaymentDataRequestUpdate|PaymentDataRequestUpdate}\n\t\t * @returns Promise<{object}> Promise of PaymentDataRequestUpdate object to update the payment sheet.\n\t\t */ key: \"onPaymentDataChanged\",\n value: function onPaymentDataChanged(intermediatePaymentData) {\n var _this = this;\n this.blockUI();\n return new Promise(function(resolve, reject) {\n try {\n var shippingAddress = intermediatePaymentData.shippingAddress;\n var shippingOptionData = intermediatePaymentData.shippingOptionData;\n var chosenShippingMethod = '';\n if (intermediatePaymentData.callbackTrigger == 'SHIPPING_OPTION') chosenShippingMethod = shippingOptionData.id;\n _this.getUpdatedTotals(shippingAddress, chosenShippingMethod, function(paymentDataRequestUpdate) {\n if (paymentDataRequestUpdate.newShippingOptionParameters.shippingOptions.length == 0) paymentDataRequestUpdate = {\n error: _this.getGoogleUnserviceableAddressError()\n };\n resolve(paymentDataRequestUpdate);\n });\n } catch (err) {\n _this.failPayment('Could not load updated totals or process payment data request update. ' + err);\n }\n _this.unblockUI();\n });\n }\n },\n {\n /**\n\t\t * Provide Google Pay API with a payment amount, currency, and amount status\n\t\t *\n\t\t * @see {@link https://developers.google.com/pay/api/web/reference/request-objects#TransactionInfo|TransactionInfo}\n\t\t *\n\t\t * @param {function} resolve callback\n\t\t * @returns {object} transaction info, suitable for use as transactionInfo property of PaymentDataRequest\n\t\t */ key: \"getGoogleTransactionInfo\",\n value: function getGoogleTransactionInfo(resolve) {\n var _this = this;\n // get transaction info from cart\n var data = {\n action: \"wc_\".concat(this.gatewayID, \"_google_pay_get_transaction_info\")\n };\n if (this.productID) data.productID = this.productID;\n $.post(this.ajaxURL, data, function(response) {\n if (response.success) resolve(JSON.parse(response.data));\n else _this.failPayment('Could not build transaction info. ' + response.data.message);\n });\n }\n },\n {\n /**\n\t\t * Get updated totals and shipping options via AJAX for use in the PaymentDataRequest\n\t\t *\n\t\t * @see {@link https://developers.google.com/pay/api/web/reference/response-objects#PaymentDataRequestUpdate|PaymentDataRequestUpdate}\n\t\t *\n\t\t * @param {object} shippingAddress shipping address\n\t\t * @param {object} shippingMethod chosen shipping method\n\t\t * @param {function} resolve callback\n\t\t */ key: \"getUpdatedTotals\",\n value: function getUpdatedTotals(shippingAddress, shippingMethod, resolve) {\n var _this = this;\n var data = {\n action: \"wc_\".concat(this.gatewayID, \"_google_pay_recalculate_totals\"),\n 'nonce': this.recalculateTotalsNonce,\n shippingAddress: shippingAddress,\n shippingMethod: shippingMethod\n };\n if (this.productID) data.productID = this.productID;\n $.post(this.ajaxURL, data, function(response) {\n if (response.success) resolve(JSON.parse(response.data));\n else _this.failPayment('Could not recalculate totals. ' + response.data.message);\n });\n }\n },\n {\n /**\n\t\t * Provide Google Pay API with shipping address parameters when using dynamic buy flow.\n\t\t *\n\t\t * @see {@link https://developers.google.com/pay/api/web/reference/request-objects#ShippingAddressParameters|ShippingAddressParameters}\n\t\t * @returns {object} shipping address details, suitable for use as shippingAddressParameters property of PaymentDataRequest\n\t\t */ key: \"getGoogleShippingAddressParameters\",\n value: function getGoogleShippingAddressParameters() {\n return {\n allowedCountryCodes: this.availableCountries\n };\n }\n },\n {\n /**\n\t\t * Provide Google Pay API with a payment data error.\n\t\t *\n\t\t * @see {@link https://developers.google.com/pay/api/web/reference/response-objects#PaymentDataError|PaymentDataError}\n\t\t * @returns {object} payment data error, suitable for use as error property of PaymentDataRequestUpdate\n\t\t */ key: \"getGoogleUnserviceableAddressError\",\n value: function getGoogleUnserviceableAddressError() {\n return {\n reason: 'SHIPPING_ADDRESS_UNSERVICEABLE',\n message: 'Cannot ship to the selected address',\n intent: 'SHIPPING_ADDRESS'\n };\n }\n },\n {\n /**\n\t\t * Add a Google Pay purchase button alongside an existing checkout button\n\t\t *\n\t\t * @see {@link https://developers.google.com/pay/api/web/reference/request-objects#ButtonOptions|Button options}\n\t\t * @see {@link https://developers.google.com/pay/api/web/guides/brand-guidelines|Google Pay brand guidelines}\n\t\t */ key: \"addGooglePayButton\",\n value: function addGooglePayButton() {\n var _this = this;\n var paymentsClient = this.getGooglePaymentsClient();\n var button = paymentsClient.createButton({\n onClick: function(event) {\n return _this.onGooglePaymentButtonClicked(event);\n },\n buttonColor: this.buttonStyle,\n buttonSizeMode: 'fill'\n });\n document.getElementById('sv-wc-google-pay-button-container').appendChild(button);\n }\n },\n {\n /**\n\t\t * Prefetch payment data to improve performance\n\t\t *\n\t\t * @see {@link https://developers.google.com/pay/api/web/reference/client#prefetchPaymentData|prefetchPaymentData()}\n\t\t */ key: \"prefetchGooglePaymentData\",\n value: function prefetchGooglePaymentData() {\n var _this = this;\n this.getGooglePaymentDataRequest(function(paymentDataRequest) {\n // transactionInfo must be set but does not affect cache\n paymentDataRequest.transactionInfo = {\n totalPriceStatus: 'NOT_CURRENTLY_KNOWN',\n currencyCode: _this.currencyCode\n };\n var paymentsClient = _this.getGooglePaymentsClient();\n paymentsClient.prefetchPaymentData(paymentDataRequest);\n });\n }\n },\n {\n /**\n\t\t * Process payment data returned by the Google Pay API\n\t\t *\n\t\t * @see {@link https://developers.google.com/pay/api/web/reference/response-objects#PaymentData|PaymentData object reference}\n\t\t *\n\t\t * @param {object} paymentData response from Google Pay API after user approves payment\n\t\t * @param {function} resolve callback\n\t\t */ key: \"processPayment\",\n value: function processPayment(paymentData, resolve) {\n var _this = this;\n // pass payment token to your gateway to process payment\n var data = {\n action: \"wc_\".concat(this.gatewayID, \"_google_pay_process_payment\"),\n nonce: this.processNonce,\n paymentData: JSON.stringify(paymentData)\n };\n if (this.productID && !this.needsShipping) data.productID = this.productID;\n return $.post(this.ajaxURL, data, function(response) {\n if (response.success) {\n resolve({\n transactionState: 'SUCCESS'\n });\n window.location = response.data.redirect;\n } else {\n resolve({\n transactionState: 'ERROR',\n error: {\n intent: 'SHIPPING_ADDRESS',\n message: 'Invalid data',\n reason: 'PAYMENT_DATA_INVALID'\n }\n });\n _this.failPayment('Payment could not be processed. ' + response.data.message);\n }\n });\n }\n },\n {\n /**\n\t\t * Show Google Pay payment sheet when Google Pay payment button is clicked\n\t\t */ key: \"onGooglePaymentButtonClicked\",\n value: function onGooglePaymentButtonClicked(event) {\n var _this = this;\n event.preventDefault();\n this.blockUI();\n this.getGooglePaymentDataRequest(function(paymentDataRequest) {\n var paymentsClient = _this.getGooglePaymentsClient();\n try {\n paymentsClient.loadPaymentData(paymentDataRequest);\n } catch (err) {\n _this.failPayment('Could not load payment data. ' + err);\n }\n _this.unblockUI();\n });\n }\n },\n {\n /**\n\t\t * Initialize Google PaymentsClient after Google-hosted JavaScript has loaded\n\t\t *\n\t\t * Display a Google Pay payment button after confirmation of the viewer's\n\t\t * ability to pay.\n\t\t */ key: \"init\",\n value: function init() {\n // initialize for the various pages\n if ($('form.cart').length) this.initProductPage();\n else if ($('form.woocommerce-cart-form').length) this.initCartPage();\n else if ($('form.woocommerce-checkout').length) this.initCheckoutPage();\n else return;\n this.initGooglePay();\n }\n },\n {\n /**\n\t\t * Initializes Google Pay.\n\t\t */ key: \"initGooglePay\",\n value: function initGooglePay() {\n var _this = this;\n var paymentsClient = this.getGooglePaymentsClient();\n paymentsClient.isReadyToPay(this.getGoogleIsReadyToPayRequest()).then(function(response) {\n if (response.result) {\n _this.addGooglePayButton();\n // prefetch payment data to improve performance\n _this.prefetchGooglePaymentData();\n }\n }).catch(function(err) {\n _this.failPayment('Google Pay is not ready. ' + err);\n });\n }\n },\n {\n /**\n\t\t * Initializes the product page.\n\t\t */ key: \"initProductPage\",\n value: function initProductPage() {\n this.uiElement = $('form.cart');\n }\n },\n {\n /**\n\t\t * Initializes the cart page.\n\t\t */ key: \"initCartPage\",\n value: function initCartPage() {\n var _this = this;\n this.uiElement = $('form.woocommerce-cart-form').parents('div.woocommerce');\n // re-init if the cart totals are updated\n $(document.body).on('updated_cart_totals', function() {\n _this.initGooglePay();\n });\n }\n },\n {\n /**\n\t\t * Initializes the checkout page.\n\t\t */ key: \"initCheckoutPage\",\n value: function initCheckoutPage() {\n this.uiElement = $('form.woocommerce-checkout');\n }\n },\n {\n /**\n\t\t * Fails the purchase based on the gateway result.\n\t\t */ key: \"failPayment\",\n value: function failPayment(error) {\n console.error('[Google Pay] ' + error);\n this.unblockUI();\n this.renderErrors([\n this.genericError\n ]);\n }\n },\n {\n /**\n\t\t * Renders any new errors and bring them into the viewport.\n \t\t */ key: \"renderErrors\",\n value: function renderErrors(errors) {\n // hide and remove any previous errors\n $('.woocommerce-error, .woocommerce-message').remove();\n // add errors\n this.uiElement.prepend('
    • ' + errors.join('
    • ') + '
    ');\n // unblock UI\n this.uiElement.removeClass('processing').unblock();\n // scroll to top\n $('html, body').animate({\n scrollTop: this.uiElement.offset().top - 100\n }, 1000);\n }\n },\n {\n /**\n\t\t * Blocks the payment form UI.\n\t\t */ key: \"blockUI\",\n value: function blockUI() {\n this.uiElement.block({\n message: null,\n overlayCSS: {\n background: '#fff',\n opacity: 0.6\n }\n });\n }\n },\n {\n /**\n\t\t * Unblocks the payment form UI.\n\t\t */ key: \"unblockUI\",\n value: function unblockUI() {\n this.uiElement.unblock();\n }\n }\n ]);\n return SV_WC_Google_Pay_Handler_v5_15_9;\n }();\n $(document.body).trigger('sv_wc_google_pay_handler_v5_15_9_loaded');\n});\n\n\n//# sourceMappingURL=sv-wc-payment-gateway-google-pay.js.map\n","function _class_call_check(instance, Constructor) {\n if (!(instance instanceof Constructor)) throw new TypeError(\"Cannot call a class as a function\");\n}\nexport { _class_call_check as _ };\n","function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n\n if (\"value\" in descriptor) descriptor.writable = true;\n\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\nfunction _create_class(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n\n return Constructor;\n}\nexport { _create_class as _ };\n","jQuery( function( $ ) {\n\n\t\"use strict\"\n\n\t/**\n\t * Google Pay handler.\n\t *\n\t * @since 5.10.0\n\t *\n\t * @type {SV_WC_Google_Pay_Handler_v5_15_9} object\n\t */\n\twindow.SV_WC_Google_Pay_Handler_v5_15_9 = class SV_WC_Google_Pay_Handler_v5_15_9 {\n\n\t\t/**\n\t\t * Handler constructor.\n\t\t *\n\t\t * @since 5.10.0\n\t\t *\n\t\t * @param {Object} params The plugin ID\n\t\t * @param {string} params.plugin_id The plugin ID\n\t\t * @param {string} params.merchant_id The merchant ID\n\t\t * @param {string} params.merchant_name The site name\n\t\t * @param {string} params.gateway_id The gateway ID\n\t\t * @param {string} params.gateway_id_dasherized The gateway ID dasherized\n\t\t * @param {string} params.gateway_merchant_id The gateway merchant ID\n\t\t * @param {string} params.environment The gateway environment (PRODUCTION or TEST)\n\t\t * @param {string} params.ajax_url The AJAX URL\n\t\t * @param {string} params.recalculate_totals_nonce Nonce for the recalculate_totals AJAX action\n\t\t * @param {string} params.process_nonce Nonce for the process AJAX action\n\t\t * @param {string} params.button_style The button style\n\t\t * @param {string[]} params.card_types The supported card types\n\t\t * @param {string[]} params.available_countries Array of two-letter country codes the gateway is available for\n\t\t * @param {string[]} params.currency_code WC configured currency\n\t\t * @param {boolean} params.needs_shipping Whether or not the cart or product needs shipping\n\t\t * @param {string} params.generic_error The generic error message\n\t\t * @param {string} params.product_id The product ID if we are on a Product page\n\t\t */\n\t\tconstructor( params ) {\n\n\t\t\tlet {\n\t\t\t\tplugin_id,\n\t\t\t\tmerchant_id,\n\t\t\t\tmerchant_name,\n\t\t\t\tgateway_id,\n\t\t\t\tgateway_id_dasherized,\n\t\t\t\tgateway_merchant_id,\n\t\t\t\tenvironment,\n\t\t\t\tajax_url,\n\t\t\t\trecalculate_totals_nonce,\n\t\t\t\tprocess_nonce,\n\t\t\t\tbutton_style,\n\t\t\t\tcard_types,\n\t\t\t\tavailable_countries,\n\t\t\t\tcurrency_code,\n\t\t\t\tneeds_shipping,\n\t\t\t\tgeneric_error\n\t\t\t} = params;\n\n\t\t\tthis.gatewayID = gateway_id;\n\t\t\tthis.gatewayMerchantID = gateway_merchant_id;\n\t\t\tthis.merchantID = merchant_id;\n\t\t\tthis.merchantName = merchant_name;\n\t\t\tthis.environment = environment;\n\t\t\tthis.ajaxURL = ajax_url;\n\t\t\tthis.recalculateTotalsNonce = recalculate_totals_nonce;\n\t\t\tthis.processNonce = process_nonce;\n\t\t\tthis.buttonStyle = button_style;\n\t\t\tthis.availableCountries = available_countries;\n\t\t\tthis.currencyCode = currency_code;\n\t\t\tthis.needsShipping = needs_shipping;\n\t\t\tthis.genericError = generic_error;\n\n\t\t\tif ( params.product_id ) {\n\t\t\t\tthis.productID = params.product_id;\n\t\t\t}\n\n\t\t\t/**\n\t\t\t * Card networks supported by your site and your gateway\n\t\t\t *\n\t\t\t * @see {@link https://developers.google.com/pay/api/web/reference/request-objects#CardParameters|CardParameters}\n\t\t\t */\n\t\t\tconst allowedCardNetworks = card_types;\n\n\t\t\t/**\n\t\t\t * Define the version of the Google Pay API referenced when creating your configuration\n\t\t\t *\n\t\t\t * @see {@link https://developers.google.com/pay/api/web/reference/request-objects#PaymentDataRequest|apiVersion in PaymentDataRequest}\n\t\t\t */\n\t\t\tthis.baseRequest = {\n\t\t\t\tapiVersion: 2,\n\t\t\t\tapiVersionMinor: 0\n\t\t\t};\n\n\t\t\t/**\n\t\t\t * Card authentication methods supported by your site and your gateway\n\t\t\t *\n\t\t\t * @see {@link https://developers.google.com/pay/api/web/reference/request-objects#CardParameters|CardParameters}\n\t\t\t *\n\t\t\t * @todo confirm your processor supports Android device tokens for your supported card networks\n\t\t\t */\n\t\t\tconst allowedCardAuthMethods = [ 'PAN_ONLY', 'CRYPTOGRAM_3DS' ];\n\n\t\t\t/**\n\t\t\t * Identify your gateway and your site's gateway merchant identifier\n\t\t\t *\n\t\t\t * The Google Pay API response will return an encrypted payment method capable\n\t\t\t * of being charged by a supported gateway after payer authorization\n\t\t\t *\n\t\t\t * @see {@link https://developers.google.com/pay/api/web/reference/request-objects#gateway|PaymentMethodTokenizationSpecification}\n\t\t\t */\n\t\t\tconst tokenizationSpecification = {\n\t\t\t\ttype: 'PAYMENT_GATEWAY',\n\t\t\t\tparameters: {\n\t\t\t\t\t'gateway': plugin_id,\n\t\t\t\t\t'gatewayMerchantId': this.gatewayMerchantID\n\t\t\t\t}\n\t\t\t};\n\n\t\t\t/**\n\t\t\t * Describe your site's support for the CARD payment method and its required fields\n\t\t\t *\n\t\t\t * @see {@link https://developers.google.com/pay/api/web/reference/request-objects#CardParameters|CardParameters}\n\t\t\t */\n\t\t\tthis.baseCardPaymentMethod = {\n\t\t\t\ttype: 'CARD',\n\t\t\t\tparameters: {\n\t\t\t\t\tallowedAuthMethods: allowedCardAuthMethods,\n\t\t\t\t\tallowedCardNetworks: allowedCardNetworks,\n\t\t\t\t\tbillingAddressRequired: true,\n\t\t\t\t\tbillingAddressParameters: {\n\t\t\t\t\t\tformat: 'FULL',\n\t\t\t\t\t\tphoneNumberRequired: true\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t};\n\n\t\t\t/**\n\t\t\t * Describe your site's support for the CARD payment method including optional fields\n\t\t\t *\n\t\t\t * @see {@link https://developers.google.com/pay/api/web/reference/request-objects#CardParameters|CardParameters}\n\t\t\t */\n\t\t\tthis.cardPaymentMethod = Object.assign(\n\t\t\t\t{},\n\t\t\t\tthis.baseCardPaymentMethod,\n\t\t\t\t{\n\t\t\t\t\ttokenizationSpecification: tokenizationSpecification\n\t\t\t\t}\n\t\t\t);\n\n\t\t\t/**\n\t\t\t * An initialized google.payments.api.PaymentsClient object or null if not yet set\n\t\t\t *\n\t\t\t * @see {@link getGooglePaymentsClient}\n\t\t\t */\n\t\t\tthis.paymentsClient = null;\n\t\t}\n\n\t\t/**\n\t\t * Configure your site's support for payment methods supported by the Google Pay\n\t\t * API.\n\t\t *\n\t\t * Each member of allowedPaymentMethods should contain only the required fields,\n\t\t * allowing reuse of this base request when determining a viewer's ability\n\t\t * to pay and later requesting a supported payment method\n\t\t *\n\t\t * @returns {object} Google Pay API version, payment methods supported by the site\n\t\t */\n\t\tgetGoogleIsReadyToPayRequest() {\n\n\t\t\treturn Object.assign(\n\t\t\t\t{},\n\t\t\t\tthis.baseRequest,\n\t\t\t\t{\n\t\t\t\t\tallowedPaymentMethods: [ this.baseCardPaymentMethod ]\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\n\t\t/**\n\t\t * Configure support for the Google Pay API\n\t\t *\n\t\t * @see {@link https://developers.google.com/pay/api/web/reference/request-objects#PaymentDataRequest|PaymentDataRequest}\n\t\t *\n\t\t * @param {function} resolve callback\n\t\t * @returns {object} PaymentDataRequest fields\n\t\t */\n\t\tgetGooglePaymentDataRequest( resolve ) {\n\n\t\t\treturn this.getGoogleTransactionInfo( ( transactionInfo ) => {\n\n\t\t\t\tconst paymentDataRequest = Object.assign( {}, this.baseRequest );\n\t\t\t\tpaymentDataRequest.allowedPaymentMethods = [ this.cardPaymentMethod ];\n\t\t\t\tpaymentDataRequest.transactionInfo = transactionInfo;\n\t\t\t\tpaymentDataRequest.merchantInfo = {\n\t\t\t\t\tmerchantId: this.merchantID,\n\t\t\t\t\tmerchantName: this.merchantName\n\t\t\t\t};\n\n\t\t\t\tpaymentDataRequest.emailRequired = true;\n\t\t\t\tpaymentDataRequest.callbackIntents = [ 'PAYMENT_AUTHORIZATION' ];\n\n\t\t\t\tif ( this.needsShipping ) {\n\t\t\t\t\tpaymentDataRequest.callbackIntents = [ 'SHIPPING_ADDRESS', 'SHIPPING_OPTION', 'PAYMENT_AUTHORIZATION' ];\n\t\t\t\t\tpaymentDataRequest.shippingAddressRequired = true;\n\t\t\t\t\tpaymentDataRequest.shippingAddressParameters = this.getGoogleShippingAddressParameters();\n\t\t\t\t\tpaymentDataRequest.shippingOptionRequired = true;\n\t\t\t\t}\n\n\t\t\t\tresolve( paymentDataRequest );\n\t\t\t} );\n\t\t}\n\n\t\t/**\n\t\t * Return an active PaymentsClient or initialize\n\t\t *\n\t\t * @see {@link https://developers.google.com/pay/api/web/reference/client#PaymentsClient|PaymentsClient constructor}\n\t\t * @returns {google.payments.api.PaymentsClient} Google Pay API client\n\t\t */\n\t\tgetGooglePaymentsClient() {\n\t\t\tif ( this.paymentsClient === null ) {\n\t\t\t\tlet args = {\n\t\t\t\t\tenvironment: this.environment,\n\t\t\t\t\tmerchantInfo: {\n\t\t\t\t\t\tmerchantName: this.merchantName,\n\t\t\t\t\t\tmerchantId: this.merchantID\n\t\t\t\t\t},\n\t\t\t\t\tpaymentDataCallbacks: {\n\t\t\t\t\t\tonPaymentAuthorized: ( paymentData ) => this.onPaymentAuthorized( paymentData ),\n\t\t\t\t\t}\n\t\t\t\t};\n\n\t\t\t\tif ( this.needsShipping ) {\n\t\t\t\t\targs.paymentDataCallbacks.onPaymentDataChanged = ( paymentData ) => this.onPaymentDataChanged( paymentData );\n\t\t\t\t}\n\n\t\t\t\tthis.paymentsClient = new google.payments.api.PaymentsClient( args );\n\t\t\t}\n\t\t\treturn this.paymentsClient;\n\t\t}\n\n\t\t/**\n\t\t * Handles payment authorization callback intent.\n\t\t *\n\t\t * @param {object} paymentData response from Google Pay API after a payer approves payment.\n\t\t * @see {@link https://developers.google.com/pay/api/web/reference/response-objects#PaymentData|PaymentData object reference}\n\t\t *\n\t\t * @returns Promise<{object}> Promise object to complete or fail the transaction.\n\t\t */\n\t\tonPaymentAuthorized( paymentData ) {\n\n\t\t\tthis.blockUI();\n\n\t\t\treturn new Promise( (resolve, reject) => {\n\n\t\t\t\t// handle the response\n\t\t\t\ttry {\n\t\t\t\t\tthis.processPayment( paymentData, resolve );\n\t\t\t\t}\tcatch( err ) {\n\t\t\t\t\treject( {\n\t\t\t\t\t\ttransactionState: 'ERROR',\n\t\t\t\t\t\terror: {\n\t\t\t\t\t\t\tintent: 'PAYMENT_AUTHORIZATION',\n\t\t\t\t\t\t\tmessage: 'Payment could not be processed',\n\t\t\t\t\t\t\treason: 'PAYMENT_DATA_INVALID'\n\t\t\t\t\t\t}\n\t\t\t\t\t} );\n\t\t\t\t}\n\n\t\t\t\tthis.unblockUI();\n\t\t\t} );\n\t\t}\n\n\t\t/**\n\t\t * Handles dynamic buy flow shipping address and shipping options callback intents.\n\t\t *\n\t\t * @param {object} intermediatePaymentData response from Google Pay API a shipping address or shipping option is selected in the payment sheet.\n\t\t * @see {@link https://developers.google.com/pay/api/web/reference/response-objects#IntermediatePaymentData|IntermediatePaymentData object reference}\n\t\t *\n\t\t * @see {@link https://developers.google.com/pay/api/web/reference/response-objects#PaymentDataRequestUpdate|PaymentDataRequestUpdate}\n\t\t * @returns Promise<{object}> Promise of PaymentDataRequestUpdate object to update the payment sheet.\n\t\t */\n\t\tonPaymentDataChanged( intermediatePaymentData ) {\n\n\t\t\tthis.blockUI();\n\n\t\t\treturn new Promise(( resolve, reject ) => {\n\n\t\t\t\ttry {\n\t\t\t\t\tlet shippingAddress = intermediatePaymentData.shippingAddress;\n\t\t\t\t\tlet shippingOptionData = intermediatePaymentData.shippingOptionData;\n\t\t\t\t\tlet chosenShippingMethod = '';\n\n\t\t\t\t\tif ( intermediatePaymentData.callbackTrigger == 'SHIPPING_OPTION' ) {\n\t\t\t\t\t\tchosenShippingMethod = shippingOptionData.id;\n\t\t\t\t\t}\n\n\t\t\t\t\tthis.getUpdatedTotals( shippingAddress, chosenShippingMethod, ( paymentDataRequestUpdate ) => {\n\n\t\t\t\t\t\tif ( paymentDataRequestUpdate.newShippingOptionParameters.shippingOptions.length == 0 ) {\n\t\t\t\t\t\t\tpaymentDataRequestUpdate = {\n\t\t\t\t\t\t\t\terror: this.getGoogleUnserviceableAddressError()\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tresolve( paymentDataRequestUpdate );\n\t\t\t\t\t} );\n\n\t\t\t\t}\tcatch( err ) {\n\t\t\t\t\tthis.failPayment( 'Could not load updated totals or process payment data request update. ' + err );\n\t\t\t\t}\n\n\t\t\t\tthis.unblockUI();\n\t\t\t} );\n\t\t}\n\n\t\t/**\n\t\t * Provide Google Pay API with a payment amount, currency, and amount status\n\t\t *\n\t\t * @see {@link https://developers.google.com/pay/api/web/reference/request-objects#TransactionInfo|TransactionInfo}\n\t\t *\n\t\t * @param {function} resolve callback\n\t\t * @returns {object} transaction info, suitable for use as transactionInfo property of PaymentDataRequest\n\t\t */\n\t\tgetGoogleTransactionInfo( resolve ) {\n\n\t\t\t// get transaction info from cart\n\t\t\tconst data = {\n\t\t\t\taction: `wc_${this.gatewayID}_google_pay_get_transaction_info`,\n\t\t\t}\n\n\t\t\tif ( this.productID ) {\n\t\t\t\tdata.productID = this.productID;\n\t\t\t}\n\n\t\t\t$.post( this.ajaxURL, data, ( response ) => {\n\n\t\t\t\tif ( response.success ) {\n\t\t\t\t\tresolve( JSON.parse( response.data ) )\n\t\t\t\t} else {\n\t\t\t\t\tthis.failPayment( 'Could not build transaction info. ' + response.data.message );\n\t\t\t\t}\n\t\t\t} );\n\t\t}\n\n\t\t/**\n\t\t * Get updated totals and shipping options via AJAX for use in the PaymentDataRequest\n\t\t *\n\t\t * @see {@link https://developers.google.com/pay/api/web/reference/response-objects#PaymentDataRequestUpdate|PaymentDataRequestUpdate}\n\t\t *\n\t\t * @param {object} shippingAddress shipping address\n\t\t * @param {object} shippingMethod chosen shipping method\n\t\t * @param {function} resolve callback\n\t\t */\n\t\tgetUpdatedTotals( shippingAddress, shippingMethod, resolve ) {\n\n\t\t\tconst data = {\n\t\t\t\taction: `wc_${this.gatewayID}_google_pay_recalculate_totals`,\n\t\t\t\t'nonce': this.recalculateTotalsNonce,\n\t\t\t\tshippingAddress,\n\t\t\t\tshippingMethod\n\t\t\t}\n\n\t\t\tif ( this.productID ) {\n\t\t\t\tdata.productID = this.productID;\n\t\t\t}\n\n\t\t\t$.post( this.ajaxURL, data, ( response ) => {\n\n\t\t\t\tif ( response.success ) {\n\t\t\t\t\tresolve( JSON.parse( response.data ) )\n\t\t\t\t} else {\n\t\t\t\t\tthis.failPayment( 'Could not recalculate totals. ' + response.data.message );\n\t\t\t\t}\n\t\t\t} );\n\t\t}\n\n\t\t/**\n\t\t * Provide Google Pay API with shipping address parameters when using dynamic buy flow.\n\t\t *\n\t\t * @see {@link https://developers.google.com/pay/api/web/reference/request-objects#ShippingAddressParameters|ShippingAddressParameters}\n\t\t * @returns {object} shipping address details, suitable for use as shippingAddressParameters property of PaymentDataRequest\n\t\t */\n\t\tgetGoogleShippingAddressParameters() {\n\n\t\t\treturn {\n\t\t\t\tallowedCountryCodes: this.availableCountries\n\t\t\t};\n\t\t}\n\n\t\t/**\n\t\t * Provide Google Pay API with a payment data error.\n\t\t *\n\t\t * @see {@link https://developers.google.com/pay/api/web/reference/response-objects#PaymentDataError|PaymentDataError}\n\t\t * @returns {object} payment data error, suitable for use as error property of PaymentDataRequestUpdate\n\t\t */\n\t\tgetGoogleUnserviceableAddressError() {\n\t\t\treturn {\n\t\t\t\treason: 'SHIPPING_ADDRESS_UNSERVICEABLE',\n\t\t\t\tmessage: 'Cannot ship to the selected address',\n\t\t\t\tintent: 'SHIPPING_ADDRESS'\n\t\t\t};\n\t\t}\n\n\t\t/**\n\t\t * Add a Google Pay purchase button alongside an existing checkout button\n\t\t *\n\t\t * @see {@link https://developers.google.com/pay/api/web/reference/request-objects#ButtonOptions|Button options}\n\t\t * @see {@link https://developers.google.com/pay/api/web/guides/brand-guidelines|Google Pay brand guidelines}\n\t\t */\n\t\taddGooglePayButton() {\n\n\t\t\tconst paymentsClient = this.getGooglePaymentsClient();\n\t\t\tconst button = paymentsClient.createButton( {\n\t\t\t\tonClick: ( event ) => this.onGooglePaymentButtonClicked( event ),\n\t\t\t\tbuttonColor: this.buttonStyle,\n\t\t\t\tbuttonSizeMode: 'fill'\n\t\t\t} );\n\t\t\tdocument.getElementById( 'sv-wc-google-pay-button-container' ).appendChild( button );\n\t\t}\n\n\t\t/**\n\t\t * Prefetch payment data to improve performance\n\t\t *\n\t\t * @see {@link https://developers.google.com/pay/api/web/reference/client#prefetchPaymentData|prefetchPaymentData()}\n\t\t */\n\t\tprefetchGooglePaymentData() {\n\n\t\t\tthis.getGooglePaymentDataRequest( ( paymentDataRequest ) => {\n\n\t\t\t\t// transactionInfo must be set but does not affect cache\n\t\t\t\tpaymentDataRequest.transactionInfo = {\n\t\t\t\t\ttotalPriceStatus: 'NOT_CURRENTLY_KNOWN',\n\t\t\t\t\tcurrencyCode: this.currencyCode\n\t\t\t\t};\n\t\t\t\tconst paymentsClient = this.getGooglePaymentsClient();\n\t\t\t\tpaymentsClient.prefetchPaymentData( paymentDataRequest );\n\t\t\t} );\n\t\t}\n\n\t\t/**\n\t\t * Process payment data returned by the Google Pay API\n\t\t *\n\t\t * @see {@link https://developers.google.com/pay/api/web/reference/response-objects#PaymentData|PaymentData object reference}\n\t\t *\n\t\t * @param {object} paymentData response from Google Pay API after user approves payment\n\t\t * @param {function} resolve callback\n\t\t */\n\t\tprocessPayment( paymentData, resolve ) {\n\n\t\t\t// pass payment token to your gateway to process payment\n\t\t\tconst data = {\n\t\t\t\taction: `wc_${this.gatewayID}_google_pay_process_payment`,\n\t\t\t\tnonce: this.processNonce,\n\t\t\t\tpaymentData: JSON.stringify( paymentData ),\n\t\t\t}\n\n\t\t\tif ( this.productID && ! this.needsShipping ) {\n\t\t\t\tdata.productID = this.productID;\n\t\t\t}\n\n\t\t\treturn $.post( this.ajaxURL, data, ( response ) => {\n\t\t\t\tif ( response.success ) {\n\t\t\t\t\tresolve( {\n\t\t\t\t\t\ttransactionState: 'SUCCESS'\n\t\t\t\t\t} );\n\t\t\t\t\twindow.location = response.data.redirect;\n\t\t\t\t} else {\n\t\t\t\t\tresolve( {\n\t\t\t\t\t\ttransactionState: 'ERROR',\n\t\t\t\t\t\terror: {\n\t\t\t\t\t\t\tintent: 'SHIPPING_ADDRESS',\n\t\t\t\t\t\t\tmessage: 'Invalid data',\n\t\t\t\t\t\t\treason: 'PAYMENT_DATA_INVALID'\n\t\t\t\t\t\t}\n\t\t\t\t\t} );\n\t\t\t\t\tthis.failPayment( 'Payment could not be processed. ' + response.data.message );\n\t\t\t\t}\n\t\t\t} );\n\t\t}\n\n\t\t/**\n\t\t * Show Google Pay payment sheet when Google Pay payment button is clicked\n\t\t */\n\t\tonGooglePaymentButtonClicked( event ) {\n\n\t\t\tevent.preventDefault();\n\n\t\t\tthis.blockUI();\n\n\t\t\tthis.getGooglePaymentDataRequest( ( paymentDataRequest ) => {\n\n\t\t\t\tconst paymentsClient = this.getGooglePaymentsClient();\n\t\t\t\ttry {\n\t\t\t\t\tpaymentsClient.loadPaymentData( paymentDataRequest );\n\t\t\t\t} catch ( err ) {\n\t\t\t\t\tthis.failPayment( 'Could not load payment data. ' + err );\n\t\t\t\t}\n\n\t\t\t\tthis.unblockUI();\n\t\t\t} );\n\t\t}\n\n\t\t/**\n\t\t * Initialize Google PaymentsClient after Google-hosted JavaScript has loaded\n\t\t *\n\t\t * Display a Google Pay payment button after confirmation of the viewer's\n\t\t * ability to pay.\n\t\t */\n\t\tinit() {\n\n\t\t\t// initialize for the various pages\n\t\t\tif ( $( 'form.cart' ).length ) {\n\t\t\t\tthis.initProductPage();\n\t\t\t} else if ( $( 'form.woocommerce-cart-form' ).length ) {\n\t\t\t\tthis.initCartPage();\n\t\t\t} else if ( $( 'form.woocommerce-checkout' ).length) {\n\t\t\t\tthis.initCheckoutPage()\n\t\t\t} else {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis.initGooglePay();\n\t\t}\n\n\t\t/**\n\t\t * Initializes Google Pay.\n\t\t */\n\t\tinitGooglePay() {\n\n\t\t\tconst paymentsClient = this.getGooglePaymentsClient();\n\t\t\tpaymentsClient.isReadyToPay( this.getGoogleIsReadyToPayRequest() )\n\t\t\t\t.then( ( response ) => {\n\t\t\t\t\tif ( response.result ) {\n\t\t\t\t\t\tthis.addGooglePayButton();\n\t\t\t\t\t\t// prefetch payment data to improve performance\n\t\t\t\t\t\tthis.prefetchGooglePaymentData();\n\t\t\t\t\t}\n\t\t\t\t} )\n\t\t\t\t.catch( ( err ) => {\n\t\t\t\t\tthis.failPayment( 'Google Pay is not ready. ' + err );\n\t\t\t\t} );\n\t\t}\n\n\t\t/**\n\t\t * Initializes the product page.\n\t\t */\n\t\tinitProductPage() {\n\t\t\tthis.uiElement = $( 'form.cart' );\n\t\t}\n\n\t\t/**\n\t\t * Initializes the cart page.\n\t\t */\n\t\tinitCartPage() {\n\t\t\tthis.uiElement = $( 'form.woocommerce-cart-form' ).parents( 'div.woocommerce' );\n\n\t\t\t// re-init if the cart totals are updated\n\t\t\t$( document.body ).on( 'updated_cart_totals', () => {\n\t\t\t\tthis.initGooglePay();\n\t\t\t} );\n\t\t}\n\n\t\t/**\n\t\t * Initializes the checkout page.\n\t\t */\n\t\tinitCheckoutPage() {\n\t\t\tthis.uiElement = $( 'form.woocommerce-checkout' );\n\t\t}\n\n\t\t/**\n\t\t * Fails the purchase based on the gateway result.\n\t\t */\n\t\tfailPayment( error ) {\n\n\t\t\tconsole.error( '[Google Pay] ' + error );\n\n\t\t\tthis.unblockUI();\n\n\t\t\tthis.renderErrors( [ this.genericError ] );\n\t\t}\n\n\t\t/**\n\t\t * Renders any new errors and bring them into the viewport.\n \t\t */\n\t\trenderErrors( errors ) {\n\n\t\t\t// hide and remove any previous errors\n\t\t\t$( '.woocommerce-error, .woocommerce-message' ).remove();\n\n\t\t\t// add errors\n\t\t\tthis.uiElement.prepend( '
    • ' + errors.join( '
    • ' ) + '
    ' );\n\n\t\t\t// unblock UI\n\t\t\tthis.uiElement.removeClass( 'processing' ).unblock();\n\n\t\t\t// scroll to top\n\t\t\t$( 'html, body' ).animate( { scrollTop: this.uiElement.offset().top - 100 }, 1000 );\n\t\t}\n\n\t\t/**\n\t\t * Blocks the payment form UI.\n\t\t */\n\t\tblockUI() {\n\t\t\tthis.uiElement.block( { message: null, overlayCSS: { background: '#fff', opacity: 0.6 } } );\n\t\t}\n\n\t\t/**\n\t\t * Unblocks the payment form UI.\n\t\t */\n\t\tunblockUI() {\n\t\t\tthis.uiElement.unblock();\n\t\t}\n\t}\n\n\t$( document.body ).trigger( 'sv_wc_google_pay_handler_v5_15_9_loaded' );\n\n} );\n"],"names":["$parcel$export","e","n","v","s","Object","defineProperty","get","set","enumerable","configurable","$parcel$global","globalThis","self","window","global","$parcel$modules","$parcel$inits","parcelRequire","id","exports","init","module","call","err","Error","code","register","parcelRegister","$c0249d4a3fc9bb83$export$71511d61b312f219","instance","Constructor","TypeError","$690246f0b6925227$var$_defineProperties","target","props","i","length","descriptor","writable","key","$690246f0b6925227$export$71511d61b312f219","protoProps","staticProps","prototype","$guLUH","$90XvN","jQuery","$","SV_WC_Google_Pay_Handler_v5_15_9","params","_","plugin_id","merchant_id","merchant_name","gateway_id","gateway_merchant_id","gateway_id_dasherized","environment","ajax_url","recalculate_totals_nonce","process_nonce","button_style","card_types","available_countries","currency_code","needs_shipping","generic_error","gatewayID","gatewayMerchantID","merchantID","merchantName","ajaxURL","recalculateTotalsNonce","processNonce","buttonStyle","availableCountries","currencyCode","needsShipping","genericError","product_id","productID","baseRequest","apiVersion","apiVersionMinor","tokenizationSpecification","type","parameters","baseCardPaymentMethod","allowedAuthMethods","allowedCardNetworks","billingAddressRequired","billingAddressParameters","format","phoneNumberRequired","cardPaymentMethod","assign","paymentsClient","value","allowedPaymentMethods","resolve","_this","getGoogleTransactionInfo","transactionInfo","paymentDataRequest","merchantInfo","merchantId","emailRequired","callbackIntents","shippingAddressRequired","shippingAddressParameters","getGoogleShippingAddressParameters","shippingOptionRequired","args","paymentDataCallbacks","onPaymentAuthorized","paymentData","onPaymentDataChanged","google","payments","api","PaymentsClient","blockUI","Promise","reject","processPayment","transactionState","error","intent","message","reason","unblockUI","intermediatePaymentData","shippingAddress","shippingOptionData","chosenShippingMethod","callbackTrigger","getUpdatedTotals","paymentDataRequestUpdate","newShippingOptionParameters","shippingOptions","getGoogleUnserviceableAddressError","failPayment","data","action","concat","post","response","success","JSON","parse","shippingMethod","allowedCountryCodes","button","getGooglePaymentsClient","createButton","onClick","event","onGooglePaymentButtonClicked","buttonColor","buttonSizeMode","document","getElementById","appendChild","getGooglePaymentDataRequest","totalPriceStatus","prefetchPaymentData","nonce","stringify","location","redirect","preventDefault","loadPaymentData","initProductPage","initCartPage","initCheckoutPage","initGooglePay","isReadyToPay","getGoogleIsReadyToPayRequest","then","result","addGooglePayButton","prefetchGooglePaymentData","catch","uiElement","parents","body","on","console","renderErrors","errors","remove","prepend","join","removeClass","unblock","animate","scrollTop","offset","top","block","overlayCSS","background","opacity","trigger"],"version":3,"file":"sv-wc-payment-gateway-google-pay.js.map","sourceRoot":"../../../../../"} \ No newline at end of file diff --git a/woocommerce/payment-gateway/assets/dist/frontend/sv-wc-payment-gateway-my-payment-methods.js b/woocommerce/payment-gateway/assets/dist/frontend/sv-wc-payment-gateway-my-payment-methods.js index d6e5d43d1..5eda13012 100644 --- a/woocommerce/payment-gateway/assets/dist/frontend/sv-wc-payment-gateway-my-payment-methods.js +++ b/woocommerce/payment-gateway/assets/dist/frontend/sv-wc-payment-gateway-my-payment-methods.js @@ -1,2 +1,2 @@ -function e(e,t,n,o){Object.defineProperty(e,t,{get:n,set:o,enumerable:!0,configurable:!0})}var t="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{},n={},o={},i=t.parcelRequire94c2;null==i&&((i=function(e){if(e in n)return n[e].exports;if(e in o){var t=o[e];delete o[e];var i={id:e,exports:{}};return n[e]=i,t.call(i.exports,i,i.exports),i.exports}var a=Error("Cannot find module '"+e+"'");throw a.code="MODULE_NOT_FOUND",a}).register=function(e,t){o[e]=t},t.parcelRequire94c2=i);var a=i.register;a("guLUH",function(t,n){e(t.exports,"_",function(){return o});function o(e,t){if(!(e instanceof t))throw TypeError("Cannot call a class as a function")}}),a("90XvN",function(t,n){function o(e,t){for(var n=0;n0&&e(o).find("td.woocommerce-PaymentMethod--method").html(i.html()),e(o).find("td.woocommerce-PaymentMethod--title").remove()})}},{key:"remove_duplicate_default_marks",value:function(){return e(".woocommerce-MyAccount-paymentMethods").find("tr").each(function(t,n){return e(n).find("td.woocommerce-PaymentMethod--default").find("mark.default:not(:first-child)").remove()})}},{key:"edit_method",value:function(t){var n,o;if(t.preventDefault(),0!==(o=(n=e(t.currentTarget)).parents("tr")).find("input[name=plugin-id][value=".concat(this.slug,"]")).length)return o.find("div.view").hide(),o.find("div.edit").show(),o.addClass("editing"),n.text(this.i18n.cancel_button).removeClass("edit").addClass("cancel-edit").removeClass("button"),this.enable_editing_ui()}},{key:"save_method",value:function(t){var n,o,i,a=this;if(t.preventDefault(),0!==(i=(n=e(t.currentTarget)).parents("tr")).find("input[name=plugin-id][value=".concat(this.slug,"]")).length)return this.block_ui(),i.next(".error").remove(),o={action:"wc_".concat(this.id,"_save_payment_method"),nonce:this.ajax_nonce,token_id:i.find("input[name=token-id]").val(),data:i.find("input[name]").serialize()},e.post(this.ajax_url,o).done(function(e){return e.success?(null!=e.data.title&&i.find(".woocommerce-PaymentMethod--method").html(e.data.title),null!=e.data.nonce&&(a.ajax_nonce=e.data.nonce),n.siblings(".cancel-edit").removeClass("cancel-edit").addClass("edit").text(a.i18n.edit_button).addClass("button"),i.removeClass("editing"),a.disable_editing_ui()):a.display_error(i,e.data)}).fail(function(e,t,n){return a.display_error(i,n)}).always(function(){return a.unblock_ui()})}},{key:"cancel_edit",value:function(t){var n,o;if(t.preventDefault(),0!==(o=(n=e(t.currentTarget)).parents("tr")).find("input[name=plugin-id][value=".concat(this.slug,"]")).length)return o.find("div.view").show(),o.find("div.edit").hide(),o.removeClass("editing"),n.removeClass("cancel-edit").addClass("edit").text(this.i18n.edit_button).addClass("button"),this.disable_editing_ui()}},{key:"enable_editing_ui",value:function(){return e(".woocommerce-MyAccount-paymentMethods").addClass("editing"),e('.button[href*="add-payment-method"]').addClass("disabled")}},{key:"disable_editing_ui",value:function(){return e(".woocommerce-MyAccount-paymentMethods").removeClass("editing"),e('.button[href*="add-payment-method"]').removeClass("disabled")}},{key:"block_ui",value:function(){return e(".woocommerce-MyAccount-paymentMethods").parent("div").block({message:null,overlayCSS:{background:"#fff",opacity:.6}})}},{key:"unblock_ui",value:function(){return e(".woocommerce-MyAccount-paymentMethods").parent("div").unblock()}},{key:"display_error",value:function(t,n){var o,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"";return console.error(n),i||(i=this.i18n.save_error),o=e(".woocommerce-MyAccount-paymentMethods thead tr th").length,e(''+i+"").insertAfter(t).find("td").delay(8e3).slideUp(200)}}]),t}(),e(document.body).trigger("sv_wc_payment_methods_handler_v5_15_8_loaded")})}).call(void 0); +function e(e,t,n,o){Object.defineProperty(e,t,{get:n,set:o,enumerable:!0,configurable:!0})}var t="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{},n={},o={},i=t.parcelRequire94c2;null==i&&((i=function(e){if(e in n)return n[e].exports;if(e in o){var t=o[e];delete o[e];var i={id:e,exports:{}};return n[e]=i,t.call(i.exports,i,i.exports),i.exports}var a=Error("Cannot find module '"+e+"'");throw a.code="MODULE_NOT_FOUND",a}).register=function(e,t){o[e]=t},t.parcelRequire94c2=i);var a=i.register;a("guLUH",function(t,n){e(t.exports,"_",function(){return o});function o(e,t){if(!(e instanceof t))throw TypeError("Cannot call a class as a function")}}),a("90XvN",function(t,n){function o(e,t){for(var n=0;n0&&e(o).find("td.woocommerce-PaymentMethod--method").html(i.html()),e(o).find("td.woocommerce-PaymentMethod--title").remove()})}},{key:"remove_duplicate_default_marks",value:function(){return e(".woocommerce-MyAccount-paymentMethods").find("tr").each(function(t,n){return e(n).find("td.woocommerce-PaymentMethod--default").find("mark.default:not(:first-child)").remove()})}},{key:"edit_method",value:function(t){var n,o;if(t.preventDefault(),0!==(o=(n=e(t.currentTarget)).parents("tr")).find("input[name=plugin-id][value=".concat(this.slug,"]")).length)return o.find("div.view").hide(),o.find("div.edit").show(),o.addClass("editing"),n.text(this.i18n.cancel_button).removeClass("edit").addClass("cancel-edit").removeClass("button"),this.enable_editing_ui()}},{key:"save_method",value:function(t){var n,o,i,a=this;if(t.preventDefault(),0!==(i=(n=e(t.currentTarget)).parents("tr")).find("input[name=plugin-id][value=".concat(this.slug,"]")).length)return this.block_ui(),i.next(".error").remove(),o={action:"wc_".concat(this.id,"_save_payment_method"),nonce:this.ajax_nonce,token_id:i.find("input[name=token-id]").val(),data:i.find("input[name]").serialize()},e.post(this.ajax_url,o).done(function(e){return e.success?(null!=e.data.title&&i.find(".woocommerce-PaymentMethod--method").html(e.data.title),null!=e.data.nonce&&(a.ajax_nonce=e.data.nonce),n.siblings(".cancel-edit").removeClass("cancel-edit").addClass("edit").text(a.i18n.edit_button).addClass("button"),i.removeClass("editing"),a.disable_editing_ui()):a.display_error(i,e.data)}).fail(function(e,t,n){return a.display_error(i,n)}).always(function(){return a.unblock_ui()})}},{key:"cancel_edit",value:function(t){var n,o;if(t.preventDefault(),0!==(o=(n=e(t.currentTarget)).parents("tr")).find("input[name=plugin-id][value=".concat(this.slug,"]")).length)return o.find("div.view").show(),o.find("div.edit").hide(),o.removeClass("editing"),n.removeClass("cancel-edit").addClass("edit").text(this.i18n.edit_button).addClass("button"),this.disable_editing_ui()}},{key:"enable_editing_ui",value:function(){return e(".woocommerce-MyAccount-paymentMethods").addClass("editing"),e('.button[href*="add-payment-method"]').addClass("disabled")}},{key:"disable_editing_ui",value:function(){return e(".woocommerce-MyAccount-paymentMethods").removeClass("editing"),e('.button[href*="add-payment-method"]').removeClass("disabled")}},{key:"block_ui",value:function(){return e(".woocommerce-MyAccount-paymentMethods").parent("div").block({message:null,overlayCSS:{background:"#fff",opacity:.6}})}},{key:"unblock_ui",value:function(){return e(".woocommerce-MyAccount-paymentMethods").parent("div").unblock()}},{key:"display_error",value:function(t,n){var o,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"";return console.error(n),i||(i=this.i18n.save_error),o=e(".woocommerce-MyAccount-paymentMethods thead tr th").length,e(''+i+"").insertAfter(t).find("td").delay(8e3).slideUp(200)}}]),t}(),e(document.body).trigger("sv_wc_payment_methods_handler_v5_15_9_loaded")})}).call(void 0); //# sourceMappingURL=sv-wc-payment-gateway-my-payment-methods.js.map diff --git a/woocommerce/payment-gateway/assets/dist/frontend/sv-wc-payment-gateway-my-payment-methods.js.map b/woocommerce/payment-gateway/assets/dist/frontend/sv-wc-payment-gateway-my-payment-methods.js.map index ba2fa6304..7f3ee3ae0 100644 --- a/woocommerce/payment-gateway/assets/dist/frontend/sv-wc-payment-gateway-my-payment-methods.js.map +++ b/woocommerce/payment-gateway/assets/dist/frontend/sv-wc-payment-gateway-my-payment-methods.js.map @@ -1 +1 @@ -{"mappings":"A,S,E,C,C,C,C,C,C,C,E,O,c,C,E,E,C,I,E,I,E,W,C,E,a,C,C,E,C,I,E,A,a,O,W,W,A,a,O,K,K,A,a,O,O,O,A,a,O,O,O,C,E,E,C,E,E,C,E,E,E,iB,A,O,I,A,C,E,S,C,E,G,K,E,O,C,C,E,C,O,C,G,K,E,C,I,E,C,C,E,A,Q,C,C,E,C,I,E,C,G,E,Q,C,C,E,O,C,C,E,C,E,E,I,C,E,O,C,E,E,O,E,E,O,A,C,I,E,A,M,uB,E,I,O,E,I,C,mB,C,C,E,Q,C,S,C,C,C,E,C,C,E,C,C,E,E,iB,C,G,I,E,E,Q,C,E,Q,S,C,C,C,E,E,E,O,C,I,W,O,C,GCAA,SAAS,EAAkB,CAAQ,CAAE,CAAW,EAC5C,GAAI,CAAE,CAAA,aAAoB,CAAA,EAAc,MAAM,AAAI,UAAU,oCAChE,C,G,E,Q,S,C,C,C,ECFA,SAAS,EAAkB,CAAM,CAAE,CAAK,EACpC,IAAK,IAAI,EAAI,EAAG,EAAI,EAAM,MAAM,CAAE,IAAK,CACnC,IAAI,EAAa,CAAK,CAAC,EAAE,AACzB,CAAA,EAAW,UAAU,CAAG,EAAW,UAAU,EAAI,CAAA,EACjD,EAAW,YAAY,CAAG,CAAA,EAEtB,UAAW,GAAY,CAAA,EAAW,QAAQ,CAAG,CAAA,CAAjD,EAEA,OAAO,cAAc,CAAC,EAAQ,EAAW,GAAG,CAAE,EAClD,CACJ,CACA,SAAS,EAAc,CAAW,CAAE,CAAU,CAAE,CAAW,EAIvD,OAHI,GAAY,EAAkB,EAAY,SAAS,CAAE,GACrD,GAAa,EAAkB,EAAa,GAEzC,CACX,C,E,E,O,C,I,W,O,C,E,G,I,E,E,S,E,E,SCTG,AAAA,CAAA,WACH,OAAO,SAAE,CAAF,EAwQN,OAlQM,OAAO,qCAAA,CAAb,WAAA,SAAA,EAagB,CAAF,E,I,E,I,CAbd,AAAA,CAAA,EAAA,EAAA,CAAA,AAAA,EAAA,IAAA,CAAA,GA2DC,IAAA,CAAA,qBAAA,CAAA,IAAA,CAAA,qBAAA,CAAA,IAAA,CAAA,IAAA,EA4BA,IAAA,CAAA,8BAAA,CAAA,IAAA,CAAA,8BAAA,CAAA,IAAA,CAAA,IAAA,EAYA,IAAA,CAAA,WAAA,CAAA,IAAA,CAAA,WAAA,C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","sources":["","node_modules/@swc/helpers/esm/_class_call_check.js","node_modules/@swc/helpers/esm/_create_class.js","woocommerce/payment-gateway/assets/js/frontend/sv-wc-payment-gateway-my-payment-methods.coffee"],"sourcesContent":["\nfunction $parcel$export(e, n, v, s) {\n Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});\n}\n\n var $parcel$global =\n typeof globalThis !== 'undefined'\n ? globalThis\n : typeof self !== 'undefined'\n ? self\n : typeof window !== 'undefined'\n ? window\n : typeof global !== 'undefined'\n ? global\n : {};\n \nvar $parcel$modules = {};\nvar $parcel$inits = {};\n\nvar parcelRequire = $parcel$global[\"parcelRequire94c2\"];\n\nif (parcelRequire == null) {\n parcelRequire = function(id) {\n if (id in $parcel$modules) {\n return $parcel$modules[id].exports;\n }\n if (id in $parcel$inits) {\n var init = $parcel$inits[id];\n delete $parcel$inits[id];\n var module = {id: id, exports: {}};\n $parcel$modules[id] = module;\n init.call(module.exports, module, module.exports);\n return module.exports;\n }\n var err = new Error(\"Cannot find module '\" + id + \"'\");\n err.code = 'MODULE_NOT_FOUND';\n throw err;\n };\n\n parcelRequire.register = function register(id, init) {\n $parcel$inits[id] = init;\n };\n\n $parcel$global[\"parcelRequire94c2\"] = parcelRequire;\n}\n\nvar parcelRegister = parcelRequire.register;\nparcelRegister(\"guLUH\", function(module, exports) {\n\n$parcel$export(module.exports, \"_\", function () { return $c0249d4a3fc9bb83$export$71511d61b312f219; });\nfunction $c0249d4a3fc9bb83$export$71511d61b312f219(instance, Constructor) {\n if (!(instance instanceof Constructor)) throw new TypeError(\"Cannot call a class as a function\");\n}\n\n});\n\nparcelRegister(\"90XvN\", function(module, exports) {\n\n$parcel$export(module.exports, \"_\", function () { return $690246f0b6925227$export$71511d61b312f219; });\nfunction $690246f0b6925227$var$_defineProperties(target, props) {\n for(var i = 0; i < props.length; i++){\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\nfunction $690246f0b6925227$export$71511d61b312f219(Constructor, protoProps, staticProps) {\n if (protoProps) $690246f0b6925227$var$_defineProperties(Constructor.prototype, protoProps);\n if (staticProps) $690246f0b6925227$var$_defineProperties(Constructor, staticProps);\n return Constructor;\n}\n\n});\n\n\nvar $guLUH = parcelRequire(\"guLUH\");\n\nvar $90XvN = parcelRequire(\"90XvN\");\n(function() {\n /*\n WooCommerce SkyVerge Payment Gateway My Payment Methods CoffeeScript\n Version 5.1.0\n\n Copyright (c) 2014-2024, SkyVerge, Inc.\n Licensed under the GNU General Public License v3.0\n http://www.gnu.org/licenses/gpl-3.0.html\n */ jQuery(function($) {\n \"use strict\";\n // The My Payment Methods handler.\n // @since 5.1.0\n window.SV_WC_Payment_Methods_Handler_v5_15_8 = /*#__PURE__*/ function() {\n function SV_WC_Payment_Methods_Handler_v5_15_8(args) {\n var _this = this;\n (0, $guLUH._)(this, SV_WC_Payment_Methods_Handler_v5_15_8);\n // Replace Method column content with Title column content, for FW tokens.\n // @since 5.8.0\n this.replace_method_column = this.replace_method_column.bind(this);\n // Removes duplicate \"Default\" marks.\n // They are already hidden using CSS, but should also be removed for accessibility.\n // @since 5.8.0\n this.remove_duplicate_default_marks = this.remove_duplicate_default_marks.bind(this);\n // Edits a payment method.\n // @since 5.1.0\n // @param [Object] event jQuery event object\n this.edit_method = this.edit_method.bind(this);\n // Saves a payment method.\n // @since 5.1.0\n // @param [Object] event jQuery event object\n this.save_method = this.save_method.bind(this);\n // Cancels/stop editing a payment method.\n // @since 5.1.0\n // @param [Object] event jQuery event object\n this.cancel_edit = this.cancel_edit.bind(this);\n this.id = args.id;\n this.slug = args.slug;\n this.i18n = args.i18n;\n this.ajax_url = args.ajax_url;\n this.ajax_nonce = args.ajax_nonce;\n // replace the \"Method\" column content for FW tokens\n this.replace_method_column();\n // remove duplicate \"Default\" marks\n this.remove_duplicate_default_marks();\n // handle the edit action\n $(\".woocommerce-MyAccount-paymentMethods\").on('click', \".woocommerce-PaymentMethod--actions .button.edit\", function(event1) {\n return _this.edit_method(event1);\n });\n // handle the save action\n $(\".woocommerce-MyAccount-paymentMethods\").on('click', \".woocommerce-PaymentMethod--actions .button.save\", function(event1) {\n return _this.save_method(event1);\n });\n // handle the cancel action\n $(\".woocommerce-MyAccount-paymentMethods\").on('click', \".woocommerce-PaymentMethod--actions .cancel-edit\", function(event1) {\n return _this.cancel_edit(event1);\n });\n // handle the delete action\n $(\".woocommerce-MyAccount-paymentMethods\").on('click', \".woocommerce-PaymentMethod--actions .button.delete\", function(event1) {\n var button, row;\n button = $(event1.currentTarget);\n row = button.parents('tr');\n // check if the method belongs to this plugin\n if (row.find(\"input[name=plugin-id][value=\".concat(_this.slug, \"]\")).length === 0) return;\n if (!confirm(_this.i18n.delete_ays)) return event1.preventDefault();\n });\n // don't follow the Add Payment Method button URL if it's disabled\n $('.button[href*=\"add-payment-method\"]').on('click', event(function() {\n if ($(this).hasClass('disabled')) return event.preventDefault();\n }));\n }\n (0, $90XvN._)(SV_WC_Payment_Methods_Handler_v5_15_8, [\n {\n key: \"replace_method_column\",\n value: function replace_method_column() {\n var _this = this;\n return $('.woocommerce-MyAccount-paymentMethods').find('tr').each(function(index, element) {\n var titleColumn;\n // check if the method belongs to this plugin\n if ($(element).find(\"input[name=plugin-id][value=\".concat(_this.slug, \"]\")).length === 0) return;\n // delete the Title header\n $(element).find('th.woocommerce-PaymentMethod--title').remove();\n titleColumn = $(element).find('td.woocommerce-PaymentMethod--title');\n // Title column is not empty, this is a FW token\n if (titleColumn.children().length > 0) // replace Method column\n $(element).find('td.woocommerce-PaymentMethod--method').html(titleColumn.html());\n // delete Title column\n return $(element).find('td.woocommerce-PaymentMethod--title').remove();\n });\n }\n },\n {\n key: \"remove_duplicate_default_marks\",\n value: function remove_duplicate_default_marks() {\n return $('.woocommerce-MyAccount-paymentMethods').find('tr').each(function(index, element) {\n return $(element).find('td.woocommerce-PaymentMethod--default').find('mark.default:not(:first-child)').remove();\n });\n }\n },\n {\n key: \"edit_method\",\n value: function edit_method(event1) {\n var button, row;\n event1.preventDefault();\n button = $(event1.currentTarget);\n row = button.parents('tr');\n // check if the method belongs to this plugin\n if (row.find(\"input[name=plugin-id][value=\".concat(this.slug, \"]\")).length === 0) return;\n row.find('div.view').hide();\n row.find('div.edit').show();\n row.addClass('editing');\n // change the Edit button to \"Cancel\"\n button.text(this.i18n.cancel_button).removeClass('edit').addClass('cancel-edit').removeClass('button');\n return this.enable_editing_ui();\n }\n },\n {\n key: \"save_method\",\n value: function save_method(event1) {\n var _this = this;\n var button, data, row;\n event1.preventDefault();\n button = $(event1.currentTarget);\n row = button.parents('tr');\n // check if the method belongs to this plugin\n if (row.find(\"input[name=plugin-id][value=\".concat(this.slug, \"]\")).length === 0) return;\n this.block_ui();\n // remove any previous errors\n row.next('.error').remove();\n data = {\n action: \"wc_\".concat(this.id, \"_save_payment_method\"),\n nonce: this.ajax_nonce,\n token_id: row.find('input[name=token-id]').val(),\n data: row.find('input[name]').serialize()\n };\n return $.post(this.ajax_url, data).done(function(response) {\n if (!response.success) return _this.display_error(row, response.data);\n if (response.data.title != null) row.find('.woocommerce-PaymentMethod--method').html(response.data.title);\n if (response.data.nonce != null) _this.ajax_nonce = response.data.nonce;\n // change the \"Cancel\" button back to \"Edit\"\n button.siblings('.cancel-edit').removeClass('cancel-edit').addClass('edit').text(_this.i18n.edit_button).addClass('button');\n row.removeClass('editing');\n return _this.disable_editing_ui();\n }).fail(function(jqXHR, textStatus, error) {\n return _this.display_error(row, error);\n }).always(function() {\n return _this.unblock_ui();\n });\n }\n },\n {\n key: \"cancel_edit\",\n value: function cancel_edit(event1) {\n var button, row;\n event1.preventDefault();\n button = $(event1.currentTarget);\n row = button.parents('tr');\n // check if the method belongs to this plugin\n if (row.find(\"input[name=plugin-id][value=\".concat(this.slug, \"]\")).length === 0) return;\n row.find('div.view').show();\n row.find('div.edit').hide();\n row.removeClass('editing');\n // change the \"Cancel\" button back to \"Edit\"\n button.removeClass('cancel-edit').addClass('edit').text(this.i18n.edit_button).addClass('button');\n return this.disable_editing_ui();\n }\n },\n {\n // Sets the page UI to the \"editing\" state.\n // This brings proper focus to the method being edited and prevents\n // other available buttons/actions until the editing is finished or cancelled.\n // @since 5.1.1\n key: \"enable_editing_ui\",\n value: function enable_editing_ui() {\n // set the methods table as 'editing'\n $(\".woocommerce-MyAccount-paymentMethods\").addClass('editing');\n // disable the Add Payment Method button\n return $('.button[href*=\"add-payment-method\"]').addClass('disabled');\n }\n },\n {\n // Sets the page UI back to the default state.\n // @since 5.1.1\n key: \"disable_editing_ui\",\n value: function disable_editing_ui() {\n // removes the methods table's \"editing\" status\n $(\".woocommerce-MyAccount-paymentMethods\").removeClass('editing');\n // re-enable the Add Payment Method button\n return $('.button[href*=\"add-payment-method\"]').removeClass('disabled');\n }\n },\n {\n // Blocks the payment methods table UI.\n // @since 5.1.0\n key: \"block_ui\",\n value: function block_ui() {\n return $(\".woocommerce-MyAccount-paymentMethods\").parent('div').block({\n message: null,\n overlayCSS: {\n background: '#fff',\n opacity: 0.6\n }\n });\n }\n },\n {\n // Unblocks the payment methods table UI.\n // @since 5.1.0\n key: \"unblock_ui\",\n value: function unblock_ui() {\n return $(\".woocommerce-MyAccount-paymentMethods\").parent('div').unblock();\n }\n },\n {\n // Displays an error message to the user.\n // @since 5.1.0\n // @param [Object] row payment method table row\n // @param [String] error raw error message\n // @param [String] message user error message\n key: \"display_error\",\n value: function display_error(row, error) {\n var message = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : '';\n var columns;\n console.error(error);\n if (!message) message = this.i18n.save_error;\n columns = $(\".woocommerce-MyAccount-paymentMethods thead tr th\").length;\n return $('' + message + '').insertAfter(row).find('td').delay(8000).slideUp(200);\n }\n }\n ]);\n return SV_WC_Payment_Methods_Handler_v5_15_8;\n }();\n // dispatch loaded event\n return $(document.body).trigger('sv_wc_payment_methods_handler_v5_15_8_loaded');\n });\n}).call(undefined);\n\n\n//# sourceMappingURL=sv-wc-payment-gateway-my-payment-methods.js.map\n","function _class_call_check(instance, Constructor) {\n if (!(instance instanceof Constructor)) throw new TypeError(\"Cannot call a class as a function\");\n}\nexport { _class_call_check as _ };\n","function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n\n if (\"value\" in descriptor) descriptor.writable = true;\n\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\nfunction _create_class(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n\n return Constructor;\n}\nexport { _create_class as _ };\n","###\n WooCommerce SkyVerge Payment Gateway My Payment Methods CoffeeScript\n Version 5.1.0\n\n Copyright (c) 2014-2024, SkyVerge, Inc.\n Licensed under the GNU General Public License v3.0\n http://www.gnu.org/licenses/gpl-3.0.html\n###\njQuery ( $ ) ->\n\t\"use strict\"\n\n\t# The My Payment Methods handler.\n\t#\n\t# @since 5.1.0\n\tclass window.SV_WC_Payment_Methods_Handler_v5_15_8\n\n\n\t\t# Constructs the class.\n\t\t#\n\t\t# @since 5.1.0\n\t\t#\n\t\t# @param [Object] args, with the properties:\n\t\t# id: [String] plugin ID\n\t\t# slug: [String] plugin slug or dasherized ID\n\t\t# i18n: [Object] localized text strings\n\t\t# ajax_url: [String] URL for AJAX requests\n\t\t# ajax_nonce: [String] nonce for AJAX requests\n\t\tconstructor: ( args ) ->\n\n\t\t\t@id = args.id\n\t\t\t@slug = args.slug\n\t\t\t@i18n = args.i18n\n\t\t\t@ajax_url = args.ajax_url\n\t\t\t@ajax_nonce = args.ajax_nonce\n\n\t\t\t# replace the \"Method\" column content for FW tokens\n\t\t\tthis.replace_method_column()\n\n\t\t\t# remove duplicate \"Default\" marks\n\t\t\tthis.remove_duplicate_default_marks()\n\n\t\t\t# handle the edit action\n\t\t\t$( \".woocommerce-MyAccount-paymentMethods\" ).on( 'click', \".woocommerce-PaymentMethod--actions .button.edit\", ( event ) => this.edit_method( event ) )\n\n\t\t\t# handle the save action\n\t\t\t$( \".woocommerce-MyAccount-paymentMethods\" ).on( 'click', \".woocommerce-PaymentMethod--actions .button.save\", ( event ) => this.save_method( event ) )\n\n\t\t\t# handle the cancel action\n\t\t\t$( \".woocommerce-MyAccount-paymentMethods\" ).on( 'click', \".woocommerce-PaymentMethod--actions .cancel-edit\", ( event ) => this.cancel_edit( event ) )\n\n\t\t\t# handle the delete action\n\t\t\t$( \".woocommerce-MyAccount-paymentMethods\" ).on( 'click', \".woocommerce-PaymentMethod--actions .button.delete\", ( event ) =>\n\n\t\t\t\tbutton = $( event.currentTarget )\n\t\t\t\trow = button.parents( 'tr' )\n\n\t\t\t\t# check if the method belongs to this plugin\n\t\t\t\tif row.find( \"input[name=plugin-id][value=#{@slug}]\" ).length is 0\n\t\t\t\t\treturn\n\n\t\t\t\tif not confirm( @i18n.delete_ays )\n\t\t\t\t\tevent.preventDefault()\n\n\t\t\t)\n\n\t\t\t# don't follow the Add Payment Method button URL if it's disabled\n\t\t\t$( '.button[href*=\"add-payment-method\"]' ).on 'click', event ->\n\t\t\t\tevent.preventDefault() if $( this ).hasClass( 'disabled' )\n\n\n\t\t# Replace Method column content with Title column content, for FW tokens.\n\t\t#\n\t\t# @since 5.8.0\n\t\treplace_method_column: =>\n\n\t\t\t$( '.woocommerce-MyAccount-paymentMethods' ).find( 'tr' ).each ( index, element ) =>\n\n\t\t\t\t# check if the method belongs to this plugin\n\t\t\t\tif $( element ).find( \"input[name=plugin-id][value=#{@slug}]\" ).length is 0\n\t\t\t\t\treturn\n\n\t\t\t\t# delete the Title header\n\t\t\t\t$( element ).find( 'th.woocommerce-PaymentMethod--title' ).remove()\n\n\t\t\t\ttitleColumn = $( element ).find( 'td.woocommerce-PaymentMethod--title' )\n\n\t\t\t\t# Title column is not empty, this is a FW token\n\t\t\t\tif ( titleColumn.children().length > 0 )\n\n\t\t\t\t\t# replace Method column\n\t\t\t\t\t$( element ).find( 'td.woocommerce-PaymentMethod--method' ).html( titleColumn.html() )\n\n\t\t\t\t# delete Title column\n\t\t\t\t$( element ).find( 'td.woocommerce-PaymentMethod--title' ).remove()\n\n\n\t\t# Removes duplicate \"Default\" marks.\n\t\t#\n\t\t# They are already hidden using CSS, but should also be removed for accessibility.\n\t\t#\n\t\t# @since 5.8.0\n\t\tremove_duplicate_default_marks: =>\n\n\t\t\t$( '.woocommerce-MyAccount-paymentMethods' ).find( 'tr' ).each ( index, element ) =>\n\n\t\t\t\t$( element ).find( 'td.woocommerce-PaymentMethod--default' ).find( 'mark.default:not(:first-child)' ).remove()\n\n\n\t\t# Edits a payment method.\n\t\t#\n\t\t# @since 5.1.0\n\t\t#\n\t\t# @param [Object] event jQuery event object\n\t\tedit_method: ( event ) =>\n\n\t\t\tevent.preventDefault()\n\n\t\t\tbutton = $( event.currentTarget )\n\t\t\trow = button.parents( 'tr' )\n\n\t\t\t# check if the method belongs to this plugin\n\t\t\tif row.find( \"input[name=plugin-id][value=#{@slug}]\" ).length is 0\n\t\t\t\treturn\n\n\t\t\trow.find( 'div.view' ).hide()\n\t\t\trow.find( 'div.edit' ).show()\n\t\t\trow.addClass( 'editing' )\n\n\t\t\t# change the Edit button to \"Cancel\"\n\t\t\tbutton.text( @i18n.cancel_button ).removeClass( 'edit' ).addClass( 'cancel-edit' ).removeClass( 'button' )\n\n\t\t\tthis.enable_editing_ui()\n\n\n\t\t# Saves a payment method.\n\t\t#\n\t\t# @since 5.1.0\n\t\t#\n\t\t# @param [Object] event jQuery event object\n\t\tsave_method: ( event ) =>\n\n\t\t\tevent.preventDefault()\n\n\t\t\tbutton = $( event.currentTarget )\n\t\t\trow = button.parents( 'tr' )\n\n\t\t\t# check if the method belongs to this plugin\n\t\t\tif row.find( \"input[name=plugin-id][value=#{@slug}]\" ).length is 0\n\t\t\t\treturn\n\n\t\t\tthis.block_ui()\n\n\t\t\t# remove any previous errors\n\t\t\trow.next( '.error' ).remove()\n\n\t\t\tdata =\n\t\t\t\taction: \"wc_#{@id}_save_payment_method\"\n\t\t\t\tnonce: @ajax_nonce\n\t\t\t\ttoken_id: row.find( 'input[name=token-id]' ).val()\n\t\t\t\tdata: row.find( 'input[name]' ).serialize()\n\n\t\t\t$.post( @ajax_url, data )\n\n\t\t\t\t.done ( response ) =>\n\n\t\t\t\t\treturn this.display_error( row, response.data ) unless response.success\n\n\t\t\t\t\tif response.data.title?\n\t\t\t\t\t\trow.find('.woocommerce-PaymentMethod--method').html( response.data.title )\n\n\t\t\t\t\tif response.data.nonce?\n\t\t\t\t\t\t@ajax_nonce = response.data.nonce\n\n\t\t\t\t\t# change the \"Cancel\" button back to \"Edit\"\n\t\t\t\t\tbutton.siblings( '.cancel-edit' ).removeClass( 'cancel-edit' ).addClass( 'edit' ).text( @i18n.edit_button ).addClass( 'button' )\n\n\t\t\t\t\trow.removeClass( 'editing' )\n\n\t\t\t\t\tthis.disable_editing_ui()\n\n\t\t\t\t.fail ( jqXHR, textStatus, error ) =>\n\n\t\t\t\t\tthis.display_error( row, error )\n\n\t\t\t\t.always =>\n\n\t\t\t\t\tthis.unblock_ui()\n\n\n\t\t# Cancels/stop editing a payment method.\n\t\t#\n\t\t# @since 5.1.0\n\t\t#\n\t\t# @param [Object] event jQuery event object\n\t\tcancel_edit: ( event ) =>\n\n\t\t\tevent.preventDefault()\n\n\t\t\tbutton = $( event.currentTarget )\n\t\t\trow = button.parents( 'tr' )\n\n\t\t\t# check if the method belongs to this plugin\n\t\t\tif row.find( \"input[name=plugin-id][value=#{@slug}]\" ).length is 0\n\t\t\t\treturn\n\n\t\t\trow.find( 'div.view' ).show()\n\t\t\trow.find( 'div.edit' ).hide()\n\t\t\trow.removeClass( 'editing' )\n\n\t\t\t# change the \"Cancel\" button back to \"Edit\"\n\t\t\tbutton.removeClass( 'cancel-edit' ).addClass( 'edit' ).text( @i18n.edit_button ).addClass( 'button' )\n\n\t\t\tthis.disable_editing_ui()\n\n\n\t\t# Sets the page UI to the \"editing\" state.\n\t\t#\n\t\t# This brings proper focus to the method being edited and prevents\n\t\t# other available buttons/actions until the editing is finished or cancelled.\n\t\t#\n\t\t# @since 5.1.1\n\t\tenable_editing_ui: ->\n\n\t\t\t# set the methods table as 'editing'\n\t\t\t$( \".woocommerce-MyAccount-paymentMethods\" ).addClass( 'editing' )\n\n\t\t\t# disable the Add Payment Method button\n\t\t\t$( '.button[href*=\"add-payment-method\"]' ).addClass( 'disabled' )\n\n\n\t\t# Sets the page UI back to the default state.\n\t\t#\n\t\t# @since 5.1.1\n\t\tdisable_editing_ui: ->\n\n\t\t\t# removes the methods table's \"editing\" status\n\t\t\t$( \".woocommerce-MyAccount-paymentMethods\" ).removeClass( 'editing' )\n\n\t\t\t# re-enable the Add Payment Method button\n\t\t\t$( '.button[href*=\"add-payment-method\"]' ).removeClass( 'disabled' )\n\n\n\t\t# Blocks the payment methods table UI.\n\t\t#\n\t\t# @since 5.1.0\n\t\tblock_ui: -> $( \".woocommerce-MyAccount-paymentMethods\" ).parent( 'div' ).block( message: null, overlayCSS: background: '#fff', opacity: 0.6 )\n\n\n\t\t# Unblocks the payment methods table UI.\n\t\t#\n\t\t# @since 5.1.0\n\t\tunblock_ui: -> $( \".woocommerce-MyAccount-paymentMethods\" ).parent( 'div' ).unblock()\n\n\n\t\t# Displays an error message to the user.\n\t\t#\n\t\t# @since 5.1.0\n\t\t#\n\t\t# @param [Object] row payment method table row\n\t\t# @param [String] error raw error message\n\t\t# @param [String] message user error message\n\t\tdisplay_error: ( row, error, message = '' ) ->\n\n\t\t\tconsole.error( error )\n\n\t\t\tmessage = @i18n.save_error unless message\n\t\t\tcolumns = $( \".woocommerce-MyAccount-paymentMethods thead tr th\" ).length\n\n\t\t\t$( '' + message + '' ).insertAfter( row ).find( 'td' ).delay( 8000 ).slideUp( 200 )\n\n\n\t# dispatch loaded event\n\t$( document.body ).trigger( 'sv_wc_payment_methods_handler_v5_15_8_loaded' )\n"],"names":["$parcel$export","e","n","v","s","Object","defineProperty","get","set","enumerable","configurable","$parcel$global","globalThis","self","window","global","$parcel$modules","$parcel$inits","parcelRequire","id","exports","init","module","call","err","Error","code","register","parcelRegister","$c0249d4a3fc9bb83$export$71511d61b312f219","instance","Constructor","TypeError","$690246f0b6925227$var$_defineProperties","target","props","i","length","descriptor","writable","key","$690246f0b6925227$export$71511d61b312f219","protoProps","staticProps","prototype","$guLUH","$90XvN","jQuery","$","SV_WC_Payment_Methods_Handler_v5_15_8","args","_this","_","replace_method_column","bind","remove_duplicate_default_marks","edit_method","save_method","cancel_edit","slug","i18n","ajax_url","ajax_nonce","on","event1","row","button","currentTarget","parents","find","concat","confirm","delete_ays","preventDefault","event","hasClass","value","each","index","element","titleColumn","remove","children","html","hide","show","addClass","text","cancel_button","removeClass","enable_editing_ui","data","block_ui","next","action","nonce","token_id","val","serialize","post","done","response","success","title","siblings","edit_button","disable_editing_ui","display_error","fail","jqXHR","textStatus","error","always","unblock_ui","parent","block","message","overlayCSS","background","opacity","unblock","columns","arguments","console","save_error","insertAfter","delay","slideUp","document","body","trigger","undefined"],"version":3,"file":"sv-wc-payment-gateway-my-payment-methods.js.map","sourceRoot":"../../../../../"} \ No newline at end of file +{"mappings":"A,S,E,C,C,C,C,C,C,C,E,O,c,C,E,E,C,I,E,I,E,W,C,E,a,C,C,E,C,I,E,A,a,O,W,W,A,a,O,K,K,A,a,O,O,O,A,a,O,O,O,C,E,E,C,E,E,C,E,E,E,iB,A,O,I,A,C,E,S,C,E,G,K,E,O,C,C,E,C,O,C,G,K,E,C,I,E,C,C,E,A,Q,C,C,E,C,I,E,C,G,E,Q,C,C,E,O,C,C,E,C,E,E,I,C,E,O,C,E,E,O,E,E,O,A,C,I,E,A,M,uB,E,I,O,E,I,C,mB,C,C,E,Q,C,S,C,C,C,E,C,C,E,C,C,E,E,iB,C,G,I,E,E,Q,C,E,Q,S,C,C,C,E,E,E,O,C,I,W,O,C,GCAA,SAAS,EAAkB,CAAQ,CAAE,CAAW,EAC5C,GAAI,CAAE,CAAA,aAAoB,CAAA,EAAc,MAAM,AAAI,UAAU,oCAChE,C,G,E,Q,S,C,C,C,ECFA,SAAS,EAAkB,CAAM,CAAE,CAAK,EACpC,IAAK,IAAI,EAAI,EAAG,EAAI,EAAM,MAAM,CAAE,IAAK,CACnC,IAAI,EAAa,CAAK,CAAC,EAAE,AACzB,CAAA,EAAW,UAAU,CAAG,EAAW,UAAU,EAAI,CAAA,EACjD,EAAW,YAAY,CAAG,CAAA,EAEtB,UAAW,GAAY,CAAA,EAAW,QAAQ,CAAG,CAAA,CAAjD,EAEA,OAAO,cAAc,CAAC,EAAQ,EAAW,GAAG,CAAE,EAClD,CACJ,CACA,SAAS,EAAc,CAAW,CAAE,CAAU,CAAE,CAAW,EAIvD,OAHI,GAAY,EAAkB,EAAY,SAAS,CAAE,GACrD,GAAa,EAAkB,EAAa,GAEzC,CACX,C,E,E,O,C,I,W,O,C,E,G,I,E,E,S,E,E,SCTG,AAAA,CAAA,WACH,OAAO,SAAE,CAAF,EAwQN,OAlQM,OAAO,qCAAA,CAAb,WAAA,SAAA,EAagB,CAAF,E,I,E,I,CAbd,AAAA,CAAA,EAAA,EAAA,CAAA,AAAA,EAAA,IAAA,CAAA,GA2DC,IAAA,CAAA,qBAAA,CAAA,IAAA,CAAA,qBAAA,CAAA,IAAA,CAAA,IAAA,EA4BA,IAAA,CAAA,8BAAA,CAAA,IAAA,CAAA,8BAAA,CAAA,IAAA,CAAA,IAAA,EAYA,IAAA,CAAA,WAAA,CAAA,IAAA,CAAA,WAAA,C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","sources":["","node_modules/@swc/helpers/esm/_class_call_check.js","node_modules/@swc/helpers/esm/_create_class.js","woocommerce/payment-gateway/assets/js/frontend/sv-wc-payment-gateway-my-payment-methods.coffee"],"sourcesContent":["\nfunction $parcel$export(e, n, v, s) {\n Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});\n}\n\n var $parcel$global =\n typeof globalThis !== 'undefined'\n ? globalThis\n : typeof self !== 'undefined'\n ? self\n : typeof window !== 'undefined'\n ? window\n : typeof global !== 'undefined'\n ? global\n : {};\n \nvar $parcel$modules = {};\nvar $parcel$inits = {};\n\nvar parcelRequire = $parcel$global[\"parcelRequire94c2\"];\n\nif (parcelRequire == null) {\n parcelRequire = function(id) {\n if (id in $parcel$modules) {\n return $parcel$modules[id].exports;\n }\n if (id in $parcel$inits) {\n var init = $parcel$inits[id];\n delete $parcel$inits[id];\n var module = {id: id, exports: {}};\n $parcel$modules[id] = module;\n init.call(module.exports, module, module.exports);\n return module.exports;\n }\n var err = new Error(\"Cannot find module '\" + id + \"'\");\n err.code = 'MODULE_NOT_FOUND';\n throw err;\n };\n\n parcelRequire.register = function register(id, init) {\n $parcel$inits[id] = init;\n };\n\n $parcel$global[\"parcelRequire94c2\"] = parcelRequire;\n}\n\nvar parcelRegister = parcelRequire.register;\nparcelRegister(\"guLUH\", function(module, exports) {\n\n$parcel$export(module.exports, \"_\", function () { return $c0249d4a3fc9bb83$export$71511d61b312f219; });\nfunction $c0249d4a3fc9bb83$export$71511d61b312f219(instance, Constructor) {\n if (!(instance instanceof Constructor)) throw new TypeError(\"Cannot call a class as a function\");\n}\n\n});\n\nparcelRegister(\"90XvN\", function(module, exports) {\n\n$parcel$export(module.exports, \"_\", function () { return $690246f0b6925227$export$71511d61b312f219; });\nfunction $690246f0b6925227$var$_defineProperties(target, props) {\n for(var i = 0; i < props.length; i++){\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\nfunction $690246f0b6925227$export$71511d61b312f219(Constructor, protoProps, staticProps) {\n if (protoProps) $690246f0b6925227$var$_defineProperties(Constructor.prototype, protoProps);\n if (staticProps) $690246f0b6925227$var$_defineProperties(Constructor, staticProps);\n return Constructor;\n}\n\n});\n\n\nvar $guLUH = parcelRequire(\"guLUH\");\n\nvar $90XvN = parcelRequire(\"90XvN\");\n(function() {\n /*\n WooCommerce SkyVerge Payment Gateway My Payment Methods CoffeeScript\n Version 5.1.0\n\n Copyright (c) 2014-2024, SkyVerge, Inc.\n Licensed under the GNU General Public License v3.0\n http://www.gnu.org/licenses/gpl-3.0.html\n */ jQuery(function($) {\n \"use strict\";\n // The My Payment Methods handler.\n // @since 5.1.0\n window.SV_WC_Payment_Methods_Handler_v5_15_9 = /*#__PURE__*/ function() {\n function SV_WC_Payment_Methods_Handler_v5_15_9(args) {\n var _this = this;\n (0, $guLUH._)(this, SV_WC_Payment_Methods_Handler_v5_15_9);\n // Replace Method column content with Title column content, for FW tokens.\n // @since 5.8.0\n this.replace_method_column = this.replace_method_column.bind(this);\n // Removes duplicate \"Default\" marks.\n // They are already hidden using CSS, but should also be removed for accessibility.\n // @since 5.8.0\n this.remove_duplicate_default_marks = this.remove_duplicate_default_marks.bind(this);\n // Edits a payment method.\n // @since 5.1.0\n // @param [Object] event jQuery event object\n this.edit_method = this.edit_method.bind(this);\n // Saves a payment method.\n // @since 5.1.0\n // @param [Object] event jQuery event object\n this.save_method = this.save_method.bind(this);\n // Cancels/stop editing a payment method.\n // @since 5.1.0\n // @param [Object] event jQuery event object\n this.cancel_edit = this.cancel_edit.bind(this);\n this.id = args.id;\n this.slug = args.slug;\n this.i18n = args.i18n;\n this.ajax_url = args.ajax_url;\n this.ajax_nonce = args.ajax_nonce;\n // replace the \"Method\" column content for FW tokens\n this.replace_method_column();\n // remove duplicate \"Default\" marks\n this.remove_duplicate_default_marks();\n // handle the edit action\n $(\".woocommerce-MyAccount-paymentMethods\").on('click', \".woocommerce-PaymentMethod--actions .button.edit\", function(event1) {\n return _this.edit_method(event1);\n });\n // handle the save action\n $(\".woocommerce-MyAccount-paymentMethods\").on('click', \".woocommerce-PaymentMethod--actions .button.save\", function(event1) {\n return _this.save_method(event1);\n });\n // handle the cancel action\n $(\".woocommerce-MyAccount-paymentMethods\").on('click', \".woocommerce-PaymentMethod--actions .cancel-edit\", function(event1) {\n return _this.cancel_edit(event1);\n });\n // handle the delete action\n $(\".woocommerce-MyAccount-paymentMethods\").on('click', \".woocommerce-PaymentMethod--actions .button.delete\", function(event1) {\n var button, row;\n button = $(event1.currentTarget);\n row = button.parents('tr');\n // check if the method belongs to this plugin\n if (row.find(\"input[name=plugin-id][value=\".concat(_this.slug, \"]\")).length === 0) return;\n if (!confirm(_this.i18n.delete_ays)) return event1.preventDefault();\n });\n // don't follow the Add Payment Method button URL if it's disabled\n $('.button[href*=\"add-payment-method\"]').on('click', event(function() {\n if ($(this).hasClass('disabled')) return event.preventDefault();\n }));\n }\n (0, $90XvN._)(SV_WC_Payment_Methods_Handler_v5_15_9, [\n {\n key: \"replace_method_column\",\n value: function replace_method_column() {\n var _this = this;\n return $('.woocommerce-MyAccount-paymentMethods').find('tr').each(function(index, element) {\n var titleColumn;\n // check if the method belongs to this plugin\n if ($(element).find(\"input[name=plugin-id][value=\".concat(_this.slug, \"]\")).length === 0) return;\n // delete the Title header\n $(element).find('th.woocommerce-PaymentMethod--title').remove();\n titleColumn = $(element).find('td.woocommerce-PaymentMethod--title');\n // Title column is not empty, this is a FW token\n if (titleColumn.children().length > 0) // replace Method column\n $(element).find('td.woocommerce-PaymentMethod--method').html(titleColumn.html());\n // delete Title column\n return $(element).find('td.woocommerce-PaymentMethod--title').remove();\n });\n }\n },\n {\n key: \"remove_duplicate_default_marks\",\n value: function remove_duplicate_default_marks() {\n return $('.woocommerce-MyAccount-paymentMethods').find('tr').each(function(index, element) {\n return $(element).find('td.woocommerce-PaymentMethod--default').find('mark.default:not(:first-child)').remove();\n });\n }\n },\n {\n key: \"edit_method\",\n value: function edit_method(event1) {\n var button, row;\n event1.preventDefault();\n button = $(event1.currentTarget);\n row = button.parents('tr');\n // check if the method belongs to this plugin\n if (row.find(\"input[name=plugin-id][value=\".concat(this.slug, \"]\")).length === 0) return;\n row.find('div.view').hide();\n row.find('div.edit').show();\n row.addClass('editing');\n // change the Edit button to \"Cancel\"\n button.text(this.i18n.cancel_button).removeClass('edit').addClass('cancel-edit').removeClass('button');\n return this.enable_editing_ui();\n }\n },\n {\n key: \"save_method\",\n value: function save_method(event1) {\n var _this = this;\n var button, data, row;\n event1.preventDefault();\n button = $(event1.currentTarget);\n row = button.parents('tr');\n // check if the method belongs to this plugin\n if (row.find(\"input[name=plugin-id][value=\".concat(this.slug, \"]\")).length === 0) return;\n this.block_ui();\n // remove any previous errors\n row.next('.error').remove();\n data = {\n action: \"wc_\".concat(this.id, \"_save_payment_method\"),\n nonce: this.ajax_nonce,\n token_id: row.find('input[name=token-id]').val(),\n data: row.find('input[name]').serialize()\n };\n return $.post(this.ajax_url, data).done(function(response) {\n if (!response.success) return _this.display_error(row, response.data);\n if (response.data.title != null) row.find('.woocommerce-PaymentMethod--method').html(response.data.title);\n if (response.data.nonce != null) _this.ajax_nonce = response.data.nonce;\n // change the \"Cancel\" button back to \"Edit\"\n button.siblings('.cancel-edit').removeClass('cancel-edit').addClass('edit').text(_this.i18n.edit_button).addClass('button');\n row.removeClass('editing');\n return _this.disable_editing_ui();\n }).fail(function(jqXHR, textStatus, error) {\n return _this.display_error(row, error);\n }).always(function() {\n return _this.unblock_ui();\n });\n }\n },\n {\n key: \"cancel_edit\",\n value: function cancel_edit(event1) {\n var button, row;\n event1.preventDefault();\n button = $(event1.currentTarget);\n row = button.parents('tr');\n // check if the method belongs to this plugin\n if (row.find(\"input[name=plugin-id][value=\".concat(this.slug, \"]\")).length === 0) return;\n row.find('div.view').show();\n row.find('div.edit').hide();\n row.removeClass('editing');\n // change the \"Cancel\" button back to \"Edit\"\n button.removeClass('cancel-edit').addClass('edit').text(this.i18n.edit_button).addClass('button');\n return this.disable_editing_ui();\n }\n },\n {\n // Sets the page UI to the \"editing\" state.\n // This brings proper focus to the method being edited and prevents\n // other available buttons/actions until the editing is finished or cancelled.\n // @since 5.1.1\n key: \"enable_editing_ui\",\n value: function enable_editing_ui() {\n // set the methods table as 'editing'\n $(\".woocommerce-MyAccount-paymentMethods\").addClass('editing');\n // disable the Add Payment Method button\n return $('.button[href*=\"add-payment-method\"]').addClass('disabled');\n }\n },\n {\n // Sets the page UI back to the default state.\n // @since 5.1.1\n key: \"disable_editing_ui\",\n value: function disable_editing_ui() {\n // removes the methods table's \"editing\" status\n $(\".woocommerce-MyAccount-paymentMethods\").removeClass('editing');\n // re-enable the Add Payment Method button\n return $('.button[href*=\"add-payment-method\"]').removeClass('disabled');\n }\n },\n {\n // Blocks the payment methods table UI.\n // @since 5.1.0\n key: \"block_ui\",\n value: function block_ui() {\n return $(\".woocommerce-MyAccount-paymentMethods\").parent('div').block({\n message: null,\n overlayCSS: {\n background: '#fff',\n opacity: 0.6\n }\n });\n }\n },\n {\n // Unblocks the payment methods table UI.\n // @since 5.1.0\n key: \"unblock_ui\",\n value: function unblock_ui() {\n return $(\".woocommerce-MyAccount-paymentMethods\").parent('div').unblock();\n }\n },\n {\n // Displays an error message to the user.\n // @since 5.1.0\n // @param [Object] row payment method table row\n // @param [String] error raw error message\n // @param [String] message user error message\n key: \"display_error\",\n value: function display_error(row, error) {\n var message = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : '';\n var columns;\n console.error(error);\n if (!message) message = this.i18n.save_error;\n columns = $(\".woocommerce-MyAccount-paymentMethods thead tr th\").length;\n return $('' + message + '').insertAfter(row).find('td').delay(8000).slideUp(200);\n }\n }\n ]);\n return SV_WC_Payment_Methods_Handler_v5_15_9;\n }();\n // dispatch loaded event\n return $(document.body).trigger('sv_wc_payment_methods_handler_v5_15_9_loaded');\n });\n}).call(undefined);\n\n\n//# sourceMappingURL=sv-wc-payment-gateway-my-payment-methods.js.map\n","function _class_call_check(instance, Constructor) {\n if (!(instance instanceof Constructor)) throw new TypeError(\"Cannot call a class as a function\");\n}\nexport { _class_call_check as _ };\n","function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n\n if (\"value\" in descriptor) descriptor.writable = true;\n\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\nfunction _create_class(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n\n return Constructor;\n}\nexport { _create_class as _ };\n","###\n WooCommerce SkyVerge Payment Gateway My Payment Methods CoffeeScript\n Version 5.1.0\n\n Copyright (c) 2014-2024, SkyVerge, Inc.\n Licensed under the GNU General Public License v3.0\n http://www.gnu.org/licenses/gpl-3.0.html\n###\njQuery ( $ ) ->\n\t\"use strict\"\n\n\t# The My Payment Methods handler.\n\t#\n\t# @since 5.1.0\n\tclass window.SV_WC_Payment_Methods_Handler_v5_15_9\n\n\n\t\t# Constructs the class.\n\t\t#\n\t\t# @since 5.1.0\n\t\t#\n\t\t# @param [Object] args, with the properties:\n\t\t# id: [String] plugin ID\n\t\t# slug: [String] plugin slug or dasherized ID\n\t\t# i18n: [Object] localized text strings\n\t\t# ajax_url: [String] URL for AJAX requests\n\t\t# ajax_nonce: [String] nonce for AJAX requests\n\t\tconstructor: ( args ) ->\n\n\t\t\t@id = args.id\n\t\t\t@slug = args.slug\n\t\t\t@i18n = args.i18n\n\t\t\t@ajax_url = args.ajax_url\n\t\t\t@ajax_nonce = args.ajax_nonce\n\n\t\t\t# replace the \"Method\" column content for FW tokens\n\t\t\tthis.replace_method_column()\n\n\t\t\t# remove duplicate \"Default\" marks\n\t\t\tthis.remove_duplicate_default_marks()\n\n\t\t\t# handle the edit action\n\t\t\t$( \".woocommerce-MyAccount-paymentMethods\" ).on( 'click', \".woocommerce-PaymentMethod--actions .button.edit\", ( event ) => this.edit_method( event ) )\n\n\t\t\t# handle the save action\n\t\t\t$( \".woocommerce-MyAccount-paymentMethods\" ).on( 'click', \".woocommerce-PaymentMethod--actions .button.save\", ( event ) => this.save_method( event ) )\n\n\t\t\t# handle the cancel action\n\t\t\t$( \".woocommerce-MyAccount-paymentMethods\" ).on( 'click', \".woocommerce-PaymentMethod--actions .cancel-edit\", ( event ) => this.cancel_edit( event ) )\n\n\t\t\t# handle the delete action\n\t\t\t$( \".woocommerce-MyAccount-paymentMethods\" ).on( 'click', \".woocommerce-PaymentMethod--actions .button.delete\", ( event ) =>\n\n\t\t\t\tbutton = $( event.currentTarget )\n\t\t\t\trow = button.parents( 'tr' )\n\n\t\t\t\t# check if the method belongs to this plugin\n\t\t\t\tif row.find( \"input[name=plugin-id][value=#{@slug}]\" ).length is 0\n\t\t\t\t\treturn\n\n\t\t\t\tif not confirm( @i18n.delete_ays )\n\t\t\t\t\tevent.preventDefault()\n\n\t\t\t)\n\n\t\t\t# don't follow the Add Payment Method button URL if it's disabled\n\t\t\t$( '.button[href*=\"add-payment-method\"]' ).on 'click', event ->\n\t\t\t\tevent.preventDefault() if $( this ).hasClass( 'disabled' )\n\n\n\t\t# Replace Method column content with Title column content, for FW tokens.\n\t\t#\n\t\t# @since 5.8.0\n\t\treplace_method_column: =>\n\n\t\t\t$( '.woocommerce-MyAccount-paymentMethods' ).find( 'tr' ).each ( index, element ) =>\n\n\t\t\t\t# check if the method belongs to this plugin\n\t\t\t\tif $( element ).find( \"input[name=plugin-id][value=#{@slug}]\" ).length is 0\n\t\t\t\t\treturn\n\n\t\t\t\t# delete the Title header\n\t\t\t\t$( element ).find( 'th.woocommerce-PaymentMethod--title' ).remove()\n\n\t\t\t\ttitleColumn = $( element ).find( 'td.woocommerce-PaymentMethod--title' )\n\n\t\t\t\t# Title column is not empty, this is a FW token\n\t\t\t\tif ( titleColumn.children().length > 0 )\n\n\t\t\t\t\t# replace Method column\n\t\t\t\t\t$( element ).find( 'td.woocommerce-PaymentMethod--method' ).html( titleColumn.html() )\n\n\t\t\t\t# delete Title column\n\t\t\t\t$( element ).find( 'td.woocommerce-PaymentMethod--title' ).remove()\n\n\n\t\t# Removes duplicate \"Default\" marks.\n\t\t#\n\t\t# They are already hidden using CSS, but should also be removed for accessibility.\n\t\t#\n\t\t# @since 5.8.0\n\t\tremove_duplicate_default_marks: =>\n\n\t\t\t$( '.woocommerce-MyAccount-paymentMethods' ).find( 'tr' ).each ( index, element ) =>\n\n\t\t\t\t$( element ).find( 'td.woocommerce-PaymentMethod--default' ).find( 'mark.default:not(:first-child)' ).remove()\n\n\n\t\t# Edits a payment method.\n\t\t#\n\t\t# @since 5.1.0\n\t\t#\n\t\t# @param [Object] event jQuery event object\n\t\tedit_method: ( event ) =>\n\n\t\t\tevent.preventDefault()\n\n\t\t\tbutton = $( event.currentTarget )\n\t\t\trow = button.parents( 'tr' )\n\n\t\t\t# check if the method belongs to this plugin\n\t\t\tif row.find( \"input[name=plugin-id][value=#{@slug}]\" ).length is 0\n\t\t\t\treturn\n\n\t\t\trow.find( 'div.view' ).hide()\n\t\t\trow.find( 'div.edit' ).show()\n\t\t\trow.addClass( 'editing' )\n\n\t\t\t# change the Edit button to \"Cancel\"\n\t\t\tbutton.text( @i18n.cancel_button ).removeClass( 'edit' ).addClass( 'cancel-edit' ).removeClass( 'button' )\n\n\t\t\tthis.enable_editing_ui()\n\n\n\t\t# Saves a payment method.\n\t\t#\n\t\t# @since 5.1.0\n\t\t#\n\t\t# @param [Object] event jQuery event object\n\t\tsave_method: ( event ) =>\n\n\t\t\tevent.preventDefault()\n\n\t\t\tbutton = $( event.currentTarget )\n\t\t\trow = button.parents( 'tr' )\n\n\t\t\t# check if the method belongs to this plugin\n\t\t\tif row.find( \"input[name=plugin-id][value=#{@slug}]\" ).length is 0\n\t\t\t\treturn\n\n\t\t\tthis.block_ui()\n\n\t\t\t# remove any previous errors\n\t\t\trow.next( '.error' ).remove()\n\n\t\t\tdata =\n\t\t\t\taction: \"wc_#{@id}_save_payment_method\"\n\t\t\t\tnonce: @ajax_nonce\n\t\t\t\ttoken_id: row.find( 'input[name=token-id]' ).val()\n\t\t\t\tdata: row.find( 'input[name]' ).serialize()\n\n\t\t\t$.post( @ajax_url, data )\n\n\t\t\t\t.done ( response ) =>\n\n\t\t\t\t\treturn this.display_error( row, response.data ) unless response.success\n\n\t\t\t\t\tif response.data.title?\n\t\t\t\t\t\trow.find('.woocommerce-PaymentMethod--method').html( response.data.title )\n\n\t\t\t\t\tif response.data.nonce?\n\t\t\t\t\t\t@ajax_nonce = response.data.nonce\n\n\t\t\t\t\t# change the \"Cancel\" button back to \"Edit\"\n\t\t\t\t\tbutton.siblings( '.cancel-edit' ).removeClass( 'cancel-edit' ).addClass( 'edit' ).text( @i18n.edit_button ).addClass( 'button' )\n\n\t\t\t\t\trow.removeClass( 'editing' )\n\n\t\t\t\t\tthis.disable_editing_ui()\n\n\t\t\t\t.fail ( jqXHR, textStatus, error ) =>\n\n\t\t\t\t\tthis.display_error( row, error )\n\n\t\t\t\t.always =>\n\n\t\t\t\t\tthis.unblock_ui()\n\n\n\t\t# Cancels/stop editing a payment method.\n\t\t#\n\t\t# @since 5.1.0\n\t\t#\n\t\t# @param [Object] event jQuery event object\n\t\tcancel_edit: ( event ) =>\n\n\t\t\tevent.preventDefault()\n\n\t\t\tbutton = $( event.currentTarget )\n\t\t\trow = button.parents( 'tr' )\n\n\t\t\t# check if the method belongs to this plugin\n\t\t\tif row.find( \"input[name=plugin-id][value=#{@slug}]\" ).length is 0\n\t\t\t\treturn\n\n\t\t\trow.find( 'div.view' ).show()\n\t\t\trow.find( 'div.edit' ).hide()\n\t\t\trow.removeClass( 'editing' )\n\n\t\t\t# change the \"Cancel\" button back to \"Edit\"\n\t\t\tbutton.removeClass( 'cancel-edit' ).addClass( 'edit' ).text( @i18n.edit_button ).addClass( 'button' )\n\n\t\t\tthis.disable_editing_ui()\n\n\n\t\t# Sets the page UI to the \"editing\" state.\n\t\t#\n\t\t# This brings proper focus to the method being edited and prevents\n\t\t# other available buttons/actions until the editing is finished or cancelled.\n\t\t#\n\t\t# @since 5.1.1\n\t\tenable_editing_ui: ->\n\n\t\t\t# set the methods table as 'editing'\n\t\t\t$( \".woocommerce-MyAccount-paymentMethods\" ).addClass( 'editing' )\n\n\t\t\t# disable the Add Payment Method button\n\t\t\t$( '.button[href*=\"add-payment-method\"]' ).addClass( 'disabled' )\n\n\n\t\t# Sets the page UI back to the default state.\n\t\t#\n\t\t# @since 5.1.1\n\t\tdisable_editing_ui: ->\n\n\t\t\t# removes the methods table's \"editing\" status\n\t\t\t$( \".woocommerce-MyAccount-paymentMethods\" ).removeClass( 'editing' )\n\n\t\t\t# re-enable the Add Payment Method button\n\t\t\t$( '.button[href*=\"add-payment-method\"]' ).removeClass( 'disabled' )\n\n\n\t\t# Blocks the payment methods table UI.\n\t\t#\n\t\t# @since 5.1.0\n\t\tblock_ui: -> $( \".woocommerce-MyAccount-paymentMethods\" ).parent( 'div' ).block( message: null, overlayCSS: background: '#fff', opacity: 0.6 )\n\n\n\t\t# Unblocks the payment methods table UI.\n\t\t#\n\t\t# @since 5.1.0\n\t\tunblock_ui: -> $( \".woocommerce-MyAccount-paymentMethods\" ).parent( 'div' ).unblock()\n\n\n\t\t# Displays an error message to the user.\n\t\t#\n\t\t# @since 5.1.0\n\t\t#\n\t\t# @param [Object] row payment method table row\n\t\t# @param [String] error raw error message\n\t\t# @param [String] message user error message\n\t\tdisplay_error: ( row, error, message = '' ) ->\n\n\t\t\tconsole.error( error )\n\n\t\t\tmessage = @i18n.save_error unless message\n\t\t\tcolumns = $( \".woocommerce-MyAccount-paymentMethods thead tr th\" ).length\n\n\t\t\t$( '' + message + '' ).insertAfter( row ).find( 'td' ).delay( 8000 ).slideUp( 200 )\n\n\n\t# dispatch loaded event\n\t$( document.body ).trigger( 'sv_wc_payment_methods_handler_v5_15_9_loaded' )\n"],"names":["$parcel$export","e","n","v","s","Object","defineProperty","get","set","enumerable","configurable","$parcel$global","globalThis","self","window","global","$parcel$modules","$parcel$inits","parcelRequire","id","exports","init","module","call","err","Error","code","register","parcelRegister","$c0249d4a3fc9bb83$export$71511d61b312f219","instance","Constructor","TypeError","$690246f0b6925227$var$_defineProperties","target","props","i","length","descriptor","writable","key","$690246f0b6925227$export$71511d61b312f219","protoProps","staticProps","prototype","$guLUH","$90XvN","jQuery","$","SV_WC_Payment_Methods_Handler_v5_15_9","args","_this","_","replace_method_column","bind","remove_duplicate_default_marks","edit_method","save_method","cancel_edit","slug","i18n","ajax_url","ajax_nonce","on","event1","row","button","currentTarget","parents","find","concat","confirm","delete_ays","preventDefault","event","hasClass","value","each","index","element","titleColumn","remove","children","html","hide","show","addClass","text","cancel_button","removeClass","enable_editing_ui","data","block_ui","next","action","nonce","token_id","val","serialize","post","done","response","success","title","siblings","edit_button","disable_editing_ui","display_error","fail","jqXHR","textStatus","error","always","unblock_ui","parent","block","message","overlayCSS","background","opacity","unblock","columns","arguments","console","save_error","insertAfter","delay","slideUp","document","body","trigger","undefined"],"version":3,"file":"sv-wc-payment-gateway-my-payment-methods.js.map","sourceRoot":"../../../../../"} \ No newline at end of file diff --git a/woocommerce/payment-gateway/assets/dist/frontend/sv-wc-payment-gateway-payment-form.js b/woocommerce/payment-gateway/assets/dist/frontend/sv-wc-payment-gateway-payment-form.js index a0c909445..5c53e9ebf 100644 --- a/woocommerce/payment-gateway/assets/dist/frontend/sv-wc-payment-gateway-payment-form.js +++ b/woocommerce/payment-gateway/assets/dist/frontend/sv-wc-payment-gateway-payment-form.js @@ -1,2 +1,2 @@ -function e(e,t,a,n){Object.defineProperty(e,t,{get:a,set:n,enumerable:!0,configurable:!0})}var t="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{},a={},n={},r=t.parcelRequire94c2;null==r&&((r=function(e){if(e in a)return a[e].exports;if(e in n){var t=n[e];delete n[e];var r={id:e,exports:{}};return a[e]=r,t.call(r.exports,r,r.exports),r.exports}var i=Error("Cannot find module '"+e+"'");throw i.code="MODULE_NOT_FOUND",i}).register=function(e,t){n[e]=t},t.parcelRequire94c2=r);var i=r.register;i("guLUH",function(t,a){e(t.exports,"_",function(){return n});function n(e,t){if(!(e instanceof t))throw TypeError("Cannot call a class as a function")}}),i("90XvN",function(t,a){function n(e,t){for(var a=0;a0&&e.trigger("change"),n.val()&&n.val().length>0&&n.trigger("change"),a.val()&&a.val().length>0&&a.trigger("change"),t(".js-sv-wc-payment-gateway-credit-card-form-input").on("change paste keyup",function(){return r.do_inline_credit_card_validation()})}},{key:"do_inline_credit_card_validation",value:function(){var a,n,r,i;return(a=t(".js-sv-wc-payment-gateway-credit-card-form-account-number"),i=t(".js-sv-wc-payment-gateway-credit-card-form-expiry"),r=t(".js-sv-wc-payment-gateway-credit-card-form-csc"),n=t.payment.cardType(a.val()),0>e.call(this.enabled_card_types,n)?a.addClass("invalid-card-type"):a.removeClass("invalid-card-type"),t.payment.validateCardExpiry(i.payment("cardExpiryVal"))?i.addClass("identified"):i.removeClass("identified"),t.payment.validateCardCVC(r.val()))?r.addClass("identified"):r.removeClass("identified")}},{key:"validate_card_data",value:function(){var e,a,n,r;return(n=[],null!=(a=this.payment_fields.find(".js-sv-wc-payment-gateway-credit-card-form-csc").val())&&(a?(/\D/.test(a)&&n.push(this.params.cvv_digits_invalid),(a.length<3||a.length>4)&&n.push(this.params.cvv_length_invalid)):this.csc_required&&(!this.saved_payment_method_selected||this.csc_required_for_tokens)&&n.push(this.params.cvv_missing)),this.saved_payment_method_selected||(e=this.payment_fields.find(".js-sv-wc-payment-gateway-credit-card-form-account-number").val(),r=t.payment.cardExpiryVal(this.payment_fields.find(".js-sv-wc-payment-gateway-credit-card-form-expiry").val()),(e=e.replace(/-|\s/g,""))?((e.length<12||e.length>19)&&n.push(this.params.card_number_length_invalid),/\D/.test(e)&&n.push(this.params.card_number_digits_invalid),t.payment.validateCardNumber(e)||n.push(this.params.card_number_invalid)):n.push(this.params.card_number_missing),t.payment.validateCardExpiry(r)||n.push(this.params.card_exp_date_invalid)),n.length>0)?(this.render_errors(n),!1):(this.payment_fields.find(".js-sv-wc-payment-gateway-credit-card-form-account-number").val(e),!0)}},{key:"validate_account_data",value:function(){var e,t,a;return!!this.saved_payment_method_selected||((t=[],a=this.payment_fields.find(".js-sv-wc-payment-gateway-echeck-form-routing-number").val(),e=this.payment_fields.find(".js-sv-wc-payment-gateway-echeck-form-account-number").val(),a?(9!==a.length&&t.push(this.params.routing_number_length_invalid),/\D/.test(a)&&t.push(this.params.routing_number_digits_invalid)):t.push(this.params.routing_number_missing),e?((e.length<3||e.length>17)&&t.push(this.params.account_number_length_invalid),/\D/.test(e)&&t.push(this.params.account_number_invalid)):t.push(this.params.account_number_missing),t.length>0)?(this.render_errors(t),!1):(this.payment_fields.find(".js-sv-wc-payment-gateway-echeck-form-account-number").val(e),!0))}},{key:"render_errors",value:function(e){return t(".woocommerce-error, .woocommerce-message").remove(),this.form.prepend('
    • '+e.join("
    • ")+"
    "),this.form.removeClass("processing").unblock(),this.form.find(".input-text, select").blur(),t("html, body").animate({scrollTop:this.form.offset().top-100},1e3)}},{key:"handle_saved_payment_methods",value:function(){var e,a,n,r;if(r=this.id_dasherized,this.csc_required,n=this.csc_required_for_tokens,e=(a=t("div.js-wc-".concat(r,"-new-payment-method-form"))).find(".js-sv-wc-payment-gateway-credit-card-form-csc").closest(".form-row"),t("input.js-wc-".concat(this.id_dasherized,"-payment-token")).on("change",function(){if(t("input.js-wc-".concat(r,"-payment-token:checked")).val()){if(a.slideUp(200),n)return e.removeClass("form-row-last").addClass("form-row-first"),a.after(e)}else if(a.slideDown(200),n)return e.removeClass("form-row-first").addClass("form-row-last"),a.find(".js-sv-wc-payment-gateway-credit-card-form-expiry").closest(".form-row").after(e)}).change(),t("input#createaccount").on("change",function(){var e;return(e=t("input.js-wc-".concat(r,"-tokenize-payment-method")).closest("p.form-row"),t(this).is(":checked"))?(e.slideDown(),e.next().show()):(e.hide(),e.next().hide())}),!t("input#createaccount").is(":checked"))return t("input#createaccount").change()}},{key:"handle_sample_check_hint",value:function(){var e;return(e=this.payment_fields.find(".js-sv-wc-payment-gateway-echeck-form-sample-check")).is(":visible")?e.slideUp():e.slideDown()}},{key:"block_ui",value:function(){return this.form.block({message:null,overlayCSS:{background:"#fff",opacity:.6}})}},{key:"unblock_ui",value:function(){return this.form.unblock()}}]),a}(),t(document.body).trigger("sv_wc_payment_form_handler_v5_15_8_loaded")})}).call(void 0); +function e(e,t,a,n){Object.defineProperty(e,t,{get:a,set:n,enumerable:!0,configurable:!0})}var t="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{},a={},n={},r=t.parcelRequire94c2;null==r&&((r=function(e){if(e in a)return a[e].exports;if(e in n){var t=n[e];delete n[e];var r={id:e,exports:{}};return a[e]=r,t.call(r.exports,r,r.exports),r.exports}var i=Error("Cannot find module '"+e+"'");throw i.code="MODULE_NOT_FOUND",i}).register=function(e,t){n[e]=t},t.parcelRequire94c2=r);var i=r.register;i("guLUH",function(t,a){e(t.exports,"_",function(){return n});function n(e,t){if(!(e instanceof t))throw TypeError("Cannot call a class as a function")}}),i("90XvN",function(t,a){function n(e,t){for(var a=0;a0&&e.trigger("change"),n.val()&&n.val().length>0&&n.trigger("change"),a.val()&&a.val().length>0&&a.trigger("change"),t(".js-sv-wc-payment-gateway-credit-card-form-input").on("change paste keyup",function(){return r.do_inline_credit_card_validation()})}},{key:"do_inline_credit_card_validation",value:function(){var a,n,r,i;return(a=t(".js-sv-wc-payment-gateway-credit-card-form-account-number"),i=t(".js-sv-wc-payment-gateway-credit-card-form-expiry"),r=t(".js-sv-wc-payment-gateway-credit-card-form-csc"),n=t.payment.cardType(a.val()),0>e.call(this.enabled_card_types,n)?a.addClass("invalid-card-type"):a.removeClass("invalid-card-type"),t.payment.validateCardExpiry(i.payment("cardExpiryVal"))?i.addClass("identified"):i.removeClass("identified"),t.payment.validateCardCVC(r.val()))?r.addClass("identified"):r.removeClass("identified")}},{key:"validate_card_data",value:function(){var e,a,n,r;return(n=[],null!=(a=this.payment_fields.find(".js-sv-wc-payment-gateway-credit-card-form-csc").val())&&(a?(/\D/.test(a)&&n.push(this.params.cvv_digits_invalid),(a.length<3||a.length>4)&&n.push(this.params.cvv_length_invalid)):this.csc_required&&(!this.saved_payment_method_selected||this.csc_required_for_tokens)&&n.push(this.params.cvv_missing)),this.saved_payment_method_selected||(e=this.payment_fields.find(".js-sv-wc-payment-gateway-credit-card-form-account-number").val(),r=t.payment.cardExpiryVal(this.payment_fields.find(".js-sv-wc-payment-gateway-credit-card-form-expiry").val()),(e=e.replace(/-|\s/g,""))?((e.length<12||e.length>19)&&n.push(this.params.card_number_length_invalid),/\D/.test(e)&&n.push(this.params.card_number_digits_invalid),t.payment.validateCardNumber(e)||n.push(this.params.card_number_invalid)):n.push(this.params.card_number_missing),t.payment.validateCardExpiry(r)||n.push(this.params.card_exp_date_invalid)),n.length>0)?(this.render_errors(n),!1):(this.payment_fields.find(".js-sv-wc-payment-gateway-credit-card-form-account-number").val(e),!0)}},{key:"validate_account_data",value:function(){var e,t,a;return!!this.saved_payment_method_selected||((t=[],a=this.payment_fields.find(".js-sv-wc-payment-gateway-echeck-form-routing-number").val(),e=this.payment_fields.find(".js-sv-wc-payment-gateway-echeck-form-account-number").val(),a?(9!==a.length&&t.push(this.params.routing_number_length_invalid),/\D/.test(a)&&t.push(this.params.routing_number_digits_invalid)):t.push(this.params.routing_number_missing),e?((e.length<3||e.length>17)&&t.push(this.params.account_number_length_invalid),/\D/.test(e)&&t.push(this.params.account_number_invalid)):t.push(this.params.account_number_missing),t.length>0)?(this.render_errors(t),!1):(this.payment_fields.find(".js-sv-wc-payment-gateway-echeck-form-account-number").val(e),!0))}},{key:"render_errors",value:function(e){return t(".woocommerce-error, .woocommerce-message").remove(),this.form.prepend('
    • '+e.join("
    • ")+"
    "),this.form.removeClass("processing").unblock(),this.form.find(".input-text, select").blur(),t("html, body").animate({scrollTop:this.form.offset().top-100},1e3)}},{key:"handle_saved_payment_methods",value:function(){var e,a,n,r;if(r=this.id_dasherized,this.csc_required,n=this.csc_required_for_tokens,e=(a=t("div.js-wc-".concat(r,"-new-payment-method-form"))).find(".js-sv-wc-payment-gateway-credit-card-form-csc").closest(".form-row"),t("input.js-wc-".concat(this.id_dasherized,"-payment-token")).on("change",function(){if(t("input.js-wc-".concat(r,"-payment-token:checked")).val()){if(a.slideUp(200),n)return e.removeClass("form-row-last").addClass("form-row-first"),a.after(e)}else if(a.slideDown(200),n)return e.removeClass("form-row-first").addClass("form-row-last"),a.find(".js-sv-wc-payment-gateway-credit-card-form-expiry").closest(".form-row").after(e)}).change(),t("input#createaccount").on("change",function(){var e;return(e=t("input.js-wc-".concat(r,"-tokenize-payment-method")).closest("p.form-row"),t(this).is(":checked"))?(e.slideDown(),e.next().show()):(e.hide(),e.next().hide())}),!t("input#createaccount").is(":checked"))return t("input#createaccount").change()}},{key:"handle_sample_check_hint",value:function(){var e;return(e=this.payment_fields.find(".js-sv-wc-payment-gateway-echeck-form-sample-check")).is(":visible")?e.slideUp():e.slideDown()}},{key:"block_ui",value:function(){return this.form.block({message:null,overlayCSS:{background:"#fff",opacity:.6}})}},{key:"unblock_ui",value:function(){return this.form.unblock()}}]),a}(),t(document.body).trigger("sv_wc_payment_form_handler_v5_15_9_loaded")})}).call(void 0); //# sourceMappingURL=sv-wc-payment-gateway-payment-form.js.map diff --git a/woocommerce/payment-gateway/assets/dist/frontend/sv-wc-payment-gateway-payment-form.js.map b/woocommerce/payment-gateway/assets/dist/frontend/sv-wc-payment-gateway-payment-form.js.map index e190db7fa..2d6edcea0 100644 --- a/woocommerce/payment-gateway/assets/dist/frontend/sv-wc-payment-gateway-payment-form.js.map +++ b/woocommerce/payment-gateway/assets/dist/frontend/sv-wc-payment-gateway-payment-form.js.map @@ -1 +1 @@ -{"mappings":"A,S,E,C,C,C,C,C,C,C,E,O,c,C,E,E,C,I,E,I,E,W,C,E,a,C,C,E,C,I,E,A,a,O,W,W,A,a,O,K,K,A,a,O,O,O,A,a,O,O,O,C,E,E,C,E,E,C,E,E,E,iB,A,O,I,A,C,E,S,C,E,G,K,E,O,C,C,E,C,O,C,G,K,E,C,I,E,C,C,E,A,Q,C,C,E,C,I,E,C,G,E,Q,C,C,E,O,C,C,E,C,E,E,I,C,E,O,C,E,E,O,E,E,O,A,C,I,E,A,M,uB,E,I,O,E,I,C,mB,C,C,E,Q,C,S,C,C,C,E,C,C,E,C,C,E,E,iB,C,G,I,E,E,Q,C,E,Q,S,C,C,C,E,E,E,O,C,I,W,O,C,GCAA,SAAS,EAAkB,CAAQ,CAAE,CAAW,EAC5C,GAAI,CAAE,CAAA,aAAoB,CAAA,EAAc,MAAM,AAAI,UAAU,oCAChE,C,G,E,Q,S,C,C,C,ECFA,SAAS,EAAkB,CAAM,CAAE,CAAK,EACpC,IAAK,IAAI,EAAI,EAAG,EAAI,EAAM,MAAM,CAAE,IAAK,CACnC,IAAI,EAAa,CAAK,CAAC,EAAE,AACzB,CAAA,EAAW,UAAU,CAAG,EAAW,UAAU,EAAI,CAAA,EACjD,EAAW,YAAY,CAAG,CAAA,EAEtB,UAAW,GAAY,CAAA,EAAW,QAAQ,CAAG,CAAA,CAAjD,EAEA,OAAO,cAAc,CAAC,EAAQ,EAAW,GAAG,CAAE,EAClD,CACJ,CACA,SAAS,EAAc,CAAW,CAAE,CAAU,CAAE,CAAW,EAIvD,OAHI,GAAY,EAAkB,EAAY,SAAS,CAAE,GACrD,GAAa,EAAkB,EAAa,GAEzC,CACX,C,E,E,O,C,I,W,O,C,E,G,I,E,E,S,E,E,SCTG,AAAA,CAAA,WAAA,IAAA,EAAA,EAAA,CAAA,OAAA,CACH,OAAO,SAAE,CAAF,EA2XN,OAvXM,OAAO,kCAAA,CAAb,WAAA,SAAA,EAae,CAAD,E,I,E,I,CAWZ,GAxBF,AAAA,CAAA,EAAA,EAAA,CAAA,AAAA,EAAA,IAAA,CAAA,GAeE,IAAC,CAAA,EAAD,CAA2B,EAAK,EAAhC,CACA,IAAC,CAAA,aAAD,CAA2B,EAAK,aAAhC,CACA,IAAC,CAAA,SAAD,CAA2B,EAAK,SAAhC,CACA,IAAC,CAAA,IAAD,C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","sources":["","node_modules/@swc/helpers/esm/_class_call_check.js","node_modules/@swc/helpers/esm/_create_class.js","woocommerce/payment-gateway/assets/js/frontend/sv-wc-payment-gateway-payment-form.coffee"],"sourcesContent":["\nfunction $parcel$export(e, n, v, s) {\n Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});\n}\n\n var $parcel$global =\n typeof globalThis !== 'undefined'\n ? globalThis\n : typeof self !== 'undefined'\n ? self\n : typeof window !== 'undefined'\n ? window\n : typeof global !== 'undefined'\n ? global\n : {};\n \nvar $parcel$modules = {};\nvar $parcel$inits = {};\n\nvar parcelRequire = $parcel$global[\"parcelRequire94c2\"];\n\nif (parcelRequire == null) {\n parcelRequire = function(id) {\n if (id in $parcel$modules) {\n return $parcel$modules[id].exports;\n }\n if (id in $parcel$inits) {\n var init = $parcel$inits[id];\n delete $parcel$inits[id];\n var module = {id: id, exports: {}};\n $parcel$modules[id] = module;\n init.call(module.exports, module, module.exports);\n return module.exports;\n }\n var err = new Error(\"Cannot find module '\" + id + \"'\");\n err.code = 'MODULE_NOT_FOUND';\n throw err;\n };\n\n parcelRequire.register = function register(id, init) {\n $parcel$inits[id] = init;\n };\n\n $parcel$global[\"parcelRequire94c2\"] = parcelRequire;\n}\n\nvar parcelRegister = parcelRequire.register;\nparcelRegister(\"guLUH\", function(module, exports) {\n\n$parcel$export(module.exports, \"_\", function () { return $c0249d4a3fc9bb83$export$71511d61b312f219; });\nfunction $c0249d4a3fc9bb83$export$71511d61b312f219(instance, Constructor) {\n if (!(instance instanceof Constructor)) throw new TypeError(\"Cannot call a class as a function\");\n}\n\n});\n\nparcelRegister(\"90XvN\", function(module, exports) {\n\n$parcel$export(module.exports, \"_\", function () { return $690246f0b6925227$export$71511d61b312f219; });\nfunction $690246f0b6925227$var$_defineProperties(target, props) {\n for(var i = 0; i < props.length; i++){\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\nfunction $690246f0b6925227$export$71511d61b312f219(Constructor, protoProps, staticProps) {\n if (protoProps) $690246f0b6925227$var$_defineProperties(Constructor.prototype, protoProps);\n if (staticProps) $690246f0b6925227$var$_defineProperties(Constructor, staticProps);\n return Constructor;\n}\n\n});\n\n\nvar $guLUH = parcelRequire(\"guLUH\");\n\nvar $90XvN = parcelRequire(\"90XvN\");\n(function() {\n /*\n WooCommerce SkyVerge Payment Gateway Framework Payment Form CoffeeScript\n Version 4.3.0\n\n Copyright (c) 2014-2024, SkyVerge, Inc.\n Licensed under the GNU General Public License v3.0\n http://www.gnu.org/licenses/gpl-3.0.html\n */ var indexOf = [].indexOf;\n jQuery(function($) {\n \"use strict\";\n window.SV_WC_Payment_Form_Handler_v5_15_8 = /*#__PURE__*/ function() {\n function SV_WC_Payment_Form_Handler_v5_15_8(args) {\n var _this = this;\n (0, $guLUH._)(this, SV_WC_Payment_Form_Handler_v5_15_8);\n this.id = args.id;\n this.id_dasherized = args.id_dasherized;\n this.plugin_id = args.plugin_id;\n this.type = args.type;\n this.csc_required = args.csc_required;\n this.csc_required_for_tokens = args.csc_required_for_tokens;\n this.enabled_card_types = args.enabled_card_types;\n // which payment form?\n if ($('form.checkout').length) {\n this.form = $('form.checkout');\n this.handle_checkout_page();\n } else if ($('form#order_review').length) {\n this.form = $('form#order_review');\n this.handle_pay_page();\n } else if ($('form#add_payment_method').length) {\n this.form = $('form#add_payment_method');\n this.handle_add_payment_method_page();\n } else {\n console.log('No payment form found!');\n return;\n }\n // localized error messages\n this.params = window[\"sv_wc_payment_gateway_payment_form_params\"];\n if (this.type === 'echeck') // handle sample check image hint\n this.form.on('click', '.js-sv-wc-payment-gateway-echeck-form-check-hint, .js-sv-wc-payment-gateway-echeck-form-sample-check', function() {\n return _this.handle_sample_check_hint();\n });\n $(document).trigger('sv_wc_payment_form_handler_init', {\n id: this.id,\n instance: this\n });\n }\n (0, $90XvN._)(SV_WC_Payment_Form_Handler_v5_15_8, [\n {\n // Public: Handle required actions on the checkout page\n // Returns nothing.\n key: \"handle_checkout_page\",\n value: function handle_checkout_page() {\n var _this = this;\n if (this.type === 'credit-card') // format/validate credit card inputs using jQuery.payment\n $(document.body).on('updated_checkout', function() {\n return _this.format_credit_card_inputs();\n });\n // updated payment fields jQuery object on each checkout update (prevents stale data)\n $(document.body).on('updated_checkout', function() {\n return _this.set_payment_fields();\n });\n // handle saved payment methods\n // note on the checkout page, this is bound to `updated_checkout` so it\n // fires even when other parts of the checkout are changed\n $(document.body).on('updated_checkout', function() {\n return _this.handle_saved_payment_methods();\n });\n // validate payment data before order is submitted\n return this.form.on(\"checkout_place_order_\".concat(this.id), function() {\n return _this.validate_payment_data();\n });\n }\n },\n {\n // Public: Handle required actions on the Order > Pay page\n // Returns nothing.\n key: \"handle_pay_page\",\n value: function handle_pay_page() {\n var _this = this;\n this.set_payment_fields();\n // format/validate credit card inputs using jQuery.payment\n if (this.type === 'credit-card') this.format_credit_card_inputs();\n // handle saved payment methods\n this.handle_saved_payment_methods();\n // validate payment data before order is submitted\n return this.form.submit(function() {\n if ($('#order_review input[name=payment_method]:checked').val() === _this.id) // but only when one of our payment gateways is selected\n return _this.validate_payment_data();\n });\n }\n },\n {\n // Public: Handle required actions on the Add Payment Method page\n // Returns nothing.\n key: \"handle_add_payment_method_page\",\n value: function handle_add_payment_method_page() {\n var _this = this;\n this.set_payment_fields();\n // format/validate credit card inputs using jQuery.payment\n if (this.type === 'credit-card') this.format_credit_card_inputs();\n // validate payment data before order is submitted\n return this.form.submit(function() {\n if ($('#add_payment_method input[name=payment_method]:checked').val() === _this.id) // but only when one of our payment gateways is selected\n return _this.validate_payment_data();\n });\n }\n },\n {\n // Public: Set payment fields class variable, this is done\n // during the updated_checkout event as otherwise the reference to\n // the checkout fields becomes stale (somehow ¯\\_(ツ)_/¯)\n // This ensures payment fields are not marked as \"invalid\" before the customer has interacted with them.\n // Returns nothing.\n key: \"set_payment_fields\",\n value: function set_payment_fields() {\n var $required_fields;\n this.payment_fields = $(\".payment_method_\".concat(this.id));\n $required_fields = this.payment_fields.find('.validate-required .input-text');\n return $required_fields.each(function(i, input) {\n // if any of the required fields have a value, bail this loop and proceed with WooCommerce validation\n if ($(input).val()) return false;\n // otherwise remove all validation result classes from the inputs, since the form is freshly loaded\n return $(input).trigger('input');\n });\n }\n },\n {\n // Public: Validate Payment data when order is placed\n // Returns boolean, true if payment data is valid, false otherwise\n key: \"validate_payment_data\",\n value: function validate_payment_data() {\n var handler, valid;\n if (this.form.is('.processing')) // bail when already processing\n return false;\n this.saved_payment_method_selected = this.payment_fields.find('.js-sv-wc-payment-gateway-payment-token:checked').val();\n // perform internal validations (all fields present & valid, etc)\n valid = this.type === 'credit-card' ? this.validate_card_data() : this.validate_account_data();\n // let gateways perform their own validation prior to form submission\n handler = $(document.body).triggerHandler('sv_wc_payment_form_valid_payment_data', {\n payment_form: this,\n passed_validation: valid\n }) !== false;\n return valid && handler;\n }\n },\n {\n // Public: format card data using jQuery.Payment\n // Returns nothing.\n key: \"format_credit_card_inputs\",\n value: function format_credit_card_inputs() {\n var _this = this;\n var $card_number, $csc, $expiry;\n $card_number = $('.js-sv-wc-payment-gateway-credit-card-form-account-number').payment('formatCardNumber');\n $expiry = $('.js-sv-wc-payment-gateway-credit-card-form-expiry').payment('formatCardExpiry');\n $csc = $('.js-sv-wc-payment-gateway-credit-card-form-csc').payment('formatCardCVC');\n if ($card_number.val() && $card_number.val().length > 0) $card_number.trigger('change');\n if ($expiry.val() && $expiry.val().length > 0) $expiry.trigger('change');\n if ($csc.val() && $csc.val().length > 0) $csc.trigger('change');\n // perform inline validation on credit card inputs\n return $('.js-sv-wc-payment-gateway-credit-card-form-input').on('change paste keyup', function() {\n return _this.do_inline_credit_card_validation();\n });\n }\n },\n {\n // Public: perform inline validation on credit card fields\n // Returns nothing.\n key: \"do_inline_credit_card_validation\",\n value: function do_inline_credit_card_validation() {\n var $card_number, $card_type, $csc, $expiry;\n $card_number = $('.js-sv-wc-payment-gateway-credit-card-form-account-number');\n $expiry = $('.js-sv-wc-payment-gateway-credit-card-form-expiry');\n $csc = $('.js-sv-wc-payment-gateway-credit-card-form-csc');\n $card_type = $.payment.cardType($card_number.val());\n if (indexOf.call(this.enabled_card_types, $card_type) < 0) $card_number.addClass('invalid-card-type');\n else $card_number.removeClass('invalid-card-type');\n if ($.payment.validateCardExpiry($expiry.payment('cardExpiryVal'))) $expiry.addClass('identified');\n else $expiry.removeClass('identified');\n if ($.payment.validateCardCVC($csc.val())) return $csc.addClass('identified');\n else return $csc.removeClass('identified');\n }\n },\n {\n // Public: Perform validation on the credit card info entered\n // Return boolean, true if credit card info is valid, false otherwise\n key: \"validate_card_data\",\n value: function validate_card_data() {\n var account_number, csc, errors, expiry;\n errors = [];\n csc = this.payment_fields.find('.js-sv-wc-payment-gateway-credit-card-form-csc').val();\n // always validate the CSC if present\n if (csc != null) {\n if (csc) {\n if (/\\D/.test(csc)) errors.push(this.params.cvv_digits_invalid);\n if (csc.length < 3 || csc.length > 4) errors.push(this.params.cvv_length_invalid);\n } else if (this.csc_required) {\n if (!this.saved_payment_method_selected || this.csc_required_for_tokens) errors.push(this.params.cvv_missing);\n }\n }\n // Only validate the other CC fields if necessary\n if (!this.saved_payment_method_selected) {\n account_number = this.payment_fields.find('.js-sv-wc-payment-gateway-credit-card-form-account-number').val();\n expiry = $.payment.cardExpiryVal(this.payment_fields.find('.js-sv-wc-payment-gateway-credit-card-form-expiry').val());\n // replace any dashes or spaces in the card number\n account_number = account_number.replace(/-|\\s/g, '');\n // validate card number\n if (!account_number) errors.push(this.params.card_number_missing);\n else {\n if (account_number.length < 12 || account_number.length > 19) errors.push(this.params.card_number_length_invalid);\n if (/\\D/.test(account_number)) errors.push(this.params.card_number_digits_invalid);\n if (!$.payment.validateCardNumber(account_number)) errors.push(this.params.card_number_invalid);\n }\n if (!$.payment.validateCardExpiry(expiry)) // validate expiration date\n errors.push(this.params.card_exp_date_invalid);\n }\n if (errors.length > 0) {\n this.render_errors(errors);\n return false;\n } else {\n // get rid of any space/dash characters\n this.payment_fields.find('.js-sv-wc-payment-gateway-credit-card-form-account-number').val(account_number);\n return true;\n }\n }\n },\n {\n // Public: Perform validation on the eCheck info entered\n // Return boolean, true if eCheck info is valid, false otherwise\n key: \"validate_account_data\",\n value: function validate_account_data() {\n var account_number, errors, routing_number;\n if (this.saved_payment_method_selected) return true;\n errors = [];\n routing_number = this.payment_fields.find('.js-sv-wc-payment-gateway-echeck-form-routing-number').val();\n account_number = this.payment_fields.find('.js-sv-wc-payment-gateway-echeck-form-account-number').val();\n // validate routing number\n if (!routing_number) errors.push(this.params.routing_number_missing);\n else {\n if (9 !== routing_number.length) errors.push(this.params.routing_number_length_invalid);\n if (/\\D/.test(routing_number)) errors.push(this.params.routing_number_digits_invalid);\n }\n // validate account number\n if (!account_number) errors.push(this.params.account_number_missing);\n else {\n if (account_number.length < 3 || account_number.length > 17) errors.push(this.params.account_number_length_invalid);\n if (/\\D/.test(account_number)) errors.push(this.params.account_number_invalid);\n }\n if (errors.length > 0) {\n this.render_errors(errors);\n return false;\n } else {\n // get rid of any space/dash characters\n this.payment_fields.find('.js-sv-wc-payment-gateway-echeck-form-account-number').val(account_number);\n return true;\n }\n }\n },\n {\n // Public: Render any new errors and bring them into the viewport\n // Returns nothing.\n key: \"render_errors\",\n value: function render_errors(errors) {\n // hide and remove any previous errors\n $('.woocommerce-error, .woocommerce-message').remove();\n // add errors\n this.form.prepend('
    • ' + errors.join('
    • ') + '
    ');\n // unblock UI\n this.form.removeClass('processing').unblock();\n this.form.find('.input-text, select').blur();\n // scroll to top\n return $('html, body').animate({\n scrollTop: this.form.offset().top - 100\n }, 1000);\n }\n },\n {\n // Public: Handle associated actions for saved payment methods\n // Returns nothing.\n key: \"handle_saved_payment_methods\",\n value: function handle_saved_payment_methods() {\n var $csc_field, $new_payment_method_selection, csc_required, csc_required_for_tokens, id_dasherized;\n // make available inside change events\n id_dasherized = this.id_dasherized;\n csc_required = this.csc_required;\n csc_required_for_tokens = this.csc_required_for_tokens;\n $new_payment_method_selection = $(\"div.js-wc-\".concat(id_dasherized, \"-new-payment-method-form\"));\n $csc_field = $new_payment_method_selection.find('.js-sv-wc-payment-gateway-credit-card-form-csc').closest('.form-row');\n // show/hide the saved payment methods when a saved payment method is de-selected/selected\n $(\"input.js-wc-\".concat(this.id_dasherized, \"-payment-token\")).on('change', function() {\n var tokenized_payment_method_selected;\n tokenized_payment_method_selected = $(\"input.js-wc-\".concat(id_dasherized, \"-payment-token:checked\")).val();\n if (tokenized_payment_method_selected) {\n // using an existing tokenized payment method, hide the 'new method' fields\n $new_payment_method_selection.slideUp(200);\n // move the CSC field out of the 'new method' fields so it can be used with the tokenized transaction\n if (csc_required_for_tokens) {\n $csc_field.removeClass('form-row-last').addClass('form-row-first');\n return $new_payment_method_selection.after($csc_field);\n }\n } else {\n // use new payment method, display the 'new method' fields\n $new_payment_method_selection.slideDown(200);\n // move the CSC field back into its regular spot\n if (csc_required_for_tokens) {\n $csc_field.removeClass('form-row-first').addClass('form-row-last');\n return $new_payment_method_selection.find('.js-sv-wc-payment-gateway-credit-card-form-expiry').closest('.form-row').after($csc_field);\n }\n }\n }).change();\n // display the 'save payment method' option for guest checkouts if the 'create account' option is checked\n // but only hide the input if there is a 'create account' checkbox (some themes just display the password)\n $('input#createaccount').on('change', function() {\n var $parent_row;\n $parent_row = $(\"input.js-wc-\".concat(id_dasherized, \"-tokenize-payment-method\")).closest('p.form-row');\n if ($(this).is(':checked')) {\n $parent_row.slideDown();\n return $parent_row.next().show();\n } else {\n $parent_row.hide();\n return $parent_row.next().hide();\n }\n });\n if (!$('input#createaccount').is(':checked')) return $('input#createaccount').change();\n }\n },\n {\n // Public: Handle showing/hiding the sample check image\n // Returns nothing.\n key: \"handle_sample_check_hint\",\n value: function handle_sample_check_hint() {\n var $sample_check;\n $sample_check = this.payment_fields.find('.js-sv-wc-payment-gateway-echeck-form-sample-check');\n if ($sample_check.is(\":visible\")) return $sample_check.slideUp();\n else return $sample_check.slideDown();\n }\n },\n {\n // Blocks the payment form UI\n // @since 3.0.0\n key: \"block_ui\",\n value: function block_ui() {\n return this.form.block({\n message: null,\n overlayCSS: {\n background: '#fff',\n opacity: 0.6\n }\n });\n }\n },\n {\n // Unblocks the payment form UI\n // @since 3.0.0\n key: \"unblock_ui\",\n value: function unblock_ui() {\n return this.form.unblock();\n }\n }\n ]);\n return SV_WC_Payment_Form_Handler_v5_15_8;\n }();\n // dispatch loaded event\n return $(document.body).trigger(\"sv_wc_payment_form_handler_v5_15_8_loaded\");\n });\n}).call(undefined);\n\n\n//# sourceMappingURL=sv-wc-payment-gateway-payment-form.js.map\n","function _class_call_check(instance, Constructor) {\n if (!(instance instanceof Constructor)) throw new TypeError(\"Cannot call a class as a function\");\n}\nexport { _class_call_check as _ };\n","function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n\n if (\"value\" in descriptor) descriptor.writable = true;\n\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\nfunction _create_class(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n\n return Constructor;\n}\nexport { _create_class as _ };\n","###\n WooCommerce SkyVerge Payment Gateway Framework Payment Form CoffeeScript\n Version 4.3.0\n\n Copyright (c) 2014-2024, SkyVerge, Inc.\n Licensed under the GNU General Public License v3.0\n http://www.gnu.org/licenses/gpl-3.0.html\n###\njQuery ( $ ) ->\n\t\"use strict\"\n\n\n\tclass window.SV_WC_Payment_Form_Handler_v5_15_8\n\n\n\t\t# Public: Instantiate Payment Form Handler\n\t\t#\n\t\t# args - object with properties:\n\t\t# id - gateway ID\n\t\t# id_dasherized - gateway ID dasherized\n\t\t# plugin_id - plugin ID\n\t\t# type - gateway type, either `credit-card` or `echeck`\n\t\t# csc_required - true if the gateway requires the CSC field to be displayed\n\t\t#\n\t\t# Returns SV_WC_Payment_Form_Handler_v5_15_8 instance\n\t\tconstructor: (args) ->\n\n\t\t\t@id = args.id\n\t\t\t@id_dasherized = args.id_dasherized\n\t\t\t@plugin_id = args.plugin_id\n\t\t\t@type = args.type\n\t\t\t@csc_required = args.csc_required\n\t\t\t@csc_required_for_tokens = args.csc_required_for_tokens\n\t\t\t@enabled_card_types = args.enabled_card_types\n\n\t\t\t# which payment form?\n\t\t\tif $( 'form.checkout' ).length\n\t\t\t\t@form = $( 'form.checkout' )\n\t\t\t\tthis.handle_checkout_page()\n\n\t\t\telse if $( 'form#order_review' ).length\n\t\t\t\t@form = $( 'form#order_review' )\n\t\t\t\tthis.handle_pay_page()\n\n\t\t\telse if $( 'form#add_payment_method' ).length\n\t\t\t\t@form = $( 'form#add_payment_method' )\n\t\t\t\tthis.handle_add_payment_method_page()\n\n\t\t\telse\n\t\t\t\tconsole.log( 'No payment form found!' )\n\t\t\t\treturn\n\n\t\t\t# localized error messages\n\t\t\t@params = window[ \"sv_wc_payment_gateway_payment_form_params\" ]\n\n\t\t\t# handle sample check image hint\n\t\t\t@form.on( 'click', '.js-sv-wc-payment-gateway-echeck-form-check-hint, .js-sv-wc-payment-gateway-echeck-form-sample-check', => this.handle_sample_check_hint() ) if @type is 'echeck'\n\n\t\t\t$( document ).trigger( 'sv_wc_payment_form_handler_init', { id: @id, instance: @ } )\n\n\n\t\t# Public: Handle required actions on the checkout page\n\t\t#\n\t\t# Returns nothing.\n\t\thandle_checkout_page: ->\n\n\t\t\t# format/validate credit card inputs using jQuery.payment\n\t\t\t$( document.body ).on( 'updated_checkout', => this.format_credit_card_inputs() ) if @type is 'credit-card'\n\n\t\t\t# updated payment fields jQuery object on each checkout update (prevents stale data)\n\t\t\t$( document.body ).on( 'updated_checkout', => this.set_payment_fields() )\n\n\t\t\t# handle saved payment methods\n\t\t\t# note on the checkout page, this is bound to `updated_checkout` so it\n\t\t\t# fires even when other parts of the checkout are changed\n\t\t\t$( document.body ).on( 'updated_checkout', => this.handle_saved_payment_methods() )\n\n\t\t\t# validate payment data before order is submitted\n\t\t\t@form.on( \"checkout_place_order_#{ @id }\", => this.validate_payment_data() )\n\n\n\t\t# Public: Handle required actions on the Order > Pay page\n\t\t#\n\t\t# Returns nothing.\n\t\thandle_pay_page: ->\n\n\t\t\tthis.set_payment_fields()\n\n\t\t\t# format/validate credit card inputs using jQuery.payment\n\t\t\tif @type is 'credit-card'\n\t\t\t\tthis.format_credit_card_inputs()\n\n\t\t\t# handle saved payment methods\n\t\t\tthis.handle_saved_payment_methods()\n\n\t\t\t# validate payment data before order is submitted\n\t\t\t@form.submit =>\n\n\t\t\t\t# but only when one of our payment gateways is selected\n\t\t\t\treturn this.validate_payment_data() if $( '#order_review input[name=payment_method]:checked' ).val() is @id\n\n\n\t\t# Public: Handle required actions on the Add Payment Method page\n\t\t#\n\t\t# Returns nothing.\n\t\thandle_add_payment_method_page: ->\n\n\t\t\tthis.set_payment_fields()\n\n\t\t\t# format/validate credit card inputs using jQuery.payment\n\t\t\tif @type is 'credit-card'\n\t\t\t\tthis.format_credit_card_inputs()\n\n\t\t\t# validate payment data before order is submitted\n\t\t\t@form.submit =>\n\n\t\t\t\t# but only when one of our payment gateways is selected\n\t\t\t\treturn this.validate_payment_data() if $( '#add_payment_method input[name=payment_method]:checked' ).val() is @id\n\n\n\t\t# Public: Set payment fields class variable, this is done\n\t\t# during the updated_checkout event as otherwise the reference to\n\t\t# the checkout fields becomes stale (somehow ¯\\_(ツ)_/¯)\n\t\t#\n\t\t# This ensures payment fields are not marked as \"invalid\" before the customer has interacted with them.\n\t\t#\n\t\t# Returns nothing.\n\t\tset_payment_fields: ->\n\n\t\t\t@payment_fields = $( \".payment_method_#{ @id }\" )\n\n\t\t\t$required_fields = @payment_fields.find( '.validate-required .input-text' )\n\n\t\t\t$required_fields.each( ( i, input ) =>\n\n\t\t\t\t# if any of the required fields have a value, bail this loop and proceed with WooCommerce validation\n\t\t\t\tif $( input ).val()\n\t\t\t\t\treturn false\n\n\t\t\t\t# otherwise remove all validation result classes from the inputs, since the form is freshly loaded\n\t\t\t\t$( input ).trigger( 'input' )\n\t\t\t)\n\n\n\t\t# Public: Validate Payment data when order is placed\n\t\t#\n\t\t# Returns boolean, true if payment data is valid, false otherwise\n\t\tvalidate_payment_data: ->\n\n\t\t\t# bail when already processing\n\t\t\treturn false if @form.is( '.processing' )\n\n\t\t\t@saved_payment_method_selected = @payment_fields.find( '.js-sv-wc-payment-gateway-payment-token:checked' ).val()\n\n\t\t\t# perform internal validations (all fields present & valid, etc)\n\t\t\tvalid = if @type is 'credit-card' then this.validate_card_data() else this.validate_account_data()\n\n\t\t\t# let gateways perform their own validation prior to form submission\n\t\t\thandler = $( document.body ).triggerHandler( 'sv_wc_payment_form_valid_payment_data', { payment_form: this, passed_validation: valid } ) isnt false\n\n\t\t\treturn valid && handler\n\n\n\t\t# Public: format card data using jQuery.Payment\n\t\t#\n\t\t# Returns nothing.\n\t\tformat_credit_card_inputs: ->\n\t\t\t$card_number = $('.js-sv-wc-payment-gateway-credit-card-form-account-number').payment('formatCardNumber');\n\t\t\t$expiry = $('.js-sv-wc-payment-gateway-credit-card-form-expiry').payment('formatCardExpiry');\n\t\t\t$csc = $('.js-sv-wc-payment-gateway-credit-card-form-csc').payment('formatCardCVC');\n\n\t\t\t# trigger a 'change' event for non empty fields only\n\t\t\t$card_number.trigger( 'change') if $card_number.val() && $card_number.val().length > 0\n\t\t\t$expiry.trigger( 'change') if $expiry.val() && $expiry.val().length > 0\n\t\t\t$csc.trigger( 'change') if $csc.val() && $csc.val().length > 0\n\n\t\t\t# perform inline validation on credit card inputs\n\t\t\t$( '.js-sv-wc-payment-gateway-credit-card-form-input' ).on( 'change paste keyup', => this.do_inline_credit_card_validation() )\n\n\n\t\t# Public: perform inline validation on credit card fields\n\t\t#\n\t\t# Returns nothing.\n\t\tdo_inline_credit_card_validation: ->\n\n\t\t\t$card_number = $( '.js-sv-wc-payment-gateway-credit-card-form-account-number' )\n\t\t\t$expiry = $( '.js-sv-wc-payment-gateway-credit-card-form-expiry' )\n\t\t\t$csc = $( '.js-sv-wc-payment-gateway-credit-card-form-csc' )\n\n\t\t\t$card_type = $.payment.cardType( $card_number.val() )\n\n\t\t\tif $card_type not in @enabled_card_types\n\t\t\t\t$card_number.addClass( 'invalid-card-type' )\n\t\t\telse\n\t\t\t\t$card_number.removeClass( 'invalid-card-type' )\n\n\t\t\tif $.payment.validateCardExpiry( $expiry.payment( 'cardExpiryVal' ) )\n\t\t\t\t$expiry.addClass( 'identified' )\n\t\t\telse\n\t\t\t\t$expiry.removeClass( 'identified' )\n\n\t\t\tif $.payment.validateCardCVC( $csc.val() )\n\t\t\t\t$csc.addClass( 'identified' )\n\t\t\telse\n\t\t\t\t$csc.removeClass( 'identified' )\n\n\n\t\t# Public: Perform validation on the credit card info entered\n\t\t#\n\t\t# Return boolean, true if credit card info is valid, false otherwise\n\t\tvalidate_card_data: ->\n\n\t\t\terrors = []\n\n\t\t\tcsc = @payment_fields.find( '.js-sv-wc-payment-gateway-credit-card-form-csc' ).val()\n\n\t\t\t# always validate the CSC if present\n\t\t\tif csc?\n\n\t\t\t\tif csc\n\t\t\t\t\terrors.push( @params.cvv_digits_invalid ) if /\\D/.test( csc )\n\t\t\t\t\terrors.push( @params.cvv_length_invalid ) if csc.length < 3 || csc.length > 4\n\t\t\t\telse if @csc_required\n\t\t\t\t\tif not @saved_payment_method_selected or @csc_required_for_tokens\n\t\t\t\t\t\terrors.push( @params.cvv_missing )\n\n\t\t\t# Only validate the other CC fields if necessary\n\t\t\tif not @saved_payment_method_selected\n\n\t\t\t\taccount_number = @payment_fields.find( '.js-sv-wc-payment-gateway-credit-card-form-account-number' ).val()\n\t\t\t\texpiry = $.payment.cardExpiryVal( @payment_fields.find( '.js-sv-wc-payment-gateway-credit-card-form-expiry' ).val() )\n\n\t\t\t\t# replace any dashes or spaces in the card number\n\t\t\t\taccount_number = account_number.replace( /-|\\s/g, '' )\n\n\t\t\t\t# validate card number\n\t\t\t\tif not account_number\n\t\t\t\t\terrors.push( @params.card_number_missing )\n\t\t\t\telse\n\t\t\t\t\terrors.push( @params.card_number_length_invalid ) if account_number.length < 12 || account_number.length > 19\n\t\t\t\t\terrors.push( @params.card_number_digits_invalid ) if /\\D/.test( account_number )\n\t\t\t\t\terrors.push( @params.card_number_invalid ) unless $.payment.validateCardNumber( account_number ) # performs luhn check\n\n\t\t\t\t# validate expiration date\n\t\t\t\terrors.push( @params.card_exp_date_invalid ) unless $.payment.validateCardExpiry( expiry ) # validates future date\n\n\t\t\tif errors.length > 0\n\t\t\t\tthis.render_errors( errors )\n\t\t\t\treturn false\n\t\t\telse\n\t\t\t\t# get rid of any space/dash characters\n\t\t\t\t@payment_fields.find( '.js-sv-wc-payment-gateway-credit-card-form-account-number' ).val( account_number )\n\t\t\t\treturn true\n\n\n\t\t# Public: Perform validation on the eCheck info entered\n\t\t#\n\t\t# Return boolean, true if eCheck info is valid, false otherwise\n\t\tvalidate_account_data: ->\n\n\t\t\treturn true if @saved_payment_method_selected\n\n\t\t\terrors = []\n\n\t\t\trouting_number = @payment_fields.find('.js-sv-wc-payment-gateway-echeck-form-routing-number').val()\n\t\t\taccount_number = @payment_fields.find('.js-sv-wc-payment-gateway-echeck-form-account-number').val()\n\n\t\t\t# validate routing number\n\t\t\tif not routing_number\n\t\t\t\terrors.push( @params.routing_number_missing )\n\t\t\telse\n\t\t\t\terrors.push( @params.routing_number_length_invalid ) if 9 != routing_number.length\n\t\t\t\terrors.push( @params.routing_number_digits_invalid ) if /\\D/.test( routing_number )\n\n\t\t\t# validate account number\n\t\t\tif not account_number\n\t\t\t\terrors.push( @params.account_number_missing )\n\t\t\telse\n\t\t\t\terrors.push( @params.account_number_length_invalid ) if account_number.length < 3 || account_number.length > 17\n\t\t\t\terrors.push( @params.account_number_invalid ) if /\\D/.test( account_number )\n\n\t\t\tif errors.length > 0\n\t\t\t\tthis.render_errors( errors )\n\t\t\t\treturn false\n\t\t\telse\n\t\t\t\t# get rid of any space/dash characters\n\t\t\t\t@payment_fields.find( '.js-sv-wc-payment-gateway-echeck-form-account-number' ).val( account_number )\n\t\t\t\treturn true\n\n\n\t\t# Public: Render any new errors and bring them into the viewport\n\t\t#\n\t\t# Returns nothing.\n\t\trender_errors: (errors) ->\n\n\t\t\t# hide and remove any previous errors\n\t\t\t$( '.woocommerce-error, .woocommerce-message' ).remove()\n\n\t\t\t# add errors\n\t\t\t@form.prepend '
    • ' + errors.join( '
    • ' ) + '
    '\n\n\t\t\t# unblock UI\n\t\t\t@form.removeClass( 'processing' ).unblock()\n\t\t\t@form.find( '.input-text, select' ).blur()\n\n\t\t\t# scroll to top\n\t\t\t$( 'html, body' ).animate( { scrollTop: @form.offset().top - 100 }, 1000 )\n\n\n\t\t# Public: Handle associated actions for saved payment methods\n\t\t#\n\t\t# Returns nothing.\n\t\thandle_saved_payment_methods: ->\n\n\t\t\t# make available inside change events\n\t\t\tid_dasherized = @id_dasherized\n\n\t\t\tcsc_required = @csc_required\n\t\t\tcsc_required_for_tokens = @csc_required_for_tokens\n\n\t\t\t$new_payment_method_selection = $( \"div.js-wc-#{ id_dasherized }-new-payment-method-form\" )\n\t\t\t$csc_field = $new_payment_method_selection.find( '.js-sv-wc-payment-gateway-credit-card-form-csc' ).closest( '.form-row' )\n\n\t\t\t# show/hide the saved payment methods when a saved payment method is de-selected/selected\n\t\t\t$( \"input.js-wc-#{ @id_dasherized }-payment-token\" ).on 'change', ->\n\n\t\t\t\ttokenized_payment_method_selected = $( \"input.js-wc-#{ id_dasherized }-payment-token:checked\" ).val()\n\n\t\t\t\tif tokenized_payment_method_selected\n\n\t\t\t\t\t# using an existing tokenized payment method, hide the 'new method' fields\n\t\t\t\t\t$new_payment_method_selection.slideUp( 200 )\n\n\t\t\t\t\t# move the CSC field out of the 'new method' fields so it can be used with the tokenized transaction\n\t\t\t\t\tif csc_required_for_tokens\n\t\t\t\t\t\t$csc_field.removeClass( 'form-row-last' ).addClass( 'form-row-first' )\n\t\t\t\t\t\t$new_payment_method_selection.after( $csc_field )\n\n\t\t\t\telse\n\t\t\t\t\t# use new payment method, display the 'new method' fields\n\t\t\t\t\t$new_payment_method_selection.slideDown( 200 )\n\n\t\t\t\t\t# move the CSC field back into its regular spot\n\t\t\t\t\tif csc_required_for_tokens\n\t\t\t\t\t\t$csc_field.removeClass( 'form-row-first' ).addClass( 'form-row-last' )\n\t\t\t\t\t\t$new_payment_method_selection.find( '.js-sv-wc-payment-gateway-credit-card-form-expiry' ).closest( '.form-row' ).after( $csc_field )\n\t\t\t.change()\n\n\t\t\t# display the 'save payment method' option for guest checkouts if the 'create account' option is checked\n\t\t\t# but only hide the input if there is a 'create account' checkbox (some themes just display the password)\n\t\t\t$( 'input#createaccount' ).on 'change', ->\n\t\t\t\t$parent_row = $( \"input.js-wc-#{ id_dasherized }-tokenize-payment-method\" ).closest( 'p.form-row' )\n\n\t\t\t\tif $( this ).is( ':checked' )\n\t\t\t\t\t$parent_row.slideDown()\n\t\t\t\t\t$parent_row.next().show()\n\t\t\t\telse\n\t\t\t\t\t$parent_row.hide()\n\t\t\t\t\t$parent_row.next().hide()\n\n\t\t\t$( 'input#createaccount' ).change() unless $( 'input#createaccount' ).is( ':checked' )\n\n\n\t\t# Public: Handle showing/hiding the sample check image\n\t\t#\n\t\t# Returns nothing.\n\t\thandle_sample_check_hint: ->\n\n\t\t\t$sample_check = @payment_fields.find( '.js-sv-wc-payment-gateway-echeck-form-sample-check' )\n\n\t\t\tif $sample_check.is( \":visible\" ) then $sample_check.slideUp() else $sample_check.slideDown()\n\n\n\n\t\t# Blocks the payment form UI\n\t\t#\n\t\t# @since 3.0.0\n\t\tblock_ui: -> @form.block( message: null, overlayCSS: background: '#fff',opacity: 0.6 )\n\n\n\t\t# Unblocks the payment form UI\n\t\t#\n\t\t# @since 3.0.0\n\t\tunblock_ui: -> @form.unblock()\n\n\n\t# dispatch loaded event\n\t$( document.body ).trigger( \"sv_wc_payment_form_handler_v5_15_8_loaded\" )\n"],"names":["$parcel$export","e","n","v","s","Object","defineProperty","get","set","enumerable","configurable","$parcel$global","globalThis","self","window","global","$parcel$modules","$parcel$inits","parcelRequire","id","exports","init","module","call","err","Error","code","register","parcelRegister","$c0249d4a3fc9bb83$export$71511d61b312f219","instance","Constructor","TypeError","$690246f0b6925227$var$_defineProperties","target","props","i","length","descriptor","writable","key","$690246f0b6925227$export$71511d61b312f219","protoProps","staticProps","prototype","$guLUH","$90XvN","indexOf","jQuery","$","SV_WC_Payment_Form_Handler_v5_15_8","args","_this","_","id_dasherized","plugin_id","type","csc_required","csc_required_for_tokens","enabled_card_types","form","handle_checkout_page","handle_pay_page","handle_add_payment_method_page","console","log","params","on","handle_sample_check_hint","document","trigger","value","body","format_credit_card_inputs","set_payment_fields","handle_saved_payment_methods","concat","validate_payment_data","submit","val","payment_fields","$required_fields","find","each","input","handler","valid","is","saved_payment_method_selected","validate_card_data","validate_account_data","triggerHandler","payment_form","passed_validation","$card_number","$csc","$expiry","payment","do_inline_credit_card_validation","$card_type","cardType","addClass","removeClass","validateCardExpiry","validateCardCVC","account_number","csc","errors","expiry","test","push","cvv_digits_invalid","cvv_length_invalid","cvv_missing","cardExpiryVal","replace","card_number_length_invalid","card_number_digits_invalid","validateCardNumber","card_number_invalid","card_number_missing","card_exp_date_invalid","render_errors","routing_number","routing_number_length_invalid","routing_number_digits_invalid","routing_number_missing","account_number_length_invalid","account_number_invalid","account_number_missing","remove","prepend","join","unblock","blur","animate","scrollTop","offset","top","$csc_field","$new_payment_method_selection","closest","slideUp","after","slideDown","change","$parent_row","next","show","hide","$sample_check","block","message","overlayCSS","background","opacity","undefined"],"version":3,"file":"sv-wc-payment-gateway-payment-form.js.map","sourceRoot":"../../../../../"} \ No newline at end of file +{"mappings":"A,S,E,C,C,C,C,C,C,C,E,O,c,C,E,E,C,I,E,I,E,W,C,E,a,C,C,E,C,I,E,A,a,O,W,W,A,a,O,K,K,A,a,O,O,O,A,a,O,O,O,C,E,E,C,E,E,C,E,E,E,iB,A,O,I,A,C,E,S,C,E,G,K,E,O,C,C,E,C,O,C,G,K,E,C,I,E,C,C,E,A,Q,C,C,E,C,I,E,C,G,E,Q,C,C,E,O,C,C,E,C,E,E,I,C,E,O,C,E,E,O,E,E,O,A,C,I,E,A,M,uB,E,I,O,E,I,C,mB,C,C,E,Q,C,S,C,C,C,E,C,C,E,C,C,E,E,iB,C,G,I,E,E,Q,C,E,Q,S,C,C,C,E,E,E,O,C,I,W,O,C,GCAA,SAAS,EAAkB,CAAQ,CAAE,CAAW,EAC5C,GAAI,CAAE,CAAA,aAAoB,CAAA,EAAc,MAAM,AAAI,UAAU,oCAChE,C,G,E,Q,S,C,C,C,ECFA,SAAS,EAAkB,CAAM,CAAE,CAAK,EACpC,IAAK,IAAI,EAAI,EAAG,EAAI,EAAM,MAAM,CAAE,IAAK,CACnC,IAAI,EAAa,CAAK,CAAC,EAAE,AACzB,CAAA,EAAW,UAAU,CAAG,EAAW,UAAU,EAAI,CAAA,EACjD,EAAW,YAAY,CAAG,CAAA,EAEtB,UAAW,GAAY,CAAA,EAAW,QAAQ,CAAG,CAAA,CAAjD,EAEA,OAAO,cAAc,CAAC,EAAQ,EAAW,GAAG,CAAE,EAClD,CACJ,CACA,SAAS,EAAc,CAAW,CAAE,CAAU,CAAE,CAAW,EAIvD,OAHI,GAAY,EAAkB,EAAY,SAAS,CAAE,GACrD,GAAa,EAAkB,EAAa,GAEzC,CACX,C,E,E,O,C,I,W,O,C,E,G,I,E,E,S,E,E,SCTG,AAAA,CAAA,WAAA,IAAA,EAAA,EAAA,CAAA,OAAA,CACH,OAAO,SAAE,CAAF,EA2XN,OAvXM,OAAO,kCAAA,CAAb,WAAA,SAAA,EAae,CAAD,E,I,E,I,CAWZ,GAxBF,AAAA,CAAA,EAAA,EAAA,CAAA,AAAA,EAAA,IAAA,CAAA,GAeE,IAAC,CAAA,EAAD,CAA2B,EAAK,EAAhC,CACA,IAAC,CAAA,aAAD,CAA2B,EAAK,aAAhC,CACA,IAAC,CAAA,SAAD,CAA2B,EAAK,SAAhC,CACA,IAAC,CAAA,IAAD,C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","sources":["","node_modules/@swc/helpers/esm/_class_call_check.js","node_modules/@swc/helpers/esm/_create_class.js","woocommerce/payment-gateway/assets/js/frontend/sv-wc-payment-gateway-payment-form.coffee"],"sourcesContent":["\nfunction $parcel$export(e, n, v, s) {\n Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});\n}\n\n var $parcel$global =\n typeof globalThis !== 'undefined'\n ? globalThis\n : typeof self !== 'undefined'\n ? self\n : typeof window !== 'undefined'\n ? window\n : typeof global !== 'undefined'\n ? global\n : {};\n \nvar $parcel$modules = {};\nvar $parcel$inits = {};\n\nvar parcelRequire = $parcel$global[\"parcelRequire94c2\"];\n\nif (parcelRequire == null) {\n parcelRequire = function(id) {\n if (id in $parcel$modules) {\n return $parcel$modules[id].exports;\n }\n if (id in $parcel$inits) {\n var init = $parcel$inits[id];\n delete $parcel$inits[id];\n var module = {id: id, exports: {}};\n $parcel$modules[id] = module;\n init.call(module.exports, module, module.exports);\n return module.exports;\n }\n var err = new Error(\"Cannot find module '\" + id + \"'\");\n err.code = 'MODULE_NOT_FOUND';\n throw err;\n };\n\n parcelRequire.register = function register(id, init) {\n $parcel$inits[id] = init;\n };\n\n $parcel$global[\"parcelRequire94c2\"] = parcelRequire;\n}\n\nvar parcelRegister = parcelRequire.register;\nparcelRegister(\"guLUH\", function(module, exports) {\n\n$parcel$export(module.exports, \"_\", function () { return $c0249d4a3fc9bb83$export$71511d61b312f219; });\nfunction $c0249d4a3fc9bb83$export$71511d61b312f219(instance, Constructor) {\n if (!(instance instanceof Constructor)) throw new TypeError(\"Cannot call a class as a function\");\n}\n\n});\n\nparcelRegister(\"90XvN\", function(module, exports) {\n\n$parcel$export(module.exports, \"_\", function () { return $690246f0b6925227$export$71511d61b312f219; });\nfunction $690246f0b6925227$var$_defineProperties(target, props) {\n for(var i = 0; i < props.length; i++){\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\nfunction $690246f0b6925227$export$71511d61b312f219(Constructor, protoProps, staticProps) {\n if (protoProps) $690246f0b6925227$var$_defineProperties(Constructor.prototype, protoProps);\n if (staticProps) $690246f0b6925227$var$_defineProperties(Constructor, staticProps);\n return Constructor;\n}\n\n});\n\n\nvar $guLUH = parcelRequire(\"guLUH\");\n\nvar $90XvN = parcelRequire(\"90XvN\");\n(function() {\n /*\n WooCommerce SkyVerge Payment Gateway Framework Payment Form CoffeeScript\n Version 4.3.0\n\n Copyright (c) 2014-2024, SkyVerge, Inc.\n Licensed under the GNU General Public License v3.0\n http://www.gnu.org/licenses/gpl-3.0.html\n */ var indexOf = [].indexOf;\n jQuery(function($) {\n \"use strict\";\n window.SV_WC_Payment_Form_Handler_v5_15_9 = /*#__PURE__*/ function() {\n function SV_WC_Payment_Form_Handler_v5_15_9(args) {\n var _this = this;\n (0, $guLUH._)(this, SV_WC_Payment_Form_Handler_v5_15_9);\n this.id = args.id;\n this.id_dasherized = args.id_dasherized;\n this.plugin_id = args.plugin_id;\n this.type = args.type;\n this.csc_required = args.csc_required;\n this.csc_required_for_tokens = args.csc_required_for_tokens;\n this.enabled_card_types = args.enabled_card_types;\n // which payment form?\n if ($('form.checkout').length) {\n this.form = $('form.checkout');\n this.handle_checkout_page();\n } else if ($('form#order_review').length) {\n this.form = $('form#order_review');\n this.handle_pay_page();\n } else if ($('form#add_payment_method').length) {\n this.form = $('form#add_payment_method');\n this.handle_add_payment_method_page();\n } else {\n console.log('No payment form found!');\n return;\n }\n // localized error messages\n this.params = window[\"sv_wc_payment_gateway_payment_form_params\"];\n if (this.type === 'echeck') // handle sample check image hint\n this.form.on('click', '.js-sv-wc-payment-gateway-echeck-form-check-hint, .js-sv-wc-payment-gateway-echeck-form-sample-check', function() {\n return _this.handle_sample_check_hint();\n });\n $(document).trigger('sv_wc_payment_form_handler_init', {\n id: this.id,\n instance: this\n });\n }\n (0, $90XvN._)(SV_WC_Payment_Form_Handler_v5_15_9, [\n {\n // Public: Handle required actions on the checkout page\n // Returns nothing.\n key: \"handle_checkout_page\",\n value: function handle_checkout_page() {\n var _this = this;\n if (this.type === 'credit-card') // format/validate credit card inputs using jQuery.payment\n $(document.body).on('updated_checkout', function() {\n return _this.format_credit_card_inputs();\n });\n // updated payment fields jQuery object on each checkout update (prevents stale data)\n $(document.body).on('updated_checkout', function() {\n return _this.set_payment_fields();\n });\n // handle saved payment methods\n // note on the checkout page, this is bound to `updated_checkout` so it\n // fires even when other parts of the checkout are changed\n $(document.body).on('updated_checkout', function() {\n return _this.handle_saved_payment_methods();\n });\n // validate payment data before order is submitted\n return this.form.on(\"checkout_place_order_\".concat(this.id), function() {\n return _this.validate_payment_data();\n });\n }\n },\n {\n // Public: Handle required actions on the Order > Pay page\n // Returns nothing.\n key: \"handle_pay_page\",\n value: function handle_pay_page() {\n var _this = this;\n this.set_payment_fields();\n // format/validate credit card inputs using jQuery.payment\n if (this.type === 'credit-card') this.format_credit_card_inputs();\n // handle saved payment methods\n this.handle_saved_payment_methods();\n // validate payment data before order is submitted\n return this.form.submit(function() {\n if ($('#order_review input[name=payment_method]:checked').val() === _this.id) // but only when one of our payment gateways is selected\n return _this.validate_payment_data();\n });\n }\n },\n {\n // Public: Handle required actions on the Add Payment Method page\n // Returns nothing.\n key: \"handle_add_payment_method_page\",\n value: function handle_add_payment_method_page() {\n var _this = this;\n this.set_payment_fields();\n // format/validate credit card inputs using jQuery.payment\n if (this.type === 'credit-card') this.format_credit_card_inputs();\n // validate payment data before order is submitted\n return this.form.submit(function() {\n if ($('#add_payment_method input[name=payment_method]:checked').val() === _this.id) // but only when one of our payment gateways is selected\n return _this.validate_payment_data();\n });\n }\n },\n {\n // Public: Set payment fields class variable, this is done\n // during the updated_checkout event as otherwise the reference to\n // the checkout fields becomes stale (somehow ¯\\_(ツ)_/¯)\n // This ensures payment fields are not marked as \"invalid\" before the customer has interacted with them.\n // Returns nothing.\n key: \"set_payment_fields\",\n value: function set_payment_fields() {\n var $required_fields;\n this.payment_fields = $(\".payment_method_\".concat(this.id));\n $required_fields = this.payment_fields.find('.validate-required .input-text');\n return $required_fields.each(function(i, input) {\n // if any of the required fields have a value, bail this loop and proceed with WooCommerce validation\n if ($(input).val()) return false;\n // otherwise remove all validation result classes from the inputs, since the form is freshly loaded\n return $(input).trigger('input');\n });\n }\n },\n {\n // Public: Validate Payment data when order is placed\n // Returns boolean, true if payment data is valid, false otherwise\n key: \"validate_payment_data\",\n value: function validate_payment_data() {\n var handler, valid;\n if (this.form.is('.processing')) // bail when already processing\n return false;\n this.saved_payment_method_selected = this.payment_fields.find('.js-sv-wc-payment-gateway-payment-token:checked').val();\n // perform internal validations (all fields present & valid, etc)\n valid = this.type === 'credit-card' ? this.validate_card_data() : this.validate_account_data();\n // let gateways perform their own validation prior to form submission\n handler = $(document.body).triggerHandler('sv_wc_payment_form_valid_payment_data', {\n payment_form: this,\n passed_validation: valid\n }) !== false;\n return valid && handler;\n }\n },\n {\n // Public: format card data using jQuery.Payment\n // Returns nothing.\n key: \"format_credit_card_inputs\",\n value: function format_credit_card_inputs() {\n var _this = this;\n var $card_number, $csc, $expiry;\n $card_number = $('.js-sv-wc-payment-gateway-credit-card-form-account-number').payment('formatCardNumber');\n $expiry = $('.js-sv-wc-payment-gateway-credit-card-form-expiry').payment('formatCardExpiry');\n $csc = $('.js-sv-wc-payment-gateway-credit-card-form-csc').payment('formatCardCVC');\n if ($card_number.val() && $card_number.val().length > 0) $card_number.trigger('change');\n if ($expiry.val() && $expiry.val().length > 0) $expiry.trigger('change');\n if ($csc.val() && $csc.val().length > 0) $csc.trigger('change');\n // perform inline validation on credit card inputs\n return $('.js-sv-wc-payment-gateway-credit-card-form-input').on('change paste keyup', function() {\n return _this.do_inline_credit_card_validation();\n });\n }\n },\n {\n // Public: perform inline validation on credit card fields\n // Returns nothing.\n key: \"do_inline_credit_card_validation\",\n value: function do_inline_credit_card_validation() {\n var $card_number, $card_type, $csc, $expiry;\n $card_number = $('.js-sv-wc-payment-gateway-credit-card-form-account-number');\n $expiry = $('.js-sv-wc-payment-gateway-credit-card-form-expiry');\n $csc = $('.js-sv-wc-payment-gateway-credit-card-form-csc');\n $card_type = $.payment.cardType($card_number.val());\n if (indexOf.call(this.enabled_card_types, $card_type) < 0) $card_number.addClass('invalid-card-type');\n else $card_number.removeClass('invalid-card-type');\n if ($.payment.validateCardExpiry($expiry.payment('cardExpiryVal'))) $expiry.addClass('identified');\n else $expiry.removeClass('identified');\n if ($.payment.validateCardCVC($csc.val())) return $csc.addClass('identified');\n else return $csc.removeClass('identified');\n }\n },\n {\n // Public: Perform validation on the credit card info entered\n // Return boolean, true if credit card info is valid, false otherwise\n key: \"validate_card_data\",\n value: function validate_card_data() {\n var account_number, csc, errors, expiry;\n errors = [];\n csc = this.payment_fields.find('.js-sv-wc-payment-gateway-credit-card-form-csc').val();\n // always validate the CSC if present\n if (csc != null) {\n if (csc) {\n if (/\\D/.test(csc)) errors.push(this.params.cvv_digits_invalid);\n if (csc.length < 3 || csc.length > 4) errors.push(this.params.cvv_length_invalid);\n } else if (this.csc_required) {\n if (!this.saved_payment_method_selected || this.csc_required_for_tokens) errors.push(this.params.cvv_missing);\n }\n }\n // Only validate the other CC fields if necessary\n if (!this.saved_payment_method_selected) {\n account_number = this.payment_fields.find('.js-sv-wc-payment-gateway-credit-card-form-account-number').val();\n expiry = $.payment.cardExpiryVal(this.payment_fields.find('.js-sv-wc-payment-gateway-credit-card-form-expiry').val());\n // replace any dashes or spaces in the card number\n account_number = account_number.replace(/-|\\s/g, '');\n // validate card number\n if (!account_number) errors.push(this.params.card_number_missing);\n else {\n if (account_number.length < 12 || account_number.length > 19) errors.push(this.params.card_number_length_invalid);\n if (/\\D/.test(account_number)) errors.push(this.params.card_number_digits_invalid);\n if (!$.payment.validateCardNumber(account_number)) errors.push(this.params.card_number_invalid);\n }\n if (!$.payment.validateCardExpiry(expiry)) // validate expiration date\n errors.push(this.params.card_exp_date_invalid);\n }\n if (errors.length > 0) {\n this.render_errors(errors);\n return false;\n } else {\n // get rid of any space/dash characters\n this.payment_fields.find('.js-sv-wc-payment-gateway-credit-card-form-account-number').val(account_number);\n return true;\n }\n }\n },\n {\n // Public: Perform validation on the eCheck info entered\n // Return boolean, true if eCheck info is valid, false otherwise\n key: \"validate_account_data\",\n value: function validate_account_data() {\n var account_number, errors, routing_number;\n if (this.saved_payment_method_selected) return true;\n errors = [];\n routing_number = this.payment_fields.find('.js-sv-wc-payment-gateway-echeck-form-routing-number').val();\n account_number = this.payment_fields.find('.js-sv-wc-payment-gateway-echeck-form-account-number').val();\n // validate routing number\n if (!routing_number) errors.push(this.params.routing_number_missing);\n else {\n if (9 !== routing_number.length) errors.push(this.params.routing_number_length_invalid);\n if (/\\D/.test(routing_number)) errors.push(this.params.routing_number_digits_invalid);\n }\n // validate account number\n if (!account_number) errors.push(this.params.account_number_missing);\n else {\n if (account_number.length < 3 || account_number.length > 17) errors.push(this.params.account_number_length_invalid);\n if (/\\D/.test(account_number)) errors.push(this.params.account_number_invalid);\n }\n if (errors.length > 0) {\n this.render_errors(errors);\n return false;\n } else {\n // get rid of any space/dash characters\n this.payment_fields.find('.js-sv-wc-payment-gateway-echeck-form-account-number').val(account_number);\n return true;\n }\n }\n },\n {\n // Public: Render any new errors and bring them into the viewport\n // Returns nothing.\n key: \"render_errors\",\n value: function render_errors(errors) {\n // hide and remove any previous errors\n $('.woocommerce-error, .woocommerce-message').remove();\n // add errors\n this.form.prepend('
    • ' + errors.join('
    • ') + '
    ');\n // unblock UI\n this.form.removeClass('processing').unblock();\n this.form.find('.input-text, select').blur();\n // scroll to top\n return $('html, body').animate({\n scrollTop: this.form.offset().top - 100\n }, 1000);\n }\n },\n {\n // Public: Handle associated actions for saved payment methods\n // Returns nothing.\n key: \"handle_saved_payment_methods\",\n value: function handle_saved_payment_methods() {\n var $csc_field, $new_payment_method_selection, csc_required, csc_required_for_tokens, id_dasherized;\n // make available inside change events\n id_dasherized = this.id_dasherized;\n csc_required = this.csc_required;\n csc_required_for_tokens = this.csc_required_for_tokens;\n $new_payment_method_selection = $(\"div.js-wc-\".concat(id_dasherized, \"-new-payment-method-form\"));\n $csc_field = $new_payment_method_selection.find('.js-sv-wc-payment-gateway-credit-card-form-csc').closest('.form-row');\n // show/hide the saved payment methods when a saved payment method is de-selected/selected\n $(\"input.js-wc-\".concat(this.id_dasherized, \"-payment-token\")).on('change', function() {\n var tokenized_payment_method_selected;\n tokenized_payment_method_selected = $(\"input.js-wc-\".concat(id_dasherized, \"-payment-token:checked\")).val();\n if (tokenized_payment_method_selected) {\n // using an existing tokenized payment method, hide the 'new method' fields\n $new_payment_method_selection.slideUp(200);\n // move the CSC field out of the 'new method' fields so it can be used with the tokenized transaction\n if (csc_required_for_tokens) {\n $csc_field.removeClass('form-row-last').addClass('form-row-first');\n return $new_payment_method_selection.after($csc_field);\n }\n } else {\n // use new payment method, display the 'new method' fields\n $new_payment_method_selection.slideDown(200);\n // move the CSC field back into its regular spot\n if (csc_required_for_tokens) {\n $csc_field.removeClass('form-row-first').addClass('form-row-last');\n return $new_payment_method_selection.find('.js-sv-wc-payment-gateway-credit-card-form-expiry').closest('.form-row').after($csc_field);\n }\n }\n }).change();\n // display the 'save payment method' option for guest checkouts if the 'create account' option is checked\n // but only hide the input if there is a 'create account' checkbox (some themes just display the password)\n $('input#createaccount').on('change', function() {\n var $parent_row;\n $parent_row = $(\"input.js-wc-\".concat(id_dasherized, \"-tokenize-payment-method\")).closest('p.form-row');\n if ($(this).is(':checked')) {\n $parent_row.slideDown();\n return $parent_row.next().show();\n } else {\n $parent_row.hide();\n return $parent_row.next().hide();\n }\n });\n if (!$('input#createaccount').is(':checked')) return $('input#createaccount').change();\n }\n },\n {\n // Public: Handle showing/hiding the sample check image\n // Returns nothing.\n key: \"handle_sample_check_hint\",\n value: function handle_sample_check_hint() {\n var $sample_check;\n $sample_check = this.payment_fields.find('.js-sv-wc-payment-gateway-echeck-form-sample-check');\n if ($sample_check.is(\":visible\")) return $sample_check.slideUp();\n else return $sample_check.slideDown();\n }\n },\n {\n // Blocks the payment form UI\n // @since 3.0.0\n key: \"block_ui\",\n value: function block_ui() {\n return this.form.block({\n message: null,\n overlayCSS: {\n background: '#fff',\n opacity: 0.6\n }\n });\n }\n },\n {\n // Unblocks the payment form UI\n // @since 3.0.0\n key: \"unblock_ui\",\n value: function unblock_ui() {\n return this.form.unblock();\n }\n }\n ]);\n return SV_WC_Payment_Form_Handler_v5_15_9;\n }();\n // dispatch loaded event\n return $(document.body).trigger(\"sv_wc_payment_form_handler_v5_15_9_loaded\");\n });\n}).call(undefined);\n\n\n//# sourceMappingURL=sv-wc-payment-gateway-payment-form.js.map\n","function _class_call_check(instance, Constructor) {\n if (!(instance instanceof Constructor)) throw new TypeError(\"Cannot call a class as a function\");\n}\nexport { _class_call_check as _ };\n","function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n\n if (\"value\" in descriptor) descriptor.writable = true;\n\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\nfunction _create_class(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n\n return Constructor;\n}\nexport { _create_class as _ };\n","###\n WooCommerce SkyVerge Payment Gateway Framework Payment Form CoffeeScript\n Version 4.3.0\n\n Copyright (c) 2014-2024, SkyVerge, Inc.\n Licensed under the GNU General Public License v3.0\n http://www.gnu.org/licenses/gpl-3.0.html\n###\njQuery ( $ ) ->\n\t\"use strict\"\n\n\n\tclass window.SV_WC_Payment_Form_Handler_v5_15_9\n\n\n\t\t# Public: Instantiate Payment Form Handler\n\t\t#\n\t\t# args - object with properties:\n\t\t# id - gateway ID\n\t\t# id_dasherized - gateway ID dasherized\n\t\t# plugin_id - plugin ID\n\t\t# type - gateway type, either `credit-card` or `echeck`\n\t\t# csc_required - true if the gateway requires the CSC field to be displayed\n\t\t#\n\t\t# Returns SV_WC_Payment_Form_Handler_v5_15_9 instance\n\t\tconstructor: (args) ->\n\n\t\t\t@id = args.id\n\t\t\t@id_dasherized = args.id_dasherized\n\t\t\t@plugin_id = args.plugin_id\n\t\t\t@type = args.type\n\t\t\t@csc_required = args.csc_required\n\t\t\t@csc_required_for_tokens = args.csc_required_for_tokens\n\t\t\t@enabled_card_types = args.enabled_card_types\n\n\t\t\t# which payment form?\n\t\t\tif $( 'form.checkout' ).length\n\t\t\t\t@form = $( 'form.checkout' )\n\t\t\t\tthis.handle_checkout_page()\n\n\t\t\telse if $( 'form#order_review' ).length\n\t\t\t\t@form = $( 'form#order_review' )\n\t\t\t\tthis.handle_pay_page()\n\n\t\t\telse if $( 'form#add_payment_method' ).length\n\t\t\t\t@form = $( 'form#add_payment_method' )\n\t\t\t\tthis.handle_add_payment_method_page()\n\n\t\t\telse\n\t\t\t\tconsole.log( 'No payment form found!' )\n\t\t\t\treturn\n\n\t\t\t# localized error messages\n\t\t\t@params = window[ \"sv_wc_payment_gateway_payment_form_params\" ]\n\n\t\t\t# handle sample check image hint\n\t\t\t@form.on( 'click', '.js-sv-wc-payment-gateway-echeck-form-check-hint, .js-sv-wc-payment-gateway-echeck-form-sample-check', => this.handle_sample_check_hint() ) if @type is 'echeck'\n\n\t\t\t$( document ).trigger( 'sv_wc_payment_form_handler_init', { id: @id, instance: @ } )\n\n\n\t\t# Public: Handle required actions on the checkout page\n\t\t#\n\t\t# Returns nothing.\n\t\thandle_checkout_page: ->\n\n\t\t\t# format/validate credit card inputs using jQuery.payment\n\t\t\t$( document.body ).on( 'updated_checkout', => this.format_credit_card_inputs() ) if @type is 'credit-card'\n\n\t\t\t# updated payment fields jQuery object on each checkout update (prevents stale data)\n\t\t\t$( document.body ).on( 'updated_checkout', => this.set_payment_fields() )\n\n\t\t\t# handle saved payment methods\n\t\t\t# note on the checkout page, this is bound to `updated_checkout` so it\n\t\t\t# fires even when other parts of the checkout are changed\n\t\t\t$( document.body ).on( 'updated_checkout', => this.handle_saved_payment_methods() )\n\n\t\t\t# validate payment data before order is submitted\n\t\t\t@form.on( \"checkout_place_order_#{ @id }\", => this.validate_payment_data() )\n\n\n\t\t# Public: Handle required actions on the Order > Pay page\n\t\t#\n\t\t# Returns nothing.\n\t\thandle_pay_page: ->\n\n\t\t\tthis.set_payment_fields()\n\n\t\t\t# format/validate credit card inputs using jQuery.payment\n\t\t\tif @type is 'credit-card'\n\t\t\t\tthis.format_credit_card_inputs()\n\n\t\t\t# handle saved payment methods\n\t\t\tthis.handle_saved_payment_methods()\n\n\t\t\t# validate payment data before order is submitted\n\t\t\t@form.submit =>\n\n\t\t\t\t# but only when one of our payment gateways is selected\n\t\t\t\treturn this.validate_payment_data() if $( '#order_review input[name=payment_method]:checked' ).val() is @id\n\n\n\t\t# Public: Handle required actions on the Add Payment Method page\n\t\t#\n\t\t# Returns nothing.\n\t\thandle_add_payment_method_page: ->\n\n\t\t\tthis.set_payment_fields()\n\n\t\t\t# format/validate credit card inputs using jQuery.payment\n\t\t\tif @type is 'credit-card'\n\t\t\t\tthis.format_credit_card_inputs()\n\n\t\t\t# validate payment data before order is submitted\n\t\t\t@form.submit =>\n\n\t\t\t\t# but only when one of our payment gateways is selected\n\t\t\t\treturn this.validate_payment_data() if $( '#add_payment_method input[name=payment_method]:checked' ).val() is @id\n\n\n\t\t# Public: Set payment fields class variable, this is done\n\t\t# during the updated_checkout event as otherwise the reference to\n\t\t# the checkout fields becomes stale (somehow ¯\\_(ツ)_/¯)\n\t\t#\n\t\t# This ensures payment fields are not marked as \"invalid\" before the customer has interacted with them.\n\t\t#\n\t\t# Returns nothing.\n\t\tset_payment_fields: ->\n\n\t\t\t@payment_fields = $( \".payment_method_#{ @id }\" )\n\n\t\t\t$required_fields = @payment_fields.find( '.validate-required .input-text' )\n\n\t\t\t$required_fields.each( ( i, input ) =>\n\n\t\t\t\t# if any of the required fields have a value, bail this loop and proceed with WooCommerce validation\n\t\t\t\tif $( input ).val()\n\t\t\t\t\treturn false\n\n\t\t\t\t# otherwise remove all validation result classes from the inputs, since the form is freshly loaded\n\t\t\t\t$( input ).trigger( 'input' )\n\t\t\t)\n\n\n\t\t# Public: Validate Payment data when order is placed\n\t\t#\n\t\t# Returns boolean, true if payment data is valid, false otherwise\n\t\tvalidate_payment_data: ->\n\n\t\t\t# bail when already processing\n\t\t\treturn false if @form.is( '.processing' )\n\n\t\t\t@saved_payment_method_selected = @payment_fields.find( '.js-sv-wc-payment-gateway-payment-token:checked' ).val()\n\n\t\t\t# perform internal validations (all fields present & valid, etc)\n\t\t\tvalid = if @type is 'credit-card' then this.validate_card_data() else this.validate_account_data()\n\n\t\t\t# let gateways perform their own validation prior to form submission\n\t\t\thandler = $( document.body ).triggerHandler( 'sv_wc_payment_form_valid_payment_data', { payment_form: this, passed_validation: valid } ) isnt false\n\n\t\t\treturn valid && handler\n\n\n\t\t# Public: format card data using jQuery.Payment\n\t\t#\n\t\t# Returns nothing.\n\t\tformat_credit_card_inputs: ->\n\t\t\t$card_number = $('.js-sv-wc-payment-gateway-credit-card-form-account-number').payment('formatCardNumber');\n\t\t\t$expiry = $('.js-sv-wc-payment-gateway-credit-card-form-expiry').payment('formatCardExpiry');\n\t\t\t$csc = $('.js-sv-wc-payment-gateway-credit-card-form-csc').payment('formatCardCVC');\n\n\t\t\t# trigger a 'change' event for non empty fields only\n\t\t\t$card_number.trigger( 'change') if $card_number.val() && $card_number.val().length > 0\n\t\t\t$expiry.trigger( 'change') if $expiry.val() && $expiry.val().length > 0\n\t\t\t$csc.trigger( 'change') if $csc.val() && $csc.val().length > 0\n\n\t\t\t# perform inline validation on credit card inputs\n\t\t\t$( '.js-sv-wc-payment-gateway-credit-card-form-input' ).on( 'change paste keyup', => this.do_inline_credit_card_validation() )\n\n\n\t\t# Public: perform inline validation on credit card fields\n\t\t#\n\t\t# Returns nothing.\n\t\tdo_inline_credit_card_validation: ->\n\n\t\t\t$card_number = $( '.js-sv-wc-payment-gateway-credit-card-form-account-number' )\n\t\t\t$expiry = $( '.js-sv-wc-payment-gateway-credit-card-form-expiry' )\n\t\t\t$csc = $( '.js-sv-wc-payment-gateway-credit-card-form-csc' )\n\n\t\t\t$card_type = $.payment.cardType( $card_number.val() )\n\n\t\t\tif $card_type not in @enabled_card_types\n\t\t\t\t$card_number.addClass( 'invalid-card-type' )\n\t\t\telse\n\t\t\t\t$card_number.removeClass( 'invalid-card-type' )\n\n\t\t\tif $.payment.validateCardExpiry( $expiry.payment( 'cardExpiryVal' ) )\n\t\t\t\t$expiry.addClass( 'identified' )\n\t\t\telse\n\t\t\t\t$expiry.removeClass( 'identified' )\n\n\t\t\tif $.payment.validateCardCVC( $csc.val() )\n\t\t\t\t$csc.addClass( 'identified' )\n\t\t\telse\n\t\t\t\t$csc.removeClass( 'identified' )\n\n\n\t\t# Public: Perform validation on the credit card info entered\n\t\t#\n\t\t# Return boolean, true if credit card info is valid, false otherwise\n\t\tvalidate_card_data: ->\n\n\t\t\terrors = []\n\n\t\t\tcsc = @payment_fields.find( '.js-sv-wc-payment-gateway-credit-card-form-csc' ).val()\n\n\t\t\t# always validate the CSC if present\n\t\t\tif csc?\n\n\t\t\t\tif csc\n\t\t\t\t\terrors.push( @params.cvv_digits_invalid ) if /\\D/.test( csc )\n\t\t\t\t\terrors.push( @params.cvv_length_invalid ) if csc.length < 3 || csc.length > 4\n\t\t\t\telse if @csc_required\n\t\t\t\t\tif not @saved_payment_method_selected or @csc_required_for_tokens\n\t\t\t\t\t\terrors.push( @params.cvv_missing )\n\n\t\t\t# Only validate the other CC fields if necessary\n\t\t\tif not @saved_payment_method_selected\n\n\t\t\t\taccount_number = @payment_fields.find( '.js-sv-wc-payment-gateway-credit-card-form-account-number' ).val()\n\t\t\t\texpiry = $.payment.cardExpiryVal( @payment_fields.find( '.js-sv-wc-payment-gateway-credit-card-form-expiry' ).val() )\n\n\t\t\t\t# replace any dashes or spaces in the card number\n\t\t\t\taccount_number = account_number.replace( /-|\\s/g, '' )\n\n\t\t\t\t# validate card number\n\t\t\t\tif not account_number\n\t\t\t\t\terrors.push( @params.card_number_missing )\n\t\t\t\telse\n\t\t\t\t\terrors.push( @params.card_number_length_invalid ) if account_number.length < 12 || account_number.length > 19\n\t\t\t\t\terrors.push( @params.card_number_digits_invalid ) if /\\D/.test( account_number )\n\t\t\t\t\terrors.push( @params.card_number_invalid ) unless $.payment.validateCardNumber( account_number ) # performs luhn check\n\n\t\t\t\t# validate expiration date\n\t\t\t\terrors.push( @params.card_exp_date_invalid ) unless $.payment.validateCardExpiry( expiry ) # validates future date\n\n\t\t\tif errors.length > 0\n\t\t\t\tthis.render_errors( errors )\n\t\t\t\treturn false\n\t\t\telse\n\t\t\t\t# get rid of any space/dash characters\n\t\t\t\t@payment_fields.find( '.js-sv-wc-payment-gateway-credit-card-form-account-number' ).val( account_number )\n\t\t\t\treturn true\n\n\n\t\t# Public: Perform validation on the eCheck info entered\n\t\t#\n\t\t# Return boolean, true if eCheck info is valid, false otherwise\n\t\tvalidate_account_data: ->\n\n\t\t\treturn true if @saved_payment_method_selected\n\n\t\t\terrors = []\n\n\t\t\trouting_number = @payment_fields.find('.js-sv-wc-payment-gateway-echeck-form-routing-number').val()\n\t\t\taccount_number = @payment_fields.find('.js-sv-wc-payment-gateway-echeck-form-account-number').val()\n\n\t\t\t# validate routing number\n\t\t\tif not routing_number\n\t\t\t\terrors.push( @params.routing_number_missing )\n\t\t\telse\n\t\t\t\terrors.push( @params.routing_number_length_invalid ) if 9 != routing_number.length\n\t\t\t\terrors.push( @params.routing_number_digits_invalid ) if /\\D/.test( routing_number )\n\n\t\t\t# validate account number\n\t\t\tif not account_number\n\t\t\t\terrors.push( @params.account_number_missing )\n\t\t\telse\n\t\t\t\terrors.push( @params.account_number_length_invalid ) if account_number.length < 3 || account_number.length > 17\n\t\t\t\terrors.push( @params.account_number_invalid ) if /\\D/.test( account_number )\n\n\t\t\tif errors.length > 0\n\t\t\t\tthis.render_errors( errors )\n\t\t\t\treturn false\n\t\t\telse\n\t\t\t\t# get rid of any space/dash characters\n\t\t\t\t@payment_fields.find( '.js-sv-wc-payment-gateway-echeck-form-account-number' ).val( account_number )\n\t\t\t\treturn true\n\n\n\t\t# Public: Render any new errors and bring them into the viewport\n\t\t#\n\t\t# Returns nothing.\n\t\trender_errors: (errors) ->\n\n\t\t\t# hide and remove any previous errors\n\t\t\t$( '.woocommerce-error, .woocommerce-message' ).remove()\n\n\t\t\t# add errors\n\t\t\t@form.prepend '
    • ' + errors.join( '
    • ' ) + '
    '\n\n\t\t\t# unblock UI\n\t\t\t@form.removeClass( 'processing' ).unblock()\n\t\t\t@form.find( '.input-text, select' ).blur()\n\n\t\t\t# scroll to top\n\t\t\t$( 'html, body' ).animate( { scrollTop: @form.offset().top - 100 }, 1000 )\n\n\n\t\t# Public: Handle associated actions for saved payment methods\n\t\t#\n\t\t# Returns nothing.\n\t\thandle_saved_payment_methods: ->\n\n\t\t\t# make available inside change events\n\t\t\tid_dasherized = @id_dasherized\n\n\t\t\tcsc_required = @csc_required\n\t\t\tcsc_required_for_tokens = @csc_required_for_tokens\n\n\t\t\t$new_payment_method_selection = $( \"div.js-wc-#{ id_dasherized }-new-payment-method-form\" )\n\t\t\t$csc_field = $new_payment_method_selection.find( '.js-sv-wc-payment-gateway-credit-card-form-csc' ).closest( '.form-row' )\n\n\t\t\t# show/hide the saved payment methods when a saved payment method is de-selected/selected\n\t\t\t$( \"input.js-wc-#{ @id_dasherized }-payment-token\" ).on 'change', ->\n\n\t\t\t\ttokenized_payment_method_selected = $( \"input.js-wc-#{ id_dasherized }-payment-token:checked\" ).val()\n\n\t\t\t\tif tokenized_payment_method_selected\n\n\t\t\t\t\t# using an existing tokenized payment method, hide the 'new method' fields\n\t\t\t\t\t$new_payment_method_selection.slideUp( 200 )\n\n\t\t\t\t\t# move the CSC field out of the 'new method' fields so it can be used with the tokenized transaction\n\t\t\t\t\tif csc_required_for_tokens\n\t\t\t\t\t\t$csc_field.removeClass( 'form-row-last' ).addClass( 'form-row-first' )\n\t\t\t\t\t\t$new_payment_method_selection.after( $csc_field )\n\n\t\t\t\telse\n\t\t\t\t\t# use new payment method, display the 'new method' fields\n\t\t\t\t\t$new_payment_method_selection.slideDown( 200 )\n\n\t\t\t\t\t# move the CSC field back into its regular spot\n\t\t\t\t\tif csc_required_for_tokens\n\t\t\t\t\t\t$csc_field.removeClass( 'form-row-first' ).addClass( 'form-row-last' )\n\t\t\t\t\t\t$new_payment_method_selection.find( '.js-sv-wc-payment-gateway-credit-card-form-expiry' ).closest( '.form-row' ).after( $csc_field )\n\t\t\t.change()\n\n\t\t\t# display the 'save payment method' option for guest checkouts if the 'create account' option is checked\n\t\t\t# but only hide the input if there is a 'create account' checkbox (some themes just display the password)\n\t\t\t$( 'input#createaccount' ).on 'change', ->\n\t\t\t\t$parent_row = $( \"input.js-wc-#{ id_dasherized }-tokenize-payment-method\" ).closest( 'p.form-row' )\n\n\t\t\t\tif $( this ).is( ':checked' )\n\t\t\t\t\t$parent_row.slideDown()\n\t\t\t\t\t$parent_row.next().show()\n\t\t\t\telse\n\t\t\t\t\t$parent_row.hide()\n\t\t\t\t\t$parent_row.next().hide()\n\n\t\t\t$( 'input#createaccount' ).change() unless $( 'input#createaccount' ).is( ':checked' )\n\n\n\t\t# Public: Handle showing/hiding the sample check image\n\t\t#\n\t\t# Returns nothing.\n\t\thandle_sample_check_hint: ->\n\n\t\t\t$sample_check = @payment_fields.find( '.js-sv-wc-payment-gateway-echeck-form-sample-check' )\n\n\t\t\tif $sample_check.is( \":visible\" ) then $sample_check.slideUp() else $sample_check.slideDown()\n\n\n\n\t\t# Blocks the payment form UI\n\t\t#\n\t\t# @since 3.0.0\n\t\tblock_ui: -> @form.block( message: null, overlayCSS: background: '#fff',opacity: 0.6 )\n\n\n\t\t# Unblocks the payment form UI\n\t\t#\n\t\t# @since 3.0.0\n\t\tunblock_ui: -> @form.unblock()\n\n\n\t# dispatch loaded event\n\t$( document.body ).trigger( \"sv_wc_payment_form_handler_v5_15_9_loaded\" )\n"],"names":["$parcel$export","e","n","v","s","Object","defineProperty","get","set","enumerable","configurable","$parcel$global","globalThis","self","window","global","$parcel$modules","$parcel$inits","parcelRequire","id","exports","init","module","call","err","Error","code","register","parcelRegister","$c0249d4a3fc9bb83$export$71511d61b312f219","instance","Constructor","TypeError","$690246f0b6925227$var$_defineProperties","target","props","i","length","descriptor","writable","key","$690246f0b6925227$export$71511d61b312f219","protoProps","staticProps","prototype","$guLUH","$90XvN","indexOf","jQuery","$","SV_WC_Payment_Form_Handler_v5_15_9","args","_this","_","id_dasherized","plugin_id","type","csc_required","csc_required_for_tokens","enabled_card_types","form","handle_checkout_page","handle_pay_page","handle_add_payment_method_page","console","log","params","on","handle_sample_check_hint","document","trigger","value","body","format_credit_card_inputs","set_payment_fields","handle_saved_payment_methods","concat","validate_payment_data","submit","val","payment_fields","$required_fields","find","each","input","handler","valid","is","saved_payment_method_selected","validate_card_data","validate_account_data","triggerHandler","payment_form","passed_validation","$card_number","$csc","$expiry","payment","do_inline_credit_card_validation","$card_type","cardType","addClass","removeClass","validateCardExpiry","validateCardCVC","account_number","csc","errors","expiry","test","push","cvv_digits_invalid","cvv_length_invalid","cvv_missing","cardExpiryVal","replace","card_number_length_invalid","card_number_digits_invalid","validateCardNumber","card_number_invalid","card_number_missing","card_exp_date_invalid","render_errors","routing_number","routing_number_length_invalid","routing_number_digits_invalid","routing_number_missing","account_number_length_invalid","account_number_invalid","account_number_missing","remove","prepend","join","unblock","blur","animate","scrollTop","offset","top","$csc_field","$new_payment_method_selection","closest","slideUp","after","slideDown","change","$parent_row","next","show","hide","$sample_check","block","message","overlayCSS","background","opacity","undefined"],"version":3,"file":"sv-wc-payment-gateway-payment-form.js.map","sourceRoot":"../../../../../"} \ No newline at end of file diff --git a/woocommerce/payment-gateway/assets/js/frontend/sv-wc-payment-gateway-apple-pay.coffee b/woocommerce/payment-gateway/assets/js/frontend/sv-wc-payment-gateway-apple-pay.coffee index f73625f31..98d5164ac 100644 --- a/woocommerce/payment-gateway/assets/js/frontend/sv-wc-payment-gateway-apple-pay.coffee +++ b/woocommerce/payment-gateway/assets/js/frontend/sv-wc-payment-gateway-apple-pay.coffee @@ -14,7 +14,7 @@ jQuery ( $ ) -> # The WooCommerce Apple Pay handler base class. # # @since 4.7.0 - class window.SV_WC_Apple_Pay_Handler_v5_15_8 + class window.SV_WC_Apple_Pay_Handler_v5_15_9 # Constructs the handler. @@ -440,4 +440,4 @@ jQuery ( $ ) -> # dispatch loaded event - $( document.body ).trigger( 'sv_wc_apple_pay_handler_v5_15_8_loaded' ) + $( document.body ).trigger( 'sv_wc_apple_pay_handler_v5_15_9_loaded' ) diff --git a/woocommerce/payment-gateway/assets/js/frontend/sv-wc-payment-gateway-google-pay.js b/woocommerce/payment-gateway/assets/js/frontend/sv-wc-payment-gateway-google-pay.js index 34b83fe05..6f473aee9 100644 --- a/woocommerce/payment-gateway/assets/js/frontend/sv-wc-payment-gateway-google-pay.js +++ b/woocommerce/payment-gateway/assets/js/frontend/sv-wc-payment-gateway-google-pay.js @@ -7,9 +7,9 @@ jQuery( function( $ ) { * * @since 5.10.0 * - * @type {SV_WC_Google_Pay_Handler_v5_15_8} object + * @type {SV_WC_Google_Pay_Handler_v5_15_9} object */ - window.SV_WC_Google_Pay_Handler_v5_15_8 = class SV_WC_Google_Pay_Handler_v5_15_8 { + window.SV_WC_Google_Pay_Handler_v5_15_9 = class SV_WC_Google_Pay_Handler_v5_15_9 { /** * Handler constructor. @@ -612,6 +612,6 @@ jQuery( function( $ ) { } } - $( document.body ).trigger( 'sv_wc_google_pay_handler_v5_15_8_loaded' ); + $( document.body ).trigger( 'sv_wc_google_pay_handler_v5_15_9_loaded' ); } ); diff --git a/woocommerce/payment-gateway/assets/js/frontend/sv-wc-payment-gateway-my-payment-methods.coffee b/woocommerce/payment-gateway/assets/js/frontend/sv-wc-payment-gateway-my-payment-methods.coffee index c7382b208..0f7a4e4a8 100644 --- a/woocommerce/payment-gateway/assets/js/frontend/sv-wc-payment-gateway-my-payment-methods.coffee +++ b/woocommerce/payment-gateway/assets/js/frontend/sv-wc-payment-gateway-my-payment-methods.coffee @@ -12,7 +12,7 @@ jQuery ( $ ) -> # The My Payment Methods handler. # # @since 5.1.0 - class window.SV_WC_Payment_Methods_Handler_v5_15_8 + class window.SV_WC_Payment_Methods_Handler_v5_15_9 # Constructs the class. @@ -270,4 +270,4 @@ jQuery ( $ ) -> # dispatch loaded event - $( document.body ).trigger( 'sv_wc_payment_methods_handler_v5_15_8_loaded' ) + $( document.body ).trigger( 'sv_wc_payment_methods_handler_v5_15_9_loaded' ) diff --git a/woocommerce/payment-gateway/assets/js/frontend/sv-wc-payment-gateway-payment-form.coffee b/woocommerce/payment-gateway/assets/js/frontend/sv-wc-payment-gateway-payment-form.coffee index 8ee4d82f7..d43e3476a 100644 --- a/woocommerce/payment-gateway/assets/js/frontend/sv-wc-payment-gateway-payment-form.coffee +++ b/woocommerce/payment-gateway/assets/js/frontend/sv-wc-payment-gateway-payment-form.coffee @@ -10,7 +10,7 @@ jQuery ( $ ) -> "use strict" - class window.SV_WC_Payment_Form_Handler_v5_15_8 + class window.SV_WC_Payment_Form_Handler_v5_15_9 # Public: Instantiate Payment Form Handler @@ -22,7 +22,7 @@ jQuery ( $ ) -> # type - gateway type, either `credit-card` or `echeck` # csc_required - true if the gateway requires the CSC field to be displayed # - # Returns SV_WC_Payment_Form_Handler_v5_15_8 instance + # Returns SV_WC_Payment_Form_Handler_v5_15_9 instance constructor: (args) -> @id = args.id @@ -385,4 +385,4 @@ jQuery ( $ ) -> # dispatch loaded event - $( document.body ).trigger( "sv_wc_payment_form_handler_v5_15_8_loaded" ) + $( document.body ).trigger( "sv_wc_payment_form_handler_v5_15_9_loaded" ) diff --git a/woocommerce/payment-gateway/class-sv-wc-payment-gateway-direct.php b/woocommerce/payment-gateway/class-sv-wc-payment-gateway-direct.php index a9008723e..88d4b50be 100644 --- a/woocommerce/payment-gateway/class-sv-wc-payment-gateway-direct.php +++ b/woocommerce/payment-gateway/class-sv-wc-payment-gateway-direct.php @@ -22,13 +22,13 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9; -use SkyVerge\WooCommerce\PluginFramework\v5_15_8\Blocks\Blocks_Handler; +use SkyVerge\WooCommerce\PluginFramework\v5_15_9\Blocks\Blocks_Handler; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\SV_WC_Payment_Gateway_Direct' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\SV_WC_Payment_Gateway_Direct' ) ) : /** diff --git a/woocommerce/payment-gateway/class-sv-wc-payment-gateway-helper.php b/woocommerce/payment-gateway/class-sv-wc-payment-gateway-helper.php index 29fe98b41..7feff0725 100755 --- a/woocommerce/payment-gateway/class-sv-wc-payment-gateway-helper.php +++ b/woocommerce/payment-gateway/class-sv-wc-payment-gateway-helper.php @@ -22,11 +22,11 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\SV_WC_Payment_Gateway_Helper' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\SV_WC_Payment_Gateway_Helper' ) ) : /** diff --git a/woocommerce/payment-gateway/class-sv-wc-payment-gateway-hosted.php b/woocommerce/payment-gateway/class-sv-wc-payment-gateway-hosted.php index 6eb7f0c53..2111d6f58 100644 --- a/woocommerce/payment-gateway/class-sv-wc-payment-gateway-hosted.php +++ b/woocommerce/payment-gateway/class-sv-wc-payment-gateway-hosted.php @@ -22,11 +22,11 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\SV_WC_Payment_Gateway_Hosted' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\SV_WC_Payment_Gateway_Hosted' ) ) : /** diff --git a/woocommerce/payment-gateway/class-sv-wc-payment-gateway-my-payment-methods.php b/woocommerce/payment-gateway/class-sv-wc-payment-gateway-my-payment-methods.php index e9ce5c9df..0ff9d9252 100644 --- a/woocommerce/payment-gateway/class-sv-wc-payment-gateway-my-payment-methods.php +++ b/woocommerce/payment-gateway/class-sv-wc-payment-gateway-my-payment-methods.php @@ -22,11 +22,11 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\SV_WC_Payment_Gateway_My_Payment_Methods' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\SV_WC_Payment_Gateway_My_Payment_Methods' ) ) : /** @@ -174,9 +174,9 @@ public function maybe_enqueue_styles_scripts() { wp_register_script( 'jquery-tiptip', WC()->plugin_url() . '/assets/js/jquery-tiptip/jquery.tipTip.min.js', [ 'jquery' ], $wc_version ); - wp_enqueue_style( "$handle-v5_15_8", $this->get_plugin()->get_payment_gateway_framework_assets_url() . '/css/frontend/' . $handle . '.min.css', [ 'dashicons' ], $fw_version ); + wp_enqueue_style( "$handle-v5_15_9", $this->get_plugin()->get_payment_gateway_framework_assets_url() . '/css/frontend/' . $handle . '.min.css', [ 'dashicons' ], $fw_version ); - wp_enqueue_script( "$handle-v5_15_8", $this->get_plugin()->get_payment_gateway_framework_assets_url() . '/dist/frontend/' . $handle . '.js', [ 'jquery-tiptip', 'jquery' ], $fw_version ); + wp_enqueue_script( "$handle-v5_15_9", $this->get_plugin()->get_payment_gateway_framework_assets_url() . '/dist/frontend/' . $handle . '.js', [ 'jquery-tiptip', 'jquery' ], $fw_version ); } diff --git a/woocommerce/payment-gateway/class-sv-wc-payment-gateway-payment-form.php b/woocommerce/payment-gateway/class-sv-wc-payment-gateway-payment-form.php index 735736d3c..1c37a00fe 100644 --- a/woocommerce/payment-gateway/class-sv-wc-payment-gateway-payment-form.php +++ b/woocommerce/payment-gateway/class-sv-wc-payment-gateway-payment-form.php @@ -22,15 +22,15 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9; -use SkyVerge\WooCommerce\PluginFramework\v5_15_8\Blocks\Blocks_Handler; -use SkyVerge\WooCommerce\PluginFramework\v5_15_8\Enums\PaymentFormContext; -use SkyVerge\WooCommerce\PluginFramework\v5_15_8\Payment_Gateway\Blocks\Gateway_Checkout_Block_Integration; +use SkyVerge\WooCommerce\PluginFramework\v5_15_9\Blocks\Blocks_Handler; +use SkyVerge\WooCommerce\PluginFramework\v5_15_9\Enums\PaymentFormContext; +use SkyVerge\WooCommerce\PluginFramework\v5_15_9\Payment_Gateway\Blocks\Gateway_Checkout_Block_Integration; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\SV_WC_Payment_Gateway_Payment_Form' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\SV_WC_Payment_Gateway_Payment_Form' ) ) : /** @@ -1180,7 +1180,7 @@ protected function get_js_handler_args() { if ( is_array( $card_types ) && ! empty( $card_types ) ) { - $args['enabled_card_types'] = array_map( [ 'SkyVerge\WooCommerce\PluginFramework\v5_15_8\SV_WC_Payment_Gateway_Helper', 'normalize_card_type' ], $card_types ); + $args['enabled_card_types'] = array_map( [ 'SkyVerge\WooCommerce\PluginFramework\v5_15_9\SV_WC_Payment_Gateway_Helper', 'normalize_card_type' ], $card_types ); } } diff --git a/woocommerce/payment-gateway/class-sv-wc-payment-gateway-plugin.php b/woocommerce/payment-gateway/class-sv-wc-payment-gateway-plugin.php index 42afe7acd..295d84fca 100644 --- a/woocommerce/payment-gateway/class-sv-wc-payment-gateway-plugin.php +++ b/woocommerce/payment-gateway/class-sv-wc-payment-gateway-plugin.php @@ -22,16 +22,16 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9; use Automattic\WooCommerce\Admin\Notes\WC_Admin_Note; use Automattic\WooCommerce\Admin\Notes\WC_Admin_Notes; -use SkyVerge\WooCommerce\PluginFramework\v5_15_8\Payment_Gateway\Blocks\Gateway_Blocks_Handler; -use SkyVerge\WooCommerce\PluginFramework\v5_15_8\Payment_Gateway\External_Checkout\Google_Pay\Google_Pay; +use SkyVerge\WooCommerce\PluginFramework\v5_15_9\Payment_Gateway\Blocks\Gateway_Blocks_Handler; +use SkyVerge\WooCommerce\PluginFramework\v5_15_9\Payment_Gateway\External_Checkout\Google_Pay\Google_Pay; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\SV_WC_Payment_Gateway_Plugin' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\SV_WC_Payment_Gateway_Plugin' ) ) : /** diff --git a/woocommerce/payment-gateway/class-sv-wc-payment-gateway-privacy.php b/woocommerce/payment-gateway/class-sv-wc-payment-gateway-privacy.php index 120fa0341..812209dbb 100644 --- a/woocommerce/payment-gateway/class-sv-wc-payment-gateway-privacy.php +++ b/woocommerce/payment-gateway/class-sv-wc-payment-gateway-privacy.php @@ -22,11 +22,11 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\SV_WC_Payment_Gateway_Privacy' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\SV_WC_Payment_Gateway_Privacy' ) ) : /** diff --git a/woocommerce/payment-gateway/class-sv-wc-payment-gateway.php b/woocommerce/payment-gateway/class-sv-wc-payment-gateway.php index 60ff8c7d7..9ead3016d 100755 --- a/woocommerce/payment-gateway/class-sv-wc-payment-gateway.php +++ b/woocommerce/payment-gateway/class-sv-wc-payment-gateway.php @@ -22,16 +22,16 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9; use Automattic\WooCommerce\Blocks\Integrations\IntegrationInterface; -use SkyVerge\WooCommerce\PluginFramework\v5_15_8\Blocks\Blocks_Handler; -use SkyVerge\WooCommerce\PluginFramework\v5_15_8\Payment_Gateway\Blocks\Gateway_Checkout_Block_Integration; +use SkyVerge\WooCommerce\PluginFramework\v5_15_9\Blocks\Blocks_Handler; +use SkyVerge\WooCommerce\PluginFramework\v5_15_9\Payment_Gateway\Blocks\Gateway_Checkout_Block_Integration; use stdClass; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\SV_WC_Payment_Gateway' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\SV_WC_Payment_Gateway' ) ) : /** @@ -473,7 +473,7 @@ protected function enqueue_payment_form_assets() { } $handle = 'sv-wc-payment-gateway-payment-form'; - $versioned_handle = $handle . '-v5_15_8'; + $versioned_handle = $handle . '-v5_15_9'; // Frontend JS wp_enqueue_script( $versioned_handle, $this->get_plugin()->get_payment_gateway_framework_assets_url() . '/dist/frontend/' . $handle . '.js', array( 'jquery-payment' ), SV_WC_Plugin::VERSION, true ); diff --git a/woocommerce/payment-gateway/exceptions/class-sv-wc-payment-gateway-exception.php b/woocommerce/payment-gateway/exceptions/class-sv-wc-payment-gateway-exception.php index b2cb6d32a..1c56a4779 100644 --- a/woocommerce/payment-gateway/exceptions/class-sv-wc-payment-gateway-exception.php +++ b/woocommerce/payment-gateway/exceptions/class-sv-wc-payment-gateway-exception.php @@ -22,11 +22,11 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\SV_WC_Payment_Gateway_Exception' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\SV_WC_Payment_Gateway_Exception' ) ) : /** diff --git a/woocommerce/payment-gateway/integrations/abstract-sv-wc-payment-gateway-integration.php b/woocommerce/payment-gateway/integrations/abstract-sv-wc-payment-gateway-integration.php index 445109a91..47673eaa2 100644 --- a/woocommerce/payment-gateway/integrations/abstract-sv-wc-payment-gateway-integration.php +++ b/woocommerce/payment-gateway/integrations/abstract-sv-wc-payment-gateway-integration.php @@ -22,11 +22,11 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\SV_WC_Payment_Gateway_Integration' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\SV_WC_Payment_Gateway_Integration' ) ) : /** diff --git a/woocommerce/payment-gateway/integrations/class-sv-wc-payment-gateway-integration-pre-orders.php b/woocommerce/payment-gateway/integrations/class-sv-wc-payment-gateway-integration-pre-orders.php index 196484572..2184b146b 100644 --- a/woocommerce/payment-gateway/integrations/class-sv-wc-payment-gateway-integration-pre-orders.php +++ b/woocommerce/payment-gateway/integrations/class-sv-wc-payment-gateway-integration-pre-orders.php @@ -22,11 +22,11 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\SV_WC_Payment_Gateway_Integration_Pre_Orders' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\SV_WC_Payment_Gateway_Integration_Pre_Orders' ) ) : /** diff --git a/woocommerce/payment-gateway/integrations/class-sv-wc-payment-gateway-integration-subscriptions.php b/woocommerce/payment-gateway/integrations/class-sv-wc-payment-gateway-integration-subscriptions.php index cb3c9bda8..062614697 100644 --- a/woocommerce/payment-gateway/integrations/class-sv-wc-payment-gateway-integration-subscriptions.php +++ b/woocommerce/payment-gateway/integrations/class-sv-wc-payment-gateway-integration-subscriptions.php @@ -22,11 +22,11 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\SV_WC_Payment_Gateway_Integration_Subscriptions' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\SV_WC_Payment_Gateway_Integration_Subscriptions' ) ) : /** diff --git a/woocommerce/payment-gateway/payment-tokens/class-sv-wc-payment-gateway-payment-token.php b/woocommerce/payment-gateway/payment-tokens/class-sv-wc-payment-gateway-payment-token.php index d9a9bde7e..ec7ff1edd 100644 --- a/woocommerce/payment-gateway/payment-tokens/class-sv-wc-payment-gateway-payment-token.php +++ b/woocommerce/payment-gateway/payment-tokens/class-sv-wc-payment-gateway-payment-token.php @@ -22,11 +22,11 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\SV_WC_Payment_Gateway_Payment_Token' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\SV_WC_Payment_Gateway_Payment_Token' ) ) : /** diff --git a/woocommerce/payment-gateway/payment-tokens/class-sv-wc-payment-gateway-payment-tokens-handler.php b/woocommerce/payment-gateway/payment-tokens/class-sv-wc-payment-gateway-payment-tokens-handler.php index 8f03d6460..c80d523b2 100644 --- a/woocommerce/payment-gateway/payment-tokens/class-sv-wc-payment-gateway-payment-tokens-handler.php +++ b/woocommerce/payment-gateway/payment-tokens/class-sv-wc-payment-gateway-payment-tokens-handler.php @@ -22,11 +22,11 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\SV_WC_Payment_Gateway_Payment_Tokens_Handler' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\SV_WC_Payment_Gateway_Payment_Tokens_Handler' ) ) : /** diff --git a/woocommerce/payment-gateway/rest-api/class-sv-wc-payment-gateway-plugin-rest-api.php b/woocommerce/payment-gateway/rest-api/class-sv-wc-payment-gateway-plugin-rest-api.php index 07d7ace34..4a99f598b 100644 --- a/woocommerce/payment-gateway/rest-api/class-sv-wc-payment-gateway-plugin-rest-api.php +++ b/woocommerce/payment-gateway/rest-api/class-sv-wc-payment-gateway-plugin-rest-api.php @@ -22,19 +22,19 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8\Payment_Gateway; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9\Payment_Gateway; -use SkyVerge\WooCommerce\PluginFramework\v5_15_8\REST_API as Plugin_REST_API; +use SkyVerge\WooCommerce\PluginFramework\v5_15_9\REST_API as Plugin_REST_API; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\Payment_Gateway\\REST_API' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\Payment_Gateway\\REST_API' ) ) : /** * The payment gateway plugin REST API handler class. * - * @see \SkyVerge\WooCommerce\PluginFramework\v5_15_8\REST_API + * @see \SkyVerge\WooCommerce\PluginFramework\v5_15_9\REST_API * * @since 5.2.0 */ @@ -47,7 +47,7 @@ class REST_API extends Plugin_REST_API { * * Plugins can override this to add their own data. * - * @see \SkyVerge\WooCommerce\PluginFramework\v5_15_8\REST_API::get_system_status_data() + * @see \SkyVerge\WooCommerce\PluginFramework\v5_15_9\REST_API::get_system_status_data() * * @since 5.2.0 * diff --git a/woocommerce/rest-api/Controllers/Settings.php b/woocommerce/rest-api/Controllers/Settings.php index f36ee3156..d588f61ce 100644 --- a/woocommerce/rest-api/Controllers/Settings.php +++ b/woocommerce/rest-api/Controllers/Settings.php @@ -22,14 +22,14 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8\REST_API\Controllers; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9\REST_API\Controllers; -use SkyVerge\WooCommerce\PluginFramework\v5_15_8\Settings_API\Abstract_Settings; -use SkyVerge\WooCommerce\PluginFramework\v5_15_8\Settings_API\Setting; +use SkyVerge\WooCommerce\PluginFramework\v5_15_9\Settings_API\Abstract_Settings; +use SkyVerge\WooCommerce\PluginFramework\v5_15_9\Settings_API\Setting; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\REST_API\\Controllers\\Settings' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\REST_API\\Controllers\\Settings' ) ) : /** diff --git a/woocommerce/rest-api/class-sv-wc-plugin-rest-api.php b/woocommerce/rest-api/class-sv-wc-plugin-rest-api.php index a1f16858c..c5fdf1e8a 100644 --- a/woocommerce/rest-api/class-sv-wc-plugin-rest-api.php +++ b/woocommerce/rest-api/class-sv-wc-plugin-rest-api.php @@ -22,11 +22,11 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\REST_API' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\REST_API' ) ) : /** diff --git a/woocommerce/utilities/class-sv-wp-async-request.php b/woocommerce/utilities/class-sv-wp-async-request.php index 37ac4ff11..829bbc66a 100644 --- a/woocommerce/utilities/class-sv-wp-async-request.php +++ b/woocommerce/utilities/class-sv-wp-async-request.php @@ -23,11 +23,11 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\SV_WP_Async_Request' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\SV_WP_Async_Request' ) ) : /** diff --git a/woocommerce/utilities/class-sv-wp-background-job-handler.php b/woocommerce/utilities/class-sv-wp-background-job-handler.php index 1fe9a37ac..1a11508bb 100644 --- a/woocommerce/utilities/class-sv-wp-background-job-handler.php +++ b/woocommerce/utilities/class-sv-wp-background-job-handler.php @@ -23,11 +23,11 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ -namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8; +namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9; defined( 'ABSPATH' ) or exit; -if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\SV_WP_Background_Job_Handler' ) ) : +if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\SV_WP_Background_Job_Handler' ) ) : /** diff --git a/woocommerce/utilities/class-sv-wp-job-batch-handler.php b/woocommerce/utilities/class-sv-wp-job-batch-handler.php index f2f60947d..e93b7ac53 100644 --- a/woocommerce/utilities/class-sv-wp-job-batch-handler.php +++ b/woocommerce/utilities/class-sv-wp-job-batch-handler.php @@ -22,11 +22,11 @@ * @license http://www.gnu.org/licenses/gpl-3.0.html GNU General Public License v3.0 */ - namespace SkyVerge\WooCommerce\PluginFramework\v5_15_8; + namespace SkyVerge\WooCommerce\PluginFramework\v5_15_9; defined( 'ABSPATH' ) or exit; - if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_8\\SV_WP_Job_Batch_Handler' ) ) : + if ( ! class_exists( '\\SkyVerge\\WooCommerce\\PluginFramework\\v5_15_9\\SV_WP_Job_Batch_Handler' ) ) : /** From 29d4f77cdb18bbebc8ae95379b3440ddf805f886 Mon Sep 17 00:00:00 2001 From: Ashley Gibson Date: Thu, 1 May 2025 12:38:52 +0100 Subject: [PATCH 2/3] Delay usage of get_plugin_name() to after init --- .../class-sv-wc-payment-gateway-privacy.php | 23 +++++++++++++++---- 1 file changed, 18 insertions(+), 5 deletions(-) diff --git a/woocommerce/payment-gateway/class-sv-wc-payment-gateway-privacy.php b/woocommerce/payment-gateway/class-sv-wc-payment-gateway-privacy.php index 812209dbb..c95af0f8f 100644 --- a/woocommerce/payment-gateway/class-sv-wc-payment-gateway-privacy.php +++ b/woocommerce/payment-gateway/class-sv-wc-payment-gateway-privacy.php @@ -53,14 +53,10 @@ public function __construct( SV_WC_Payment_Gateway_Plugin $plugin ) { $this->plugin = $plugin; - parent::__construct( $plugin->get_plugin_name() ); + parent::__construct(); // add the action & filter hooks $this->add_hooks(); - - // add the token exporters & erasers - $this->add_exporter( "wc-{$plugin->get_id_dasherized()}-customer-tokens", __( "{$plugin->get_plugin_name()} Payment Tokens", 'woocommerce-plugin-framework' ), array( $this, 'customer_tokens_exporter' ) ); - $this->add_eraser( "wc-{$plugin->get_id_dasherized()}-customer-tokens", __( "{$plugin->get_plugin_name()} Payment Tokens", 'woocommerce-plugin-framework' ), array( $this, 'customer_tokens_eraser' ) ); } @@ -71,6 +67,9 @@ public function __construct( SV_WC_Payment_Gateway_Plugin $plugin ) { */ protected function add_hooks() { + // initializes data exporters and erasers + add_action('init', [$this, 'registerExportersAndErasers']); + // add the gateway data to customer data exports add_filter( 'woocommerce_privacy_export_customer_personal_data', array( $this, 'add_export_customer_data' ), 10, 2 ); @@ -84,6 +83,20 @@ protected function add_hooks() { add_action( 'woocommerce_privacy_remove_order_personal_data', array( $this, 'remove_order_personal_data' ) ); } + /** + * Initial registration of privacy erasers and exporters. + * + * Due to the use of translation functions, this should run only on/after init. + */ + public function registerExportersAndErasers() + { + $this->name = $this->plugin->get_plugin_name(); + + // add the token exporters & erasers + $this->add_exporter("wc-{$this->plugin->get_id_dasherized()}-customer-tokens", __("{$this->plugin->get_plugin_name()} Payment Tokens", 'woocommerce-plugin-framework'), [$this, 'customer_tokens_exporter']); + $this->add_eraser("wc-{$this->plugin->get_id_dasherized()}-customer-tokens", __("{$this->plugin->get_plugin_name()} Payment Tokens", 'woocommerce-plugin-framework'), [$this, 'customer_tokens_eraser']); + } + /** Customer methods ******************************************************/ From e6aa4950e363697512f6ca2d9df97337dd45659e Mon Sep 17 00:00:00 2001 From: Ashley Gibson Date: Thu, 1 May 2025 13:10:30 +0100 Subject: [PATCH 3/3] Delay the get_gateways() call until after we're inside the hook callback --- .../Blocks/Gateway_Blocks_Handler.php | 33 ++++++++++--------- 1 file changed, 17 insertions(+), 16 deletions(-) diff --git a/woocommerce/payment-gateway/Blocks/Gateway_Blocks_Handler.php b/woocommerce/payment-gateway/Blocks/Gateway_Blocks_Handler.php index 67f2e064c..3a17232cf 100644 --- a/woocommerce/payment-gateway/Blocks/Gateway_Blocks_Handler.php +++ b/woocommerce/payment-gateway/Blocks/Gateway_Blocks_Handler.php @@ -45,27 +45,28 @@ public function __construct( SV_WC_Payment_Gateway_Plugin $plugin ) { * * @return void */ - public function handle_blocks_integration() : void { - - if ( ! class_exists( PaymentMethodRegistry::class ) || ! class_exists( WooCommerceBlocks::class ) || ! version_compare( WooCommerceBlocks::get_version(), '4.4.0', '>' ) ) { + public function handle_blocks_integration() : void + { + if ( + ! class_exists(PaymentMethodRegistry::class) || + ! class_exists(WooCommerceBlocks::class) || + ! version_compare(WooCommerceBlocks::get_version(), '4.4.0', '>') + ) { return; } - if ( $this->is_checkout_block_compatible() ) { - - /** @var SV_WC_Payment_Gateway_Plugin $plugin */ - $plugin = $this->plugin; - - foreach ( $plugin->get_gateways() as $gateway ) { - - if ( $checkout_integration = $gateway->get_checkout_block_integration_instance() ) { + if ($this->is_checkout_block_compatible()) { + add_action('woocommerce_blocks_payment_method_type_registration', function (PaymentMethodRegistry $payment_method_registry) { + if (! $this->plugin instanceof SV_WC_Payment_Gateway_Plugin) { + return; + } - add_action('woocommerce_blocks_payment_method_type_registration', function ( PaymentMethodRegistry $payment_method_registry ) use ( $checkout_integration ) { - $payment_method_registry->register( $checkout_integration ); - } - ); + foreach ($this->plugin->get_gateways() as $gateway) { + if ($checkout_integration = $gateway->get_checkout_block_integration_instance()) { + $payment_method_registry->register($checkout_integration); + } } - } + }); } }