@blaze-cms/react-page-builder 0.124.0-alpha.0 → 0.124.0-alpha.1
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 +197 -0
- package/lib/components/BackToTop/BackToTop.js +94 -0
- package/lib/components/BackToTop/BackToTop.js.map +1 -0
- package/lib/components/BackToTop/index.js +16 -0
- package/lib/components/BackToTop/index.js.map +1 -0
- package/lib/components/Video/Video.js +32 -9
- package/lib/components/Video/Video.js.map +1 -1
- package/lib/components/Video/VideoModal.js +72 -0
- package/lib/components/Video/VideoModal.js.map +1 -0
- package/lib/components/Video/VideoRender.js +2 -2
- package/lib/components/Video/VideoRender.js.map +1 -1
- package/lib/components/Video/providers/JWPlayer/JWPlayerProvider.js +7 -15
- package/lib/components/Video/providers/JWPlayer/JWPlayerProvider.js.map +1 -1
- package/lib/components/Video/providers/YouTube/YouTubeProvider.js +12 -4
- package/lib/components/Video/providers/YouTube/YouTubeProvider.js.map +1 -1
- package/lib/components/Video/providers/YouTube/YoutubeEmbeded.js +23 -14
- package/lib/components/Video/providers/YouTube/YoutubeEmbeded.js.map +1 -1
- package/lib/components/Video/providers/YouTube/helpers/index.js +24 -0
- package/lib/components/Video/providers/YouTube/helpers/index.js.map +1 -1
- package/lib/components/Wrapper.js +10 -3
- package/lib/components/Wrapper.js.map +1 -1
- package/lib/components/index.js +5 -0
- package/lib/components/index.js.map +1 -1
- package/lib/helpers/build-raw-query.js +1 -1
- package/lib/helpers/build-raw-query.js.map +1 -1
- package/lib-es/components/BackToTop/BackToTop.js +50 -0
- package/lib-es/components/BackToTop/BackToTop.js.map +1 -0
- package/lib-es/components/BackToTop/index.js +3 -0
- package/lib-es/components/BackToTop/index.js.map +1 -0
- package/lib-es/components/Video/Video.js +32 -10
- package/lib-es/components/Video/Video.js.map +1 -1
- package/lib-es/components/Video/VideoModal.js +31 -0
- package/lib-es/components/Video/VideoModal.js.map +1 -0
- package/lib-es/components/Video/VideoRender.js +2 -2
- package/lib-es/components/Video/VideoRender.js.map +1 -1
- package/lib-es/components/Video/providers/JWPlayer/JWPlayerProvider.js +6 -11
- package/lib-es/components/Video/providers/JWPlayer/JWPlayerProvider.js.map +1 -1
- package/lib-es/components/Video/providers/YouTube/YouTubeProvider.js +12 -4
- package/lib-es/components/Video/providers/YouTube/YouTubeProvider.js.map +1 -1
- package/lib-es/components/Video/providers/YouTube/YoutubeEmbeded.js +19 -10
- package/lib-es/components/Video/providers/YouTube/YoutubeEmbeded.js.map +1 -1
- package/lib-es/components/Video/providers/YouTube/helpers/index.js +18 -1
- package/lib-es/components/Video/providers/YouTube/helpers/index.js.map +1 -1
- package/lib-es/components/Wrapper.js +15 -9
- package/lib-es/components/Wrapper.js.map +1 -1
- package/lib-es/components/index.js +4 -1
- package/lib-es/components/index.js.map +1 -1
- package/lib-es/helpers/build-raw-query.js +1 -1
- package/lib-es/helpers/build-raw-query.js.map +1 -1
- package/package.json +3 -3
- package/src/components/BackToTop/BackToTop.js +52 -0
- package/src/components/BackToTop/index.js +3 -0
- package/src/components/Video/Video.js +39 -12
- package/src/components/Video/VideoModal.js +31 -0
- package/src/components/Video/VideoRender.js +2 -2
- package/src/components/Video/providers/JWPlayer/JWPlayerProvider.js +6 -9
- package/src/components/Video/providers/YouTube/YouTubeProvider.js +14 -4
- package/src/components/Video/providers/YouTube/YoutubeEmbeded.js +19 -15
- package/src/components/Video/providers/YouTube/helpers/index.js +15 -1
- package/src/components/Wrapper.js +14 -12
- package/src/components/index.js +2 -1
- package/src/helpers/build-raw-query.js +2 -1
- package/tests/helpers/mocks.js +1 -1
- package/tests/unit/src/components/BackToTop/BackToTop.test.js +16 -0
- package/tests/unit/src/components/BackToTop/__snapshots__/BackToTop.test.js.snap +3 -0
- package/tests/unit/src/components/Card/__snapshots__/CardContainer.test.js.snap +3 -0
- package/tests/unit/src/components/Card/__snapshots__/CardRender.test.js.snap +3 -0
- package/tests/unit/src/components/Image/__snapshots__/ImageFactory.test.js.snap +9 -0
- package/tests/unit/src/components/Video/Video.test.js +12 -4
- package/tests/unit/src/components/Video/VideoModal.test.js +15 -0
- package/tests/unit/src/components/Video/__snapshots__/Video.test.js.snap +12 -0
- package/tests/unit/src/components/Video/__snapshots__/VideoModal.test.js.snap +13 -0
- package/tests/unit/src/components/__snapshots__/Wrapper.test.js.snap +3 -0
- package/tests/unit/src/components/__snapshots__/index.test.js.snap +4 -0
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import _extends from "@babel/runtime/helpers/extends";
|
|
2
|
+
import React, { useState } from 'react';
|
|
3
|
+
import Modal from '@blaze-react/modal';
|
|
4
|
+
import VideoRender from './VideoRender';
|
|
5
|
+
|
|
6
|
+
const VideoModal = _ref => {
|
|
7
|
+
let props = _extends({}, _ref);
|
|
8
|
+
|
|
9
|
+
const [displayModal, setDisplayModal] = useState(false);
|
|
10
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
|
|
11
|
+
role: "button",
|
|
12
|
+
onClick: () => {
|
|
13
|
+
setDisplayModal(!displayModal);
|
|
14
|
+
}
|
|
15
|
+
}, /*#__PURE__*/React.createElement(VideoRender, _extends({
|
|
16
|
+
placeholderOnly: true,
|
|
17
|
+
autoplay: false
|
|
18
|
+
}, props))), displayModal && /*#__PURE__*/React.createElement(Modal, {
|
|
19
|
+
className: "modal--video",
|
|
20
|
+
isFullScreen: true,
|
|
21
|
+
showFooter: false,
|
|
22
|
+
isSimple: true,
|
|
23
|
+
onClose: () => setDisplayModal(!displayModal)
|
|
24
|
+
}, /*#__PURE__*/React.createElement(VideoRender, _extends({}, props, {
|
|
25
|
+
placeholderOnly: false,
|
|
26
|
+
autoplay: true
|
|
27
|
+
}))));
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
export default VideoModal;
|
|
31
|
+
//# sourceMappingURL=VideoModal.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/components/Video/VideoModal.js"],"names":["React","useState","Modal","VideoRender","VideoModal","props","displayModal","setDisplayModal"],"mappings":";AAAA,OAAOA,KAAP,IAAgBC,QAAhB,QAAgC,OAAhC;AACA,OAAOC,KAAP,MAAkB,oBAAlB;AACA,OAAOC,WAAP,MAAwB,eAAxB;;AAEA,MAAMC,UAAU,GAAG,QAAkB;AAAA,MAAZC,KAAY;;AACnC,QAAM,CAACC,YAAD,EAAeC,eAAf,IAAkCN,QAAQ,CAAC,KAAD,CAAhD;AAEA,sBACE,uDACE;AACE,IAAA,IAAI,EAAC,QADP;AAEE,IAAA,OAAO,EAAE,MAAM;AACbM,MAAAA,eAAe,CAAC,CAACD,YAAF,CAAf;AACD;AAJH,kBAKE,oBAAC,WAAD;AAAa,IAAA,eAAe,MAA5B;AAA6B,IAAA,QAAQ,EAAE;AAAvC,KAAkDD,KAAlD,EALF,CADF,EAQGC,YAAY,iBACX,oBAAC,KAAD;AACE,IAAA,SAAS,EAAC,cADZ;AAEE,IAAA,YAAY,MAFd;AAGE,IAAA,UAAU,EAAE,KAHd;AAIE,IAAA,QAAQ,MAJV;AAKE,IAAA,OAAO,EAAE,MAAMC,eAAe,CAAC,CAACD,YAAF;AALhC,kBAME,oBAAC,WAAD,eAAiBD,KAAjB;AAAwB,IAAA,eAAe,EAAE,KAAzC;AAAgD,IAAA,QAAQ;AAAxD,KANF,CATJ,CADF;AAqBD,CAxBD;;AA0BA,eAAeD,UAAf","sourcesContent":["import React, { useState } from 'react';\nimport Modal from '@blaze-react/modal';\nimport VideoRender from './VideoRender';\n\nconst VideoModal = ({ ...props }) => {\n const [displayModal, setDisplayModal] = useState(false);\n\n return (\n <>\n <div\n role=\"button\"\n onClick={() => {\n setDisplayModal(!displayModal);\n }}>\n <VideoRender placeholderOnly autoplay={false} {...props} />\n </div>\n {displayModal && (\n <Modal\n className=\"modal--video\"\n isFullScreen\n showFooter={false}\n isSimple\n onClose={() => setDisplayModal(!displayModal)}>\n <VideoRender {...props} placeholderOnly={false} autoplay />\n </Modal>\n )}\n </>\n );\n};\n\nexport default VideoModal;\n"],"file":"VideoModal.js"}
|
|
@@ -9,10 +9,10 @@ const VideoRender = _ref => {
|
|
|
9
9
|
let {
|
|
10
10
|
provider
|
|
11
11
|
} = _ref,
|
|
12
|
-
|
|
12
|
+
props = _objectWithoutProperties(_ref, _excluded);
|
|
13
13
|
|
|
14
14
|
const Provider = getProvider(provider);
|
|
15
|
-
return /*#__PURE__*/React.createElement(Provider,
|
|
15
|
+
return /*#__PURE__*/React.createElement(Provider, props);
|
|
16
16
|
};
|
|
17
17
|
|
|
18
18
|
VideoRender.propTypes = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/Video/VideoRender.js"],"names":["React","PropTypes","getProvider","withTitle","VideoRender","provider","
|
|
1
|
+
{"version":3,"sources":["../../../src/components/Video/VideoRender.js"],"names":["React","PropTypes","getProvider","withTitle","VideoRender","provider","props","Provider","propTypes","string","isRequired"],"mappings":";;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,WAAP,MAAwB,aAAxB;AACA,SAASC,SAAT,QAA0B,WAA1B;;AAEA,MAAMC,WAAW,GAAG,QAA4B;AAAA,MAA3B;AAAEC,IAAAA;AAAF,GAA2B;AAAA,MAAZC,KAAY;;AAC9C,QAAMC,QAAQ,GAAGL,WAAW,CAACG,QAAD,CAA5B;AACA,sBAAO,oBAAC,QAAD,EAAcC,KAAd,CAAP;AACD,CAHD;;AAKAF,WAAW,CAACI,SAAZ,GAAwB;AACtBH,EAAAA,QAAQ,EAAEJ,SAAS,CAACQ,MAAV,CAAiBC;AADL,CAAxB;AAIA,eAAeP,SAAS,CAACC,WAAD,CAAxB","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport getProvider from './providers';\nimport { withTitle } from '../../HOC';\n\nconst VideoRender = ({ provider, ...props }) => {\n const Provider = getProvider(provider);\n return <Provider {...props} />;\n};\n\nVideoRender.propTypes = {\n provider: PropTypes.string.isRequired\n};\n\nexport default withTitle(VideoRender);\n"],"file":"VideoRender.js"}
|
|
@@ -7,7 +7,6 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
|
|
|
7
7
|
import React from 'react';
|
|
8
8
|
import PropTypes from 'prop-types';
|
|
9
9
|
import ReactJWPlayer from 'react-jw-player';
|
|
10
|
-
import useGetImages from '../../../../hooks/use-get-images';
|
|
11
10
|
import { JW_PLAYER_TYPE_FILE, VIDEO_WRAPPER_CLASS_NAME } from '../../../../constants';
|
|
12
11
|
import JWPlayerController from './JWPlayerController';
|
|
13
12
|
const PlayerController = new JWPlayerController();
|
|
@@ -20,15 +19,9 @@ const JWPlayerProvider = ({
|
|
|
20
19
|
type,
|
|
21
20
|
urlScript,
|
|
22
21
|
muted,
|
|
23
|
-
|
|
22
|
+
imageData,
|
|
24
23
|
loop: repeat
|
|
25
24
|
}) => {
|
|
26
|
-
const {
|
|
27
|
-
data,
|
|
28
|
-
loading
|
|
29
|
-
} = useGetImages(imageId);
|
|
30
|
-
if (loading) return null;
|
|
31
|
-
|
|
32
25
|
const handleOnReady = () => {
|
|
33
26
|
const jwPlayer = window.jwplayer(name);
|
|
34
27
|
|
|
@@ -58,7 +51,7 @@ const JWPlayerProvider = ({
|
|
|
58
51
|
if (type === JW_PLAYER_TYPE_FILE) {
|
|
59
52
|
const {
|
|
60
53
|
url: imageURL = ''
|
|
61
|
-
} =
|
|
54
|
+
} = imageData;
|
|
62
55
|
return _objectSpread(_objectSpread({}, props), {}, {
|
|
63
56
|
image: imageURL,
|
|
64
57
|
file: url
|
|
@@ -82,7 +75,8 @@ JWPlayerProvider.propTypes = {
|
|
|
82
75
|
loop: PropTypes.bool,
|
|
83
76
|
controls: PropTypes.bool,
|
|
84
77
|
muted: PropTypes.bool,
|
|
85
|
-
type: PropTypes.string
|
|
78
|
+
type: PropTypes.string,
|
|
79
|
+
imageData: PropTypes.object
|
|
86
80
|
};
|
|
87
81
|
JWPlayerProvider.defaultProps = {
|
|
88
82
|
autoplay: false,
|
|
@@ -90,7 +84,8 @@ JWPlayerProvider.defaultProps = {
|
|
|
90
84
|
controls: true,
|
|
91
85
|
muted: false,
|
|
92
86
|
type: 'playlist',
|
|
93
|
-
imageId: null
|
|
87
|
+
imageId: null,
|
|
88
|
+
imageData: {}
|
|
94
89
|
};
|
|
95
90
|
export default JWPlayerProvider;
|
|
96
91
|
//# sourceMappingURL=JWPlayerProvider.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/components/Video/providers/JWPlayer/JWPlayerProvider.js"],"names":["React","PropTypes","ReactJWPlayer","
|
|
1
|
+
{"version":3,"sources":["../../../../../src/components/Video/providers/JWPlayer/JWPlayerProvider.js"],"names":["React","PropTypes","ReactJWPlayer","JW_PLAYER_TYPE_FILE","VIDEO_WRAPPER_CLASS_NAME","JWPlayerController","PlayerController","JWPlayerProvider","url","name","autoplay","controls","type","urlScript","muted","imageData","loop","repeat","handleOnReady","jwPlayer","window","jwplayer","setPlayer","getJWPlayerProps","events","props","customProps","playerScript","isAutoPlay","isMuted","playerId","onReady","className","imageURL","image","file","playlist","propTypes","string","isRequired","imageId","bool","object","defaultProps"],"mappings":";;;;;;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,aAAP,MAA0B,iBAA1B;AACA,SAASC,mBAAT,EAA8BC,wBAA9B,QAA8D,uBAA9D;AACA,OAAOC,kBAAP,MAA+B,sBAA/B;AAEA,MAAMC,gBAAgB,GAAG,IAAID,kBAAJ,EAAzB;;AAEA,MAAME,gBAAgB,GAAG,CAAC;AACxBC,EAAAA,GADwB;AAExBC,EAAAA,IAFwB;AAGxBC,EAAAA,QAHwB;AAIxBC,EAAAA,QAJwB;AAKxBC,EAAAA,IALwB;AAMxBC,EAAAA,SANwB;AAOxBC,EAAAA,KAPwB;AAQxBC,EAAAA,SARwB;AASxBC,EAAAA,IAAI,EAAEC;AATkB,CAAD,KAUnB;AACJ,QAAMC,aAAa,GAAG,MAAM;AAC1B,UAAMC,QAAQ,GAAGC,MAAM,CAACC,QAAP,CAAgBZ,IAAhB,CAAjB;;AACA,QAAIU,QAAJ,EAAc;AACZb,MAAAA,gBAAgB,CAACgB,SAAjB,CAA2BH,QAA3B;AACD;AACF,GALD;;AAOA,QAAMI,gBAAgB,GAAG,MAAM;AAC7B,UAAM;AAAEC,MAAAA;AAAF,QAAalB,gBAAnB;AAEA,UAAMmB,KAAK,GAAG;AACZC,MAAAA,WAAW,EAAE;AAAET,QAAAA,MAAF;AAAUN,QAAAA,QAAV;AAAoBa,QAAAA;AAApB,OADD;AAEZG,MAAAA,YAAY,EAAEd,SAFF;AAGZe,MAAAA,UAAU,EAAElB,QAHA;AAIZmB,MAAAA,OAAO,EAAEf,KAJG;AAKZgB,MAAAA,QAAQ,EAAErB,IALE;AAMZsB,MAAAA,OAAO,EAAEb,aANG;AAOZc,MAAAA,SAAS,EAAE5B;AAPC,KAAd;;AAUA,QAAIQ,IAAI,KAAKT,mBAAb,EAAkC;AAChC,YAAM;AAAEK,QAAAA,GAAG,EAAEyB,QAAQ,GAAG;AAAlB,UAAyBlB,SAA/B;AACA,6CAAYU,KAAZ;AAAmBS,QAAAA,KAAK,EAAED,QAA1B;AAAoCE,QAAAA,IAAI,EAAE3B;AAA1C;AACD;;AAED,2CAAYiB,KAAZ;AAAmBW,MAAAA,QAAQ,EAAE5B;AAA7B;AACD,GAnBD;;AAqBA,sBAAO,oBAAC,aAAD,EAAmBe,gBAAgB,EAAnC,CAAP;AACD,CAxCD;;AA0CAhB,gBAAgB,CAAC8B,SAAjB,GAA6B;AAC3B7B,EAAAA,GAAG,EAAEP,SAAS,CAACqC,MAAV,CAAiBC,UADK;AAE3B9B,EAAAA,IAAI,EAAER,SAAS,CAACqC,MAAV,CAAiBC,UAFI;AAG3B1B,EAAAA,SAAS,EAAEZ,SAAS,CAACqC,MAAV,CAAiBC,UAHD;AAI3BC,EAAAA,OAAO,EAAEvC,SAAS,CAACqC,MAJQ;AAK3B5B,EAAAA,QAAQ,EAAET,SAAS,CAACwC,IALO;AAM3BzB,EAAAA,IAAI,EAAEf,SAAS,CAACwC,IANW;AAO3B9B,EAAAA,QAAQ,EAAEV,SAAS,CAACwC,IAPO;AAQ3B3B,EAAAA,KAAK,EAAEb,SAAS,CAACwC,IARU;AAS3B7B,EAAAA,IAAI,EAAEX,SAAS,CAACqC,MATW;AAU3BvB,EAAAA,SAAS,EAAEd,SAAS,CAACyC;AAVM,CAA7B;AAaAnC,gBAAgB,CAACoC,YAAjB,GAAgC;AAC9BjC,EAAAA,QAAQ,EAAE,KADoB;AAE9BM,EAAAA,IAAI,EAAE,KAFwB;AAG9BL,EAAAA,QAAQ,EAAE,IAHoB;AAI9BG,EAAAA,KAAK,EAAE,KAJuB;AAK9BF,EAAAA,IAAI,EAAE,UALwB;AAM9B4B,EAAAA,OAAO,EAAE,IANqB;AAO9BzB,EAAAA,SAAS,EAAE;AAPmB,CAAhC;AAUA,eAAeR,gBAAf","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport ReactJWPlayer from 'react-jw-player';\nimport { JW_PLAYER_TYPE_FILE, VIDEO_WRAPPER_CLASS_NAME } from '../../../../constants';\nimport JWPlayerController from './JWPlayerController';\n\nconst PlayerController = new JWPlayerController();\n\nconst JWPlayerProvider = ({\n url,\n name,\n autoplay,\n controls,\n type,\n urlScript,\n muted,\n imageData,\n loop: repeat\n}) => {\n const handleOnReady = () => {\n const jwPlayer = window.jwplayer(name);\n if (jwPlayer) {\n PlayerController.setPlayer(jwPlayer);\n }\n };\n\n const getJWPlayerProps = () => {\n const { events } = PlayerController;\n\n const props = {\n customProps: { repeat, controls, events },\n playerScript: urlScript,\n isAutoPlay: autoplay,\n isMuted: muted,\n playerId: name,\n onReady: handleOnReady,\n className: VIDEO_WRAPPER_CLASS_NAME\n };\n\n if (type === JW_PLAYER_TYPE_FILE) {\n const { url: imageURL = '' } = imageData;\n return { ...props, image: imageURL, file: url };\n }\n\n return { ...props, playlist: url };\n };\n\n return <ReactJWPlayer {...getJWPlayerProps()} />;\n};\n\nJWPlayerProvider.propTypes = {\n url: PropTypes.string.isRequired,\n name: PropTypes.string.isRequired,\n urlScript: PropTypes.string.isRequired,\n imageId: PropTypes.string,\n autoplay: PropTypes.bool,\n loop: PropTypes.bool,\n controls: PropTypes.bool,\n muted: PropTypes.bool,\n type: PropTypes.string,\n imageData: PropTypes.object\n};\n\nJWPlayerProvider.defaultProps = {\n autoplay: false,\n loop: false,\n controls: true,\n muted: false,\n type: 'playlist',\n imageId: null,\n imageData: {}\n};\n\nexport default JWPlayerProvider;\n"],"file":"JWPlayerProvider.js"}
|
|
@@ -7,7 +7,9 @@ import { VIDEO_WRAPPER_CLASS_NAME } from '../../../../constants';
|
|
|
7
7
|
const YouTubeProvider = ({
|
|
8
8
|
url,
|
|
9
9
|
autoplay,
|
|
10
|
-
loop
|
|
10
|
+
loop,
|
|
11
|
+
placeholderOnly,
|
|
12
|
+
imageData
|
|
11
13
|
}) => {
|
|
12
14
|
const videoId = getYouTubeID(url);
|
|
13
15
|
if (!videoId) return null;
|
|
@@ -17,18 +19,24 @@ const YouTubeProvider = ({
|
|
|
17
19
|
}, /*#__PURE__*/React.createElement(YoutubeEmbeded, {
|
|
18
20
|
autoplay: autoplay,
|
|
19
21
|
videoId: videoId,
|
|
20
|
-
params: params
|
|
22
|
+
params: params,
|
|
23
|
+
placeholderOnly: placeholderOnly,
|
|
24
|
+
imageData: imageData
|
|
21
25
|
}));
|
|
22
26
|
};
|
|
23
27
|
|
|
24
28
|
YouTubeProvider.propTypes = {
|
|
25
29
|
url: PropTypes.string.isRequired,
|
|
26
30
|
autoplay: PropTypes.bool,
|
|
27
|
-
loop: PropTypes.bool
|
|
31
|
+
loop: PropTypes.bool,
|
|
32
|
+
placeholderOnly: PropTypes.bool,
|
|
33
|
+
imageData: PropTypes.object
|
|
28
34
|
};
|
|
29
35
|
YouTubeProvider.defaultProps = {
|
|
30
36
|
autoplay: false,
|
|
31
|
-
loop: false
|
|
37
|
+
loop: false,
|
|
38
|
+
placeholderOnly: false,
|
|
39
|
+
imageData: {}
|
|
32
40
|
};
|
|
33
41
|
export default YouTubeProvider;
|
|
34
42
|
//# sourceMappingURL=YouTubeProvider.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/components/Video/providers/YouTube/YouTubeProvider.js"],"names":["React","PropTypes","YoutubeEmbeded","getYouTubeID","booleanToNumber","VIDEO_WRAPPER_CLASS_NAME","YouTubeProvider","url","autoplay","loop","videoId","params","propTypes","string","isRequired","bool","defaultProps"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,cAAP,MAA2B,kBAA3B;AACA,SAASC,YAAT,EAAuBC,eAAvB,QAA8C,WAA9C;AACA,SAASC,wBAAT,QAAyC,uBAAzC;;AAEA,MAAMC,eAAe,GAAG,CAAC;AAAEC,EAAAA,GAAF;AAAOC,EAAAA,QAAP;AAAiBC,EAAAA;
|
|
1
|
+
{"version":3,"sources":["../../../../../src/components/Video/providers/YouTube/YouTubeProvider.js"],"names":["React","PropTypes","YoutubeEmbeded","getYouTubeID","booleanToNumber","VIDEO_WRAPPER_CLASS_NAME","YouTubeProvider","url","autoplay","loop","placeholderOnly","imageData","videoId","params","propTypes","string","isRequired","bool","object","defaultProps"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,cAAP,MAA2B,kBAA3B;AACA,SAASC,YAAT,EAAuBC,eAAvB,QAA8C,WAA9C;AACA,SAASC,wBAAT,QAAyC,uBAAzC;;AAEA,MAAMC,eAAe,GAAG,CAAC;AAAEC,EAAAA,GAAF;AAAOC,EAAAA,QAAP;AAAiBC,EAAAA,IAAjB;AAAuBC,EAAAA,eAAvB;AAAwCC,EAAAA;AAAxC,CAAD,KAAyD;AAC/E,QAAMC,OAAO,GAAGT,YAAY,CAACI,GAAD,CAA5B;AAEA,MAAI,CAACK,OAAL,EAAc,OAAO,IAAP;AACd,QAAMC,MAAM,GAAI,QAAOT,eAAe,CAACK,IAAD,CAAO,EAA7C;AAEA,sBACE;AAAK,IAAA,SAAS,EAAEJ;AAAhB,kBACE,oBAAC,cAAD;AACE,IAAA,QAAQ,EAAEG,QADZ;AAEE,IAAA,OAAO,EAAEI,OAFX;AAGE,IAAA,MAAM,EAAEC,MAHV;AAIE,IAAA,eAAe,EAAEH,eAJnB;AAKE,IAAA,SAAS,EAAEC;AALb,IADF,CADF;AAWD,CAjBD;;AAmBAL,eAAe,CAACQ,SAAhB,GAA4B;AAC1BP,EAAAA,GAAG,EAAEN,SAAS,CAACc,MAAV,CAAiBC,UADI;AAE1BR,EAAAA,QAAQ,EAAEP,SAAS,CAACgB,IAFM;AAG1BR,EAAAA,IAAI,EAAER,SAAS,CAACgB,IAHU;AAI1BP,EAAAA,eAAe,EAAET,SAAS,CAACgB,IAJD;AAK1BN,EAAAA,SAAS,EAAEV,SAAS,CAACiB;AALK,CAA5B;AAQAZ,eAAe,CAACa,YAAhB,GAA+B;AAC7BX,EAAAA,QAAQ,EAAE,KADmB;AAE7BC,EAAAA,IAAI,EAAE,KAFuB;AAG7BC,EAAAA,eAAe,EAAE,KAHY;AAI7BC,EAAAA,SAAS,EAAE;AAJkB,CAA/B;AAOA,eAAeL,eAAf","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport YoutubeEmbeded from './YoutubeEmbeded';\nimport { getYouTubeID, booleanToNumber } from './helpers';\nimport { VIDEO_WRAPPER_CLASS_NAME } from '../../../../constants';\n\nconst YouTubeProvider = ({ url, autoplay, loop, placeholderOnly, imageData }) => {\n const videoId = getYouTubeID(url);\n\n if (!videoId) return null;\n const params = `loop=${booleanToNumber(loop)}`;\n\n return (\n <div className={VIDEO_WRAPPER_CLASS_NAME}>\n <YoutubeEmbeded\n autoplay={autoplay}\n videoId={videoId}\n params={params}\n placeholderOnly={placeholderOnly}\n imageData={imageData}\n />\n </div>\n );\n};\n\nYouTubeProvider.propTypes = {\n url: PropTypes.string.isRequired,\n autoplay: PropTypes.bool,\n loop: PropTypes.bool,\n placeholderOnly: PropTypes.bool,\n imageData: PropTypes.object\n};\n\nYouTubeProvider.defaultProps = {\n autoplay: false,\n loop: false,\n placeholderOnly: false,\n imageData: {}\n};\n\nexport default YouTubeProvider;\n"],"file":"YouTubeProvider.js"}
|
|
@@ -2,8 +2,7 @@ import React, { useState, useEffect } from 'react';
|
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
3
|
import { useInView } from '@blaze-react/utils/lib/customHooks';
|
|
4
4
|
import { IN_VIEW_CONFIG } from '../../../../constants';
|
|
5
|
-
|
|
6
|
-
const YT_IMAGE_URL = 'https://i.ytimg.com';
|
|
5
|
+
import { getPosterUrl, YT_HQ_FORMAT, YT_IMAGE_URL } from './helpers';
|
|
7
6
|
|
|
8
7
|
const YoutubeEmbeded = ({
|
|
9
8
|
autoplay,
|
|
@@ -20,7 +19,9 @@ const YoutubeEmbeded = ({
|
|
|
20
19
|
muted,
|
|
21
20
|
adNetwork,
|
|
22
21
|
iframeClass,
|
|
23
|
-
priority
|
|
22
|
+
priority,
|
|
23
|
+
placeholderOnly,
|
|
24
|
+
imageData
|
|
24
25
|
}) => {
|
|
25
26
|
const [isIntersecting, outerRef] = useInView(IN_VIEW_CONFIG);
|
|
26
27
|
const [preconnected, setPreconnected] = useState(false);
|
|
@@ -33,12 +34,16 @@ const YoutubeEmbeded = ({
|
|
|
33
34
|
displayImage: priority
|
|
34
35
|
});
|
|
35
36
|
const encodedId = encodeURIComponent(videoId);
|
|
36
|
-
const videoPlaylisCovertId = typeof playlistCoverId === 'string' ? encodeURIComponent(playlistCoverId) : null;
|
|
37
37
|
const paramsImp = videoParams ? `&${videoParams}` : '';
|
|
38
|
-
const format = webp ? 'webp' : 'jpg';
|
|
39
|
-
const vi = webp ? 'vi_webp' : 'vi';
|
|
40
|
-
const posterUrl = !playlist ? `${YT_IMAGE_URL}/${vi}/${encodedId}/${imageSize}.${format}` : `${YT_IMAGE_URL}/${vi}/${videoPlaylisCovertId}/${imageSize}.${format}`;
|
|
41
38
|
const ytUrl = noCookie ? 'https://www.youtube-nocookie.com' : 'https://www.youtube.com';
|
|
39
|
+
const posterUrl = getPosterUrl({
|
|
40
|
+
imageData,
|
|
41
|
+
playlistCoverId,
|
|
42
|
+
playlist,
|
|
43
|
+
encodedId,
|
|
44
|
+
imageSize,
|
|
45
|
+
webp
|
|
46
|
+
});
|
|
42
47
|
const mutedValue = muted ? '&mute=1' : '';
|
|
43
48
|
const iframeSrc = !playlist ? `${ytUrl}/embed/${encodedId}?autoplay=1${mutedValue}${paramsImp}` : `${ytUrl}/embed/videoseries?autoplay=1${mutedValue}&list=${encodedId}${paramsImp}`;
|
|
44
49
|
const parsedWrapperClassname = `yt-facade ${renderIframe ? 'yt-activated' : ''}`;
|
|
@@ -64,7 +69,7 @@ const YoutubeEmbeded = ({
|
|
|
64
69
|
};
|
|
65
70
|
|
|
66
71
|
const addIframe = () => {
|
|
67
|
-
if (renderIframe) return;
|
|
72
|
+
if (renderIframe || placeholderOnly) return;
|
|
68
73
|
onIframeAdded();
|
|
69
74
|
setRenderIframe(true);
|
|
70
75
|
};
|
|
@@ -124,7 +129,9 @@ YoutubeEmbeded.propTypes = {
|
|
|
124
129
|
announce: PropTypes.string,
|
|
125
130
|
playlistCoverId: PropTypes.string,
|
|
126
131
|
videoParams: PropTypes.string,
|
|
127
|
-
videoTitle: PropTypes.string
|
|
132
|
+
videoTitle: PropTypes.string,
|
|
133
|
+
placeholderOnly: PropTypes.bool,
|
|
134
|
+
imageData: PropTypes.object
|
|
128
135
|
};
|
|
129
136
|
YoutubeEmbeded.defaultProps = {
|
|
130
137
|
priority: true,
|
|
@@ -141,7 +148,9 @@ YoutubeEmbeded.defaultProps = {
|
|
|
141
148
|
videoId: '',
|
|
142
149
|
playlistCoverId: '',
|
|
143
150
|
videoParams: '',
|
|
144
|
-
videoTitle: ''
|
|
151
|
+
videoTitle: '',
|
|
152
|
+
placeholderOnly: false,
|
|
153
|
+
imageData: {}
|
|
145
154
|
};
|
|
146
155
|
export default YoutubeEmbeded;
|
|
147
156
|
//# sourceMappingURL=YoutubeEmbeded.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/components/Video/providers/YouTube/YoutubeEmbeded.js"],"names":["React","useState","useEffect","PropTypes","useInView","IN_VIEW_CONFIG","YT_HQ_FORMAT","YT_IMAGE_URL","YoutubeEmbeded","autoplay","videoId","playlistCoverId","videoTitle","poster","videoParams","announce","noCookie","webp","playlist","onIframeAdded","muted","adNetwork","iframeClass","priority","isIntersecting","outerRef","preconnected","setPreconnected","renderIframe","setRenderIframe","imageSize","displayImage","setImageDetails","encodedId","encodeURIComponent","videoPlaylisCovertId","paramsImp","format","vi","posterUrl","ytUrl","mutedValue","iframeSrc","parsedWrapperClassname","img","Image","onload","newImageSize","width","src","warmConnections","addIframe","backgroundImage","propTypes","bool","func","string","defaultProps"],"mappings":"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","sourcesContent":["import React, { useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport { useInView } from '@blaze-react/utils/lib/customHooks';\nimport { IN_VIEW_CONFIG } from '../../../../constants';\n\nconst YT_HQ_FORMAT = 'hqdefault';\nconst YT_IMAGE_URL = 'https://i.ytimg.com';\n\nconst YoutubeEmbeded = ({\n autoplay,\n videoId,\n playlistCoverId,\n videoTitle,\n poster,\n videoParams,\n announce,\n noCookie,\n webp,\n playlist,\n onIframeAdded,\n muted,\n adNetwork,\n iframeClass,\n priority\n}) => {\n const [isIntersecting, outerRef] = useInView(IN_VIEW_CONFIG);\n const [preconnected, setPreconnected] = useState(false);\n const [renderIframe, setRenderIframe] = useState(!!autoplay);\n const [{ imageSize, displayImage }, setImageDetails] = useState({\n imageSize: poster,\n displayImage: priority\n });\n\n const encodedId = encodeURIComponent(videoId);\n const videoPlaylisCovertId =\n typeof playlistCoverId === 'string' ? encodeURIComponent(playlistCoverId) : null;\n const paramsImp = videoParams ? `&${videoParams}` : '';\n const format = webp ? 'webp' : 'jpg';\n const vi = webp ? 'vi_webp' : 'vi';\n const posterUrl = !playlist\n ? `${YT_IMAGE_URL}/${vi}/${encodedId}/${imageSize}.${format}`\n : `${YT_IMAGE_URL}/${vi}/${videoPlaylisCovertId}/${imageSize}.${format}`;\n const ytUrl = noCookie ? 'https://www.youtube-nocookie.com' : 'https://www.youtube.com';\n\n const mutedValue = muted ? '&mute=1' : '';\n const iframeSrc = !playlist\n ? `${ytUrl}/embed/${encodedId}?autoplay=1${mutedValue}${paramsImp}`\n : `${ytUrl}/embed/videoseries?autoplay=1${mutedValue}&list=${encodedId}${paramsImp}`;\n const parsedWrapperClassname = `yt-facade ${renderIframe ? 'yt-activated' : ''}`;\n\n useEffect(\n () => {\n if ((!priority && !isIntersecting) || imageSize === YT_HQ_FORMAT) return;\n\n const img = new Image();\n // eslint-disable-next-line func-names\n img.onload = function() {\n let newImageSize = imageSize;\n if (this && this.width === 120) newImageSize = YT_HQ_FORMAT;\n setImageDetails({ imageSize: newImageSize, displayImage: true });\n };\n\n img.src = posterUrl;\n },\n [imageSize, isIntersecting, posterUrl, priority]\n );\n\n const warmConnections = () => {\n if (preconnected) return;\n setPreconnected(true);\n };\n\n const addIframe = () => {\n if (renderIframe) return;\n onIframeAdded();\n setRenderIframe(true);\n };\n\n return (\n <>\n {preconnected && (\n <>\n <link rel=\"preconnect\" href={YT_IMAGE_URL} />\n <link rel=\"preconnect\" href={ytUrl} />\n <link rel=\"preconnect\" href=\"https://www.google.com\" />\n {adNetwork && (\n <>\n <link rel=\"preconnect\" href=\"https://static.doubleclick.net\" />\n <link rel=\"preconnect\" href=\"https://googleads.g.doubleclick.net\" />\n </>\n )}\n </>\n )}\n <div\n ref={outerRef}\n role=\"button\"\n onPointerOver={warmConnections}\n onClick={addIframe}\n className={parsedWrapperClassname}\n data-title={videoTitle}\n style={{\n backgroundImage: `url(${displayImage ? posterUrl : ''})`\n }}>\n <div\n type=\"button\"\n className=\"yt-facade-button-wrapper\"\n aria-label={`${announce} ${videoTitle}`}>\n <div className=\"yt-facade-button\" />\n </div>\n {renderIframe && (\n <iframe\n className={iframeClass}\n title={videoTitle}\n allow=\"accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture\"\n allowFullScreen\n src={iframeSrc}\n />\n )}\n </div>\n </>\n );\n};\n\nYoutubeEmbeded.propTypes = {\n priority: PropTypes.bool,\n onIframeAdded: PropTypes.func,\n adNetwork: PropTypes.bool,\n autoplay: PropTypes.bool,\n playlist: PropTypes.bool,\n muted: PropTypes.bool,\n webp: PropTypes.bool,\n noCookie: PropTypes.bool,\n videoId: PropTypes.string,\n iframeClass: PropTypes.string,\n poster: PropTypes.string,\n announce: PropTypes.string,\n playlistCoverId: PropTypes.string,\n videoParams: PropTypes.string,\n videoTitle: PropTypes.string\n};\n\nYoutubeEmbeded.defaultProps = {\n priority: true,\n onIframeAdded: () => {},\n adNetwork: false,\n autoplay: false,\n playlist: false,\n muted: false,\n webp: false,\n noCookie: false,\n iframeClass: '',\n poster: 'sddefault',\n announce: 'Watch',\n videoId: '',\n playlistCoverId: '',\n videoParams: '',\n videoTitle: ''\n};\n\nexport default YoutubeEmbeded;\n"],"file":"YoutubeEmbeded.js"}
|
|
1
|
+
{"version":3,"sources":["../../../../../src/components/Video/providers/YouTube/YoutubeEmbeded.js"],"names":["React","useState","useEffect","PropTypes","useInView","IN_VIEW_CONFIG","getPosterUrl","YT_HQ_FORMAT","YT_IMAGE_URL","YoutubeEmbeded","autoplay","videoId","playlistCoverId","videoTitle","poster","videoParams","announce","noCookie","webp","playlist","onIframeAdded","muted","adNetwork","iframeClass","priority","placeholderOnly","imageData","isIntersecting","outerRef","preconnected","setPreconnected","renderIframe","setRenderIframe","imageSize","displayImage","setImageDetails","encodedId","encodeURIComponent","paramsImp","ytUrl","posterUrl","mutedValue","iframeSrc","parsedWrapperClassname","img","Image","onload","newImageSize","width","src","warmConnections","addIframe","backgroundImage","propTypes","bool","func","string","object","defaultProps"],"mappings":"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","sourcesContent":["import React, { useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport { useInView } from '@blaze-react/utils/lib/customHooks';\nimport { IN_VIEW_CONFIG } from '../../../../constants';\nimport { getPosterUrl, YT_HQ_FORMAT, YT_IMAGE_URL } from './helpers';\n\nconst YoutubeEmbeded = ({\n autoplay,\n videoId,\n playlistCoverId,\n videoTitle,\n poster,\n videoParams,\n announce,\n noCookie,\n webp,\n playlist,\n onIframeAdded,\n muted,\n adNetwork,\n iframeClass,\n priority,\n placeholderOnly,\n imageData\n}) => {\n const [isIntersecting, outerRef] = useInView(IN_VIEW_CONFIG);\n const [preconnected, setPreconnected] = useState(false);\n const [renderIframe, setRenderIframe] = useState(!!autoplay);\n const [{ imageSize, displayImage }, setImageDetails] = useState({\n imageSize: poster,\n displayImage: priority\n });\n\n const encodedId = encodeURIComponent(videoId);\n const paramsImp = videoParams ? `&${videoParams}` : '';\n const ytUrl = noCookie ? 'https://www.youtube-nocookie.com' : 'https://www.youtube.com';\n const posterUrl = getPosterUrl({\n imageData,\n playlistCoverId,\n playlist,\n encodedId,\n imageSize,\n webp\n });\n const mutedValue = muted ? '&mute=1' : '';\n const iframeSrc = !playlist\n ? `${ytUrl}/embed/${encodedId}?autoplay=1${mutedValue}${paramsImp}`\n : `${ytUrl}/embed/videoseries?autoplay=1${mutedValue}&list=${encodedId}${paramsImp}`;\n const parsedWrapperClassname = `yt-facade ${renderIframe ? 'yt-activated' : ''}`;\n\n useEffect(\n () => {\n if ((!priority && !isIntersecting) || imageSize === YT_HQ_FORMAT) return;\n\n const img = new Image();\n // eslint-disable-next-line func-names\n img.onload = function() {\n let newImageSize = imageSize;\n if (this && this.width === 120) newImageSize = YT_HQ_FORMAT;\n setImageDetails({ imageSize: newImageSize, displayImage: true });\n };\n\n img.src = posterUrl;\n },\n [imageSize, isIntersecting, posterUrl, priority]\n );\n\n const warmConnections = () => {\n if (preconnected) return;\n setPreconnected(true);\n };\n\n const addIframe = () => {\n if (renderIframe || placeholderOnly) return;\n onIframeAdded();\n setRenderIframe(true);\n };\n\n return (\n <>\n {preconnected && (\n <>\n <link rel=\"preconnect\" href={YT_IMAGE_URL} />\n <link rel=\"preconnect\" href={ytUrl} />\n <link rel=\"preconnect\" href=\"https://www.google.com\" />\n {adNetwork && (\n <>\n <link rel=\"preconnect\" href=\"https://static.doubleclick.net\" />\n <link rel=\"preconnect\" href=\"https://googleads.g.doubleclick.net\" />\n </>\n )}\n </>\n )}\n <div\n ref={outerRef}\n role=\"button\"\n onPointerOver={warmConnections}\n onClick={addIframe}\n className={parsedWrapperClassname}\n data-title={videoTitle}\n style={{\n backgroundImage: `url(${displayImage ? posterUrl : ''})`\n }}>\n <div\n type=\"button\"\n className=\"yt-facade-button-wrapper\"\n aria-label={`${announce} ${videoTitle}`}>\n <div className=\"yt-facade-button\" />\n </div>\n {renderIframe && (\n <iframe\n className={iframeClass}\n title={videoTitle}\n allow=\"accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture\"\n allowFullScreen\n src={iframeSrc}\n />\n )}\n </div>\n </>\n );\n};\n\nYoutubeEmbeded.propTypes = {\n priority: PropTypes.bool,\n onIframeAdded: PropTypes.func,\n adNetwork: PropTypes.bool,\n autoplay: PropTypes.bool,\n playlist: PropTypes.bool,\n muted: PropTypes.bool,\n webp: PropTypes.bool,\n noCookie: PropTypes.bool,\n videoId: PropTypes.string,\n iframeClass: PropTypes.string,\n poster: PropTypes.string,\n announce: PropTypes.string,\n playlistCoverId: PropTypes.string,\n videoParams: PropTypes.string,\n videoTitle: PropTypes.string,\n placeholderOnly: PropTypes.bool,\n imageData: PropTypes.object\n};\n\nYoutubeEmbeded.defaultProps = {\n priority: true,\n onIframeAdded: () => {},\n adNetwork: false,\n autoplay: false,\n playlist: false,\n muted: false,\n webp: false,\n noCookie: false,\n iframeClass: '',\n poster: 'sddefault',\n announce: 'Watch',\n videoId: '',\n playlistCoverId: '',\n videoParams: '',\n videoTitle: '',\n placeholderOnly: false,\n imageData: {}\n};\n\nexport default YoutubeEmbeded;\n"],"file":"YoutubeEmbeded.js"}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
const YOUTUBE_REGEX = /^.*((m\.)?youtu\.be\/|vi?\/|u\/\w\/|embed\/|\?vi?=|\&vi?=)([^#\&\?]*).*/;
|
|
2
|
+
const YT_IMAGE_URL = 'https://i.ytimg.com';
|
|
3
|
+
const YT_HQ_FORMAT = 'hqdefault';
|
|
2
4
|
|
|
3
5
|
function getYouTubeID(uri) {
|
|
4
6
|
const [,,, videoId] = uri.match(YOUTUBE_REGEX) || [];
|
|
@@ -9,5 +11,20 @@ function booleanToNumber(flag) {
|
|
|
9
11
|
return flag ? 1 : 0;
|
|
10
12
|
}
|
|
11
13
|
|
|
12
|
-
|
|
14
|
+
const getPosterUrl = ({
|
|
15
|
+
imageData,
|
|
16
|
+
playlistCoverId,
|
|
17
|
+
playlist,
|
|
18
|
+
encodedId,
|
|
19
|
+
imageSize,
|
|
20
|
+
webp
|
|
21
|
+
}) => {
|
|
22
|
+
if (imageData && imageData.url) return imageData.url;
|
|
23
|
+
const videoPlaylisCovertId = typeof playlistCoverId === 'string' ? encodeURIComponent(playlistCoverId) : null;
|
|
24
|
+
const format = webp ? 'webp' : 'jpg';
|
|
25
|
+
const vi = webp ? 'vi_webp' : 'vi';
|
|
26
|
+
return !playlist ? `${YT_IMAGE_URL}/${vi}/${encodedId}/${imageSize}.${format}` : `${YT_IMAGE_URL}/${vi}/${videoPlaylisCovertId}/${imageSize}.${format}`;
|
|
27
|
+
};
|
|
28
|
+
|
|
29
|
+
export { getYouTubeID, booleanToNumber, getPosterUrl, YT_IMAGE_URL, YT_HQ_FORMAT };
|
|
13
30
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../../src/components/Video/providers/YouTube/helpers/index.js"],"names":["YOUTUBE_REGEX","getYouTubeID","uri","videoId","match","booleanToNumber","flag"],"mappings":"AAAA,MAAMA,aAAa,GAAG,yEAAtB;;AAEA,SAASC,YAAT,CAAsBC,GAAtB,EAA2B;AACzB,QAAM,KAAOC,OAAP,IAAkBD,GAAG,CAACE,KAAJ,
|
|
1
|
+
{"version":3,"sources":["../../../../../../src/components/Video/providers/YouTube/helpers/index.js"],"names":["YOUTUBE_REGEX","YT_IMAGE_URL","YT_HQ_FORMAT","getYouTubeID","uri","videoId","match","booleanToNumber","flag","getPosterUrl","imageData","playlistCoverId","playlist","encodedId","imageSize","webp","url","videoPlaylisCovertId","encodeURIComponent","format","vi"],"mappings":"AAAA,MAAMA,aAAa,GAAG,yEAAtB;AACA,MAAMC,YAAY,GAAG,qBAArB;AACA,MAAMC,YAAY,GAAG,WAArB;;AAEA,SAASC,YAAT,CAAsBC,GAAtB,EAA2B;AACzB,QAAM,KAAOC,OAAP,IAAkBD,GAAG,CAACE,KAAJ,CAAUN,aAAV,KAA4B,EAApD;AACA,SAAOK,OAAP;AACD;;AAED,SAASE,eAAT,CAAyBC,IAAzB,EAA+B;AAC7B,SAAOA,IAAI,GAAG,CAAH,GAAO,CAAlB;AACD;;AAED,MAAMC,YAAY,GAAG,CAAC;AAAEC,EAAAA,SAAF;AAAaC,EAAAA,eAAb;AAA8BC,EAAAA,QAA9B;AAAwCC,EAAAA,SAAxC;AAAmDC,EAAAA,SAAnD;AAA8DC,EAAAA;AAA9D,CAAD,KAA0E;AAC7F,MAAIL,SAAS,IAAIA,SAAS,CAACM,GAA3B,EAAgC,OAAON,SAAS,CAACM,GAAjB;AAChC,QAAMC,oBAAoB,GACxB,OAAON,eAAP,KAA2B,QAA3B,GAAsCO,kBAAkB,CAACP,eAAD,CAAxD,GAA4E,IAD9E;AAGA,QAAMQ,MAAM,GAAGJ,IAAI,GAAG,MAAH,GAAY,KAA/B;AACA,QAAMK,EAAE,GAAGL,IAAI,GAAG,SAAH,GAAe,IAA9B;AACA,SAAO,CAACH,QAAD,GACF,GAAEX,YAAa,IAAGmB,EAAG,IAAGP,SAAU,IAAGC,SAAU,IAAGK,MAAO,EADvD,GAEF,GAAElB,YAAa,IAAGmB,EAAG,IAAGH,oBAAqB,IAAGH,SAAU,IAAGK,MAAO,EAFzE;AAGD,CAVD;;AAYA,SAAShB,YAAT,EAAuBI,eAAvB,EAAwCE,YAAxC,EAAsDR,YAAtD,EAAoEC,YAApE","sourcesContent":["const YOUTUBE_REGEX = /^.*((m\\.)?youtu\\.be\\/|vi?\\/|u\\/\\w\\/|embed\\/|\\?vi?=|\\&vi?=)([^#\\&\\?]*).*/;\nconst YT_IMAGE_URL = 'https://i.ytimg.com';\nconst YT_HQ_FORMAT = 'hqdefault';\n\nfunction getYouTubeID(uri) {\n const [, , , videoId] = uri.match(YOUTUBE_REGEX) || [];\n return videoId;\n}\n\nfunction booleanToNumber(flag) {\n return flag ? 1 : 0;\n}\n\nconst getPosterUrl = ({ imageData, playlistCoverId, playlist, encodedId, imageSize, webp }) => {\n if (imageData && imageData.url) return imageData.url;\n const videoPlaylisCovertId =\n typeof playlistCoverId === 'string' ? encodeURIComponent(playlistCoverId) : null;\n\n const format = webp ? 'webp' : 'jpg';\n const vi = webp ? 'vi_webp' : 'vi';\n return !playlist\n ? `${YT_IMAGE_URL}/${vi}/${encodedId}/${imageSize}.${format}`\n : `${YT_IMAGE_URL}/${vi}/${videoPlaylisCovertId}/${imageSize}.${format}`;\n};\n\nexport { getYouTubeID, booleanToNumber, getPosterUrl, YT_IMAGE_URL, YT_HQ_FORMAT };\n"],"file":"index.js"}
|
|
@@ -1,18 +1,24 @@
|
|
|
1
|
+
import _extends from "@babel/runtime/helpers/extends";
|
|
2
|
+
import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
|
|
3
|
+
const _excluded = ["children", "className", "modifiers", "style", "tagType"];
|
|
1
4
|
import React from 'react';
|
|
2
5
|
import PropTypes from 'prop-types';
|
|
3
|
-
const Wrapper = React.forwardRef(({
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
6
|
+
const Wrapper = React.forwardRef((_ref, ref) => {
|
|
7
|
+
let {
|
|
8
|
+
children,
|
|
9
|
+
className,
|
|
10
|
+
modifiers,
|
|
11
|
+
style,
|
|
12
|
+
tagType
|
|
13
|
+
} = _ref,
|
|
14
|
+
props = _objectWithoutProperties(_ref, _excluded);
|
|
15
|
+
|
|
10
16
|
const TagType = !tagType || tagType === 'Default' ? 'div' : tagType;
|
|
11
|
-
return /*#__PURE__*/React.createElement(React.Fragment, null, children && /*#__PURE__*/React.createElement(TagType, {
|
|
17
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, children && /*#__PURE__*/React.createElement(TagType, _extends({
|
|
12
18
|
ref: ref,
|
|
13
19
|
className: `${className} ${modifiers}`,
|
|
14
20
|
style: style
|
|
15
|
-
}, children));
|
|
21
|
+
}, props), children));
|
|
16
22
|
});
|
|
17
23
|
Wrapper.propTypes = {
|
|
18
24
|
children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]).isRequired,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/components/Wrapper.js"],"names":["React","PropTypes","Wrapper","forwardRef","children","className","modifiers","style","tagType","
|
|
1
|
+
{"version":3,"sources":["../../src/components/Wrapper.js"],"names":["React","PropTypes","Wrapper","forwardRef","ref","children","className","modifiers","style","tagType","props","TagType","propTypes","oneOfType","arrayOf","node","isRequired","string","object","defaultProps"],"mappings":";;;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AAEA,MAAMC,OAAO,GAAGF,KAAK,CAACG,UAAN,CACd,OAA+DC,GAA/D,KAAuE;AAAA,MAAtE;AAAEC,IAAAA,QAAF;AAAYC,IAAAA,SAAZ;AAAuBC,IAAAA,SAAvB;AAAkCC,IAAAA,KAAlC;AAAyCC,IAAAA;AAAzC,GAAsE;AAAA,MAAjBC,KAAiB;;AACrE,QAAMC,OAAO,GAAG,CAACF,OAAD,IAAYA,OAAO,KAAK,SAAxB,GAAoC,KAApC,GAA4CA,OAA5D;AACA,sBACE,0CACGJ,QAAQ,iBACP,oBAAC,OAAD;AAAS,IAAA,GAAG,EAAED,GAAd;AAAmB,IAAA,SAAS,EAAG,GAAEE,SAAU,IAAGC,SAAU,EAAxD;AAA2D,IAAA,KAAK,EAAEC;AAAlE,KAA6EE,KAA7E,GACGL,QADH,CAFJ,CADF;AASD,CAZa,CAAhB;AAeAH,OAAO,CAACU,SAAR,GAAoB;AAClBP,EAAAA,QAAQ,EAAEJ,SAAS,CAACY,SAAV,CAAoB,CAACZ,SAAS,CAACa,OAAV,CAAkBb,SAAS,CAACc,IAA5B,CAAD,EAAoCd,SAAS,CAACc,IAA9C,CAApB,EAAyEC,UADjE;AAElBV,EAAAA,SAAS,EAAEL,SAAS,CAACgB,MAFH;AAGlBV,EAAAA,SAAS,EAAEN,SAAS,CAACgB,MAHH;AAIlBT,EAAAA,KAAK,EAAEP,SAAS,CAACiB,MAJC;AAKlBT,EAAAA,OAAO,EAAER,SAAS,CAACgB;AALD,CAApB;AAQAf,OAAO,CAACiB,YAAR,GAAuB;AACrBb,EAAAA,SAAS,EAAE,EADU;AAErBC,EAAAA,SAAS,EAAE,EAFU;AAGrBC,EAAAA,KAAK,EAAE,EAHc;AAIrBC,EAAAA,OAAO,EAAE;AAJY,CAAvB;AAOA,eAAeP,OAAf","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst Wrapper = React.forwardRef(\n ({ children, className, modifiers, style, tagType, ...props }, ref) => {\n const TagType = !tagType || tagType === 'Default' ? 'div' : tagType;\n return (\n <>\n {children && (\n <TagType ref={ref} className={`${className} ${modifiers}`} style={style} {...props}>\n {children}\n </TagType>\n )}\n </>\n );\n }\n);\n\nWrapper.propTypes = {\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]).isRequired,\n className: PropTypes.string,\n modifiers: PropTypes.string,\n style: PropTypes.object,\n tagType: PropTypes.string\n};\n\nWrapper.defaultProps = {\n className: '',\n modifiers: '',\n style: {},\n tagType: ''\n};\n\nexport default Wrapper;\n"],"file":"Wrapper.js"}
|
|
@@ -76,6 +76,9 @@ export default {
|
|
|
76
76
|
'./PasswordResetRequest')),
|
|
77
77
|
breadcrumb: dynamic(() => import(
|
|
78
78
|
/* webpackChunkName: "blazePbBreadcrumb" */
|
|
79
|
-
'./Breadcrumb'))
|
|
79
|
+
'./Breadcrumb')),
|
|
80
|
+
backtotop: dynamic(() => import(
|
|
81
|
+
/* webpackChunkName: "blazePbBackToTop" */
|
|
82
|
+
'./BackToTop'))
|
|
80
83
|
};
|
|
81
84
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/components/index.js"],"names":["dynamic","Banner","banner","button","card","carousel","column","datasummary","image","row","list","socialfollow","textblock","video","wrapper","searchcontent","searchfilter","searchfiltersort","modal","code","login","menu","menuitem","submenu","emailconfirm","passwordreset","passwordresetrequest","breadcrumb"],"mappings":"AAAA,OAAOA,OAAP,MAAoB,cAApB;AACA,OAAOC,MAAP,MAAmB,UAAnB;AAEA,eAAe;AACbC,EAAAA,MAAM,EAAED,MADK;AAEbE,EAAAA,MAAM,EAAEH,OAAO,CAAC,MAAM;AAAO;AAAwC,YAA/C,CAAP,CAFF;AAGbI,EAAAA,IAAI,EAAEJ,OAAO,CAAC,MAAM;AAAO;AAAsC,UAA7C,CAAP,CAHA;AAIbK,EAAAA,QAAQ,EAAEL,OAAO,CAAC,MAAM;AAAO;AAA0C,cAAjD,CAAP,CAJJ;AAKbM,EAAAA,MAAM,EAAEN,OAAO,CAAC,MAAM;AAAO;AAAwC,YAA/C,CAAP,CALF;AAMbO,EAAAA,WAAW,EAAEP,OAAO,CAAC,MAAM;AAAO;AAA6C,iBAApD,CAAP,CANP;AAObQ,EAAAA,KAAK,EAAER,OAAO,CAAC,MAAM;AAAO;AAAuC,WAA9C,CAAP,CAPD;AAQbS,EAAAA,GAAG,EAAET,OAAO,CAAC,MAAM;AAAO;AAAwC,YAA/C,CAAP,CARC;AASbU,EAAAA,IAAI,EAAEV,OAAO,CAAC,MAAM;AAAO;AAAsC,UAA7C,CAAP,CATA;AAUbW,EAAAA,YAAY,EAAEX,OAAO,CAAC,MACpB;AAAO;AAA8C,kBAArD,CADmB,CAVR;AAabY,EAAAA,SAAS,EAAEZ,OAAO,CAAC,MAAM;AAAO;AAA2C,eAAlD,CAAP,CAbL;AAcba,EAAAA,KAAK,EAAEb,OAAO,CAAC,MAAM;AAAO;AAAuC,WAA9C,CAAP,CAdD;AAebc,EAAAA,OAAO,EAAEd,OAAO,CAAC,MAAM;AAAO;AAAyC,aAAhD,CAAP,CAfH;AAgBbe,EAAAA,aAAa,EAAEf,OAAO,CAAC,MACrB;AAAO;AAA8C,mBAArD,CADoB,CAhBT;AAmBbgB,EAAAA,YAAY,EAAEhB,OAAO,CAAC,MACpB;AAAO;AAA8C,kBAArD,CADmB,CAnBR;AAsBbiB,EAAAA,gBAAgB,EAAEjB,OAAO,CAAC,MACxB;AAAO;AAAiD,sBAAxD,CADuB,CAtBZ;AAyBbkB,EAAAA,KAAK,EAAElB,OAAO,CAAC,MAAM;AAAO;AAAuC,WAA9C,CAAP,CAzBD;AA0BbmB,EAAAA,IAAI,EAAEnB,OAAO,CAAC,MAAM;AAAO;AAAsC,UAA7C,CAAP,CA1BA;AA2BboB,EAAAA,KAAK,EAAEpB,OAAO,CAAC,MAAM;AAAO;AAAuC,WAA9C,CAAP,CA3BD;AA4BbqB,EAAAA,IAAI,EAAErB,OAAO,CAAC,MAAM;AAAO;AAAsC,UAA7C,CAAP,CA5BA;AA6BbsB,EAAAA,QAAQ,EAAEtB,OAAO,CAAC,MAAM;AAAO;AAA0C,cAAjD,CAAP,CA7BJ;AA8BbuB,EAAAA,OAAO,EAAEvB,OAAO,CAAC,MAAM;AAAO;AAAyC,aAAhD,CAAP,CA9BH;AA+BbwB,EAAAA,YAAY,EAAExB,OAAO,CAAC,MACpB;AAAO;AAA8C,kBAArD,CADmB,CA/BR;AAkCbyB,EAAAA,aAAa,EAAEzB,OAAO,CAAC,MACrB;AAAO;AAA+C,mBAAtD,CADoB,CAlCT;AAqCb0B,EAAAA,oBAAoB,EAAE1B,OAAO,CAAC,MAC5B;AAAO;AAAsD,0BAA7D,CAD2B,CArChB;AAwCb2B,EAAAA,UAAU,EAAE3B,OAAO,CAAC,MAAM;AAAO;AAA4C,gBAAnD,CAAP;
|
|
1
|
+
{"version":3,"sources":["../../src/components/index.js"],"names":["dynamic","Banner","banner","button","card","carousel","column","datasummary","image","row","list","socialfollow","textblock","video","wrapper","searchcontent","searchfilter","searchfiltersort","modal","code","login","menu","menuitem","submenu","emailconfirm","passwordreset","passwordresetrequest","breadcrumb","backtotop"],"mappings":"AAAA,OAAOA,OAAP,MAAoB,cAApB;AACA,OAAOC,MAAP,MAAmB,UAAnB;AAEA,eAAe;AACbC,EAAAA,MAAM,EAAED,MADK;AAEbE,EAAAA,MAAM,EAAEH,OAAO,CAAC,MAAM;AAAO;AAAwC,YAA/C,CAAP,CAFF;AAGbI,EAAAA,IAAI,EAAEJ,OAAO,CAAC,MAAM;AAAO;AAAsC,UAA7C,CAAP,CAHA;AAIbK,EAAAA,QAAQ,EAAEL,OAAO,CAAC,MAAM;AAAO;AAA0C,cAAjD,CAAP,CAJJ;AAKbM,EAAAA,MAAM,EAAEN,OAAO,CAAC,MAAM;AAAO;AAAwC,YAA/C,CAAP,CALF;AAMbO,EAAAA,WAAW,EAAEP,OAAO,CAAC,MAAM;AAAO;AAA6C,iBAApD,CAAP,CANP;AAObQ,EAAAA,KAAK,EAAER,OAAO,CAAC,MAAM;AAAO;AAAuC,WAA9C,CAAP,CAPD;AAQbS,EAAAA,GAAG,EAAET,OAAO,CAAC,MAAM;AAAO;AAAwC,YAA/C,CAAP,CARC;AASbU,EAAAA,IAAI,EAAEV,OAAO,CAAC,MAAM;AAAO;AAAsC,UAA7C,CAAP,CATA;AAUbW,EAAAA,YAAY,EAAEX,OAAO,CAAC,MACpB;AAAO;AAA8C,kBAArD,CADmB,CAVR;AAabY,EAAAA,SAAS,EAAEZ,OAAO,CAAC,MAAM;AAAO;AAA2C,eAAlD,CAAP,CAbL;AAcba,EAAAA,KAAK,EAAEb,OAAO,CAAC,MAAM;AAAO;AAAuC,WAA9C,CAAP,CAdD;AAebc,EAAAA,OAAO,EAAEd,OAAO,CAAC,MAAM;AAAO;AAAyC,aAAhD,CAAP,CAfH;AAgBbe,EAAAA,aAAa,EAAEf,OAAO,CAAC,MACrB;AAAO;AAA8C,mBAArD,CADoB,CAhBT;AAmBbgB,EAAAA,YAAY,EAAEhB,OAAO,CAAC,MACpB;AAAO;AAA8C,kBAArD,CADmB,CAnBR;AAsBbiB,EAAAA,gBAAgB,EAAEjB,OAAO,CAAC,MACxB;AAAO;AAAiD,sBAAxD,CADuB,CAtBZ;AAyBbkB,EAAAA,KAAK,EAAElB,OAAO,CAAC,MAAM;AAAO;AAAuC,WAA9C,CAAP,CAzBD;AA0BbmB,EAAAA,IAAI,EAAEnB,OAAO,CAAC,MAAM;AAAO;AAAsC,UAA7C,CAAP,CA1BA;AA2BboB,EAAAA,KAAK,EAAEpB,OAAO,CAAC,MAAM;AAAO;AAAuC,WAA9C,CAAP,CA3BD;AA4BbqB,EAAAA,IAAI,EAAErB,OAAO,CAAC,MAAM;AAAO;AAAsC,UAA7C,CAAP,CA5BA;AA6BbsB,EAAAA,QAAQ,EAAEtB,OAAO,CAAC,MAAM;AAAO;AAA0C,cAAjD,CAAP,CA7BJ;AA8BbuB,EAAAA,OAAO,EAAEvB,OAAO,CAAC,MAAM;AAAO;AAAyC,aAAhD,CAAP,CA9BH;AA+BbwB,EAAAA,YAAY,EAAExB,OAAO,CAAC,MACpB;AAAO;AAA8C,kBAArD,CADmB,CA/BR;AAkCbyB,EAAAA,aAAa,EAAEzB,OAAO,CAAC,MACrB;AAAO;AAA+C,mBAAtD,CADoB,CAlCT;AAqCb0B,EAAAA,oBAAoB,EAAE1B,OAAO,CAAC,MAC5B;AAAO;AAAsD,0BAA7D,CAD2B,CArChB;AAwCb2B,EAAAA,UAAU,EAAE3B,OAAO,CAAC,MAAM;AAAO;AAA4C,gBAAnD,CAAP,CAxCN;AAyCb4B,EAAAA,SAAS,EAAE5B,OAAO,CAAC,MAAM;AAAO;AAA2C,eAAlD,CAAP;AAzCL,CAAf","sourcesContent":["import dynamic from 'next/dynamic';\nimport Banner from './Banner';\n\nexport default {\n banner: Banner,\n button: dynamic(() => import(/* webpackChunkName: \"blazePbButton\" */ './Button')),\n card: dynamic(() => import(/* webpackChunkName: \"blazePbCard\" */ './Card')),\n carousel: dynamic(() => import(/* webpackChunkName: \"blazePbCarousel\" */ './Carousel')),\n column: dynamic(() => import(/* webpackChunkName: \"blazePbLayout\" */ './Layout')),\n datasummary: dynamic(() => import(/* webpackChunkName: \"blazePbDataSummary\" */ './DataSummary')),\n image: dynamic(() => import(/* webpackChunkName: \"blazePbImage\" */ './Image')),\n row: dynamic(() => import(/* webpackChunkName: \"blazePbLayout\" */ './Layout')),\n list: dynamic(() => import(/* webpackChunkName: \"blazePbList\" */ './List')),\n socialfollow: dynamic(() =>\n import(/* webpackChunkName: \"blazePbSocialFollow\" */ './SocialFollow')\n ),\n textblock: dynamic(() => import(/* webpackChunkName: \"blazePbTextBlock\" */ './TextBlock')),\n video: dynamic(() => import(/* webpackChunkName: \"blazePbVideo\" */ './Video')),\n wrapper: dynamic(() => import(/* webpackChunkName: \"blazePbWrapper\" */ './Wrapper')),\n searchcontent: dynamic(() =>\n import(/* webpackChunkName: \"blazePbSearchFilter\" */ './SearchContent')\n ),\n searchfilter: dynamic(() =>\n import(/* webpackChunkName: \"blazePbSearchFilter\" */ './SearchFilter')\n ),\n searchfiltersort: dynamic(() =>\n import(/* webpackChunkName: \"blazePbSearchFilteSort\" */ './SearchFilterSort')\n ),\n modal: dynamic(() => import(/* webpackChunkName: \"blazePbModal\" */ './Modal')),\n code: dynamic(() => import(/* webpackChunkName: \"blazePbCode\" */ './Code')),\n login: dynamic(() => import(/* webpackChunkName: \"blazePbLogin\" */ './Login')),\n menu: dynamic(() => import(/* webpackChunkName: \"blazePbMenu\" */ './Menu')),\n menuitem: dynamic(() => import(/* webpackChunkName: \"blazePbMenuItem\" */ './MenuItem')),\n submenu: dynamic(() => import(/* webpackChunkName: \"blazePbSubMenu\" */ './SubMenu')),\n emailconfirm: dynamic(() =>\n import(/* webpackChunkName: \"blazePbEmailConfirm\" */ './EmailConfirm')\n ),\n passwordreset: dynamic(() =>\n import(/* webpackChunkName: \"blazePbPasswordReset\" */ './PasswordReset')\n ),\n passwordresetrequest: dynamic(() =>\n import(/* webpackChunkName: \"blazePbPasswordResetRequest\" */ './PasswordResetRequest')\n ),\n breadcrumb: dynamic(() => import(/* webpackChunkName: \"blazePbBreadcrumb\" */ './Breadcrumb')),\n backtotop: dynamic(() => import(/* webpackChunkName: \"blazePbBackToTop\" */ './BackToTop'))\n};\n"],"file":"index.js"}
|
|
@@ -92,7 +92,7 @@ const buildRawQuery = (docType, operator, searchValues, filterData, id, itemsToD
|
|
|
92
92
|
type: 'number',
|
|
93
93
|
script: {
|
|
94
94
|
lang: 'painless',
|
|
95
|
-
source: "doc['
|
|
95
|
+
source: "!doc['id.keyword'].empty ? params.sortOrder.indexOf(doc['id.keyword'].value) : 0",
|
|
96
96
|
params: {
|
|
97
97
|
sortOrder: itemsToDisplayIds
|
|
98
98
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/helpers/build-raw-query.js"],"names":["buildRawQueryBase","getItemsToDisplayIds","getExtraAzBits","buildAzFilter","AND_OPERATOR","buildRawQuery","docType","operator","searchValues","filterData","id","itemsToDisplay","shouldApplySort","azOptions","searchValuesText","searchValuesCheckboxSelectRange","searchValuesCheckboxOr","filterValues","filterOperator","relations","stringProps","azFilter","shouldReturnAggs","isAZ","searchValuesTextCheckboxSelectJoined","searchValuesTextCheckboxOr","length","finalValue","finalValueWithCheckboxOrValues","must","bool","should","finalValueIfNoCheckboxOrValues","mustValues","query","azQueryBits","itemsToDisplayIds","push","ids","values","sort","_script","type","script","lang","source","params","sortOrder","order"],"mappings":"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
|
|
1
|
+
{"version":3,"sources":["../../src/helpers/build-raw-query.js"],"names":["buildRawQueryBase","getItemsToDisplayIds","getExtraAzBits","buildAzFilter","AND_OPERATOR","buildRawQuery","docType","operator","searchValues","filterData","id","itemsToDisplay","shouldApplySort","azOptions","searchValuesText","searchValuesCheckboxSelectRange","searchValuesCheckboxOr","filterValues","filterOperator","relations","stringProps","azFilter","shouldReturnAggs","isAZ","searchValuesTextCheckboxSelectJoined","searchValuesTextCheckboxOr","length","finalValue","finalValueWithCheckboxOrValues","must","bool","should","finalValueIfNoCheckboxOrValues","mustValues","query","azQueryBits","itemsToDisplayIds","push","ids","values","sort","_script","type","script","lang","source","params","sortOrder","order"],"mappings":"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","sourcesContent":["import buildRawQueryBase from './build-raw-query-base';\nimport getItemsToDisplayIds from './get-items-to-display-ids';\nimport getExtraAzBits from './get-extra-az-bits';\nimport buildAzFilter from './build-az-filter';\nimport { AND_OPERATOR } from '../constants';\n\nconst buildRawQuery = (\n docType,\n operator,\n searchValues,\n filterData,\n id,\n itemsToDisplay,\n shouldApplySort,\n azOptions\n) => {\n const {\n searchValuesText,\n searchValuesCheckboxSelectRange,\n searchValuesCheckboxOr\n } = searchValues;\n\n const { filterValues, filterOperator, relations, stringProps, azFilter } = filterData;\n const { shouldReturnAggs, isAZ } = azOptions || {};\n const searchValuesTextCheckboxSelectJoined =\n operator === AND_OPERATOR ? [...searchValuesText, ...searchValuesCheckboxSelectRange] : [];\n let searchValuesTextCheckboxOr = searchValuesText;\n if (searchValuesCheckboxOr.length) {\n searchValuesTextCheckboxOr = [...searchValuesText, ...searchValuesCheckboxOr];\n }\n\n let finalValue;\n\n if (searchValuesTextCheckboxSelectJoined.length) {\n const finalValueWithCheckboxOrValues = {\n must: [...searchValuesTextCheckboxSelectJoined, { bool: { should: searchValuesCheckboxOr } }]\n };\n const finalValueIfNoCheckboxOrValues = { must: searchValuesTextCheckboxSelectJoined };\n finalValue = searchValuesCheckboxOr.length\n ? finalValueWithCheckboxOrValues\n : finalValueIfNoCheckboxOrValues;\n } else {\n finalValue = {\n must: [...searchValuesCheckboxSelectRange, { bool: { should: searchValuesTextCheckboxOr } }]\n };\n }\n const mustValues = [\n {\n bool: finalValue\n }\n ];\n\n buildAzFilter(azFilter, mustValues);\n\n const query = {\n bool: {\n must: mustValues,\n ...buildRawQueryBase({ docType, id, filterValues, filterOperator, relations, stringProps })\n }\n };\n const azQueryBits = getExtraAzBits(shouldReturnAggs, isAZ, azFilter);\n\n if (itemsToDisplay && itemsToDisplay.length) {\n const itemsToDisplayIds = getItemsToDisplayIds(itemsToDisplay);\n query.bool.must.push({ ids: { values: itemsToDisplayIds } });\n if (shouldApplySort) {\n return {\n query,\n sort: {\n _script: {\n type: 'number',\n script: {\n lang: 'painless',\n source:\n \"!doc['id.keyword'].empty ? params.sortOrder.indexOf(doc['id.keyword'].value) : 0\",\n params: {\n sortOrder: itemsToDisplayIds\n }\n },\n order: 'asc'\n }\n },\n ...azQueryBits\n };\n }\n }\n\n return isAZ\n ? {\n query,\n ...azQueryBits\n }\n : query;\n};\n\nexport default buildRawQuery;\n"],"file":"build-raw-query.js"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@blaze-cms/react-page-builder",
|
|
3
|
-
"version": "0.124.0-alpha.
|
|
3
|
+
"version": "0.124.0-alpha.1",
|
|
4
4
|
"description": "Blaze react page builder",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"module": "lib-es/index.js",
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
"@blaze-cms/core-auth-ui": "^0.119.0",
|
|
31
31
|
"@blaze-cms/core-errors": "^0.118.0",
|
|
32
32
|
"@blaze-cms/image-cdn-react": "^0.2.0",
|
|
33
|
-
"@blaze-cms/nextjs-components": "^0.
|
|
33
|
+
"@blaze-cms/nextjs-components": "^0.124.0-alpha.1",
|
|
34
34
|
"@blaze-cms/setup-ui": "^0.92.0",
|
|
35
35
|
"@blaze-cms/utils": "^0.118.0",
|
|
36
36
|
"@blaze-react/breadcrumb": "0.8.0-alpha.60",
|
|
@@ -84,5 +84,5 @@
|
|
|
84
84
|
"lib/*",
|
|
85
85
|
"lib-es/*"
|
|
86
86
|
],
|
|
87
|
-
"gitHead": "
|
|
87
|
+
"gitHead": "797f21d4f5d2291343e2bdb017039cfd3b6290e0"
|
|
88
88
|
}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import React, { useEffect, useState } from 'react';
|
|
2
|
+
import PropTypes from 'prop-types';
|
|
3
|
+
import { FaArrowUp } from 'react-icons/fa';
|
|
4
|
+
import Wrapper from '../Wrapper';
|
|
5
|
+
import { getClassModifiers } from '../../utils';
|
|
6
|
+
|
|
7
|
+
const BackToTop = ({ type, showAfterPixels, ...otherProps }) => {
|
|
8
|
+
const [goToTop, setGoToTop] = useState(false);
|
|
9
|
+
const modifiers = getClassModifiers(type, otherProps);
|
|
10
|
+
|
|
11
|
+
useEffect(
|
|
12
|
+
() => {
|
|
13
|
+
const handleOnScroll = () => setGoToTop(window.scrollY >= showAfterPixels);
|
|
14
|
+
document.addEventListener('scroll', handleOnScroll);
|
|
15
|
+
return () => document.removeEventListener('scroll', handleOnScroll);
|
|
16
|
+
},
|
|
17
|
+
[showAfterPixels]
|
|
18
|
+
);
|
|
19
|
+
|
|
20
|
+
const handleBackToTop = () => {
|
|
21
|
+
window.scroll({
|
|
22
|
+
top: 0,
|
|
23
|
+
left: 0,
|
|
24
|
+
behavior: 'smooth'
|
|
25
|
+
});
|
|
26
|
+
setGoToTop(false);
|
|
27
|
+
};
|
|
28
|
+
|
|
29
|
+
return (
|
|
30
|
+
<>
|
|
31
|
+
{goToTop && (
|
|
32
|
+
<Wrapper className={type} modifiers={modifiers} onClick={handleBackToTop}>
|
|
33
|
+
<i>
|
|
34
|
+
<FaArrowUp />
|
|
35
|
+
</i>
|
|
36
|
+
</Wrapper>
|
|
37
|
+
)}
|
|
38
|
+
</>
|
|
39
|
+
);
|
|
40
|
+
};
|
|
41
|
+
|
|
42
|
+
BackToTop.propTypes = {
|
|
43
|
+
type: PropTypes.string,
|
|
44
|
+
showAfterPixels: PropTypes.number
|
|
45
|
+
};
|
|
46
|
+
|
|
47
|
+
BackToTop.defaultProps = {
|
|
48
|
+
type: 'backtotop',
|
|
49
|
+
showAfterPixels: 200
|
|
50
|
+
};
|
|
51
|
+
|
|
52
|
+
export default BackToTop;
|