@blaze-cms/react-page-builder 0.124.1 → 0.125.0-alpha.3
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 +19 -0
- package/lib/components/Video/providers/Vimeo/VimeoProvider.js +55 -0
- package/lib/components/Video/providers/Vimeo/VimeoProvider.js.map +1 -0
- package/lib/components/Video/providers/get-provider.js +5 -0
- package/lib/components/Video/providers/get-provider.js.map +1 -1
- package/lib-es/components/Video/providers/Vimeo/VimeoProvider.js +41 -0
- package/lib-es/components/Video/providers/Vimeo/VimeoProvider.js.map +1 -0
- package/lib-es/components/Video/providers/get-provider.js +3 -0
- package/lib-es/components/Video/providers/get-provider.js.map +1 -1
- package/package.json +4 -3
- package/src/components/Video/providers/Vimeo/VimeoProvider.js +33 -0
- package/src/components/Video/providers/get-provider.js +1 -0
- package/tests/unit/src/components/Video/providers/Vimeo/Vimeo.js +12 -0
- package/tests/unit/src/components/Video/providers/get-provider.test.js +5 -0
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,25 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
# [0.125.0-alpha.3](https://github.com/thebyte9/blaze/compare/v0.125.0-alpha.2...v0.125.0-alpha.3) (2022-09-27)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### Features
|
|
10
|
+
|
|
11
|
+
* adding vimeo provider ([#3605](https://github.com/thebyte9/blaze/issues/3605)) ([458c810](https://github.com/thebyte9/blaze/commit/458c810c647a6bcb0d69281865fd0afa0966475c))
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
# [0.125.0-alpha.1](https://github.com/thebyte9/blaze/compare/v0.125.0-alpha.0...v0.125.0-alpha.1) (2022-09-15)
|
|
18
|
+
|
|
19
|
+
**Note:** Version bump only for package @blaze-cms/react-page-builder
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
|
|
6
25
|
## [0.124.1](https://github.com/thebyte9/blaze/compare/v0.124.1-alpha.5...v0.124.1) (2022-09-06)
|
|
7
26
|
|
|
8
27
|
**Note:** Version bump only for package @blaze-cms/react-page-builder
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
require("core-js/modules/es.object.define-property.js");
|
|
4
|
+
|
|
5
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
6
|
+
|
|
7
|
+
Object.defineProperty(exports, "__esModule", {
|
|
8
|
+
value: true
|
|
9
|
+
});
|
|
10
|
+
exports["default"] = void 0;
|
|
11
|
+
|
|
12
|
+
var _react = _interopRequireDefault(require("react"));
|
|
13
|
+
|
|
14
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
15
|
+
|
|
16
|
+
var _reactPlayer = _interopRequireDefault(require("react-player"));
|
|
17
|
+
|
|
18
|
+
var _constants = require("../../../../constants");
|
|
19
|
+
|
|
20
|
+
var VimeoProvider = function VimeoProvider(_ref) {
|
|
21
|
+
var url = _ref.url,
|
|
22
|
+
autoplay = _ref.autoplay,
|
|
23
|
+
loop = _ref.loop;
|
|
24
|
+
if (!url) return null;
|
|
25
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
26
|
+
className: _constants.VIDEO_WRAPPER_CLASS_NAME
|
|
27
|
+
}, /*#__PURE__*/_react["default"].createElement(_reactPlayer["default"], {
|
|
28
|
+
url: url,
|
|
29
|
+
config: {
|
|
30
|
+
vimeo: {
|
|
31
|
+
playerOptions: {
|
|
32
|
+
autoplay: {
|
|
33
|
+
autoplay: autoplay
|
|
34
|
+
},
|
|
35
|
+
loop: {
|
|
36
|
+
loop: loop
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
}));
|
|
42
|
+
};
|
|
43
|
+
|
|
44
|
+
VimeoProvider.propTypes = {
|
|
45
|
+
url: _propTypes["default"].string.isRequired,
|
|
46
|
+
autoplay: _propTypes["default"].bool,
|
|
47
|
+
loop: _propTypes["default"].bool
|
|
48
|
+
};
|
|
49
|
+
VimeoProvider.defaultProps = {
|
|
50
|
+
autoplay: false,
|
|
51
|
+
loop: false
|
|
52
|
+
};
|
|
53
|
+
var _default = VimeoProvider;
|
|
54
|
+
exports["default"] = _default;
|
|
55
|
+
//# sourceMappingURL=VimeoProvider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"VimeoProvider.js","names":["VimeoProvider","url","autoplay","loop","VIDEO_WRAPPER_CLASS_NAME","vimeo","playerOptions","propTypes","PropTypes","string","isRequired","bool","defaultProps"],"sources":["../../../../../src/components/Video/providers/Vimeo/VimeoProvider.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport ReactPlayer from 'react-player';\nimport { VIDEO_WRAPPER_CLASS_NAME } from '../../../../constants';\n\nconst VimeoProvider = ({ url, autoplay, loop }) => {\n if (!url) return null;\n return (\n <div className={VIDEO_WRAPPER_CLASS_NAME}>\n <ReactPlayer\n url={url}\n config={{\n vimeo: {\n playerOptions: { autoplay: { autoplay }, loop: { loop } }\n }\n }}\n />\n </div>\n );\n};\n\nVimeoProvider.propTypes = {\n url: PropTypes.string.isRequired,\n autoplay: PropTypes.bool,\n loop: PropTypes.bool\n};\n\nVimeoProvider.defaultProps = {\n autoplay: false,\n loop: false\n};\n\nexport default VimeoProvider;\n"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AAEA,IAAMA,aAAa,GAAG,SAAhBA,aAAgB,OAA6B;EAAA,IAA1BC,GAA0B,QAA1BA,GAA0B;EAAA,IAArBC,QAAqB,QAArBA,QAAqB;EAAA,IAAXC,IAAW,QAAXA,IAAW;EACjD,IAAI,CAACF,GAAL,EAAU,OAAO,IAAP;EACV,oBACE;IAAK,SAAS,EAAEG;EAAhB,gBACE,gCAAC,uBAAD;IACE,GAAG,EAAEH,GADP;IAEE,MAAM,EAAE;MACNI,KAAK,EAAE;QACLC,aAAa,EAAE;UAAEJ,QAAQ,EAAE;YAAEA,QAAQ,EAARA;UAAF,CAAZ;UAA0BC,IAAI,EAAE;YAAEA,IAAI,EAAJA;UAAF;QAAhC;MADV;IADD;EAFV,EADF,CADF;AAYD,CAdD;;AAgBAH,aAAa,CAACO,SAAd,GAA0B;EACxBN,GAAG,EAAEO,qBAAA,CAAUC,MAAV,CAAiBC,UADE;EAExBR,QAAQ,EAAEM,qBAAA,CAAUG,IAFI;EAGxBR,IAAI,EAAEK,qBAAA,CAAUG;AAHQ,CAA1B;AAMAX,aAAa,CAACY,YAAd,GAA6B;EAC3BV,QAAQ,EAAE,KADiB;EAE3BC,IAAI,EAAE;AAFqB,CAA7B;eAKeH,a"}
|
|
@@ -42,6 +42,11 @@ var SUPPORTED_PROVIDERS = {
|
|
|
42
42
|
return _interopRequireWildcard(require('./JWPlayer/JWPlayerProvider'));
|
|
43
43
|
});
|
|
44
44
|
}),
|
|
45
|
+
vimeo: (0, _dynamic["default"])(function () {
|
|
46
|
+
return Promise.resolve().then(function () {
|
|
47
|
+
return _interopRequireWildcard(require('./Vimeo/VimeoProvider'));
|
|
48
|
+
});
|
|
49
|
+
}),
|
|
45
50
|
"default": (0, _dynamic["default"])(function () {
|
|
46
51
|
return Promise.resolve().then(function () {
|
|
47
52
|
return _interopRequireWildcard(require('./Default'));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-provider.js","names":["SUPPORTED_PROVIDERS","youtube","dynamic","JWPlayer","getProvider","provider"],"sources":["../../../../src/components/Video/providers/get-provider.js"],"sourcesContent":["import dynamic from 'next/dynamic';\n\nconst SUPPORTED_PROVIDERS = {\n youtube: dynamic(() =>\n import(/* webpackChunkName: \"blazePbVideoYouTube\" */ './YouTube/YouTubeProvider')\n ),\n JWPlayer: dynamic(() =>\n import(/* webpackChunkName: \"blazePbVideoJWPlayer\" */ './JWPlayer/JWPlayerProvider')\n ),\n default: dynamic(() => import(/* webpackChunkName: \"blazePbVideoDefault\" */ './Default'))\n};\n\nfunction getProvider(provider) {\n return SUPPORTED_PROVIDERS[provider] || SUPPORTED_PROVIDERS.default;\n}\n\nexport default getProvider;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;AAEA,IAAMA,mBAAmB,GAAG;EAC1BC,OAAO,EAAE,IAAAC,mBAAA,EAAQ;IAAA;MAAA,uCACsC,2BADtC;IAAA;EAAA,CAAR,CADiB;EAI1BC,QAAQ,EAAE,IAAAD,mBAAA,EAAQ;IAAA;MAAA,uCACsC,6BADtC;IAAA;EAAA,CAAR,CAJgB;
|
|
1
|
+
{"version":3,"file":"get-provider.js","names":["SUPPORTED_PROVIDERS","youtube","dynamic","JWPlayer","vimeo","getProvider","provider"],"sources":["../../../../src/components/Video/providers/get-provider.js"],"sourcesContent":["import dynamic from 'next/dynamic';\n\nconst SUPPORTED_PROVIDERS = {\n youtube: dynamic(() =>\n import(/* webpackChunkName: \"blazePbVideoYouTube\" */ './YouTube/YouTubeProvider')\n ),\n JWPlayer: dynamic(() =>\n import(/* webpackChunkName: \"blazePbVideoJWPlayer\" */ './JWPlayer/JWPlayerProvider')\n ),\n vimeo: dynamic(() => import(/* webpackChunkName: \"blazePbVideoVimeo\" */ './Vimeo/VimeoProvider')),\n default: dynamic(() => import(/* webpackChunkName: \"blazePbVideoDefault\" */ './Default'))\n};\n\nfunction getProvider(provider) {\n return SUPPORTED_PROVIDERS[provider] || SUPPORTED_PROVIDERS.default;\n}\n\nexport default getProvider;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;AAEA,IAAMA,mBAAmB,GAAG;EAC1BC,OAAO,EAAE,IAAAC,mBAAA,EAAQ;IAAA;MAAA,uCACsC,2BADtC;IAAA;EAAA,CAAR,CADiB;EAI1BC,QAAQ,EAAE,IAAAD,mBAAA,EAAQ;IAAA;MAAA,uCACsC,6BADtC;IAAA;EAAA,CAAR,CAJgB;EAO1BE,KAAK,EAAE,IAAAF,mBAAA,EAAQ;IAAA;MAAA,uCAAyD,uBAAzD;IAAA;EAAA,CAAR,CAPmB;EAQ1B,WAAS,IAAAA,mBAAA,EAAQ;IAAA;MAAA,uCAA2D,WAA3D;IAAA;EAAA,CAAR;AARiB,CAA5B;;AAWA,SAASG,WAAT,CAAqBC,QAArB,EAA+B;EAC7B,OAAON,mBAAmB,CAACM,QAAD,CAAnB,IAAiCN,mBAAmB,WAA3D;AACD;;eAEcK,W"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import PropTypes from 'prop-types';
|
|
3
|
+
import ReactPlayer from 'react-player';
|
|
4
|
+
import { VIDEO_WRAPPER_CLASS_NAME } from '../../../../constants';
|
|
5
|
+
|
|
6
|
+
const VimeoProvider = ({
|
|
7
|
+
url,
|
|
8
|
+
autoplay,
|
|
9
|
+
loop
|
|
10
|
+
}) => {
|
|
11
|
+
if (!url) return null;
|
|
12
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
13
|
+
className: VIDEO_WRAPPER_CLASS_NAME
|
|
14
|
+
}, /*#__PURE__*/React.createElement(ReactPlayer, {
|
|
15
|
+
url: url,
|
|
16
|
+
config: {
|
|
17
|
+
vimeo: {
|
|
18
|
+
playerOptions: {
|
|
19
|
+
autoplay: {
|
|
20
|
+
autoplay
|
|
21
|
+
},
|
|
22
|
+
loop: {
|
|
23
|
+
loop
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
}));
|
|
29
|
+
};
|
|
30
|
+
|
|
31
|
+
VimeoProvider.propTypes = {
|
|
32
|
+
url: PropTypes.string.isRequired,
|
|
33
|
+
autoplay: PropTypes.bool,
|
|
34
|
+
loop: PropTypes.bool
|
|
35
|
+
};
|
|
36
|
+
VimeoProvider.defaultProps = {
|
|
37
|
+
autoplay: false,
|
|
38
|
+
loop: false
|
|
39
|
+
};
|
|
40
|
+
export default VimeoProvider;
|
|
41
|
+
//# sourceMappingURL=VimeoProvider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"VimeoProvider.js","names":["React","PropTypes","ReactPlayer","VIDEO_WRAPPER_CLASS_NAME","VimeoProvider","url","autoplay","loop","vimeo","playerOptions","propTypes","string","isRequired","bool","defaultProps"],"sources":["../../../../../src/components/Video/providers/Vimeo/VimeoProvider.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport ReactPlayer from 'react-player';\nimport { VIDEO_WRAPPER_CLASS_NAME } from '../../../../constants';\n\nconst VimeoProvider = ({ url, autoplay, loop }) => {\n if (!url) return null;\n return (\n <div className={VIDEO_WRAPPER_CLASS_NAME}>\n <ReactPlayer\n url={url}\n config={{\n vimeo: {\n playerOptions: { autoplay: { autoplay }, loop: { loop } }\n }\n }}\n />\n </div>\n );\n};\n\nVimeoProvider.propTypes = {\n url: PropTypes.string.isRequired,\n autoplay: PropTypes.bool,\n loop: PropTypes.bool\n};\n\nVimeoProvider.defaultProps = {\n autoplay: false,\n loop: false\n};\n\nexport default VimeoProvider;\n"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,WAAP,MAAwB,cAAxB;AACA,SAASC,wBAAT,QAAyC,uBAAzC;;AAEA,MAAMC,aAAa,GAAG,CAAC;EAAEC,GAAF;EAAOC,QAAP;EAAiBC;AAAjB,CAAD,KAA6B;EACjD,IAAI,CAACF,GAAL,EAAU,OAAO,IAAP;EACV,oBACE;IAAK,SAAS,EAAEF;EAAhB,gBACE,oBAAC,WAAD;IACE,GAAG,EAAEE,GADP;IAEE,MAAM,EAAE;MACNG,KAAK,EAAE;QACLC,aAAa,EAAE;UAAEH,QAAQ,EAAE;YAAEA;UAAF,CAAZ;UAA0BC,IAAI,EAAE;YAAEA;UAAF;QAAhC;MADV;IADD;EAFV,EADF,CADF;AAYD,CAdD;;AAgBAH,aAAa,CAACM,SAAd,GAA0B;EACxBL,GAAG,EAAEJ,SAAS,CAACU,MAAV,CAAiBC,UADE;EAExBN,QAAQ,EAAEL,SAAS,CAACY,IAFI;EAGxBN,IAAI,EAAEN,SAAS,CAACY;AAHQ,CAA1B;AAMAT,aAAa,CAACU,YAAd,GAA6B;EAC3BR,QAAQ,EAAE,KADiB;EAE3BC,IAAI,EAAE;AAFqB,CAA7B;AAKA,eAAeH,aAAf"}
|
|
@@ -6,6 +6,9 @@ const SUPPORTED_PROVIDERS = {
|
|
|
6
6
|
JWPlayer: dynamic(() => import(
|
|
7
7
|
/* webpackChunkName: "blazePbVideoJWPlayer" */
|
|
8
8
|
'./JWPlayer/JWPlayerProvider')),
|
|
9
|
+
vimeo: dynamic(() => import(
|
|
10
|
+
/* webpackChunkName: "blazePbVideoVimeo" */
|
|
11
|
+
'./Vimeo/VimeoProvider')),
|
|
9
12
|
default: dynamic(() => import(
|
|
10
13
|
/* webpackChunkName: "blazePbVideoDefault" */
|
|
11
14
|
'./Default'))
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-provider.js","names":["dynamic","SUPPORTED_PROVIDERS","youtube","JWPlayer","default","getProvider","provider"],"sources":["../../../../src/components/Video/providers/get-provider.js"],"sourcesContent":["import dynamic from 'next/dynamic';\n\nconst SUPPORTED_PROVIDERS = {\n youtube: dynamic(() =>\n import(/* webpackChunkName: \"blazePbVideoYouTube\" */ './YouTube/YouTubeProvider')\n ),\n JWPlayer: dynamic(() =>\n import(/* webpackChunkName: \"blazePbVideoJWPlayer\" */ './JWPlayer/JWPlayerProvider')\n ),\n default: dynamic(() => import(/* webpackChunkName: \"blazePbVideoDefault\" */ './Default'))\n};\n\nfunction getProvider(provider) {\n return SUPPORTED_PROVIDERS[provider] || SUPPORTED_PROVIDERS.default;\n}\n\nexport default getProvider;\n"],"mappings":"AAAA,OAAOA,OAAP,MAAoB,cAApB;AAEA,MAAMC,mBAAmB,GAAG;EAC1BC,OAAO,EAAEF,OAAO,CAAC,MACf;EAAO;EAA8C,2BAArD,CADc,CADU;EAI1BG,QAAQ,EAAEH,OAAO,CAAC,MAChB;EAAO;EAA+C,6BAAtD,CADe,CAJS;EAO1BI,
|
|
1
|
+
{"version":3,"file":"get-provider.js","names":["dynamic","SUPPORTED_PROVIDERS","youtube","JWPlayer","vimeo","default","getProvider","provider"],"sources":["../../../../src/components/Video/providers/get-provider.js"],"sourcesContent":["import dynamic from 'next/dynamic';\n\nconst SUPPORTED_PROVIDERS = {\n youtube: dynamic(() =>\n import(/* webpackChunkName: \"blazePbVideoYouTube\" */ './YouTube/YouTubeProvider')\n ),\n JWPlayer: dynamic(() =>\n import(/* webpackChunkName: \"blazePbVideoJWPlayer\" */ './JWPlayer/JWPlayerProvider')\n ),\n vimeo: dynamic(() => import(/* webpackChunkName: \"blazePbVideoVimeo\" */ './Vimeo/VimeoProvider')),\n default: dynamic(() => import(/* webpackChunkName: \"blazePbVideoDefault\" */ './Default'))\n};\n\nfunction getProvider(provider) {\n return SUPPORTED_PROVIDERS[provider] || SUPPORTED_PROVIDERS.default;\n}\n\nexport default getProvider;\n"],"mappings":"AAAA,OAAOA,OAAP,MAAoB,cAApB;AAEA,MAAMC,mBAAmB,GAAG;EAC1BC,OAAO,EAAEF,OAAO,CAAC,MACf;EAAO;EAA8C,2BAArD,CADc,CADU;EAI1BG,QAAQ,EAAEH,OAAO,CAAC,MAChB;EAAO;EAA+C,6BAAtD,CADe,CAJS;EAO1BI,KAAK,EAAEJ,OAAO,CAAC,MAAM;EAAO;EAA4C,uBAAnD,CAAP,CAPY;EAQ1BK,OAAO,EAAEL,OAAO,CAAC,MAAM;EAAO;EAA8C,WAArD,CAAP;AARU,CAA5B;;AAWA,SAASM,WAAT,CAAqBC,QAArB,EAA+B;EAC7B,OAAON,mBAAmB,CAACM,QAAD,CAAnB,IAAiCN,mBAAmB,CAACI,OAA5D;AACD;;AAED,eAAeC,WAAf"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@blaze-cms/react-page-builder",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.125.0-alpha.3",
|
|
4
4
|
"description": "Blaze react page builder",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"module": "lib-es/index.js",
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
"@blaze-cms/core-errors": "^0.118.0",
|
|
32
32
|
"@blaze-cms/image-cdn-react": "0.3.0-alpha.3",
|
|
33
33
|
"@blaze-cms/nextjs-components": "^0.124.0",
|
|
34
|
-
"@blaze-cms/plugin-search-ui": "^0.
|
|
34
|
+
"@blaze-cms/plugin-search-ui": "^0.125.0-alpha.1",
|
|
35
35
|
"@blaze-cms/setup-ui": "^0.92.0",
|
|
36
36
|
"@blaze-cms/utils": "^0.118.0",
|
|
37
37
|
"@blaze-react/breadcrumb": "0.8.0-alpha.60",
|
|
@@ -58,6 +58,7 @@
|
|
|
58
58
|
"react-dfp": "^0.19.0",
|
|
59
59
|
"react-html-parser": "2.0.2",
|
|
60
60
|
"react-jw-player": "^1.19.1",
|
|
61
|
+
"react-player": "^2.10.1",
|
|
61
62
|
"react-waypoint": "^9.0.2",
|
|
62
63
|
"regenerator-runtime": "^0.13.3",
|
|
63
64
|
"uuid": "^3.3.3",
|
|
@@ -85,5 +86,5 @@
|
|
|
85
86
|
"lib/*",
|
|
86
87
|
"lib-es/*"
|
|
87
88
|
],
|
|
88
|
-
"gitHead": "
|
|
89
|
+
"gitHead": "6dd2cf1e5dcf86ad90a48d333e1e517fdd208800"
|
|
89
90
|
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import PropTypes from 'prop-types';
|
|
3
|
+
import ReactPlayer from 'react-player';
|
|
4
|
+
import { VIDEO_WRAPPER_CLASS_NAME } from '../../../../constants';
|
|
5
|
+
|
|
6
|
+
const VimeoProvider = ({ url, autoplay, loop }) => {
|
|
7
|
+
if (!url) return null;
|
|
8
|
+
return (
|
|
9
|
+
<div className={VIDEO_WRAPPER_CLASS_NAME}>
|
|
10
|
+
<ReactPlayer
|
|
11
|
+
url={url}
|
|
12
|
+
config={{
|
|
13
|
+
vimeo: {
|
|
14
|
+
playerOptions: { autoplay: { autoplay }, loop: { loop } }
|
|
15
|
+
}
|
|
16
|
+
}}
|
|
17
|
+
/>
|
|
18
|
+
</div>
|
|
19
|
+
);
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
VimeoProvider.propTypes = {
|
|
23
|
+
url: PropTypes.string.isRequired,
|
|
24
|
+
autoplay: PropTypes.bool,
|
|
25
|
+
loop: PropTypes.bool
|
|
26
|
+
};
|
|
27
|
+
|
|
28
|
+
VimeoProvider.defaultProps = {
|
|
29
|
+
autoplay: false,
|
|
30
|
+
loop: false
|
|
31
|
+
};
|
|
32
|
+
|
|
33
|
+
export default VimeoProvider;
|
|
@@ -7,6 +7,7 @@ const SUPPORTED_PROVIDERS = {
|
|
|
7
7
|
JWPlayer: dynamic(() =>
|
|
8
8
|
import(/* webpackChunkName: "blazePbVideoJWPlayer" */ './JWPlayer/JWPlayerProvider')
|
|
9
9
|
),
|
|
10
|
+
vimeo: dynamic(() => import(/* webpackChunkName: "blazePbVideoVimeo" */ './Vimeo/VimeoProvider')),
|
|
10
11
|
default: dynamic(() => import(/* webpackChunkName: "blazePbVideoDefault" */ './Default'))
|
|
11
12
|
};
|
|
12
13
|
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { render } from '@blaze-cms/tools/test-helpers/test-functions';
|
|
2
|
+
import '@testing-library/jest-dom/extend-expect';
|
|
3
|
+
import VimeoProvider from '../../../../../../../src/components/Video/providers/Vimeo/VimeoProvider';
|
|
4
|
+
|
|
5
|
+
describe('VimeoProvider component', () => {
|
|
6
|
+
const props = { url: 'https://player.vimeo.com/video/XXXXXX' };
|
|
7
|
+
|
|
8
|
+
it('should render without throwing error and match snapshot', async () => {
|
|
9
|
+
const { asFragment } = render(VimeoProvider, props);
|
|
10
|
+
expect(asFragment()).toMatchSnapshot();
|
|
11
|
+
});
|
|
12
|
+
});
|
|
@@ -3,6 +3,7 @@ import getProvider from '../../../../../../src/components/Video/providers';
|
|
|
3
3
|
import YouTubeProvider from '../../../../../../src/components/Video/providers/YouTube/YouTubeProvider';
|
|
4
4
|
import DefaultProvider from '../../../../../../src/components/Video/providers/Default';
|
|
5
5
|
import JWPlayerProvider from '../../../../../../src/components/Video/providers/JWPlayer/JWPlayerProvider';
|
|
6
|
+
import VimeoProvider from '../../../../../../src/components/Video/providers/Vimeo/VimeoProvider';
|
|
6
7
|
|
|
7
8
|
jest.mock('next/dynamic', () => jest.fn(async importFn => (await importFn()).default));
|
|
8
9
|
|
|
@@ -19,6 +20,10 @@ describe('get video provider', () => {
|
|
|
19
20
|
await expectUriToMatchProvider('JWPlayer', JWPlayerProvider);
|
|
20
21
|
});
|
|
21
22
|
|
|
23
|
+
it('should return Vimeo provider', async () => {
|
|
24
|
+
await expectUriToMatchProvider('vimeo', VimeoProvider);
|
|
25
|
+
});
|
|
26
|
+
|
|
22
27
|
it('should return default provider', async () => {
|
|
23
28
|
await expectUriToMatchProvider('default', DefaultProvider);
|
|
24
29
|
await expectUriToMatchProvider('undefined-provider', DefaultProvider);
|