{ "name": "woocommerce/product-button", "version": "1.0.0", "title": "Add to Cart Button", "description": "Display a call to action button which either adds the product to the cart, or links to the product page.", "category": "woocommerce-product-elements", "keywords": [ "WooCommerce" ], "usesContext": [ "query", "queryId", "postId" ], "textdomain": "woocommerce", "attributes": { "productId": { "type": "number", "default": 0 }, "textAlign": { "type": "string", "default": "" }, "width": { "type": "number" }, "isDescendentOfSingleProductBlock": { "type": "boolean", "default": false }, "isDescendentOfQueryLoop": { "type": "boolean", "default": false } }, "supports": { "align": [ "wide", "full" ], "color": { "background": false, "link": true }, "interactivity": true, "html": false, "typography": { "fontSize": true, "lineHeight": true } }, "ancestor": [ "woocommerce/all-products", "woocommerce/single-product", "core/post-template", "woocommerce/product-template" ], "styles": [ { "name": "fill", "label": "Fill", "isDefault": true }, { "name": "outline", "label": "Outline" } ], "viewScript": [ "wc-product-button-interactivity-frontend" ], "apiVersion": 3, "$schema": "https://schemas.wp.org/trunk/block.json" }'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); const index = require('./index-f1e4d53b.js'); const fetch = require('./fetch-2dba325c.js'); const addQueryArgs = require('./add-query-args-17c551b6.js'); const scSubscriptionPaymentCss = ":host{display:block;position:relative}.subscription-payment{display:grid;gap:0.5em}"; const ScSubscriptionPayment = class { constructor(hostRef) { index.registerInstance(this, hostRef); this.subscriptionId = undefined; this.backUrl = undefined; this.successUrl = undefined; this.subscription = undefined; this.paymentMethods = []; this.customerIds = []; this.manualPaymentMethods = undefined; this.loading = undefined; this.busy = undefined; this.error = undefined; } componentWillLoad() { this.fetchItems(); } async fetchItems() { try { this.loading = true; await Promise.all([this.fetchSubscription(), this.fetchPaymentMethods()]); } catch (e) { console.error(e); this.error = (e === null || e === void 0 ? void 0 : e.message) || wp.i18n.__('Something went wrong', 'surecart'); } finally { this.loading = false; } } async fetchSubscription() { if (!this.subscriptionId) return; this.subscription = (await fetch.apiFetch({ path: addQueryArgs.addQueryArgs(`/surecart/v1/subscriptions/${this.subscriptionId}`, { expand: ['price', 'price.product', 'current_period', 'product'], }), })); } async fetchPaymentMethods() { var _a, _b; this.paymentMethods = (await fetch.apiFetch({ path: addQueryArgs.addQueryArgs(`/surecart/v1/payment_methods`, { expand: ['card', 'customer', 'billing_agreement', 'paypal_account', 'payment_instrument', 'bank_account'], customer_ids: this.customerIds, reusable: true, ...(((_a = this.subscription) === null || _a === void 0 ? void 0 : _a.live_mode) !== null ? { live_mode: this.subscription.live_mode } : {}), }), })); this.manualPaymentMethods = (await fetch.apiFetch({ path: addQueryArgs.addQueryArgs(`surecart/v1/manual_payment_methods`, { customer_ids: this.customerIds, reusable: true, live_mode: (_b = this.subscription) === null || _b === void 0 ? void 0 : _b.live_mode, }), })); } async handleSubmit(e) { var _a; const { payment_method } = await e.target.getFormJson(); const isManualPaymentMethod = (this.manualPaymentMethods || []).some(method => method.id === payment_method); try { this.error = ''; this.busy = true; await fetch.apiFetch({ path: `/surecart/v1/subscriptions/${(_a = this.subscription) === null || _a === void 0 ? void 0 : _a.id}`, method: 'PATCH', data: { ...(!isManualPaymentMethod ? { payment_method, manual_payment: false } : { manual_payment_method: payment_method, manual_payment: true }), }, }); if (this.successUrl) { window.location.assign(this.successUrl); } else { this.busy = false; } } catch (e) { this.error = (e === null || e === void 0 ? void 0 : e.message) || wp.i18n.__('Something went wrong', 'surecart'); this.busy = false; } } renderLoading() { return (index.h(index.Fragment, null, index.h("sc-choice", { name: "loading", disabled: true }, index.h("sc-skeleton", { style: { width: '60px', display: 'inline-block' } }), index.h("sc-skeleton", { style: { width: '80px', display: 'inline-block' }, slot: "price" }), index.h("sc-skeleton", { style: { width: '120px', display: 'inline-block' }, slot: "description" })), index.h("sc-button", { type: "primary", full: true, submit: true, loading: true, busy: true }), !!this.backUrl && index.h("sc-button", { href: this.backUrl, full: true, loading: true, busy: true }))); } renderContent() { var _a, _b, _c, _d, _e, _f, _g, _h; if (this.loading) { return this.renderLoading(); } const modeMethods = this.paymentMethods.filter(method => { var _a; return (method === null || method === void 0 ? void 0 : method.live_mode) === ((_a = this.subscription) === null || _a === void 0 ? void 0 : _a.live_mode); }); const hasNoPaymentMethods = (!((_a = this.paymentMethods) === null || _a === void 0 ? void 0 : _a.length) && !((_b = this.manualPaymentMethods) === null || _b === void 0 ? void 0 : _b.length)) || (((_c = this.paymentMethods) === null || _c === void 0 ? void 0 : _c.length) && !(modeMethods === null || modeMethods === void 0 ? void 0 : modeMethods.length)); const currentPaymentMethodId = ((_d = this.subscription) === null || _d === void 0 ? void 0 : _d.manual_payment) ? (_e = this.subscription) === null || _e === void 0 ? void 0 : _e.manual_payment_method : ((_g = (_f = this.subscription) === null || _f === void 0 ? void 0 : _f.payment_method) === null || _g === void 0 ? void 0 : _g.id) || ((_h = this.subscription) === null || _h === void 0 ? void 0 : _h.payment_method); if (hasNoPaymentMethods) { return (index.h(index.Fragment, null, index.h("sc-empty", { icon: "credit-card" }, wp.i18n.__('You have no saved payment methods.', 'surecart')), !!this.backUrl && (index.h("sc-button", { href: this.backUrl, full: true }, wp.i18n.__('Go Back', 'surecart'))))); } return (index.h(index.Fragment, null, index.h("sc-choices", null, index.h("div", null, (this.paymentMethods || []).map(method => { var _a; if ((method === null || method === void 0 ? void 0 : method.live_mode) !== ((_a = this === null || this === void 0 ? void 0 : this.subscription) === null || _a === void 0 ? void 0 : _a.live_mode)) return null; return (index.h("sc-choice", { checked: currentPaymentMethodId === (method === null || method === void 0 ? void 0 : method.id), name: "payment_method", value: method === null || method === void 0 ? void 0 : method.id }, index.h("sc-payment-method", { paymentMethod: method, full: true }))); }), (this.manualPaymentMethods || []).map(method => { return (index.h("sc-choice", { checked: currentPaymentMethodId === (method === null || method === void 0 ? void 0 : method.id), name: "payment_method", value: method === null || method === void 0 ? void 0 : method.id }, index.h("sc-manual-payment-method", { paymentMethod: method, showDescription: true }))); }))), index.h("sc-button", { type: "primary", full: true, submit: true, loading: this.loading || this.busy, disabled: this.loading || this.busy }, wp.i18n.__('Update', 'surecart')), !!this.backUrl && (index.h("sc-button", { href: this.backUrl, full: true, loading: this.loading || this.busy, disabled: this.loading || this.busy }, wp.i18n.__('Go Back', 'surecart'))))); } render() { return (index.h("sc-dashboard-module", { heading: wp.i18n.__('Select a payment method', 'surecart'), class: "subscription-payment", error: this.error }, index.h("sc-form", { onScFormSubmit: e => this.handleSubmit(e) }, index.h("sc-card", null, this.renderContent())), this.busy && index.h("sc-block-ui", null))); } }; ScSubscriptionPayment.style = scSubscriptionPaymentCss; exports.sc_subscription_payment = ScSubscriptionPayment; //# sourceMappingURL=sc-subscription-payment.cjs.entry.js.map 20bet pl – Decisive Shipping Services LLC – Dubai

