@blaze-cms/react-page-builder 0.146.0-alpha.10 → 0.146.0-alpha.15

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.
Files changed (73) hide show
  1. package/CHANGELOG.md +28 -0
  2. package/lib/components/MenuItem/MenuEntitiesItem.js +1 -0
  3. package/lib/components/MenuItem/MenuEntitiesItem.js.map +1 -1
  4. package/lib/components/SearchFilter/SearchFilter/SearchFilter.js +16 -1
  5. package/lib/components/SearchFilter/SearchFilter/SearchFilter.js.map +1 -1
  6. package/lib/components/SearchFilter/SearchFilterContainer.js.map +1 -1
  7. package/lib/components/SearchFilter/components/Select.js.map +1 -1
  8. package/lib/components/Video/Video.js +2 -1
  9. package/lib/components/Video/Video.js.map +1 -1
  10. package/lib/components/Video/VideoContext.js +12 -0
  11. package/lib/components/Video/VideoContext.js.map +1 -0
  12. package/lib/components/Video/VideoRender.js +36 -3
  13. package/lib/components/Video/VideoRender.js.map +1 -1
  14. package/lib/components/Video/constants.js +14 -0
  15. package/lib/components/Video/constants.js.map +1 -0
  16. package/lib/components/Video/helpers/emit-gtm-event.js +31 -0
  17. package/lib/components/Video/helpers/emit-gtm-event.js.map +1 -0
  18. package/lib/components/Video/providers/JWPlayer/JWPlayerController.js +28 -8
  19. package/lib/components/Video/providers/JWPlayer/JWPlayerController.js.map +1 -1
  20. package/lib/components/Video/providers/JWPlayer/JWPlayerProvider.js +16 -4
  21. package/lib/components/Video/providers/JWPlayer/JWPlayerProvider.js.map +1 -1
  22. package/lib/components/Video/providers/YouTube/YoutubeEmbeded.js +55 -0
  23. package/lib/components/Video/providers/YouTube/YoutubeEmbeded.js.map +1 -1
  24. package/lib/helpers/build-filters-query.js +1 -2
  25. package/lib/helpers/build-filters-query.js.map +1 -1
  26. package/lib/hooks/index.js +7 -0
  27. package/lib/hooks/index.js.map +1 -1
  28. package/lib/hooks/use-filter-aggregation-values.js +54 -0
  29. package/lib/hooks/use-filter-aggregation-values.js.map +1 -0
  30. package/lib-es/components/MenuItem/MenuEntitiesItem.js +1 -0
  31. package/lib-es/components/MenuItem/MenuEntitiesItem.js.map +1 -1
  32. package/lib-es/components/SearchFilter/SearchFilter/SearchFilter.js +9 -1
  33. package/lib-es/components/SearchFilter/SearchFilter/SearchFilter.js.map +1 -1
  34. package/lib-es/components/SearchFilter/SearchFilterContainer.js.map +1 -1
  35. package/lib-es/components/SearchFilter/components/Select.js.map +1 -1
  36. package/lib-es/components/Video/Video.js +2 -1
  37. package/lib-es/components/Video/Video.js.map +1 -1
  38. package/lib-es/components/Video/VideoContext.js +6 -0
  39. package/lib-es/components/Video/VideoContext.js.map +1 -0
  40. package/lib-es/components/Video/VideoRender.js +28 -3
  41. package/lib-es/components/Video/VideoRender.js.map +1 -1
  42. package/lib-es/components/Video/constants.js +7 -0
  43. package/lib-es/components/Video/constants.js.map +1 -0
  44. package/lib-es/components/Video/helpers/emit-gtm-event.js +25 -0
  45. package/lib-es/components/Video/helpers/emit-gtm-event.js.map +1 -0
  46. package/lib-es/components/Video/providers/JWPlayer/JWPlayerController.js +28 -4
  47. package/lib-es/components/Video/providers/JWPlayer/JWPlayerController.js.map +1 -1
  48. package/lib-es/components/Video/providers/JWPlayer/JWPlayerProvider.js +10 -4
  49. package/lib-es/components/Video/providers/JWPlayer/JWPlayerProvider.js.map +1 -1
  50. package/lib-es/components/Video/providers/YouTube/YoutubeEmbeded.js +58 -2
  51. package/lib-es/components/Video/providers/YouTube/YoutubeEmbeded.js.map +1 -1
  52. package/lib-es/helpers/build-filters-query.js +1 -2
  53. package/lib-es/helpers/build-filters-query.js.map +1 -1
  54. package/lib-es/hooks/index.js +1 -0
  55. package/lib-es/hooks/index.js.map +1 -1
  56. package/lib-es/hooks/use-filter-aggregation-values.js +31 -0
  57. package/lib-es/hooks/use-filter-aggregation-values.js.map +1 -0
  58. package/package.json +2 -2
  59. package/src/components/MenuItem/MenuEntitiesItem.js +2 -0
  60. package/src/components/SearchFilter/SearchFilter/SearchFilter.js +10 -1
  61. package/src/components/SearchFilter/SearchFilterContainer.js +6 -1
  62. package/src/components/SearchFilter/components/Select.js +2 -0
  63. package/src/components/Video/Video.js +1 -1
  64. package/src/components/Video/VideoContext.js +7 -0
  65. package/src/components/Video/VideoRender.js +28 -3
  66. package/src/components/Video/constants.js +6 -0
  67. package/src/components/Video/helpers/emit-gtm-event.js +25 -0
  68. package/src/components/Video/providers/JWPlayer/JWPlayerController.js +21 -4
  69. package/src/components/Video/providers/JWPlayer/JWPlayerProvider.js +7 -5
  70. package/src/components/Video/providers/YouTube/YoutubeEmbeded.js +63 -2
  71. package/src/helpers/build-filters-query.js +1 -2
  72. package/src/hooks/index.js +1 -0
  73. package/src/hooks/use-filter-aggregation-values.js +37 -0
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports["default"] = void 0;
8
+ var _constants = require("../constants");
9
+ var emitGtmEvent = function emitGtmEvent(_ref) {
10
+ var gtmEventName = _ref.gtmEventName,
11
+ provider = _ref.provider,
12
+ action = _ref.action,
13
+ videoId = _ref.videoId,
14
+ playCounter = _ref.playCounter;
15
+ if (!window.dataLayer || !action) return;
16
+ var actionToUse = action === _constants.EVENT_ACTIONS.PLAYING && playCounter.current < 1 ? _constants.EVENT_ACTIONS.START : action;
17
+ if (action === _constants.EVENT_ACTIONS.PLAYING) {
18
+ // eslint-disable-next-line no-param-reassign
19
+ playCounter.current += 1;
20
+ }
21
+ var playCount = playCounter.current;
22
+ window.dataLayer.push({
23
+ event: gtmEventName,
24
+ video_action: actionToUse,
25
+ video_provider: provider,
26
+ video_id: videoId,
27
+ video_play_count: playCount
28
+ });
29
+ };
30
+ var _default = exports["default"] = emitGtmEvent;
31
+ //# sourceMappingURL=emit-gtm-event.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"emit-gtm-event.js","names":["_constants","require","emitGtmEvent","_ref","gtmEventName","provider","action","videoId","playCounter","window","dataLayer","actionToUse","EVENT_ACTIONS","PLAYING","current","START","playCount","push","event","video_action","video_provider","video_id","video_play_count","_default","exports"],"sources":["../../../../src/components/Video/helpers/emit-gtm-event.js"],"sourcesContent":["import { EVENT_ACTIONS } from '../constants';\n\nconst emitGtmEvent = ({ gtmEventName, provider, action, videoId, playCounter }) => {\n if (!window.dataLayer || !action) return;\n\n const actionToUse =\n action === EVENT_ACTIONS.PLAYING && playCounter.current < 1 ? EVENT_ACTIONS.START : action;\n\n if (action === EVENT_ACTIONS.PLAYING) {\n // eslint-disable-next-line no-param-reassign\n playCounter.current += 1;\n }\n\n const playCount = playCounter.current;\n\n window.dataLayer.push({\n event: gtmEventName,\n video_action: actionToUse,\n video_provider: provider,\n video_id: videoId,\n video_play_count: playCount\n });\n};\n\nexport default emitGtmEvent;\n"],"mappings":";;;;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AAEA,IAAMC,YAAY,GAAG,SAAfA,YAAYA,CAAAC,IAAA,EAAiE;EAAA,IAA3DC,YAAY,GAAAD,IAAA,CAAZC,YAAY;IAAEC,QAAQ,GAAAF,IAAA,CAARE,QAAQ;IAAEC,MAAM,GAAAH,IAAA,CAANG,MAAM;IAAEC,OAAO,GAAAJ,IAAA,CAAPI,OAAO;IAAEC,WAAW,GAAAL,IAAA,CAAXK,WAAW;EAC1E,IAAI,CAACC,MAAM,CAACC,SAAS,IAAI,CAACJ,MAAM,EAAE;EAElC,IAAMK,WAAW,GACfL,MAAM,KAAKM,wBAAa,CAACC,OAAO,IAAIL,WAAW,CAACM,OAAO,GAAG,CAAC,GAAGF,wBAAa,CAACG,KAAK,GAAGT,MAAM;EAE5F,IAAIA,MAAM,KAAKM,wBAAa,CAACC,OAAO,EAAE;IACpC;IACAL,WAAW,CAACM,OAAO,IAAI,CAAC;EAC1B;EAEA,IAAME,SAAS,GAAGR,WAAW,CAACM,OAAO;EAErCL,MAAM,CAACC,SAAS,CAACO,IAAI,CAAC;IACpBC,KAAK,EAAEd,YAAY;IACnBe,YAAY,EAAER,WAAW;IACzBS,cAAc,EAAEf,QAAQ;IACxBgB,QAAQ,EAAEd,OAAO;IACjBe,gBAAgB,EAAEN;EACpB,CAAC,CAAC;AACJ,CAAC;AAAC,IAAAO,QAAA,GAAAC,OAAA,cAEatB,YAAY"}
@@ -9,12 +9,14 @@ exports["default"] = void 0;
9
9
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
10
10
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
11
11
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
12
+ var _constants = require("../../constants");
12
13
  /*
13
14
  Custom controller to extend and scale the 'react-jw-player' library for future updates.
14
15
  */
