@marvalt/digivalt-core 0.2.24 → 0.2.26
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 +15 -0
- package/dist/components/media/CloudflareStreamPlayer.d.ts +19 -0
- package/dist/generators.cjs +8 -2532
- package/dist/generators.cjs.map +1 -1
- package/dist/generators.esm.js +5 -2529
- package/dist/generators.esm.js.map +1 -1
- package/dist/index.cjs +22 -2546
- package/dist/index.cjs.map +1 -1
- package/dist/index.esm.js +19 -2543
- package/dist/index.esm.js.map +1 -1
- package/dist/media/index.d.ts +9 -0
- package/dist/media/preconnect.d.ts +5 -0
- package/dist/media.cjs +141 -0
- package/dist/media.cjs.map +1 -0
- package/dist/media.d.ts +73 -0
- package/dist/media.esm.js +131 -0
- package/dist/media.esm.js.map +1 -0
- package/dist/seo/preconnect.d.ts +3 -2
- package/dist/seo.cjs +9 -5
- package/dist/seo.cjs.map +1 -1
- package/dist/seo.d.ts +3 -2
- package/dist/seo.esm.js +9 -5
- package/dist/seo.esm.js.map +1 -1
- package/dist/utils/cfStream.d.ts +40 -0
- package/docs/CLOUDFLARE-STREAM.md +54 -0
- package/docs/README.md +2 -0
- package/docs/SEO-PERFORMANCE.md +6 -0
- package/package.json +7 -2
- package/template/scripts/deploy-secrets.js +39 -4
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @marvalt/digivalt-core/media
|
|
3
|
+
* Cloudflare Stream helpers and iframe player for DigiValt apps.
|
|
4
|
+
*/
|
|
5
|
+
export type { CloudflareStream, CloudflareStreamMediaLike } from '../utils/cfStream';
|
|
6
|
+
export { isCloudflareStreamHost, isCloudflareStreamReady, resolveCloudflareStream, getCloudflareStreamIframeUrl, getCloudflareStreamThumbnail, getCloudflareStreamHlsUrl, buildCloudflareStreamIframeSrc, } from '../utils/cfStream';
|
|
7
|
+
export { CloudflareStreamPlayer } from '../components/media/CloudflareStreamPlayer';
|
|
8
|
+
export type { CloudflareStreamPlayerProps } from '../components/media/CloudflareStreamPlayer';
|
|
9
|
+
export { recommendedStreamPreconnectHosts } from './preconnect';
|
package/dist/media.cjs
ADDED
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Cloudflare Stream helpers
|
|
7
|
+
*
|
|
8
|
+
* Matches the `cloudflare_stream` REST field from vibune-cloudflare-videos.
|
|
9
|
+
* Defined locally so `@marvalt/digivalt-core/media` stays browser-safe without
|
|
10
|
+
* pulling wadapter into the media bundle.
|
|
11
|
+
*/
|
|
12
|
+
const STREAM_HOST_MARKERS = ['cloudflarestream.com', 'videodelivery.net'];
|
|
13
|
+
const isCloudflareStreamHost = (url) => {
|
|
14
|
+
if (!url)
|
|
15
|
+
return false;
|
|
16
|
+
try {
|
|
17
|
+
const hostname = new URL(url).hostname.toLowerCase();
|
|
18
|
+
return STREAM_HOST_MARKERS.some((marker) => hostname.includes(marker));
|
|
19
|
+
}
|
|
20
|
+
catch {
|
|
21
|
+
return false;
|
|
22
|
+
}
|
|
23
|
+
};
|
|
24
|
+
const isCloudflareStreamReady = (stream) => {
|
|
25
|
+
return Boolean(stream && stream.ready && stream.uid);
|
|
26
|
+
};
|
|
27
|
+
const resolveCloudflareStream = (media) => {
|
|
28
|
+
if (!media)
|
|
29
|
+
return null;
|
|
30
|
+
return media.cloudflare_stream ?? media.cloudflareStream ?? null;
|
|
31
|
+
};
|
|
32
|
+
const getCloudflareStreamIframeUrl = (stream) => {
|
|
33
|
+
if (!stream)
|
|
34
|
+
return '';
|
|
35
|
+
return stream.iframe || '';
|
|
36
|
+
};
|
|
37
|
+
const getCloudflareStreamThumbnail = (stream) => {
|
|
38
|
+
if (!stream)
|
|
39
|
+
return '';
|
|
40
|
+
return stream.thumbnail || stream.preview || '';
|
|
41
|
+
};
|
|
42
|
+
const getCloudflareStreamHlsUrl = (stream) => {
|
|
43
|
+
if (!stream)
|
|
44
|
+
return '';
|
|
45
|
+
return stream.playback?.hls || '';
|
|
46
|
+
};
|
|
47
|
+
/**
|
|
48
|
+
* Build Stream iframe URL with optional player query params.
|
|
49
|
+
* See https://developers.cloudflare.com/stream/viewing-videos/using-the-stream-player/
|
|
50
|
+
*/
|
|
51
|
+
const buildCloudflareStreamIframeSrc = (stream, options = {}) => {
|
|
52
|
+
const base = getCloudflareStreamIframeUrl(stream);
|
|
53
|
+
if (!base)
|
|
54
|
+
return '';
|
|
55
|
+
try {
|
|
56
|
+
const url = new URL(base);
|
|
57
|
+
if (options.autoplay)
|
|
58
|
+
url.searchParams.set('autoplay', 'true');
|
|
59
|
+
if (options.muted)
|
|
60
|
+
url.searchParams.set('muted', 'true');
|
|
61
|
+
if (options.controls === false)
|
|
62
|
+
url.searchParams.set('controls', 'false');
|
|
63
|
+
return url.toString();
|
|
64
|
+
}
|
|
65
|
+
catch {
|
|
66
|
+
return base;
|
|
67
|
+
}
|
|
68
|
+
};
|
|
69
|
+
|
|
70
|
+
const wrapperStyle = {
|
|
71
|
+
position: 'relative',
|
|
72
|
+
width: '100%',
|
|
73
|
+
aspectRatio: '16 / 9',
|
|
74
|
+
overflow: 'hidden',
|
|
75
|
+
backgroundColor: '#0a0a0a',
|
|
76
|
+
};
|
|
77
|
+
const fillStyle = {
|
|
78
|
+
position: 'absolute',
|
|
79
|
+
inset: 0,
|
|
80
|
+
width: '100%',
|
|
81
|
+
height: '100%',
|
|
82
|
+
border: 0,
|
|
83
|
+
};
|
|
84
|
+
const posterStyle = {
|
|
85
|
+
...fillStyle,
|
|
86
|
+
objectFit: 'cover',
|
|
87
|
+
display: 'block',
|
|
88
|
+
};
|
|
89
|
+
/**
|
|
90
|
+
* Cloudflare Stream iframe player.
|
|
91
|
+
* Loads the iframe only when `stream.ready` is true; otherwise shows a poster.
|
|
92
|
+
*/
|
|
93
|
+
const CloudflareStreamPlayer = ({ stream, title = 'Video', className, autoplay = false, muted = false, controls = true, posterFallback, }) => {
|
|
94
|
+
const ready = isCloudflareStreamReady(stream);
|
|
95
|
+
const poster = getCloudflareStreamThumbnail(stream) || posterFallback || '';
|
|
96
|
+
const iframeSrc = ready
|
|
97
|
+
? buildCloudflareStreamIframeSrc(stream, { autoplay, muted, controls })
|
|
98
|
+
: '';
|
|
99
|
+
return (jsxRuntime.jsx("div", { className: className, style: wrapperStyle, "data-stream-ready": ready ? 'true' : 'false', children: ready && iframeSrc ? (jsxRuntime.jsx("iframe", { src: iframeSrc, title: title, style: fillStyle, allow: "accelerometer; gyroscope; autoplay; encrypted-media; picture-in-picture;", allowFullScreen: true, loading: "lazy" })) : poster ? (jsxRuntime.jsx("img", { src: poster, alt: title, style: posterStyle })) : (jsxRuntime.jsx("div", { style: {
|
|
100
|
+
...fillStyle,
|
|
101
|
+
display: 'flex',
|
|
102
|
+
alignItems: 'center',
|
|
103
|
+
justifyContent: 'center',
|
|
104
|
+
color: '#a3a3a3',
|
|
105
|
+
fontSize: '0.875rem',
|
|
106
|
+
}, "aria-live": "polite", children: stream ? 'Video processing…' : 'No video' })) }));
|
|
107
|
+
};
|
|
108
|
+
|
|
109
|
+
/**
|
|
110
|
+
* Suggest `<link rel="preconnect">` targets for Cloudflare Stream iframe/thumbnail hosts.
|
|
111
|
+
*/
|
|
112
|
+
function recommendedStreamPreconnectHosts(url) {
|
|
113
|
+
const out = [];
|
|
114
|
+
if (!url || !isCloudflareStreamHost(url))
|
|
115
|
+
return out;
|
|
116
|
+
try {
|
|
117
|
+
const u = new URL(url);
|
|
118
|
+
if (u.protocol === 'http:' || u.protocol === 'https:') {
|
|
119
|
+
out.push({
|
|
120
|
+
rel: 'preconnect',
|
|
121
|
+
href: `${u.protocol}//${u.host}`,
|
|
122
|
+
crossOrigin: 'anonymous',
|
|
123
|
+
});
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
catch {
|
|
127
|
+
/* ignore */
|
|
128
|
+
}
|
|
129
|
+
return out;
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
exports.CloudflareStreamPlayer = CloudflareStreamPlayer;
|
|
133
|
+
exports.buildCloudflareStreamIframeSrc = buildCloudflareStreamIframeSrc;
|
|
134
|
+
exports.getCloudflareStreamHlsUrl = getCloudflareStreamHlsUrl;
|
|
135
|
+
exports.getCloudflareStreamIframeUrl = getCloudflareStreamIframeUrl;
|
|
136
|
+
exports.getCloudflareStreamThumbnail = getCloudflareStreamThumbnail;
|
|
137
|
+
exports.isCloudflareStreamHost = isCloudflareStreamHost;
|
|
138
|
+
exports.isCloudflareStreamReady = isCloudflareStreamReady;
|
|
139
|
+
exports.recommendedStreamPreconnectHosts = recommendedStreamPreconnectHosts;
|
|
140
|
+
exports.resolveCloudflareStream = resolveCloudflareStream;
|
|
141
|
+
//# sourceMappingURL=media.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"media.cjs","sources":["../src/utils/cfStream.ts","../src/components/media/CloudflareStreamPlayer.tsx","../src/media/preconnect.ts"],"sourcesContent":[null,null,null],"names":["_jsx"],"mappings":"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"}
|
package/dist/media.d.ts
ADDED
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Cloudflare Stream helpers
|
|
5
|
+
*
|
|
6
|
+
* Matches the `cloudflare_stream` REST field from vibune-cloudflare-videos.
|
|
7
|
+
* Defined locally so `@marvalt/digivalt-core/media` stays browser-safe without
|
|
8
|
+
* pulling wadapter into the media bundle.
|
|
9
|
+
*/
|
|
10
|
+
interface CloudflareStream {
|
|
11
|
+
uid: string;
|
|
12
|
+
ready: boolean;
|
|
13
|
+
status: string;
|
|
14
|
+
duration: number;
|
|
15
|
+
thumbnail: string;
|
|
16
|
+
playback: {
|
|
17
|
+
hls: string;
|
|
18
|
+
dash: string;
|
|
19
|
+
};
|
|
20
|
+
iframe: string;
|
|
21
|
+
watch: string;
|
|
22
|
+
preview?: string;
|
|
23
|
+
}
|
|
24
|
+
interface CloudflareStreamMediaLike {
|
|
25
|
+
cloudflare_stream?: CloudflareStream | null;
|
|
26
|
+
cloudflareStream?: CloudflareStream | null;
|
|
27
|
+
}
|
|
28
|
+
declare const isCloudflareStreamHost: (url: string | undefined | null) => boolean;
|
|
29
|
+
declare const isCloudflareStreamReady: (stream: CloudflareStream | null | undefined) => stream is CloudflareStream;
|
|
30
|
+
declare const resolveCloudflareStream: (media: CloudflareStreamMediaLike | null | undefined) => CloudflareStream | null;
|
|
31
|
+
declare const getCloudflareStreamIframeUrl: (stream: CloudflareStream | null | undefined) => string;
|
|
32
|
+
declare const getCloudflareStreamThumbnail: (stream: CloudflareStream | null | undefined) => string;
|
|
33
|
+
declare const getCloudflareStreamHlsUrl: (stream: CloudflareStream | null | undefined) => string;
|
|
34
|
+
/**
|
|
35
|
+
* Build Stream iframe URL with optional player query params.
|
|
36
|
+
* See https://developers.cloudflare.com/stream/viewing-videos/using-the-stream-player/
|
|
37
|
+
*/
|
|
38
|
+
declare const buildCloudflareStreamIframeSrc: (stream: CloudflareStream | null | undefined, options?: {
|
|
39
|
+
autoplay?: boolean;
|
|
40
|
+
muted?: boolean;
|
|
41
|
+
controls?: boolean;
|
|
42
|
+
}) => string;
|
|
43
|
+
|
|
44
|
+
interface CloudflareStreamPlayerProps {
|
|
45
|
+
stream: CloudflareStream | null | undefined;
|
|
46
|
+
title?: string;
|
|
47
|
+
className?: string;
|
|
48
|
+
autoplay?: boolean;
|
|
49
|
+
muted?: boolean;
|
|
50
|
+
/** When false, hides player controls (Stream iframe `controls=false`). Default true. */
|
|
51
|
+
controls?: boolean;
|
|
52
|
+
/** Used when stream is missing/not ready and has no thumbnail. */
|
|
53
|
+
posterFallback?: string;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Cloudflare Stream iframe player.
|
|
57
|
+
* Loads the iframe only when `stream.ready` is true; otherwise shows a poster.
|
|
58
|
+
*/
|
|
59
|
+
declare const CloudflareStreamPlayer: React.FC<CloudflareStreamPlayerProps>;
|
|
60
|
+
|
|
61
|
+
interface PreconnectLink {
|
|
62
|
+
rel: 'preconnect';
|
|
63
|
+
href: string;
|
|
64
|
+
crossOrigin?: '' | 'anonymous' | 'use-credentials';
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
/**
|
|
68
|
+
* Suggest `<link rel="preconnect">` targets for Cloudflare Stream iframe/thumbnail hosts.
|
|
69
|
+
*/
|
|
70
|
+
declare function recommendedStreamPreconnectHosts(url?: string | null): PreconnectLink[];
|
|
71
|
+
|
|
72
|
+
export { CloudflareStreamPlayer, buildCloudflareStreamIframeSrc, getCloudflareStreamHlsUrl, getCloudflareStreamIframeUrl, getCloudflareStreamThumbnail, isCloudflareStreamHost, isCloudflareStreamReady, recommendedStreamPreconnectHosts, resolveCloudflareStream };
|
|
73
|
+
export type { CloudflareStream, CloudflareStreamMediaLike, CloudflareStreamPlayerProps };
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
import { jsx } from 'react/jsx-runtime';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Cloudflare Stream helpers
|
|
5
|
+
*
|
|
6
|
+
* Matches the `cloudflare_stream` REST field from vibune-cloudflare-videos.
|
|
7
|
+
* Defined locally so `@marvalt/digivalt-core/media` stays browser-safe without
|
|
8
|
+
* pulling wadapter into the media bundle.
|
|
9
|
+
*/
|
|
10
|
+
const STREAM_HOST_MARKERS = ['cloudflarestream.com', 'videodelivery.net'];
|
|
11
|
+
const isCloudflareStreamHost = (url) => {
|
|
12
|
+
if (!url)
|
|
13
|
+
return false;
|
|
14
|
+
try {
|
|
15
|
+
const hostname = new URL(url).hostname.toLowerCase();
|
|
16
|
+
return STREAM_HOST_MARKERS.some((marker) => hostname.includes(marker));
|
|
17
|
+
}
|
|
18
|
+
catch {
|
|
19
|
+
return false;
|
|
20
|
+
}
|
|
21
|
+
};
|
|
22
|
+
const isCloudflareStreamReady = (stream) => {
|
|
23
|
+
return Boolean(stream && stream.ready && stream.uid);
|
|
24
|
+
};
|
|
25
|
+
const resolveCloudflareStream = (media) => {
|
|
26
|
+
if (!media)
|
|
27
|
+
return null;
|
|
28
|
+
return media.cloudflare_stream ?? media.cloudflareStream ?? null;
|
|
29
|
+
};
|
|
30
|
+
const getCloudflareStreamIframeUrl = (stream) => {
|
|
31
|
+
if (!stream)
|
|
32
|
+
return '';
|
|
33
|
+
return stream.iframe || '';
|
|
34
|
+
};
|
|
35
|
+
const getCloudflareStreamThumbnail = (stream) => {
|
|
36
|
+
if (!stream)
|
|
37
|
+
return '';
|
|
38
|
+
return stream.thumbnail || stream.preview || '';
|
|
39
|
+
};
|
|
40
|
+
const getCloudflareStreamHlsUrl = (stream) => {
|
|
41
|
+
if (!stream)
|
|
42
|
+
return '';
|
|
43
|
+
return stream.playback?.hls || '';
|
|
44
|
+
};
|
|
45
|
+
/**
|
|
46
|
+
* Build Stream iframe URL with optional player query params.
|
|
47
|
+
* See https://developers.cloudflare.com/stream/viewing-videos/using-the-stream-player/
|
|
48
|
+
*/
|
|
49
|
+
const buildCloudflareStreamIframeSrc = (stream, options = {}) => {
|
|
50
|
+
const base = getCloudflareStreamIframeUrl(stream);
|
|
51
|
+
if (!base)
|
|
52
|
+
return '';
|
|
53
|
+
try {
|
|
54
|
+
const url = new URL(base);
|
|
55
|
+
if (options.autoplay)
|
|
56
|
+
url.searchParams.set('autoplay', 'true');
|
|
57
|
+
if (options.muted)
|
|
58
|
+
url.searchParams.set('muted', 'true');
|
|
59
|
+
if (options.controls === false)
|
|
60
|
+
url.searchParams.set('controls', 'false');
|
|
61
|
+
return url.toString();
|
|
62
|
+
}
|
|
63
|
+
catch {
|
|
64
|
+
return base;
|
|
65
|
+
}
|
|
66
|
+
};
|
|
67
|
+
|
|
68
|
+
const wrapperStyle = {
|
|
69
|
+
position: 'relative',
|
|
70
|
+
width: '100%',
|
|
71
|
+
aspectRatio: '16 / 9',
|
|
72
|
+
overflow: 'hidden',
|
|
73
|
+
backgroundColor: '#0a0a0a',
|
|
74
|
+
};
|
|
75
|
+
const fillStyle = {
|
|
76
|
+
position: 'absolute',
|
|
77
|
+
inset: 0,
|
|
78
|
+
width: '100%',
|
|
79
|
+
height: '100%',
|
|
80
|
+
border: 0,
|
|
81
|
+
};
|
|
82
|
+
const posterStyle = {
|
|
83
|
+
...fillStyle,
|
|
84
|
+
objectFit: 'cover',
|
|
85
|
+
display: 'block',
|
|
86
|
+
};
|
|
87
|
+
/**
|
|
88
|
+
* Cloudflare Stream iframe player.
|
|
89
|
+
* Loads the iframe only when `stream.ready` is true; otherwise shows a poster.
|
|
90
|
+
*/
|
|
91
|
+
const CloudflareStreamPlayer = ({ stream, title = 'Video', className, autoplay = false, muted = false, controls = true, posterFallback, }) => {
|
|
92
|
+
const ready = isCloudflareStreamReady(stream);
|
|
93
|
+
const poster = getCloudflareStreamThumbnail(stream) || posterFallback || '';
|
|
94
|
+
const iframeSrc = ready
|
|
95
|
+
? buildCloudflareStreamIframeSrc(stream, { autoplay, muted, controls })
|
|
96
|
+
: '';
|
|
97
|
+
return (jsx("div", { className: className, style: wrapperStyle, "data-stream-ready": ready ? 'true' : 'false', children: ready && iframeSrc ? (jsx("iframe", { src: iframeSrc, title: title, style: fillStyle, allow: "accelerometer; gyroscope; autoplay; encrypted-media; picture-in-picture;", allowFullScreen: true, loading: "lazy" })) : poster ? (jsx("img", { src: poster, alt: title, style: posterStyle })) : (jsx("div", { style: {
|
|
98
|
+
...fillStyle,
|
|
99
|
+
display: 'flex',
|
|
100
|
+
alignItems: 'center',
|
|
101
|
+
justifyContent: 'center',
|
|
102
|
+
color: '#a3a3a3',
|
|
103
|
+
fontSize: '0.875rem',
|
|
104
|
+
}, "aria-live": "polite", children: stream ? 'Video processing…' : 'No video' })) }));
|
|
105
|
+
};
|
|
106
|
+
|
|
107
|
+
/**
|
|
108
|
+
* Suggest `<link rel="preconnect">` targets for Cloudflare Stream iframe/thumbnail hosts.
|
|
109
|
+
*/
|
|
110
|
+
function recommendedStreamPreconnectHosts(url) {
|
|
111
|
+
const out = [];
|
|
112
|
+
if (!url || !isCloudflareStreamHost(url))
|
|
113
|
+
return out;
|
|
114
|
+
try {
|
|
115
|
+
const u = new URL(url);
|
|
116
|
+
if (u.protocol === 'http:' || u.protocol === 'https:') {
|
|
117
|
+
out.push({
|
|
118
|
+
rel: 'preconnect',
|
|
119
|
+
href: `${u.protocol}//${u.host}`,
|
|
120
|
+
crossOrigin: 'anonymous',
|
|
121
|
+
});
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
catch {
|
|
125
|
+
/* ignore */
|
|
126
|
+
}
|
|
127
|
+
return out;
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
export { CloudflareStreamPlayer, buildCloudflareStreamIframeSrc, getCloudflareStreamHlsUrl, getCloudflareStreamIframeUrl, getCloudflareStreamThumbnail, isCloudflareStreamHost, isCloudflareStreamReady, recommendedStreamPreconnectHosts, resolveCloudflareStream };
|
|
131
|
+
//# sourceMappingURL=media.esm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"media.esm.js","sources":["../src/utils/cfStream.ts","../src/components/media/CloudflareStreamPlayer.tsx","../src/media/preconnect.ts"],"sourcesContent":[null,null,null],"names":["_jsx"],"mappings":"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"}
|
package/dist/seo/preconnect.d.ts
CHANGED
|
@@ -4,7 +4,8 @@ export interface PreconnectLink {
|
|
|
4
4
|
crossOrigin?: '' | 'anonymous' | 'use-credentials';
|
|
5
5
|
}
|
|
6
6
|
/**
|
|
7
|
-
* Suggest `<link rel="preconnect">` targets from an image
|
|
7
|
+
* Suggest `<link rel="preconnect">` targets from an image or Stream URL
|
|
8
|
+
* (Cloudflare Images on imagedelivery.net; Stream on cloudflarestream.com / videodelivery.net).
|
|
8
9
|
* Apps may add more hosts (fonts, API) in `index.html` or via Helmet.
|
|
9
10
|
*/
|
|
10
|
-
export declare function recommendedPreconnectHosts(
|
|
11
|
+
export declare function recommendedPreconnectHosts(mediaUrl?: string | null): PreconnectLink[];
|
package/dist/seo.cjs
CHANGED
|
@@ -215,18 +215,22 @@ function getSeoDefaultsFromEnv() {
|
|
|
215
215
|
}
|
|
216
216
|
|
|
217
217
|
/**
|
|
218
|
-
* Suggest `<link rel="preconnect">` targets from an image
|
|
218
|
+
* Suggest `<link rel="preconnect">` targets from an image or Stream URL
|
|
219
|
+
* (Cloudflare Images on imagedelivery.net; Stream on cloudflarestream.com / videodelivery.net).
|
|
219
220
|
* Apps may add more hosts (fonts, API) in `index.html` or via Helmet.
|
|
220
221
|
*/
|
|
221
|
-
function recommendedPreconnectHosts(
|
|
222
|
+
function recommendedPreconnectHosts(mediaUrl) {
|
|
222
223
|
const out = [];
|
|
223
|
-
if (!
|
|
224
|
+
if (!mediaUrl)
|
|
224
225
|
return out;
|
|
225
226
|
try {
|
|
226
|
-
const u = new URL(
|
|
227
|
+
const u = new URL(mediaUrl);
|
|
227
228
|
if (u.protocol === 'http:' || u.protocol === 'https:') {
|
|
229
|
+
const host = u.hostname.toLowerCase();
|
|
228
230
|
const origin = `${u.protocol}//${u.host}`;
|
|
229
|
-
if (
|
|
231
|
+
if (host.includes('imagedelivery.net') ||
|
|
232
|
+
host.includes('cloudflarestream.com') ||
|
|
233
|
+
host.includes('videodelivery.net')) {
|
|
230
234
|
out.push({ rel: 'preconnect', href: origin, crossOrigin: 'anonymous' });
|
|
231
235
|
}
|
|
232
236
|
}
|
package/dist/seo.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"seo.cjs","sources":["../src/runtime/env.ts","../src/config/integrations.ts","../src/seo/defaults.ts","../src/seo/preconnect.ts","../src/seo/JsonLd.tsx","../src/utils/cfImages.ts","../src/seo/DigiValtSeoHead.tsx","../src/seo/eventJsonLd.ts","../src/lib/structured-data.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null],"names":["_jsx","useMemo","_jsxs","Helmet"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"seo.cjs","sources":["../src/runtime/env.ts","../src/config/integrations.ts","../src/seo/defaults.ts","../src/seo/preconnect.ts","../src/seo/JsonLd.tsx","../src/utils/cfImages.ts","../src/seo/DigiValtSeoHead.tsx","../src/seo/eventJsonLd.ts","../src/lib/structured-data.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null],"names":["_jsx","useMemo","_jsxs","Helmet"],"mappings":"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"}
|
package/dist/seo.d.ts
CHANGED
|
@@ -31,10 +31,11 @@ interface PreconnectLink {
|
|
|
31
31
|
crossOrigin?: '' | 'anonymous' | 'use-credentials';
|
|
32
32
|
}
|
|
33
33
|
/**
|
|
34
|
-
* Suggest `<link rel="preconnect">` targets from an image
|
|
34
|
+
* Suggest `<link rel="preconnect">` targets from an image or Stream URL
|
|
35
|
+
* (Cloudflare Images on imagedelivery.net; Stream on cloudflarestream.com / videodelivery.net).
|
|
35
36
|
* Apps may add more hosts (fonts, API) in `index.html` or via Helmet.
|
|
36
37
|
*/
|
|
37
|
-
declare function recommendedPreconnectHosts(
|
|
38
|
+
declare function recommendedPreconnectHosts(mediaUrl?: string | null): PreconnectLink[];
|
|
38
39
|
|
|
39
40
|
interface JsonLdProps {
|
|
40
41
|
data: StructuredData | StructuredData[];
|
package/dist/seo.esm.js
CHANGED
|
@@ -212,18 +212,22 @@ function getSeoDefaultsFromEnv() {
|
|
|
212
212
|
}
|
|
213
213
|
|
|
214
214
|
/**
|
|
215
|
-
* Suggest `<link rel="preconnect">` targets from an image
|
|
215
|
+
* Suggest `<link rel="preconnect">` targets from an image or Stream URL
|
|
216
|
+
* (Cloudflare Images on imagedelivery.net; Stream on cloudflarestream.com / videodelivery.net).
|
|
216
217
|
* Apps may add more hosts (fonts, API) in `index.html` or via Helmet.
|
|
217
218
|
*/
|
|
218
|
-
function recommendedPreconnectHosts(
|
|
219
|
+
function recommendedPreconnectHosts(mediaUrl) {
|
|
219
220
|
const out = [];
|
|
220
|
-
if (!
|
|
221
|
+
if (!mediaUrl)
|
|
221
222
|
return out;
|
|
222
223
|
try {
|
|
223
|
-
const u = new URL(
|
|
224
|
+
const u = new URL(mediaUrl);
|
|
224
225
|
if (u.protocol === 'http:' || u.protocol === 'https:') {
|
|
226
|
+
const host = u.hostname.toLowerCase();
|
|
225
227
|
const origin = `${u.protocol}//${u.host}`;
|
|
226
|
-
if (
|
|
228
|
+
if (host.includes('imagedelivery.net') ||
|
|
229
|
+
host.includes('cloudflarestream.com') ||
|
|
230
|
+
host.includes('videodelivery.net')) {
|
|
227
231
|
out.push({ rel: 'preconnect', href: origin, crossOrigin: 'anonymous' });
|
|
228
232
|
}
|
|
229
233
|
}
|