Decisive Shipping Services LLC – Dubai

Call us : +971 50 3363075

Email us : info@decisive-shipping.com

Opening time : 9am to 6pm (Sun-Thu)

Welcome to Decisive Shipping Services LLC

20bet pl

Oficjalne Rabaty I Kody Bonusowe

Sposób użycia kodu bonusowego jest w tymże wypadku niezwykle łatwy i ciekawy. Podczas Gdy fan odbiera swój szyfr bonusowy, musi na prostu wypełnić określone etapy, które przybliżą fita do odwiedzenia odebrania bonusu. 20Bet oferuje również bonus od czasu pozostałego depozytu na kwotę maksymalną 500PLN, jednak tutaj użytkownicy otrzymują wyłącznie 50% wpłaconej sumy. Miłą premią jest […]

Oficjalne Rabaty I Kody Bonusowe Read More »

Oficjalny Odnośnik Do Logowania 20bet W Polsce

W stronie są oferowane mnogie alternatywy płatności, dzięki z jakiego powodu każdy fan może skorzystać wraz z takiej możliwości finansowania konta bankowego, jaka wydaje się na rzecz faceta w konkretnym chwili najwygodniejsza. Postanowienie O Skorzystaniu z pełnej propozycji hazardowej tego operatora jest możliwe przed chwilą na rejestrowania się konta bankowego. Na szczęście, zarówno zakładanie świeżego

