@se-studio/core-ui 1.0.137 → 1.0.138

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/CHANGELOG.md CHANGED
@@ -1,5 +1,14 @@
1
1
  # @se-studio/core-ui
2
2
 
3
+ ## 1.0.138
4
+
5
+ ### Patch Changes
6
+
7
+ - Version bump: patch for changed packages
8
+ - Updated dependencies
9
+ - @se-studio/contentful-rest-api@1.0.139
10
+ - @se-studio/core-data-types@1.0.133
11
+
3
12
  ## 1.0.137
4
13
 
5
14
  ### Patch Changes
@@ -1 +1 @@
1
- {"version":3,"file":"ImageKitClientVideo.d.ts","sourceRoot":"","sources":["../../src/components/ImageKitClientVideo.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAmC,MAAM,4BAA4B,CAAC;AAEjG,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AA+E3C,iBAAS,aAAa,CAAC,EACrB,GAAG,EACH,WAAW,EACX,QAAQ,EACR,IAAI,EACJ,KAAK,EACL,QAAQ,EACR,KAAK,EACL,MAAM,EACN,SAAS,EACT,QAAQ,EACR,oBAAoB,EACpB,sBAAsB,EACtB,KAAK,EACL,MAAM,EACN,WAAW,EACX,OAAO,EACP,aAAa,EACb,QAAQ,EACR,SAAS,EACT,GAAG,KAAK,EACT,EAAE;IACD,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;CAC5B,GAAG,IAAI,CAAC,aAAa,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,GAAG,eAAe,CAAC,GAC/D,WAAW,2CA+DZ;AAED,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"ImageKitClientVideo.d.ts","sourceRoot":"","sources":["../../src/components/ImageKitClientVideo.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,aAAa,EAAmC,MAAM,4BAA4B,CAAC;AAIjG,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AA4F3C,iBAAS,aAAa,CAAC,EACrB,GAAG,EACH,WAAW,EACX,QAAQ,EACR,IAAI,EACJ,KAAK,EACL,QAAQ,EACR,KAAK,EACL,MAAM,EACN,SAAS,EACT,QAAQ,EACR,oBAAoB,EACpB,sBAAsB,EACtB,KAAK,EACL,MAAM,EACN,WAAW,EACX,OAAO,EACP,aAAa,EACb,QAAQ,EACR,SAAS,EACT,GAAG,KAAK,EACT,EAAE;IACD,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;CAC5B,GAAG,IAAI,CAAC,aAAa,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,GAAG,eAAe,CAAC,GAC/D,WAAW,2CAmFZ;AAED,eAAe,aAAa,CAAC"}
@@ -1,5 +1,8 @@
1
+ 'use client';
1
2
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
3
  import { processSizes } from '@se-studio/core-data-types';
4
+ import Image from 'next/image';
5
+ import { useState } from 'react';
3
6
  import { cn } from '../utils/cn';
4
7
  import { CONTAINED_VIDEO_CLASSES, calculateCropDetails } from './Visual';
5
8
  /** Named transformation widths registered in ImageKit (ascending order). */
@@ -45,6 +48,20 @@ const VideoSources = ({ baseSrc, videoPrefix, width, visualSizes }) => {
45
48
  return (_jsx("source", { src: `${videoPrefix}${baseSrc}?w${snapToNamedWidth(pixels)}`, media: `(min-width: ${minWidth}px)`, type: "video/mp4" }, minWidth));
46
49
  }), visualSizes.defaultPixels ? (_jsx("source", { src: `${videoPrefix}${baseSrc}?w${snapToNamedWidth(visualSizes.defaultPixels)}`, type: "video/mp4" })) : (_jsx("source", { src: `${videoPrefix}${baseSrc}?w${NAMED_TRANSFORMATION_WIDTHS[0]}`, type: "video/mp4" }))] }));
47
50
  };
