@gem-sdk/components 13.1.6 → 13.2.2

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.
@@ -1 +1 @@
1
- "use strict";var jsxRuntime=require("react/jsx-runtime"),React=require("react"),styles=require("./common/styles.js");function Swiper(e){let t=React.useRef(null),{children:r,totalSlides:s,onSwiperReset:i,onSwiperReady:n,sliderClass:c,sliderOrder:u,thumbsSwiper:a,...p}=e,[l,w]=React.useState(!1),o=React.useMemo(()=>a?{"thumbs-swiper":a}:{},[a]),f=styles.getStyleSwiperContainer(),d="object"==typeof e.autoplay&&null!==e.autoplay?e.autoplay.pauseOnMouseEnter:void 0,y=()=>{t.current?.swiper&&t.current.swiper.wrapperEl.style.setProperty("width",`${t.current.swiper.width}px`)};return React.useEffect(()=>{let e=async()=>{let e=await import("@gem-sdk/swiper/element/bundle");e.register(),await window.customElements.whenDefined("swiper-container"),w(!0)};e()},[]),React.useEffect(()=>{l&&(Object.assign(t.current,p),t.current.initialize(),n?.(t.current.swiper),y())},[l]),React.useEffect(()=>{t.current?.swiper&&(t.current.swiper.destroy(!1,!1),Object.assign(t.current,p),t.current.initialize(),n(t.current.swiper),i())},[p.dir,p.loop,d,p.slidesPerView,n,i,p.spaceBetween,p.slidesOffsetBefore]),React.useEffect(()=>{let e=t.current;e&&(Object.assign(e,p),e.swiper?.update(),y())},[p]),React.useEffect(()=>{i()},[u,i]),React.useEffect(()=>{let e=t.current;if(!e)return;let r=()=>{y()};return e.addEventListener("swiperresize",r),()=>{e.removeEventListener("swiperresize",r)}},[]),jsxRuntime.jsx("swiper-container",{init:!1,ref:t,class:c,style:{...f,display:l?"block":"none"},...o,children:r})}exports.Swiper=Swiper;
1
+ "use strict";var jsxRuntime=require("react/jsx-runtime"),React=require("react"),styles=require("./common/styles.js");function Swiper(e){let t=React.useRef(null),{children:r,totalSlides:s,onSwiperReset:i,onSwiperReady:n,sliderClass:c,sliderOrder:u,thumbsSwiper:a,...p}=e,[l,w]=React.useState(!1),o=React.useMemo(()=>a?{"thumbs-swiper":a}:{},[a]),f=styles.getStyleSwiperContainer(),d="object"==typeof e.autoplay&&null!==e.autoplay?e.autoplay.pauseOnMouseEnter:void 0,y=()=>{t.current?.swiper&&t.current.swiper.wrapperEl.style.setProperty("width",`${t.current.swiper.width}px`)};return React.useEffect(()=>{let e=async()=>{let e=await import("@gem-sdk/swiper/element/bundle");e.register(),await window.customElements.whenDefined("swiper-container"),w(!0)};e()},[]),React.useEffect(()=>{l&&t.current&&(Object.assign(t.current,p),t.current.initialize?.(),n?.(t.current.swiper),y())},[l]),React.useEffect(()=>{t.current?.swiper&&(t.current.swiper.destroy(!1,!1),Object.assign(t.current,p),t.current.initialize?.(),n(t.current.swiper),i())},[p.dir,p.loop,d,p.slidesPerView,n,i,p.spaceBetween,p.slidesOffsetBefore]),React.useEffect(()=>{let e=t.current;e&&(Object.assign(e,p),e.swiper?.update(),y())},[p]),React.useEffect(()=>{i()},[u,i]),React.useEffect(()=>{let e=t.current;if(!e)return;let r=()=>{y()};return e.addEventListener("swiperresize",r),()=>{e.removeEventListener("swiperresize",r)}},[]),jsxRuntime.jsx("swiper-container",{init:!1,ref:t,class:c,style:{...f,display:l?"block":"none"},...o,children:r})}exports.Swiper=Swiper;
@@ -1,5 +1,5 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var core=require("@gem-sdk/core"),NextImage_liquid=require("../../image/components/NextImage.liquid.js"),helpers=require("../../helpers.js"),system=require("@gem-sdk/system"),classes=require("../common/classes.js"),styles=require("../common/styles.js"),attrs=require("../common/attrs.js");const HTML5Embed=e=>{let t=`gp-video-${e.uid}`,{thumbnail:s,muted:a,autoplay:l,loop:o,controls:r,src:i,style:d,title:n,className:c,lazy:u,poster:m,wrapperStyles:p}=e,y=l&&a&&!!s,g=!u&&e.isVideoComponent,v=!s||l&&a,$=g?i:void 0,h=system.createAttr({...attrs.getHtml5Attr({videoId:t,title:n,autoplay:l,preloadThumbnail:y,offLazyLoad:g,src:i,thumbnail:s})}),b=system.createClass({...classes.getWrapThumbnailClasses(v)}),f=system.createStyle({...styles.getPreloadImageStyle()}),L=system.createClass({...classes.getButtonThumbnailClasses()}),E=system.createClass({...classes.getImageThumbnailClasses()}),I=system.createClass({...classes.getVideoYoutubeClasses(c,g)}),A=()=>y?core.template`${NextImage_liquid.default({src:s,alt:n,priority:m?.preload,enableLazyLoadImage:!0,style:f})}
2
- ${system.If(l,`<script>
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var core=require("@gem-sdk/core"),NextImage_liquid=require("../../image/components/NextImage.liquid.js"),helpers=require("../../helpers.js"),system=require("@gem-sdk/system"),classes=require("../common/classes.js"),styles=require("../common/styles.js"),attrs=require("../common/attrs.js");const HTML5Embed=e=>{let t=`gp-video-${e.uid}`,{thumbnail:s,muted:a,autoplay:o,loop:r,controls:i,src:l,style:d,title:n,className:c,lazy:u,poster:m,wrapperStyles:v}=e,p=o&&a&&!!s,y=!u&&e.isVideoComponent,g=!s||o&&a,f=y?l:void 0,$=system.createAttr({...attrs.getHtml5Attr({videoId:t,title:n,autoplay:o,preloadThumbnail:p,offLazyLoad:y,src:l,thumbnail:s})}),h=system.createClass({...classes.getWrapThumbnailClasses(g)}),b=system.createStyle({...styles.getPreloadImageStyle()}),L=system.createClass({...classes.getButtonThumbnailClasses()}),E=system.createClass({...classes.getImageThumbnailClasses()}),A=system.createClass({...classes.getVideoYoutubeClasses(c,y)}),P=()=>p?core.template`${NextImage_liquid.default({src:s,alt:n,priority:m?.preload,enableLazyLoadImage:!0,style:b})}
2
+ ${system.If(o,`<script>
3
3
  document.addEventListener("DOMContentLoaded", (event) => {
4
4
  const eventList = ["keydown", "mousemove", "wheel", "touchmove", "touchstart", "touchend"];
5
5
  const autoLoadTimeout = setTimeout(runAutoPlayVideo, 0);
@@ -14,9 +14,21 @@
14
14
  });
15
15
  }
16
16
  function runAutoPlayVideo() {
17
- document.getElementById('${t}').setAttribute('autoplay','true');
18
- document.getElementById('${t}').setAttribute('playsinline','true');
19
- document.getElementById('${t}').play();
17
+ var video = document.getElementById('${t}');
18
+ if (!video) return;
19
+ video.setAttribute('autoplay','true');
20
+ video.setAttribute('playsinline','true');
21
+ var playPromise = video.play();
22
+ if (playPromise !== undefined) {
23
+ playPromise.catch(function(error) {
24
+ if (error.name === 'AbortError') {
25
+ video.addEventListener('loadeddata', function onLoaded() {
26
+ video.removeEventListener('loadeddata', onLoaded);
27
+ video.play();
28
+ });
29
+ }
30
+ });
31
+ }
20
32
  }
21
33
  });
