@gem-sdk/components 4.0.0-staging.1206 → 4.0.0-staging.1207
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/product/components/product-images-v2/components/gallery-carousel/GalleryCarousel.js +1 -1
- package/dist/cjs/product/components/product-images-v2/hooks/useGalleryCarousel.js +1 -1
- package/dist/esm/product/components/product-images-v2/components/gallery-carousel/GalleryCarousel.js +1 -1
- package/dist/esm/product/components/product-images-v2/hooks/useGalleryCarousel.js +1 -1
- package/package.json +1 -1
package/dist/cjs/product/components/product-images-v2/components/gallery-carousel/GalleryCarousel.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var jsxRuntime=require("react/jsx-runtime"),core=require("@gem-sdk/core"),common=require("../../common/common.js"),productGallery=require("../../common/productGallery.js"),getProductImagesClassName=require("../../composables/getProductImagesClassName.js"),getProductImagesStyles=require("../../composables/getProductImagesStyles.js"),getProductImagesAttr=require("../../composables/getProductImagesAttr.js"),productFeaturedImage=require("../../common/productFeaturedImage.js"),MediaIcon=require("../child/MediaIcon.js"),ButtonOpenLightBox=require("../lightbox/ButtonOpenLightBox.js"),NextImage=require("../../../../../image/components/NextImage.js"),Carousel=require("../../../../../carousel/components/root/Carousel.js"),CarouselItem=require("../../../../../carousel/components/item/CarouselItem.js"),useGalleryCarousel=require("../../hooks/useGalleryCarousel.js"),system=require("@gem-sdk/system");const ProductGalleryCarousel=e=>{let{builderPropUID:t,productImages:s,activeIndexFormFeatureImage:r,onClickFeatureArrow:a,builderPropsClass:o,arrow:u,priorityFeatureImage:l
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var jsxRuntime=require("react/jsx-runtime"),core=require("@gem-sdk/core"),common=require("../../common/common.js"),productGallery=require("../../common/productGallery.js"),getProductImagesClassName=require("../../composables/getProductImagesClassName.js"),getProductImagesStyles=require("../../composables/getProductImagesStyles.js"),getProductImagesAttr=require("../../composables/getProductImagesAttr.js"),productFeaturedImage=require("../../common/productFeaturedImage.js"),MediaIcon=require("../child/MediaIcon.js"),ButtonOpenLightBox=require("../lightbox/ButtonOpenLightBox.js"),NextImage=require("../../../../../image/components/NextImage.js"),Carousel=require("../../../../../carousel/components/root/Carousel.js"),CarouselItem=require("../../../../../carousel/components/item/CarouselItem.js"),useGalleryCarousel=require("../../hooks/useGalleryCarousel.js"),system=require("@gem-sdk/system");const ProductGalleryCarousel=e=>{let{builderPropUID:t,productImages:s,activeIndexFormFeatureImage:r,onClickFeatureArrow:a,builderPropsClass:o,arrow:u,priorityFeatureImage:i,...l}=e,m=core.useCurrentDevice(),{galleryItemClasses:c}=getProductImagesClassName.getProductImagesClassName(l),{galleryCarouselSettingAttrs:d}=getProductImagesAttr.getProductImagesAttr(l),{galleryCarouselStyle:n,galleryCarouselItemStyle:g}=getProductImagesStyles.getProductImagesStyles(l),{moveToIdx:p,isDisplay:y,shapeByLayout:I,isEnableBorderActive:j,isShowButtonLightbox:x,filteredProductImages:C,handleClickCarouselItem:h,safeMoveToIdx:q,setSliderReady:P}=useGalleryCarousel.useGalleryCarousel(e);return jsxRuntime.jsx(jsxRuntime.Fragment,{children:y&&jsxRuntime.jsx(Carousel.default,{parentClass:o,rootClass:o,setting:d,styles:n,slidesClass:productGallery.getEditorMinHeightClass(m,l.position,l.navigationPosition),builderProps:{uid:`${t}-carousel`},moveToIdx:q,isHiddenArrowWhenDisabled:!0,disableMarginAuto:!0,onLoaded:e=>{e&&P(!0)},children:C?.map((e,s)=>{let r=s===p,a=productFeaturedImage.isFeatureMedia(e.contentType)?e.previewImage:e.src;return jsxRuntime.jsxs(CarouselItem.default,{contentType:"productImage",className:c(`gp-gallery-image-item gem-slider-item-${t} ${r&&j?"gem-slider-item-active":""}`),onClickItem:()=>h(e?.id),style:g,"data-id":e?.id,"data-border":r&&l?.borderActive?"active":"deactive",children:[jsxRuntime.jsx(NextImage.default,{draggable:"false",src:a,width:e?.width,height:e?.height,alt:e?.alt,setting:{aspectRatio:common.getAspectRatio(I),layout:l?.layout,qualityPercent:l?.qualityPercent,qualityType:l?.qualityType},style:{width:"100%",height:"100%",cursor:"pointer"},className:"product-list-image"}),jsxRuntime.jsx(MediaIcon.default,{contentType:e?.contentType||""}),system.If(x,jsxRuntime.jsx(ButtonOpenLightBox.default,{}))]},e?.id)})})})};exports.default=ProductGalleryCarousel;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var core=require("@gem-sdk/core"),React=require("react"),useFilterImagesByVariant=require("./useFilterImagesByVariant.js"),helpers=require("../../../../image/common/helpers.js"),productGallery=require("../common/productGallery.js");const useGalleryCarousel=e=>{let{builderPropUID:
|
|
1
|
+
"use strict";var core=require("@gem-sdk/core"),React=require("react"),useFilterImagesByVariant=require("./useFilterImagesByVariant.js"),helpers=require("../../../../image/common/helpers.js"),productGallery=require("../common/productGallery.js");const useGalleryCarousel=e=>{let{builderPropUID:t,productImages:r,onHandleClick:a,activeIndexFormFeatureImage:s,onClickFeatureArrow:o,builderPropsClass:i,arrow:l,priorityFeatureImage:c,...u}=e,n=core.useCurrentDevice(),p=core.useFeaturedImageGlobal(),[d,y]=React.useState(o||""),h=core.useEditorMode(),[m,F]=React.useState(0),R=React.useRef(),[B,f]=React.useState(m),[g,I]=React.useState(!1),{filteredProductImages:S}=useFilterImagesByVariant.useFilterImagesByVariant({productImages:r,displayByVariant:u?.displayByVariant,variantSelect:u?.variantSelect});React.useEffect(()=>{y(o||"")},[o]),React.useEffect(()=>{R.current&&clearTimeout(R.current),d&&(R.current=setTimeout(()=>{F(s||0),y("")}))},[s]),React.useEffect(()=>{if(c){let e=S?.findIndex(e=>e.id===c.id)||0;F(e),y("")}},[c,S]),React.useEffect(()=>{let e=S?.findIndex(e=>e.id===p?.id);F(e||0),y("")},[p,S]);let q=React.useMemo(()=>productGallery.getShapeByLayout({shape:u.shape,shapeForBottom:u.shapeForBottom,shapeFor1Col:u.shapeFor1Col,shapeFor2Col:u.shapeFor2Col,shapeForFtOnly:u.shapeForFtOnly,shapeForInsideBottom:u.shapeForInsideBottom,shapeForInside:u.shapeForInside},u.position),[u.shape,u.shapeForBottom,u.shapeFor1Col,u.shapeFor2Col,u.shapeForFtOnly,u.position,u.shapeForInsideBottom,u.shapeForInside]),v=React.useCallback(()=>{helpers.handleSetSrcForProductImageList({builderPropUID:t,shapeByLayout:q,qualityType:u.qualityType,qualityPercent:u.qualityPercent})},[q,u.qualityPercent,u.qualityType,t]);React.useEffect(()=>{if("edit"===h)return;let e=document?.querySelector(`.gem-slider-item-${t} .product-list-image`);if(!e)return;v();let r=new ResizeObserver(()=>{v()});return r?.observe(e,{}),()=>{r?.disconnect()}},[v,t,h]);let C=core.getResponsiveValueByScreen(u.clickOpenLightBox,n),G=React.useMemo(()=>{let e=productGallery.checkDisplayGalleryByWidth({shapeByLayout:q});return core.getResponsiveValueByScreen(e,n)},[q,n]),V=React.useMemo(()=>u?.borderActive?.border!=="none",[u?.borderActive?.border]),b=core.getResponsiveValueByScreen(u?.clickOpenLightBox,n),E=e=>{a&&a(e||"",C)};return React.useEffect(()=>{let e;return S&&S.length>0&&g&&(e=setTimeout(()=>{f(m)},80)),()=>{e&&clearTimeout(e)}},[m,S,g]),{moveToIdx:m,isDisplay:G,shapeByLayout:q,isEnableBorderActive:V,isShowButtonLightbox:b,filteredProductImages:S,handleClickCarouselItem:E,setSliderReady:I,safeMoveToIdx:B}};exports.useGalleryCarousel=useGalleryCarousel;
|
package/dist/esm/product/components/product-images-v2/components/gallery-carousel/GalleryCarousel.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as e,Fragment as o,jsxs as t}from"react/jsx-runtime";import{useCurrentDevice as r}from"@gem-sdk/core";import{getAspectRatio as s}from"../../common/common.js";import{getEditorMinHeightClass as
|
|
1
|
+
import{jsx as e,Fragment as o,jsxs as t}from"react/jsx-runtime";import{useCurrentDevice as r}from"@gem-sdk/core";import{getAspectRatio as s}from"../../common/common.js";import{getEditorMinHeightClass as i}from"../../common/productGallery.js";import{getProductImagesClassName as m}from"../../composables/getProductImagesClassName.js";import{getProductImagesStyles as a}from"../../composables/getProductImagesStyles.js";import{getProductImagesAttr as l}from"../../composables/getProductImagesAttr.js";import{isFeatureMedia as c}from"../../common/productFeaturedImage.js";import d from"../child/MediaIcon.js";import n from"../lightbox/ButtonOpenLightBox.js";import p from"../../../../../image/components/NextImage.js";import u from"../../../../../carousel/components/root/Carousel.js";import g from"../../../../../carousel/components/item/CarouselItem.js";import{useGalleryCarousel as y}from"../../hooks/useGalleryCarousel.js";import{If as f}from"@gem-sdk/system";let ProductGalleryCarousel=h=>{let{builderPropUID:j,productImages:I,activeIndexFormFeatureImage:b,onClickFeatureArrow:C,builderPropsClass:P,arrow:v,priorityFeatureImage:T,...x}=h,w=r(),{galleryItemClasses:k}=m(x),{galleryCarouselSettingAttrs:q}=l(x),{galleryCarouselStyle:A,galleryCarouselItemStyle:G}=a(x),{moveToIdx:N,isDisplay:$,shapeByLayout:B,isEnableBorderActive:L,isShowButtonLightbox:M,filteredProductImages:D,handleClickCarouselItem:F,safeMoveToIdx:H,setSliderReady:O}=y(h);return e(o,{children:$&&e(u,{parentClass:P,rootClass:P,setting:q,styles:A,slidesClass:i(w,x.position,x.navigationPosition),builderProps:{uid:`${j}-carousel`},moveToIdx:H,isHiddenArrowWhenDisabled:!0,disableMarginAuto:!0,onLoaded:e=>{e&&O(!0)},children:D?.map((o,r)=>{let i=r===N,m=c(o.contentType)?o.previewImage:o.src;return t(g,{contentType:"productImage",className:k(`gp-gallery-image-item gem-slider-item-${j} ${i&&L?"gem-slider-item-active":""}`),onClickItem:()=>F(o?.id),style:G,"data-id":o?.id,"data-border":i&&x?.borderActive?"active":"deactive",children:[e(p,{draggable:"false",src:m,width:o?.width,height:o?.height,alt:o?.alt,setting:{aspectRatio:s(B),layout:x?.layout,qualityPercent:x?.qualityPercent,qualityType:x?.qualityType},style:{width:"100%",height:"100%",cursor:"pointer"},className:"product-list-image"}),e(d,{contentType:o?.contentType||""}),f(M,e(n,{}))]},o?.id)})})})};export{ProductGalleryCarousel as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{useCurrentDevice as e,useFeaturedImageGlobal as r,useEditorMode as
|
|
1
|
+
import{useCurrentDevice as e,useFeaturedImageGlobal as r,useEditorMode as t,getResponsiveValueByScreen as o}from"@gem-sdk/core";import{useState as i,useRef as a,useEffect as s,useMemo as l,useCallback as n}from"react";import{useFilterImagesByVariant as p}from"./useFilterImagesByVariant.js";import{handleSetSrcForProductImageList as m}from"../../../../image/common/helpers.js";import{getShapeByLayout as u,checkDisplayGalleryByWidth as d}from"../common/productGallery.js";let useGalleryCarousel=c=>{let{builderPropUID:h,productImages:F,onHandleClick:y,activeIndexFormFeatureImage:B,onClickFeatureArrow:f,builderPropsClass:I,arrow:g,priorityFeatureImage:C,...q}=c,T=e(),b=r(),[v,O]=i(f||""),x=t(),[j,k]=i(0),G=a(),[P,S]=i(j),[V,A]=i(!1),{filteredProductImages:L}=p({productImages:F,displayByVariant:q?.displayByVariant,variantSelect:q?.variantSelect});s(()=>{O(f||"")},[f]),s(()=>{G.current&&clearTimeout(G.current),v&&(G.current=setTimeout(()=>{k(B||0),O("")}))},[B]),s(()=>{if(C){let e=L?.findIndex(e=>e.id===C.id)||0;k(e),O("")}},[C,L]),s(()=>{let e=L?.findIndex(e=>e.id===b?.id);k(e||0),O("")},[b,L]);let w=l(()=>u({shape:q.shape,shapeForBottom:q.shapeForBottom,shapeFor1Col:q.shapeFor1Col,shapeFor2Col:q.shapeFor2Col,shapeForFtOnly:q.shapeForFtOnly,shapeForInsideBottom:q.shapeForInsideBottom,shapeForInside:q.shapeForInside},q.position),[q.shape,q.shapeForBottom,q.shapeFor1Col,q.shapeFor2Col,q.shapeForFtOnly,q.position,q.shapeForInsideBottom,q.shapeForInside]),z=n(()=>{m({builderPropUID:h,shapeByLayout:w,qualityType:q.qualityType,qualityPercent:q.qualityPercent})},[w,q.qualityPercent,q.qualityType,h]);s(()=>{if("edit"===x)return;let e=document?.querySelector(`.gem-slider-item-${h} .product-list-image`);if(!e)return;z();let r=new ResizeObserver(()=>{z()});return r?.observe(e,{}),()=>{r?.disconnect()}},[z,h,x]);let R=o(q.clickOpenLightBox,T),$=l(()=>{let e=d({shapeByLayout:w});return o(e,T)},[w,T]),D=l(()=>q?.borderActive?.border!=="none",[q?.borderActive?.border]),E=o(q?.clickOpenLightBox,T),H=e=>{y&&y(e||"",R)};return s(()=>{let e;return L&&L.length>0&&V&&(e=setTimeout(()=>{S(j)},80)),()=>{e&&clearTimeout(e)}},[j,L,V]),{moveToIdx:j,isDisplay:$,shapeByLayout:w,isEnableBorderActive:D,isShowButtonLightbox:E,filteredProductImages:L,handleClickCarouselItem:H,setSliderReady:A,safeMoveToIdx:P}};export{useGalleryCarousel};
|