Merge branch 'trunk' of github.com:woocommerce/woocommerce-paypal-payments into trunk

This commit is contained in:
dinamiko 2021-07-16 09:23:39 +02:00
commit 2b27f44268
19 changed files with 112 additions and 19 deletions

View file

@ -4,7 +4,7 @@
"description": "PayPal Commerce Platform for WooCommerce", "description": "PayPal Commerce Platform for WooCommerce",
"license": "GPL-2.0", "license": "GPL-2.0",
"require": { "require": {
"dhii/module-interface": "^0.2", "dhii/module-interface": "^0.2 || ^0.3",
"psr/container": "1.0.0", "psr/container": "1.0.0",
"container-interop/service-provider": "^0.4.0", "container-interop/service-provider": "^0.4.0",
"dhii/containers": "v0.1.0-alpha1", "dhii/containers": "v0.1.0-alpha1",

View file

@ -36,7 +36,7 @@ class AdminNotices implements ModuleInterface {
* *
* @param ContainerInterface $container The container. * @param ContainerInterface $container The container.
*/ */
public function run( ContainerInterface $container ) { public function run( ContainerInterface $container ): void {
add_action( add_action(
'admin_notices', 'admin_notices',
function() use ( $container ) { function() use ( $container ) {

View file

@ -37,7 +37,7 @@ class ApiModule implements ModuleInterface {
* *
* @param ContainerInterface $container The container. * @param ContainerInterface $container The container.
*/ */
public function run( ContainerInterface $container ) { public function run( ContainerInterface $container ): void {
} }
/** /**

View file

@ -39,4 +39,4 @@ class CartBootstrap {
} }
} }
export default CartBootstrap; export default CartBootstrap;

View file

@ -7,6 +7,7 @@ class CreditCardRenderer {
this.errorHandler = errorHandler; this.errorHandler = errorHandler;
this.spinner = spinner; this.spinner = spinner;
this.cardValid = false; this.cardValid = false;
this.formValid = false;
} }
render(wrapper, contextConfig) { render(wrapper, contextConfig) {
@ -97,12 +98,8 @@ class CreditCardRenderer {
event.preventDefault(); event.preventDefault();
} }
this.errorHandler.clear(); this.errorHandler.clear();
const state = hostedFields.getState();
const formValid = Object.keys(state.fields).every(function (key) {
return state.fields[key].isValid;
});
if (formValid && this.cardValid) { if (this.formValid && this.cardValid) {
const save_card = this.defaultConfig.save_card ? true : false; const save_card = this.defaultConfig.save_card ? true : false;
const vault = document.getElementById('ppcp-credit-card-vault') ? const vault = document.getElementById('ppcp-credit-card-vault') ?
document.getElementById('ppcp-credit-card-vault').checked : save_card; document.getElementById('ppcp-credit-card-vault').checked : save_card;
@ -134,6 +131,13 @@ class CreditCardRenderer {
const validCards = this.defaultConfig.hosted_fields.valid_cards; const validCards = this.defaultConfig.hosted_fields.valid_cards;
this.cardValid = validCards.indexOf(event.cards[0].type) !== -1; this.cardValid = validCards.indexOf(event.cards[0].type) !== -1;
}) })
hostedFields.on('validityChange', (event) => {
const formValid = Object.keys(event.fields).every(function (key) {
return event.fields[key].isValid;
});
this.formValid = formValid;
})
document.querySelector(wrapper + ' button').addEventListener( document.querySelector(wrapper + ' button').addEventListener(
'click', 'click',
submitEvent submitEvent

View file

@ -438,7 +438,7 @@ class SmartButton implements SmartButtonInterface {
*/ */
public function message_renderer() { public function message_renderer() {
echo '<div id="ppcp-messages"></div>'; echo '<div id="ppcp-messages" data-partner-attribution-id="Woo_PPCP"></div>';
} }
/** /**

View file

@ -43,7 +43,7 @@ class ButtonModule implements ModuleInterface {
* *
* @param ContainerInterface|null $container The Container. * @param ContainerInterface|null $container The Container.
*/ */
public function run( ContainerInterface $container ) { public function run( ContainerInterface $container ): void {
add_action( add_action(
'wp', 'wp',

View file

@ -0,0 +1,12 @@
<?php
/**
* The compatibility module extensions.
*
* @package WooCommerce\PayPalCommerce\Compat
*/
declare(strict_types=1);
namespace WooCommerce\PayPalCommerce\Compat;
return array();

View file

@ -0,0 +1,16 @@
<?php
/**
* The compatibility module.
*
* @package WooCommerce\PayPalCommerce\Compat
*/
declare(strict_types=1);
namespace WooCommerce\PayPalCommerce\Compat;
use Dhii\Modular\Module\ModuleInterface;
return static function (): ModuleInterface {
return new CompatModule();
};

View file

@ -0,0 +1,12 @@
<?php
/**
* The compatibility module services.
*
* @package WooCommerce\PayPalCommerce\Compat
*/
declare(strict_types=1);
namespace WooCommerce\PayPalCommerce\Compat;
return array();

View file

@ -0,0 +1,49 @@
<?php
/**
* The compatibility module.
*
* @package WooCommerce\PayPalCommerce\Compat
*/
declare(strict_types=1);
namespace WooCommerce\PayPalCommerce\Compat;
use Dhii\Container\ServiceProvider;
use Dhii\Modular\Module\ModuleInterface;
use Interop\Container\ServiceProviderInterface;
use Psr\Container\ContainerInterface;
/**
* Class CompatModule
*/
class CompatModule implements ModuleInterface {
/**
* Setup the compatibility module.
*
* @return ServiceProviderInterface
*/
public function setup(): ServiceProviderInterface {
return new ServiceProvider(
require __DIR__ . '/../services.php',
require __DIR__ . '/../extensions.php'
);
}
/**
* Run the compatibility module.
*
* @param ContainerInterface|null $container The Container.
*/
public function run( ContainerInterface $container ) {
}
/**
* Returns the key for the module.
*
* @return string|void
*/
public function getKey() {
}
}

View file

@ -40,7 +40,7 @@ class OnboardingModule implements ModuleInterface {
* *
* @param ContainerInterface|null $container The container. * @param ContainerInterface|null $container The container.
*/ */
public function run( ContainerInterface $container ) { public function run( ContainerInterface $container ): void {
$asset_loader = $container->get( 'onboarding.assets' ); $asset_loader = $container->get( 'onboarding.assets' );
/** /**

View file

@ -37,7 +37,7 @@ class SessionModule implements ModuleInterface {
* *
* @param ContainerInterface|null $container The container. * @param ContainerInterface|null $container The container.
*/ */
public function run( ContainerInterface $container ) { public function run( ContainerInterface $container ): void {
add_action( add_action(
'woocommerce_init', 'woocommerce_init',
function () use ( $container ) { function () use ( $container ) {

View file

@ -44,7 +44,7 @@ class SubscriptionModule implements ModuleInterface {
* *
* @param ContainerInterface|null $container The container. * @param ContainerInterface|null $container The container.
*/ */
public function run( ContainerInterface $container ) { public function run( ContainerInterface $container ): void {
add_action( add_action(
'woocommerce_scheduled_subscription_payment_' . PayPalGateway::ID, 'woocommerce_scheduled_subscription_payment_' . PayPalGateway::ID,
function ( $amount, $order ) use ( $container ) { function ( $amount, $order ) use ( $container ) {

View file

@ -53,7 +53,7 @@ class WcGatewayModule implements ModuleInterface {
* *
* @param ContainerInterface|null $container The container. * @param ContainerInterface|null $container The container.
*/ */
public function run( ContainerInterface $container ) { public function run( ContainerInterface $container ): void {
$this->register_payment_gateways( $container ); $this->register_payment_gateways( $container );
$this->register_order_functionality( $container ); $this->register_order_functionality( $container );
$this->register_columns( $container ); $this->register_columns( $container );

View file

@ -36,7 +36,7 @@ class WebhookModule implements ModuleInterface {
* *
* @param ContainerInterface|null $container The Container. * @param ContainerInterface|null $container The Container.
*/ */
public function run( ContainerInterface $container ) { public function run( ContainerInterface $container ): void {
add_action( add_action(
'rest_api_init', 'rest_api_init',
static function () use ( $container ) { static function () use ( $container ) {

View file

@ -36,7 +36,7 @@ class WooCommerceLoggingModule implements ModuleInterface {
* *
* @param ContainerInterface $container The container. * @param ContainerInterface $container The container.
*/ */
public function run( ContainerInterface $container ) { public function run( ContainerInterface $container ): void {
} }

View file

@ -4,7 +4,7 @@
<!-- Configs --> <!-- Configs -->
<config name="minimum_supported_wp_version" value="4.7" /> <config name="minimum_supported_wp_version" value="4.7" />
<config name="testVersion" value="7.0-" /> <config name="testVersion" value="7.1-" />
<!-- Rules --> <!-- Rules -->
<rule ref="WooCommerce-Core" /> <rule ref="WooCommerce-Core" />

View file

@ -31,7 +31,7 @@ class PluginModule implements ModuleInterface {
* *
* @param ContainerInterface|null $container The Container. * @param ContainerInterface|null $container The Container.
*/ */
public function run( ContainerInterface $container ) { public function run( ContainerInterface $container ): void {
} }
/** /**