{ "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 Uncategorized – 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

Uncategorized

Bezpłatna kasa w całej logowanie vox kasynie online

Content Typy bonusów z brakiem depozytu w całej kasynach przez internet – logowanie vox W jakim celu kasyna sieciowy potwierdzają graczom bezpłatne pieniążki zbytnio rejestrację? W tym przypadku, wygrane otrzymane w zakresie upominku są zobligowane pozostawać obrócone określoną liczba razy. Stale aktualizujemy ten ranking najkorzystniejszych darmowa lada za rejestracje przy kasynie bonusy. Mamy tylko teraźniejsze […]

Bezpłatna kasa w całej logowanie vox kasynie online Read More »

Live Black-jack On the internet Better Live Broker Black-jack Gambling enterprises away from 2025

Blogs Free online slots Score gamewise, today. Adjustments Based on the Dealer’s Upcard What’s greatest, alive blackjack or on line blackjack? Acceptance Added bonus Anyone else allow you to are its Blackjack tables for free without even joining. You will find hand-chosen a few internet sites offering a wide variety of free gambling establishment games

Live Black-jack On the internet Better Live Broker Black-jack Gambling enterprises away from 2025 Read More »

Traktandum Echtgeld Spielautomaten & Beste Drücken Sie diese Seite Angeschlossen Slots Casinos 2025

Content Unser beliebtesten Online Spielsaal Spiele: Drücken Sie diese Seite Gewöhnen Onlinecasinos as part of Alpenrepublik PayPal? 🥇 Welches man sagt, sie seien unser besten Spielautomaten Casinos within Land der dichter und denker? Verbunden Casinos 2025 Auf diese weise finden Diese welches passende Spielbank Die autoren besitzen within den Echtgeld Casino Tests Öffnungszeiten durch vormittags

Traktandum Echtgeld Spielautomaten & Beste Drücken Sie diese Seite Angeschlossen Slots Casinos 2025 Read More »

Darmowa Kasa Bruce Bet bonus rejestracyjny za Rejestrację bez Depozytu 2025

Content W jakim celu przekazuje kasyno bezpłatne spiny?: Bruce Bet bonus rejestracyjny Niejednokrotnie wymierzone testowania odnośnie bonusu siedmiu euro z brakiem depozytu Porady oraz strategie po wyborze gier w całej gratisowych kasynach internetowego wyjąwszy depozytu Poszukiwanie krajowe kasyno sieciowy bonus często wiedzie do odwiedzenia najświeższych oraz najbardziej interesujących ofert. Bonusy bez depozytu znajdują się zwłaszcza

Darmowa Kasa Bruce Bet bonus rejestracyjny za Rejestrację bez Depozytu 2025 Read More »

Bezpłatne Bonusy zbyt Rejestrację Z brakiem Depozytu po Kasynach STS gra w kasynie Maj 2025

Content STS gra w kasynie – Jak czasochłonnie mam w skorzystanie bonusu pięćdziesiąt zł bez depozytu? W całej jаkіch grаch wydaje się do odwiedzenia wdrożenia bonus darmowa lada z brakiem depozytu? Jak zdołam wypłacić casino premia z brakiem depozytu? Oczekiwania dotyczące zakładów po darmowych kasynach z brakiem logowania O ile narasta deweloperem po twym klubie

Bezpłatne Bonusy zbyt Rejestrację Z brakiem Depozytu po Kasynach STS gra w kasynie Maj 2025 Read More »

Free online Black-jack Game play Blackjack On line at no cost

Articles Selecting the most appropriate Casino Understanding On the web Black-jack Laws and Etiquette Ideas on how to Gamble Real time Agent Black-jack Frequently asked questions We’ve very carefully rated and you can reviewed on line black-jack offerings the real deal money, making certain you have made an unprecedented betting feel and greatest-level payout possibilities.

Free online Black-jack Game play Blackjack On line at no cost Read More »

Beste Angeschlossen Spielautomaten Casinos & Echtgeld Slots blood suckers Casino Monat der sommersonnenwende 2025

Content Mehr Online Casino Bonusangebote – blood suckers Casino Mehr Ungezwungenheit within Angeschlossen Echtgeld Casinos über ausländischer Lizenz Lizenzen & Regulierung Mehrere Casinos präsentation ausgewählte No Anzahlung Bonusaktionen eingeschaltet – bei Freispielen so weit wie berichtigen Geldbeträgen. Die Highlight & Erscheinungsform des Maklercourtage hängen oft vom jeweiligen Spielbank & dessen Softwarepartner nicht früher als.

Beste Angeschlossen Spielautomaten Casinos & Echtgeld Slots blood suckers Casino Monat der sommersonnenwende 2025 Read More »

Sizzling Hot Deluxe Online Graj za Casiqo bonus urodzinowy darmo dzięki Formalnej Stronie internetowej

Content Sizzling Hot: Najważniejsze wytyczne gry: Casiqo bonus urodzinowy Odmienne automaty do komputerów Zmienność oraz częstość wygranych Aby radować się maks. wygraną, musisz zamieścić 5 szczęśliwych liczb ze znaczeniem siedmiu dzięki kreski wypłat, an owo da Wam 1000-krotność stawki. 4 symbole zapewnią tobie jedynie dwieście-krotność nowego warsztatu samochodowego, zatem wszystko w nim jest około 5

Sizzling Hot Deluxe Online Graj za Casiqo bonus urodzinowy darmo dzięki Formalnej Stronie internetowej Read More »

Finest On the web Black-jack A real income Internet sites & Software playing 2025

Blogs – To experience Regulations Unmarried Hands Blackjack Guide: How to proceed Second? Broker Upcard What’s on-line casino Black-jack? Top ten Black-jack Online casinos to have New jersey Participants: Online game, Limits, and you can Bonuses You can even wager on sporting events from the separate sportsbook, as the racebook are mountain-ideal for horse rushing

Finest On the web Black-jack A real income Internet sites & Software playing 2025 Read More »

REQUEST A QUICK QUOTE