@blaze-cms/react-page-builder 0.112.0-alpha.2 → 0.113.0-alpha.2

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 (51) hide show
  1. package/CHANGELOG.md +41 -0
  2. package/lib/components/List/ListBuilder.js +4 -0
  3. package/lib/components/List/ListBuilder.js.map +1 -1
  4. package/lib/components/List/ListFactory.js +4 -0
  5. package/lib/components/List/ListFactory.js.map +1 -1
  6. package/lib/components/List/ListRender.js +4 -0
  7. package/lib/components/List/ListRender.js.map +1 -1
  8. package/lib/components/List/components/Cards/CardsRender.js +26 -3
  9. package/lib/components/List/components/Cards/CardsRender.js.map +1 -1
  10. package/lib/components/List/components/Cards/CardsRenderWrapper.js +25 -3
  11. package/lib/components/List/components/Cards/CardsRenderWrapper.js.map +1 -1
  12. package/lib/components/List/components/Full/FullRender.js +25 -3
  13. package/lib/components/List/components/Full/FullRender.js.map +1 -1
  14. package/lib/components/SearchFilter/SearchFilter/SearchFilter.js +5 -1
  15. package/lib/components/SearchFilter/SearchFilter/SearchFilter.js.map +1 -1
  16. package/lib/components/SearchFilter/SearchFilterContainer.js +40 -10
  17. package/lib/components/SearchFilter/SearchFilterContainer.js.map +1 -1
  18. package/lib-es/components/List/ListBuilder.js +4 -0
  19. package/lib-es/components/List/ListBuilder.js.map +1 -1
  20. package/lib-es/components/List/ListFactory.js +4 -0
  21. package/lib-es/components/List/ListFactory.js.map +1 -1
  22. package/lib-es/components/List/ListRender.js +4 -0
  23. package/lib-es/components/List/ListRender.js.map +1 -1
  24. package/lib-es/components/List/components/Cards/CardsRender.js +9 -3
  25. package/lib-es/components/List/components/Cards/CardsRender.js.map +1 -1
  26. package/lib-es/components/List/components/Cards/CardsRenderWrapper.js +7 -3
  27. package/lib-es/components/List/components/Cards/CardsRenderWrapper.js.map +1 -1
  28. package/lib-es/components/List/components/Full/FullRender.js +8 -3
  29. package/lib-es/components/List/components/Full/FullRender.js.map +1 -1
  30. package/lib-es/components/SearchFilter/SearchFilter/SearchFilter.js +5 -1
  31. package/lib-es/components/SearchFilter/SearchFilter/SearchFilter.js.map +1 -1
  32. package/lib-es/components/SearchFilter/SearchFilterContainer.js +35 -7
  33. package/lib-es/components/SearchFilter/SearchFilterContainer.js.map +1 -1
  34. package/package.json +3 -3
  35. package/src/components/List/ListBuilder.js +4 -0
  36. package/src/components/List/ListFactory.js +4 -0
  37. package/src/components/List/ListRender.js +4 -0
  38. package/src/components/List/components/Cards/CardsRender.js +11 -3
  39. package/src/components/List/components/Cards/CardsRenderWrapper.js +14 -4
  40. package/src/components/List/components/Full/FullRender.js +10 -4
  41. package/src/components/SearchFilter/SearchFilter/SearchFilter.js +9 -1
  42. package/src/components/SearchFilter/SearchFilterContainer.js +27 -6
  43. package/tests/unit/src/components/List/components/Cards/CardsRender.test.js +9 -1
  44. package/tests/unit/src/components/List/components/Cards/CardsRenderWrapper.test.js +9 -1
  45. package/tests/unit/src/components/List/components/Cards/__snapshots__/CardsRender.test.js.snap +69 -2
  46. package/tests/unit/src/components/List/components/Cards/__snapshots__/CardsRenderWrapper.test.js.snap +14 -1
  47. package/tests/unit/src/components/List/components/Full/FullRender.test.js +6 -1
  48. package/tests/unit/src/components/List/components/Full/FullRenderItem.test.js +1 -1
  49. package/tests/unit/src/components/List/components/Full/__snapshots__/FullRender.test.js.snap +16 -2
  50. package/tests/unit/src/components/List/components/Full/__snapshots__/FullRenderItem.test.js.snap +1 -1
  51. package/tests/unit/src/components/SearchFilter/SearchFilter/SearchFilter.test.js +1 -2
@@ -18,8 +18,20 @@ require("core-js/modules/es.object.define-properties.js");
18
18
 
19
19
  require("core-js/modules/es.object.define-property.js");
20
20
 
21
+ require("core-js/modules/es.array.iterator.js");
22
+
23
+ require("core-js/modules/es.object.to-string.js");
24
+
25
+ require("core-js/modules/es.string.iterator.js");
26
+
27
+ require("core-js/modules/es.weak-map.js");
28
+
29
+ require("core-js/modules/web.dom-collections.iterator.js");
30
+
21
31
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
22
32
 
33
+ var _typeof = require("@babel/runtime/helpers/typeof");
34
+
23
35
  Object.defineProperty(exports, "__esModule", {
24
36
  value: true
25
37
  });
@@ -33,7 +45,7 @@ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/de
33
45
 
34
46
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
35
47
 
36
- var _react = _interopRequireDefault(require("react"));
48
+ var _react = _interopRequireWildcard(require("react"));
37
49
 
38
50
  var _propTypes = _interopRequireDefault(require("prop-types"));
39
51
 
@@ -47,17 +59,24 @@ var _constants = require("../../../../constants");
47
59
 
48
60
  var _constants2 = require("../../constants");
49
61
 
62
+ var _Wrapper = _interopRequireDefault(require("../../../Wrapper"));
63
+
50
64
  var _helpers = require("../helpers");
51
65
 
52
- var _excluded = ["orderedListData", "paginationType"],
66
+ var _excluded = ["orderedListData", "omitWrappers", "paginationType"],
53
67
  _excluded2 = ["id"];
54
68
 
69
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
70
+
71
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
72
+
55
73
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
56
74
 
57
75
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
58
76
 
59
77
  var FullRender = function FullRender(_ref) {
60
78
  var orderedListData = _ref.orderedListData,
79
+ omitWrappers = _ref.omitWrappers,
61
80
  paginationType = _ref.paginationType,
62
81
  props = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
63
82
  var pageBuilderID = (0, _v["default"])();
@@ -75,7 +94,8 @@ var FullRender = function FullRender(_ref) {
75
94
  type: _constants2.BANNER
76
95
  }) : null;
77
96
  var bannerIndex = 0;