Oficjalny Odnośnik Do Logowania 20bet W Polsce Read More »

Online Sports Betting In South Africa Big Welcome Nadprogram 10bet

Obstawiający mogą przewidzieć nie tylko rezultaty, ale również dokładne dane statystyczne drużyn, jakie możliwości zezwala na większe dopasowanie zakładów bukmacherskich pod własnej osoby. Sloty internetowego to aczkolwiek jedynie część propozycji przygotowanej za pośrednictwem twórców. Na stronie wyszukuje się także możliwość obstawiania wydarzeń muzycznych i funkcjonowania na ruletkach na żywo, prowadzonych przez autentycznych krupierów. Jeśli rozchodzi

Online Sports Betting In South Africa Big Welcome Nadprogram 10bet Read More »

20bet Nasze Państwo 2025 Zaloguj Się Teraz I Zgarnij 400zł Bonusu

W 20Bet często pojawiają się zakłady na niszowe turnieje, poniekąd te z Naszego Kraju, co daje użytkownikom mnóstwo możliwości na skomponowanie własnego unikalnego kuponu. Jednakowo jak w przypadku wersji IOS twórcy przesadnie odrzucić komplikują tegoż mechanizmu. Poniżej prezentujemy instrukcję, która krok według kroku wykona Cię za pośrednictwem cały przebieg aplikacji. Faktycznie, 20Bet przywita cię hojnym

20bet Nasze Państwo 2025 Zaloguj Się Teraz I Zgarnij 400zł Bonusu Read More »

20bet Poland Zaloguj Się Do Odwiedzenia Serwisu Bukmacherskiego 20bet

Zespół obsługi kontrahenta w 20Bet mówi po angielsku oraz w dużej liczby pozostałych językach, więc nie zaakceptować wahaj się spośród nimi skontaktować. Trzeba opisać swój problem, aby został pan rozwiązany faktycznie szybko, w jaki to sposób jest to możliwe. Kasyno 20Bet podaje dużą selekcję, wraz z przeszło 2.000 grami slotowymi, które odpowiadają wszystkim profilom graczy.

20bet Poland Zaloguj Się Do Odwiedzenia Serwisu Bukmacherskiego 20bet Read More »

20bet Polska ᐉ Kasyno Internetowego I Zakłady Sportowe 2025

Bukmacher bardzo dobrze zdaje osobiście sprawę spośród tegoż, w jaki sposób ważne wydaje się zagwarantowanie fanom możliwości uzyskania błyskawicznej wypłaty swoich wygranych. Wszelcy gracze mogą skorzystać spośród identycznej możliwości wypłaty, która została wybrana do odwiedzenia wpłaty depozytu. 20Bet bukmacher umożliwia obstawianie zakładów muzycznych przedmeczowych, to znaczy tychże najciekawszych, które obstawia się poprzednio rozpoczęciem meczu lub

20bet Polska ᐉ Kasyno Internetowego I Zakłady Sportowe 2025 Read More »

20bet Premia Bez Depozytu Najistotniejsze Bonusy Kasyna

Jakie Możliwości więcej, zgodność z regulacjami międzynarodowymi gwarantuje, że kasyno przestrzega zasad odpowiedzialnej zabawy oraz zapewnia szczere wytyczne gwoli wszelkich graczy. Zastosowanie umożliwia pełny dostęp do każdego funkcji kasyna, w tym komputerów, ofert i możliwości wpłat i wypłat, zapewniając wygodę postępowania w przypadkowym miejscu. Na mojej stronie znajdziesz dane o kasynach i grach, zarówno w

20bet Premia Bez Depozytu Najistotniejsze Bonusy Kasyna Read More »

REQUEST A QUICK QUOTE