22
34
  </script>`)}
@@ -24,7 +36,7 @@
24
36
  <div
25
37
  role="presentation"
26
38
  style="${d}"
27
- class="${b}"
39
+ class="${h}"
28
40
  >
29
41
  ${NextImage_liquid.default({id:"video-thumbnail",src:s??"",alt:m?.altText,title:m?.imageTitle,className:E,isDisableAspectStyle:!0,priority:m?.preload,enableLazyLoadImage:!0})}
30
42
  <button type="button" class="${L}" aria-label="Play">
@@ -37,20 +49,20 @@
37
49
  </button>
38
50
  </div>
39
51
  `;return core.template`
40
- <gp-lite-html5-embed is-check-loaded="${e.isCheckLoaded??!1}" style="${p}">
41
- ${A()}
52
+ <gp-lite-html5-embed is-check-loaded="${e.isCheckLoaded??!1}" style="${v}">
53
+ ${P()}
42
54
  <video
43
- ${{...h}}
55
+ ${{...$}}
44
56
  style="${d}"
45
- class="${I}"
46
- ${r?"controls":void 0}
47
- ${o?"loop":void 0}
57
+ class="${A}"
58
+ ${i?"controls":void 0}
59
+ ${r?"loop":void 0}
48
60
  ${a?"muted":void 0}
49
- ${l?"autoplay":void 0}
61
+ ${o?"autoplay":void 0}
50
62
  playsinline
51
- ${$?`src="${$}"`:""}
63
+ ${f?`src="${f}"`:""}
52
64
  ></video>
53
- ${system.If(!v,C())}
65
+ ${system.If(!g,C())}
54
66
  </gp-lite-html5-embed>
55
67
  ${core.RenderIf(core.isLocalEnv,`<script ${helpers.getSettingPreloadData('class="gps-link" delay',"src")}="{{ 'gp-lite-html5-embed-v7-5.js' | asset_url }}" defer="defer"></script>`,`<script ${helpers.getSettingPreloadData('class="gps-link" delay',"src")}="${core.baseAssetURL}/assets-v2/gp-lite-html5-embed-v7-5.js?v={{ shop.metafields.GEMPAGES.ASSETS_VERSION }}" defer="defer"></script>`)}
56
68
  `};exports.default=HTML5Embed;
