{ "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 DP World’s latest vessel makes maiden call at Jebel Ali – 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

DP World’s latest vessel makes maiden call at Jebel Ali

DP World’s latest vessel makes maiden call at Jebel Ali

[ad_1]

DP World has welcomed the latest addition to its Marine Services fleet, with the DP World Jebel Ali making its maiden call at its namesake, Jebel Ali port.

DP World Jebel Ali is a Sapphire 5300 type compact gearless container vessel with a host of maritime technologies designed to enhance cargo handling efficiency, reduce operational costs and contribute to a more sustainable maritime industry.

DP World Jebel Ali will be integrated into Unifeeder’s Asian Gulf ISC Service (AGI). The vessel’s compact design allows for greater manoeuvrability and access to smaller ports and is expected to save approximately 1,700 metric tonnes of bunker fuel annually, leading to a 15 to 20 % reduction in carbon emissions on its intended routes.

The post DP World’s latest vessel makes maiden call at Jebel Ali appeared first on Latest Maritime & Shipping News Online – The Maritime Standard.

[ad_2]

Source link

Leave a Comment

Your email address will not be published. Required fields are marked *

REQUEST A QUICK QUOTE