PluginProbe ʕ •ᴥ•ʔ
SureCart – Ecommerce Made Easy For Selling Physical Products, Digital Downloads, Subscriptions, Donations, & Payments / 4.5.0
SureCart – Ecommerce Made Easy For Selling Physical Products, Digital Downloads, Subscriptions, Donations, & Payments v4.5.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 / packages / blocks-next / build / scripts / lightbox / index.js
surecart / packages / blocks-next / build / scripts / lightbox Last commit date
index.asset.php 3 months ago index.js 3 months ago
index.js
1 lines
1 import*as t from"@wordpress/interactivity";var e,n,r={d:function(t,e){for(var n in e)r.o(e,n)&&!r.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:e[n]})},o:function(t,e){return Object.prototype.hasOwnProperty.call(t,e)}},a=(e={getContext:function(){return t.getContext},getElement:function(){return t.getElement},store:function(){return t.store},withSyncEvent:function(){return t.withSyncEvent}},n={},r.d(n,e),n);let o=!1,i=0,g=[];const{state:l,actions:c,callbacks:s}=(0,a.store)("surecart/lightbox",{state:{images:[],currentImageIndex:-1,get currentImageId(){return l.currentImageIndex>-1&&l.images.length>0?l.images[l.currentImageIndex]:null},get currentImage(){return l.metadata[l.currentImageId]},get hasNavigation(){return l.images.length>1},get hasNextImage(){return l.currentImageIndex+1<l.images.length},get hasPreviousImage(){return l.currentImageIndex-1>=0},get overlayOpened(){return null!==l.currentImageId},get roleAttribute(){return l.overlayOpened?"dialog":null},get ariaModal(){return l.overlayOpened?"true":null},get enlargedSrc(){return l.currentImage.uploadedSrc||"data:image/gif;base64,R0lGODlhAQABAAD/ACwAAAAAAQABAAACADs="},get imgStyles(){return l.overlayOpened&&"object-fit:cover;"},get isContentHidden(){const t=(0,a.getContext)();return l.overlayEnabled&&l.currentImageId===t.imageId},get isContentVisible(){const t=(0,a.getContext)();return!l.overlayEnabled&&l.currentImageId===t.imageId},get imageButtonRight(){const{imageId:t}=(0,a.getContext)();return l.metadata[t].imageButtonRight},get imageButtonTop(){const{imageId:t}=(0,a.getContext)();return l.metadata[t].imageButtonTop}},actions:{showLightbox(){const{imageId:t,images:e}=(0,a.getContext)();l.metadata[t]?.imageRef?.complete&&(l.scrollTopReset=document.documentElement.scrollTop,l.scrollLeftReset=document.documentElement.scrollLeft,l.images=(e||[t]).filter((e=>{const n=e?.id||e,r=l?.metadata[n],a=r?.imageRef;if(!a)return!1;const o=a&&function(t){for(;t;){if("none"===window.getComputedStyle(t).display)return!1;t=t.parentElement}return!0}(a);return r?.galleryId===l.metadata[t]?.galleryId&&o})).map((t=>t?.id?t.id:t)),s.setCurrentImageIndex(t),l.overlayEnabled=!0,s.setOverlayStyles(),g=[],document.querySelectorAll("body > :not(.sc-lightbox-overlay):not(.wp-block-surecart-product-quick-view)").forEach((t=>{t.hasAttribute("inert")||t.querySelector(".sc-lightbox-overlay")||t.querySelector(".wp-block-surecart-product-quick-view")||(t.setAttribute("inert",""),g.push(t))})))},hideLightbox(){l.overlayEnabled&&(l.showClosingAnimation=!0,l.overlayEnabled=!1,setTimeout((function(){l.currentImage.buttonRef.focus({preventScroll:!0}),l.currentImageIndex=-1,l.images=[]}),450),g.forEach((t=>{t.removeAttribute("inert")})),g=[])},showPreviousImage(t){l.hasNavigation&&(t.stopPropagation(),l.hasPreviousImage&&(l.currentImageIndex=l.currentImageIndex-1,s.setOverlayStyles()))},showNextImage(t){l.hasNavigation&&(t.stopPropagation(),l.hasNextImage&&(l.currentImageIndex=l.currentImageIndex+1,s.setOverlayStyles()))},handleKeydown(t){l.overlayEnabled&&("Escape"===t.key&&c.hideLightbox(),"ArrowLeft"===t.key?c.showPreviousImage(t):"ArrowRight"===t.key&&c.showNextImage(t))},handleTouchMove:(0,a.withSyncEvent)((function(t){l.overlayEnabled&&t.preventDefault()})),handleTouchStart(){o=!0},handleTouchEnd(){i=Date.now(),o=!1},handleScroll(){l.overlayOpened&&!o&&Date.now()-i>450&&window.scrollTo(l.scrollLeftReset,l.scrollTopReset)}},callbacks:{setCurrentImageIndex(t){const e=l.images.findIndex((e=>e.toString()===t.toString()));l.currentImageIndex=e},setOverlayStyles(){if(!l.overlayEnabled)return;let{naturalWidth:t,naturalHeight:e,offsetWidth:n,offsetHeight:r}=l.currentImage.imageRef,{x:o,y:i}=l.currentImage.imageRef.getBoundingClientRect();const g=t/e;let c=n/r;if("contain"===l.currentImage.scaleAttr)if(g>c){const t=n/g;i+=(r-t)/2,r=t}else{const t=r*g;o+=(n-t)/2,n=t}c=n/r;let s=parseFloat(l.currentImage.targetWidth&&"none"!==l.currentImage.targetWidth?l.currentImage.targetWidth:t),u=parseFloat(l.currentImage.targetHeight&&"none"!==l.currentImage.targetHeight?l.currentImage.targetHeight:e),d=s/u,m=s,h=u,I=s,f=u;if(g.toFixed(2)!==d.toFixed(2)){if(g>d){const t=s/g;u-t>s?(u=t,s=t*g):u=s/g}else{const t=u*g;s-t>u?(s=t,u=t/g):s=u*g}I=s,f=u,d=s/u,c>d?(m=s,h=m/c):(h=u,m=h*c)}(n>I||r>f)&&(I=n,f=r);let p=0;window.innerWidth>480?p=l.hasNavigation?140:80:window.innerWidth>1920&&(p=160);const x=Math.min(window.innerWidth-p,I),y=Math.min(window.innerHeight-80,f);c>x/y?(I=x,f=I/c):(f=y,I=f*c);const v=n/I,b=s*(I/m),w=u*(f/h),E=l.currentImage.imageRef.closest(".swiper");if(E){const{state:t}=(0,a.store)("surecart/image-slider");if(t&&t.active&&t.swiper){const{x:t,y:e}=E.getBoundingClientRect();o=t,i=e}}l.overlayStyles=`\n\t\t\t\t:root {\n\t\t\t\t\t--sc-lightbox--initial-top-position: ${i}px;\n\t\t\t\t\t--sc-lightbox--initial-left-position: ${o}px;\n\t\t\t\t\t--sc-lightbox--container-width: ${I+1}px;\n\t\t\t\t\t--sc-lightbox--container-height: ${f+1}px;\n\t\t\t\t\t--sc-lightbox--image-width: ${b}px;\n\t\t\t\t\t--sc-lightbox--image-height: ${w}px;\n\t\t\t\t\t--sc-lightbox--scale: ${v};\n\t\t\t\t\t--sc-lightbox--scrollbar-width: ${window.innerWidth-document.documentElement.clientWidth}px;\n\t\t\t\t}\n\t\t\t\t`},setScreenReaderText(){const{ref:t}=(0,a.getElement)();l.overlayEnabled?t.textContent=l.currentImage.screenReaderText:t.textContent=""},setImageRef(){const{imageId:t}=(0,a.getContext)(),{ref:e}=(0,a.getElement)();l.metadata[t].imageRef=e,l.metadata[t].currentSrc=e.currentSrc,s.setButtonStyles()},setButtonStyles(){const{imageId:t}=(0,a.getContext)(),{ref:e}=(0,a.getElement)(),{naturalWidth:n,naturalHeight:r,offsetWidth:o,offsetHeight:i}=e;if(0===n||0===r)return;const g=e.parentElement,c=e.parentElement.clientWidth;let s=e.parentElement.clientHeight;const u=g.querySelector("figcaption");if(u){const t=window.getComputedStyle(u);["absolute","fixed"].includes(t.position)||(s=s-u.offsetHeight-parseFloat(t.marginTop)-parseFloat(t.marginBottom))}const d=s-i,m=c-o;let h=d+16,I=m+16;if("contain"===l.metadata[t].scaleAttr){const t=n/r;t>=o/i?(h=(i-o/t)/2+d+16,I=m+16):(h=d+16,I=(o-i*t)/2+m+16)}l.metadata[t].imageButtonTop=h,l.metadata[t].imageButtonRight=I},setOverlayFocus(){if(l.overlayEnabled){const{ref:t}=(0,a.getElement)();t.focus()}},initTriggerButton(){const{imageId:t}=(0,a.getContext)(),{ref:e}=(0,a.getElement)();l.metadata[t].buttonRef=e}}});