15
16
  var JWPlayerController = /*#__PURE__*/function () {
16
- function JWPlayerController() {
17
+ function JWPlayerController(_ref) {
17
18
  var _this = this;
19
+ var _emitEvent = _ref.emitEvent;
18
20
  (0, _classCallCheck2["default"])(this, JWPlayerController);
19
21
  (0, _defineProperty2["default"])(this, "setPlayer", function (player) {
20
22
  _this.player = player;
@@ -22,19 +24,37 @@ var JWPlayerController = /*#__PURE__*/function () {
22
24
  (0, _defineProperty2["default"])(this, "setErrorHandler", function (setError) {
23
25
  _this.setError = setError;
24
26
  });
25
- (0, _defineProperty2["default"])(this, "onError", function (_ref) {
26
- var message = _ref.message;
27
+ (0, _defineProperty2["default"])(this, "onError", function (_ref2) {
28
+ var message = _ref2.message;
27
29
  _this.error = message;
28
30
  });
29
- (0, _defineProperty2["default"])(this, "onSetupError", function (_ref2) {
30
- var message = _ref2.message;
31
+ (0, _defineProperty2["default"])(this, "onSetupError", function (_ref3) {
32
+ var message = _ref3.message;
31
33
  _this.error = message;
32
34
  });
33
- (0, _defineProperty2["default"])(this, "onComplete", function (event) {});
34
- (0, _defineProperty2["default"])(this, "onPause", function (event) {});
35
- (0, _defineProperty2["default"])(this, "onPlay", function (event) {});
35
+ (0, _defineProperty2["default"])(this, "doEmitEvent", function (action) {
36
+ var emitEvent = _this.emitEvent;
37
+ if (emitEvent) {
38
+ var _this$player$getPlayl = _this.player.getPlaylistItem(),
39
+ videoId = _this$player$getPlayl.mediaid;
40
+ emitEvent({
41
+ action: action,
42
+ videoId: videoId
43
+ });
44
+ }
45
+ });
46
+ (0, _defineProperty2["default"])(this, "onComplete", function (event) {
47
+ _this.doEmitEvent(_constants.EVENT_ACTIONS.ENDED);
48
+ });
49
+ (0, _defineProperty2["default"])(this, "onPause", function (event) {
50
+ _this.doEmitEvent(_constants.EVENT_ACTIONS.PAUSED);
51
+ });
52
+ (0, _defineProperty2["default"])(this, "onPlay", function (event) {
53
+ _this.doEmitEvent(_constants.EVENT_ACTIONS.PLAYING);
54
+ });
36
55
  this.player = null;
37
56
  this.error = null;
57
+ this.emitEvent = _emitEvent;
38
58
  }
39
59
  (0, _createClass2["default"])(JWPlayerController, [{
40
60
  key: "events",
@@ -1 +1 @@
1
- {"version":3,"file":"JWPlayerController.js","names":["JWPlayerController","_this","_classCallCheck2","_defineProperty2","player","setError","_ref","message","error","_ref2","event","_createClass2","key","get","play","onPlay","pause","onPause","onError","complete","onComplete","setupError","_default","exports"],"sources":["../../../../../src/components/Video/providers/JWPlayer/JWPlayerController.js"],"sourcesContent":["/*\n Custom controller to extend and scale the 'react-jw-player' library for future updates.\n*/\n\nclass JWPlayerController {\n constructor() {\n this.player = null;\n this.error = null;\n }\n\n setPlayer = player => {\n this.player = player;\n };\n\n setErrorHandler = setError => {\n this.setError = setError;\n };\n\n onError = ({ message }) => {\n this.error = message;\n };\n\n onSetupError = ({ message }) => {\n this.error = message;\n };\n\n onComplete = event => {};\n\n onPause = event => {};\n\n onPlay = event => {};\n\n get events() {\n return {\n play: this.onPlay,\n pause: this.onPause,\n error: this.onError,\n complete: this.onComplete,\n setupError: this.setupError\n };\n }\n}\n\nexport default JWPlayerController;\n"],"mappings":";;;;;;;;;;;AAAA;AACA;AACA;AAFA,IAIMA,kBAAkB;EACtB,SAAAA,mBAAA,EAAc;IAAA,IAAAC,KAAA;IAAA,IAAAC,gBAAA,mBAAAF,kBAAA;IAAA,IAAAG,gBAAA,gCAKF,UAAAC,MAAM,EAAI;MACpBH,KAAI,CAACG,MAAM,GAAGA,MAAM;IACtB,CAAC;IAAA,IAAAD,gBAAA,sCAEiB,UAAAE,QAAQ,EAAI;MAC5BJ,KAAI,CAACI,QAAQ,GAAGA,QAAQ;IAC1B,CAAC;IAAA,IAAAF,gBAAA,8BAES,UAAAG,IAAA,EAAiB;MAAA,IAAdC,OAAO,GAAAD,IAAA,CAAPC,OAAO;MAClBN,KAAI,CAACO,KAAK,GAAGD,OAAO;IACtB,CAAC;IAAA,IAAAJ,gBAAA,mCAEc,UAAAM,KAAA,EAAiB;MAAA,IAAdF,OAAO,GAAAE,KAAA,CAAPF,OAAO;MACvBN,KAAI,CAACO,KAAK,GAAGD,OAAO;IACtB,CAAC;IAAA,IAAAJ,gBAAA,iCAEY,UAAAO,KAAK,EAAI,CAAC,CAAC;IAAA,IAAAP,gBAAA,8BAEd,UAAAO,KAAK,EAAI,CAAC,CAAC;IAAA,IAAAP,gBAAA,6BAEZ,UAAAO,KAAK,EAAI,CAAC,CAAC;IAxBlB,IAAI,CAACN,MAAM,GAAG,IAAI;IAClB,IAAI,CAACI,KAAK,GAAG,IAAI;EACnB;EAAC,IAAAG,aAAA,aAAAX,kBAAA;IAAAY,GAAA;IAAAC,GAAA,EAwBD,SAAAA,IAAA,EAAa;MACX,OAAO;QACLC,IAAI,EAAE,IAAI,CAACC,MAAM;QACjBC,KAAK,EAAE,IAAI,CAACC,OAAO;QACnBT,KAAK,EAAE,IAAI,CAACU,OAAO;QACnBC,QAAQ,EAAE,IAAI,CAACC,UAAU;QACzBC,UAAU,EAAE,IAAI,CAACA;MACnB,CAAC;IACH;EAAC;EAAA,OAAArB,kBAAA;AAAA;AAAA,IAAAsB,QAAA,GAAAC,OAAA,cAGYvB,kBAAkB"}
1
+ {"version":3,"file":"JWPlayerController.js","names":["_constants","require","JWPlayerController","_ref","_this","emitEvent","_classCallCheck2","_defineProperty2","player","setError","_ref2","message","error","_ref3","action","_this$player$getPlayl","getPlaylistItem","videoId","mediaid","event","doEmitEvent","EVENT_ACTIONS","ENDED","PAUSED","PLAYING","_createClass2","key","get","play","onPlay","pause","onPause","onError","complete","onComplete","setupError","_default","exports"],"sources":["../../../../../src/components/Video/providers/JWPlayer/JWPlayerController.js"],"sourcesContent":["/*\n Custom controller to extend and scale the 'react-jw-player' library for future updates.\n*/\n\nimport { EVENT_ACTIONS } from '../../constants';\n\nclass JWPlayerController {\n constructor({ emitEvent }) {\n this.player = null;\n this.error = null;\n this.emitEvent = emitEvent;\n }\n\n setPlayer = player => {\n this.player = player;\n };\n\n setErrorHandler = setError => {\n this.setError = setError;\n };\n\n onError = ({ message }) => {\n this.error = message;\n };\n\n onSetupError = ({ message }) => {\n this.error = message;\n };\n\n doEmitEvent = action => {\n const { emitEvent } = this;\n if (emitEvent) {\n const { mediaid: videoId } = this.player.getPlaylistItem();\n emitEvent({ action, videoId });\n }\n };\n\n onComplete = event => {\n this.doEmitEvent(EVENT_ACTIONS.ENDED);\n };\n\n onPause = event => {\n this.doEmitEvent(EVENT_ACTIONS.PAUSED);\n };\n\n onPlay = event => {\n this.doEmitEvent(EVENT_ACTIONS.PLAYING);\n };\n\n get events() {\n return {\n play: this.onPlay,\n pause: this.onPause,\n error: this.onError,\n complete: this.onComplete,\n setupError: this.setupError\n };\n }\n}\n\nexport default JWPlayerController;\n"],"mappings":";;;;;;;;;;;AAIA,IAAAA,UAAA,GAAAC,OAAA;AAJA;AACA;AACA;AAFA,IAMMC,kBAAkB;EACtB,SAAAA,mBAAAC,IAAA,EAA2B;IAAA,IAAAC,KAAA;IAAA,IAAbC,UAAS,GAAAF,IAAA,CAATE,SAAS;IAAA,IAAAC,gBAAA,mBAAAJ,kBAAA;IAAA,IAAAK,gBAAA,gCAMX,UAAAC,MAAM,EAAI;MACpBJ,KAAI,CAACI,MAAM,GAAGA,MAAM;IACtB,CAAC;IAAA,IAAAD,gBAAA,sCAEiB,UAAAE,QAAQ,EAAI;MAC5BL,KAAI,CAACK,QAAQ,GAAGA,QAAQ;IAC1B,CAAC;IAAA,IAAAF,gBAAA,8BAES,UAAAG,KAAA,EAAiB;MAAA,IAAdC,OAAO,GAAAD,KAAA,CAAPC,OAAO;MAClBP,KAAI,CAACQ,KAAK,GAAGD,OAAO;IACtB,CAAC;IAAA,IAAAJ,gBAAA,mCAEc,UAAAM,KAAA,EAAiB;MAAA,IAAdF,OAAO,GAAAE,KAAA,CAAPF,OAAO;MACvBP,KAAI,CAACQ,KAAK,GAAGD,OAAO;IACtB,CAAC;IAAA,IAAAJ,gBAAA,kCAEa,UAAAO,MAAM,EAAI;MACtB,IAAQT,SAAS,GAAKD,KAAI,CAAlBC,SAAS;MACjB,IAAIA,SAAS,EAAE;QACb,IAAAU,qBAAA,GAA6BX,KAAI,CAACI,MAAM,CAACQ,eAAe,CAAC,CAAC;UAAzCC,OAAO,GAAAF,qBAAA,CAAhBG,OAAO;QACfb,SAAS,CAAC;UAAES,MAAM,EAANA,MAAM;UAAEG,OAAO,EAAPA;QAAQ,CAAC,CAAC;MAChC;IACF,CAAC;IAAA,IAAAV,gBAAA,iCAEY,UAAAY,KAAK,EAAI;MACpBf,KAAI,CAACgB,WAAW,CAACC,wBAAa,CAACC,KAAK,CAAC;IACvC,CAAC;IAAA,IAAAf,gBAAA,8BAES,UAAAY,KAAK,EAAI;MACjBf,KAAI,CAACgB,WAAW,CAACC,wBAAa,CAACE,MAAM,CAAC;IACxC,CAAC;IAAA,IAAAhB,gBAAA,6BAEQ,UAAAY,KAAK,EAAI;MAChBf,KAAI,CAACgB,WAAW,CAACC,wBAAa,CAACG,OAAO,CAAC;IACzC,CAAC;IAvCC,IAAI,CAAChB,MAAM,GAAG,IAAI;IAClB,IAAI,CAACI,KAAK,GAAG,IAAI;IACjB,IAAI,CAACP,SAAS,GAAGA,UAAS;EAC5B;EAAC,IAAAoB,aAAA,aAAAvB,kBAAA;IAAAwB,GAAA;IAAAC,GAAA,EAsCD,SAAAA,IAAA,EAAa;MACX,OAAO;QACLC,IAAI,EAAE,IAAI,CAACC,MAAM;QACjBC,KAAK,EAAE,IAAI,CAACC,OAAO;QACnBnB,KAAK,EAAE,IAAI,CAACoB,OAAO;QACnBC,QAAQ,EAAE,IAAI,CAACC,UAAU;QACzBC,UAAU,EAAE,IAAI,CAACA;MACnB,CAAC;IACH;EAAC;EAAA,OAAAjC,kBAAA;AAAA;AAAA,IAAAkC,QAAA,GAAAC,OAAA,cAGYnC,kBAAkB"}
@@ -10,21 +10,28 @@ require("core-js/modules/web.dom-collections.for-each.js");
10
10
  require("core-js/modules/es.object.get-own-property-descriptors.js");
11
11
  require("core-js/modules/es.object.define-properties.js");
12
12
  require("core-js/modules/es.object.define-property.js");
13
+ require("core-js/modules/es.array.iterator.js");
14
+ require("core-js/modules/es.string.iterator.js");
15
+ require("core-js/modules/es.weak-map.js");
16
+ require("core-js/modules/web.dom-collections.iterator.js");
13
17
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
18
+ var _typeof = require("@babel/runtime/helpers/typeof");
14
19
  Object.defineProperty(exports, "__esModule", {
15
20
  value: true
16
21
  });
17
22
  exports["default"] = void 0;
18
23
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
19
24
  require("core-js/modules/es.function.name.js");
20
- var _react = _interopRequireDefault(require("react"));
25
+ var _react = _interopRequireWildcard(require("react"));
21
26
  var _propTypes = _interopRequireDefault(require("prop-types"));
22
27
  var _reactJwPlayer = _interopRequireDefault(require("react-jw-player"));
23
28
  var _constants = require("../../../../constants");
24
29
  var _JWPlayerController = _interopRequireDefault(require("./JWPlayerController"));
30
+ var _VideoContext = require("../../VideoContext");
31
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
32
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
25
33
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
26
34
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
27
- var PlayerController = new _JWPlayerController["default"]();
28
35
  var JWPlayerProvider = function JWPlayerProvider(_ref) {
29
36
  var url = _ref.url,
30
37
  name = _ref.name,
@@ -35,14 +42,19 @@ var JWPlayerProvider = function JWPlayerProvider(_ref) {
35
42
  muted = _ref.muted,
36
43
  imageData = _ref.imageData,
37
44
  repeat = _ref.loop;
45
+ var _useContext = (0, _react.useContext)(_VideoContext.VideoContext),
46
+ emitEvent = _useContext.emitEvent;
47
+ var PlayerController = (0, _react.useRef)(new _JWPlayerController["default"]({
48
+ emitEvent: emitEvent
49
+ }));
38
50
  var handleOnReady = function handleOnReady() {
39
51
  var jwPlayer = window.jwplayer(name);
40
52
  if (jwPlayer) {
41
- PlayerController.setPlayer(jwPlayer);
53
+ PlayerController.current.setPlayer(jwPlayer);
42
54
  }
43
55
  };
44
56
  var getJWPlayerProps = function getJWPlayerProps() {
45
- var events = PlayerController.events;
57
+ var events = PlayerController.current.events;
46
58
  var props = {
47
59
  customProps: {
48
60
  repeat: repeat,
@@ -1 +1 @@
1
- {"version":3,"file":"JWPlayerProvider.js","names":["_react","_interopRequireDefault","require","_propTypes","_reactJwPlayer","_constants","_JWPlayerController","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","PlayerController","JWPlayerController","JWPlayerProvider","_ref","url","name","autoplay","controls","type","urlScript","muted","imageData","repeat","loop","handleOnReady","jwPlayer","window","jwplayer","setPlayer","getJWPlayerProps","events","props","customProps","playerScript","isAutoPlay","isMuted","playerId","onReady","className","VIDEO_WRAPPER_CLASS_NAME","JW_PLAYER_TYPE_FILE","_imageData$url","imageURL","image","file","playlist","createElement","propTypes","PropTypes","string","isRequired","imageId","bool","object","defaultProps","_default","exports"],"sources":["../../../../../src/components/Video/providers/JWPlayer/JWPlayerProvider.js"],"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"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,cAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,UAAA,GAAAH,OAAA;AACA,IAAAI,mBAAA,GAAAL,sBAAA,CAAAC,OAAA;AAAsD,SAAAK,QAAAC,CAAA,EAAAC,CAAA,QAAAC,CAAA,GAAAC,MAAA,CAAAC,IAAA,CAAAJ,CAAA,OAAAG,MAAA,CAAAE,qBAAA,QAAAC,CAAA,GAAAH,MAAA,CAAAE,qBAAA,CAAAL,CAAA,GAAAC,CAAA,KAAAK,CAAA,GAAAA,CAAA,CAAAC,MAAA,WAAAN,CAAA,WAAAE,MAAA,CAAAK,wBAAA,CAAAR,CAAA,EAAAC,CAAA,EAAAQ,UAAA,OAAAP,CAAA,CAAAQ,IAAA,CAAAC,KAAA,CAAAT,CAAA,EAAAI,CAAA,YAAAJ,CAAA;AAAA,SAAAU,cAAAZ,CAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAY,SAAA,CAAAC,MAAA,EAAAb,CAAA,UAAAC,CAAA,WAAAW,SAAA,CAAAZ,CAAA,IAAAY,SAAA,CAAAZ,CAAA,QAAAA,CAAA,OAAAF,OAAA,CAAAI,MAAA,CAAAD,CAAA,OAAAa,OAAA,WAAAd,CAAA,QAAAe,gBAAA,aAAAhB,CAAA,EAAAC,CAAA,EAAAC,CAAA,CAAAD,CAAA,SAAAE,MAAA,CAAAc,yBAAA,GAAAd,MAAA,CAAAe,gBAAA,CAAAlB,CAAA,EAAAG,MAAA,CAAAc,yBAAA,CAAAf,CAAA,KAAAH,OAAA,CAAAI,MAAA,CAAAD,CAAA,GAAAa,OAAA,WAAAd,CAAA,IAAAE,MAAA,CAAAgB,cAAA,CAAAnB,CAAA,EAAAC,CAAA,EAAAE,MAAA,CAAAK,wBAAA,CAAAN,CAAA,EAAAD,CAAA,iBAAAD,CAAA;AAEtD,IAAMoB,gBAAgB,GAAG,IAAIC,8BAAkB,CAAC,CAAC;AAEjD,IAAMC,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAAC,IAAA,EAUhB;EAAA,IATJC,GAAG,GAAAD,IAAA,CAAHC,GAAG;IACHC,IAAI,GAAAF,IAAA,CAAJE,IAAI;IACJC,QAAQ,GAAAH,IAAA,CAARG,QAAQ;IACRC,QAAQ,GAAAJ,IAAA,CAARI,QAAQ;IACRC,IAAI,GAAAL,IAAA,CAAJK,IAAI;IACJC,SAAS,GAAAN,IAAA,CAATM,SAAS;IACTC,KAAK,GAAAP,IAAA,CAALO,KAAK;IACLC,SAAS,GAAAR,IAAA,CAATQ,SAAS;IACHC,MAAM,GAAAT,IAAA,CAAZU,IAAI;EAEJ,IAAMC,aAAa,GAAG,SAAhBA,aAAaA,CAAA,EAAS;IAC1B,IAAMC,QAAQ,GAAGC,MAAM,CAACC,QAAQ,CAACZ,IAAI,CAAC;IACtC,IAAIU,QAAQ,EAAE;MACZf,gBAAgB,CAACkB,SAAS,CAACH,QAAQ,CAAC;IACtC;EACF,CAAC;EAED,IAAMI,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAA,EAAS;IAC7B,IAAQC,MAAM,GAAKpB,gBAAgB,CAA3BoB,MAAM;IAEd,IAAMC,KAAK,GAAG;MACZC,WAAW,EAAE;QAAEV,MAAM,EAANA,MAAM;QAAEL,QAAQ,EAARA,QAAQ;QAAEa,MAAM,EAANA;MAAO,CAAC;MACzCG,YAAY,EAAEd,SAAS;MACvBe,UAAU,EAAElB,QAAQ;MACpBmB,OAAO,EAAEf,KAAK;MACdgB,QAAQ,EAAErB,IAAI;MACdsB,OAAO,EAAEb,aAAa;MACtBc,SAAS,EAAEC;IACb,CAAC;IAED,IAAIrB,IAAI,KAAKsB,8BAAmB,EAAE;MAChC,IAAAC,cAAA,GAA+BpB,SAAS,CAAhCP,GAAG;QAAE4B,QAAQ,GAAAD,cAAA,cAAG,EAAE,GAAAA,cAAA;MAC1B,OAAAvC,aAAA,CAAAA,aAAA,KAAY6B,KAAK;QAAEY,KAAK,EAAED,QAAQ;QAAEE,IAAI,EAAE9B;MAAG;IAC/C;IAEA,OAAAZ,aAAA,CAAAA,aAAA,KAAY6B,KAAK;MAAEc,QAAQ,EAAE/B;IAAG;EAClC,CAAC;EAED,oBAAOhC,MAAA,YAAAgE,aAAA,CAAC5D,cAAA,WAAa,EAAK2C,gBAAgB,CAAC,CAAI,CAAC;AAClD,CAAC;AAEDjB,gBAAgB,CAACmC,SAAS,GAAG;EAC3BjC,GAAG,EAAEkC,qBAAS,CAACC,MAAM,CAACC,UAAU;EAChCnC,IAAI,EAAEiC,qBAAS,CAACC,MAAM,CAACC,UAAU;EACjC/B,SAAS,EAAE6B,qBAAS,CAACC,MAAM,CAACC,UAAU;EACtCC,OAAO,EAAEH,qBAAS,CAACC,MAAM;EACzBjC,QAAQ,EAAEgC,qBAAS,CAACI,IAAI;EACxB7B,IAAI,EAAEyB,qBAAS,CAACI,IAAI;EACpBnC,QAAQ,EAAE+B,qBAAS,CAACI,IAAI;EACxBhC,KAAK,EAAE4B,qBAAS,CAACI,IAAI;EACrBlC,IAAI,EAAE8B,qBAAS,CAACC,MAAM;EACtB5B,SAAS,EAAE2B,qBAAS,CAACK;AACvB,CAAC;AAEDzC,gBAAgB,CAAC0C,YAAY,GAAG;EAC9BtC,QAAQ,EAAE,KAAK;EACfO,IAAI,EAAE,KAAK;EACXN,QAAQ,EAAE,IAAI;EACdG,KAAK,EAAE,KAAK;EACZF,IAAI,EAAE,UAAU;EAChBiC,OAAO,EAAE,IAAI;EACb9B,SAAS,EAAE,CAAC;AACd,CAAC;AAAC,IAAAkC,QAAA,GAAAC,OAAA,cAEa5C,gBAAgB"}
1
+ {"version":3,"file":"JWPlayerProvider.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_reactJwPlayer","_constants","_JWPlayerController","_VideoContext","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","JWPlayerProvider","_ref","url","name","autoplay","controls","type","urlScript","muted","imageData","repeat","loop","_useContext","useContext","VideoContext","emitEvent","PlayerController","useRef","JWPlayerController","handleOnReady","jwPlayer","window","jwplayer","current","setPlayer","getJWPlayerProps","events","props","customProps","playerScript","isAutoPlay","isMuted","playerId","onReady","className","VIDEO_WRAPPER_CLASS_NAME","JW_PLAYER_TYPE_FILE","_imageData$url","imageURL","image","file","playlist","createElement","propTypes","PropTypes","string","isRequired","imageId","bool","object","defaultProps","_default","exports"],"sources":["../../../../../src/components/Video/providers/JWPlayer/JWPlayerProvider.js"],"sourcesContent":["import React, { useContext, useRef } 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';\nimport { VideoContext } from '../../VideoContext';\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 { emitEvent } = useContext(VideoContext);\n const PlayerController = useRef(new JWPlayerController({ emitEvent }));\n\n const handleOnReady = () => {\n const jwPlayer = window.jwplayer(name);\n if (jwPlayer) {\n PlayerController.current.setPlayer(jwPlayer);\n }\n };\n\n const getJWPlayerProps = () => {\n const { events } = PlayerController.current;\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"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,cAAA,GAAAD,sBAAA,CAAAF,OAAA;AACA,IAAAI,UAAA,GAAAJ,OAAA;AACA,IAAAK,mBAAA,GAAAH,sBAAA,CAAAF,OAAA;AACA,IAAAM,aAAA,GAAAN,OAAA;AAAkD,SAAAO,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,yBAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAT,wBAAAS,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,gBAAAK,OAAA,CAAAL,CAAA,0BAAAA,CAAA,sBAAAA,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAc,CAAA,SAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,cAAAR,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAgB,GAAA,CAAAnB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAAA,SAAAY,QAAApB,CAAA,EAAAE,CAAA,QAAAC,CAAA,GAAAQ,MAAA,CAAAU,IAAA,CAAArB,CAAA,OAAAW,MAAA,CAAAW,qBAAA,QAAAC,CAAA,GAAAZ,MAAA,CAAAW,qBAAA,CAAAtB,CAAA,GAAAE,CAAA,KAAAqB,CAAA,GAAAA,CAAA,CAAAC,MAAA,WAAAtB,CAAA,WAAAS,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAE,CAAA,EAAAuB,UAAA,OAAAtB,CAAA,CAAAuB,IAAA,CAAAC,KAAA,CAAAxB,CAAA,EAAAoB,CAAA,YAAApB,CAAA;AAAA,SAAAyB,cAAA5B,CAAA,aAAAE,CAAA,MAAAA,CAAA,GAAA2B,SAAA,CAAAC,MAAA,EAAA5B,CAAA,UAAAC,CAAA,WAAA0B,SAAA,CAAA3B,CAAA,IAAA2B,SAAA,CAAA3B,CAAA,QAAAA,CAAA,OAAAkB,OAAA,CAAAT,MAAA,CAAAR,CAAA,OAAA4B,OAAA,WAAA7B,CAAA,QAAA8B,gBAAA,aAAAhC,CAAA,EAAAE,CAAA,EAAAC,CAAA,CAAAD,CAAA,SAAAS,MAAA,CAAAsB,yBAAA,GAAAtB,MAAA,CAAAuB,gBAAA,CAAAlC,CAAA,EAAAW,MAAA,CAAAsB,yBAAA,CAAA9B,CAAA,KAAAiB,OAAA,CAAAT,MAAA,CAAAR,CAAA,GAAA4B,OAAA,WAAA7B,CAAA,IAAAS,MAAA,CAAAC,cAAA,CAAAZ,CAAA,EAAAE,CAAA,EAAAS,MAAA,CAAAE,wBAAA,CAAAV,CAAA,EAAAD,CAAA,iBAAAF,CAAA;AAElD,IAAMmC,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAAC,IAAA,EAUhB;EAAA,IATJC,GAAG,GAAAD,IAAA,CAAHC,GAAG;IACHC,IAAI,GAAAF,IAAA,CAAJE,IAAI;IACJC,QAAQ,GAAAH,IAAA,CAARG,QAAQ;IACRC,QAAQ,GAAAJ,IAAA,CAARI,QAAQ;IACRC,IAAI,GAAAL,IAAA,CAAJK,IAAI;IACJC,SAAS,GAAAN,IAAA,CAATM,SAAS;IACTC,KAAK,GAAAP,IAAA,CAALO,KAAK;IACLC,SAAS,GAAAR,IAAA,CAATQ,SAAS;IACHC,MAAM,GAAAT,IAAA,CAAZU,IAAI;EAEJ,IAAAC,WAAA,GAAsB,IAAAC,iBAAU,EAACC,0BAAY,CAAC;IAAtCC,SAAS,GAAAH,WAAA,CAATG,SAAS;EACjB,IAAMC,gBAAgB,GAAG,IAAAC,aAAM,EAAC,IAAIC,8BAAkB,CAAC;IAAEH,SAAS,EAATA;EAAU,CAAC,CAAC,CAAC;EAEtE,IAAMI,aAAa,GAAG,SAAhBA,aAAaA,CAAA,EAAS;IAC1B,IAAMC,QAAQ,GAAGC,MAAM,CAACC,QAAQ,CAACnB,IAAI,CAAC;IACtC,IAAIiB,QAAQ,EAAE;MACZJ,gBAAgB,CAACO,OAAO,CAACC,SAAS,CAACJ,QAAQ,CAAC;IAC9C;EACF,CAAC;EAED,IAAMK,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAA,EAAS;IAC7B,IAAQC,MAAM,GAAKV,gBAAgB,CAACO,OAAO,CAAnCG,MAAM;IAEd,IAAMC,KAAK,GAAG;MACZC,WAAW,EAAE;QAAElB,MAAM,EAANA,MAAM;QAAEL,QAAQ,EAARA,QAAQ;QAAEqB,MAAM,EAANA;MAAO,CAAC;MACzCG,YAAY,EAAEtB,SAAS;MACvBuB,UAAU,EAAE1B,QAAQ;MACpB2B,OAAO,EAAEvB,KAAK;MACdwB,QAAQ,EAAE7B,IAAI;MACd8B,OAAO,EAAEd,aAAa;MACtBe,SAAS,EAAEC;IACb,CAAC;IAED,IAAI7B,IAAI,KAAK8B,8BAAmB,EAAE;MAChC,IAAAC,cAAA,GAA+B5B,SAAS,CAAhCP,GAAG;QAAEoC,QAAQ,GAAAD,cAAA,cAAG,EAAE,GAAAA,cAAA;MAC1B,OAAA5C,aAAA,CAAAA,aAAA,KAAYkC,KAAK;QAAEY,KAAK,EAAED,QAAQ;QAAEE,IAAI,EAAEtC;MAAG;IAC/C;IAEA,OAAAT,aAAA,CAAAA,aAAA,KAAYkC,KAAK;MAAEc,QAAQ,EAAEvC;IAAG;EAClC,CAAC;EAED,oBAAO/C,MAAA,YAAAuF,aAAA,CAAClF,cAAA,WAAa,EAAKiE,gBAAgB,CAAC,CAAI,CAAC;AAClD,CAAC;AAEDzB,gBAAgB,CAAC2C,SAAS,GAAG;EAC3BzC,GAAG,EAAE0C,qBAAS,CAACC,MAAM,CAACC,UAAU;EAChC3C,IAAI,EAAEyC,qBAAS,CAACC,MAAM,CAACC,UAAU;EACjCvC,SAAS,EAAEqC,qBAAS,CAACC,MAAM,CAACC,UAAU;EACtCC,OAAO,EAAEH,qBAAS,CAACC,MAAM;EACzBzC,QAAQ,EAAEwC,qBAAS,CAACI,IAAI;EACxBrC,IAAI,EAAEiC,qBAAS,CAACI,IAAI;EACpB3C,QAAQ,EAAEuC,qBAAS,CAACI,IAAI;EACxBxC,KAAK,EAAEoC,qBAAS,CAACI,IAAI;EACrB1C,IAAI,EAAEsC,qBAAS,CAACC,MAAM;EACtBpC,SAAS,EAAEmC,qBAAS,CAACK;AACvB,CAAC;AAEDjD,gBAAgB,CAACkD,YAAY,GAAG;EAC9B9C,QAAQ,EAAE,KAAK;EACfO,IAAI,EAAE,KAAK;EACXN,QAAQ,EAAE,IAAI;EACdG,KAAK,EAAE,KAAK;EACZF,IAAI,EAAE,UAAU;EAChByC,OAAO,EAAE,IAAI;EACbtC,SAAS,EAAE,CAAC;AACd,CAAC;AAAC,IAAA0C,QAAA,GAAAC,OAAA,cAEapD,gBAAgB"}
@@ -20,8 +20,11 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
20
20
  var _customHooks = require("@blaze-react/utils/lib/customHooks");
21
21
  var _constants = require("../../../../constants");
22
22
  var _helpers = require("./helpers");
23
+ var _VideoContext = require("../../VideoContext");
24
+ var _constants2 = require("../../constants");
23
25
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
24
26
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
27
+ var SCRIPT_ID = 'youtube-iframe-api';
25
28
  var YoutubeEmbeded = function YoutubeEmbeded(_ref) {
26
29
  var autoplay = _ref.autoplay,
27
30
  videoId = _ref.videoId,
@@ -40,6 +43,10 @@ var YoutubeEmbeded = function YoutubeEmbeded(_ref) {
40
43
  priority = _ref.priority,
41
44
  placeholderOnly = _ref.placeholderOnly,
42
45
  imageData = _ref.imageData;
46
+ var ref = (0, _react.useRef)(null);
47
+ var playerRef = (0, _react.useRef)(null);
48
+ var _useContext = (0, _react.useContext)(_VideoContext.VideoContext),
49
+ emitEvent = _useContext.emitEvent;
43
50
  var _useInView = (0, _customHooks.useInView)(_constants.IN_VIEW_CONFIG),
44
51
  _useInView2 = (0, _slicedToArray2["default"])(_useInView, 2),
45
52
  isIntersecting = _useInView2[0],
@@ -74,7 +81,53 @@ var YoutubeEmbeded = function YoutubeEmbeded(_ref) {
74
81
  });
75
82
  var mutedValue = muted ? '&mute=1' : '';
76
83
  var iframeSrc = !playlist ? "".concat(ytUrl, "/embed/").concat(encodedId, "?autoplay=1").concat(mutedValue).concat(paramsImp) : "".concat(ytUrl, "/embed/videoseries?autoplay=1").concat(mutedValue, "&list=").concat(encodedId).concat(paramsImp);
84
+ if (emitEvent) iframeSrc += "&enablejsapi=1&origin=".concat(window.location.origin);
77
85
  var parsedWrapperClassname = "yt-facade ".concat(renderIframe ? 'yt-activated' : '');
86
+ var iframeId = "yt-iframe-".concat(videoId);
87
+ (0, _react.useEffect)(function () {
88
+ if (!emitEvent || !renderIframe) return;
89
+ if (!document.getElementById(SCRIPT_ID)) {
90
+ // if script not already loaded
91
+ var tag = document.createElement('script');
92
+ tag.id = SCRIPT_ID;
93
+ tag.src = 'https://www.youtube.com/iframe_api';
94
+ var firstScriptTag = document.getElementsByTagName('script')[0];
95
+ firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
96
+ }
97
+ var onStateChange = function onStateChange(event) {
98
+ var action = '';
99
+ if (event.data === window.YT.PlayerState.ENDED) {
100
+ action = _constants2.EVENT_ACTIONS.ENDED;
101
+ } else if (event.data === window.YT.PlayerState.PAUSED) {
102
+ action = _constants2.EVENT_ACTIONS.PAUSED;
103
+ } else if (event.data === window.YT.PlayerState.PLAYING) {
104
+ action = _constants2.EVENT_ACTIONS.PLAYING;
105
+ }
106
+ emitEvent({
107
+ action: action,
108
+ videoId: videoId
109
+ });
110
+ };
111
+ if (window.YT) {
112
+ // if script already loaded then attach player
113
+ window.YT.ready(function () {
114
+ playerRef.current = new window.YT.Player(iframeId, {
115
+ events: {
116
+ onStateChange: onStateChange
117
+ }
118
+ });
119
+ });
120
+ } else {
121
+ // called on script load
122
+ window.onYouTubeIframeAPIReady = function () {
123
+ playerRef.current = new window.YT.Player(ref.current, {
124
+ events: {
125
+ onStateChange: onStateChange
126
+ }
127
+ });
128
+ };
129
+ }
130
+ }, [emitEvent, iframeId, renderIframe, videoId]);
78
131
  (0, _react.useEffect)(function () {
79
132
  var isMounted = true;
80
133
  if (!priority && !isIntersecting || imageSize === _helpers.YT_HQ_FORMAT) return;
@@ -135,6 +188,8 @@ var YoutubeEmbeded = function YoutubeEmbeded(_ref) {
135
188
  }, /*#__PURE__*/_react["default"].createElement("div", {
136
189
  className: "yt-facade-button"
137
190
  })), renderIframe && /*#__PURE__*/_react["default"].createElement("iframe", {
191
+ ref: ref,
192
+ id: iframeId,
138
193
  className: iframeClass,
139
194
  title: videoTitle,
140
195
  allow: "accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture",
@@ -1 +1 @@
1
- {"version":3,"file":"YoutubeEmbeded.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_customHooks","_constants","_helpers","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","YoutubeEmbeded","_ref","autoplay","videoId","playlistCoverId","videoTitle","poster","videoParams","announce","noCookie","webp","playlist","onIframeAdded","muted","adNetwork","iframeClass","priority","placeholderOnly","imageData","_useInView","useInView","IN_VIEW_CONFIG","_useInView2","_slicedToArray2","isIntersecting","outerRef","_useState","useState","_useState2","preconnected","setPreconnected","_useState3","_useState4","renderIframe","setRenderIframe","_useState5","imageSize","displayImage","_useState6","_useState6$","setImageDetails","encodedId","encodeURIComponent","paramsImp","concat","ytUrl","posterUrl","getPosterUrl","mutedValue","iframeSrc","parsedWrapperClassname","useEffect","isMounted","YT_HQ_FORMAT","img","Image","onload","newImageSize","width","src","warmConnections","addIframe","createElement","Fragment","rel","href","YT_IMAGE_URL","ref","role","onPointerOver","onClick","className","style","backgroundImage","type","title","allow","allowFullScreen","propTypes","PropTypes","bool","func","string","object","defaultProps","_default","exports"],"sources":["../../../../../src/components/Video/providers/YouTube/YoutubeEmbeded.js"],"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 let isMounted = true;\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 if (isMounted) setImageDetails({ imageSize: newImageSize, displayImage: true });\n };\n\n img.src = posterUrl;\n return () => {\n isMounted = false;\n };\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 aria-label={`View ${videoTitle || 'video'}`}\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"],"mappings":"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"}
1
+ {"version":3,"file":"YoutubeEmbeded.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_customHooks","_constants","_helpers","_VideoContext","_constants2","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","SCRIPT_ID","YoutubeEmbeded","_ref","autoplay","videoId","playlistCoverId","videoTitle","poster","videoParams","announce","noCookie","webp","playlist","onIframeAdded","muted","adNetwork","iframeClass","priority","placeholderOnly","imageData","ref","useRef","playerRef","_useContext","useContext","VideoContext","emitEvent","_useInView","useInView","IN_VIEW_CONFIG","_useInView2","_slicedToArray2","isIntersecting","outerRef","_useState","useState","_useState2","preconnected","setPreconnected","_useState3","_useState4","renderIframe","setRenderIframe","_useState5","imageSize","displayImage","_useState6","_useState6$","setImageDetails","encodedId","encodeURIComponent","paramsImp","concat","ytUrl","posterUrl","getPosterUrl","mutedValue","iframeSrc","window","location","origin","parsedWrapperClassname","iframeId","useEffect","document","getElementById","tag","createElement","id","src","firstScriptTag","getElementsByTagName","parentNode","insertBefore","onStateChange","event","action","data","YT","PlayerState","ENDED","EVENT_ACTIONS","PAUSED","PLAYING","ready","current","Player","events","onYouTubeIframeAPIReady","isMounted","YT_HQ_FORMAT","img","Image","onload","newImageSize","width","warmConnections","addIframe","Fragment","rel","href","YT_IMAGE_URL","role","onPointerOver","onClick","className","style","backgroundImage","type","title","allow","allowFullScreen","propTypes","PropTypes","bool","func","string","object","defaultProps","_default","exports"],"sources":["../../../../../src/components/Video/providers/YouTube/YoutubeEmbeded.js"],"sourcesContent":["import React, { useState, useEffect, useContext, useRef } 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';\nimport { VideoContext } from '../../VideoContext';\nimport { EVENT_ACTIONS } from '../../constants';\n\nconst SCRIPT_ID = 'youtube-iframe-api';\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 ref = useRef(null);\n const playerRef = useRef(null);\n const { emitEvent } = useContext(VideoContext);\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 let iframeSrc = !playlist\n ? `${ytUrl}/embed/${encodedId}?autoplay=1${mutedValue}${paramsImp}`\n : `${ytUrl}/embed/videoseries?autoplay=1${mutedValue}&list=${encodedId}${paramsImp}`;\n if (emitEvent) iframeSrc += `&enablejsapi=1&origin=${window.location.origin}`;\n\n const parsedWrapperClassname = `yt-facade ${renderIframe ? 'yt-activated' : ''}`;\n const iframeId = `yt-iframe-${videoId}`;\n\n useEffect(\n () => {\n if (!emitEvent || !renderIframe) return;\n\n if (!document.getElementById(SCRIPT_ID)) {\n // if script not already loaded\n const tag = document.createElement('script');\n tag.id = SCRIPT_ID;\n tag.src = 'https://www.youtube.com/iframe_api';\n const firstScriptTag = document.getElementsByTagName('script')[0];\n firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);\n }\n\n const onStateChange = event => {\n let action = '';\n if (event.data === window.YT.PlayerState.ENDED) {\n action = EVENT_ACTIONS.ENDED;\n } else if (event.data === window.YT.PlayerState.PAUSED) {\n action = EVENT_ACTIONS.PAUSED;\n } else if (event.data === window.YT.PlayerState.PLAYING) {\n action = EVENT_ACTIONS.PLAYING;\n }\n\n emitEvent({ action, videoId });\n };\n\n if (window.YT) {\n // if script already loaded then attach player\n window.YT.ready(() => {\n playerRef.current = new window.YT.Player(iframeId, {\n events: {\n onStateChange\n }\n });\n });\n } else {\n // called on script load\n window.onYouTubeIframeAPIReady = () => {\n playerRef.current = new window.YT.Player(ref.current, {\n events: {\n onStateChange\n }\n });\n };\n }\n },\n [emitEvent, iframeId, renderIframe, videoId]\n );\n\n useEffect(\n () => {\n let isMounted = true;\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 if (isMounted) setImageDetails({ imageSize: newImageSize, displayImage: true });\n };\n\n img.src = posterUrl;\n return () => {\n isMounted = false;\n };\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 aria-label={`View ${videoTitle || 'video'}`}\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 ref={ref}\n id={iframeId}\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"],"mappings":"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"}
@@ -58,9 +58,8 @@ var buildFiltersQuery = function buildFiltersQuery(_ref2) {
58
58
  rangeValues = _ref2.rangeValues,
59
59
  queryKeys = _ref2.queryKeys,
60
60
  query = _ref2.query;
61
- if (!shouldAddFilters) return [];
62
61
  var mustFilters = [];
63
- if (query) {
62
+ if (shouldAddFilters && query) {
64
63
  Object.keys(query).forEach(function (queryKey) {
65
64
  if (QUERY_KEYS_TO_IGNORE.includes(queryKey)) return;
66
65
  if (!queryKey || !query[queryKey]) return;
@@ -1 +1 @@
1
- {"version":3,"file":"build-filters-query.js","names":["QUERY_KEYS_TO_IGNORE","builFilterObject","_ref","queryKey","value","filters","isRange","isInQuery","min","minValue","max","maxValue","push","range","_defineProperty2","gte","Number","lte","key","concat","isArray","Array","singleFilterObj","match","forEach","filterValue","buildFiltersQuery","_ref2","shouldAddFilters","filterBy","filterByProperty","rangeValues","queryKeys","query","mustFilters","Object","keys","includes","queryValue","length","filterByPropOption","_filterByPropOption$s","split","_filterByPropOption$s2","_slicedToArray2","filterByPropKey","filterByOption","indexOf","_filterByOption$split","_filterByOption$split2","filteryByValue","filterByKeyword","_default","exports"],"sources":["../../src/helpers/build-filters-query.js"],"sourcesContent":["const QUERY_KEYS_TO_IGNORE = ['dataNotSet', 'shouldSearch', 'search_term'];\n\nconst builFilterObject = ({ queryKey, value, filters, isRange, isInQuery }) => {\n if (isRange) {\n // don't add to query if value matches range values\n if (isInQuery || (value.min !== value.minValue && value.max !== value.maxValue)) {\n filters.push({\n range: {\n [queryKey]: {\n gte: Number(value.minValue),\n lte: Number(value.maxValue)\n }\n }\n });\n }\n return;\n }\n\n const key = isRange ? queryKey : `${queryKey}.keyword`;\n\n const isArray = Array.isArray(value);\n if (!isArray) {\n const singleFilterObj = { match: { [key]: value } };\n filters.push(singleFilterObj);\n return;\n }\n\n value.forEach(filterValue => {\n filters.push({ match: { [key]: filterValue } });\n });\n};\n\nconst buildFiltersQuery = ({\n shouldAddFilters,\n filterBy,\n filterByProperty,\n rangeValues,\n queryKeys,\n query\n}) => {\n if (!shouldAddFilters) return [];\n const mustFilters = [];\n if (query) {\n Object.keys(query).forEach(queryKey => {\n if (QUERY_KEYS_TO_IGNORE.includes(queryKey)) return;\n if (!queryKey || !query[queryKey]) return;\n const queryValue = query[queryKey];\n\n const isRange = rangeValues.includes(queryKey);\n const isInQuery = queryKeys.includes(queryKey);\n builFilterObject({ queryKey, value: queryValue, filters: mustFilters, isRange, isInQuery });\n });\n }\n\n if (filterByProperty && filterByProperty.length) {\n filterByProperty.forEach(filterByPropOption => {\n const [filterByPropKey] = filterByPropOption.split('/');\n filterBy.forEach(filterByOption => {\n if (filterByOption.indexOf(filterByPropKey) === -1) return;\n const [, filteryByValue] = filterByOption.split('/');\n const filterByKeyword = `${filterByPropKey}.keyword`;\n if (!filteryByValue) return;\n mustFilters.push({ match: { [filterByKeyword]: filteryByValue } });\n });\n });\n }\n\n return mustFilters;\n};\n\nexport default buildFiltersQuery;\n"],"mappings":"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"}
1
+ {"version":3,"file":"build-filters-query.js","names":["QUERY_KEYS_TO_IGNORE","builFilterObject","_ref","queryKey","value","filters","isRange","isInQuery","min","minValue","max","maxValue","push","range","_defineProperty2","gte","Number","lte","key","concat","isArray","Array","singleFilterObj","match","forEach","filterValue","buildFiltersQuery","_ref2","shouldAddFilters","filterBy","filterByProperty","rangeValues","queryKeys","query","mustFilters","Object","keys","includes","queryValue","length","filterByPropOption","_filterByPropOption$s","split","_filterByPropOption$s2","_slicedToArray2","filterByPropKey","filterByOption","indexOf","_filterByOption$split","_filterByOption$split2","filteryByValue","filterByKeyword","_default","exports"],"sources":["../../src/helpers/build-filters-query.js"],"sourcesContent":["const QUERY_KEYS_TO_IGNORE = ['dataNotSet', 'shouldSearch', 'search_term'];\n\nconst builFilterObject = ({ queryKey, value, filters, isRange, isInQuery }) => {\n if (isRange) {\n // don't add to query if value matches range values\n if (isInQuery || (value.min !== value.minValue && value.max !== value.maxValue)) {\n filters.push({\n range: {\n [queryKey]: {\n gte: Number(value.minValue),\n lte: Number(value.maxValue)\n }\n }\n });\n }\n return;\n }\n\n const key = isRange ? queryKey : `${queryKey}.keyword`;\n\n const isArray = Array.isArray(value);\n if (!isArray) {\n const singleFilterObj = { match: { [key]: value } };\n filters.push(singleFilterObj);\n return;\n }\n\n value.forEach(filterValue => {\n filters.push({ match: { [key]: filterValue } });\n });\n};\n\nconst buildFiltersQuery = ({\n shouldAddFilters,\n filterBy,\n filterByProperty,\n rangeValues,\n queryKeys,\n query\n}) => {\n const mustFilters = [];\n if (shouldAddFilters && query) {\n Object.keys(query).forEach(queryKey => {\n if (QUERY_KEYS_TO_IGNORE.includes(queryKey)) return;\n if (!queryKey || !query[queryKey]) return;\n const queryValue = query[queryKey];\n\n const isRange = rangeValues.includes(queryKey);\n const isInQuery = queryKeys.includes(queryKey);\n builFilterObject({ queryKey, value: queryValue, filters: mustFilters, isRange, isInQuery });\n });\n }\n\n if (filterByProperty && filterByProperty.length) {\n filterByProperty.forEach(filterByPropOption => {\n const [filterByPropKey] = filterByPropOption.split('/');\n filterBy.forEach(filterByOption => {\n if (filterByOption.indexOf(filterByPropKey) === -1) return;\n const [, filteryByValue] = filterByOption.split('/');\n const filterByKeyword = `${filterByPropKey}.keyword`;\n if (!filteryByValue) return;\n mustFilters.push({ match: { [filterByKeyword]: filteryByValue } });\n });\n });\n }\n\n return mustFilters;\n};\n\nexport default buildFiltersQuery;\n"],"mappings":"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"}
@@ -23,6 +23,12 @@ Object.defineProperty(exports, "useCheckMobileScreen", {
23
23
  return _useCheckMobileScreen["default"];
24
24
  }
25
25
  });
26
+ Object.defineProperty(exports, "useFilterAggregationValues", {
27
+ enumerable: true,
28
+ get: function get() {
29
+ return _useFilterAggregationValues["default"];
30
+ }
31
+ });
26
32
  Object.defineProperty(exports, "useGetEntitySchema", {
27
33
  enumerable: true,
28
34
  get: function get() {
@@ -75,4 +81,5 @@ var _useCheckMobileScreen = _interopRequireDefault(require("./use-check-mobile-s
75
81
  var _useBannerInsertion = _interopRequireDefault(require("./use-banner-insertion"));
76
82
  var _useAppSyncEventHook = _interopRequireDefault(require("./use-app-sync-event-hook"));
77
83
  var _usePortal = _interopRequireDefault(require("./use-portal"));
84
+ var _useFilterAggregationValues = _interopRequireDefault(require("./use-filter-aggregation-values"));
78
85
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_useGetEntitySchema","_interopRequireDefault","require","_useGetEntitySchemasAsObj","_useGetImageIdFromRelation","_useGetImages","_usePageBuilder","_useGetSingleEntitySchema","_useCheckMobileScreen","_useBannerInsertion","_useAppSyncEventHook","_usePortal"],"sources":["../../src/hooks/index.js"],"sourcesContent":["export { default as useGetEntitySchema } from './use-get-entity-schema';\nexport { default as useGetEntitySchemasAsObj } from './use-get-entity-schemas-as-obj';\nexport { default as useGetImageIdFromRelation } from './use-get-image-id-from-relation';\nexport { default as useGetImages } from './use-get-images';\nexport { default as usePageBuilder } from './use-page-builder';\nexport { default as useGetSingleEntitySchema } from './use-get-single-entity-schema';\nexport { default as useCheckMobileScreen } from './use-check-mobile-screen';\nexport { default as useBannerInsertion } from './use-banner-insertion';\nexport { default as useAppSyncEventHook } from './use-app-sync-event-hook';\nexport { default as usePortal } from './use-portal';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,mBAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,yBAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,0BAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,aAAA,GAAAJ,sBAAA,CAAAC,OAAA;AACA,IAAAI,eAAA,GAAAL,sBAAA,CAAAC,OAAA;AACA,IAAAK,yBAAA,GAAAN,sBAAA,CAAAC,OAAA;AACA,IAAAM,qBAAA,GAAAP,sBAAA,CAAAC,OAAA;AACA,IAAAO,mBAAA,GAAAR,sBAAA,CAAAC,OAAA;AACA,IAAAQ,oBAAA,GAAAT,sBAAA,CAAAC,OAAA;AACA,IAAAS,UAAA,GAAAV,sBAAA,CAAAC,OAAA"}
1
+ {"version":3,"file":"index.js","names":["_useGetEntitySchema","_interopRequireDefault","require","_useGetEntitySchemasAsObj","_useGetImageIdFromRelation","_useGetImages","_usePageBuilder","_useGetSingleEntitySchema","_useCheckMobileScreen","_useBannerInsertion","_useAppSyncEventHook","_usePortal","_useFilterAggregationValues"],"sources":["../../src/hooks/index.js"],"sourcesContent":["export { default as useGetEntitySchema } from './use-get-entity-schema';\nexport { default as useGetEntitySchemasAsObj } from './use-get-entity-schemas-as-obj';\nexport { default as useGetImageIdFromRelation } from './use-get-image-id-from-relation';\nexport { default as useGetImages } from './use-get-images';\nexport { default as usePageBuilder } from './use-page-builder';\nexport { default as useGetSingleEntitySchema } from './use-get-single-entity-schema';\nexport { default as useCheckMobileScreen } from './use-check-mobile-screen';\nexport { default as useBannerInsertion } from './use-banner-insertion';\nexport { default as useAppSyncEventHook } from './use-app-sync-event-hook';\nexport { default as usePortal } from './use-portal';\nexport { default as useFilterAggregationValues } from './use-filter-aggregation-values';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,mBAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,yBAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,0BAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,aAAA,GAAAJ,sBAAA,CAAAC,OAAA;AACA,IAAAI,eAAA,GAAAL,sBAAA,CAAAC,OAAA;AACA,IAAAK,yBAAA,GAAAN,sBAAA,CAAAC,OAAA;AACA,IAAAM,qBAAA,GAAAP,sBAAA,CAAAC,OAAA;AACA,IAAAO,mBAAA,GAAAR,sBAAA,CAAAC,OAAA;AACA,IAAAQ,oBAAA,GAAAT,sBAAA,CAAAC,OAAA;AACA,IAAAS,UAAA,GAAAV,sBAAA,CAAAC,OAAA;AACA,IAAAU,2BAAA,GAAAX,sBAAA,CAAAC,OAAA"}
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.keys.js");
4
+ require("core-js/modules/es.symbol.js");
5
+ require("core-js/modules/es.array.filter.js");
6
+ require("core-js/modules/es.object.to-string.js");
7
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
8
+ require("core-js/modules/es.array.for-each.js");
9
+ require("core-js/modules/web.dom-collections.for-each.js");
10
+ require("core-js/modules/es.object.get-own-property-descriptors.js");
11
+ require("core-js/modules/es.object.define-properties.js");
12
+ require("core-js/modules/es.object.define-property.js");
13
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
14
+ Object.defineProperty(exports, "__esModule", {
15
+ value: true
16
+ });
17
+ exports["default"] = void 0;
18
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
19
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
20
+ var _react = require("react");
21
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
22
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
23
+ var useFilterAggregationValues = function useFilterAggregationValues(_ref) {
24
+ var data = _ref.data,
25
+ filterValues = _ref.filterValues;
26
+ var _useState = (0, _react.useState)(data),
27
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
28
+ stateValues = _useState2[0],
29
+ setStateValues = _useState2[1];
30
+ var _useState3 = (0, _react.useState)(''),
31
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
32
+ prop = _useState4[0],
33
+ setProp = _useState4[1];
34
+ (0, _react.useEffect)(function () {
35
+ if (!stateValues) return setStateValues(data);
36
+ var lastChangedFilter = filterValues === null || filterValues === void 0 ? void 0 : filterValues[prop];
37
+ if (!data) return;
38
+ var newOptions = data[prop];
39
+ var currentOptions = stateValues === null || stateValues === void 0 ? void 0 : stateValues[prop];
40
+ if (lastChangedFilter === null || lastChangedFilter === '') {
41
+ return setStateValues(function (prevState) {
42
+ return _objectSpread(_objectSpread({}, data), {}, (0, _defineProperty2["default"])({}, prop, newOptions));
43
+ });
44
+ }
45
+ setStateValues(function (prevState) {
46
+ return _objectSpread(_objectSpread({}, data), {}, (0, _defineProperty2["default"])({}, prop, currentOptions));
47
+ });
48
+ },
49
+ // eslint-disable-next-line react-hooks/exhaustive-deps
50
+ [data, prop, filterValues]);
51
+ return [stateValues, setStateValues, setProp, prop];
52
+ };
53
+ var _default = exports["default"] = useFilterAggregationValues;
54
+ //# sourceMappingURL=use-filter-aggregation-values.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-filter-aggregation-values.js","names":["_react","require","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","useFilterAggregationValues","_ref","data","filterValues","_useState","useState","_useState2","_slicedToArray2","stateValues","setStateValues","_useState3","_useState4","prop","setProp","useEffect","lastChangedFilter","newOptions","currentOptions","prevState","_default","exports"],"sources":["../../src/hooks/use-filter-aggregation-values.js"],"sourcesContent":["import { useEffect, useState } from 'react';\n\nconst useFilterAggregationValues = ({ data, filterValues }) => {\n const [stateValues, setStateValues] = useState(data);\n const [prop, setProp] = useState('');\n\n useEffect(\n () => {\n if (!stateValues) return setStateValues(data);\n\n const lastChangedFilter = filterValues?.[prop];\n\n if (!data) return;\n\n const newOptions = data[prop];\n const currentOptions = stateValues?.[prop];\n\n if (lastChangedFilter === null || lastChangedFilter === '') {\n return setStateValues(prevState => ({\n ...data,\n [prop]: newOptions\n }));\n }\n\n setStateValues(prevState => ({\n ...data,\n [prop]: currentOptions\n }));\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [data, prop, filterValues]\n );\n\n return [stateValues, setStateValues, setProp, prop];\n};\n\nexport default useFilterAggregationValues;\n"],"mappings":"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"}
@@ -116,6 +116,7 @@ const MenuEntitiesItem = _ref => {
116
116
  variableProps,
117
117
  filterOperator
118
118
  });
119
+ variables.limit = props.limit || undefined;
119
120
  const hasNoItemsToDisplayOrFilter = !updatedItemsToDisplay.length && !updatedFilterBy;
120
121
  const {
121
122
  data = {}
@@ -1 +1 @@
1
- {"version":3,"file":"MenuEntitiesItem.js","names":["React","PropTypes","useQuery","MenuItemRender","buildPropsQuery","getEntityData","getRequiredSchemas","getUnpublishedEntityName","getUpdatedFilterBy","filterQuerySetup","filtersSetup","getUpdatedItemsToDisplay","getUpdatedSortProperties","shouldReturn","shouldSkipSingleQuery","useGetEntitySchemasAsObj","generateSingleItemQuery","AND","SEARCH_PUBLISHED_CONTENT","MenuEntitiesItem","_ref","entities","parent","props","_objectWithoutProperties","_excluded","itemEntity","parentEntity","itemId","parentId","operator","filterOperator","filterByProperty","sortProperties","itemsToDisplay","filterBy","sortby","sort","unpublishedEntityName","updatedSortProperties","sortbyFilters","data","mainSchemas","loading","entityObjloading","error","entityObjError","filterEntity","filterEntitySchema","entitiesTypes","map","entity","graphqlEntityMap","reduce","acc","entityType","_objectSpread","docTypes","docType","entityTypes","entityFields","parentSchema","entitySameAsCurrentItemEntity","filterEntityRelations","inheritedFilters","queryProps","getAction","action","itemEntityUpdated","currentSchema","entityData","parentEntityData","singleItemQueryError","singleItemQueryLoading","variables","id","skip","requiredSchema","schemaLoading","schemaError","getEntitySchemas","Object","values","updatedItemsToDisplay","variableProps","updatedFilterBy","hasNoItemsToDisplayOrFilter","length","results","item","itemParent","__typename","createElement","_extends","url","propTypes","children","oneOfType","arrayOf","node","eventType","string","isRequired","modifier","object","text","array","limit","number","offset","defaultProps"],"sources":["../../../src/components/MenuItem/MenuEntitiesItem.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { useQuery } from '@apollo/client';\nimport MenuItemRender from './MenuItemRender';\nimport {\n buildPropsQuery,\n getEntityData,\n getRequiredSchemas,\n getUnpublishedEntityName,\n getUpdatedFilterBy,\n filterQuerySetup,\n filtersSetup,\n getUpdatedItemsToDisplay,\n getUpdatedSortProperties,\n shouldReturn,\n shouldSkipSingleQuery\n} from '../../helpers';\nimport { useGetEntitySchemasAsObj } from '../../hooks';\nimport { generateSingleItemQuery } from '../../application/query';\nimport { AND, SEARCH_PUBLISHED_CONTENT } from '../../constants';\n\nconst MenuEntitiesItem = ({ entities, parent, ...props }) => {\n const { itemEntity: parentEntity, itemId: parentId } = parent;\n const {\n operator: filterOperator = AND,\n filterByProperty = [],\n sortProperties = [],\n itemsToDisplay,\n filterBy = [],\n sortby,\n sort\n } = props;\n\n const unpublishedEntityName = getUnpublishedEntityName(parentEntity);\n\n const [updatedSortProperties, sortbyFilters] = getUpdatedSortProperties(\n sort,\n sortby,\n sortProperties\n );\n\n const {\n data: mainSchemas = {},\n loading: entityObjloading,\n error: entityObjError\n } = useGetEntitySchemasAsObj([unpublishedEntityName, ...entities]);\n\n const [filterEntity] = entities;\n\n const { [filterEntity]: filterEntitySchema = {} } = mainSchemas;\n\n const entitiesTypes = entities.map(entity => getEntityData(entity, mainSchemas[entity]));\n const graphqlEntityMap = entitiesTypes.reduce(\n (acc, entityType) => ({ ...acc, [entityType.entityType]: entityType.entity }),\n {}\n );\n const docTypes = entitiesTypes.map(({ docType }) => docType);\n const entityTypes = entitiesTypes.map(({ entityType }) => entityType);\n\n const entityFields = buildPropsQuery(filterEntitySchema, ['name', 'url']) || '';\n const parentSchema = mainSchemas[unpublishedEntityName] || {};\n\n const {\n entitySameAsCurrentItemEntity,\n filterEntityRelations,\n inheritedFilters,\n queryProps,\n getAction,\n action\n } = filtersSetup({\n itemEntityUpdated: unpublishedEntityName,\n currentSchema: parentSchema,\n filterEntitySchema,\n filterByProperty,\n entityFields,\n entityTypes,\n filterBy,\n entities\n });\n\n const {\n data: { entityData: parentEntityData = {} } = {},\n error: singleItemQueryError,\n loading: singleItemQueryLoading\n } = useQuery(generateSingleItemQuery(getAction, queryProps), {\n variables: { id: parentId },\n skip: shouldSkipSingleQuery(entityObjloading, getAction, queryProps)\n });\n\n const {\n data: requiredSchema = {},\n loading: schemaLoading,\n error: schemaError\n } = useGetEntitySchemasAsObj(\n getRequiredSchemas([...filterByProperty, ...sortbyFilters], filterEntitySchema),\n entityObjloading\n );\n\n const getEntitySchemas = Object.values(requiredSchema);\n\n const updatedItemsToDisplay = getUpdatedItemsToDisplay({\n inheritedFilters,\n parentEntityData,\n itemsToDisplay,\n parentSchema\n });\n\n const variableProps = {\n sortProperties: updatedSortProperties,\n filterByProperty,\n sortby: null,\n sort: null,\n filterBy\n };\n\n const updatedFilterBy = getUpdatedFilterBy(\n inheritedFilters,\n parentEntityData,\n filterEntitySchema,\n parentSchema,\n parentId,\n variableProps\n );\n\n const { variables } = filterQuerySetup({\n itemsToDisplay: updatedItemsToDisplay,\n entitySameAsCurrentItemEntity,\n filterEntityRelations,\n entity: filterEntity,\n docType: docTypes,\n getEntitySchemas,\n updatedFilterBy,\n variableProps,\n filterOperator\n });\n\n const hasNoItemsToDisplayOrFilter = !updatedItemsToDisplay.length && !updatedFilterBy;\n\n const { data = {} } = useQuery(action, {\n variables,\n skip: shouldReturn(\n hasNoItemsToDisplayOrFilter,\n singleItemQueryLoading,\n singleItemQueryError,\n entityObjloading,\n entityObjError,\n schemaLoading,\n schemaError\n )\n });\n\n const { results } = data[SEARCH_PUBLISHED_CONTENT] || {};\n\n if (!results) return null;\n\n return results.map(item => {\n const itemParent = {\n itemId: item.id,\n itemEntity: graphqlEntityMap[item.__typename]\n };\n return <MenuItemRender {...props} parent={itemParent} url={item.url || props.url} />;\n });\n};\n\nMenuEntitiesItem.propTypes = {\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n eventType: PropTypes.string.isRequired,\n modifier: PropTypes.string,\n parent: PropTypes.object,\n text: PropTypes.string,\n url: PropTypes.string,\n entities: PropTypes.array,\n limit: PropTypes.number,\n offset: PropTypes.number,\n sortby: PropTypes.array,\n filterBy: PropTypes.array,\n sort: PropTypes.string,\n operator: PropTypes.string.isRequired,\n filterOperator: PropTypes.string.isRequired,\n sortProperties: PropTypes.array,\n filterByProperty: PropTypes.array,\n itemsToDisplay: PropTypes.array\n};\n\nMenuEntitiesItem.defaultProps = {\n children: null,\n modifier: '',\n limit: 0,\n offset: 0,\n itemsToDisplay: [],\n sort: '',\n sortby: [],\n sortProperties: [],\n filterByProperty: [],\n parent: {},\n filterBy: [],\n text: '',\n url: '',\n entities: []\n};\n\nexport default MenuEntitiesItem;\n"],"mappings":"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"}
1
+ {"version":3,"file":"MenuEntitiesItem.js","names":["React","PropTypes","useQuery","MenuItemRender","buildPropsQuery","getEntityData","getRequiredSchemas","getUnpublishedEntityName","getUpdatedFilterBy","filterQuerySetup","filtersSetup","getUpdatedItemsToDisplay","getUpdatedSortProperties","shouldReturn","shouldSkipSingleQuery","useGetEntitySchemasAsObj","generateSingleItemQuery","AND","SEARCH_PUBLISHED_CONTENT","MenuEntitiesItem","_ref","entities","parent","props","_objectWithoutProperties","_excluded","itemEntity","parentEntity","itemId","parentId","operator","filterOperator","filterByProperty","sortProperties","itemsToDisplay","filterBy","sortby","sort","unpublishedEntityName","updatedSortProperties","sortbyFilters","data","mainSchemas","loading","entityObjloading","error","entityObjError","filterEntity","filterEntitySchema","entitiesTypes","map","entity","graphqlEntityMap","reduce","acc","entityType","_objectSpread","docTypes","docType","entityTypes","entityFields","parentSchema","entitySameAsCurrentItemEntity","filterEntityRelations","inheritedFilters","queryProps","getAction","action","itemEntityUpdated","currentSchema","entityData","parentEntityData","singleItemQueryError","singleItemQueryLoading","variables","id","skip","requiredSchema","schemaLoading","schemaError","getEntitySchemas","Object","values","updatedItemsToDisplay","variableProps","updatedFilterBy","limit","undefined","hasNoItemsToDisplayOrFilter","length","results","item","itemParent","__typename","createElement","_extends","url","propTypes","children","oneOfType","arrayOf","node","eventType","string","isRequired","modifier","object","text","array","number","offset","defaultProps"],"sources":["../../../src/components/MenuItem/MenuEntitiesItem.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { useQuery } from '@apollo/client';\nimport MenuItemRender from './MenuItemRender';\nimport {\n buildPropsQuery,\n getEntityData,\n getRequiredSchemas,\n getUnpublishedEntityName,\n getUpdatedFilterBy,\n filterQuerySetup,\n filtersSetup,\n getUpdatedItemsToDisplay,\n getUpdatedSortProperties,\n shouldReturn,\n shouldSkipSingleQuery\n} from '../../helpers';\nimport { useGetEntitySchemasAsObj } from '../../hooks';\nimport { generateSingleItemQuery } from '../../application/query';\nimport { AND, SEARCH_PUBLISHED_CONTENT } from '../../constants';\n\nconst MenuEntitiesItem = ({ entities, parent, ...props }) => {\n const { itemEntity: parentEntity, itemId: parentId } = parent;\n const {\n operator: filterOperator = AND,\n filterByProperty = [],\n sortProperties = [],\n itemsToDisplay,\n filterBy = [],\n sortby,\n sort\n } = props;\n\n const unpublishedEntityName = getUnpublishedEntityName(parentEntity);\n\n const [updatedSortProperties, sortbyFilters] = getUpdatedSortProperties(\n sort,\n sortby,\n sortProperties\n );\n\n const {\n data: mainSchemas = {},\n loading: entityObjloading,\n error: entityObjError\n } = useGetEntitySchemasAsObj([unpublishedEntityName, ...entities]);\n\n const [filterEntity] = entities;\n\n const { [filterEntity]: filterEntitySchema = {} } = mainSchemas;\n\n const entitiesTypes = entities.map(entity => getEntityData(entity, mainSchemas[entity]));\n const graphqlEntityMap = entitiesTypes.reduce(\n (acc, entityType) => ({ ...acc, [entityType.entityType]: entityType.entity }),\n {}\n );\n const docTypes = entitiesTypes.map(({ docType }) => docType);\n const entityTypes = entitiesTypes.map(({ entityType }) => entityType);\n\n const entityFields = buildPropsQuery(filterEntitySchema, ['name', 'url']) || '';\n const parentSchema = mainSchemas[unpublishedEntityName] || {};\n\n const {\n entitySameAsCurrentItemEntity,\n filterEntityRelations,\n inheritedFilters,\n queryProps,\n getAction,\n action\n } = filtersSetup({\n itemEntityUpdated: unpublishedEntityName,\n currentSchema: parentSchema,\n filterEntitySchema,\n filterByProperty,\n entityFields,\n entityTypes,\n filterBy,\n entities\n });\n\n const {\n data: { entityData: parentEntityData = {} } = {},\n error: singleItemQueryError,\n loading: singleItemQueryLoading\n } = useQuery(generateSingleItemQuery(getAction, queryProps), {\n variables: { id: parentId },\n skip: shouldSkipSingleQuery(entityObjloading, getAction, queryProps)\n });\n\n const {\n data: requiredSchema = {},\n loading: schemaLoading,\n error: schemaError\n } = useGetEntitySchemasAsObj(\n getRequiredSchemas([...filterByProperty, ...sortbyFilters], filterEntitySchema),\n entityObjloading\n );\n\n const getEntitySchemas = Object.values(requiredSchema);\n\n const updatedItemsToDisplay = getUpdatedItemsToDisplay({\n inheritedFilters,\n parentEntityData,\n itemsToDisplay,\n parentSchema\n });\n\n const variableProps = {\n sortProperties: updatedSortProperties,\n filterByProperty,\n sortby: null,\n sort: null,\n filterBy\n };\n\n const updatedFilterBy = getUpdatedFilterBy(\n inheritedFilters,\n parentEntityData,\n filterEntitySchema,\n parentSchema,\n parentId,\n variableProps\n );\n\n const { variables } = filterQuerySetup({\n itemsToDisplay: updatedItemsToDisplay,\n entitySameAsCurrentItemEntity,\n filterEntityRelations,\n entity: filterEntity,\n docType: docTypes,\n getEntitySchemas,\n updatedFilterBy,\n variableProps,\n filterOperator\n });\n\n variables.limit = props.limit || undefined;\n\n const hasNoItemsToDisplayOrFilter = !updatedItemsToDisplay.length && !updatedFilterBy;\n\n const { data = {} } = useQuery(action, {\n variables,\n skip: shouldReturn(\n hasNoItemsToDisplayOrFilter,\n singleItemQueryLoading,\n singleItemQueryError,\n entityObjloading,\n entityObjError,\n schemaLoading,\n schemaError\n )\n });\n\n const { results } = data[SEARCH_PUBLISHED_CONTENT] || {};\n\n if (!results) return null;\n\n return results.map(item => {\n const itemParent = {\n itemId: item.id,\n itemEntity: graphqlEntityMap[item.__typename]\n };\n return <MenuItemRender {...props} parent={itemParent} url={item.url || props.url} />;\n });\n};\n\nMenuEntitiesItem.propTypes = {\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n eventType: PropTypes.string.isRequired,\n modifier: PropTypes.string,\n parent: PropTypes.object,\n text: PropTypes.string,\n url: PropTypes.string,\n entities: PropTypes.array,\n limit: PropTypes.number,\n offset: PropTypes.number,\n sortby: PropTypes.array,\n filterBy: PropTypes.array,\n sort: PropTypes.string,\n operator: PropTypes.string.isRequired,\n filterOperator: PropTypes.string.isRequired,\n sortProperties: PropTypes.array,\n filterByProperty: PropTypes.array,\n itemsToDisplay: PropTypes.array\n};\n\nMenuEntitiesItem.defaultProps = {\n children: null,\n modifier: '',\n limit: 0,\n offset: 0,\n itemsToDisplay: [],\n sort: '',\n sortby: [],\n sortProperties: [],\n filterByProperty: [],\n parent: {},\n filterBy: [],\n text: '',\n url: '',\n entities: []\n};\n\nexport default MenuEntitiesItem;\n"],"mappings":"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"}