@@ -1 +1 @@
1
- import{jsx as e}from"react/jsx-runtime";import{useRef as r,useState as t,useMemo as i,useEffect as n}from"react";import{getStyleSwiperContainer as s}from"./common/styles.js";function Swiper(p){let o=r(null),{children:c,totalSlides:l,onSwiperReset:u,onSwiperReady:a,sliderClass:w,sliderOrder:d,thumbsSwiper:m,...f}=p,[y,b]=t(!1),j=i(()=>m?{"thumbs-swiper":m}:{},[m]),g=s(),h="object"==typeof p.autoplay&&null!==p.autoplay?p.autoplay.pauseOnMouseEnter:void 0,E=()=>{o.current?.swiper&&o.current.swiper.wrapperEl.style.setProperty("width",`${o.current.swiper.width}px`)};return n(()=>{let e=async()=>{let e=await import("@gem-sdk/swiper/element/bundle");e.register(),await window.customElements.whenDefined("swiper-container"),b(!0)};e()},[]),n(()=>{y&&(Object.assign(o.current,f),o.current.initialize(),a?.(o.current.swiper),E())},[y]),n(()=>{o.current?.swiper&&(o.current.swiper.destroy(!1,!1),Object.assign(o.current,f),o.current.initialize(),a(o.current.swiper),u())},[f.dir,f.loop,h,f.slidesPerView,a,u,f.spaceBetween,f.slidesOffsetBefore]),n(()=>{let e=o.current;e&&(Object.assign(e,f),e.swiper?.update(),E())},[f]),n(()=>{u()},[d,u]),n(()=>{let e=o.current;if(!e)return;let r=()=>{E()};return e.addEventListener("swiperresize",r),()=>{e.removeEventListener("swiperresize",r)}},[]),e("swiper-container",{init:!1,ref:o,class:w,style:{...g,display:y?"block":"none"},...j,children:c})}export{Swiper};
1
+ import{jsx as e}from"react/jsx-runtime";import{useRef as r,useState as t,useMemo as i,useEffect as n}from"react";import{getStyleSwiperContainer as s}from"./common/styles.js";function Swiper(p){let c=r(null),{children:o,totalSlides:u,onSwiperReset:l,onSwiperReady:a,sliderClass:w,sliderOrder:d,thumbsSwiper:m,...f}=p,[y,b]=t(!1),j=i(()=>m?{"thumbs-swiper":m}:{},[m]),g=s(),h="object"==typeof p.autoplay&&null!==p.autoplay?p.autoplay.pauseOnMouseEnter:void 0,E=()=>{c.current?.swiper&&c.current.swiper.wrapperEl.style.setProperty("width",`${c.current.swiper.width}px`)};return n(()=>{let e=async()=>{let e=await import("@gem-sdk/swiper/element/bundle");e.register(),await window.customElements.whenDefined("swiper-container"),b(!0)};e()},[]),n(()=>{y&&c.current&&(Object.assign(c.current,f),c.current.initialize?.(),a?.(c.current.swiper),E())},[y]),n(()=>{c.current?.swiper&&(c.current.swiper.destroy(!1,!1),Object.assign(c.current,f),c.current.initialize?.(),a(c.current.swiper),l())},[f.dir,f.loop,h,f.slidesPerView,a,l,f.spaceBetween,f.slidesOffsetBefore]),n(()=>{let e=c.current;e&&(Object.assign(e,f),e.swiper?.update(),E())},[f]),n(()=>{l()},[d,l]),n(()=>{let e=c.current;if(!e)return;let r=()=>{E()};return e.addEventListener("swiperresize",r),()=>{e.removeEventListener("swiperresize",r)}},[]),e("swiper-container",{init:!1,ref:c,class:w,style:{...g,display:y?"block":"none"},...j,children:o})}export{Swiper};
@@ -1,5 +1,5 @@
1
- import{template as e,RenderIf as t,isLocalEnv as o,baseAssetURL as s}from"@gem-sdk/core";import i from"../../image/components/NextImage.liquid.js";import{getSettingPreloadData as l}from"../../helpers.js";import{createAttr as r,createClass as a,createStyle as n,If as d}from"@gem-sdk/system";import{getWrapThumbnailClasses as m,getButtonThumbnailClasses as c,getImageThumbnailClasses as u,getVideoYoutubeClasses as p}from"../common/classes.js";import{getPreloadImageStyle as v}from"../common/styles.js";import{getHtml5Attr as y}from"../common/attrs.js";let HTML5Embed=g=>{let $=`gp-video-${g.uid}`,{thumbnail:f,muted:h,autoplay:L,loop:b,controls:E,src:A,style:w,title:T,className:P,lazy:j,poster:k,wrapperStyles:I}=g,S=L&&h&&!!f,V=!j&&g.isVideoComponent,x=!f||L&&h,C=V?A:void 0,M=r({...y({videoId:$,title:T,autoplay:L,preloadThumbnail:S,offLazyLoad:V,src:A,thumbnail:f})}),B=a({...m(x)}),N=n({...v()}),z=a({...c()}),D=a({...u()}),G=a({...p(P,V)}),H=()=>S?e`${i({src:f,alt:T,priority:k?.preload,enableLazyLoadImage:!0,style:N})}
2
- ${d(L,`<script>
1
+ import{template as e,RenderIf as t,isLocalEnv as o,baseAssetURL as i}from"@gem-sdk/core";import r from"../../image/components/NextImage.liquid.js";import{getSettingPreloadData as s}from"../../helpers.js";import{createAttr as a,createClass as d,createStyle as l,If as n}from"@gem-sdk/system";import{getWrapThumbnailClasses as m,getButtonThumbnailClasses as c,getImageThumbnailClasses as u,getVideoYoutubeClasses as p}from"../common/classes.js";import{getPreloadImageStyle as v}from"../common/styles.js";import{getHtml5Attr as y}from"../common/attrs.js";let HTML5Embed=f=>{let g=`gp-video-${f.uid}`,{thumbnail:$,muted:L,autoplay:h,loop:b,controls:E,src:A,style:P,title:w,className:T,lazy:j,poster:k,wrapperStyles:S}=f,V=h&&L&&!!$,x=!j&&f.isVideoComponent,C=!$||h&&L,I=x?A:void 0,M=a({...y({videoId:g,title:w,autoplay:h,preloadThumbnail:V,offLazyLoad:x,src:A,thumbnail:$})}),N=d({...m(C)}),z=l({...v()}),B=d({...c()}),D=d({...u()}),G=d({...p(T,x)}),H=()=>V?e`${r({src:$,alt:w,priority:k?.preload,enableLazyLoadImage:!0,style:z})}
2
+ ${n(h,`<script>
3
3
  document.addEventListener("DOMContentLoaded", (event) => {
4
4
  const eventList = ["keydown", "mousemove", "wheel", "touchmove", "touchstart", "touchend"];
5
5
  const autoLoadTimeout = setTimeout(runAutoPlayVideo, 0);
@@ -14,20 +14,32 @@ import{template as e,RenderIf as t,isLocalEnv as o,baseAssetURL as s}from"@gem-s
14
14
  });
15
15
  }
16
16
  function runAutoPlayVideo() {
17
- document.getElementById('${$}').setAttribute('autoplay','true');
18
- document.getElementById('${$}').setAttribute('playsinline','true');
19
- document.getElementById('${$}').play();
17
+ var video = document.getElementById('${g}');
18
+ if (!video) return;
19
+ video.setAttribute('autoplay','true');
20
+ video.setAttribute('playsinline','true');
21
+ var playPromise = video.play();
22
+ if (playPromise !== undefined) {
23
+ playPromise.catch(function(error) {
24
+ if (error.name === 'AbortError') {
25
+ video.addEventListener('loadeddata', function onLoaded() {
26
+ video.removeEventListener('loadeddata', onLoaded);
27
+ video.play();
28
+ });
29
+ }
30
+ });
31
+ }
20
32
  }
21
33
  });
