diff --git a/modules/ppcp-applepay/resources/js/ApplepayButton.js b/modules/ppcp-applepay/resources/js/ApplepayButton.js
index 2bcac16fc..e60af5e79 100644
--- a/modules/ppcp-applepay/resources/js/ApplepayButton.js
+++ b/modules/ppcp-applepay/resources/js/ApplepayButton.js
@@ -216,6 +216,7 @@ class ApplepayButton {
}
const $wrapper = jQuery( '#' + wrapper );
+ $wrapper.removeClass( 'ppcp-button-rect ppcp-button-pill' );
$wrapper.addClass( 'ppcp-button-' + ppcpStyle.shape );
if ( ppcpStyle.height ) {
diff --git a/modules/ppcp-button/resources/js/modules/Preview/DummyPreviewButton.js b/modules/ppcp-button/resources/js/modules/Preview/DummyPreviewButton.js
index e7fe3e3ff..ed5f3bee7 100644
--- a/modules/ppcp-button/resources/js/modules/Preview/DummyPreviewButton.js
+++ b/modules/ppcp-button/resources/js/modules/Preview/DummyPreviewButton.js
@@ -26,6 +26,23 @@ export default class DummyPreviewButton extends PreviewButton {
this.#innerEl = document.createElement( 'div' );
this.#innerEl.innerHTML = `
${ this.label }
`;
+ this._applyShape( this.ppcpConfig?.button?.style?.shape );
+
this.domWrapper.appendChild( this.#innerEl );
}
+
+ /**
+ * Applies the button shape (rect/pill) to the dummy button
+ *
+ * @param {string|null} shape
+ * @private
+ */
+ _applyShape( shape = 'rect' ) {
+ this.domWrapper.classList.remove(
+ 'ppcp-button-pill',
+ 'ppcp-button-rect'
+ );
+
+ this.domWrapper.classList.add( `ppcp-button-${ shape }` );
+ }
}
diff --git a/modules/ppcp-googlepay/resources/js/GooglepayButton.js b/modules/ppcp-googlepay/resources/js/GooglepayButton.js
index 973648af3..8316c42e5 100644
--- a/modules/ppcp-googlepay/resources/js/GooglepayButton.js
+++ b/modules/ppcp-googlepay/resources/js/GooglepayButton.js
@@ -202,10 +202,13 @@ class GooglepayButton {
const { wrapper, ppcpStyle, buttonStyle } = this.contextConfig();
this.waitForWrapper( wrapper, () => {
- jQuery( wrapper ).addClass( 'ppcp-button-' + ppcpStyle.shape );
+ const $wrapper = jQuery( wrapper );
+
+ $wrapper.removeClass( 'ppcp-button-rect ppcp-button-pill' );
+ $wrapper.addClass( 'ppcp-button-' + ppcpStyle.shape );
if ( ppcpStyle.height ) {
- jQuery( wrapper ).css( 'height', `${ ppcpStyle.height }px` );
+ $wrapper.css( 'height', `${ ppcpStyle.height }px` );
}
const button = this.paymentsClient.createButton( {
@@ -217,7 +220,7 @@ class GooglepayButton {
buttonSizeMode: 'fill',
} );
- jQuery( wrapper ).append( button );
+ $wrapper.append( button );
} );
}