@se-studio/core-ui 1.0.78 → 1.0.79
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 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExternalVimeoEmbed.d.ts","sourceRoot":"","sources":["../../src/components/ExternalVimeoEmbed.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAKpF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"ExternalVimeoEmbed.d.ts","sourceRoot":"","sources":["../../src/components/ExternalVimeoEmbed.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAKpF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAqG3C,iBAAS,kBAAkB,CAAC,EAC1B,KAAK,EACL,KAAK,EACL,SAAS,EACT,OAAO,EACP,gBAAgB,EAChB,cAAc,EACd,QAAQ,EACR,IAAI,EACJ,GAAG,KAAK,EACT,EAAE;IACD,KAAK,EAAE,cAAc,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,gBAAgB,EAAE,iBAAiB,GAAG,IAAI,GAAG,SAAS,CAAC;IACvD,cAAc,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;CAC3C,GAAG,WAAW,2CA4Dd;AAED,eAAe,kBAAkB,CAAC"}
|
|
@@ -5,23 +5,28 @@ import { useEffect, useRef, useState } from 'react';
|
|
|
5
5
|
import { cn } from '../utils/cn';
|
|
6
6
|
import { calculateCropDetails } from './Visual';
|
|
7
7
|
function getVimeoHash(url) {
|
|
8
|
-
const
|
|
9
|
-
|
|
10
|
-
|
|
8
|
+
const queryMatch = url.match(/[?&]h=([^&]+)/);
|
|
9
|
+
if (queryMatch?.[1])
|
|
10
|
+
return queryMatch[1];
|
|
11
|
+
const pathMatch = url.match(/vimeo\.com\/(?:video\/)?\d+\/([a-zA-Z0-9]+)/);
|
|
12
|
+
return pathMatch?.[1] ?? null;
|
|
11
13
|
}
|
|
12
|
-
function
|
|
14
|
+
function buildVimeoEmbedSrc(vimeoId, externalUrl, options) {
|
|
13
15
|
const params = new URLSearchParams();
|
|
14
|
-
params.set('autoplay', '1');
|
|
15
|
-
params.set('muted', '1');
|
|
16
|
-
params.set('background', '1');
|
|
17
|
-
if (loop) {
|
|
18
|
-
params.set('loop', '1');
|
|
19
|
-
}
|
|
20
16
|
const hash = getVimeoHash(externalUrl);
|
|
21
17
|
if (hash) {
|
|
22
18
|
params.set('h', hash);
|
|
23
19
|
}
|
|
24
|
-
|
|
20
|
+
if (options.autoplay) {
|
|
21
|
+
params.set('autoplay', '1');
|
|
22
|
+
params.set('muted', '1');
|
|
23
|
+
params.set('background', '1');
|
|
24
|
+
if (options.loop) {
|
|
25
|
+
params.set('loop', '1');
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
const qs = params.toString();
|
|
29
|
+
return `https://player.vimeo.com/video/${vimeoId}${qs ? `?${qs}` : ''}`;
|
|
25
30
|
}
|
|
26
31
|
function AutoplayVimeoIframe({ video, vimeoId, style, className, loop, }) {
|
|
27
32
|
const containerRef = useRef(null);
|
|
@@ -45,7 +50,7 @@ function AutoplayVimeoIframe({ video, vimeoId, style, className, loop, }) {
|
|
|
45
50
|
...calculateCropDetails(video),
|
|
46
51
|
aspectRatio: embed ? `${embed.width / embed.height}` : undefined,
|
|
47
52
|
};
|
|
48
|
-
return (_jsxs("div", { ref: containerRef, className: cn('relative w-full overflow-hidden', className), style: fullStyle, children: [!shouldLoad && video.poster && (_jsx(Image, { src: video.poster, alt: video.name, width: video.width ?? 1920, height: video.height ?? 1080, style: { objectFit: 'cover' }, sizes: "100vw", className: "h-full w-full" })), shouldLoad && (_jsx("iframe", { src:
|
|
53
|
+
return (_jsxs("div", { ref: containerRef, className: cn('relative w-full overflow-hidden', className), style: fullStyle, children: [!shouldLoad && video.poster && (_jsx(Image, { src: video.poster, alt: video.name, width: video.width ?? 1920, height: video.height ?? 1080, style: { objectFit: 'cover' }, sizes: "100vw", className: "h-full w-full" })), shouldLoad && (_jsx("iframe", { src: buildVimeoEmbedSrc(vimeoId, video.external, { autoplay: true, loop: loop ?? false }), title: video.name, className: "absolute inset-0 h-full w-full border-0", allow: "autoplay; fullscreen; picture-in-picture", allowFullScreen: true }))] }));
|
|
49
54
|
}
|
|
50
55
|
function ExternalVimeoEmbed({ video, style, className, vimeoId, analyticsContext, componentLabel, autoPlay, loop, ...props }) {
|
|
51
56
|
const cropProperties = calculateCropDetails(video);
|
|
@@ -58,9 +63,11 @@ function ExternalVimeoEmbed({ video, style, className, vimeoId, analyticsContext
|
|
|
58
63
|
if (autoPlay) {
|
|
59
64
|
return (_jsx(AutoplayVimeoIframe, { video: video, vimeoId: vimeoId, style: style, className: className, loop: loop }));
|
|
60
65
|
}
|
|
61
|
-
|
|
66
|
+
const vimeoHash = getVimeoHash(video.external);
|
|
67
|
+
const useIframe = vimeoHash !== null;
|
|
68
|
+
return (_jsx("div", { className: cn('w-full', className), style: fullStyle, children: useIframe ? (_jsx("iframe", { src: buildVimeoEmbedSrc(vimeoId, video.external, { autoplay: false }), title: video.name, className: "h-full w-full border-0", allow: "fullscreen; picture-in-picture", allowFullScreen: true })) : (_jsx("lite-vimeo", { videoid: vimeoId, title: video.name, className: "h-full w-full", autoload: true, ...props, children: video.poster && (_jsx(Image, { slot: "image", src: video.poster, alt: video.name, width: video.width ?? 1920, height: video.height ?? 1080, style: {
|
|
62
69
|
objectFit: 'cover',
|
|
63
|
-
}, sizes: "100vw", className: "h-full w-full" })) }) }));
|
|
70
|
+
}, sizes: "100vw", className: "h-full w-full" })) })) }));
|
|
64
71
|
}
|
|
65
72
|
export default ExternalVimeoEmbed;
|
|
66
73
|
//# sourceMappingURL=ExternalVimeoEmbed.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExternalVimeoEmbed.js","sourceRoot":"","sources":["../../src/components/ExternalVimeoEmbed.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAGb,OAAO,KAAK,MAAM,YAAY,CAAC;AAE/B,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACpD,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AAEjC,OAAO,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAEhD,SAAS,YAAY,CAAC,GAAW;IAC/B,MAAM,
|
|
1
|
+
{"version":3,"file":"ExternalVimeoEmbed.js","sourceRoot":"","sources":["../../src/components/ExternalVimeoEmbed.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.
|
|
3
|
+
"version": "1.0.79",
|
|
4
4
|
"description": "Shared React UI component library with Tailwind CSS v4 for SE Studio applications",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -49,22 +49,22 @@
|
|
|
49
49
|
"react-dom": "^19.2.0"
|
|
50
50
|
},
|
|
51
51
|
"dependencies": {
|
|
52
|
-
"@contentful/live-preview": "^4.9.
|
|
52
|
+
"@contentful/live-preview": "^4.9.5",
|
|
53
53
|
"@contentful/rich-text-react-renderer": "^16.1.6",
|
|
54
54
|
"@contentful/rich-text-types": "^17.2.5",
|
|
55
55
|
"@extractus/oembed-extractor": "^4.0.9",
|
|
56
56
|
"@radix-ui/react-slot": "^1.2.4",
|
|
57
57
|
"@types/mustache": "4.2.6",
|
|
58
58
|
"clsx": "^2.1.1",
|
|
59
|
-
"hls.js": "^1.6.
|
|
59
|
+
"hls.js": "^1.6.15",
|
|
60
60
|
"html-entities": "^2.6.0",
|
|
61
61
|
"mustache": "4.2.0",
|
|
62
|
-
"tailwind-merge": "^3.
|
|
63
|
-
"@se-studio/contentful-rest-api": "1.0.
|
|
64
|
-
"@se-studio/core-data-types": "1.0.
|
|
62
|
+
"tailwind-merge": "^3.5.0",
|
|
63
|
+
"@se-studio/contentful-rest-api": "1.0.79",
|
|
64
|
+
"@se-studio/core-data-types": "1.0.79"
|
|
65
65
|
},
|
|
66
66
|
"devDependencies": {
|
|
67
|
-
"@biomejs/biome": "^2.3
|
|
67
|
+
"@biomejs/biome": "^2.4.3",
|
|
68
68
|
"@types/node": "^22.19.11",
|
|
69
69
|
"@types/react": "^19.2.14",
|
|
70
70
|
"@types/react-dom": "^19.2.3",
|