PluginProbe ʕ •ᴥ•ʔ
SureCart – Ecommerce Made Easy For Selling Physical Products, Digital Downloads, Subscriptions, Donations, & Payments / 4.6.2
SureCart – Ecommerce Made Easy For Selling Physical Products, Digital Downloads, Subscriptions, Donations, & Payments v4.6.2
4.6.6 4.6.5 4.6.4 4.6.3 4.6.2 4.6.1 4.6.0 4.5.1 4.5.0 4.4.2 4.4.1 4.4.0 4.3.3 4.3.2 4.3.1 4.3.0 4.2.3 4.2.2 4.2.1 1.0.3 1.0.4 1.0.5 1.0.6 1.1.0 1.1.1 1.1.10 1.1.11 1.1.12 1.1.13 1.1.14 1.1.15 1.1.16 1.1.17 1.1.18 1.1.19 1.1.2 1.1.3 1.1.4 1.1.5 1.1.6 1.1.7 1.1.8 1.1.9 1.10.0 1.10.1 1.10.2 1.10.3 1.10.4 1.11.0 1.11.1 1.11.2 1.2.0 1.2.1 1.2.2 1.2.3 1.2.4 1.2.5 1.3.0 1.3.1 1.3.2 1.3.3 1.3.4 1.4.0 1.4.1 1.4.2 1.5.0 1.5.1 1.5.2 1.5.3 1.5.4 1.5.5 1.5.6 1.5.7 1.5.8 1.6.0 1.6.1 1.6.2 1.6.3 1.6.4 1.7.0 1.7.1 1.7.2 1.8.0 1.8.1 1.8.2 1.8.3 1.8.4 1.8.5 1.9.0 1.9.1 1.9.2 1.9.3 1.9.4 1.9.5 2.0.0 2.0.1 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.10.0 2.10.1 2.11.0 2.11.1 2.11.2 2.11.3 2.11.4 2.12.0 2.13.0 2.14.0 2.14.1 2.15.0 2.15.1 2.16.0 2.16.1 2.16.2 2.16.3 2.17.0 2.17.1 2.17.2 2.18.0 2.19.0 2.19.2 2.19.3 2.19.4 2.2.0 2.2.1 2.20.0 2.20.1 2.20.2 2.20.3 2.20.4 2.20.5 2.20.6 2.21.0 2.22.0 2.22.1 2.23.0 2.24.0 2.25.0 2.25.1 2.25.2 2.26.0 2.27.0 2.27.1 2.28.0 2.29.0 2.29.1 2.29.2 2.29.3 2.29.4 2.3.0 2.3.1 2.30.0 2.31.0 2.31.1 2.31.2 2.31.3 2.4.0 2.4.1 2.4.2 2.4.3 2.4.4 2.40.0 2.40.1 2.5.0 2.5.1 2.5.2 2.6.0 2.6.1 2.6.2 2.7.0 2.7.1 2.7.2 2.7.3 2.7.4 2.7.5 2.8.0 2.8.1 2.8.2 2.8.3 2.8.4 2.9.0 3.0.0 3.0.0-RC1 3.0.0-RC2 3.0.0-beta1 3.0.0-beta2 3.0.1 3.0.2 3.0.3 3.0.4 3.0.5 3.1.0 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6 3.10.0 3.10.1 3.11.0 3.12.0 3.13.0 3.13.1 3.13.2 3.13.3 3.13.4 3.14.0 3.15.0 3.15.1 3.15.2 3.15.3 3.15.4 3.15.5 3.16.0 3.16.1 3.16.2 3.16.3 3.16.4 3.16.5 3.16.6 3.16.7 3.16.8 3.17.0 3.17.1 3.17.2 3.17.3 3.17.4 3.17.5 3.17.6 3.18.0 3.19.0 3.19.1 3.19.2 3.2.0 3.2.1 3.2.2 3.20.0 3.20.1 3.3.0 3.3.1 3.4.0 3.4.1 3.4.2 3.4.3 3.5.0 3.5.1 3.5.2 3.5.3 3.6.0 3.6.1 3.6.2 3.7.0 3.7.1 3.7.2 3.7.3 3.8.0 3.8.1 3.8.2 3.8.3 3.8.4 3.8.5 3.9.0 4.0.0 4.0.1 4.0.2 4.0.3 trunk 4.1.0 0.2.19.1 4.1.1 1.0.0 4.2.0 1.0.1 1.0.2
surecart / dist / components / cjs / sc-stripe-payment-request.cjs.entry.js
surecart / dist / components / cjs Last commit date
MockProcessor-ad11752f.js 2 months ago MockProcessor-ad11752f.js.map 2 months ago add-query-args-49dcb630.js 1 year ago add-query-args-49dcb630.js.map 1 year ago address-7404695f.js 4 months ago address-7404695f.js.map 4 months ago animation-registry-b597d2f4.js 3 months ago animation-registry-b597d2f4.js.map 3 months ago app-globals-464bf4c9.js 2 months ago app-globals-464bf4c9.js.map 2 months ago consumer-b58230e6.js 2 months ago consumer-b58230e6.js.map 2 months ago currency-71fce0f0.js 1 year ago currency-71fce0f0.js.map 1 year ago error-03c29608.js 1 month ago error-03c29608.js.map 1 month ago fetch-5e8dc1d5.js 1 month ago fetch-5e8dc1d5.js.map 1 month ago floating-ui.dom.esm-7fad5c49.js 6 months ago floating-ui.dom.esm-7fad5c49.js.map 6 months ago form-data-0da9940f.js 1 year ago form-data-0da9940f.js.map 1 year ago functions-033a6a55.js 3 months ago functions-033a6a55.js.map 3 months ago geo-permission-8128c254.js 1 month ago geo-permission-8128c254.js.map 1 month ago getters-6818073e.js 1 month ago getters-6818073e.js.map 1 month ago getters-68a0d178.js 2 months ago getters-68a0d178.js.map 2 months ago getters-a7cb114b.js 1 month ago getters-a7cb114b.js.map 1 month ago getters-bc65a40b.js 2 months ago getters-bc65a40b.js.map 2 months ago getters-d68c08ed.js 2 months ago getters-d68c08ed.js.map 2 months ago google-59d23803.js 1 year ago google-59d23803.js.map 1 year ago google-c1098cb3.js 1 month ago google-c1098cb3.js.map 1 month ago google-maps-0f9b7648.js 3 months ago google-maps-0f9b7648.js.map 3 months ago index-7ced8198.js 2 months ago index-7ced8198.js.map 2 months ago index-92023a2d.js 1 month ago index-92023a2d.js.map 1 month ago index-a4a4f390.js 1 month ago index-a4a4f390.js.map 1 month ago index-adacfa36.js 1 year ago index-adacfa36.js.map 1 year ago index-be4abba1.js 2 months ago index-be4abba1.js.map 2 months ago index-c3de642f.js 2 months ago index-c3de642f.js.map 2 months ago index-f3933112.js 1 month ago index-f3933112.js.map 1 month ago index-fb76df07.js 2 years ago index-fb76df07.js.map 2 years ago index.cjs.js 1 month ago index.cjs.js.map 1 month ago inline-aa15f113.js 1 year ago inline-aa15f113.js.map 1 year ago lazy-2b509fa7.js 1 year ago lazy-2b509fa7.js.map 1 year ago library-08bc52a5.js 2 months ago library-08bc52a5.js.map 2 months ago loader.cjs.js 1 month ago loader.cjs.js.map 1 year ago media-43b85f3d.js 1 year ago media-43b85f3d.js.map 1 year ago mutations-06bf0ea4.js 1 month ago mutations-06bf0ea4.js.map 1 month ago mutations-927be23d.js 1 month ago mutations-927be23d.js.map 1 month ago mutations-c14cbdc4.js 1 month ago mutations-c14cbdc4.js.map 1 month ago mutations-d5d6ddf1.js 2 months ago mutations-d5d6ddf1.js.map 2 months ago page-align-5a2ab493.js 1 year ago page-align-5a2ab493.js.map 1 year ago price-da3cab3d.js 4 months ago price-da3cab3d.js.map 4 months ago pure-bd6f0a6e.js 1 year ago pure-bd6f0a6e.js.map 1 year ago quantity-aa458329.js 3 months ago quantity-aa458329.js.map 3 months ago razorpay-88fe8897.js 3 months ago razorpay-88fe8897.js.map 3 months ago remove-query-args-b57e8cd3.js 1 year ago remove-query-args-b57e8cd3.js.map 1 year ago sc-address_5.cjs.entry.js 1 month ago sc-address_5.cjs.entry.js.map 3 months ago sc-alert.cjs.entry.js 1 month ago sc-alert.cjs.entry.js.map 1 year ago sc-avatar_2.cjs.entry.js 1 month ago sc-avatar_2.cjs.entry.js.map 1 month ago sc-badge-notice.cjs.entry.js 1 month ago sc-badge-notice.cjs.entry.js.map 1 year ago sc-block-ui.cjs.entry.js 1 month ago sc-block-ui.cjs.entry.js.map 5 months ago sc-breadcrumb.cjs.entry.js 1 month ago sc-breadcrumb.cjs.entry.js.map 1 year ago sc-breadcrumbs.cjs.entry.js 1 month ago sc-breadcrumbs.cjs.entry.js.map 1 year ago sc-button-group.cjs.entry.js 1 month ago sc-button-group.cjs.entry.js.map 1 year ago sc-button_6.cjs.entry.js 1 month ago sc-button_6.cjs.entry.js.map 1 month ago sc-cancel-dialog_3.cjs.entry.js 1 month ago sc-cancel-dialog_3.cjs.entry.js.map 1 month ago sc-cancel-discount_4.cjs.entry.js 1 month ago sc-cancel-discount_4.cjs.entry.js.map 2 months ago sc-card_2.cjs.entry.js 1 month ago sc-card_2.cjs.entry.js.map 4 months ago sc-cart-button.cjs.entry.js 1 month ago sc-cart-button.cjs.entry.js.map 1 year ago sc-cart-form-submit.cjs.entry.js 2 months ago sc-cart-form-submit.cjs.entry.js.map 1 year ago sc-cart-form.cjs.entry.js 1 month ago sc-cart-form.cjs.entry.js.map 1 month ago sc-cart-header.cjs.entry.js 1 month ago sc-cart-header.cjs.entry.js.map 1 year ago sc-cart-icon.cjs.entry.js 1 month ago sc-cart-icon.cjs.entry.js.map 1 year ago sc-cart-loader.cjs.entry.js 1 month ago sc-cart-loader.cjs.entry.js.map 1 year ago sc-cart-session-provider_3.cjs.entry.js 1 month ago sc-cart-session-provider_3.cjs.entry.js.map 2 months ago sc-cart-submit.cjs.entry.js 2 months ago sc-cart-submit.cjs.entry.js.map 1 year ago sc-cart.cjs.entry.js 1 month ago sc-cart.cjs.entry.js.map 2 months ago sc-cc-logo_2.cjs.entry.js 1 month ago sc-cc-logo_2.cjs.entry.js.map 1 month ago sc-charges-list.cjs.entry.js 1 month ago sc-charges-list.cjs.entry.js.map 2 months ago sc-checkout-autofill-provider_11.cjs.entry.js 1 month ago sc-checkout-autofill-provider_11.cjs.entry.js.map 1 month ago sc-checkout-form-errors.cjs.entry.js 2 months ago sc-checkout-form-errors.cjs.entry.js.map 1 year ago sc-checkout-mollie-payment_3.cjs.entry.js 1 month ago sc-checkout-mollie-payment_3.cjs.entry.js.map 2 months ago sc-checkout-product-bundle-component-variants.cjs.entry.js 1 month ago sc-checkout-product-bundle-component-variants.cjs.entry.js.map 1 month ago sc-checkout-product-price-variant-selector.cjs.entry.js 4 weeks ago sc-checkout-product-price-variant-selector.cjs.entry.js.map 4 weeks ago sc-checkout.cjs.entry.js 1 month ago sc-checkout.cjs.entry.js.map 1 month ago sc-choice-container.cjs.entry.js 1 month ago sc-choice-container.cjs.entry.js.map 1 year ago sc-choice.cjs.entry.js 1 month ago sc-choice.cjs.entry.js.map 1 year ago sc-choices.cjs.entry.js 1 month ago sc-choices.cjs.entry.js.map 1 year ago sc-column_2.cjs.entry.js 1 month ago sc-column_2.cjs.entry.js.map 1 month ago sc-compact-address_18.cjs.entry.js 1 month ago sc-compact-address_18.cjs.entry.js.map 1 month ago sc-conditional-form.cjs.entry.js 1 month ago sc-conditional-form.cjs.entry.js.map 2 months ago sc-consumer.cjs.entry.js 2 months ago sc-consumer.cjs.entry.js.map 1 year ago sc-coupon-form.cjs.entry.js 1 month ago sc-coupon-form.cjs.entry.js.map 5 months ago sc-custom-order-price-input.cjs.entry.js 1 month ago sc-custom-order-price-input.cjs.entry.js.map 2 months ago sc-customer-details.cjs.entry.js 1 month ago sc-customer-details.cjs.entry.js.map 7 months ago sc-customer-edit.cjs.entry.js 1 month ago sc-customer-edit.cjs.entry.js.map 2 months ago sc-customer-email.cjs.entry.js 1 month ago sc-customer-email.cjs.entry.js.map 1 month ago sc-customer-firstname.cjs.entry.js 1 month ago sc-customer-firstname.cjs.entry.js.map 2 months ago sc-customer-lastname.cjs.entry.js 1 month ago sc-customer-lastname.cjs.entry.js.map 2 months ago sc-customer-name.cjs.entry.js 1 month ago sc-customer-name.cjs.entry.js.map 2 months ago sc-dashboard-customer-details.cjs.entry.js 1 month ago sc-dashboard-customer-details.cjs.entry.js.map 2 months ago sc-dashboard-downloads-list.cjs.entry.js 1 month ago sc-dashboard-downloads-list.cjs.entry.js.map 2 months ago sc-dialog.cjs.entry.js 1 month ago sc-dialog.cjs.entry.js.map 5 months ago sc-divider.cjs.entry.js 1 month ago sc-divider.cjs.entry.js.map 1 year ago sc-donation-choices.cjs.entry.js 2 months ago sc-donation-choices.cjs.entry.js.map 1 year ago sc-downloads-list.cjs.entry.js 1 month ago sc-downloads-list.cjs.entry.js.map 1 month ago sc-dropdown_3.cjs.entry.js 1 month ago sc-dropdown_3.cjs.entry.js.map 6 months ago sc-empty_3.cjs.entry.js 1 month ago sc-empty_3.cjs.entry.js.map 4 months ago sc-express-payment.cjs.entry.js 1 month ago sc-express-payment.cjs.entry.js.map 3 months ago sc-feature-demo-banner.cjs.entry.js 1 month ago sc-feature-demo-banner.cjs.entry.js.map 1 year ago sc-flex.cjs.entry.js 1 month ago sc-flex.cjs.entry.js.map 1 year ago sc-form-control_2.cjs.entry.js 1 month ago sc-form-control_2.cjs.entry.js.map 2 months ago sc-form-row.cjs.entry.js 1 month ago sc-form-row.cjs.entry.js.map 1 year ago sc-form.cjs.entry.js 1 month ago sc-form.cjs.entry.js.map 1 year ago sc-format-bytes.cjs.entry.js 2 months ago sc-format-bytes.cjs.entry.js.map 1 year ago sc-format-interval.cjs.entry.js 2 months ago sc-format-interval.cjs.entry.js.map 1 year ago sc-format-number.cjs.entry.js 2 months ago sc-format-number.cjs.entry.js.map 1 year ago sc-fulfillment-shipping-status-badge.cjs.entry.js 2 months ago sc-fulfillment-shipping-status-badge.cjs.entry.js.map 4 months ago sc-fulfillments.cjs.entry.js 1 month ago sc-fulfillments.cjs.entry.js.map 2 months ago sc-heading_2.cjs.entry.js 1 month ago sc-heading_2.cjs.entry.js.map 1 year ago sc-image-slider.cjs.entry.js 1 month ago sc-image-slider.cjs.entry.js.map 1 month ago sc-invoice-status-badge.cjs.entry.js 1 month ago sc-invoice-status-badge.cjs.entry.js.map 4 months ago sc-invoices-list.cjs.entry.js 1 month ago sc-invoices-list.cjs.entry.js.map 2 months ago sc-license.cjs.entry.js 1 month ago sc-license.cjs.entry.js.map 2 months ago sc-licenses-list.cjs.entry.js 1 month ago sc-licenses-list.cjs.entry.js.map 1 month ago sc-line-item-bump.cjs.entry.js 1 month ago sc-line-item-bump.cjs.entry.js.map 1 year ago sc-line-item-total.cjs.entry.js 1 month ago sc-line-item-total.cjs.entry.js.map 6 months ago sc-line-item.cjs.entry.js 1 month ago sc-line-item.cjs.entry.js.map 1 year ago sc-line-items-provider.cjs.entry.js 1 month ago sc-line-items-provider.cjs.entry.js.map 1 year ago sc-line-items.cjs.entry.js 1 month ago sc-line-items.cjs.entry.js.map 1 month ago sc-login-form.cjs.entry.js 1 month ago sc-login-form.cjs.entry.js.map 2 months ago sc-manual-payment-method_3.cjs.entry.js 1 month ago sc-manual-payment-method_3.cjs.entry.js.map 3 months ago sc-menu-divider.cjs.entry.js 1 month ago sc-menu-divider.cjs.entry.js.map 1 year ago sc-menu-label_2.cjs.entry.js 1 month ago sc-menu-label_2.cjs.entry.js.map 1 month ago sc-mollie-add-method.cjs.entry.js 1 month ago sc-mollie-add-method.cjs.entry.js.map 2 months ago sc-order-confirmation-customer.cjs.entry.js 2 months ago sc-order-confirmation-customer.cjs.entry.js.map 1 year ago sc-order-confirmation-details.cjs.entry.js 2 months ago sc-order-confirmation-details.cjs.entry.js.map 11 months ago sc-order-confirmation-line-items_2.cjs.entry.js 1 month ago sc-order-confirmation-line-items_2.cjs.entry.js.map 1 month ago sc-order-confirmation.cjs.entry.js 1 month ago sc-order-confirmation.cjs.entry.js.map 2 months ago sc-order-coupon-form.cjs.entry.js 1 month ago sc-order-coupon-form.cjs.entry.js.map 2 months ago sc-order-detail.cjs.entry.js 2 months ago sc-order-detail.cjs.entry.js.map 1 year ago sc-order-fulfillment-badge.cjs.entry.js 1 month ago sc-order-fulfillment-badge.cjs.entry.js.map 4 months ago sc-order-manual-instructions.cjs.entry.js 2 months ago sc-order-manual-instructions.cjs.entry.js.map 1 year ago sc-order-password.cjs.entry.js 2 months ago sc-order-password.cjs.entry.js.map 1 year ago sc-order-return-badge.cjs.entry.js 1 month ago sc-order-return-badge.cjs.entry.js.map 4 months ago sc-order-shipment-badge.cjs.entry.js 2 months ago sc-order-shipment-badge.cjs.entry.js.map 4 months ago sc-order-status-badge.cjs.entry.js 1 month ago sc-order-status-badge.cjs.entry.js.map 4 months ago sc-order-submit.cjs.entry.js 1 month ago sc-order-submit.cjs.entry.js.map 2 months ago sc-order-summary.cjs.entry.js 1 month ago sc-order-summary.cjs.entry.js.map 1 month ago sc-order.cjs.entry.js 1 month ago sc-order.cjs.entry.js.map 1 month ago sc-orders-list.cjs.entry.js 1 month ago sc-orders-list.cjs.entry.js.map 1 month ago sc-pagination.cjs.entry.js 2 months ago sc-pagination.cjs.entry.js.map 1 year ago sc-password-nag.cjs.entry.js 1 month ago sc-password-nag.cjs.entry.js.map 2 months ago sc-password.cjs.entry.js 1 month ago sc-password.cjs.entry.js.map 1 month ago sc-payment-method-choice_2.cjs.entry.js 1 month ago sc-payment-method-choice_2.cjs.entry.js.map 1 year ago sc-payment-method-details.cjs.entry.js 1 month ago sc-payment-method-details.cjs.entry.js.map 1 year ago sc-payment-methods-list.cjs.entry.js 1 month ago sc-payment-methods-list.cjs.entry.js.map 2 months ago sc-payment.cjs.entry.js 1 month ago sc-payment.cjs.entry.js.map 3 months ago sc-paypal-add-method.cjs.entry.js 1 month ago sc-paypal-add-method.cjs.entry.js.map 2 months ago sc-paypal-buttons_2.cjs.entry.js 1 month ago sc-paypal-buttons_2.cjs.entry.js.map 2 months ago sc-paystack-add-method.cjs.entry.js 1 month ago sc-paystack-add-method.cjs.entry.js.map 2 months ago sc-pill-option.cjs.entry.js 1 month ago sc-pill-option.cjs.entry.js.map 1 year ago sc-popover.cjs.entry.js 1 month ago sc-popover.cjs.entry.js.map 6 months ago sc-premium-tag.cjs.entry.js 1 month ago sc-premium-tag.cjs.entry.js.map 1 year ago sc-price-choice-container.cjs.entry.js 1 month ago sc-price-choice-container.cjs.entry.js.map 1 month ago sc-price-choice.cjs.entry.js 1 month ago sc-price-choice.cjs.entry.js.map 2 months ago sc-price-choices.cjs.entry.js 1 month ago sc-price-choices.cjs.entry.js.map 1 year ago sc-price-input.cjs.entry.js 1 month ago sc-price-input.cjs.entry.js.map 1 year ago sc-price-range_4.cjs.entry.js 1 month ago sc-price-range_4.cjs.entry.js.map 1 year ago sc-price.cjs.entry.js 2 months ago sc-price.cjs.entry.js.map 11 months ago sc-product-buy-button.cjs.entry.js 1 month ago sc-product-buy-button.cjs.entry.js.map 2 months ago sc-product-donation-amount-choice.cjs.entry.js 1 month ago sc-product-donation-amount-choice.cjs.entry.js.map 2 months ago sc-product-donation-choices.cjs.entry.js 1 month ago sc-product-donation-choices.cjs.entry.js.map 2 months ago sc-product-donation-custom-amount.cjs.entry.js 1 month ago sc-product-donation-custom-amount.cjs.entry.js.map 2 months ago sc-product-item-list.cjs.entry.js 1 month ago sc-product-item-list.cjs.entry.js.map 2 months ago sc-product-item.cjs.entry.js 1 month ago sc-product-item.cjs.entry.js.map 1 year ago sc-product-pills-variant-option.cjs.entry.js 1 month ago sc-product-pills-variant-option.cjs.entry.js.map 1 year ago sc-product-price-choices.cjs.entry.js 1 month ago sc-product-price-choices.cjs.entry.js.map 1 year ago sc-product-price-modal.cjs.entry.js 1 month ago sc-product-price-modal.cjs.entry.js.map 2 months ago sc-product-price.cjs.entry.js 1 month ago sc-product-price.cjs.entry.js.map 2 months ago sc-product-quantity.cjs.entry.js 1 month ago sc-product-quantity.cjs.entry.js.map 1 year ago sc-product-selected-price.cjs.entry.js 1 month ago sc-product-selected-price.cjs.entry.js.map 2 months ago sc-product-text.cjs.entry.js 1 month ago sc-product-text.cjs.entry.js.map 1 year ago sc-provider.cjs.entry.js 2 months ago sc-provider.cjs.entry.js.map 1 year ago sc-provisional-banner.cjs.entry.js 1 month ago sc-provisional-banner.cjs.entry.js.map 11 months ago sc-purchase-downloads-list.cjs.entry.js 1 month ago sc-purchase-downloads-list.cjs.entry.js.map 1 month ago sc-razorpay-add-method.cjs.entry.js 1 month ago sc-razorpay-add-method.cjs.entry.js.map 2 months ago sc-recurring-price-choice-container.cjs.entry.js 2 months ago sc-recurring-price-choice-container.cjs.entry.js.map 1 year ago sc-review-stars.cjs.entry.js 2 months ago sc-review-stars.cjs.entry.js.map 5 months ago sc-rich-text.cjs.entry.js 1 month ago sc-rich-text.cjs.entry.js.map 1 month ago sc-skeleton.cjs.entry.js 1 month ago sc-skeleton.cjs.entry.js.map 1 year ago sc-spacing.cjs.entry.js 1 month ago sc-spacing.cjs.entry.js.map 1 year ago sc-stripe-add-method.cjs.entry.js 1 month ago sc-stripe-add-method.cjs.entry.js.map 2 months ago sc-stripe-element.cjs.entry.js 1 month ago sc-stripe-element.cjs.entry.js.map 2 months ago sc-stripe-payment-element.cjs.entry.js 1 month ago sc-stripe-payment-element.cjs.entry.js.map 2 months ago sc-stripe-payment-request.cjs.entry.js 1 month ago sc-stripe-payment-request.cjs.entry.js.map 2 months ago sc-subscription-ad-hoc-confirm.cjs.entry.js 1 month ago sc-subscription-ad-hoc-confirm.cjs.entry.js.map 6 months ago sc-subscription-details_2.cjs.entry.js 1 month ago sc-subscription-details_2.cjs.entry.js.map 1 month ago sc-subscription-payment-method.cjs.entry.js 1 month ago sc-subscription-payment-method.cjs.entry.js.map 2 months ago sc-subscription-payment.cjs.entry.js 1 month ago sc-subscription-payment.cjs.entry.js.map 2 months ago sc-subscription-switch.cjs.entry.js 1 month ago sc-subscription-switch.cjs.entry.js.map 2 months ago sc-subscription-variation-confirm.cjs.entry.js 1 month ago sc-subscription-variation-confirm.cjs.entry.js.map 1 year ago sc-subscription.cjs.entry.js 1 month ago sc-subscription.cjs.entry.js.map 1 month ago sc-subscriptions-list.cjs.entry.js 1 month ago sc-subscriptions-list.cjs.entry.js.map 2 months ago sc-summary.cjs.entry.js 1 month ago sc-summary.cjs.entry.js.map 1 year ago sc-swap.cjs.entry.js 1 month ago sc-swap.cjs.entry.js.map 2 months ago sc-switch.cjs.entry.js 1 month ago sc-switch.cjs.entry.js.map 7 months ago sc-tab-group.cjs.entry.js 1 month ago sc-tab-group.cjs.entry.js.map 1 year ago sc-tab-panel.cjs.entry.js 1 month ago sc-tab-panel.cjs.entry.js.map 1 year ago sc-tab.cjs.entry.js 1 month ago sc-tab.cjs.entry.js.map 1 year ago sc-table-head.cjs.entry.js 1 month ago sc-table-head.cjs.entry.js.map 1 year ago sc-table_3.cjs.entry.js 1 month ago sc-table_3.cjs.entry.js.map 10 months ago sc-tag.cjs.entry.js 1 month ago sc-tag.cjs.entry.js.map 4 months ago sc-test-mode-info.cjs.entry.js 1 month ago sc-test-mode-info.cjs.entry.js.map 6 months ago sc-text.cjs.entry.js 1 month ago sc-text.cjs.entry.js.map 1 year ago sc-toggle.cjs.entry.js 1 month ago sc-toggle.cjs.entry.js.map 1 year ago sc-toggles.cjs.entry.js 1 month ago sc-toggles.cjs.entry.js.map 1 year ago sc-total.cjs.entry.js 1 month ago sc-total.cjs.entry.js.map 1 year ago sc-upcoming-invoice.cjs.entry.js 1 month ago sc-upcoming-invoice.cjs.entry.js.map 2 months ago sc-upgrade-required.cjs.entry.js 2 months ago sc-upgrade-required.cjs.entry.js.map 1 year ago sc-upsell-countdown-timer.cjs.entry.js 1 month ago sc-upsell-countdown-timer.cjs.entry.js.map 1 year ago sc-upsell-no-thanks-button.cjs.entry.js 1 month ago sc-upsell-no-thanks-button.cjs.entry.js.map 2 months ago sc-upsell-submit-button.cjs.entry.js 1 month ago sc-upsell-submit-button.cjs.entry.js.map 2 months ago sc-upsell-totals.cjs.entry.js 1 month ago sc-upsell-totals.cjs.entry.js.map 2 months ago sc-upsell.cjs.entry.js 1 month ago sc-upsell.cjs.entry.js.map 2 months ago sc-verification-code.cjs.entry.js 1 month ago sc-verification-code.cjs.entry.js.map 2 months ago sc-visually-hidden.cjs.entry.js 1 month ago sc-visually-hidden.cjs.entry.js.map 1 year ago sc-wordpress-password-edit.cjs.entry.js 1 month ago sc-wordpress-password-edit.cjs.entry.js.map 2 months ago sc-wordpress-user-edit.cjs.entry.js 1 month ago sc-wordpress-user-edit.cjs.entry.js.map 2 months ago sc-wordpress-user.cjs.entry.js 1 month ago sc-wordpress-user.cjs.entry.js.map 1 year ago store-01e8edc2.js 2 months ago store-01e8edc2.js.map 2 months ago store-401bdb4d.js 2 months ago store-401bdb4d.js.map 2 months ago store-9c215436.js 1 month ago store-9c215436.js.map 1 month ago surecart.cjs.js 1 month ago surecart.cjs.js.map 1 year ago tax-a4582e73.js 1 year ago tax-a4582e73.js.map 1 year ago universe-1db52218.js 2 months ago universe-1db52218.js.map 2 months ago util-a15c420c.js 2 months ago util-a15c420c.js.map 2 months ago utils-a9d13080.js 3 months ago utils-a9d13080.js.map 3 months ago verification-19455819.js 1 month ago verification-19455819.js.map 1 month ago watchers-517825ae.js 2 months ago watchers-517825ae.js.map 2 months ago watchers-78d592d3.js 1 month ago watchers-78d592d3.js.map 1 month ago watchers-a1a973e3.js 1 month ago watchers-a1a973e3.js.map 1 month ago watchers-d2dd8b04.js 1 month ago watchers-d2dd8b04.js.map 1 month ago watchers-dcd346b7.js 1 month ago watchers-dcd346b7.js.map 1 month ago
sc-stripe-payment-request.cjs.entry.js
314 lines
1 'use strict';
2
3 Object.defineProperty(exports, '__esModule', { value: true });
4
5 const index = require('./index-be4abba1.js');
6 const pure = require('./pure-bd6f0a6e.js');
7 const mutations = require('./mutations-927be23d.js');
8 const index$1 = require('./index-92023a2d.js');
9 const mutations$1 = require('./mutations-d5d6ddf1.js');
10 const consumer = require('./consumer-b58230e6.js');
11 require('./index-c3de642f.js');
12 require('./utils-a9d13080.js');
13 require('./remove-query-args-b57e8cd3.js');
14 require('./add-query-args-49dcb630.js');
15 require('./index-fb76df07.js');
16 require('./google-59d23803.js');
17 require('./currency-71fce0f0.js');
18 require('./store-01e8edc2.js');
19 require('./price-da3cab3d.js');
20 require('./fetch-5e8dc1d5.js');
21 require('./index-7ced8198.js');
22
23 const scStripePaymentRequestCss = ":host{display:block}.or{display:none;margin:var(--sc-form-section-spacing) 0}.request--loaded .or{display:block}";
24 const ScStripePaymentRequestStyle0 = scStripePaymentRequestCss;
25
26 const ScStripePaymentRequest = class {
27 constructor(hostRef) {
28 index.registerInstance(this, hostRef);
29 this.scFormSubmit = index.createEvent(this, "scFormSubmit", 7);
30 this.scPaid = index.createEvent(this, "scPaid", 7);
31 this.scPayError = index.createEvent(this, "scPayError", 7);
32 this.scSetState = index.createEvent(this, "scSetState", 7);
33 this.scPaymentRequestLoaded = index.createEvent(this, "scPaymentRequestLoaded", 7);
34 this.scUpdateOrderState = index.createEvent(this, "scUpdateOrderState", 7);
35 this.stripeAccountId = undefined;
36 this.publishableKey = undefined;
37 this.country = 'US';
38 this.prices = undefined;
39 this.label = 'total';
40 this.amount = 0;
41 this.theme = 'dark';
42 this.error = undefined;
43 this.debug = false;
44 this.loaded = false;
45 this.debugError = undefined;
46 }
47 async componentWillLoad() {
48 if (!(this === null || this === void 0 ? void 0 : this.publishableKey) || !(this === null || this === void 0 ? void 0 : this.stripeAccountId)) {
49 return true;
50 }
51 try {
52 this.stripe = await pure.pure.loadStripe(this.publishableKey, { stripeAccount: this.stripeAccountId });
53 this.elements = this.stripe.elements();
54 this.paymentRequest = this.stripe.paymentRequest({
55 country: this.country,
56 requestShipping: true,
57 requestPayerEmail: true,
58 shippingOptions: [
59 {
60 id: 'free',
61 label: 'Free Shipping',
62 detail: 'No shipping required',
63 amount: 0,
64 },
65 ],
66 ...this.getRequestObject(mutations.state === null || mutations.state === void 0 ? void 0 : mutations.state.checkout),
67 });
68 }
69 catch (e) {
70 console.log((e === null || e === void 0 ? void 0 : e.message) || wp.i18n.__('Stripe could not be loaded', 'surecart'));
71 }
72 }
73 handleOrderChange() {
74 if (!this.paymentRequest)
75 return;
76 if (this.pendingEvent)
77 return;
78 this.paymentRequest.update(this.getRequestObject(mutations.state === null || mutations.state === void 0 ? void 0 : mutations.state.checkout));
79 }
80 handleLoaded() {
81 this.scPaymentRequestLoaded.emit(true);
82 }
83 handleErrorChange() {
84 if (this.pendingEvent) {
85 this.pendingEvent.complete('error');
86 }
87 }
88 async handleShippingChange(ev) {
89 var _a, _b, _c, _d, _e;
90 const { shippingAddress, updateWith } = ev;
91 try {
92 const order = (await index$1.createOrUpdateCheckout({
93 id: (_a = mutations.state === null || mutations.state === void 0 ? void 0 : mutations.state.checkout) === null || _a === void 0 ? void 0 : _a.id,
94 data: {
95 shipping_address: {
96 ...((shippingAddress === null || shippingAddress === void 0 ? void 0 : shippingAddress.name) ? { name: shippingAddress === null || shippingAddress === void 0 ? void 0 : shippingAddress.name } : {}),
97 ...(((_b = shippingAddress === null || shippingAddress === void 0 ? void 0 : shippingAddress.addressLine) === null || _b === void 0 ? void 0 : _b[0]) ? { line_1: (_c = shippingAddress === null || shippingAddress === void 0 ? void 0 : shippingAddress.addressLine) === null || _c === void 0 ? void 0 : _c[0] } : {}),
98 ...(((_d = shippingAddress === null || shippingAddress === void 0 ? void 0 : shippingAddress.addressLine) === null || _d === void 0 ? void 0 : _d[1]) ? { line_2: (_e = shippingAddress === null || shippingAddress === void 0 ? void 0 : shippingAddress.addressLine) === null || _e === void 0 ? void 0 : _e[1] } : {}),
99 ...((shippingAddress === null || shippingAddress === void 0 ? void 0 : shippingAddress.city) ? { city: shippingAddress === null || shippingAddress === void 0 ? void 0 : shippingAddress.city } : {}),
100 ...((shippingAddress === null || shippingAddress === void 0 ? void 0 : shippingAddress.country) ? { country: shippingAddress === null || shippingAddress === void 0 ? void 0 : shippingAddress.country } : {}),
101 ...((shippingAddress === null || shippingAddress === void 0 ? void 0 : shippingAddress.postalCode) ? { postal_code: shippingAddress === null || shippingAddress === void 0 ? void 0 : shippingAddress.postalCode } : {}),
102 ...((shippingAddress === null || shippingAddress === void 0 ? void 0 : shippingAddress.region) ? { state: shippingAddress === null || shippingAddress === void 0 ? void 0 : shippingAddress.region } : {}),
103 },
104 },
105 }));
106 updateWith({
107 status: 'success',
108 total: {
109 amount: (order === null || order === void 0 ? void 0 : order.amount_due) || 0,
110 label: wp.i18n.__('Total', 'surecart'),
111 },
112 });
113 }
114 catch (e) {
115 e.updateWith({ status: 'invalid_shipping_address' });
116 }
117 }
118 /** Only append price name if there's more than one product price in the session. */
119 getName(item) {
120 var _a, _b, _c, _d, _e;
121 const otherPrices = Object.keys(this.prices || {}).filter(key => {
122 const price = this.prices[key];
123 // @ts-ignore
124 return price.product === item.price.product.id;
125 });
126 let name = '';
127 if (otherPrices.length > 1) {
128 name = `${(_b = (_a = item === null || item === void 0 ? void 0 : item.price) === null || _a === void 0 ? void 0 : _a.product) === null || _b === void 0 ? void 0 : _b.name} \u2013 ${(_c = item === null || item === void 0 ? void 0 : item.price) === null || _c === void 0 ? void 0 : _c.name}`;
129 }
130 else {
131 name = (_e = (_d = item === null || item === void 0 ? void 0 : item.price) === null || _d === void 0 ? void 0 : _d.product) === null || _e === void 0 ? void 0 : _e.name;
132 }
133 return name;
134 }
135 getRequestObject(order) {
136 var _a;
137 const displayItems = (((_a = order === null || order === void 0 ? void 0 : order.line_items) === null || _a === void 0 ? void 0 : _a.data) || []).map(item => {
138 return {
139 label: this.getName(item),
140 amount: item.ad_hoc_amount !== null ? item.ad_hoc_amount : item.subtotal_amount,
141 };
142 });
143 return {
144 currency: mutations.state.currencyCode,
145 total: {
146 amount: (order === null || order === void 0 ? void 0 : order.amount_due) || 0,
147 label: wp.i18n.__('Total', 'surecart'),
148 },
149 displayItems,
150 };
151 }
152 componentDidLoad() {
153 this.handleOrderChange();
154 this.removeCheckoutListener = mutations.onChange('checkout', () => this.handleOrderChange());
155 if (!this.elements) {
156 return;
157 }
158 const paymentRequestElement = this.elements.create('paymentRequestButton', {
159 paymentRequest: this.paymentRequest,
160 style: {
161 paymentRequestButton: {
162 theme: this.theme,
163 },
164 },
165 });
166 // handle payment method.
167 this.paymentRequest.on('paymentmethod', e => this.handlePaymentMethod(e));
168 this.paymentRequest.on('shippingaddresschange', async (ev) => await this.handleShippingChange(ev));
169 // mount button.
170 this.paymentRequest
171 .canMakePayment()
172 .then(result => {
173 if (!result) {
174 if (location.protocol !== 'https:') {
175 if (this.debug) {
176 this.debugError = wp.i18n.__('You must serve this page over HTTPS to display express payment buttons.', 'surecart');
177 }
178 console.log('SSL needed to display payment buttons.');
179 }
180 else {
181 if (this.debug) {
182 this.debugError = wp.i18n.__('You do not have any wallets set up in your browser.', 'surecart');
183 }
184 console.log('No wallets available.');
185 }
186 return;
187 }
188 paymentRequestElement.mount(this.request);
189 this.loaded = true;
190 })
191 .catch(e => {
192 console.error(e);
193 });
194 }
195 /** Handle the payment method. */
196 async handlePaymentMethod(ev) {
197 var _a, _b, _c, _d, _e;
198 const { billing_details } = ev === null || ev === void 0 ? void 0 : ev.paymentMethod;
199 const { shippingAddress } = ev;
200 try {
201 this.scSetState.emit('FINALIZE');
202 // update session with shipping/billing
203 (await index$1.createOrUpdateCheckout({
204 id: (_a = mutations.state === null || mutations.state === void 0 ? void 0 : mutations.state.checkout) === null || _a === void 0 ? void 0 : _a.id,
205 data: {
206 email: billing_details === null || billing_details === void 0 ? void 0 : billing_details.email,
207 name: billing_details === null || billing_details === void 0 ? void 0 : billing_details.name,
208 shipping_address: {
209 ...((shippingAddress === null || shippingAddress === void 0 ? void 0 : shippingAddress.name) ? { name: shippingAddress === null || shippingAddress === void 0 ? void 0 : shippingAddress.name } : {}),
210 ...(((_b = shippingAddress === null || shippingAddress === void 0 ? void 0 : shippingAddress.addressLine) === null || _b === void 0 ? void 0 : _b[0]) ? { line_1: (_c = shippingAddress === null || shippingAddress === void 0 ? void 0 : shippingAddress.addressLine) === null || _c === void 0 ? void 0 : _c[0] } : {}),
211 ...(((_d = shippingAddress === null || shippingAddress === void 0 ? void 0 : shippingAddress.addressLine) === null || _d === void 0 ? void 0 : _d[1]) ? { line_2: (_e = shippingAddress === null || shippingAddress === void 0 ? void 0 : shippingAddress.addressLine) === null || _e === void 0 ? void 0 : _e[1] } : {}),
212 ...((shippingAddress === null || shippingAddress === void 0 ? void 0 : shippingAddress.city) ? { city: shippingAddress === null || shippingAddress === void 0 ? void 0 : shippingAddress.city } : {}),
213 ...((shippingAddress === null || shippingAddress === void 0 ? void 0 : shippingAddress.country) ? { country: shippingAddress === null || shippingAddress === void 0 ? void 0 : shippingAddress.country } : {}),
214 ...((shippingAddress === null || shippingAddress === void 0 ? void 0 : shippingAddress.postalCode) ? { postal_code: shippingAddress === null || shippingAddress === void 0 ? void 0 : shippingAddress.postalCode } : {}),
215 ...((shippingAddress === null || shippingAddress === void 0 ? void 0 : shippingAddress.region) ? { state: shippingAddress === null || shippingAddress === void 0 ? void 0 : shippingAddress.region } : {}),
216 },
217 },
218 }));
219 // finalize
220 const session = (await index$1.finalizeCheckout({
221 id: mutations.state === null || mutations.state === void 0 ? void 0 : mutations.state.checkout.id,
222 query: {
223 form_id: mutations.state.formId,
224 },
225 processor: { id: 'stripe', manual: false },
226 }));
227 // confirm payment
228 this.scSetState.emit('PAYING');
229 await this.confirmPayment(session, ev);
230 this.scSetState.emit('PAID');
231 // paid.
232 this.scPaid.emit();
233 // Report to the browser that the confirmation was successful, prompting
234 // it to close the browser payment method collection interface.
235 ev.complete('success');
236 }
237 catch (e) {
238 console.error(e);
239 this.scPayError.emit(e);
240 mutations$1.createErrorNotice(e);
241 ev.complete('fail');
242 }
243 finally {
244 this.confirming = false;
245 }
246 }
247 async confirmPayment(val, ev) {
248 var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t;
249 // must be finalized
250 if ((val === null || val === void 0 ? void 0 : val.status) !== 'finalized')
251 return;
252 // must have a secret
253 if (!((_c = (_b = (_a = val === null || val === void 0 ? void 0 : val.payment_intent) === null || _a === void 0 ? void 0 : _a.processor_data) === null || _b === void 0 ? void 0 : _b.stripe) === null || _c === void 0 ? void 0 : _c.client_secret))
254 return;
255 // need an external_type
256 if (!((_f = (_e = (_d = val === null || val === void 0 ? void 0 : val.payment_intent) === null || _d === void 0 ? void 0 : _d.processor_data) === null || _e === void 0 ? void 0 : _e.stripe) === null || _f === void 0 ? void 0 : _f.type))
257 return;
258 // must have an external intent id
259 if (!((_g = val === null || val === void 0 ? void 0 : val.payment_intent) === null || _g === void 0 ? void 0 : _g.external_intent_id))
260 return;
261 // prevent possible double-charges
262 if (this.confirming)
263 return;
264 this.confirming = true;
265 let response;
266 if (((_k = (_j = (_h = val === null || val === void 0 ? void 0 : val.payment_intent) === null || _h === void 0 ? void 0 : _h.processor_data) === null || _j === void 0 ? void 0 : _j.stripe) === null || _k === void 0 ? void 0 : _k.type) == 'setup') {
267 response = await this.confirmCardSetup((_m = (_l = val === null || val === void 0 ? void 0 : val.payment_intent) === null || _l === void 0 ? void 0 : _l.processor_data) === null || _m === void 0 ? void 0 : _m.stripe.client_secret, ev);
268 }
269 else {
270 response = await this.confirmCardPayment((_p = (_o = val === null || val === void 0 ? void 0 : val.payment_intent) === null || _o === void 0 ? void 0 : _o.processor_data) === null || _p === void 0 ? void 0 : _p.stripe.client_secret, ev);
271 }
272 if (response === null || response === void 0 ? void 0 : response.error) {
273 throw response.error;
274 }
275 // Check if the PaymentIntent requires any actions and if so let Stripe.js
276 // handle the flow. If using an API version older than "2019-02-11"
277 // instead check for: `paymentIntent.status === "requires_source_action"`.
278 if (((_q = response === null || response === void 0 ? void 0 : response.paymentIntent) === null || _q === void 0 ? void 0 : _q.status) === 'requires_action' || ((_r = response === null || response === void 0 ? void 0 : response.paymentIntent) === null || _r === void 0 ? void 0 : _r.status) === 'requires_source_action') {
279 // Let Stripe.js handle the rest of the payment flow.
280 const result = await this.stripe.confirmCardPayment((_t = (_s = val === null || val === void 0 ? void 0 : val.payment_intent) === null || _s === void 0 ? void 0 : _s.processor_data) === null || _t === void 0 ? void 0 : _t.stripe.client_secret);
281 // The payment failed -- ask your customer for a new payment method.
282 if (result.error) {
283 throw result.error;
284 }
285 return result;
286 }
287 return response;
288 }
289 /** Confirm card payment. */
290 confirmCardPayment(secret, ev) {
291 return this.stripe.confirmCardPayment(secret, { payment_method: ev.paymentMethod.id }, { handleActions: false });
292 }
293 /** Confirm card setup. */
294 confirmCardSetup(secret, ev) {
295 return this.stripe.confirmCardSetup(secret, { payment_method: ev.paymentMethod.id }, { handleActions: false });
296 }
297 disconnectedCallback() {
298 this.removeCheckoutListener();
299 }
300 render() {
301 return (index.h("div", { key: '9f29630a1a8b7625d672d5033485d748452e9b60', class: { 'request': true, 'request--loaded': this.loaded } }, this.debug && this.debugError && (index.h("div", { key: '3a3666278b55cdd431e03db7e6bfec90b27eeabc' }, index.h("slot", { key: '14736b120870b919215565e81d951b727f1c5771', name: "debug-fallback" }), index.h("sc-alert", { key: '8f6367c78bf6f729c5358eb7ac8c2a7a9dd2c96a', type: "info", open: true }, index.h("span", { key: 'a7eab183f1670523e5a1a9b3772786398aad4ca9', slot: "title" }, wp.i18n.__('Express Payment', 'surecart')), this.debugError))), index.h("div", { key: 'd24cf916a8d4d82ad96eeec37d2fb2ae1fabe70f', class: "sc-payment-request-button", part: "button", ref: el => (this.request = el) })));
302 }
303 get el() { return index.getElement(this); }
304 static get watchers() { return {
305 "loaded": ["handleLoaded"],
306 "error": ["handleErrorChange"]
307 }; }
308 };
309 consumer.openWormhole(ScStripePaymentRequest, ['prices'], false);
310 ScStripePaymentRequest.style = ScStripePaymentRequestStyle0;
311
312 exports.sc_stripe_payment_request = ScStripePaymentRequest;
313
314 //# sourceMappingURL=sc-stripe-payment-request.cjs.entry.js.map