22
34
  </script>`)}
23
35
  `:"",O=()=>e`
24
36
  <div
25
37
  role="presentation"
26
- style="${w}"
27
- class="${B}"
38
+ style="${P}"
39
+ class="${N}"
28
40
  >
29
- ${i({id:"video-thumbnail",src:f??"",alt:k?.altText,title:k?.imageTitle,className:D,isDisableAspectStyle:!0,priority:k?.preload,enableLazyLoadImage:!0})}
30
- <button type="button" class="${z}" aria-label="Play">
41
+ ${r({id:"video-thumbnail",src:$??"",alt:k?.altText,title:k?.imageTitle,className:D,isDisableAspectStyle:!0,priority:k?.preload,enableLazyLoadImage:!0})}
42
+ <button type="button" class="${B}" aria-label="Play">
31
43
  <svg class="gp-w-5 gp-text-white" viewBox="0 0 24 24">
32
44
  <path
33
45
  fill="currentColor"
@@ -37,20 +49,20 @@ import{template as e,RenderIf as t,isLocalEnv as o,baseAssetURL as s}from"@gem-s
37
49
  </button>
38
50
  </div>
39
51
  `;return e`
40
- <gp-lite-html5-embed is-check-loaded="${g.isCheckLoaded??!1}" style="${I}">
52
+ <gp-lite-html5-embed is-check-loaded="${f.isCheckLoaded??!1}" style="${S}">
41
53
  ${H()}
42
54
  <video
43
55
  ${{...M}}
44
- style="${w}"
56
+ style="${P}"
45
57
  class="${G}"
46
58
  ${E?"controls":void 0}
47
59
  ${b?"loop":void 0}
48
- ${h?"muted":void 0}
49
- ${L?"autoplay":void 0}
60
+ ${L?"muted":void 0}
61
+ ${h?"autoplay":void 0}
50
62
  playsinline
51
- ${C?`src="${C}"`:""}
63
+ ${I?`src="${I}"`:""}
52
64
  ></video>
53
- ${d(!x,O())}
65
+ ${n(!C,O())}
54
66
  </gp-lite-html5-embed>
55
- ${t(o,`<script ${l('class="gps-link" delay',"src")}="{{ 'gp-lite-html5-embed-v7-5.js' | asset_url }}" defer="defer"></script>`,`<script ${l('class="gps-link" delay',"src")}="${s}/assets-v2/gp-lite-html5-embed-v7-5.js?v={{ shop.metafields.GEMPAGES.ASSETS_VERSION }}" defer="defer"></script>`)}
67
+ ${t(o,`<script ${s('class="gps-link" delay',"src")}="{{ 'gp-lite-html5-embed-v7-5.js' | asset_url }}" defer="defer"></script>`,`<script ${s('class="gps-link" delay',"src")}="${i}/assets-v2/gp-lite-html5-embed-v7-5.js?v={{ shop.metafields.GEMPAGES.ASSETS_VERSION }}" defer="defer"></script>`)}
56
68
  `};export{HTML5Embed as default};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gem-sdk/components",
3
- "version": "13.1.6",
3
+ "version": "13.2.2",
4
4
  "license": "MIT",
5
5
  "sideEffects": false,
6
6
  "main": "dist/cjs/index.js",