78
- return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement("div", {
97
+ var WrapperToUse = omitWrappers ? _react.Fragment : _Wrapper["default"];
98
+ return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(WrapperToUse, {
79
99
  className: "list list--full"
80
100
  }, orderedListData.map(function (_ref2, i) {
81
101
  var id = _ref2.id,
@@ -104,10 +124,12 @@ FullRender.propTypes = {
104
124
  parent: _propTypes["default"].object.isRequired,
105
125
  propsToDisplay: _propTypes["default"].array.isRequired,
106
126
  entity: _propTypes["default"].string.isRequired,
127
+ omitWrappers: _propTypes["default"].bool,
107
128
  hasBanner: _propTypes["default"].bool,
108
129
  banner: _propTypes["default"].object
109
130
  };
110
131
  FullRender.defaultProps = {
132
+ omitWrappers: false,
111
133
  hasBanner: false,
112
134
  banner: null
113
135
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/components/List/components/Full/FullRender.js"],"names":["FullRender","orderedListData","paginationType","props","pageBuilderID","parent","entity","propsToDisplay","banner","hasBanner","bannerProps","type","BANNER","bannerIndex","map","i","id","entityProps","shouldRenderBanner","LOAD_MORE","propTypes","PropTypes","array","isRequired","string","object","bool","defaultProps"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;AAEA,IAAMA,UAAU,GAAG,SAAbA,UAAa,OAAmD;AAAA,MAAhDC,eAAgD,QAAhDA,eAAgD;AAAA,MAA/BC,cAA+B,QAA/BA,cAA+B;AAAA,MAAZC,KAAY;AACpE,MAAMC,aAAa,GAAG,oBAAtB;AACA,MAAQC,MAAR,GAA8DF,KAA9D,CAAQE,MAAR;AAAA,MAAgBC,MAAhB,GAA8DH,KAA9D,CAAgBG,MAAhB;AAAA,MAAwBC,cAAxB,GAA8DJ,KAA9D,CAAwBI,cAAxB;AAAA,MAAwCC,MAAxC,GAA8DL,KAA9D,CAAwCK,MAAxC;AAAA,MAAgDC,SAAhD,GAA8DN,KAA9D,CAAgDM,SAAhD;AACA,MAAMC,WAAW,GAAGF,MAAM;AACpBC,IAAAA,SAAS,EAATA,SADoB;AACTJ,IAAAA,MAAM,EAANA,MADS;AACDC,IAAAA,MAAM,EAANA,MADC;AACOC,IAAAA,cAAc,EAAdA;AADP,KAC0BC,MAD1B;AACkCG,IAAAA,IAAI,EAAEC;AADxC,OAEtB,IAFJ;AAGA,MAAIC,WAAW,GAAG,CAAlB;AAEA,sBACE,+EACE;AAAK,IAAA,SAAS,EAAC;AAAf,KACGZ,eAAe,CAACa,GAAhB,CAAoB,iBAAyBC,CAAzB,EAA+B;AAAA,QAA5BC,EAA4B,SAA5BA,EAA4B;AAAA,QAArBC,WAAqB;AAClD,QAAMC,kBAAkB,GAAG,CAAC,CAACR,WAAF,IAAiB,wCAA0BK,CAA1B,EAA6BL,WAA7B,CAA5C;AACA,QAAIQ,kBAAJ,EAAwBL,WAAW,IAAI,CAAf;AAExB,wBACE,gCAAC,0BAAD;AACE,MAAA,GAAG,EAAEG;AADP,OAEMb,KAFN,EAGMc,WAHN;AAIE,MAAA,KAAK,EAAEF,CAJT;AAKE,MAAA,MAAM,EAAEC,EALV;AAME,MAAA,aAAa,EAAEZ,aANjB;AAOE,MAAA,WAAW,EAAEa,WAPf;AAQE,MAAA,kBAAkB,EAAEC,kBARtB;AASE,MAAA,WAAW,EAAER,WATf;AAUE,MAAA,WAAW,EAAEG;AAVf,OADF;AAcD,GAlBA,CADH,CADF,EAsBGX,cAAc,KAAKiB,oBAAnB,iBACC,gCAAC,sBAAD;AAAgB,IAAA,cAAc,EAAEjB;AAAhC,KAAoDC,KAApD,EAvBJ,CADF;AA4BD,CApCD;;AAsCAH,UAAU,CAACoB,SAAX,GAAuB;AACrBnB,EAAAA,eAAe,EAAEoB,sBAAUC,KAAV,CAAgBC,UADZ;AAErBrB,EAAAA,cAAc,EAAEmB,sBAAUG,MAAV,CAAiBD,UAFZ;AAGrBlB,EAAAA,MAAM,EAAEgB,sBAAUI,MAAV,CAAiBF,UAHJ;AAIrBhB,EAAAA,cAAc,EAAEc,sBAAUC,KAAV,CAAgBC,UAJX;AAKrBjB,EAAAA,MAAM,EAAEe,sBAAUG,MAAV,CAAiBD,UALJ;AAMrBd,EAAAA,SAAS,EAAEY,sBAAUK,IANA;AAOrBlB,EAAAA,MAAM,EAAEa,sBAAUI;AAPG,CAAvB;AAUAzB,UAAU,CAAC2B,YAAX,GAA0B;AACxBlB,EAAAA,SAAS,EAAE,KADa;AAExBD,EAAAA,MAAM,EAAE;AAFgB,CAA1B;eAKeR,U","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport uuid from 'uuid/v1';\nimport FullRenderItem from './FullRenderItem';\nimport ListPagination from '../Pagination';\nimport { LOAD_MORE } from '../../../../constants';\nimport { BANNER } from '../../constants';\nimport { checkIfShouldRenderBanner } from '../helpers';\n\nconst FullRender = ({ orderedListData, paginationType, ...props }) => {\n const pageBuilderID = uuid();\n const { parent, entity, propsToDisplay, banner, hasBanner } = props;\n const bannerProps = banner\n ? { hasBanner, parent, entity, propsToDisplay, ...banner, type: BANNER }\n : null;\n let bannerIndex = 0;\n\n return (\n <>\n <div className=\"list list--full\">\n {orderedListData.map(({ id, ...entityProps }, i) => {\n const shouldRenderBanner = !!bannerProps && checkIfShouldRenderBanner(i, bannerProps);\n if (shouldRenderBanner) bannerIndex += 1;\n\n return (\n <FullRenderItem\n key={id}\n {...props}\n {...entityProps}\n index={i}\n itemId={id}\n pageBuilderID={pageBuilderID}\n entityProps={entityProps}\n shouldRenderBanner={shouldRenderBanner}\n bannerProps={bannerProps}\n bannerIndex={bannerIndex}\n />\n );\n })}\n </div>\n {paginationType === LOAD_MORE && (\n <ListPagination paginationType={paginationType} {...props} />\n )}\n </>\n );\n};\n\nFullRender.propTypes = {\n orderedListData: PropTypes.array.isRequired,\n paginationType: PropTypes.string.isRequired,\n parent: PropTypes.object.isRequired,\n propsToDisplay: PropTypes.array.isRequired,\n entity: PropTypes.string.isRequired,\n hasBanner: PropTypes.bool,\n banner: PropTypes.object\n};\n\nFullRender.defaultProps = {\n hasBanner: false,\n banner: null\n};\n\nexport default FullRender;\n"],"file":"FullRender.js"}
1
+ {"version":3,"sources":["../../../../../src/components/List/components/Full/FullRender.js"],"names":["FullRender","orderedListData","omitWrappers","paginationType","props","pageBuilderID","parent","entity","propsToDisplay","banner","hasBanner","bannerProps","type","BANNER","bannerIndex","WrapperToUse","Fragment","Wrapper","map","i","id","entityProps","shouldRenderBanner","LOAD_MORE","propTypes","PropTypes","array","isRequired","string","object","bool","defaultProps"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;;;;AAEA,IAAMA,UAAU,GAAG,SAAbA,UAAa,OAAiE;AAAA,MAA9DC,eAA8D,QAA9DA,eAA8D;AAAA,MAA7CC,YAA6C,QAA7CA,YAA6C;AAAA,MAA/BC,cAA+B,QAA/BA,cAA+B;AAAA,MAAZC,KAAY;AAClF,MAAMC,aAAa,GAAG,oBAAtB;AACA,MAAQC,MAAR,GAA8DF,KAA9D,CAAQE,MAAR;AAAA,MAAgBC,MAAhB,GAA8DH,KAA9D,CAAgBG,MAAhB;AAAA,MAAwBC,cAAxB,GAA8DJ,KAA9D,CAAwBI,cAAxB;AAAA,MAAwCC,MAAxC,GAA8DL,KAA9D,CAAwCK,MAAxC;AAAA,MAAgDC,SAAhD,GAA8DN,KAA9D,CAAgDM,SAAhD;AACA,MAAMC,WAAW,GAAGF,MAAM;AACpBC,IAAAA,SAAS,EAATA,SADoB;AACTJ,IAAAA,MAAM,EAANA,MADS;AACDC,IAAAA,MAAM,EAANA,MADC;AACOC,IAAAA,cAAc,EAAdA;AADP,KAC0BC,MAD1B;AACkCG,IAAAA,IAAI,EAAEC;AADxC,OAEtB,IAFJ;AAGA,MAAIC,WAAW,GAAG,CAAlB;AAEA,MAAMC,YAAY,GAAGb,YAAY,GAAGc,eAAH,GAAcC,mBAA/C;AAEA,sBACE,+EACE,gCAAC,YAAD;AAAc,IAAA,SAAS,EAAC;AAAxB,KACGhB,eAAe,CAACiB,GAAhB,CAAoB,iBAAyBC,CAAzB,EAA+B;AAAA,QAA5BC,EAA4B,SAA5BA,EAA4B;AAAA,QAArBC,WAAqB;AAClD,QAAMC,kBAAkB,GAAG,CAAC,CAACX,WAAF,IAAiB,wCAA0BQ,CAA1B,EAA6BR,WAA7B,CAA5C;AACA,QAAIW,kBAAJ,EAAwBR,WAAW,IAAI,CAAf;AAExB,wBACE,gCAAC,0BAAD;AACE,MAAA,GAAG,EAAEM;AADP,OAEMhB,KAFN,EAGMiB,WAHN;AAIE,MAAA,KAAK,EAAEF,CAJT;AAKE,MAAA,MAAM,EAAEC,EALV;AAME,MAAA,aAAa,EAAEf,aANjB;AAOE,MAAA,WAAW,EAAEgB,WAPf;AAQE,MAAA,kBAAkB,EAAEC,kBARtB;AASE,MAAA,WAAW,EAAEX,WATf;AAUE,MAAA,WAAW,EAAEG;AAVf,OADF;AAcD,GAlBA,CADH,CADF,EAuBGX,cAAc,KAAKoB,oBAAnB,iBACC,gCAAC,sBAAD;AAAgB,IAAA,cAAc,EAAEpB;AAAhC,KAAoDC,KAApD,EAxBJ,CADF;AA6BD,CAvCD;;AAyCAJ,UAAU,CAACwB,SAAX,GAAuB;AACrBvB,EAAAA,eAAe,EAAEwB,sBAAUC,KAAV,CAAgBC,UADZ;AAErBxB,EAAAA,cAAc,EAAEsB,sBAAUG,MAAV,CAAiBD,UAFZ;AAGrBrB,EAAAA,MAAM,EAAEmB,sBAAUI,MAAV,CAAiBF,UAHJ;AAIrBnB,EAAAA,cAAc,EAAEiB,sBAAUC,KAAV,CAAgBC,UAJX;AAKrBpB,EAAAA,MAAM,EAAEkB,sBAAUG,MAAV,CAAiBD,UALJ;AAMrBzB,EAAAA,YAAY,EAAEuB,sBAAUK,IANH;AAOrBpB,EAAAA,SAAS,EAAEe,sBAAUK,IAPA;AAQrBrB,EAAAA,MAAM,EAAEgB,sBAAUI;AARG,CAAvB;AAWA7B,UAAU,CAAC+B,YAAX,GAA0B;AACxB7B,EAAAA,YAAY,EAAE,KADU;AAExBQ,EAAAA,SAAS,EAAE,KAFa;AAGxBD,EAAAA,MAAM,EAAE;AAHgB,CAA1B;eAMeT,U","sourcesContent":["import React, { Fragment } from 'react';\nimport PropTypes from 'prop-types';\nimport uuid from 'uuid/v1';\nimport FullRenderItem from './FullRenderItem';\nimport ListPagination from '../Pagination';\nimport { LOAD_MORE } from '../../../../constants';\nimport { BANNER } from '../../constants';\nimport Wrapper from '../../../Wrapper';\nimport { checkIfShouldRenderBanner } from '../helpers';\n\nconst FullRender = ({ orderedListData, omitWrappers, paginationType, ...props }) => {\n const pageBuilderID = uuid();\n const { parent, entity, propsToDisplay, banner, hasBanner } = props;\n const bannerProps = banner\n ? { hasBanner, parent, entity, propsToDisplay, ...banner, type: BANNER }\n : null;\n let bannerIndex = 0;\n\n const WrapperToUse = omitWrappers ? Fragment : Wrapper;\n\n return (\n <>\n <WrapperToUse className=\"list list--full\">\n {orderedListData.map(({ id, ...entityProps }, i) => {\n const shouldRenderBanner = !!bannerProps && checkIfShouldRenderBanner(i, bannerProps);\n if (shouldRenderBanner) bannerIndex += 1;\n\n return (\n <FullRenderItem\n key={id}\n {...props}\n {...entityProps}\n index={i}\n itemId={id}\n pageBuilderID={pageBuilderID}\n entityProps={entityProps}\n shouldRenderBanner={shouldRenderBanner}\n bannerProps={bannerProps}\n bannerIndex={bannerIndex}\n />\n );\n })}\n </WrapperToUse>\n\n {paginationType === LOAD_MORE && (\n <ListPagination paginationType={paginationType} {...props} />\n )}\n </>\n );\n};\n\nFullRender.propTypes = {\n orderedListData: PropTypes.array.isRequired,\n paginationType: PropTypes.string.isRequired,\n parent: PropTypes.object.isRequired,\n propsToDisplay: PropTypes.array.isRequired,\n entity: PropTypes.string.isRequired,\n omitWrappers: PropTypes.bool,\n hasBanner: PropTypes.bool,\n banner: PropTypes.object\n};\n\nFullRender.defaultProps = {\n omitWrappers: false,\n hasBanner: false,\n banner: null\n};\n\nexport default FullRender;\n"],"file":"FullRender.js"}
@@ -55,6 +55,7 @@ var SearchFilter = function SearchFilter(_ref) {
55
55
  var data = _ref.data,
56
56
  filters = _ref.filters,
57
57
  buttonRef = _ref.buttonRef,
58
+ searchFilterRef = _ref.searchFilterRef,
58
59
  hasUrl = _ref.hasUrl,
59
60
  entity = _ref.entity,
60
61
  handleSearch = _ref.handleSearch,
@@ -118,7 +119,8 @@ var SearchFilter = function SearchFilter(_ref) {
118
119
  className: formClass,
119
120
  "data-testid": formId,
120
121
  id: formId,
121
- onSubmit: handleSearch
122
+ onSubmit: handleSearch,
123
+ ref: searchFilterRef
122
124
  }, isMobileFormDisplayed && /*#__PURE__*/_react["default"].createElement(_CloseMobileForm["default"], {
123
125
  handleClose: function handleClose() {
124
126
  return setDisplaySearchFilter(false);
@@ -173,6 +175,7 @@ var SearchFilter = function SearchFilter(_ref) {
173
175
  handleReset: resetFilters
174
176
  })) : /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, isCollapsedOnResponsive && /*#__PURE__*/_react["default"].createElement("div", {
175
177
  className: "filter__refine filter__refine--mobile-close",
178
+ ref: searchFilterRef,
176
179
  "data-testid": "refine-mobile"
177
180
  }, /*#__PURE__*/_react["default"].createElement("div", {
178
181
  role: "button",
@@ -186,6 +189,7 @@ SearchFilter.propTypes = {
186
189
  data: _propTypes["default"].object.isRequired,
187
190
  filters: _propTypes["default"].array.isRequired,
188
191
  buttonRef: _propTypes["default"].object.isRequired,
192
+ searchFilterRef: _propTypes["default"].object.isRequired,
189
193
  hasUrl: _propTypes["default"].bool.isRequired,
190
194
  entity: _propTypes["default"].string.isRequired,
191
195
  handleSearch: _propTypes["default"].func.isRequired,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/SearchFilter/SearchFilter/SearchFilter.js"],"names":["SearchFilter","data","filters","buttonRef","hasUrl","entity","handleSearch","resetFilters","name","isCollapsedOnResponsive","displaySearchFilter","setDisplaySearchFilter","groupAfter","isDesktop","setIsDesktop","pageWidth","setPageWidth","moreFiltersCollapsed","setMoreFiltersCollapsed","window","innerWidth","handleResize","target","addEventListener","removeEventListener","isDesktopFormDisplayed","isMobileFormDisplayed","formClass","moreFiltersWrapperClass","formId","searchPublishedContent","slice","SEARCH","REFINE","propTypes","PropTypes","object","isRequired","array","bool","string","func","number"],"mappings":"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","sourcesContent":["import React, { useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport FiltersList from './FiltersList';\nimport { isDeviceDesktop } from '../helpers';\nimport CloseMobileForm from './CloseMobileForm';\nimport ResetDesktopForm from './ResetDesktopForm';\nimport MobileFormToolbar from './MobileFormToolbar';\nimport { SEARCH, REFINE } from '../constants';\n\nconst SearchFilter = ({\n data,\n filters,\n buttonRef,\n hasUrl,\n entity,\n handleSearch,\n resetFilters,\n name,\n isCollapsedOnResponsive,\n displaySearchFilter,\n setDisplaySearchFilter,\n groupAfter\n}) => {\n const [isDesktop, setIsDesktop] = useState(true);\n const [pageWidth, setPageWidth] = useState(null);\n const [moreFiltersCollapsed, setMoreFiltersCollapsed] = useState(true);\n\n useEffect(\n () => {\n if (window && !pageWidth) {\n setPageWidth(window.innerWidth);\n setIsDesktop(isDeviceDesktop());\n }\n\n const handleResize = ({ target: { innerWidth } }) => {\n setIsDesktop(isDeviceDesktop());\n setPageWidth(innerWidth);\n if (isDesktop) setDisplaySearchFilter(false);\n };\n\n window.addEventListener('resize', handleResize);\n return () => {\n window.removeEventListener('resize', handleResize);\n };\n },\n [isDesktop, pageWidth, setDisplaySearchFilter]\n );\n\n let isDesktopFormDisplayed = true;\n let isMobileFormDisplayed = false;\n\n if (!isDesktop && isCollapsedOnResponsive) {\n isMobileFormDisplayed = displaySearchFilter;\n isDesktopFormDisplayed = false;\n }\n\n const formClass = classnames({\n 'filter__form filter__form--mobile': isMobileFormDisplayed\n });\n\n const moreFiltersWrapperClass = classnames({\n 'filter__more-filters-wrapper filter__more-filters-wrapper--open': moreFiltersCollapsed,\n 'filter__more-filters-wrapper': !moreFiltersCollapsed\n });\n\n const formId = `filter-${name}-form`;\n\n return (\n <>\n {isDesktopFormDisplayed || isMobileFormDisplayed ? (\n <form className={formClass} data-testid={formId} id={formId} onSubmit={handleSearch}>\n {isMobileFormDisplayed && (\n <CloseMobileForm handleClose={() => setDisplaySearchFilter(false)} />\n )}\n\n <div className=\"filter filter--search-refine\">\n {isDesktopFormDisplayed && <ResetDesktopForm handleReset={resetFilters} />}\n\n <div className=\"filter__wrapper filter__wrapper--search-refine\">\n {!groupAfter && (\n <FiltersList\n data={data.searchPublishedContent}\n filters={filters}\n buttonRef={buttonRef}\n hasUrl={hasUrl}\n entity={entity}\n />\n )}\n\n {!!groupAfter && (\n <>\n <FiltersList\n data={data.searchPublishedContent}\n filters={filters.slice(0, groupAfter)}\n buttonRef={buttonRef}\n hasUrl={hasUrl}\n entity={entity}\n />\n\n <button\n className=\"filter__more-filters-toggler\"\n type=\"button\"\n onClick={() => setMoreFiltersCollapsed(!moreFiltersCollapsed)}>\n More filters\n </button>\n\n <div className={moreFiltersWrapperClass}>\n <FiltersList\n data={data.searchPublishedContent}\n filters={filters.slice(groupAfter)}\n buttonRef={buttonRef}\n hasUrl={hasUrl}\n entity={entity}\n />\n\n <div className=\"filter__more-filters-buttons\">\n <ResetDesktopForm handleReset={resetFilters} />\n\n <button className=\"button button--full-width\" type=\"submit\" ref={buttonRef}>\n {SEARCH}\n </button>\n </div>\n </div>\n </>\n )}\n\n <br />\n\n {isDesktopFormDisplayed && (\n <button className=\"button button--full-width\" type=\"submit\" ref={buttonRef}>\n {SEARCH}\n </button>\n )}\n </div>\n </div>\n\n {isMobileFormDisplayed && (\n <MobileFormToolbar buttonRef={buttonRef} formId={formId} handleReset={resetFilters} />\n )}\n </form>\n ) : (\n <>\n {isCollapsedOnResponsive && (\n <div\n className=\"filter__refine filter__refine--mobile-close\"\n data-testid=\"refine-mobile\">\n <div role=\"button\" onClick={() => setDisplaySearchFilter(true)}>\n {REFINE}\n </div>\n </div>\n )}\n </>\n )}\n </>\n );\n};\n\nSearchFilter.propTypes = {\n data: PropTypes.object.isRequired,\n filters: PropTypes.array.isRequired,\n buttonRef: PropTypes.object.isRequired,\n hasUrl: PropTypes.bool.isRequired,\n entity: PropTypes.string.isRequired,\n handleSearch: PropTypes.func.isRequired,\n resetFilters: PropTypes.func.isRequired,\n name: PropTypes.string.isRequired,\n displaySearchFilter: PropTypes.bool.isRequired,\n setDisplaySearchFilter: PropTypes.func.isRequired,\n isCollapsedOnResponsive: PropTypes.bool.isRequired,\n groupAfter: PropTypes.number.isRequired\n};\n\nexport default SearchFilter;\n"],"file":"SearchFilter.js"}
1
+ {"version":3,"sources":["../../../../src/components/SearchFilter/SearchFilter/SearchFilter.js"],"names":["SearchFilter","data","filters","buttonRef","searchFilterRef","hasUrl","entity","handleSearch","resetFilters","name","isCollapsedOnResponsive","displaySearchFilter","setDisplaySearchFilter","groupAfter","isDesktop","setIsDesktop","pageWidth","setPageWidth","moreFiltersCollapsed","setMoreFiltersCollapsed","window","innerWidth","handleResize","target","addEventListener","removeEventListener","isDesktopFormDisplayed","isMobileFormDisplayed","formClass","moreFiltersWrapperClass","formId","searchPublishedContent","slice","SEARCH","REFINE","propTypes","PropTypes","object","isRequired","array","bool","string","func","number"],"mappings":"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","sourcesContent":["import React, { useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport FiltersList from './FiltersList';\nimport { isDeviceDesktop } from '../helpers';\nimport CloseMobileForm from './CloseMobileForm';\nimport ResetDesktopForm from './ResetDesktopForm';\nimport MobileFormToolbar from './MobileFormToolbar';\nimport { SEARCH, REFINE } from '../constants';\n\nconst SearchFilter = ({\n data,\n filters,\n buttonRef,\n searchFilterRef,\n hasUrl,\n entity,\n handleSearch,\n resetFilters,\n name,\n isCollapsedOnResponsive,\n displaySearchFilter,\n setDisplaySearchFilter,\n groupAfter\n}) => {\n const [isDesktop, setIsDesktop] = useState(true);\n const [pageWidth, setPageWidth] = useState(null);\n const [moreFiltersCollapsed, setMoreFiltersCollapsed] = useState(true);\n\n useEffect(\n () => {\n if (window && !pageWidth) {\n setPageWidth(window.innerWidth);\n setIsDesktop(isDeviceDesktop());\n }\n\n const handleResize = ({ target: { innerWidth } }) => {\n setIsDesktop(isDeviceDesktop());\n setPageWidth(innerWidth);\n if (isDesktop) setDisplaySearchFilter(false);\n };\n\n window.addEventListener('resize', handleResize);\n return () => {\n window.removeEventListener('resize', handleResize);\n };\n },\n [isDesktop, pageWidth, setDisplaySearchFilter]\n );\n\n let isDesktopFormDisplayed = true;\n let isMobileFormDisplayed = false;\n\n if (!isDesktop && isCollapsedOnResponsive) {\n isMobileFormDisplayed = displaySearchFilter;\n isDesktopFormDisplayed = false;\n }\n\n const formClass = classnames({\n 'filter__form filter__form--mobile': isMobileFormDisplayed\n });\n\n const moreFiltersWrapperClass = classnames({\n 'filter__more-filters-wrapper filter__more-filters-wrapper--open': moreFiltersCollapsed,\n 'filter__more-filters-wrapper': !moreFiltersCollapsed\n });\n\n const formId = `filter-${name}-form`;\n\n return (\n <>\n {isDesktopFormDisplayed || isMobileFormDisplayed ? (\n <form\n className={formClass}\n data-testid={formId}\n id={formId}\n onSubmit={handleSearch}\n ref={searchFilterRef}>\n {isMobileFormDisplayed && (\n <CloseMobileForm handleClose={() => setDisplaySearchFilter(false)} />\n )}\n\n <div className=\"filter filter--search-refine\">\n {isDesktopFormDisplayed && <ResetDesktopForm handleReset={resetFilters} />}\n\n <div className=\"filter__wrapper filter__wrapper--search-refine\">\n {!groupAfter && (\n <FiltersList\n data={data.searchPublishedContent}\n filters={filters}\n buttonRef={buttonRef}\n hasUrl={hasUrl}\n entity={entity}\n />\n )}\n\n {!!groupAfter && (\n <>\n <FiltersList\n data={data.searchPublishedContent}\n filters={filters.slice(0, groupAfter)}\n buttonRef={buttonRef}\n hasUrl={hasUrl}\n entity={entity}\n />\n\n <button\n className=\"filter__more-filters-toggler\"\n type=\"button\"\n onClick={() => setMoreFiltersCollapsed(!moreFiltersCollapsed)}>\n More filters\n </button>\n\n <div className={moreFiltersWrapperClass}>\n <FiltersList\n data={data.searchPublishedContent}\n filters={filters.slice(groupAfter)}\n buttonRef={buttonRef}\n hasUrl={hasUrl}\n entity={entity}\n />\n\n <div className=\"filter__more-filters-buttons\">\n <ResetDesktopForm handleReset={resetFilters} />\n\n <button className=\"button button--full-width\" type=\"submit\" ref={buttonRef}>\n {SEARCH}\n </button>\n </div>\n </div>\n </>\n )}\n\n <br />\n\n {isDesktopFormDisplayed && (\n <button className=\"button button--full-width\" type=\"submit\" ref={buttonRef}>\n {SEARCH}\n </button>\n )}\n </div>\n </div>\n\n {isMobileFormDisplayed && (\n <MobileFormToolbar buttonRef={buttonRef} formId={formId} handleReset={resetFilters} />\n )}\n </form>\n ) : (\n <>\n {isCollapsedOnResponsive && (\n <div\n className=\"filter__refine filter__refine--mobile-close\"\n ref={searchFilterRef}\n data-testid=\"refine-mobile\">\n <div role=\"button\" onClick={() => setDisplaySearchFilter(true)}>\n {REFINE}\n </div>\n </div>\n )}\n </>\n )}\n </>\n );\n};\n\nSearchFilter.propTypes = {\n data: PropTypes.object.isRequired,\n filters: PropTypes.array.isRequired,\n buttonRef: PropTypes.object.isRequired,\n searchFilterRef: PropTypes.object.isRequired,\n hasUrl: PropTypes.bool.isRequired,\n entity: PropTypes.string.isRequired,\n handleSearch: PropTypes.func.isRequired,\n resetFilters: PropTypes.func.isRequired,\n name: PropTypes.string.isRequired,\n displaySearchFilter: PropTypes.bool.isRequired,\n setDisplaySearchFilter: PropTypes.func.isRequired,\n isCollapsedOnResponsive: PropTypes.bool.isRequired,\n groupAfter: PropTypes.number.isRequired\n};\n\nexport default SearchFilter;\n"],"file":"SearchFilter.js"}
@@ -33,6 +33,10 @@ require("core-js/modules/es.array.sort.js");
33
33
 
34
34
  require("core-js/modules/es.array.concat.js");
35
35
 
36
+ require("core-js/modules/es.date.now.js");
37
+
38
+ require("core-js/modules/es.date.to-string.js");
39
+
36
40
  require("core-js/modules/es.array.for-each.js");
37
41
 
38
42
  require("core-js/modules/web.dom-collections.for-each.js");
@@ -81,8 +85,14 @@ var SearchFilterContainer = function SearchFilterContainer(_ref) {
81
85
  displaySearchFilter = _useState2[0],
82
86
  setDisplaySearchFilter = _useState2[1];
83
87
 
88
+ var _useState3 = (0, _react.useState)("filter-".concat(name)),
89
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
90
+ key = _useState4[0],
91
+ setKey = _useState4[1];
92
+
84
93
  (0, _helpers.removeUpdatedRanges)();
85
94
  var buttonRef = (0, _react.useRef)(null);
95
+ var searchFilterRef = (0, _react.useRef)(null);
86
96
  var hasUrl = !!url;
87
97
 
88
98
  var _parseUrl = (0, _queryString.parseUrl)(router.asPath),
@@ -102,24 +112,42 @@ var SearchFilterContainer = function SearchFilterContainer(_ref) {
102
112
  var updatedRanges = (0, _helpers.getUpdatedRanges)();
103
113
  var queryParams = (0, _helpers.buildQueryParams)(e, filters, updatedRanges);
104
114
  setDisplaySearchFilter(false);
105
- if (!queryParams) return router.push('/Resolver', baseQuery, {
106
- shallow: !hasUrl
107
- }).then(function () {
108
- return window.scrollTo(0, 0);
109
- });
115
+
116
+ if (!queryParams) {
117
+ scrollToParent();
118
+ return router.push('/Resolver', baseQuery, {
119
+ shallow: !hasUrl,
120
+ scroll: false
121
+ });
122
+ }
123
+
110
124
  var newUrl = (0, _helpers.buildNewQuery)(url, currentUrl, queryParams, sortValues);
125
+ scrollToParent();
111
126
  return router.push('/Resolver', newUrl, {
112
- shallow: !hasUrl
113
- }).then(function () {
114
- return window.scrollTo(0, 0);
127
+ shallow: !hasUrl,
128
+ scroll: false
115
129
  });
116
130
  };
117
131
 
132
+ var scrollToParent = function scrollToParent() {
133
+ if (searchFilterRef && searchFilterRef.current) {
134
+ window.scrollTo({
135
+ left: 0,
136
+ top: window.pageYOffset + searchFilterRef.current.parentNode.getBoundingClientRect().top,
137
+ behavior: 'smooth'
138
+ });
139
+ } else {
140
+ window.scrollTo(0, 0);
141
+ }
142
+ };
143
+
118
144
  var resetFilters = function resetFilters() {
145
+ scrollToParent();
119
146
  router.push('/Resolver', baseQuery, {
120
- shallow: !hasUrl
147
+ shallow: !hasUrl,
148
+ scroll: false
121
149
  }).then(function () {
122
- return window.scrollTo(0, 0);
150
+ setKey("filter-".concat(name, ":").concat(Date.now()));
123
151
  });
124
152
  };
125
153
 
@@ -159,9 +187,11 @@ var SearchFilterContainer = function SearchFilterContainer(_ref) {
159
187
  if (error) return error.message;
160
188
  var shouldDisplayForm = !!filters.length && !loading;
161
189
  return shouldDisplayForm ? /*#__PURE__*/_react["default"].createElement(_SearchFilter["default"], {
190
+ key: key,
162
191
  data: data,
163
192
  filters: filters,
164
193
  buttonRef: buttonRef,
194
+ searchFilterRef: searchFilterRef,
165
195
  hasUrl: hasUrl,
166
196
  entity: entity,
167
197
  handleSearch: handleSearch,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/SearchFilter/SearchFilterContainer.js"],"names":["SearchFilterContainer","router","entity","url","filters","name","isCollapsedOnResponsive","groupAfter","displaySearchFilter","setDisplaySearchFilter","buttonRef","hasUrl","asPath","currentUrl","query","sort","sortby","sortValues","baseQuery","handleSearch","e","preventDefault","updatedRanges","queryParams","push","shallow","then","window","scrollTo","newUrl","resetFilters","action","RAW_RESULTS","rawQueryStringified","checkboxSelectValues","rangeValues","forEach","type","propsToDisplay","CHECKBOX_SELECT","includes","RANGE","docType","variables","limit","skip","data","error","loading","message","shouldDisplayForm","length","propTypes","PropTypes","object","isRequired","string","array","bool","number","defaultProps"],"mappings":"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","sourcesContent":["import React, { useState, useRef } from 'react';\nimport { withRouter } from 'next/router';\nimport { useQuery } from '@apollo/react-hooks';\nimport PropTypes from 'prop-types';\nimport { parseUrl, stringify } from 'query-string';\nimport SearchFilter from './SearchFilter';\nimport { withTitle } from '../../HOC';\nimport { getSearchPublishedContent } from '../../application/query';\nimport {\n buildNewQuery,\n buildRawQueryStringified,\n buildQueryParams,\n getUpdatedRanges,\n removeUpdatedRanges\n} from './helpers';\nimport { getEntityData } from '../../helpers';\nimport { RAW_RESULTS, RANGE, CHECKBOX_SELECT } from './constants';\n\nconst SearchFilterContainer = ({\n router,\n entity,\n url,\n filters,\n name,\n isCollapsedOnResponsive,\n groupAfter\n}) => {\n const [displaySearchFilter, setDisplaySearchFilter] = useState(false);\n\n removeUpdatedRanges();\n const buttonRef = useRef(null);\n const hasUrl = !!url;\n const {\n url: currentUrl,\n query: { sort, sortby }\n } = parseUrl(router.asPath);\n const sortValues = sort && sortby ? stringify({ sort, sortby }) : '';\n const baseQuery = sortValues ? `${currentUrl}?${sortValues}` : currentUrl;\n\n const handleSearch = e => {\n e.preventDefault();\n const updatedRanges = getUpdatedRanges();\n const queryParams = buildQueryParams(e, filters, updatedRanges);\n setDisplaySearchFilter(false);\n\n if (!queryParams)\n return router\n .push('/Resolver', baseQuery, { shallow: !hasUrl })\n .then(() => window.scrollTo(0, 0));\n const newUrl = buildNewQuery(url, currentUrl, queryParams, sortValues);\n return router.push('/Resolver', newUrl, { shallow: !hasUrl }).then(() => window.scrollTo(0, 0));\n };\n\n const resetFilters = () => {\n router.push('/Resolver', baseQuery, { shallow: !hasUrl }).then(() => window.scrollTo(0, 0));\n };\n\n const action = getSearchPublishedContent(RAW_RESULTS);\n\n let rawQueryStringified = '';\n\n const checkboxSelectValues = [];\n const rangeValues = [];\n\n filters.forEach(({ type, propsToDisplay }) => {\n if (CHECKBOX_SELECT.includes(type)) {\n checkboxSelectValues.push(propsToDisplay[0]);\n } else if (type === RANGE) {\n rangeValues.push(...propsToDisplay);\n }\n });\n\n const { docType } = getEntityData(entity);\n\n rawQueryStringified = buildRawQueryStringified(checkboxSelectValues, rangeValues, docType);\n\n const { data = {}, error, loading } = useQuery(action, {\n variables: { rawQueryStringified, limit: 0 }, // we only want aggs so limit=0 for no search results\n skip: !rawQueryStringified\n });\n\n if (error) return error.message;\n\n const shouldDisplayForm = !!filters.length && !loading;\n\n return shouldDisplayForm ? (\n <SearchFilter\n data={data}\n filters={filters}\n buttonRef={buttonRef}\n hasUrl={hasUrl}\n entity={entity}\n handleSearch={handleSearch}\n resetFilters={resetFilters}\n name={name}\n isCollapsedOnResponsive={isCollapsedOnResponsive}\n displaySearchFilter={displaySearchFilter}\n setDisplaySearchFilter={setDisplaySearchFilter}\n groupAfter={groupAfter}\n />\n ) : null;\n};\n\nSearchFilterContainer.propTypes = {\n router: PropTypes.object.isRequired,\n entity: PropTypes.string,\n url: PropTypes.string,\n filters: PropTypes.array,\n name: PropTypes.string.isRequired,\n isCollapsedOnResponsive: PropTypes.bool,\n groupAfter: PropTypes.number\n};\n\nSearchFilterContainer.defaultProps = {\n url: null,\n filters: [],\n entity: '',\n isCollapsedOnResponsive: true,\n groupAfter: 0\n};\n\nexport default withRouter(withTitle(SearchFilterContainer));\n"],"file":"SearchFilterContainer.js"}
1
+ {"version":3,"sources":["../../../src/components/SearchFilter/SearchFilterContainer.js"],"names":["SearchFilterContainer","router","entity","url","filters","name","isCollapsedOnResponsive","groupAfter","displaySearchFilter","setDisplaySearchFilter","key","setKey","buttonRef","searchFilterRef","hasUrl","asPath","currentUrl","query","sort","sortby","sortValues","baseQuery","handleSearch","e","preventDefault","updatedRanges","queryParams","scrollToParent","push","shallow","scroll","newUrl","current","window","scrollTo","left","top","pageYOffset","parentNode","getBoundingClientRect","behavior","resetFilters","then","Date","now","action","RAW_RESULTS","rawQueryStringified","checkboxSelectValues","rangeValues","forEach","type","propsToDisplay","CHECKBOX_SELECT","includes","RANGE","docType","variables","limit","skip","data","error","loading","message","shouldDisplayForm","length","propTypes","PropTypes","object","isRequired","string","array","bool","number","defaultProps"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAOA;;AACA;;;;;;AAEA,IAAMA,qBAAqB,GAAG,SAAxBA,qBAAwB,OAQxB;AAAA,MAPJC,MAOI,QAPJA,MAOI;AAAA,MANJC,MAMI,QANJA,MAMI;AAAA,MALJC,GAKI,QALJA,GAKI;AAAA,MAJJC,OAII,QAJJA,OAII;AAAA,MAHJC,IAGI,QAHJA,IAGI;AAAA,MAFJC,uBAEI,QAFJA,uBAEI;AAAA,MADJC,UACI,QADJA,UACI;;AACJ,kBAAsD,qBAAS,KAAT,CAAtD;AAAA;AAAA,MAAOC,mBAAP;AAAA,MAA4BC,sBAA5B;;AACA,mBAAsB,sCAAmBJ,IAAnB,EAAtB;AAAA;AAAA,MAAOK,GAAP;AAAA,MAAYC,MAAZ;;AAEA;AACA,MAAMC,SAAS,GAAG,mBAAO,IAAP,CAAlB;AACA,MAAMC,eAAe,GAAG,mBAAO,IAAP,CAAxB;AAEA,MAAMC,MAAM,GAAG,CAAC,CAACX,GAAjB;;AACA,kBAGI,2BAASF,MAAM,CAACc,MAAhB,CAHJ;AAAA,MACOC,UADP,aACEb,GADF;AAAA,kCAEEc,KAFF;AAAA,MAEWC,IAFX,mBAEWA,IAFX;AAAA,MAEiBC,MAFjB,mBAEiBA,MAFjB;;AAIA,MAAMC,UAAU,GAAGF,IAAI,IAAIC,MAAR,GAAiB,4BAAU;AAAED,IAAAA,IAAI,EAAJA,IAAF;AAAQC,IAAAA,MAAM,EAANA;AAAR,GAAV,CAAjB,GAA+C,EAAlE;AACA,MAAME,SAAS,GAAGD,UAAU,aAAMJ,UAAN,cAAoBI,UAApB,IAAmCJ,UAA/D;;AAEA,MAAMM,YAAY,GAAG,SAAfA,YAAe,CAAAC,CAAC,EAAI;AACxBA,IAAAA,CAAC,CAACC,cAAF;AACA,QAAMC,aAAa,GAAG,gCAAtB;AACA,QAAMC,WAAW,GAAG,+BAAiBH,CAAjB,EAAoBnB,OAApB,EAA6BqB,aAA7B,CAApB;AACAhB,IAAAA,sBAAsB,CAAC,KAAD,CAAtB;;AAEA,QAAI,CAACiB,WAAL,EAAkB;AAChBC,MAAAA,cAAc;AACd,aAAO1B,MAAM,CAAC2B,IAAP,CAAY,WAAZ,EAAyBP,SAAzB,EAAoC;AAAEQ,QAAAA,OAAO,EAAE,CAACf,MAAZ;AAAoBgB,QAAAA,MAAM,EAAE;AAA5B,OAApC,CAAP;AACD;;AACD,QAAMC,MAAM,GAAG,4BAAc5B,GAAd,EAAmBa,UAAnB,EAA+BU,WAA/B,EAA4CN,UAA5C,CAAf;AACAO,IAAAA,cAAc;AACd,WAAO1B,MAAM,CAAC2B,IAAP,CAAY,WAAZ,EAAyBG,MAAzB,EAAiC;AAAEF,MAAAA,OAAO,EAAE,CAACf,MAAZ;AAAoBgB,MAAAA,MAAM,EAAE;AAA5B,KAAjC,CAAP;AACD,GAbD;;AAeA,MAAMH,cAAc,GAAG,SAAjBA,cAAiB,GAAM;AAC3B,QAAId,eAAe,IAAIA,eAAe,CAACmB,OAAvC,EAAgD;AAC9CC,MAAAA,MAAM,CAACC,QAAP,CAAgB;AACdC,QAAAA,IAAI,EAAE,CADQ;AAEdC,QAAAA,GAAG,EAAEH,MAAM,CAACI,WAAP,GAAqBxB,eAAe,CAACmB,OAAhB,CAAwBM,UAAxB,CAAmCC,qBAAnC,GAA2DH,GAFvE;AAGdI,QAAAA,QAAQ,EAAE;AAHI,OAAhB;AAKD,KAND,MAMO;AACLP,MAAAA,MAAM,CAACC,QAAP,CAAgB,CAAhB,EAAmB,CAAnB;AACD;AACF,GAVD;;AAYA,MAAMO,YAAY,GAAG,SAAfA,YAAe,GAAM;AACzBd,IAAAA,cAAc;AACd1B,IAAAA,MAAM,CAAC2B,IAAP,CAAY,WAAZ,EAAyBP,SAAzB,EAAoC;AAAEQ,MAAAA,OAAO,EAAE,CAACf,MAAZ;AAAoBgB,MAAAA,MAAM,EAAE;AAA5B,KAApC,EAAyEY,IAAzE,CAA8E,YAAM;AAClF/B,MAAAA,MAAM,kBAAWN,IAAX,cAAmBsC,IAAI,CAACC,GAAL,EAAnB,EAAN;AACD,KAFD;AAGD,GALD;;AAOA,MAAMC,MAAM,GAAG,sCAA0BC,sBAA1B,CAAf;AAEA,MAAIC,mBAAmB,GAAG,EAA1B;AAEA,MAAMC,oBAAoB,GAAG,EAA7B;AACA,MAAMC,WAAW,GAAG,EAApB;AAEA7C,EAAAA,OAAO,CAAC8C,OAAR,CAAgB,iBAA8B;AAAA,QAA3BC,IAA2B,SAA3BA,IAA2B;AAAA,QAArBC,cAAqB,SAArBA,cAAqB;;AAC5C,QAAIC,2BAAgBC,QAAhB,CAAyBH,IAAzB,CAAJ,EAAoC;AAClCH,MAAAA,oBAAoB,CAACpB,IAArB,CAA0BwB,cAAc,CAAC,CAAD,CAAxC;AACD,KAFD,MAEO,IAAID,IAAI,KAAKI,gBAAb,EAAoB;AACzBN,MAAAA,WAAW,CAACrB,IAAZ,OAAAqB,WAAW,sCAASG,cAAT,EAAX;AACD;AACF,GAND;;AAQA,uBAAoB,6BAAclD,MAAd,CAApB;AAAA,MAAQsD,OAAR,kBAAQA,OAAR;;AAEAT,EAAAA,mBAAmB,GAAG,uCAAyBC,oBAAzB,EAA+CC,WAA/C,EAA4DO,OAA5D,CAAtB;;AAEA,kBAAsC,0BAASX,MAAT,EAAiB;AACrDY,IAAAA,SAAS,EAAE;AAAEV,MAAAA,mBAAmB,EAAnBA,mBAAF;AAAuBW,MAAAA,KAAK,EAAE;AAA9B,KAD0C;AACP;AAC9CC,IAAAA,IAAI,EAAE,CAACZ;AAF8C,GAAjB,CAAtC;AAAA,iCAAQa,IAAR;AAAA,MAAQA,IAAR,+BAAe,EAAf;AAAA,MAAmBC,KAAnB,aAAmBA,KAAnB;AAAA,MAA0BC,OAA1B,aAA0BA,OAA1B;;AAKA,MAAID,KAAJ,EAAW,OAAOA,KAAK,CAACE,OAAb;AAEX,MAAMC,iBAAiB,GAAG,CAAC,CAAC5D,OAAO,CAAC6D,MAAV,IAAoB,CAACH,OAA/C;AAEA,SAAOE,iBAAiB,gBACtB,gCAAC,wBAAD;AACE,IAAA,GAAG,EAAEtD,GADP;AAEE,IAAA,IAAI,EAAEkD,IAFR;AAGE,IAAA,OAAO,EAAExD,OAHX;AAIE,IAAA,SAAS,EAAEQ,SAJb;AAKE,IAAA,eAAe,EAAEC,eALnB;AAME,IAAA,MAAM,EAAEC,MANV;AAOE,IAAA,MAAM,EAAEZ,MAPV;AAQE,IAAA,YAAY,EAAEoB,YARhB;AASE,IAAA,YAAY,EAAEmB,YAThB;AAUE,IAAA,IAAI,EAAEpC,IAVR;AAWE,IAAA,uBAAuB,EAAEC,uBAX3B;AAYE,IAAA,mBAAmB,EAAEE,mBAZvB;AAaE,IAAA,sBAAsB,EAAEC,sBAb1B;AAcE,IAAA,UAAU,EAAEF;AAdd,IADsB,GAiBpB,IAjBJ;AAkBD,CAxGD;;AA0GAP,qBAAqB,CAACkE,SAAtB,GAAkC;AAChCjE,EAAAA,MAAM,EAAEkE,sBAAUC,MAAV,CAAiBC,UADO;AAEhCnE,EAAAA,MAAM,EAAEiE,sBAAUG,MAFc;AAGhCnE,EAAAA,GAAG,EAAEgE,sBAAUG,MAHiB;AAIhClE,EAAAA,OAAO,EAAE+D,sBAAUI,KAJa;AAKhClE,EAAAA,IAAI,EAAE8D,sBAAUG,MAAV,CAAiBD,UALS;AAMhC/D,EAAAA,uBAAuB,EAAE6D,sBAAUK,IANH;AAOhCjE,EAAAA,UAAU,EAAE4D,sBAAUM;AAPU,CAAlC;AAUAzE,qBAAqB,CAAC0E,YAAtB,GAAqC;AACnCvE,EAAAA,GAAG,EAAE,IAD8B;AAEnCC,EAAAA,OAAO,EAAE,EAF0B;AAGnCF,EAAAA,MAAM,EAAE,EAH2B;AAInCI,EAAAA,uBAAuB,EAAE,IAJU;AAKnCC,EAAAA,UAAU,EAAE;AALuB,CAArC;;eAQe,wBAAW,oBAAUP,qBAAV,CAAX,C","sourcesContent":["import React, { useState, useRef } from 'react';\nimport { withRouter } from 'next/router';\nimport { useQuery } from '@apollo/react-hooks';\nimport PropTypes from 'prop-types';\nimport { parseUrl, stringify } from 'query-string';\nimport SearchFilter from './SearchFilter';\nimport { withTitle } from '../../HOC';\nimport { getSearchPublishedContent } from '../../application/query';\nimport {\n buildNewQuery,\n buildRawQueryStringified,\n buildQueryParams,\n getUpdatedRanges,\n removeUpdatedRanges\n} from './helpers';\nimport { getEntityData } from '../../helpers';\nimport { RAW_RESULTS, RANGE, CHECKBOX_SELECT } from './constants';\n\nconst SearchFilterContainer = ({\n router,\n entity,\n url,\n filters,\n name,\n isCollapsedOnResponsive,\n groupAfter\n}) => {\n const [displaySearchFilter, setDisplaySearchFilter] = useState(false);\n const [key, setKey] = useState(`filter-${name}`);\n\n removeUpdatedRanges();\n const buttonRef = useRef(null);\n const searchFilterRef = useRef(null);\n\n const hasUrl = !!url;\n const {\n url: currentUrl,\n query: { sort, sortby }\n } = parseUrl(router.asPath);\n const sortValues = sort && sortby ? stringify({ sort, sortby }) : '';\n const baseQuery = sortValues ? `${currentUrl}?${sortValues}` : currentUrl;\n\n const handleSearch = e => {\n e.preventDefault();\n const updatedRanges = getUpdatedRanges();\n const queryParams = buildQueryParams(e, filters, updatedRanges);\n setDisplaySearchFilter(false);\n\n if (!queryParams) {\n scrollToParent();\n return router.push('/Resolver', baseQuery, { shallow: !hasUrl, scroll: false });\n }\n const newUrl = buildNewQuery(url, currentUrl, queryParams, sortValues);\n scrollToParent();\n return router.push('/Resolver', newUrl, { shallow: !hasUrl, scroll: false });\n };\n\n const scrollToParent = () => {\n if (searchFilterRef && searchFilterRef.current) {\n window.scrollTo({\n left: 0,\n top: window.pageYOffset + searchFilterRef.current.parentNode.getBoundingClientRect().top,\n behavior: 'smooth'\n });\n } else {\n window.scrollTo(0, 0);\n }\n };\n\n const resetFilters = () => {\n scrollToParent();\n router.push('/Resolver', baseQuery, { shallow: !hasUrl, scroll: false }).then(() => {\n setKey(`filter-${name}:${Date.now()}`);\n });\n };\n\n const action = getSearchPublishedContent(RAW_RESULTS);\n\n let rawQueryStringified = '';\n\n const checkboxSelectValues = [];\n const rangeValues = [];\n\n filters.forEach(({ type, propsToDisplay }) => {\n if (CHECKBOX_SELECT.includes(type)) {\n checkboxSelectValues.push(propsToDisplay[0]);\n } else if (type === RANGE) {\n rangeValues.push(...propsToDisplay);\n }\n });\n\n const { docType } = getEntityData(entity);\n\n rawQueryStringified = buildRawQueryStringified(checkboxSelectValues, rangeValues, docType);\n\n const { data = {}, error, loading } = useQuery(action, {\n variables: { rawQueryStringified, limit: 0 }, // we only want aggs so limit=0 for no search results\n skip: !rawQueryStringified\n });\n\n if (error) return error.message;\n\n const shouldDisplayForm = !!filters.length && !loading;\n\n return shouldDisplayForm ? (\n <SearchFilter\n key={key}\n data={data}\n filters={filters}\n buttonRef={buttonRef}\n searchFilterRef={searchFilterRef}\n hasUrl={hasUrl}\n entity={entity}\n handleSearch={handleSearch}\n resetFilters={resetFilters}\n name={name}\n isCollapsedOnResponsive={isCollapsedOnResponsive}\n displaySearchFilter={displaySearchFilter}\n setDisplaySearchFilter={setDisplaySearchFilter}\n groupAfter={groupAfter}\n />\n ) : null;\n};\n\nSearchFilterContainer.propTypes = {\n router: PropTypes.object.isRequired,\n entity: PropTypes.string,\n url: PropTypes.string,\n filters: PropTypes.array,\n name: PropTypes.string.isRequired,\n isCollapsedOnResponsive: PropTypes.bool,\n groupAfter: PropTypes.number\n};\n\nSearchFilterContainer.defaultProps = {\n url: null,\n filters: [],\n entity: '',\n isCollapsedOnResponsive: true,\n groupAfter: 0\n};\n\nexport default withRouter(withTitle(SearchFilterContainer));\n"],"file":"SearchFilterContainer.js"}
@@ -39,6 +39,7 @@ const ListBuilder = props => {
39
39
  sortby,
40
40
  sort,
41
41
  paginationIndex,
42
+ omitWrappers,
42
43
  operator,
43
44
  filterOperator,
44
45
  currentSchema,
@@ -124,6 +125,7 @@ const ListBuilder = props => {
124
125
  limitToUse: limitToUse,
125
126
  itemsPerPageToUse: itemsPerPageToUse,
126
127
  action: action,
128
+ omitWrappers: omitWrappers,
127
129
  listComponent: listComponent,
128
130
  listAggregations: updatedAggregations,
129
131
  isAZ: isAZ,
@@ -149,6 +151,7 @@ ListBuilder.propTypes = {
149
151
  entityData: PropTypes.object,
150
152
  itemsToDisplay: PropTypes.array,
151
153
  limit: PropTypes.number,
154
+ omitWrappers: PropTypes.bool,
152
155
  offset: PropTypes.number,
153
156
  sortby: PropTypes.array.isRequired,
154
157
  sort: PropTypes.string.isRequired,
@@ -161,6 +164,7 @@ ListBuilder.defaultProps = {
161
164
  entityData: {},
162
165
  itemsToDisplay: [],
163
166
  limit: 0,
167
+ omitWrappers: false,
164
168
  offset: 0,
165
169
  paginationType: 'infinite',
166
170
  inheritedFilters: [],
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/List/ListBuilder.js"],"names":["React","PropTypes","useQuery","getStringTypeProps","FullRender","CardsRender","ListRender","withInfiniteScroll","getSearchPublishedContent","buildRawQuery","buildQueryFields","buildSetFilters","getGenericRenderVariables","getEntityData","getCurrentOffset","getUpdatedFilterBy","checkPropsToUse","buildPropsQuery","sortAggs","getItemsPerPageToUse","buildAzAggregations","SEARCH_PUBLISHED_CONTENT","INFINITE","CLASSIC","RAW_RESULTS","ListBuilder","props","entitySchema","isCard","isAZ","inheritedFilters","paginationType","entity","isTextSearchFilterApplied","parent","itemId","itemsPerPage","itemsToDisplay","limit","propsToDisplay","offset","entityData","sortby","sort","paginationIndex","operator","filterOperator","currentSchema","filterEntitySchema","requiredSchema","searchValues","azFilter","listToUse","isInfinite","isNotClassic","propsToDisplayValues","entityFields","limitToUse","length","shouldApplyDefaultSort","itemsPerPageToUse","initialOffset","entityType","docType","fields","action","actionKey","updatedFilterBy","filterValues","filterBy","relations","stringProps","Object","values","azRawQuery","shouldReturnAggs","azVariables","JSON","stringify","azAction","data","error","loading","variables","skip","message","listAggregations","updatedAggregations","rawQuery","listComponent","propTypes","string","isRequired","object","bool","number","array","defaultProps"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { useQuery } from '@apollo/react-hooks';\nimport { getStringTypeProps } from '@blaze-cms/utils';\nimport { FullRender, CardsRender } from './components';\nimport ListRender from './ListRender';\nimport withInfiniteScroll from '../../HOC/withInfiniteScroll';\nimport { getSearchPublishedContent } from '../../application/query';\nimport {\n buildRawQuery,\n buildQueryFields,\n buildSetFilters,\n getGenericRenderVariables,\n getEntityData,\n getCurrentOffset,\n getUpdatedFilterBy,\n checkPropsToUse,\n buildPropsQuery\n} from '../../helpers';\nimport { sortAggs, getItemsPerPageToUse, buildAzAggregations } from './helpers';\nimport { SEARCH_PUBLISHED_CONTENT, INFINITE, CLASSIC } from '../../constants';\nimport { RAW_RESULTS } from './constants';\n\nconst ListBuilder = props => {\n const {\n entitySchema,\n isCard,\n isAZ,\n inheritedFilters,\n paginationType,\n entity,\n isTextSearchFilterApplied,\n parent: { itemId },\n itemsPerPage,\n itemsToDisplay,\n limit,\n propsToDisplay,\n offset,\n entityData,\n sortby,\n sort,\n paginationIndex,\n operator,\n filterOperator,\n currentSchema,\n filterEntitySchema,\n requiredSchema,\n searchValues,\n azFilter\n } = props;\n const listToUse = isCard ? CardsRender : FullRender;\n const isInfinite = paginationType === INFINITE;\n const isNotClassic = paginationType !== CLASSIC;\n const propsToDisplayValues = checkPropsToUse(propsToDisplay);\n const entityFields = buildPropsQuery(entitySchema, propsToDisplayValues, props) || '';\n const limitToUse = limit || itemsToDisplay.length;\n const shouldApplyDefaultSort = !sortby || !sortby.length;\n const itemsPerPageToUse = getItemsPerPageToUse(itemsPerPage, limitToUse);\n const initialOffset = getCurrentOffset(offset, itemsPerPageToUse, paginationIndex, limitToUse);\n const { entityType, docType } = getEntityData(entity);\n const fields = buildQueryFields(entityFields, entityType, !isCard);\n const action = getSearchPublishedContent(fields);\n const actionKey = SEARCH_PUBLISHED_CONTENT;\n const updatedFilterBy = getUpdatedFilterBy(\n inheritedFilters,\n entityData,\n currentSchema,\n filterEntitySchema,\n itemId,\n props\n );\n\n const filterValues =\n updatedFilterBy && updatedFilterBy.length\n ? buildSetFilters({ ...props, filterBy: updatedFilterBy })\n : buildSetFilters({ ...props });\n\n const { relations = [] } = filterEntitySchema;\n const stringProps = getStringTypeProps(entity, relations, Object.values(requiredSchema));\n\n const azRawQuery = buildRawQuery(\n docType,\n operator,\n searchValues,\n {\n filterValues,\n filterOperator,\n relations,\n stringProps\n },\n itemId,\n itemsToDisplay,\n shouldApplyDefaultSort,\n { shouldReturnAggs: true, isAZ }\n );\n\n const azVariables = getGenericRenderVariables(\n relations,\n {\n ...props,\n limit: itemsPerPageToUse,\n offset: initialOffset,\n sort,\n sortby\n },\n stringProps,\n JSON.stringify(azRawQuery),\n isTextSearchFilterApplied\n );\n\n const azAction = getSearchPublishedContent(RAW_RESULTS);\n const { data, error, loading } = useQuery(azAction, {\n variables: azVariables,\n skip: !isAZ\n });\n if (loading) return '';\n if (error) return error.message;\n\n const listAggregations = isAZ ? sortAggs(data) : [];\n const updatedAggregations = buildAzAggregations(listAggregations);\n\n const rawQuery = buildRawQuery(\n docType,\n operator,\n searchValues,\n {\n filterValues,\n filterOperator,\n relations,\n stringProps,\n azFilter\n },\n itemId,\n itemsToDisplay,\n shouldApplyDefaultSort,\n { shouldReturnAggs: false, isAZ }\n );\n\n const variables = getGenericRenderVariables(\n relations,\n {\n ...props,\n limit: itemsPerPageToUse,\n offset: initialOffset,\n sort,\n sortby\n },\n stringProps,\n JSON.stringify(rawQuery),\n isTextSearchFilterApplied\n );\n\n const listComponent = isNotClassic ? withInfiniteScroll(listToUse) : listToUse;\n\n return (\n <ListRender\n variables={variables}\n isInfinite={isInfinite}\n initialOffset={initialOffset}\n actionKey={actionKey}\n limitToUse={limitToUse}\n itemsPerPageToUse={itemsPerPageToUse}\n action={action}\n listComponent={listComponent}\n listAggregations={updatedAggregations}\n isAZ={isAZ}\n azFilter={azFilter}\n {...props}\n />\n );\n};\n\nListBuilder.propTypes = {\n entity: PropTypes.string.isRequired,\n entitySchema: PropTypes.object.isRequired,\n isCard: PropTypes.bool.isRequired,\n isAZ: PropTypes.bool.isRequired,\n isTextSearchFilterApplied: PropTypes.bool.isRequired,\n parent: PropTypes.object.isRequired,\n itemsPerPage: PropTypes.number.isRequired,\n paginationIndex: PropTypes.number.isRequired,\n propsToDisplay: PropTypes.array.isRequired,\n currentSchema: PropTypes.object.isRequired,\n filterEntitySchema: PropTypes.object.isRequired,\n requiredSchema: PropTypes.object.isRequired,\n searchValues: PropTypes.object.isRequired,\n inheritedFilters: PropTypes.array,\n entityData: PropTypes.object,\n itemsToDisplay: PropTypes.array,\n limit: PropTypes.number,\n offset: PropTypes.number,\n sortby: PropTypes.array.isRequired,\n sort: PropTypes.string.isRequired,\n operator: PropTypes.string.isRequired,\n filterOperator: PropTypes.string.isRequired,\n paginationType: PropTypes.string,\n azFilter: PropTypes.string\n};\n\nListBuilder.defaultProps = {\n entityData: {},\n itemsToDisplay: [],\n limit: 0,\n offset: 0,\n paginationType: 'infinite',\n inheritedFilters: [],\n azFilter: ''\n};\n\nexport default ListBuilder;\n"],"file":"ListBuilder.js"}
1
+ {"version":3,"sources":["../../../src/components/List/ListBuilder.js"],"names":["React","PropTypes","useQuery","getStringTypeProps","FullRender","CardsRender","ListRender","withInfiniteScroll","getSearchPublishedContent","buildRawQuery","buildQueryFields","buildSetFilters","getGenericRenderVariables","getEntityData","getCurrentOffset","getUpdatedFilterBy","checkPropsToUse","buildPropsQuery","sortAggs","getItemsPerPageToUse","buildAzAggregations","SEARCH_PUBLISHED_CONTENT","INFINITE","CLASSIC","RAW_RESULTS","ListBuilder","props","entitySchema","isCard","isAZ","inheritedFilters","paginationType","entity","isTextSearchFilterApplied","parent","itemId","itemsPerPage","itemsToDisplay","limit","propsToDisplay","offset","entityData","sortby","sort","paginationIndex","omitWrappers","operator","filterOperator","currentSchema","filterEntitySchema","requiredSchema","searchValues","azFilter","listToUse","isInfinite","isNotClassic","propsToDisplayValues","entityFields","limitToUse","length","shouldApplyDefaultSort","itemsPerPageToUse","initialOffset","entityType","docType","fields","action","actionKey","updatedFilterBy","filterValues","filterBy","relations","stringProps","Object","values","azRawQuery","shouldReturnAggs","azVariables","JSON","stringify","azAction","data","error","loading","variables","skip","message","listAggregations","updatedAggregations","rawQuery","listComponent","propTypes","string","isRequired","object","bool","number","array","defaultProps"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { useQuery } from '@apollo/react-hooks';\nimport { getStringTypeProps } from '@blaze-cms/utils';\nimport { FullRender, CardsRender } from './components';\nimport ListRender from './ListRender';\nimport withInfiniteScroll from '../../HOC/withInfiniteScroll';\nimport { getSearchPublishedContent } from '../../application/query';\nimport {\n buildRawQuery,\n buildQueryFields,\n buildSetFilters,\n getGenericRenderVariables,\n getEntityData,\n getCurrentOffset,\n getUpdatedFilterBy,\n checkPropsToUse,\n buildPropsQuery\n} from '../../helpers';\nimport { sortAggs, getItemsPerPageToUse, buildAzAggregations } from './helpers';\nimport { SEARCH_PUBLISHED_CONTENT, INFINITE, CLASSIC } from '../../constants';\nimport { RAW_RESULTS } from './constants';\n\nconst ListBuilder = props => {\n const {\n entitySchema,\n isCard,\n isAZ,\n inheritedFilters,\n paginationType,\n entity,\n isTextSearchFilterApplied,\n parent: { itemId },\n itemsPerPage,\n itemsToDisplay,\n limit,\n propsToDisplay,\n offset,\n entityData,\n sortby,\n sort,\n paginationIndex,\n omitWrappers,\n operator,\n filterOperator,\n currentSchema,\n filterEntitySchema,\n requiredSchema,\n searchValues,\n azFilter\n } = props;\n const listToUse = isCard ? CardsRender : FullRender;\n const isInfinite = paginationType === INFINITE;\n const isNotClassic = paginationType !== CLASSIC;\n const propsToDisplayValues = checkPropsToUse(propsToDisplay);\n const entityFields = buildPropsQuery(entitySchema, propsToDisplayValues, props) || '';\n const limitToUse = limit || itemsToDisplay.length;\n const shouldApplyDefaultSort = !sortby || !sortby.length;\n const itemsPerPageToUse = getItemsPerPageToUse(itemsPerPage, limitToUse);\n const initialOffset = getCurrentOffset(offset, itemsPerPageToUse, paginationIndex, limitToUse);\n const { entityType, docType } = getEntityData(entity);\n const fields = buildQueryFields(entityFields, entityType, !isCard);\n const action = getSearchPublishedContent(fields);\n const actionKey = SEARCH_PUBLISHED_CONTENT;\n const updatedFilterBy = getUpdatedFilterBy(\n inheritedFilters,\n entityData,\n currentSchema,\n filterEntitySchema,\n itemId,\n props\n );\n\n const filterValues =\n updatedFilterBy && updatedFilterBy.length\n ? buildSetFilters({ ...props, filterBy: updatedFilterBy })\n : buildSetFilters({ ...props });\n\n const { relations = [] } = filterEntitySchema;\n const stringProps = getStringTypeProps(entity, relations, Object.values(requiredSchema));\n\n const azRawQuery = buildRawQuery(\n docType,\n operator,\n searchValues,\n {\n filterValues,\n filterOperator,\n relations,\n stringProps\n },\n itemId,\n itemsToDisplay,\n shouldApplyDefaultSort,\n { shouldReturnAggs: true, isAZ }\n );\n\n const azVariables = getGenericRenderVariables(\n relations,\n {\n ...props,\n limit: itemsPerPageToUse,\n offset: initialOffset,\n sort,\n sortby\n },\n stringProps,\n JSON.stringify(azRawQuery),\n isTextSearchFilterApplied\n );\n\n const azAction = getSearchPublishedContent(RAW_RESULTS);\n const { data, error, loading } = useQuery(azAction, {\n variables: azVariables,\n skip: !isAZ\n });\n if (loading) return '';\n if (error) return error.message;\n\n const listAggregations = isAZ ? sortAggs(data) : [];\n const updatedAggregations = buildAzAggregations(listAggregations);\n\n const rawQuery = buildRawQuery(\n docType,\n operator,\n searchValues,\n {\n filterValues,\n filterOperator,\n relations,\n stringProps,\n azFilter\n },\n itemId,\n itemsToDisplay,\n shouldApplyDefaultSort,\n { shouldReturnAggs: false, isAZ }\n );\n\n const variables = getGenericRenderVariables(\n relations,\n {\n ...props,\n limit: itemsPerPageToUse,\n offset: initialOffset,\n sort,\n sortby\n },\n stringProps,\n JSON.stringify(rawQuery),\n isTextSearchFilterApplied\n );\n\n const listComponent = isNotClassic ? withInfiniteScroll(listToUse) : listToUse;\n\n return (\n <ListRender\n variables={variables}\n isInfinite={isInfinite}\n initialOffset={initialOffset}\n actionKey={actionKey}\n limitToUse={limitToUse}\n itemsPerPageToUse={itemsPerPageToUse}\n action={action}\n omitWrappers={omitWrappers}\n listComponent={listComponent}\n listAggregations={updatedAggregations}\n isAZ={isAZ}\n azFilter={azFilter}\n {...props}\n />\n );\n};\n\nListBuilder.propTypes = {\n entity: PropTypes.string.isRequired,\n entitySchema: PropTypes.object.isRequired,\n isCard: PropTypes.bool.isRequired,\n isAZ: PropTypes.bool.isRequired,\n isTextSearchFilterApplied: PropTypes.bool.isRequired,\n parent: PropTypes.object.isRequired,\n itemsPerPage: PropTypes.number.isRequired,\n paginationIndex: PropTypes.number.isRequired,\n propsToDisplay: PropTypes.array.isRequired,\n currentSchema: PropTypes.object.isRequired,\n filterEntitySchema: PropTypes.object.isRequired,\n requiredSchema: PropTypes.object.isRequired,\n searchValues: PropTypes.object.isRequired,\n inheritedFilters: PropTypes.array,\n entityData: PropTypes.object,\n itemsToDisplay: PropTypes.array,\n limit: PropTypes.number,\n omitWrappers: PropTypes.bool,\n offset: PropTypes.number,\n sortby: PropTypes.array.isRequired,\n sort: PropTypes.string.isRequired,\n operator: PropTypes.string.isRequired,\n filterOperator: PropTypes.string.isRequired,\n paginationType: PropTypes.string,\n azFilter: PropTypes.string\n};\n\nListBuilder.defaultProps = {\n entityData: {},\n itemsToDisplay: [],\n limit: 0,\n omitWrappers: false,\n offset: 0,\n paginationType: 'infinite',\n inheritedFilters: [],\n azFilter: ''\n};\n\nexport default ListBuilder;\n"],"file":"ListBuilder.js"}
@@ -25,6 +25,7 @@ const ListFactory = props => {
25
25
  name,
26
26
  filterByProperty,
27
27
  filterBy,
28
+ omitWrappers,
28
29
  type,
29
30
  sortby: defaultSortBy,
30
31
  sort: defaultSort,
@@ -137,6 +138,7 @@ const ListFactory = props => {
137
138
  filterEntitySchema,
138
139
  requiredSchema,
139
140
  currentSchema,
141
+ omitWrappers,
140
142
  operator,
141
143
  isTextSearchFilterApplied,
142
144
  paginationIndex,
@@ -154,6 +156,7 @@ ListFactory.propTypes = {
154
156
  type: PropTypes.string.isRequired,
155
157
  filterBy: PropTypes.array,
156
158
  filterByProperty: PropTypes.array,
159
+ omitWrappers: PropTypes.bool,
157
160
  operator: PropTypes.string,
158
161
  name: PropTypes.string,
159
162
  sortby: PropTypes.array,
@@ -163,6 +166,7 @@ ListFactory.propTypes = {
163
166
  ListFactory.defaultProps = {
164
167
  filterBy: [],
165
168
  filterByProperty: [],
169
+ omitWrappers: false,
166
170
  name: '',
167
171
  sortby: [],
168
172
  sort: '',
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/List/ListFactory.js"],"names":["React","useContext","useQuery","parseUrl","PropTypes","useRouter","MainContext","getSingleEntitySchema","generateSingleItemQuery","ListBuilder","AZ_LIST_TYPE","getAzQueryFilter","getGenericProps","getRequiredSchemas","checkForError","getUnpublishedEntityName","getPaginationIndex","getSearchFilterType","getElasticsearchOperator","buildSearchValuesText","getQueryFilters","getInheritedFilters","getQueryProps","useGetEntitySchemasAsObj","AND_OPERATOR","TEXT_SEARCH","ID","AND","FULL","ListFactory","props","entity","parent","name","filterByProperty","filterBy","type","sortby","defaultSortBy","sort","defaultSort","searchFilter","operator","filterOperator","isPreview","router","asPath","parsedQuery","replace","query","url","querySort","querySortBy","itemEntity","itemId","itemEntityUpdated","paginationIndex","azFilter","data","entitySchema","error","schemaError","loading","schemaLoading","variables","id","mainSchemas","schemasLoading","schemasError","currentSchema","filterEntitySchema","requiredSchema","requiredSchemaLoading","requiredSchemaError","inheritedFilters","queryProps","actions","getAction","get","getPublished","entityData","itemQueryError","itemQueryLoading","skip","length","errorsToCheck","hasErr","errMsg","isCard","isAZ","genericProps","textFilter","shouldApplyTextFilter","propsToDisplay","valuesText","valuesAnd","valuesOr","isTextSearchFilterApplied","search_term","searchValues","searchValuesText","searchValuesCheckboxSelectRange","searchValuesCheckboxOr","listProps","propTypes","object","isRequired","string","array","defaultProps"],"mappings":"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","sourcesContent":["import React, { useContext } from 'react';\nimport { useQuery } from '@apollo/react-hooks';\nimport { parseUrl } from 'query-string';\nimport PropTypes from 'prop-types';\nimport { useRouter } from 'next/router';\nimport { MainContext } from '@blaze-cms/nextjs-components';\nimport { getSingleEntitySchema, generateSingleItemQuery } from '../../application/query';\nimport ListBuilder from './ListBuilder';\nimport { AZ_LIST_TYPE } from './constants';\nimport { getAzQueryFilter } from './helpers';\nimport {\n getGenericProps,\n getRequiredSchemas,\n checkForError,\n getUnpublishedEntityName,\n getPaginationIndex,\n getSearchFilterType,\n getElasticsearchOperator,\n buildSearchValuesText,\n getQueryFilters,\n getInheritedFilters,\n getQueryProps\n} from '../../helpers';\nimport { useGetEntitySchemasAsObj } from '../../hooks';\nimport { AND_OPERATOR, TEXT_SEARCH, ID, AND, FULL } from '../../constants';\n\nconst ListFactory = props => {\n const {\n entity,\n parent,\n name,\n filterByProperty,\n filterBy,\n type,\n sortby: defaultSortBy,\n sort: defaultSort,\n searchFilter,\n operator: filterOperator\n } = props;\n\n const { isPreview } = useContext(MainContext);\n const router = useRouter();\n const { asPath } = router;\n const parsedQuery = asPath.replace(/%5D/g, ']').replace(/%5B/g, '[');\n const { query, url, query: { sort: querySort, sortby: querySortBy } = {} } = parseUrl(\n parsedQuery\n );\n const sort = querySort || defaultSort;\n const sortby = querySortBy ? [querySortBy] : defaultSortBy || [];\n const { itemEntity, itemId } = parent;\n const itemEntityUpdated = getUnpublishedEntityName(itemEntity);\n const paginationIndex = getPaginationIndex(query, name);\n const azFilter = getAzQueryFilter(query, name);\n\n const { data: entitySchema, error: schemaError, loading: schemaLoading } = useQuery(\n getSingleEntitySchema,\n {\n variables: { id: entity }\n }\n );\n const {\n data: mainSchemas = {},\n loading: schemasLoading,\n error: schemasError\n } = useGetEntitySchemasAsObj([itemEntityUpdated, entity]);\n\n const {\n [itemEntityUpdated]: currentSchema = {},\n [entity]: filterEntitySchema = {}\n } = mainSchemas;\n\n const {\n data: requiredSchema = {},\n loading: requiredSchemaLoading,\n error: requiredSchemaError\n } = useGetEntitySchemasAsObj(\n getRequiredSchemas([...filterByProperty, ...sortby], filterEntitySchema),\n schemasLoading\n );\n const inheritedFilters = getInheritedFilters(filterBy, filterByProperty);\n const queryProps = getQueryProps(inheritedFilters, currentSchema, filterEntitySchema);\n const { actions = {} } = currentSchema || {};\n const getAction = isPreview ? actions.get : actions.getPublished;\n\n const {\n data: { entityData = {} } = {},\n error: itemQueryError,\n loading: itemQueryLoading\n } = useQuery(generateSingleItemQuery(getAction, queryProps), {\n variables: { id: itemId },\n skip: schemasLoading || (!inheritedFilters.length && queryProps === ID)\n });\n const errorsToCheck = [schemaError, schemasError, requiredSchemaError, itemQueryError];\n const { hasErr, errMsg } = checkForError(errorsToCheck);\n\n if (requiredSchemaLoading || schemasLoading || schemaLoading || itemQueryLoading) return '';\n if (hasErr) return errMsg;\n if (!entitySchema) return null;\n\n const isCard = type !== FULL;\n const isAZ = type === AZ_LIST_TYPE;\n const genericProps = getGenericProps(props);\n const [textFilter] = getSearchFilterType(searchFilter, TEXT_SEARCH);\n const shouldApplyTextFilter = textFilter && textFilter.propsToDisplay.length;\n const operator = shouldApplyTextFilter ? getElasticsearchOperator(textFilter) : AND_OPERATOR;\n const valuesText = shouldApplyTextFilter ? buildSearchValuesText(textFilter, query) : [];\n const { valuesAnd, valuesOr } = getQueryFilters(searchFilter, query);\n const isTextSearchFilterApplied = !!(\n query.search_term &&\n searchFilter &&\n getSearchFilterType(searchFilter, TEXT_SEARCH).length\n );\n\n const searchValues = {\n searchValuesText: valuesText,\n searchValuesCheckboxSelectRange: valuesAnd,\n searchValuesCheckboxOr: valuesOr\n };\n const listProps = {\n ...props,\n ...genericProps,\n query,\n url,\n isCard,\n isAZ,\n router,\n entitySchema,\n sort,\n sortby,\n azFilter,\n searchValues,\n filterEntitySchema,\n requiredSchema,\n currentSchema,\n operator,\n isTextSearchFilterApplied,\n paginationIndex,\n entityData,\n inheritedFilters,\n filterOperator\n };\n\n return <ListBuilder {...listProps} />;\n};\n\nListFactory.propTypes = {\n parent: PropTypes.object.isRequired,\n entity: PropTypes.string.isRequired,\n type: PropTypes.string.isRequired,\n filterBy: PropTypes.array,\n filterByProperty: PropTypes.array,\n operator: PropTypes.string,\n name: PropTypes.string,\n sortby: PropTypes.array,\n sort: PropTypes.string,\n searchFilter: PropTypes.object\n};\n\nListFactory.defaultProps = {\n filterBy: [],\n filterByProperty: [],\n name: '',\n sortby: [],\n sort: '',\n operator: AND,\n searchFilter: {}\n};\n\nexport default ListFactory;\n"],"file":"ListFactory.js"}
1
+ {"version":3,"sources":["../../../src/components/List/ListFactory.js"],"names":["React","useContext","useQuery","parseUrl","PropTypes","useRouter","MainContext","getSingleEntitySchema","generateSingleItemQuery","ListBuilder","AZ_LIST_TYPE","getAzQueryFilter","getGenericProps","getRequiredSchemas","checkForError","getUnpublishedEntityName","getPaginationIndex","getSearchFilterType","getElasticsearchOperator","buildSearchValuesText","getQueryFilters","getInheritedFilters","getQueryProps","useGetEntitySchemasAsObj","AND_OPERATOR","TEXT_SEARCH","ID","AND","FULL","ListFactory","props","entity","parent","name","filterByProperty","filterBy","omitWrappers","type","sortby","defaultSortBy","sort","defaultSort","searchFilter","operator","filterOperator","isPreview","router","asPath","parsedQuery","replace","query","url","querySort","querySortBy","itemEntity","itemId","itemEntityUpdated","paginationIndex","azFilter","data","entitySchema","error","schemaError","loading","schemaLoading","variables","id","mainSchemas","schemasLoading","schemasError","currentSchema","filterEntitySchema","requiredSchema","requiredSchemaLoading","requiredSchemaError","inheritedFilters","queryProps","actions","getAction","get","getPublished","entityData","itemQueryError","itemQueryLoading","skip","length","errorsToCheck","hasErr","errMsg","isCard","isAZ","genericProps","textFilter","shouldApplyTextFilter","propsToDisplay","valuesText","valuesAnd","valuesOr","isTextSearchFilterApplied","search_term","searchValues","searchValuesText","searchValuesCheckboxSelectRange","searchValuesCheckboxOr","listProps","propTypes","object","isRequired","string","array","bool","defaultProps"],"mappings":"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","sourcesContent":["import React, { useContext } from 'react';\nimport { useQuery } from '@apollo/react-hooks';\nimport { parseUrl } from 'query-string';\nimport PropTypes from 'prop-types';\nimport { useRouter } from 'next/router';\nimport { MainContext } from '@blaze-cms/nextjs-components';\nimport { getSingleEntitySchema, generateSingleItemQuery } from '../../application/query';\nimport ListBuilder from './ListBuilder';\nimport { AZ_LIST_TYPE } from './constants';\nimport { getAzQueryFilter } from './helpers';\nimport {\n getGenericProps,\n getRequiredSchemas,\n checkForError,\n getUnpublishedEntityName,\n getPaginationIndex,\n getSearchFilterType,\n getElasticsearchOperator,\n buildSearchValuesText,\n getQueryFilters,\n getInheritedFilters,\n getQueryProps\n} from '../../helpers';\nimport { useGetEntitySchemasAsObj } from '../../hooks';\nimport { AND_OPERATOR, TEXT_SEARCH, ID, AND, FULL } from '../../constants';\n\nconst ListFactory = props => {\n const {\n entity,\n parent,\n name,\n filterByProperty,\n filterBy,\n omitWrappers,\n type,\n sortby: defaultSortBy,\n sort: defaultSort,\n searchFilter,\n operator: filterOperator\n } = props;\n\n const { isPreview } = useContext(MainContext);\n const router = useRouter();\n const { asPath } = router;\n const parsedQuery = asPath.replace(/%5D/g, ']').replace(/%5B/g, '[');\n const { query, url, query: { sort: querySort, sortby: querySortBy } = {} } = parseUrl(\n parsedQuery\n );\n const sort = querySort || defaultSort;\n const sortby = querySortBy ? [querySortBy] : defaultSortBy || [];\n const { itemEntity, itemId } = parent;\n const itemEntityUpdated = getUnpublishedEntityName(itemEntity);\n const paginationIndex = getPaginationIndex(query, name);\n const azFilter = getAzQueryFilter(query, name);\n\n const { data: entitySchema, error: schemaError, loading: schemaLoading } = useQuery(\n getSingleEntitySchema,\n {\n variables: { id: entity }\n }\n );\n const {\n data: mainSchemas = {},\n loading: schemasLoading,\n error: schemasError\n } = useGetEntitySchemasAsObj([itemEntityUpdated, entity]);\n\n const {\n [itemEntityUpdated]: currentSchema = {},\n [entity]: filterEntitySchema = {}\n } = mainSchemas;\n\n const {\n data: requiredSchema = {},\n loading: requiredSchemaLoading,\n error: requiredSchemaError\n } = useGetEntitySchemasAsObj(\n getRequiredSchemas([...filterByProperty, ...sortby], filterEntitySchema),\n schemasLoading\n );\n const inheritedFilters = getInheritedFilters(filterBy, filterByProperty);\n const queryProps = getQueryProps(inheritedFilters, currentSchema, filterEntitySchema);\n const { actions = {} } = currentSchema || {};\n const getAction = isPreview ? actions.get : actions.getPublished;\n\n const {\n data: { entityData = {} } = {},\n error: itemQueryError,\n loading: itemQueryLoading\n } = useQuery(generateSingleItemQuery(getAction, queryProps), {\n variables: { id: itemId },\n skip: schemasLoading || (!inheritedFilters.length && queryProps === ID)\n });\n const errorsToCheck = [schemaError, schemasError, requiredSchemaError, itemQueryError];\n const { hasErr, errMsg } = checkForError(errorsToCheck);\n\n if (requiredSchemaLoading || schemasLoading || schemaLoading || itemQueryLoading) return '';\n if (hasErr) return errMsg;\n if (!entitySchema) return null;\n\n const isCard = type !== FULL;\n const isAZ = type === AZ_LIST_TYPE;\n const genericProps = getGenericProps(props);\n const [textFilter] = getSearchFilterType(searchFilter, TEXT_SEARCH);\n const shouldApplyTextFilter = textFilter && textFilter.propsToDisplay.length;\n const operator = shouldApplyTextFilter ? getElasticsearchOperator(textFilter) : AND_OPERATOR;\n const valuesText = shouldApplyTextFilter ? buildSearchValuesText(textFilter, query) : [];\n const { valuesAnd, valuesOr } = getQueryFilters(searchFilter, query);\n const isTextSearchFilterApplied = !!(\n query.search_term &&\n searchFilter &&\n getSearchFilterType(searchFilter, TEXT_SEARCH).length\n );\n\n const searchValues = {\n searchValuesText: valuesText,\n searchValuesCheckboxSelectRange: valuesAnd,\n searchValuesCheckboxOr: valuesOr\n };\n const listProps = {\n ...props,\n ...genericProps,\n query,\n url,\n isCard,\n isAZ,\n router,\n entitySchema,\n sort,\n sortby,\n azFilter,\n searchValues,\n filterEntitySchema,\n requiredSchema,\n currentSchema,\n omitWrappers,\n operator,\n isTextSearchFilterApplied,\n paginationIndex,\n entityData,\n inheritedFilters,\n filterOperator\n };\n\n return <ListBuilder {...listProps} />;\n};\n\nListFactory.propTypes = {\n parent: PropTypes.object.isRequired,\n entity: PropTypes.string.isRequired,\n type: PropTypes.string.isRequired,\n filterBy: PropTypes.array,\n filterByProperty: PropTypes.array,\n omitWrappers: PropTypes.bool,\n operator: PropTypes.string,\n name: PropTypes.string,\n sortby: PropTypes.array,\n sort: PropTypes.string,\n searchFilter: PropTypes.object\n};\n\nListFactory.defaultProps = {\n filterBy: [],\n filterByProperty: [],\n omitWrappers: false,\n name: '',\n sortby: [],\n sort: '',\n operator: AND,\n searchFilter: {}\n};\n\nexport default ListFactory;\n"],"file":"ListFactory.js"}
@@ -18,6 +18,7 @@ const ListRender = props => {
18
18
  limitToUse,
19
19
  initialOffset,
20
20
  isInfinite,
21
+ omitWrappers,
21
22
  paginationType,
22
23
  listComponent: ListComponent,
23
24
  query,
@@ -60,6 +61,7 @@ const ListRender = props => {
60
61
  actionKey: actionKey,
61
62
  limitToUse: limitToUse,
62
63
  fetchMore: fetchMore,
64
+ omitWrappers: omitWrappers,
63
65
  itemsPerPageToUse: itemsPerPageToUse || listData.length,
64
66
  listTotal: listTotal,
65
67
  currentListLength: currentListLength,
@@ -91,6 +93,7 @@ ListRender.propTypes = {
91
93
  limitToUse: PropTypes.number.isRequired,
92
94
  initialOffset: PropTypes.number.isRequired,
93
95
  isInfinite: PropTypes.bool.isRequired,
96
+ omitWrappers: PropTypes.bool,
94
97
  query: PropTypes.object.isRequired,
95
98
  url: PropTypes.string.isRequired,
96
99
  listComponent: PropTypes.func.isRequired,
@@ -101,6 +104,7 @@ ListRender.propTypes = {
101
104
  displayTotal: PropTypes.bool
102
105
  };
103
106
  ListRender.defaultProps = {
107
+ omitWrappers: false,
104
108
  itemsToDisplay: [],
105
109
  listAggregations: [],
106
110
  displayTotal: false