51
+ function calculateSizes(visualSizes) {
52
+ if (!visualSizes)
53
+ return '100vw';
54
+ const result = processSizes(visualSizes)
55
+ ?.breakpoints?.sort((a, b) => b.minWidth - a.minWidth)
56
+ .map(({ minWidth, size }) => `(min-width: ${minWidth}px) ${size}`) ?? [];
57
+ if (visualSizes.defaultSize)
58
+ result.push(visualSizes.defaultSize);
59
+ else if (visualSizes.defaultPixels)
60
+ result.push(`${visualSizes.defaultPixels}px`);
61
+ else
62
+ result.push('100vw');
63
+ return result.join(',');
64
+ }
48
65
  function ImageKitVideo({ url, videoPrefix, autoPlay, loop, muted, controls, style, poster, contained, dontCrop, verticalCropPosition, horizontalCropPosition, width, height, visualSizes, loading, fetchPriority, noPoster, className, ...props }) {
49
66
  const fullUrl = new URL(url);
50
67
  const cropProperties = calculateCropDetails({
@@ -59,20 +76,22 @@ function ImageKitVideo({ url, videoPrefix, autoPlay, loop, muted, controls, styl
59
76
  const extension = pathname.endsWith('.mp4') ? '' : '/ik-video.mp4';
60
77
  const baseSrc = `${pathname}${extension}`;
61
78
  const realPoster = noPoster ? undefined : (poster ?? `${videoPrefix}${baseSrc}/ik-thumbnail.jpg`);
79
+ const [posterVisible, setPosterVisible] = useState(!realAutoPlay);
62
80
  const videoStyle = {
63
81
  display: 'block',
64
82
  ...style,
65
83
  ...cropProperties,
66
84
  };
85
+ const posterOverlay = posterVisible && realPoster ? (_jsx(Image, { src: realPoster, alt: "", fill: true, className: "object-cover pointer-events-none", sizes: calculateSizes(visualSizes), "aria-hidden": true })) : null;
67
86
  const videoElement = (_jsxs("video", { "aria-hidden": realMuted && loop, className: cn(CONTAINED_VIDEO_CLASSES, className), playsInline: true, autoPlay: realAutoPlay, loop: loop, muted: realMuted, controls: realControls, style: videoStyle, width: width, height: height, preload: fetchPriority === 'high' || loading === 'eager'
68
87
  ? 'auto'
69
88
  : loading === 'lazy'
70
89
  ? 'metadata'
71
- : undefined, fetchPriority: fetchPriority, ...props, poster: realPoster, children: [_jsx(VideoSources, { width: width, videoPrefix: videoPrefix, baseSrc: baseSrc, visualSizes: visualSizes }), realMuted && _jsx("track", { kind: "captions", default: true })] }));
90
+ : undefined, fetchPriority: fetchPriority, onPlay: () => setPosterVisible(false), ...props, children: [_jsx(VideoSources, { width: width, videoPrefix: videoPrefix, baseSrc: baseSrc, visualSizes: visualSizes }), realMuted && _jsx("track", { kind: "captions", default: true })] }));
72
91
  if (contained) {
73
- return videoElement;
92
+ return (_jsxs(_Fragment, { children: [videoElement, posterOverlay] }));
74
93
  }
75
- return (_jsx("div", { className: "overflow-clip rounded-[1px]", style: { display: 'block' }, children: videoElement }));
94
+ return (_jsxs("div", { className: "relative overflow-clip rounded-[1px]", style: { display: 'block' }, children: [videoElement, posterOverlay] }));
76
95
  }
77
96
  export default ImageKitVideo;
78
97
  //# sourceMappingURL=ImageKitClientVideo.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ImageKitClientVideo.js","sourceRoot":"","sources":["../../src/components/ImageKitClientVideo.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ImageKitClientVideo.js","sourceRoot":"","sources":["../../src/components/ImageKitClientVideo.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAyC,YAAY,EAAE,MAAM,4BAA4B,CAAC;AACjG,OAAO,KAAK,MAAM,YAAY,CAAC;AAC/B,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AAEjC,OAAO,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAEzE,4EAA4E;AAC5E,MAAM,2BAA2B,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAU,CAAC;AAE/E,uEAAuE;AACvE,MAAM,yBAAyB,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AAE3D;;;GAGG;AACH,SAAS,gBAAgB,CAAC,MAAc;IACtC,MAAM,KAAK,GAAG,2BAA2B,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC;IACnE,OAAO,KAAK,IAAI,2BAA2B,CAAC,2BAA2B,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,MAAM,CAAC;AAChG,CAAC;AAED,SAAS,yBAAyB,CAChC,WAAoE;IAEpE,IAAI,CAAC,WAAW,EAAE,MAAM;QAAE,OAAO,WAAW,IAAI,EAAE,CAAC;IACnD,MAAM,MAAM,GAAG,CAAC,GAAG,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;IACxE,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACtC,IAAI,CAAC,GAAG;QAAE,OAAO,WAAW,CAAC;IAC7B,MAAM,KAAK,GAAG,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,QAAQ,CAAC;IACxC,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;IACnE,MAAM,QAAQ,GAAgD,CAAC,GAAG,MAAM,CAAC,CAAC;IAC1E,KAAK,MAAM,EAAE,IAAI,yBAAyB,EAAE,CAAC;QAC3C,IAAI,EAAE,GAAG,GAAG,CAAC,QAAQ,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;YACjD,QAAQ,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC;YAChE,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACzB,CAAC;IACH,CAAC;IACD,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;AAC1D,CAAC;AAED,MAAM,YAAY,GAKb,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,EAAE;IACpD,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,iBAAQ,GAAG,EAAE,GAAG,WAAW,GAAG,OAAO,EAAE,EAAE,IAAI,EAAC,WAAW,GAAG,CAAC;IACtE,CAAC;IAED,MAAM,SAAS,GAAG,YAAY,CAAC,WAAW,CAAC,EAAE,WAAW,CAAC;IACzD,MAAM,QAAQ,GAAG,yBAAyB,CAAC,SAAS,CAAC,CAAC;IACtD,MAAM,KAAK,GAAG,QAAQ;SACnB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,MAAM,GAAG,KAAK,CAAC;SACzC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;IAE3C,OAAO,CACL,8BACG,KAAK,EAAE,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE;gBACnC,OAAO,CACL,iBAEE,GAAG,EAAE,GAAG,WAAW,GAAG,OAAO,KAAK,gBAAgB,CAAC,MAAM,CAAC,EAAE,EAC5D,KAAK,EAAE,eAAe,QAAQ,KAAK,EACnC,IAAI,EAAC,WAAW,IAHX,QAAQ,CAIb,CACH,CAAC;YACJ,CAAC,CAAC,EACD,WAAW,CAAC,aAAa,CAAC,CAAC,CAAC,CAC3B,iBACE,GAAG,EAAE,GAAG,WAAW,GAAG,OAAO,KAAK,gBAAgB,CAAC,WAAW,CAAC,aAAa,CAAC,EAAE,EAC/E,IAAI,EAAC,WAAW,GAChB,CACH,CAAC,CAAC,CAAC,CACF,iBACE,GAAG,EAAE,GAAG,WAAW,GAAG,OAAO,KAAK,2BAA2B,CAAC,CAAC,CAAC,EAAE,EAClE,IAAI,EAAC,WAAW,GAChB,CACH,IACA,CACJ,CAAC;AACJ,CAAC,CAAC;AAEF,SAAS,cAAc,CAAC,WAA0B;IAChD,IAAI,CAAC,WAAW;QAAE,OAAO,OAAO,CAAC;IACjC,MAAM,MAAM,GACV,YAAY,CAAC,WAAW,CAAC;QACvB,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC;SACrD,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,eAAe,QAAQ,OAAO,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC;IAC7E,IAAI,WAAW,CAAC,WAAW;QAAE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;SAC7D,IAAI,WAAW,CAAC,aAAa;QAAE,MAAM,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,aAAa,IAAI,CAAC,CAAC;;QAC7E,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC1B,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC1B,CAAC;AAED,SAAS,aAAa,CAAC,EACrB,GAAG,EACH,WAAW,EACX,QAAQ,EACR,IAAI,EACJ,KAAK,EACL,QAAQ,EACR,KAAK,EACL,MAAM,EACN,SAAS,EACT,QAAQ,EACR,oBAAoB,EACpB,sBAAsB,EACtB,KAAK,EACL,MAAM,EACN,WAAW,EACX,OAAO,EACP,aAAa,EACb,QAAQ,EACR,SAAS,EACT,GAAG,KAAK,EAOG;IACX,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;IAC7B,MAAM,cAAc,GAAG,oBAAoB,CAAC;QAC1C,QAAQ;QACR,oBAAoB;QACpB,sBAAsB;KACvB,CAAC,CAAC;IACH,MAAM,YAAY,GAAG,CAAC,CAAC,QAAQ,CAAC;IAChC,MAAM,SAAS,GAAG,KAAK,IAAI,YAAY,CAAC;IACxC,MAAM,YAAY,GAAG,CAAC,YAAY,IAAI,QAAQ,CAAC;IAC/C,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;IAClC,MAAM,SAAS,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC;IAEnE,MAAM,OAAO,GAAG,GAAG,QAAQ,GAAG,SAAS,EAAE,CAAC;IAC1C,MAAM,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,GAAG,WAAW,GAAG,OAAO,mBAAmB,CAAC,CAAC;IAElG,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,CAAC,YAAY,CAAC,CAAC;IAElE,MAAM,UAAU,GAAG;QACjB,OAAO,EAAE,OAAgB;QACzB,GAAG,KAAK;QACR,GAAG,cAAc;KAClB,CAAC;IAEF,MAAM,aAAa,GACjB,aAAa,IAAI,UAAU,CAAC,CAAC,CAAC,CAC5B,KAAC,KAAK,IACJ,GAAG,EAAE,UAAU,EACf,GAAG,EAAC,EAAE,EACN,IAAI,QACJ,SAAS,EAAC,kCAAkC,EAC5C,KAAK,EAAE,cAAc,CAAC,WAAW,CAAC,wBAElC,CACH,CAAC,CAAC,CAAC,IAAI,CAAC;IAEX,MAAM,YAAY,GAAG,CACnB,gCACe,SAAS,IAAI,IAAI,EAC9B,SAAS,EAAE,EAAE,CAAC,uBAAuB,EAAE,SAAS,CAAC,EACjD,WAAW,EAAE,IAAI,EACjB,QAAQ,EAAE,YAAY,EACtB,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,SAAS,EAChB,QAAQ,EAAE,YAAY,EACtB,KAAK,EAAE,UAAU,EACjB,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,EACd,OAAO,EACL,aAAa,KAAK,MAAM,IAAI,OAAO,KAAK,OAAO;YAC7C,CAAC,CAAC,MAAM;YACR,CAAC,CAAC,OAAO,KAAK,MAAM;gBAClB,CAAC,CAAC,UAAU;gBACZ,CAAC,CAAC,SAAS,EAEjB,aAAa,EAAE,aAAa,EAC5B,MAAM,EAAE,GAAG,EAAE,CAAC,gBAAgB,CAAC,KAAK,CAAC,KACjC,KAAK,aAET,KAAC,YAAY,IACX,KAAK,EAAE,KAAK,EACZ,WAAW,EAAE,WAAW,EACxB,OAAO,EAAE,OAAO,EAChB,WAAW,EAAE,WAAW,GACxB,EACD,SAAS,IAAI,gBAAO,IAAI,EAAC,UAAU,EAAC,OAAO,SAAG,IACzC,CACT,CAAC;IAEF,IAAI,SAAS,EAAE,CAAC;QACd,OAAO,CACL,8BACG,YAAY,EACZ,aAAa,IACb,CACJ,CAAC;IACJ,CAAC;IACD,OAAO,CACL,eAAK,SAAS,EAAC,sCAAsC,EAAC,KAAK,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,aAC9E,YAAY,EACZ,aAAa,IACV,CACP,CAAC;AACJ,CAAC;AAED,eAAe,aAAa,CAAC"}
@@ -8,6 +8,6 @@ interface ImageKitHlsVideoClientProps extends Omit<IVideoProps, 'poster'> {
8
8
  height?: number;
9
9
  noPoster?: boolean;
10
10
  }
11
- export default function ImageKitHlsVideoClient({ hlsSrc, fallbackMp4Url, autoPlay, loop, muted, controls, style, poster, contained, width, height, loading, fetchPriority, noPoster, className, visualSizes: _visualSizes, ...props }: ImageKitHlsVideoClientProps): import("react/jsx-runtime").JSX.Element;
11
+ export default function ImageKitHlsVideoClient({ hlsSrc, fallbackMp4Url, autoPlay, loop, muted, controls, style, poster, contained, width, height, loading, fetchPriority, noPoster, className, visualSizes, ...props }: ImageKitHlsVideoClientProps): import("react/jsx-runtime").JSX.Element;
12
12
  export {};
13
13
  //# sourceMappingURL=ImageKitHlsVideoClient.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ImageKitHlsVideoClient.d.ts","sourceRoot":"","sources":["../../src/components/ImageKitHlsVideoClient.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAG3C,UAAU,2BAA4B,SAAQ,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC;IACvE,MAAM,EAAE,MAAM,CAAC;IACf,8FAA8F;IAC9F,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,CAAC,OAAO,UAAU,sBAAsB,CAAC,EAC7C,MAAM,EACN,cAAc,EACd,QAAQ,EACR,IAAI,EACJ,KAAK,EACL,QAAQ,EACR,KAAK,EACL,MAAM,EACN,SAAS,EACT,KAAK,EACL,MAAM,EACN,OAAO,EACP,aAAa,EACb,QAAQ,EACR,SAAS,EACT,WAAW,EAAE,YAAY,EACzB,GAAG,KAAK,EACT,EAAE,2BAA2B,2CAoH7B"}
1
+ {"version":3,"file":"ImageKitHlsVideoClient.d.ts","sourceRoot":"","sources":["../../src/components/ImageKitHlsVideoClient.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAG3C,UAAU,2BAA4B,SAAQ,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC;IACvE,MAAM,EAAE,MAAM,CAAC;IACf,8FAA8F;IAC9F,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAcD,MAAM,CAAC,OAAO,UAAU,sBAAsB,CAAC,EAC7C,MAAM,EACN,cAAc,EACd,QAAQ,EACR,IAAI,EACJ,KAAK,EACL,QAAQ,EACR,KAAK,EACL,MAAM,EACN,SAAS,EACT,KAAK,EACL,MAAM,EACN,OAAO,EACP,aAAa,EACb,QAAQ,EACR,SAAS,EACT,WAAW,EACX,GAAG,KAAK,EACT,EAAE,2BAA2B,2CAwI7B"}
@@ -1,9 +1,25 @@
1
1
  'use client';
2
- import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { processSizes } from '@se-studio/core-data-types';
4
+ import Image from 'next/image';
3
5
  import { useEffect, useRef, useState } from 'react';
4
6
  import { cn } from '../utils/cn';
5
7
  import { CONTAINED_VIDEO_CLASSES } from './Visual';
6
- export default function ImageKitHlsVideoClient({ hlsSrc, fallbackMp4Url, autoPlay, loop, muted, controls, style, poster, contained, width, height, loading, fetchPriority, noPoster, className, visualSizes: _visualSizes, ...props }) {
8
+ function calculateSizes(visualSizes) {
9
+ if (!visualSizes)
10
+ return '100vw';
11
+ const result = processSizes(visualSizes)
12
+ ?.breakpoints?.sort((a, b) => b.minWidth - a.minWidth)
13
+ .map(({ minWidth, size }) => `(min-width: ${minWidth}px) ${size}`) ?? [];
14
+ if (visualSizes.defaultSize)
15
+ result.push(visualSizes.defaultSize);
16
+ else if (visualSizes.defaultPixels)
17
+ result.push(`${visualSizes.defaultPixels}px`);
18
+ else
19
+ result.push('100vw');
20
+ return result.join(',');
21
+ }
22
+ export default function ImageKitHlsVideoClient({ hlsSrc, fallbackMp4Url, autoPlay, loop, muted, controls, style, poster, contained, width, height, loading, fetchPriority, noPoster, className, visualSizes, ...props }) {
7
23
  const videoRef = useRef(null);
8
24
  const [useFallbackMp4, setUseFallbackMp4] = useState(false);
9
25
  const [hlsActive, setHlsActive] = useState(false);
@@ -11,6 +27,7 @@ export default function ImageKitHlsVideoClient({ hlsSrc, fallbackMp4Url, autoPla
11
27
  const realMuted = muted ?? realAutoPlay;
12
28
  const realControls = !realAutoPlay || controls;
13
29
  const realPoster = noPoster ? undefined : (poster ?? undefined);
30
+ const [posterVisible, setPosterVisible] = useState(!realAutoPlay);
14
31
  useEffect(() => {
15
32
  const video = videoRef.current;
16
33
  if (!video)
@@ -75,14 +92,15 @@ export default function ImageKitHlsVideoClient({ hlsSrc, fallbackMp4Url, autoPla
75
92
  display: 'block',
76
93
  ...style,
77
94
  };
78
- const videoElement = (_jsx("video", { ref: videoRef, src: resolvedSrc, "aria-hidden": realMuted && loop, className: cn(CONTAINED_VIDEO_CLASSES, className), playsInline: true, autoPlay: realAutoPlay, loop: loop, muted: realMuted, controls: realControls, style: videoStyle, width: width, height: height, poster: realPoster ?? undefined, preload: fetchPriority === 'high' || loading === 'eager'
95
+ const posterOverlay = posterVisible && realPoster ? (_jsx(Image, { src: realPoster, alt: "", fill: true, className: "object-cover pointer-events-none", sizes: calculateSizes(visualSizes), "aria-hidden": true })) : null;
96
+ const videoElement = (_jsx("video", { ref: videoRef, src: resolvedSrc, "aria-hidden": realMuted && loop, className: cn(CONTAINED_VIDEO_CLASSES, className), playsInline: true, autoPlay: realAutoPlay, loop: loop, muted: realMuted, controls: realControls, style: videoStyle, width: width, height: height, preload: fetchPriority === 'high' || loading === 'eager'
79
97
  ? 'auto'
80
98
  : loading === 'lazy'
81
99
  ? 'metadata'
82
- : undefined, fetchPriority: fetchPriority, onEnded: handleEnded, ...props, children: realMuted && _jsx("track", { kind: "captions", default: true }) }));
100
+ : undefined, fetchPriority: fetchPriority, onPlay: () => setPosterVisible(false), onEnded: handleEnded, ...props, children: realMuted && _jsx("track", { kind: "captions", default: true }) }));
83
101
  if (contained) {
84
- return videoElement;
102
+ return (_jsxs(_Fragment, { children: [videoElement, posterOverlay] }));
85
103
  }
86
- return (_jsx("div", { className: "overflow-clip rounded-[1px]", style: { display: 'block' }, children: videoElement }));
104
+ return (_jsxs("div", { className: "relative overflow-clip rounded-[1px]", style: { display: 'block' }, children: [videoElement, posterOverlay] }));
87
105
  }
88
106
  //# sourceMappingURL=ImageKitHlsVideoClient.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ImageKitHlsVideoClient.js","sourceRoot":"","sources":["../../src/components/ImageKitHlsVideoClient.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ImageKitHlsVideoClient.js","sourceRoot":"","sources":["../../src/components/ImageKitHlsVideoClient.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"LazyAnimation.d.ts","sourceRoot":"","sources":["../../src/components/LazyAnimation.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAiB,MAAM,OAAO,CAAC;AAE3D,OAAO,KAAK,kBAAkB,MAAM,sBAAsB,CAAC;AAE3D,KAAK,KAAK,GAAG,cAAc,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAEvD,wBAAgB,aAAa,CAAC,KAAK,EAAE,KAAK,2CAqCzC"}
1
+ {"version":3,"file":"LazyAnimation.d.ts","sourceRoot":"","sources":["../../src/components/LazyAnimation.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAiB,MAAM,OAAO,CAAC;AAE3D,OAAO,KAAK,kBAAkB,MAAM,sBAAsB,CAAC;AAE3D,KAAK,KAAK,GAAG,cAAc,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAEvD,wBAAgB,aAAa,CAAC,KAAK,EAAE,KAAK,2CA2CzC"}
@@ -14,10 +14,17 @@ export function LazyAnimation(props) {
14
14
  return;
15
15
  io.disconnect();
16
16
  void (async () => {
17
- await import('@lottiefiles/lottie-player');
17
+ try {
18
+ await import(/* webpackIgnore: true */ '@lottiefiles/lottie-player');
19
+ }
20
+ catch {
21
+ // lottie-player not installed in this app — skip animation
22
+ return;
23
+ }
18
24
  const { default: Anim } = await import('./AnimationComponent');
19
- if (!cancelled)
20
- setLoaded(Anim);
25
+ // useState treats a function argument as an updater — use () => Anim to store the component
26
+ if (!cancelled && typeof Anim === 'function')
27
+ setLoaded(() => Anim);
21
28
  })();
22
29
  }, { rootMargin: '400px' });
23
30
  io.observe(el);
@@ -31,8 +38,8 @@ export function LazyAnimation(props) {
31
38
  return _jsx(Comp, { ...props });
32
39
  }
33
40
  const { animation, className, style } = props;
34
- const w = animation.optimised?.width;
35
- const h = animation.optimised?.height;
41
+ const w = animation?.optimised?.width;
42
+ const h = animation?.optimised?.height;
36
43
  const aspectRatio = w && h ? `${w} / ${h}` : '1 / 1';
37
44
  return _jsx("div", { ref: ref, className: className, style: { aspectRatio, ...style } });
38
45
  }
@@ -1 +1 @@
1
- {"version":3,"file":"LazyAnimation.js","sourceRoot":"","sources":["../../src/components/LazyAnimation.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAGb,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAKpD,MAAM,UAAU,aAAa,CAAC,KAAY;IACxC,MAAM,GAAG,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IACzC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAA8B,IAAI,CAAC,CAAC;IAExE,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,SAAS,GAAG,KAAK,CAAC;QACtB,MAAM,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC;QACvB,IAAI,CAAC,EAAE;YAAE,OAAO;QAChB,MAAM,EAAE,GAAG,IAAI,oBAAoB,CACjC,CAAC,OAAO,EAAE,EAAE;YACV,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,cAAc;gBAAE,OAAO;YACxC,EAAE,CAAC,UAAU,EAAE,CAAC;YAChB,KAAK,CAAC,KAAK,IAAI,EAAE;gBACf,MAAM,MAAM,CAAC,4BAA4B,CAAC,CAAC;gBAC3C,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC;gBAC/D,IAAI,CAAC,SAAS;oBAAE,SAAS,CAAC,IAAI,CAAC,CAAC;YAClC,CAAC,CAAC,EAAE,CAAC;QACP,CAAC,EACD,EAAE,UAAU,EAAE,OAAO,EAAE,CACxB,CAAC;QACF,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACf,OAAO,GAAG,EAAE;YACV,SAAS,GAAG,IAAI,CAAC;YACjB,EAAE,CAAC,UAAU,EAAE,CAAC;QAClB,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,IAAI,GAAG,MAAM,CAAC;QACpB,OAAO,KAAC,IAAI,OAAK,KAAK,GAAI,CAAC;IAC7B,CAAC;IAED,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC;IAC9C,MAAM,CAAC,GAAG,SAAS,CAAC,SAAS,EAAE,KAAK,CAAC;IACrC,MAAM,CAAC,GAAG,SAAS,CAAC,SAAS,EAAE,MAAM,CAAC;IACtC,MAAM,WAAW,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;IACrD,OAAO,cAAK,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,WAAW,EAAE,GAAG,KAAK,EAAE,GAAI,CAAC;AACnF,CAAC"}
1
+ {"version":3,"file":"LazyAnimation.js","sourceRoot":"","sources":["../../src/components/LazyAnimation.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAGb,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAKpD,MAAM,UAAU,aAAa,CAAC,KAAY;IACxC,MAAM,GAAG,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IACzC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAA8B,IAAI,CAAC,CAAC;IAExE,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,SAAS,GAAG,KAAK,CAAC;QACtB,MAAM,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC;QACvB,IAAI,CAAC,EAAE;YAAE,OAAO;QAChB,MAAM,EAAE,GAAG,IAAI,oBAAoB,CACjC,CAAC,OAAO,EAAE,EAAE;YACV,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,cAAc;gBAAE,OAAO;YACxC,EAAE,CAAC,UAAU,EAAE,CAAC;YAChB,KAAK,CAAC,KAAK,IAAI,EAAE;gBACf,IAAI,CAAC;oBACH,MAAM,MAAM,CAAC,yBAAyB,CAAC,4BAA4B,CAAC,CAAC;gBACvE,CAAC;gBAAC,MAAM,CAAC;oBACP,2DAA2D;oBAC3D,OAAO;gBACT,CAAC;gBACD,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC;gBAC/D,4FAA4F;gBAC5F,IAAI,CAAC,SAAS,IAAI,OAAO,IAAI,KAAK,UAAU;oBAAE,SAAS,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;YACtE,CAAC,CAAC,EAAE,CAAC;QACP,CAAC,EACD,EAAE,UAAU,EAAE,OAAO,EAAE,CACxB,CAAC;QACF,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACf,OAAO,GAAG,EAAE;YACV,SAAS,GAAG,IAAI,CAAC;YACjB,EAAE,CAAC,UAAU,EAAE,CAAC;QAClB,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,IAAI,GAAG,MAAM,CAAC;QACpB,OAAO,KAAC,IAAI,OAAK,KAAK,GAAI,CAAC;IAC7B,CAAC;IAED,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC;IAC9C,MAAM,CAAC,GAAG,SAAS,EAAE,SAAS,EAAE,KAAK,CAAC;IACtC,MAAM,CAAC,GAAG,SAAS,EAAE,SAAS,EAAE,MAAM,CAAC;IACvC,MAAM,WAAW,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;IACrD,OAAO,cAAK,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,WAAW,EAAE,GAAG,KAAK,EAAE,GAAI,CAAC;AACnF,CAAC"}
@@ -1,6 +1,5 @@
1
- import type { ComponentProps } from 'react';
2
- import type VideoComponent from './VideoComponent';
3
- type Props = ComponentProps<typeof VideoComponent>;
4
- export declare function LazyVideo(props: Props): import("react/jsx-runtime").JSX.Element;
1
+ import type { VideoComponentProps } from './VideoComponent';
2
+ type Props = VideoComponentProps;
3
+ export declare function LazyVideo(maybeProps: Props | null | undefined): import("react/jsx-runtime").JSX.Element | null;
5
4
  export {};
6
5
  //# sourceMappingURL=LazyVideo.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"LazyVideo.d.ts","sourceRoot":"","sources":["../../src/components/LazyVideo.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAiB,MAAM,OAAO,CAAC;AAE3D,OAAO,KAAK,cAAc,MAAM,kBAAkB,CAAC;AAEnD,KAAK,KAAK,GAAG,cAAc,CAAC,OAAO,cAAc,CAAC,CAAC;AAEnD,wBAAgB,SAAS,CAAC,KAAK,EAAE,KAAK,2CAmCrC"}
1
+ {"version":3,"file":"LazyVideo.d.ts","sourceRoot":"","sources":["../../src/components/LazyVideo.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAE5D,KAAK,KAAK,GAAG,mBAAmB,CAAC;AAEjC,wBAAgB,SAAS,CAAC,UAAU,EAAE,KAAK,GAAG,IAAI,GAAG,SAAS,kDAsD7D"}
@@ -1,11 +1,26 @@
1
1
  'use client';
2
2
  import { jsx as _jsx } from "react/jsx-runtime";
3
3
  import { useEffect, useRef, useState } from 'react';
4
- export function LazyVideo(props) {
4
+ export function LazyVideo(maybeProps) {
5
5
  const ref = useRef(null);
6
6
  const [Loaded, setLoaded] = useState(null);
7
+ const isEager = maybeProps?.loading === 'eager' || maybeProps?.fetchPriority === 'high';
7
8
  useEffect(() => {
8
9
  let cancelled = false;
10
+ function loadComponent() {
11
+ void import('./VideoComponent').then((m) => {
12
+ const Comp = m?.default;
13
+ if (!cancelled && typeof Comp === 'function') {
14
+ setLoaded(() => Comp);
15
+ }
16
+ });
17
+ }
18
+ if (isEager) {
19
+ loadComponent();
20
+ return () => {
21
+ cancelled = true;
22
+ };
23
+ }
9
24
  const el = ref.current;
10
25
  if (!el)
11
26
  return;
@@ -13,24 +28,24 @@ export function LazyVideo(props) {
13
28
  if (!entries[0]?.isIntersecting)
14
29
  return;
15
30
  io.disconnect();
16
- void import('./VideoComponent').then((m) => {
17
- if (!cancelled)
18
- setLoaded(m.default);
19
- });
31
+ loadComponent();
20
32
  }, { rootMargin: '400px' });
21
33
  io.observe(el);
22
34
  return () => {
23
35
  cancelled = true;
24
36
  io.disconnect();
25
37
  };
26
- }, []);
38
+ }, [isEager]);
39
+ if (maybeProps == null)
40
+ return null;
41
+ const props = maybeProps;
27
42
  if (Loaded) {
28
43
  const Comp = Loaded;
29
44
  return _jsx(Comp, { ...props });
30
45
  }
31
46
  const { video, className, style } = props;
32
- const w = video.width;
33
- const h = video.height;
47
+ const w = video?.width;
48
+ const h = video?.height;
34
49
  const aspectRatio = w && h ? `${w} / ${h}` : '16 / 9';
35
50
  return _jsx("div", { ref: ref, className: className, style: { aspectRatio, ...style } });
36
51
  }
@@ -1 +1 @@
1
- {"version":3,"file":"LazyVideo.js","sourceRoot":"","sources":["../../src/components/LazyVideo.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAGb,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAKpD,MAAM,UAAU,SAAS,CAAC,KAAY;IACpC,MAAM,GAAG,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IACzC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAA8B,IAAI,CAAC,CAAC;IAExE,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,SAAS,GAAG,KAAK,CAAC;QACtB,MAAM,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC;QACvB,IAAI,CAAC,EAAE;YAAE,OAAO;QAChB,MAAM,EAAE,GAAG,IAAI,oBAAoB,CACjC,CAAC,OAAO,EAAE,EAAE;YACV,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,cAAc;gBAAE,OAAO;YACxC,EAAE,CAAC,UAAU,EAAE,CAAC;YAChB,KAAK,MAAM,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;gBACzC,IAAI,CAAC,SAAS;oBAAE,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;YACvC,CAAC,CAAC,CAAC;QACL,CAAC,EACD,EAAE,UAAU,EAAE,OAAO,EAAE,CACxB,CAAC;QACF,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACf,OAAO,GAAG,EAAE;YACV,SAAS,GAAG,IAAI,CAAC;YACjB,EAAE,CAAC,UAAU,EAAE,CAAC;QAClB,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,IAAI,GAAG,MAAM,CAAC;QACpB,OAAO,KAAC,IAAI,OAAK,KAAK,GAAI,CAAC;IAC7B,CAAC;IAED,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC;IAC1C,MAAM,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC;IACtB,MAAM,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC;IACvB,MAAM,WAAW,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;IACtD,OAAO,cAAK,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,WAAW,EAAE,GAAG,KAAK,EAAE,GAAI,CAAC;AACnF,CAAC"}
1
+ {"version":3,"file":"LazyVideo.js","sourceRoot":"","sources":["../../src/components/LazyVideo.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAGb,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAKpD,MAAM,UAAU,SAAS,CAAC,UAAoC;IAC5D,MAAM,GAAG,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IACzC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAA8B,IAAI,CAAC,CAAC;IACxE,MAAM,OAAO,GAAG,UAAU,EAAE,OAAO,KAAK,OAAO,IAAI,UAAU,EAAE,aAAa,KAAK,MAAM,CAAC;IAExF,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,SAAS,GAAG,KAAK,CAAC;QAEtB,SAAS,aAAa;YACpB,KAAK,MAAM,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;gBACzC,MAAM,IAAI,GAAG,CAAC,EAAE,OAAO,CAAC;gBACxB,IAAI,CAAC,SAAS,IAAI,OAAO,IAAI,KAAK,UAAU,EAAE,CAAC;oBAC7C,SAAS,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;gBACxB,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC;QAED,IAAI,OAAO,EAAE,CAAC;YACZ,aAAa,EAAE,CAAC;YAChB,OAAO,GAAG,EAAE;gBACV,SAAS,GAAG,IAAI,CAAC;YACnB,CAAC,CAAC;QACJ,CAAC;QAED,MAAM,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC;QACvB,IAAI,CAAC,EAAE;YAAE,OAAO;QAChB,MAAM,EAAE,GAAG,IAAI,oBAAoB,CACjC,CAAC,OAAO,EAAE,EAAE;YACV,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,cAAc;gBAAE,OAAO;YACxC,EAAE,CAAC,UAAU,EAAE,CAAC;YAChB,aAAa,EAAE,CAAC;QAClB,CAAC,EACD,EAAE,UAAU,EAAE,OAAO,EAAE,CACxB,CAAC;QACF,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACf,OAAO,GAAG,EAAE;YACV,SAAS,GAAG,IAAI,CAAC;YACjB,EAAE,CAAC,UAAU,EAAE,CAAC;QAClB,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAEd,IAAI,UAAU,IAAI,IAAI;QAAE,OAAO,IAAI,CAAC;IACpC,MAAM,KAAK,GAAG,UAAU,CAAC;IAEzB,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,IAAI,GAAG,MAAM,CAAC;QACpB,OAAO,KAAC,IAAI,OAAK,KAAK,GAAI,CAAC;IAC7B,CAAC;IAED,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC;IAC1C,MAAM,CAAC,GAAG,KAAK,EAAE,KAAK,CAAC;IACvB,MAAM,CAAC,GAAG,KAAK,EAAE,MAAM,CAAC;IACxB,MAAM,WAAW,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;IACtD,OAAO,cAAK,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,WAAW,EAAE,GAAG,KAAK,EAAE,GAAI,CAAC;AACnF,CAAC"}
@@ -1,7 +1,7 @@
1
- import type { IAnalyticsContext, ILocalVideo } from '@se-studio/core-data-types';
1
+ import { type IAnalyticsContext, type IFullVideo, type ILocalVideo } from '@se-studio/core-data-types';
2
2
  import type { IVideoProps } from './Video';
3
3
  declare const LocalVideo: React.FC<{
4
- video: ILocalVideo;
4
+ video: ILocalVideo | IFullVideo;
5
5
  analyticsContext: IAnalyticsContext | null | undefined;
6
6
  componentLabel: string | null | undefined;
7
7
  } & IVideoProps>;
@@ -1 +1 @@
1
- {"version":3,"file":"LocalVideo.d.ts","sourceRoot":"","sources":["../../src/components/LocalVideo.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAGjF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAG3C,QAAA,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CACxB;IACE,KAAK,EAAE,WAAW,CAAC;IACnB,gBAAgB,EAAE,iBAAiB,GAAG,IAAI,GAAG,SAAS,CAAC;IACvD,cAAc,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;CAC3C,GAAG,WAAW,CA6EhB,CAAC;AAEF,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"LocalVideo.d.ts","sourceRoot":"","sources":["../../src/components/LocalVideo.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,UAAU,EACf,KAAK,WAAW,EAEjB,MAAM,4BAA4B,CAAC;AAGpC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAU3C,QAAA,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CACxB;IACE,KAAK,EAAE,WAAW,GAAG,UAAU,CAAC;IAChC,gBAAgB,EAAE,iBAAiB,GAAG,IAAI,GAAG,SAAS,CAAC;IACvD,cAAc,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;CAC3C,GAAG,WAAW,CAkFhB,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -1,8 +1,19 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { isFullVideo, } from '@se-studio/core-data-types';
2
3
  import ImageKitVideo from './ImageKitClientVideo';
3
4
  import ImageKitHlsVideoClient from './ImageKitHlsVideoClient';
4
5
  import { calculateCropDetails } from './Visual';
6
+ function hostedPlaybackUrl(video) {
7
+ if (isFullVideo(video)) {
8
+ return video.full?.videoUrl ?? video.preview?.videoUrl;
9
+ }
10
+ return video.preview?.videoUrl;
11
+ }
5
12
  const LocalVideo = ({ video, autoPlay, loop, controls, poster, contained, analyticsContext, componentLabel, ...props }) => {
13
+ const playbackUrl = hostedPlaybackUrl(video);
14
+ if (!playbackUrl) {
15
+ return null;
16
+ }
6
17
  const resolvedAutoPlay = video.autoPlay ?? autoPlay;
7
18
  const resolvedLoop = video.loop ?? loop;
8
19
  // Use MP4 for autoplay+loop to avoid HLS loop/autoplay issues on some browsers (e.g. Safari).
@@ -15,7 +26,7 @@ const LocalVideo = ({ video, autoPlay, loop, controls, poster, contained, analyt
15
26
  const width = video.width || undefined;
16
27
  const height = video.height || undefined;
17
28
  if (useHls) {
18
- const fullUrl = new URL(video.preview.videoUrl);
29
+ const fullUrl = new URL(playbackUrl);
19
30
  const pathname = fullUrl.pathname;
20
31
  const basePath = pathname.replace(/\/$/, '');
21
32
  const mp4Extension = pathname.endsWith('.mp4') ? '' : '/ik-video.mp4';
@@ -30,7 +41,7 @@ const LocalVideo = ({ video, autoPlay, loop, controls, poster, contained, analyt
30
41
  });
31
42
  return (_jsx(ImageKitHlsVideoClient, { hlsSrc: hlsSrc, fallbackMp4Url: fallbackMp4Url, width: width, height: height, autoPlay: resolvedAutoPlay, loop: resolvedLoop, controls: resolvedControls, poster: posterUrl, contained: contained, style: { ...props.style, ...cropStyle }, ...props }));
32
43
  }
33
- return (_jsx(ImageKitVideo, { url: video.preview.videoUrl, videoPrefix: video.videoPrefix, width: width, height: height, autoPlay: resolvedAutoPlay, loop: resolvedLoop, controls: resolvedControls, poster: resolvedPoster, contained: contained, dontCrop: video.dontCrop, verticalCropPosition: video.verticalCropPosition, horizontalCropPosition: video.horizontalCropPosition, ...props }));
44
+ return (_jsx(ImageKitVideo, { url: playbackUrl, videoPrefix: video.videoPrefix, width: width, height: height, autoPlay: resolvedAutoPlay, loop: resolvedLoop, controls: resolvedControls, poster: resolvedPoster, contained: contained, dontCrop: video.dontCrop, verticalCropPosition: video.verticalCropPosition, horizontalCropPosition: video.horizontalCropPosition, ...props }));
34
45
  };
35
46
  export default LocalVideo;
36
47
  //# sourceMappingURL=LocalVideo.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"LocalVideo.js","sourceRoot":"","sources":["../../src/components/LocalVideo.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LocalVideo.js","sourceRoot":"","sources":["../../src/components/LocalVideo.tsx"],"names":[],"mappings":"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"}
@@ -1,9 +1,10 @@
1
1
  import { type IAnalyticsContext, type IExternalVideo, type IFullVideo, type ILocalVideo } from '@se-studio/core-data-types';
2
2
  import type { IVideoProps } from './Video';
3
- declare function VideoComponent({ video, ...props }: {
3
+ export type VideoComponentProps = {
4
4
  video: ILocalVideo | IExternalVideo | IFullVideo;
5
5
  analyticsContext: IAnalyticsContext | null | undefined;
6
6
  componentLabel: string | null | undefined;
7
- } & IVideoProps): import("react/jsx-runtime").JSX.Element;
7
+ } & IVideoProps;
8
+ declare function VideoComponent(allProps: VideoComponentProps | null | undefined): import("react/jsx-runtime").JSX.Element | null;
8
9
  export default VideoComponent;
9
10
  //# sourceMappingURL=VideoComponent.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"VideoComponent.d.ts","sourceRoot":"","sources":["../../src/components/VideoComponent.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACnB,KAAK,UAAU,EACf,KAAK,WAAW,EAGjB,MAAM,4BAA4B,CAAC;AAGpC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3C,iBAAS,cAAc,CAAC,EACtB,KAAK,EACL,GAAG,KAAK,EACT,EAAE;IACD,KAAK,EAAE,WAAW,GAAG,cAAc,GAAG,UAAU,CAAC;IACjD,gBAAgB,EAAE,iBAAiB,GAAG,IAAI,GAAG,SAAS,CAAC;IACvD,cAAc,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;CAC3C,GAAG,WAAW,2CAcd;AAED,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"VideoComponent.d.ts","sourceRoot":"","sources":["../../src/components/VideoComponent.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACnB,KAAK,UAAU,EACf,KAAK,WAAW,EAIjB,MAAM,4BAA4B,CAAC;AAGpC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3C,MAAM,MAAM,mBAAmB,GAAG;IAChC,KAAK,EAAE,WAAW,GAAG,cAAc,GAAG,UAAU,CAAC;IACjD,gBAAgB,EAAE,iBAAiB,GAAG,IAAI,GAAG,SAAS,CAAC;IACvD,cAAc,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;CAC3C,GAAG,WAAW,CAAC;AAEhB,iBAAS,cAAc,CAAC,QAAQ,EAAE,mBAAmB,GAAG,IAAI,GAAG,SAAS,kDAsBvE;AAED,eAAe,cAAc,CAAC"}
@@ -1,9 +1,16 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { isExternalVideo, isLocalVideo, } from '@se-studio/core-data-types';
2
+ import { isExternalVideo, isFullVideo, isLocalVideo, } from '@se-studio/core-data-types';
3
3
  import ExternalVideoComponent from './ExternalVideoComponent';
4
4
  import LocalVideo from './LocalVideo';
5
- function VideoComponent({ video, ...props }) {
6
- if (isLocalVideo(video)) {
5
+ function VideoComponent(allProps) {
6
+ if (allProps == null) {
7
+ return null;
8
+ }
9
+ const { video, ...props } = allProps;
10
+ if (video == null) {
11
+ return null;
12
+ }
13
+ if (isLocalVideo(video) || isFullVideo(video)) {
7
14
  return _jsx(LocalVideo, { video: video, ...props });
8
15
  }
9
16
  if (isExternalVideo(video)) {
@@ -1 +1 @@
1
- {"version":3,"file":"VideoComponent.js","sourceRoot":"","sources":["../../src/components/VideoComponent.tsx"],"names":[],"mappings":";AAAA,OAAO,EAKL,eAAe,EACf,YAAY,GACb,MAAM,4BAA4B,CAAC;AACpC,OAAO,sBAAsB,MAAM,0BAA0B,CAAC;AAC9D,OAAO,UAAU,MAAM,cAAc,CAAC;AAGtC,SAAS,cAAc,CAAC,EACtB,KAAK,EACL,GAAG,KAAK,EAKK;IACb,IAAI,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,KAAC,UAAU,IAAC,KAAK,EAAE,KAAK,KAAM,KAAK,GAAI,CAAC;IACjD,CAAC;IAED,IAAI,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO,KAAC,sBAAsB,IAAC,KAAK,EAAE,KAAK,KAAM,KAAK,GAAI,CAAC;IAC7D,CAAC;IACD,OAAO,CACL,eAAK,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,gCAEjD,0BAAM,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,SAAQ,IACxC,CACP,CAAC;AACJ,CAAC;AAED,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"VideoComponent.js","sourceRoot":"","sources":["../../src/components/VideoComponent.tsx"],"names":[],"mappings":";AAAA,OAAO,EAKL,eAAe,EACf,WAAW,EACX,YAAY,GACb,MAAM,4BAA4B,CAAC;AACpC,OAAO,sBAAsB,MAAM,0BAA0B,CAAC;AAC9D,OAAO,UAAU,MAAM,cAAc,CAAC;AAStC,SAAS,cAAc,CAAC,QAAgD;IACtE,IAAI,QAAQ,IAAI,IAAI,EAAE,CAAC;QACrB,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE,GAAG,QAAQ,CAAC;IACrC,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;QAClB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,YAAY,CAAC,KAAK,CAAC,IAAI,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;QAC9C,OAAO,KAAC,UAAU,IAAC,KAAK,EAAE,KAAK,KAAM,KAAK,GAAI,CAAC;IACjD,CAAC;IAED,IAAI,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO,KAAC,sBAAsB,IAAC,KAAK,EAAE,KAAK,KAAM,KAAK,GAAI,CAAC;IAC7D,CAAC;IACD,OAAO,CACL,eAAK,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,gCAEjD,0BAAM,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,SAAQ,IACxC,CACP,CAAC;AACJ,CAAC;AAED,eAAe,cAAc,CAAC"}
@@ -92,13 +92,13 @@ export const Visual = ({ visual, muted, controls, autoPlay, visualSizes, fullPla
92
92
  // Render the appropriate visual type
93
93
  let content;
94
94
  if (animation) {
95
- content = (_jsx(LazyAnimation, { animation: animation, autoPlay: autoPlay, loop: loop, loopDelay: loopDelay, analyticsContext: analyticsContext, componentLabel: componentLabel, className: cn(className, mask && 'size-full object-cover'), style: mask ? undefined : style, ...props }));
95
+ content = (_jsx(LazyAnimation, { ...props, animation: animation, autoPlay: autoPlay, loop: loop, loopDelay: loopDelay, analyticsContext: analyticsContext, componentLabel: componentLabel, className: cn(className, mask && 'size-full object-cover'), style: mask ? undefined : style }));
96
96
  }
97
97
  else if (video) {
98
- content = (_jsx(LazyVideo, { video: video, autoPlay: autoPlay, muted: muted, controls: controls, visualSizes: visualSizes, fullPlayer: fullPlayer, loop: loop, contained: contained, analyticsContext: analyticsContext, componentLabel: componentLabel, className: cn(className, mask && 'size-full object-cover'), style: mask ? undefined : style, ...props }));
98
+ content = (_jsx(LazyVideo, { ...props, video: video, autoPlay: autoPlay, muted: muted, controls: controls, visualSizes: visualSizes, fullPlayer: fullPlayer, loop: loop, contained: contained, analyticsContext: analyticsContext, componentLabel: componentLabel, className: cn(className, mask && 'size-full object-cover'), style: mask ? undefined : style }));
99
99
  }
100
100
  else if (image) {
101
- content = (_jsx(ImageComponent, { image: image, visualSizes: visualSizes, className: cn(className, mask && 'size-full object-cover'), style: mask ? undefined : style, ...props }));
101
+ content = (_jsx(ImageComponent, { ...props, image: image, visualSizes: visualSizes, className: cn(className, mask && 'size-full object-cover'), style: mask ? undefined : style }));
102
102
  }
103
103
  else {
104
104
  return (_jsx(UnsupportedWarning, { className: className, style: style, children: "Not supporting non images yet" }));
@@ -1 +1 @@
1
- {"version":3,"file":"VisualComponent.js","sourceRoot":"","sources":["../../src/components/VisualComponent.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"VisualComponent.js","sourceRoot":"","sources":["../../src/components/VisualComponent.tsx"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@se-studio/core-ui",
3
- "version": "1.0.137",
3
+ "version": "1.0.138",
4
4
  "description": "Shared React UI component library with Tailwind CSS v4 for SE Studio applications",
5
5
  "repository": {
6
6
  "type": "git",
@@ -52,10 +52,16 @@
52
52
  "url": "https://github.com/Something-Else-Studio/se-core-product/issues"
53
53
  },
54
54
  "peerDependencies": {
55
+ "@lottiefiles/lottie-player": "^2.0.0",
55
56
  "next": ">=15.5.0",
56
57
  "react": "^19.2.0",
57
58
  "react-dom": "^19.2.0"
58
59
  },
60
+ "peerDependenciesMeta": {
61
+ "@lottiefiles/lottie-player": {
62
+ "optional": true
63
+ }
64
+ },
59
65
  "dependencies": {
60
66
  "@contentful/live-preview": "^4.10.1",
61
67
  "@contentful/rich-text-react-renderer": "^16.2.1",
@@ -68,8 +74,8 @@
68
74
  "mustache": "4.2.0",
69
75
  "server-only": "0.0.1",
70
76
  "tailwind-merge": "^3.5.0",
71
- "@se-studio/contentful-rest-api": "1.0.138",
72
- "@se-studio/core-data-types": "1.0.132"
77
+ "@se-studio/contentful-rest-api": "1.0.139",
78
+ "@se-studio/core-data-types": "1.0.133"
73
79
  },
74
80
  "devDependencies": {
75
81
  "@biomejs/biome": "^2.4.12",