@onesy/ui-react 1.0.33 → 1.0.35
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/Medias/Medias.js +47 -24
- package/Page/Page.js +1 -1
- package/PageTransition/PageTransition.js +1 -1
- package/esm/Medias/Medias.js +68 -51
- package/esm/Page/Page.js +1 -1
- package/esm/PageTransition/PageTransition.js +1 -1
- package/esm/index.js +1 -1
- package/package.json +1 -1
package/Medias/Medias.js
CHANGED
|
@@ -143,6 +143,9 @@ const useStyle = (0, style_react_1.style)(theme => ({
|
|
|
143
143
|
aspectRatioTiktok: {
|
|
144
144
|
aspectRatio: '3 / 6.84',
|
|
145
145
|
width: '324px'
|
|
146
|
+
},
|
|
147
|
+
customEmbed: {
|
|
148
|
+
maxWidth: '750px'
|
|
146
149
|
}
|
|
147
150
|
}), { name: 'onesy-Medias' });
|
|
148
151
|
const Medias = react_1.default.forwardRef((props_, ref) => {
|
|
@@ -203,32 +206,52 @@ const Medias = react_1.default.forwardRef((props_, ref) => {
|
|
|
203
206
|
}, [values]);
|
|
204
207
|
const getLink = react_1.default.useCallback((item, index) => {
|
|
205
208
|
var _a;
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
let url;
|
|
209
|
-
try {
|
|
210
|
-
url = new URL(item.urlEmbed);
|
|
211
|
-
}
|
|
212
|
-
catch (error) {
|
|
213
|
-
console.log('Invalid embed URL', item);
|
|
209
|
+
const urlEmbed = item === null || item === void 0 ? void 0 : item.urlEmbed;
|
|
210
|
+
if (!urlEmbed)
|
|
214
211
|
return null;
|
|
212
|
+
const otherProps = {
|
|
213
|
+
key: index
|
|
214
|
+
};
|
|
215
|
+
const urlEmbedStart = urlEmbed.replace('http://', '').replace('https://', '');
|
|
216
|
+
const isPlatform = (urlEmbedStart.startsWith('youtu') ||
|
|
217
|
+
urlEmbedStart.startsWith('www.youtu') ||
|
|
218
|
+
urlEmbedStart.startsWith('instagram') ||
|
|
219
|
+
urlEmbedStart.startsWith('www.instagram') ||
|
|
220
|
+
urlEmbedStart.startsWith('tiktok') ||
|
|
221
|
+
urlEmbedStart.startsWith('www.tiktok') ||
|
|
222
|
+
urlEmbedStart.startsWith('vimeo') ||
|
|
223
|
+
urlEmbedStart.startsWith('www.vimeo'));
|
|
224
|
+
// predefined
|
|
225
|
+
if (isPlatform) {
|
|
226
|
+
let url;
|
|
227
|
+
try {
|
|
228
|
+
url = new URL(item.urlEmbed);
|
|
229
|
+
}
|
|
230
|
+
catch (error) {
|
|
231
|
+
console.log('Invalid embed URL', item);
|
|
232
|
+
return null;
|
|
233
|
+
}
|
|
234
|
+
const id = (_a = url.pathname) === null || _a === void 0 ? void 0 : _a.split('/').filter(Boolean).slice(-1)[0];
|
|
235
|
+
if (!(url === null || url === void 0 ? void 0 : url.hostname) || !id)
|
|
236
|
+
return null;
|
|
237
|
+
if (item.urlEmbed.includes('youtu.be')) {
|
|
238
|
+
return ((0, jsx_runtime_1.jsx)("iframe", Object.assign({}, otherProps, { title: item.name || '', src: `https://www.youtube.com/embed/${id}`, allow: 'accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share', allowFullScreen: true, className: classes.aspectRatioYoutube })));
|
|
239
|
+
}
|
|
240
|
+
if (item.urlEmbed.includes('instagram.com')) {
|
|
241
|
+
return ((0, jsx_runtime_1.jsx)("iframe", Object.assign({}, otherProps, { title: item.name || '', src: `https://www.instagram.com/reel/${id}/embed`, allowFullScreen: true, className: classes.aspectRatioInstagram })));
|
|
242
|
+
}
|
|
243
|
+
if (item.urlEmbed.includes('tiktok.com')) {
|
|
244
|
+
return ((0, jsx_runtime_1.jsx)("iframe", Object.assign({}, otherProps, { title: item.name || '', src: `https://www.tiktok.com/embed/v2/${id}`, allowFullScreen: true, className: classes.aspectRatioTiktok })));
|
|
245
|
+
}
|
|
246
|
+
if (item.urlEmbed.includes('vimeo.com')) {
|
|
247
|
+
return ((0, jsx_runtime_1.jsx)("iframe", Object.assign({}, otherProps, { title: item.name || '', src: `https://player.vimeo.com/video/${id}`, allowFullScreen: true, className: classes.aspectRatioVimeo })));
|
|
248
|
+
}
|
|
249
|
+
return ((0, jsx_runtime_1.jsx)(Link, Object.assign({}, otherProps, { href: item === null || item === void 0 ? void 0 : item.urlEmbed, target: 'blank' }, { children: item.name || item.urlEmbed })));
|
|
215
250
|
}
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
return ((0, jsx_runtime_1.jsx)("iframe", { title: item.name || '', src: `https://www.youtube.com/embed/${id}`, allow: 'accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share', allowFullScreen: true, className: classes.aspectRatioYoutube }, index));
|
|
221
|
-
}
|
|
222
|
-
if (item.urlEmbed.includes('instagram.com')) {
|
|
223
|
-
return ((0, jsx_runtime_1.jsx)("iframe", { title: item.name || '', src: `https://www.instagram.com/reel/${id}/embed`, allowFullScreen: true, className: classes.aspectRatioInstagram }, index));
|
|
224
|
-
}
|
|
225
|
-
if (item.urlEmbed.includes('tiktok.com')) {
|
|
226
|
-
return ((0, jsx_runtime_1.jsx)("iframe", { title: item.name || '', src: `https://www.tiktok.com/embed/v2/${id}`, allowFullScreen: true, className: classes.aspectRatioTiktok }, index));
|
|
227
|
-
}
|
|
228
|
-
if (item.urlEmbed.includes('vimeo.com')) {
|
|
229
|
-
return ((0, jsx_runtime_1.jsx)("iframe", { title: item.name || '', src: `https://player.vimeo.com/video/${id}`, allowFullScreen: true, className: classes.aspectRatioVimeo }, index));
|
|
230
|
-
}
|
|
231
|
-
return ((0, jsx_runtime_1.jsx)(Link, Object.assign({ href: item === null || item === void 0 ? void 0 : item.urlEmbed, target: 'blank' }, { children: item.name || item.urlEmbed }), index));
|
|
251
|
+
// custom embed code
|
|
252
|
+
return ((0, jsx_runtime_1.jsx)(Line, Object.assign({}, otherProps, { className: classes.customEmbed, fullWidth: true, dangerouslySetInnerHTML: {
|
|
253
|
+
__html: urlEmbed
|
|
254
|
+
} })));
|
|
232
255
|
}, []);
|
|
233
256
|
const getItem = (version, item, index) => {
|
|
234
257
|
var _a, _b, _c, _d, _e, _f;
|
package/Page/Page.js
CHANGED
|
@@ -42,7 +42,7 @@ const useStyle = (0, style_react_1.style)(theme => ({
|
|
|
42
42
|
name: {
|
|
43
43
|
maxWidth: '440px'
|
|
44
44
|
}
|
|
45
|
-
}), { name: 'onesy
|
|
45
|
+
}), { name: 'onesy' });
|
|
46
46
|
const Page = react_1.default.forwardRef((props_, ref) => {
|
|
47
47
|
const theme = (0, style_react_1.useOnesyTheme)();
|
|
48
48
|
const props = react_1.default.useMemo(() => { var _a, _b, _c, _d, _e, _f, _g, _h; return (Object.assign(Object.assign(Object.assign({}, (_d = (_c = (_b = (_a = theme === null || theme === void 0 ? void 0 : theme.ui) === null || _a === void 0 ? void 0 : _a.elements) === null || _b === void 0 ? void 0 : _b.all) === null || _c === void 0 ? void 0 : _c.props) === null || _d === void 0 ? void 0 : _d.default), (_h = (_g = (_f = (_e = theme === null || theme === void 0 ? void 0 : theme.ui) === null || _e === void 0 ? void 0 : _e.elements) === null || _f === void 0 ? void 0 : _f.onesyPage) === null || _g === void 0 ? void 0 : _g.props) === null || _h === void 0 ? void 0 : _h.default), props_)); }, [props_]);
|
|
@@ -45,7 +45,7 @@ const useStyle = (0, style_react_1.style)(theme => ({
|
|
|
45
45
|
out: {
|
|
46
46
|
animation: '$fadeOut 0.24s forwards'
|
|
47
47
|
}
|
|
48
|
-
}), { name: '
|
|
48
|
+
}), { name: 'onesyTransition' });
|
|
49
49
|
const PageTransition = react_1.default.forwardRef((props_, ref) => {
|
|
50
50
|
const theme = (0, style_react_1.useOnesyTheme)();
|
|
51
51
|
const props = react_1.default.useMemo(() => { var _a, _b, _c, _d, _e, _f, _g, _h; return (Object.assign(Object.assign(Object.assign({}, (_d = (_c = (_b = (_a = theme === null || theme === void 0 ? void 0 : theme.ui) === null || _a === void 0 ? void 0 : _a.elements) === null || _b === void 0 ? void 0 : _b.all) === null || _c === void 0 ? void 0 : _c.props) === null || _d === void 0 ? void 0 : _d.default), (_h = (_g = (_f = (_e = theme === null || theme === void 0 ? void 0 : theme.ui) === null || _e === void 0 ? void 0 : _e.elements) === null || _f === void 0 ? void 0 : _f.onesyPageTransition) === null || _g === void 0 ? void 0 : _g.props) === null || _h === void 0 ? void 0 : _h.default), props_)); }, [props_]);
|
package/esm/Medias/Medias.js
CHANGED
|
@@ -132,6 +132,9 @@ const useStyle = styleMethod(theme => ({
|
|
|
132
132
|
aspectRatioTiktok: {
|
|
133
133
|
aspectRatio: '3 / 6.84',
|
|
134
134
|
width: '324px'
|
|
135
|
+
},
|
|
136
|
+
customEmbed: {
|
|
137
|
+
maxWidth: '750px'
|
|
135
138
|
}
|
|
136
139
|
}), {
|
|
137
140
|
name: 'onesy-Medias'
|
|
@@ -209,58 +212,72 @@ const Medias = /*#__PURE__*/React.forwardRef((props_, ref) => {
|
|
|
209
212
|
return items_;
|
|
210
213
|
}, [values]);
|
|
211
214
|
const getLink = React.useCallback((item, index) => {
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
}
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
if (
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
}
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
215
|
+
const urlEmbed = item?.urlEmbed;
|
|
216
|
+
if (!urlEmbed) return null;
|
|
217
|
+
const otherProps = {
|
|
218
|
+
key: index
|
|
219
|
+
};
|
|
220
|
+
const urlEmbedStart = urlEmbed.replace('http://', '').replace('https://', '');
|
|
221
|
+
const isPlatform = urlEmbedStart.startsWith('youtu') || urlEmbedStart.startsWith('www.youtu') || urlEmbedStart.startsWith('instagram') || urlEmbedStart.startsWith('www.instagram') || urlEmbedStart.startsWith('tiktok') || urlEmbedStart.startsWith('www.tiktok') || urlEmbedStart.startsWith('vimeo') || urlEmbedStart.startsWith('www.vimeo');
|
|
222
|
+
|
|
223
|
+
// predefined
|
|
224
|
+
if (isPlatform) {
|
|
225
|
+
let url;
|
|
226
|
+
try {
|
|
227
|
+
url = new URL(item.urlEmbed);
|
|
228
|
+
} catch (error) {
|
|
229
|
+
console.log('Invalid embed URL', item);
|
|
230
|
+
return null;
|
|
231
|
+
}
|
|
232
|
+
const id = url.pathname?.split('/').filter(Boolean).slice(-1)[0];
|
|
233
|
+
if (!url?.hostname || !id) return null;
|
|
234
|
+
if (item.urlEmbed.includes('youtu.be')) {
|
|
235
|
+
return /*#__PURE__*/React.createElement("iframe", _extends({}, otherProps, {
|
|
236
|
+
title: item.name || '',
|
|
237
|
+
src: `https://www.youtube.com/embed/${id}`,
|
|
238
|
+
allow: "accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share",
|
|
239
|
+
allowFullScreen: true,
|
|
240
|
+
className: classes.aspectRatioYoutube
|
|
241
|
+
}));
|
|
242
|
+
}
|
|
243
|
+
if (item.urlEmbed.includes('instagram.com')) {
|
|
244
|
+
return /*#__PURE__*/React.createElement("iframe", _extends({}, otherProps, {
|
|
245
|
+
title: item.name || '',
|
|
246
|
+
src: `https://www.instagram.com/reel/${id}/embed`,
|
|
247
|
+
allowFullScreen: true,
|
|
248
|
+
className: classes.aspectRatioInstagram
|
|
249
|
+
}));
|
|
250
|
+
}
|
|
251
|
+
if (item.urlEmbed.includes('tiktok.com')) {
|
|
252
|
+
return /*#__PURE__*/React.createElement("iframe", _extends({}, otherProps, {
|
|
253
|
+
title: item.name || '',
|
|
254
|
+
src: `https://www.tiktok.com/embed/v2/${id}`,
|
|
255
|
+
allowFullScreen: true,
|
|
256
|
+
className: classes.aspectRatioTiktok
|
|
257
|
+
}));
|
|
258
|
+
}
|
|
259
|
+
if (item.urlEmbed.includes('vimeo.com')) {
|
|
260
|
+
return /*#__PURE__*/React.createElement("iframe", _extends({}, otherProps, {
|
|
261
|
+
title: item.name || '',
|
|
262
|
+
src: `https://player.vimeo.com/video/${id}`,
|
|
263
|
+
allowFullScreen: true,
|
|
264
|
+
className: classes.aspectRatioVimeo
|
|
265
|
+
}));
|
|
266
|
+
}
|
|
267
|
+
return /*#__PURE__*/React.createElement(Link, _extends({}, otherProps, {
|
|
268
|
+
href: item?.urlEmbed,
|
|
269
|
+
target: "blank"
|
|
270
|
+
}), item.name || item.urlEmbed);
|
|
258
271
|
}
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
272
|
+
|
|
273
|
+
// custom embed code
|
|
274
|
+
return /*#__PURE__*/React.createElement(Line, _extends({}, otherProps, {
|
|
275
|
+
className: classes.customEmbed,
|
|
276
|
+
fullWidth: true,
|
|
277
|
+
dangerouslySetInnerHTML: {
|
|
278
|
+
__html: urlEmbed
|
|
279
|
+
}
|
|
280
|
+
}));
|
|
264
281
|
}, []);
|
|
265
282
|
const getItem = (version, item, index) => {
|
|
266
283
|
const media = item.value;
|
package/esm/Page/Page.js
CHANGED
|
@@ -35,7 +35,7 @@ const useStyle = styleMethod(theme => ({
|
|
|
35
35
|
animation: '$fadeOut 0.24s forwards'
|
|
36
36
|
}
|
|
37
37
|
}), {
|
|
38
|
-
name: '
|
|
38
|
+
name: 'onesyTransition'
|
|
39
39
|
});
|
|
40
40
|
const PageTransition = /*#__PURE__*/React.forwardRef((props_, ref) => {
|
|
41
41
|
const theme = useOnesyTheme();
|
package/esm/index.js
CHANGED