You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
cosmopet.ae/wp-content/plugins copy 2/cdek/build/cdek-checkout-map-block-fro...

1 lines
2.9 KiB

(()=>{"use strict";var e={n:i=>{var o=i&&i.__esModule?()=>i.default:()=>i;return e.d(o,{a:o}),o},d:(i,o)=>{for(var t in o)e.o(o,t)&&!e.o(i,t)&&Object.defineProperty(i,t,{enumerable:!0,get:o[t]})},o:(e,i)=>Object.prototype.hasOwnProperty.call(e,i)};const i=window.wc.blocksCheckout,o=window.React,t=window.wp.element,a=window.wp.i18n,c=window.lodash,d=window.wc.wcSettings,n=window.CDEKWidget;var s=e.n(n);const l=JSON.parse('{"$schema":"https://schemas.wp.org/trunk/block.json","apiVersion":2,"name":"cdek/checkout-map-block","version":"1.0.0","title":"CDEK Delivery Map","category":"widgets","description":"Adds a map on checkout to allow user select office to pickup from.","supports":{"html":false,"align":false,"multiple":false,"reusable":false},"parent":["woocommerce/checkout-shipping-methods-block"],"attributes":{"lock":{"type":"object","default":{"remove":true,"move":true}},"text":{"type":"string","default":""}},"textdomain":"official_cdek"}');(0,i.registerCheckoutBlock)({metadata:l,component:({checkoutExtensionData:e,extensions:i,cart:n,validation:l})=>{const{apiKey:f,officeDeliveryModes:r}=(0,d.getSetting)("official_cdek_data"),[p,w]=(0,t.useState)(!1),[u,k]=(0,t.useState)(null),{setExtensionData:_}=e,{setValidationErrors:m,clearValidationError:g,getValidationError:h}=l,v=(0,c.debounce)(((e,i,o)=>{_(e,i,o)}),500),b=(0,t.useCallback)((0,c.debounce)(((e,i)=>{if(""===i||!n.cartNeedsShipping)return v("official_cdek","office_code",null),void g("official_cdek_office");const o=e.flatMap((e=>e.shipping_rates)).find((e=>e.selected));return!o||Object.prototype.hasOwnProperty.call(o,"method_id")||"official_cdek"!==o.method_id||-1===r.indexOf(parseInt(o.meta_data.find((e=>"_official_cdek_tariff_mode"===e.key)).value))?(v("official_cdek","office_code",null),void g("official_cdek_office")):(m({official_cdek_office:{message:(0,a.__)("Выберите пункт получения","official-cdek"),hidden:!0}}),void 0===window.widget?window.widget=new(s())({apiKey:f,debug:!0,defaultLocation:e[0].destination.city,officesRaw:JSON.parse(i),hideDeliveryOptions:{door:!0},onChoose(e,i,o){v("official_cdek","office_code",o.code),g("official_cdek_office")}}):(window.widget.clearSelection(),window.widget.updateOfficesRaw(JSON.parse(i)),window.widget.updateLocation(e[0].destination.city)),void w(!0))}),1e3),[]);return(0,t.useEffect)((()=>{w(!1),n.isLoading||n.isLoadingRates||!i.official_cdek?g("official_cdek_office"):b(n.shippingRates,i.official_cdek.points||[])}),[n.isLoading,n.isLoadingRates,n.shippingRates,i.official_cdek]),(0,t.useEffect)((()=>{k(h("official_cdek_office"))})),(0,o.createElement)("div",{className:"wp-block-shipping-cdek-map",style:{display:p?"block":"none"}},(0,o.createElement)("div",{id:"cdek-map",style:{height:"600px",border:!1===u?.hidden?"1px solid #cc1818":""}}),!1===u?.hidden&&(0,o.createElement)("div",{className:"wc-block-components-validation-error",role:"alert"},(0,o.createElement)("p",null,u.message)))}})})();